Allg. Regeln für sicherheitsgerichtete Funktionsbausteine (General Rules for Safety Related Function Blocks)
Diese Programmierregeln entsprechen den „General Rules for Safety-Related Function Blocks“ der PLCopen. Sie gelten für PLCopen-konforme Funktionsbausteine.
Funktionsbausteinspezifische Regeln
Wichtig
PLCopen Funktionsbausteine können nur in Programmen und in Funktionsbausteinen, bei denen „Einmaliger Aufruf“ gesetzt ist, verwendet werden.
Default-Signal | Alle sicherheitsgerichteten booleschen E/A-Signale haben den voreingestellten sicheren Wert |
Signallevel | Der Wert
Dies reflektiert die Funktionalität der IEC 61131-Umgebungen, wie beispielsweise die Regeln für den Defaultwert und dass alle Ausgänge bei einem Fehlerfall auf |
Ausgänge | Jeder Ausgang muss in jedem Zyklus zugewiesen werden |
Fehlende E/A-Parameter | Fehlende Parameter sind zulässig. Defaultwerte gelten. Diese Defaultwerte sollen unter keinen Umständen in einen nicht sicheren Zustand führen. Die Defaultwerte einschließlich ihrer Attribute ( |
Anlaufverhalten | Anfangs werden die Ausgänge auf die Defaultwerte gesetzt. Nach dem ersten Aufruf des Funkionsbausteins, sind die Ausgänge gültig. Es gibt ein konsistentes Anlaufverhalten (Kaltstart). |
Zeitdiagramme | Zeitdiagramme, wie sie bei den Funktionsbausteinen gezeigt werden, dienen nur zur Erklärung. Sie stellen nicht das exakte Zeitverhalten dar. Das exakte Zeitverhalten hängt von der Implementierung ab. |
Fehlerbehandlung und Diagnose | Alle sicherheitsgerichteten Funktionsbausteine haben zwei fehlerbezogene Ausgänge: Die Vorschrift für sicherheitsgerichtete Umgebungen ist, dass die Schaltung der sicherheitsgerichteten Funktion die höchste Priorität hat und dass es in der Folgeschaltung genügend Zeit zur Diagnose gibt, entweder im funktionalen Programm oder in der Bedienschnittstelle. |
Allgemeine Eingangsparameter
Name | Datentyp | Beschreibung |
---|---|---|
|
| Variable oder Konstante für Aktivierung des Bausteins. Initialwert: Dieser Parameter kann mit der Variablen verbunden werden, die den Zustand (aktiv oder nicht aktiv) des relevanten Sicherheitsgeräts darstellt. Dies gewährleistet, dass keine irrelevanten Diagnosedaten erzeugt werden, wenn das Gerät deaktiviert wird.
Wenn kein Gerät verbunden ist, muss ein statisches |
|
| Jeder Name eines Eingangs eines Nur Variable dürfen zugewiesen werden. |
|
| Variable oder Konstante Aktivierung des automatischen Anlaufs des Bausteins, wenn die S-SPS gestartet wird (warm oder kalt).
Die Sicherheitshinweise für |
|
| Variable oder Konstante Aktivierung des automatischen Wiederanlaufs des Bausteins
Die Sicherheitshinweise für |
|
| Variable Initialwert: Abhängig von der Funktion, kann dieser Eingang für unterschiedliche Zwecke verwendet werden.
Diese Funktion ist nur bei einem Signalwechsel von Der Sicherheitshinweis für Die angemessene Bedeutung ist bei jedem Baustein beschrieben. |
Sicherheitshinweise für S_StartReset
S_StartReset
Dieser automatische Anlauf soll nur aktiviert werden, wenn gewährleistet ist, dass keine Gefährdung beim Start der S-SPS entstehen kann. Die Verwendung des Features Automatischer-Anlauf in Funktionsbausteinen erfordert deshalb die Implementierung anderer System- oder Applikationsmaßnahmen, um sicherzustellen, dass kein unerwartetes (oder unbeabsichtigtes) Starten auftritt.
Achtung
Wird der Eingang mit einer Variablen (und nicht mit FALSE
) verknüpft, so müssen zusätzliche Validierungsmaßnahmen definiert werden.
Sicherheitshinweise für S_AutoReset
Achtung
Der automatische Wiederanlauf soll nur aktiviert werden, wenn sichergestellt ist, dass es zu keinem Wiederingangsetzen der Maschine nach der Freigabe des NOT-HALT kommen kann. Die Verwendung des Features "Automatischer Wiederanlauf" in Funktionsbausteinen erfordert deshalb die Implementierung anderer System- oder Applikationsmaßnahmen, um sicher zu stellen, dass sich die Maschine nicht unerwartet (oder unbeabsichtigt) wieder in Gang setzt.
Achtung
Wenn der Eingang mit einer Variablen (und nicht mit FALSE
) verknüpft wird, müssen zusätzliche Validierungsmaßnahmen definiert werden.
Sicherheitshinweis für Reset
Achtung
Abhängig von den Sicherheitsanforderungen, muss anstelle von BOOL
mit SAFEBOOL
verbunden werden.
Allgemeine Ausgangsparameter
Name | Datentyp | Beschreibung |
---|---|---|
|
|
|
|
| Jeder Name eines |
|
| Fehler-Flag (gleich wie die „K1/K2“-LED eines Sicherheits-Relais.)
Nützlich im Debug-Modus ebenso wie für die Weiterverarbeitung im funktionalen Programm. |
|
| Diagnoseregister. Alle Zustände eines Bausteins ( Nützlich im Debug-Modus, ebenso wie für die Weiterverarbeitung im funktionalen Programm. |
Diagnose-Codes
Ein transparentes und einheitliches Diagnosekonzept bildet die Basis für alle Bausteine. Dadurch wird gewährleistet, dass ohne Rücksicht auf die Implementierung des Anwenders, dem Endanwender in Form des DiagCode
einheitliche Diagnose-Information zur Verfügung steht. Besteht kein Fehler, so wird der interne Zustand des Bausteins (Zustandsmaschine) dargestellt. Ein Fehler wird über einen binären Ausgang (Error
) angezeigt. Detaillierte Informationen über interne oder externe Baustein-Fehler kann man über DiagCode
erhalten. Der Baustein muss über verschiedene Reset
-Eingänge zurückgesetzt werden.
| Beschreibung |
---|---|
| Der Baustein ist nicht aktiviert oder Sicherheits-CPU ist angehalten |
| Zeigt an, dass sich der aktivierte Baustein im Betriebszustand ohne Fehler befindet.
|
| Zeigt an, dass sich der aktivierte Baustein im Fehlerzustand befindet.
|
| Beschreibung |
---|---|
|
Anmerkung: |
| Beschreibung |
---|---|
| Der Baustein ist nicht aktiviert. Dieser Code stellt den Leerlaufzustand dar. Als allgemeines Beispiel könnte die E/A-Einstellung wie folgt sein:
|
| Der Baustein ist aktiviert, ohne Fehler oder eine andere Bedingung, die den Sicherheits-Ausgang auf
|
| Eine Aktivierung wurde durch den Baustein entdeckt und der Baustein ist jetzt aktiviert, aber der
|
| Der aktivierte Baustein entdeckt eine Sicherheitsanforderung, zum Beispiel
|
| Der Sicherheitsausgang des aktivierten Baustein ist durch eine Sicherheitsanforderung deaktiviert worden. Die Sicherheitsanforderung ist jetzt zurückgenommen, aber der Sicherheitsausgang bleib solange
|
Generisches Zustandsdiagramm

Es wird ein genereller Überblick über die Zustände und Übergänge gezeigt. Einige Übergänge sind nicht benamt, dies bedeutet, dass sie Funktionsbaustein-spezifisch sind und mit dem jeweiligen Funktionsbaustein beschrieben werden müssen.
Das Diagramm zeigt drei Bereiche:
Im oberen Bereich ist der Funktionsbaustein nicht aktiv und ist im sicheren Zustand (sichere Ausgänge sind
FALSE
)Im mittleren Bereich ist der Funktionsbaustein aktiv und im sicheren Zustand (sichere Ausgänge sind
FALSE
)Im unteren Bereich ist der Funktionsbaustein in normalem Zustand (die sicheren Ausgänge sind
TRUE
)
Die erste horizontale Linie im Statusdiagramm zeigt den Übergang von einem nicht-aktiven Funktionsbaustein zu einem aktiven Funktionsbaustein.
Die zweite horizontale Linie zeigt den Übergang von einem nicht-sicheren zu einem sicheren Zustand
Die Prioritäten von möglichen parallelen Übergängen werden durch Nummern angegeben (höchste Priorität ist
0
)Die Zustände enthalten den Zustandsname und den hexadezimalen Diagnosecode.
Bedingungen
OR
,AND
,XOR
werden als logischen Operatoren undNOT
als Negation verwendet.Innerhalb der Funktionsbaustein-Beschreibung ist der Anfangszustand
Idle
, mit den Übergängen zu den einzelnen Betriebszuständen über den ZustandInit
.Activate
=FALSE
schaltet von jedem Zustand direkt in deIdle
-Zustand (0
= höchste Priorität ist fürActivate
=FALSE
reserviert). Zur besseren Übersicht werden diese Übergänge nicht in jedem Statusdiagramm eingezeichnet. Dies wird als Fußnote bei jedem Statusdiagramm erwähnt.Aus Gründen der Übersicht, wird das Setzen der Ausgänge nicht im Zustandsdiagramm beschrieben Eine explizite Wahrheitstabelle, die die Information „FB-Zustände zu Ausgang (Ausgängen) “ enthält, ist Teil jeder Funktionsbaustein-Spezifikation mit der Funktionsbaustein-spezifischen Fehler- und Zustandscodes.
| Statusname | Statusbeschreibung und Setzen des Ausgangs |
---|---|---|
|
|
|
| Statusname | Statusbeschreibung und Setzen des Ausgangs |
---|---|---|
|
|
|
|
|
|
| Alle Zustände des Betriebsmodus, wo |
|
| Alle Zustände des Betriebsmodus, wo |
|