
- •1 Kurzer Einblick in CoDeSys
- •1.1 Was ist CoDeSys
- •1.2 Überblick über die Funktionalität von CoDeSys...
- •1.3 Übersicht der Anwender-Dokumentation zu CoDeSys
- •2 Was ist was in CoDeSys
- •2.1 Bestandteile eines Projekts...
- •2.2 Die Sprachen...
- •2.2.1 Anweisungsliste (AWL)...
- •2.2.2 Strukturierter Text (ST)...
- •2.2.3 Ablaufsprache (AS)...
- •2.2.4 Funktionsplan (FUP)...
- •2.2.5 Der freigraphische Funktionsplaneditor (CFC)...
- •2.2.6 Kontaktplan (KOP)...
- •2.3 Debugging, Onlinefunktionalitäten...
- •2.4 Die Norm...
- •3 Wir schreiben ein kleines Programm
- •3.1 Die Steuerung einer Ampelanlage...
- •3.2 Die Visualisierung einer Ampelanlage...
- •4 Die Komponenten im Einzelnen
- •4.1 Hauptfenster...
- •4.2 Projekt Optionen...
- •4.3 Projekte verwalten...
- •4.4 Objekte verwalten...
- •4.5 Allgemeine Editierfunktionen...
- •4.6 Allgemeine Online Funktionen...
- •4.7 Fenster ...
- •4.8 Die rettende Hilfe...
- •5 Die Editoren
- •5.1 Das gilt für alle Editoren...
- •5.2 Der Deklarationseditor...
- •5.2.1 Arbeiten im Deklarationseditor
- •5.2.2 Deklarationseditoren im Online Modus
- •5.3 Editoren der textuellen Programmiersprachen...
- •5.3.1 Arbeiten in den Texteditoren
- •5.3.2 Der Anweisungslisteneditor...
- •5.3.3 Der Editor für Strukturierten Text...
- •5.4 Editoren der grafischen Programmiersprachen...
- •5.4.1 Arbeiten in den grafischen Editoren
- •5.4.2 Der Funktionsplaneditor...
- •5.4.3 Der Kontaktplaneditor...
- •5.4.4 Der Ablaufspracheneditor...
- •5.4.5 Der freigraphische Funktionsplaneditor (CFC)...
- •6 Die Ressourcen
- •6.1 Übersicht Ressourcen
- •6.2 Globale Variablen, Variablenkonfiguration, Dokumentvorlage
- •6.2.1 Globale Variablen
- •6.2.2 Variablenkonfiguration...
- •6.2.3 Dokumentvorlage
- •6.3 Alarmkonfiguration
- •6.3.1 Überblick
- •6.3.2 Alarmsystem, Begriffe
- •6.3.3 Alarmklassen
- •6.3.4 Alarmgruppen
- •6.3.5 Alarmspeicherung
- •6.3.6 Menü Extras: Einstellungen
- •6.4 Bibliotheksverwaltung...
- •6.5 Logbuch...
- •6.6 Steuerungskonfiguration
- •6.6.1 Überblick
- •6.6.2 Arbeiten im CoDeSys Steuerungskonfigurator
- •6.6.3 Allgemeine Einstellungen in der Steuerungskonfiguration
- •6.6.4 Anwendungsspezifischer Parameterdialog
- •6.6.5 Konfiguration eines I/O Moduls...
- •6.6.6 Konfiguration eines Kanals
- •6.6.7 Konfiguration von Profibus Modulen...
- •6.6.8 Konfiguration von CAN Modulen...
- •6.6.9 Konfiguration eines CanDevice (CANopen Slave)
- •6.6.10 Steuerungskonfiguration im Online Modus
- •6.6.11 Hardware Scan/Status/Diagnose aus dem Zielsystem
- •6.7 Taskkonfiguration...
- •6.7.1 Arbeiten im Taskkonfigurator
- •6.7.2 System-Ereignisse
- •6.7.3 Taskkonfiguration im Online Modus
- •6.8.1 Überblick
- •6.9 Traceaufzeichnung...
- •6.9.1 Überblick und Konfiguration
- •6.9.2 Darstellung der Traceaufzeichnung
- •6.9.3 'Extras' 'Tracewerte speichern'
- •6.9.4 'Extras' 'Externe Tracekonfigurationen'
- •6.10 Arbeitsbereich
- •6.11 Parameter Manager ..
- •6.11.1 Aktivieren des Parameter Managers
- •6.11.2 Der Parameter Manager Editor, Overview
- •6.11.3 Parameterlisten: Typen und Attribute
- •6.11.4 Parameterlisten verwalten
- •6.11.5 Parameterlisten editieren
- •6.11.6 Parameter Manager im Online Modus
- •6.11.7 Export / Import von Parameterlisten
- •6.12 Zielsystemeinstellungen
- •6.13 PLC Browser...
- •6.13.1 Allgemeines zur PLC-Browser- Bedienung
- •6.13.2 Kommandoeingabe im PLC-Browser
- •6.13.3 Verwendung von Makros bei der Kommandoeingabe im PLC-Browser
- •6.13.4 Weitere PLC-Browser-Optionen
- •6.14 Tools
- •6.14.1 Eigenschaften der bestehenden Verknüpfungen (Objekt Eigenschaften)
- •6.14.2 Verwalten von Verknüpfungen
- •6.14.3 Die wichtigsten Fragen zu Tools
- •7 ENI Versionsverwaltung
- •7.1.2 Voraussetzungen für das Arbeiten mit einer ENI Projektdatenbank
- •7.1.3 Arbeiten in CoDeSys mit der Projektdatenbank
- •7.1.4 Kategorien innerhalb der Projektdatenbank
- •8 DDE Kommunikation
- •8.1 DDE Schnittstelle des CoDeSys Programmiersystems...
- •8.2 DDE Kommunikation über den GatewayDDE-Server...
- •9 Lizenzmanagement in CoDeSys
- •9.1 Der 3S Licensing Manager
- •9.1.1 Erstellen einer lizenzpflichtigen Bibliothek
- •10 ANHANG
- •Anhang A IEC Operatoren und zusätzliche normerweiternde Funktionen
- •Arithmetische Operatoren...
- •Bitstring Operatoren...
- •Bit-Shift Operatoren...
- •Auswahloperatoren...
- •Vergleichsoperatoren...
- •Adressoperatoren...
- •Aufrufoperator...
- •Typkonvertierungen...
- •Numerische Operatoren...
- •Anhang B Operanden in CoDeSys
- •Konstanten...
- •Variablen...
- •Adressen...
- •Funktionen...
- •Anhang C Datentypen in CoDeSys
- •Standard Datentypen
- •Definierte Datentypen
- •Anhang D CoDeSys Bibliotheken
- •Die Bibliothek Standard.lib
- •String Funktionen...
- •Bistabile Funktionsblöcke...
- •Flankenerkennung...
- •Zähler...
- •Timer...
- •Die Bibliothek Util.lib
- •BCD-Konvertierung...
- •Bit-/Byte-Funktionen...
- •Mathematische Hilfsfunktionen...
- •Regler...
- •Signalgeneratoren...
- •Funktionsmanipulatoren...
- •Analogwertverarbeitung...
- •Die Bibliothek AnalyzationNew.lib
- •Die CoDeSys Systembibliotheken
- •Anhang E Übersicht: Operatoren und Bibliotheksbausteine
- •Anhang F Kommandozeilen-/Kommandodatei-Befehle
- •Kommandozeilen-Befehle
- •Kommandodatei (Cmdfile)-Befehle
- •Anhang G Siemens Import
- •SEQ-Symbolikdatei importieren
- •S5-Datei importieren
- •Konvertierung S5 nach IEC 1131-3
- •Anhang H Dialoge der Zielsystemeinstellungen
- •Einstellungen in Kategorie Zielplattform
- •Einstellungen in Kategorie Allgemein
- •Einstellungen in Kategorie Speicheraufteilung
- •Einstellungen in Kategorie Netzfunktionen
- •Einstellungen in Kategorie Visualisierung
- •Anhang I Tastaturbedienung
- •Tastaturbedienung
- •Tastenkombinationen
- •Anhang J Übersetzungsfehler und -warnungen
- •Warnungen...
- •Übersetzungsfehler...
- •Index

