Definition und Standard:
SFC (Sequential Function Chart) ist eine der fünf standardisierten Programmiersprachen für speicherprogrammierbare Steuerungen (SPS) gemäß der internationalen Norm IEC 61131-3. Sie ist eine grafische Programmiersprache, die auf dem Modell GRAFCET (GRAphe Fonctionnel de Commande Étapes/Transitions) basiert.
SFC ist speziell dafür konzipiert, sequentielle Steuerungsabläufe klar und übersichtlich darzustellen und zu programmieren. Sie beschreibt den Prozess als eine Abfolge von Schritten und Übergängen.
Grundelemente von SFC:
- Schritte (Steps): Repräsentieren stabile Zustände, in denen das System bestimmte Aktionen ausführt. Ein Schritt ist entweder aktiv oder inaktiv. Der Initialschritt (Startpunkt) wird durch einen doppelten Rahmen gekennzeichnet.
- Transitionen (Transitions): Verbinden Schritte miteinander. Eine Transition kann nur geschaltet werden, wenn alle vorhergehenden Schritte aktiv sind und die Transitionsbedingung (eine logische Bedingung) erfüllt ist.
- Aktionen: Operationen, die ausgeführt werden, wenn ein Schritt aktiv ist (z.B. „Motor einschalten“, „Ventil öffnen“). Aktionen können kontinuierlich, zeitbegrenzt oder bei Schrittaktivierung/-deaktivierung erfolgen.
- Verbindungsglieder: Stellen den Fluss zwischen Schritten und Transitionen dar.
- Verzweigungen:
- Alternative Verzweigung (Selection Branch): Mehrere Pfade sind möglich, aber nur einer wird genommen, dessen Transitionsbedingung zuerst erfüllt ist.
- Parallele Verzweigung (Simultaneous Branch): Mehrere Pfade werden gleichzeitig aktiviert, sobald die Verzweigungsbedingung erfüllt ist (Synchronisation).
Vorteile in der SPS-Programmierung:
- Übersichtlichkeit: Die grafische Darstellung macht komplexe Abläufe leicht verständlich und nachvollziehbar, selbst für Nicht-Programmierer.
- Strukturierung: Fördert eine modulare und fehlerfreie Programmierung.
- Zustandsorientiert: Die Logik ist klar an den Prozesszuständen orientiert.
- Fehlerdiagnose: Der aktuelle aktive Schritt kann leicht im Online-Modus identifiziert werden, was die Fehlersuche bei sequenziellen Fehlern erheblich vereinfacht.
- Parallelisierung: Ermöglicht die einfache Darstellung und Steuerung von parallelen Abläufen.
SFC ist ein mächtiges Werkzeug für die strukturierte Ablaufprogrammierung und trägt maßgeblich zur Wartbarkeit und Qualität von SPS-Programmen bei. Innerhalb der Schritte werden die Aktionen oft in anderen IEC-Sprachen (z.B. KOP, FUP oder ST) programmiert.
→ Siehe auch: GRAFCET, AS (Ablaufsprache), IEC 61131-3, Schrittkette, Zustandsautomat, Graph

