Sequential function chart
Sequential function chart (SFC) is a visual programming language used for programmable logic controllers (PLCs). It is one of the five languages defined by IEC 61131-3 standard. The SFC standard is defined as Preparation of function charts for control systems, and was based on GRAFCET (itself based on binary Petri nets[1][2]).
It can be used to program processes that can be split into steps.

Main components of SFC are:
- Steps with associated actions;
- Transitions with associated logic conditions;
- Directed links between steps and transitions.
Steps in an SFC diagram can be active or inactive. Actions are only executed for active steps. A step can be active for one of two motives:
- It is an initial step as specified by the programmer.
- It was activated during a scan cycle and not deactivated since.
Steps are activated when all steps above it are active and the connecting transition is superable (i.e. its associated condition is true). When a transition is passed, all steps above are deactivated at once and after all steps below are activated at once.
Actions associated with steps can be of several types, the most relevant ones being Continuous (N), Set (S), and Reset (R). Apart from the obvious meaning of Set and Reset, an N action ensures that its target variable is set to 1 as long as the step is active. An SFC rule states that if two steps have an N action on the same target, the variable must never be reset to 0. It is also possible to insert LD (Ladder Diagram) actions inside an SFC program (and this is the standard way, for instance, to work on integer variables).
SFC is an inherently parallel programming language in that multiple control flows — Program Organization Units (POUs) in the standard's parlance — can be active at once.
Non-standard extensions to the language include macroactions: i.e. actions inside a program unit that influence the state of another program unit. The most relevant such macroaction is "forcing", in which a POU can decide the active steps of another POU.[3]
See also
- DRAKON-chart
- UML activity diagram
- Continuous Function Chart
References
- ^ Fernandez, J. L.; Sanz, R.; Paz, E.; Alonso, C. (19–23 May 2008). "Using hierarchical binary Petri nets to build robust mobile robot applications: RoboGraph". IEEE International Conference on Robotics and Automation, 2008. Pasadena, CA, USA. pp. 1372–1377. doi:10.1109/ROBOT.2008.4543394.
- ^ Lewis, R. W. (1998). Programming industrial control systems using IEC 1131-3. ISBN 978-0852969502.
- ^ Tom Meadowcroft, 2018
External links
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.