Die Sprachen...
Zaehler=0
END_REPEAT
EXIT-Anweisung
Wenn die EXIT-Anweisung in einer FOR-, WHILEoder REPEAT-Schleife vorkommt, dann wird die innerste Schleife beendet, ungeachtet der Abbruchbedingung.
2.2.3Ablaufsprache (AS)...
Die Ablaufsprache ist eine grafisch orientierte Sprache, die es ermöglicht, die zeitliche Abfolge verschiedener Aktionen innerhalb eines Programms zu beschreiben. Dazu werden Schrittelemente verwendet, denen bestimmte Aktionen zugeordnet werden und deren Abfolge über Transitionselemente gesteuert wird.
Beispiel für ein Netzwerk in der Ablaufsprache:
Schritt
Ein in Ablaufsprache geschriebener Baustein besteht aus einer Folge von Schritten, die über gerichtete Verbindungen (Transitionen) miteinander verbunden sind.
Es gibt zwei Arten von Schritten.
•Die vereinfachte Form besteht aus einer Aktion und einem Flag, das anzeigt, ob der Schritt aktiv ist. Ist zu einem Schritt die Aktion implementiert, so erscheint ein kleines Dreieck in der rechten oberen Ecke des Schrittkästchens.
•Ein IEC-Schritt besteht aus einem Flag und einer oder mehreren zugewiesenen Aktionen oder boolschen Variablen. Die assoziierten Aktionen erscheinen rechts vom Schritt.
Aktion
Eine Aktion kann eine Folge von Instruktionen in AWL oder in ST, eine Menge von Netzwerken in FUP oder in KOP oder wieder eine Ablaufstruktur (AS) enthalten.
2-16 |
CoDeSys V2.3 |

