Sequential function graphics (or SFC) are one of the five PLC programming languages defined by the IEC 61131-3 standard. (The others are ladder logic diagrams, function block diagrams, structured text, and instruction lists.) SFCs are a graphic programming language, not text-based. Being a visual programming language means that it is very suitable for the task of dividing a large and complex process into smaller pieces that are easier to see and understand than with text-based programming environments.
Main Features of SFC Method
(1)Constantly changing sequences are expressed by process progression operation.
(2)Circuits that contain interlock circuits or redundant output need not be designed. (This is automatically processed by the PLC.)
(3)Overall control content and operation is easy to understand.
(4)A dynamic monitor function does away with the need for an experienced engineer for problem solving.
(1)When the start push button is pressed, the carrier advances and is immediately retracted when limit switch 3 operates.
(2)When limit switch 2 operates due to the carrier being retracted, carrier movement is paused for five seconds, and
then the carrier advances again. When limit switch 4 operates, the carrier is immediately retracted.
(3)When limit switch 2 finally operates, the carrier drive motor comes to a stop
Sequential Function Chart Architecture Examples
- The chart would Start and then move to the first motor.
- The Start Motor 1 action would then run a script to start Motor 1.
- Once the script finishes, the chart then flows to Start Motor 2, and calls a script that would start Motor 2.
- When the second script finishes, the chart flows to the End step, and concludes the chart.
2.Incorporate a Handshake
In many cases, a chart will need to wait for some other system to finish with a task before moving on. This is similar to receiving a handshake from the PLC before moving on. Charts can freely read and interact with the rest of Ignition, so a step in a chart can read a tag, run a query, make a web services call, read a local file, or do anything that is possible from a Python script. A chart could wait for a specific value on a tag, and then proceed after the value has met some set-point.
- Start the chart
- Run the script on Start Motor 1
- Wait until the PLC sets the value of a specific tag to a “Running” status code. All other scripts are on-hold while waiting.
- Run the script on Start Motor 2
- End the chart