0% found this document useful (0 votes)
115 views9 pages

New Microsoft Word Document

This document discusses implementing Sequential Function Charts (SFCs) using ladder logic programming for programmable logic controllers (PLCs). SFCs are commonly used to design sequential control systems, but graphical SFC programming is usually only available on high-end PLCs due to computational limitations. The document demonstrates how to represent SFC designs using ladder logic, allowing SFC benefits even on basic PLCs. It provides an example of piston sequencing control modeled with an SFC diagram and implemented via ladder logic that separates step/transition logic from action logic. The ladder logic handles step enabling and resetting conditions while driving outputs based on the current step state.

Uploaded by

Umar Sheikh Pti
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
115 views9 pages

New Microsoft Word Document

This document discusses implementing Sequential Function Charts (SFCs) using ladder logic programming for programmable logic controllers (PLCs). SFCs are commonly used to design sequential control systems, but graphical SFC programming is usually only available on high-end PLCs due to computational limitations. The document demonstrates how to represent SFC designs using ladder logic, allowing SFC benefits even on basic PLCs. It provides an example of piston sequencing control modeled with an SFC diagram and implemented via ladder logic that separates step/transition logic from action logic. The ladder logic handles step enabling and resetting conditions while driving outputs based on the current step state.

Uploaded by

Umar Sheikh Pti
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Sequential Function Charts for All

Implementing Sequential Function Chart Designs using Ladder Diagram Programming Language for Programmable Logic Controllers
by James McWhinnie Napier University, Edinburgh, Scotland.

ABSTRACT
Sequential Function Charts (SFCs) have long been established as a means of designing and implementing sequential control systems utilising programmable controllers. The Programming Standard IEC 61131-3 includes a graphical implementation of SFCs in its suite of programming languages. Many manufacturers offer programming environments that allow engineers to programme controllers using graphical methods to implement the SFCs. However as well as the initial cost outlay there are overheads to be paid for in terms of computational speed, programme size and programme control. This facility is therefore usually only offered on the larger more powerful controllers where execution speed and programme size are rarely an issue. This paper demonstrates how SFCs may be implemented on any PLC including low cost PLCs with the simple Ladder Diagram programming language, with little computational overhead. Thus allowing the user all the benefits of using SFCs in the design process. Keywords: Control, Finite State Machine(FSM), Sequential Function Charts(SFC), Programmable Logic Controller (PLC).

1.0 Introduction
Many systems have sequential operation requirements and Sequential Function Charts (SFCs) have become a popular method of accurately specifying sequential control requirements. SFCs have many advantages for software development both in the design stage as well as the implementation and testing, maintaining and fault finding stages. Design Stage Detailed clear graphical specification Non software people can specify / verify

Implementation Straight forward conversion from specification to code Structured testing / debugging Maintenance of Software Readily understood by engineer modifying software Machine Maintenance Allows quick accurate fault diagnosis After a brief introduction of SFCs to the reader, this paper will show how to implement the charts using Ladder Diagram (LD) programming language. Then will go on to discuss how fault diagnosis and predictive fault diagnosis can be achieved.

2.0 Sequential Function Charts


This section will briefly explain the SFC and demonstrate how it can be used to specify control requirements by an example. Then a method of implementing SFC designs will be outlined and demonstrated. Sequential Function Charts break a sequential task down into Steps, Transitions and Actions. These are drawn graphically to describe a sequence of interactions, as shown in Fig 1 below. Convention states that flow through an SFC is from top to bottom unless indicated by an arrow.

Figure 1: Sequential Function Chart Example The sequence is broken down into steps (or states) where actions are carried out. The transition conditions define logical conditions that cause the process to move from the existing step to the next step. Actions contain three fields as shown in Fig2.

Figure 2: Actions An Action consists of a qualifier which defines what type of action e.g. S for set, R for reset and N for continuous while in step. A description of the action or tag name and finally the address acted on. As the design progresses more detail can be added as shown Fig 3. This detail would include memory (%M), input (%I) and output (%Q) address information.

Figure 3: Detailed Sequential Function Chart Example

2.1 Implementation
It is important when designing software for a PLC that the designer is aware of the operation of the scan. The PLC scan typically consists of the following sequential operations: Reads in the states of external devices into an area of memory designated input (I) memory. Evaluates user programme writing output results to memory (M) and output memory (Q). The output memory is then used to drive the real physical outputs, Fig 4. Read Inputs to Input RAM Execute Programme Diagnostics and Communication tasks Update Outputs from Output RAM Repeat Figure 4: Typical PLC Scan When implementing SFCs using Ladder Diagram (LD) the step and transition logic can be treated separately from the action logic. The Ladder Diagram logic for a typical step is shown in Fig 5.

Figure 5: SFC Step / Transition Logic Each step can be entered from at least one step. If it can be entered from more than one step then all possible previous steps must be reset. Once the Step/Transition logic has been completed then the actions can written. In a simple system outputs can be driven directly from the states as shown in Fig 6.

Figure 6: SFC Actions To illustrate the use of SFC and how they may be implemented let us consider a simple example. Two pistons as shown in Fig 7 have to be controlled using a PLC. The operation requirements are as follows. When a normally open switch (%I0.7) is closed momentarily and both pistons are home the following sequence should occur: Piston A has to be extended. When A is extended piston B is extended. After B is extended for 3 seconds piston A is retracted. When A is retracted piston B is retracted. The sequence does not operate until the switch is closed again i.e. it operates every time the switch is closed and if piston A is in its home position.

Figure 7: Example Piston Control Taking the written description, a SFC can be drawn. As the inputs and outputs have been assigned detailed memory information can be included, as shown in Fig 8.

Figure 8: Detailed Sequential Function Chart (SFC) From this the Step/Transition code can be written as shown in Fig 9. Note the Step logic is entered in reverse order to ensure that a sequence is entered for at least one PLC scan (ref.).

Figure 9: Step / Transition Logic Step 1 Contains additional logic, the InitSeq, a one shot (is true for first scan) signal is used to place the system into step 1 when the PLC is first switched on or moved from stop to run and the Emergency Stop input is used to drive the system into step 1 which in this case is considered to be the safe state. Note also that all other states are reset, this is necessary as for example an Emergency Stop could happen in any step.

Next is the software to drive the outputs. This is relatively simple as shown in fig 9.

Figure 10: Action Logic Logic is also required for sequence start condition logic.

You might also like