2 - Was ist was in CoDeSys
Bei den vereinfachten Schritten ist eine Aktion immer mit ihrem Schritt verbunden. Um eine Aktion zu editieren, führen Sie auf dem Schritt, zu dem die Aktion gehört, einen doppelten Mausklick aus, oder markieren Sie den Schritt und führen den Menübefehl 'Extras' 'Zoom Aktion/Transition' aus. Zusätzlich sind eine Einund/oder Ausgangsaktion pro Schritt möglich.
Aktionen von IEC-Schritten hängen im Object Organizer direkt unter ihrem AS-Baustein und werden mit Doppelklick oder Drücken der <Eingabetaste> in ihren Editor geladen. Neue Aktionen können mit 'Projekt' 'Aktion hinzufügen' erzeugt werden. Einem IEC-Schritt können maximal neun Aktionen hinzugefügt werden.
Eingangsbzw. Ausgangsaktion
Einem Schritt kann zusätzlich zur Schritt-Aktion eine Eingangsaktion und eine Ausgangsaktion hinzugefügt werden. Eine Eingangsaktion wird nur einmal ausgeführt, gleich nachdem der Schritt aktiv geworden ist. Eine Ausgangsaktion wird nur einmal ausgeführt, bevor der Schritt deaktiviert wird.
Ein Schritt mit Eingangsaktion wird durch ein 'E' in der linken unteren Ecke gekennzeichnet, die Ausgangsaktion durch ein 'X' in der rechten unteren Ecke .
Die Einund Ausgangsaktion kann in einer beliebigen Sprache implementiert werden. Um eine Einbzw. Ausgangsaktion zu editieren, führen Sie auf die entsprechende Ecke im Schritt, einen doppelten Mausklick aus.
Beispiel eines Schrittes mit Einund Ausgangsaktion:
Transition / Transitionsbedingung
Zwischen den Schritten liegen so genannte Transitionen.
Eine Transitionsbedingung muss den Wert TRUE oder FALSE haben. Somit kann sie aus einer Boolschen Variablen, Boolschen Adresse oder einer Boolschen Konstante bestehen. Sie kann auch eine Folge von Instruktionen mit einem Boolschen Ergebnis in ST-Syntax (z.B. (i <= 100) AND b) oder einer beliebigen Sprache enthalten (siehe 'Extras' 'Zoom Aktion/Transition'). Aber eine Transition darf keine Programme, Funktionsblöcke oder Zuweisungen enthalten !
Zur Analyse von Transitionsausdrücken kann das Flag SFCErrorAnalyzationTable definiert werden.
Hinweis: Neben Transitionen kann auch der Tip-Modus benützt werden, um zum nächsten Schritt weiterzuschalten, siehe SFCtip und SFCtipmode.
Aktiver Schritt
Nach dem Aufruf des AS-Bausteins wird zunächst die zum Initialschritt (doppelt umrandet) gehörende Aktion ausgeführt. Ein Schritt, dessen Aktion ausgeführt wird, gilt als 'aktiv'. Im Online Modus werden aktive Schritte blau dargestellt.
Pro Zyklus werden zunächst alle Aktionen ausgeführt, die zu aktiven Schritten gehören. Danach werden die diesen Schritten nachfolgenden Schritte auf 'aktiv' gesetzt, wenn die Transitionsbedingungen für diese nachfolgenden Schritte TRUE sind. Die nun aktiven Schritte werden dann im nächsten Zyklus ausgeführt.
Hinweis: Enthält der aktive Schritt eine Ausgangsaktion, wird auch diese erst im nächsten Zyklus ausgeführt, vorausgesetzt, die darauf folgende Transition ist TRUE.
IEC-Schritt
Neben den vereinfachten Schritten stehen die normkonformen IEC-Schritte in AS zur Verfügung.
Um IEC-Schritte verwenden zu können, müssen Sie in Ihr Projekt die spezielle SFC-Bibliothek lecsfc.lib einbinden.
CoDeSys V2.3 |
2-17 |

Die Sprachen...
Einem IEC-Schritt können maximal neun Aktionen zugewiesen werden. IEC-Aktionen sind nicht wie bei den vereinfachten Schritten als EingangsSchrittoder Ausgangsaktion fest einem Schritt zugeordnet, sondern liegen getrennt von den Schritten vor und können innerhalb ihres Bausteins mehrfach verwendet werden. Dazu müssen sie mit dem Befehl 'Extras' 'Aktion assoziieren' zu den gewünschten Schritten assoziiert werden.
Neben Aktionen können auch boolesche Variablen Schritten zugewiesen werden.
Über so genannte Bestimmungszeichen (Qualifier) wird die Aktivierung und Deaktivierung der Aktionen und boolschen Variablen gesteuert. Zeitliche Verzögerungen sind dabei möglich. Da eine Aktion immer noch aktiv sein kann, wenn bereits der nächste Schritt abgearbeitet wird, z.B. durch Bestimmungszeichen S (Set), kann man Nebenläufigkeiten erreichen.
Eine assoziierte boolesche Variable wird bei jedem Aufruf des AS-Bausteines gesetzt oder zurückgesetzt. Das heißt, ihr wird jedes Mal entweder der Wert TRUE oder FALSE neu zugewiesen.
Die assoziierten Aktionen zu einem IEC-Schritt werden rechts vom Schritt in einem zweigeteilten Kästchen dargestellt. Das linke Feld enthält den Qualifier, evtl. mit Zeitkonstanten und das rechte den Aktionsnamen bzw. boolschen Variablennamen.
Beispiel für einen IEC-Schritt mit zwei Aktionen:
Zur leichteren Verfolgung der Vorgänge werden alle aktiven Aktionen im Onlinebetrieb wie die aktiven Schritte blau dargestellt. Nach jedem Zyklus wird überprüft, welche Aktionen aktiv sind.
Beachten Sie hierzu auch die Einschränkung bei der Verwendung von Zeit-Qualifiern bei mehrmals verwendeten Aktionen im gleichen Zyklus (siehe 'Qualifier') !
Hinweis: Wird eine Aktion deaktiviert, so wird sie noch einmal ausgeführt. Das heißt, dass jede Aktion mindestens zweimal ausgeführt wird (auch eine Aktion mit Qualifier P).
Bei einem Aufruf werden zuerst die deaktivierten Aktionen in alphabetischer Reihenfolge abgearbeitet und dann alle aktiven Aktionen wiederum in alphabetischer Reihenfolge.
Ob es sich bei einem neu eingefügten Schritt um einen IEC-Schritt handelt, ist abhängig davon, ob der Menübefehl 'Extras' 'IEC-Schritte benutzen' angewählt ist.
Im Object Organizer hängen die Aktionen direkt unter ihrem jeweiligen AS-Baustein. Neue Aktionen können mit 'Projekt' 'Aktion hinzufügen' erzeugt werden.
AS-Baustein mit Aktionen im Object Organizer:
Qualifier
Zum Assoziieren der Aktionen zu IEC-Schritten stehen folgende Qualifier (Bestimmungszeichen) zur
Verfügung:
N |
Non-stored |
die Aktion ist solange aktiv wie der Schritt |
R |
overriding Reset |
die Aktion wird deaktiviert |
S |
Set (Stored) |
die Aktion wird aktiviert und bleibt bis zu einem Reset aktiv |
2-18 |
CoDeSys V2.3 |

2 - Was ist was in CoDeSys
L |
time Limited |
die Aktion wird für eine bestimmte Zeit aktiviert, maximal |
|
|
solange der Schritt aktiv ist |
D |
time Delayed |
die Aktion wird nach einer bestimmten Zeit aktiv, sofern |
|
|
der Schritt noch aktiv ist und dann solange der Schritt |
|
|
aktiv ist |
P |
Pulse |
die Aktion wird genau einmal ausgeführt, wenn der Schritt |
|
|
aktiv wird |
SD |
Stored and time Delayed |
die Aktion wird nach einer bestimmten Zeit aktiviert und |
|
|
bleibt bis zu einem Reset aktiv |
DS |
Delayed and Stored |
die Aktion wird nach einer bestimmten Zeit aktiviert, sofern |
|
|
der Schritt noch aktiv ist und bleibt bis zu einem Reset |
|
|
aktiv |
SL |
Stored and time Limited |
die Aktion ist für eine bestimmte Zeit aktiviert |
Die Bestimmungszeichen L, D, SD, DS und SL benötigen eine Zeitangabe im TIMEKonstantenformat, z.B. L T#5s.
Hinweis: Wird eine Aktion deaktiviert, so wird sie noch einmal ausgeführt. Das heißt, dass jede Aktion mindestens zweimal ausgeführt wird (auch eine Aktion mit Qualifier P).
Hinweis: Bei einem Aufruf werden zuerst die deaktivierten Aktionen in alphabetischer Reihenfolge abgearbeitet und dann alle aktiven Aktionen wiederum in alphabetischer Reihenfolge.
Achtung: Wird dieselbe Aktion in zwei unmittelbar aufeinanderfolgenden Schritten mit Qualifiern benutzt, die den zeitlichen Ablauf beeinflussen, kann bei der zweiten Verwendung der Zeit-Qualifier nicht mehr wirksam werden. Um dies zu umgehen, muss ein Zwischenschritt eingefügt werden, so dass in dem dann zusätzlich zu durchlaufenden Zyklus der Aktionszustand erneut initialisiert werden kann.
Implizite Variablen in AS
In der AS gibt es implizit deklarierte Variablen, die verwendet werden können.
Zu jedem Schritt gehört ein Flag, welches den Zustand des Schritts speichert. Das Schritt-Flag (aktiver oder inaktiver Zustand des Schritts) heißt <StepName>.x bei IEC-Schritten bzw. <StepName> bei den vereinfachten Schritten. Diese boolesche Variable hat den Wert TRUE, wenn der zugehörige Schritt aktiv ist, und FALSE, wenn er inaktiv ist. Sie kann in jeder Aktion und Transition des AS-Bausteins benutzt werden.
Ob eine IEC-Aktion aktiv ist oder nicht, kann mit der Variablen <AktionsName>.x abgefragt werden.
Bei den IEC-Schritten kann mit den impliziten Variablen <StepName>.t die aktive Zeitdauer der Schritte abgefragt werden.
Auf die impliziten Variablen kann auch von anderen Programmen aus zugegriffen werden. Beispiel: boolvar1:=sfc.step1.x; Dabei ist step1.x die implizite boolesche Variable, die den Zustand von IECSchritt step1 im Baustein sfc1 darstellt.
AS-Flags
Zur Steuerung des Ablaufs in der Ablaufsprache können Flags genutzt werden, die während der Projektabarbeitung automatisch erzeugt werden. Dazu müssen entsprechende Variablen global oder lokal, als Ausoder Eingabevariable deklariert werden. Beispiel: Wenn im AS ein Schritt länger aktiv ist, als in seinen Attributen angegeben, wird ein Flag gesetzt, das über eine Variable namens SFCError zugänglich wird (SFCError wird TRUE). Folgende Flag-Variablen sind möglich:
SFCEnableLimit: Diese spezielle Variable ist vom Typ BOOL. Wenn sie TRUE ist, werden Zeitüberschreitungen bei den Schritten in SFCError registriert. Ansonsten werden Zeitüberschreitungen ignoriert. Die Verwendung kann beispielsweise bei Inbetriebnahme oder Handbetrieb nützlich sein.
SFCInit: Wenn diese boolesche Variable TRUE ist, dann wird die Ablaufsprache auf den Init-Schritt zurückgesetzt. Die anderen AS-Flags werden ebenfalls zurückgesetzt (Initialisierung). Solange die
CoDeSys V2.3 |
2-19 |

Die Sprachen...
Variable TRUE ist, bleibt der Init-Schritt gesetzt (aktiv), wird aber nicht ausgeführt. Erst wenn SFCInit wieder auf FALSE gesetzt wird, wird der Baustein normal weiterbearbeitet.
SFCReset: Diese Variable vom Typ BOOL verhält sich ähnlich wie SFCInit. Im Unterschied zu dieser wird allerdings nach der Initialisierung der Initschritt weiter abgearbeitet. So könnte beispielsweise im Init-Schritt das SFCReset-Flag gleich wieder auf FALSE gesetzt werden.
SFCQuitError: Solange diese boolesche Variable TRUE ist, wird die Abarbeitung des AS-Diagramms angehalten, eine eventuelle Zeitüberschreitung in der Variablen SFCError wird dabei zurückgesetzt. Wenn die Variable wieder auf FALSE gesetzt wird, werden alle bisherigen Zeiten in den aktiven Schritten zurückgesetzt. Voraussetzung dafür ist die Deklaration des Flags SFCError, das die Zeitüberschreitung registriert.
SFCPause: Solange diese boolesche Variable TRUE ist, wird die Abarbeitung des AS-Diagramms angehalten.
SFCError: Diese boolesche Variable wird TRUE, wenn in einem AS-Diagramm eine Zeitüberschreitung aufgetreten ist. Wenn im Programm nach der ersten Zeitüberschreitung eine weitere auftritt, wird diese nicht mehr registriert, wenn die Variable SFCError vorher nicht wieder zurückgesetzt wurde. Die Deklaration von SFCError ist Voraussetzung für das Funktionieren der anderen Flag-Variablen zur Kontrolle des zeitlichen Ablaufs (SFCErrorStep, SFCErrorPOU, SFCQuitError, SFCErrorAnalyzationTable).
SFCTrans: Diese boolesche Variable wird TRUE, wenn eine Transition schaltet.
SFCErrorStep: Diese Variable ist vom Typ STRING. Wird durch SFCError eine Zeitüberschreitung im AS-Diagramm registriert, wird in dieser Variable der Name des Schritts gespeichert, der die Zeitüberschreitung verursacht hat. Voraussetzung dafür ist die Deklaration der Variablen SFCError, die die Zeitüberschreitung registriert.
SFCErrorPOU: Diese Variable vom Typ STRING erhält im Falle einer Zeitüberschreitung den Namen des Bausteins, in dem die Zeitüberschreitung aufgetreten ist. Voraussetzung dafür ist die Deklaration der Variablen SFCError, die die Zeitüberschreitung registriert.
SFCCurrentStep: Diese Variable ist vom Typ STRING. In dieser Variablen wird der Name des Schritts gespeichert, der aktiv ist, unabhängig von der Zeitüberwachung. Bei einer Paralellverzweigung wird der Schritt im äußersten rechten Zweig gespeichert.
SFCErrorAnalyzationTable: Diese Variable vom Typ ARRAY [0..n] OF ExpressionResult gibt für jede Variable eines zusammengesetzten Transitionsausdrucks, die zu einem FALSE der Transition und damit zu einer Zeitüberschreitung im vorangehenden Schritt führt, folgende Informationen aus: Name, Adresse, Kommentar, aktueller Wert.
Dies ist für maximal 16 Variablen möglich, d.h. der Array-Bereich ist max. 0..15.
Die Struktur ExpressionResult sowie die implizit verwendeten Analyse-Bausteine sind in der Bibliothek AnalyzationNew.lib enthalten. Die Analyse-Bausteine können auch explizit in Bausteinen, die nicht in SFC programmiert sind, verwendet werden.
Voraussetzung für die Analyse des Transitionsausdrucks ist die Registrierung einer Zeitüberschreitung im vorangehenden Schritt. Daher muss dort eine Zeitüberwachung implementiert sein und die Variable SFCError (siehe oben) im Baustein deklariert sein.
SFCTip, SFCTipMode: Diese Variablen vom Typ BOOL erlauben den Tip-Betrieb des SFC. Wenn dieser durch SFCTipMode=TRUE eingeschaltet ist, kann nur zum nächsten Schritt weitergeschaltet werden, indem SFCTip auf TRUE gesetzt wird. Solange SFCTipMode auf FALSE gesetzt ist, kann zusätzlich auch über die Transitionen weitergeschaltet werden.
Alternativzweig
Zwei oder mehr Zweige in AS können als Alternativverzweigungen definiert werden. Jeder Alternativzweig muss mit einer Transition beginnen und enden. Alternativverzweigungen können Parallelverzweigungen und weitere Alternativverzweigungen beinhalten. Eine Alternativverzweigung beginnt an einer horizontalen Linie (Alternativanfang) und endet an einer horizontalen Linie (Alternativende) oder mit einem Sprung.
2-20 |
CoDeSys V2.3 |