Kurzbeschreibung | Der sicherheitsbezogene Funktionsbaustein SF_ModeSelector wertet die Zustände eines Betriebsartenwahlschalters mit bis zu acht Stellungen aus.So kann z.B. mittels eines mechanischen Betriebsartenwahlschalters eine bestimmte Betriebsart (z.B. Servicebetrieb, Einrichtbetrieb, Reinigungsbetrieb, usw.) für den Betrieb der sicherheitsbezogenen Anwendung eingestellt werden. |
Bausteinsymbol |  |
Eingänge | Activate
Kurzbeschreibung | Wert |
Zustandsgesteuerter Eingang zur Aktivierung des Funktionsbausteins.Datentyp: BOOL Anfangswert: FALSE |
-
FALSE: Funktionsbaustein inaktiv
-
TRUE: Funktionsbaustein aktiviert
|
Weitere Informationen hierzu finden Sie im Thema "Activate".
S_Mode0 bis S_Mode7
Kurzbeschreibung | Wert |
Zustandsgesteuerte Eingänge für den Status des angeschlossenen Betriebsartenwahlschalters. Es darf immer nur an einem der Eingänge ein SAFETRUE-Signal anliegen.Datentyp: SAFEBOOL Anfangswert: SAFEFALSEWird am Betriebsartenwahlschalter mehr als eine Betriebsart detektiert, führt dieses Verhalten sofort zum Fehler. Wenn keine Betriebsart angewählt ist (S_Mode0 bis S_Mode7 = SAFEFALSE), führt dies erst nach Ablauf der an ModeMonitorTime eingestellten Zeit zum Fehler.
Hinweis
Wenn die eingestellte Betriebsart durch S_Unlock = SAFEFALSE verriegelt ist, wird die Signalkombination an den Eingängen (S_Mode0 bis S_Mode7) nicht ausgewertet. |
|
-
SAFEFALSE: Betriebsart nicht angewählt
-
SAFETRUE: Betriebsart angewählt
|
Weitere Informationen hierzu finden Sie im Thema "S_Mode0 bis S_Mode7".
S_Unlock
Kurzbeschreibung | Wert |
Zustandsgesteuerter Eingang zum Ver- und Entriegeln der Betriebsartenumschaltung (S_Mode0 bis S_Mode7), z.B. durch einen Schlüsselschalter.Datentyp: SAFEBOOL Anfangswert: SAFEFALSE |
-
SAFEFALSE: Umschaltung der Betriebsart verriegelt
-
SAFETRUE: Umschaltung der Betriebsart möglich
|
Weitere Informationen hierzu finden Sie im Thema "S_Unlock".
S_SetMode
Kurzbeschreibung | Wert |
Flankengesteuerter Eingang zum Bestätigen bzw. Freigeben der an S_Mode0 bis S_Mode7 eingestellten Betriebsart. Datentyp: SAFEBOOL Anfangswert: SAFEFALSEEine manuelle Übernahmebestätigung (durch eine Flanke SAFEFALSE > SAFETRUE an Eingang S_SetMode) ist notwendig, wenn AutoSetMode auf FALSE eingestellt ist. |
-
SAFEFALSE: Manuelle Freigabe der eingestellten Betriebsart ist nicht angefordert
- Flanke SAFEFALSE > SAFETRUE: Manuelle Freigabe der an S_Mode0 bis S_Mode7 eingestellten Betriebsart
|
Weitere Informationen hierzu finden Sie im Thema "S_SetMode".
AutoSetMode
Kurzbeschreibung | Wert |
Zustandsgesteuerter Eingang zur Vorgabe der automatischen Übernahme der an den Eingängen S_Mode0 bis S_Mode7 eingestellten Betriebsart.Datentyp: BOOL Anfangswert: FALSE
Hinweis
Wenn die eingestellte Betriebsart durch S_Unlock = SAFEFALSE verriegelt ist, wird kein Betriebsartenwechsel durchgeführt. |
Die automatische Übernahme der eingestellten Betriebsart (AutoSetMode = TRUE) darf nur verwendet werden, wenn sichergestellt ist, dass bei einem Anlauf der Maschine/Anlage keine gefahrbringende Situation entstehen kann oder dass an anderer Stelle oder mit anderen Mitteln in geeigneter Form ein Wiederanlauf verhindert wird. |
-
FALSE: Die eingestellte Betriebsart wird nicht automatisch übernommen. In diesem Fall ist eine manuelle Bestätigung durch eine positive Flanke an Eingang S_SetMode notwendig.
-
TRUE: Die eingestellte Betriebsart wird automatisch übernommen. Voraussetzung ist, dass
- der Funktionsbaustein aktiviert ist (Activate = TRUE)
-
und kein Fehler gemeldet wird (Error = FALSE)
-
und keine Verriegelung der Betriebsartenumschaltung eingestellt ist (S_Unlock = SAFETRUE).
|
Unbeabsichtigter Betriebszustand des Geräts
- Prüfen Sie vor der Inbetriebnahme die Auswirkungen einer automatischen Übernahme der eingestellten Betriebsart auf Ihre Maschine bzw. Ihren Prozess.
- Beachten Sie die vorgegebenen Richtlinien in relevanten Sektornormen bezüglich der automatischen Übernahme der eingestellten Betriebsart.
- Stellen Sie sicher, dass an anderer Stelle oder mit anderen Mitteln eine geeignete Anlaufsperre realisiert ist.
|
Weitere Informationen hierzu finden Sie im Thema "AutoSetMode".
ModeMonitorTime
Kurzbeschreibung | Wert |
Eingang zur Vorgabe der maximal zulässigen Umschaltzeit beim Wechseln der Betriebsart. Datentyp: TIME Anfangswert: #0msWährend der an ModeMonitorTime eingestellten Zeit dürfen alle Eingänge gleichzeitig ein SAFEFALSE-Signal aufweisen. Danach führt ein gleichzeitiges SAFEFALSE-Signal an S_Mode0 bis S_Mode7 zum Fehler (Error = TRUE). Wird am Betriebsartenwahlschalter mehr als eine Betriebsart detektiert, führt dieses Verhalten sofort zum Fehler. | Geben Sie einen Zeitwert ein, der Ihrer Risikoanalyse entspricht. |
Nichterfüllen der Sicherheitsanforderungen
- Stellen Sie sicher, dass der an ModeMonitorTime eingestellte Zeitwert Ihrer Risikoanalyse entspricht.
- Stellen Sie sicher, dass Ihre Risikoanalyse eine Auswertung für den Fall eines falsch eingestellten Zeitwerts am Eingang ModeMonitorTime enthält.
- Validieren Sie die gesamte Sicherheitsfunktion in Bezug auf den eingestellten Wert an ModeMonitorTime und prüfen Sie die Applikation sorgfältig.
|
Weitere Informationen hierzu finden Sie im Thema "ModeMonitorTime".
Reset
Kurzbeschreibung | Wert |
Flankengesteuerter Eingang für das Rücksetz-Signal: Rücksetzen von Fehlermeldungen wenn die Fehlerursache nicht mehr besteht.Das Rücksetzen des Fehlers durch eine positive Signalflanke an Eingang Reset kann dazu führen, dass einer der Ausgänge S_Mode0Sel bis S_Mode7Sel sofort auf SAFETRUE gesteuert wird (je nach Status an den übrigen Eingängen).Beachten Sie die Warnung unter dieser Tabelle.Datentyp: BOOL Anfangswert: FALSE
Hinweis
Abweichend von der Norm EN ISO 13849-1 erfolgt das Rücksetzen nicht wie dort gefordert durch eine negative (fallende) sondern durch eine positive (steigende) Flanke. Um das Rücksetzen (im Hinblick auf die zwingende Abnahmeprozedur) mit einer fallenden Flanke zu implementieren, verwenden Sie den Funktionsbaustein SF_Reset. |
|
-
FALSE: Rücksetzen ist nicht angefordert
- Flanke FALSE > TRUE: Rücksetzen ist angefordert
|
Unbeabsichtigter Betriebsstart
- Berücksichtigen Sie in Ihrer Risikoanalyse die Auswirkungen des Rücksetzens durch eine positive Signalflanke an Eingang Reset.
- Stellen Sie sicher, dass geeignete Maßnahmen (gemäß zutreffender Sektornormen) getroffen wurden, um Gefährdungen durch das Rücksetzen zu verhindern.
- Betreten Sie den Betriebsbereich nicht, wenn das Rücksetzen durchgeführt wird.
- Stellen Sie sicher, dass keine anderen Personen den Betriebsbereich betreten können, wenn das Rücksetzen durchgeführt wird.
- Verwenden Sie geeignete Sicherheitsverriegelungen, wenn eine Gefahr für Personen und/oder Ausrüstung besteht.
|
Weitere Informationen hierzu finden Sie im Thema "Reset".
|
Ausgänge | Ready
Kurzbeschreibung | Wert |
Ausgang zur Signalisierung "Funktionsbaustein aktiviert/nicht aktiviert".Datentyp: BOOL |
-
FALSE: Der Funktionsbaustein ist nicht aktiviert (Activate = FALSE) und alle Ausgänge des Funktionsbausteins sind auf FALSE/SAFEFALSE gesteuert.
-
TRUE: Funktionsbaustein ist aktiviert (Activate = TRUE) und die Ausgangsparameter stellen den Zustand der Sicherheitsfunktion dar.
|
Weitere Informationen hierzu finden Sie im Thema "Ready".
S_Mode0Sel bis S_Mode7Sel
Kurzbeschreibung | Wert |
Ausgänge zur Signalisierung der eingestellten Betriebsart. Es kann immer nur ein Ausgang gleichzeitig ein SAFETRUE-Signal aufweisen.Datentyp: SAFEBOOL |
-
SAFEFALSE
-
Einer der Ausgänge S_ModeXSel = SAFEFALSE: Die entsprechende Betriebsart ist nicht aktiviert.
-
Alle Ausgänge (S_Mode0Sel bis S_Mode7Sel) = SAFEFALSE: Keine Betriebsart ist aktiviert
- oder Funktionsbaustein nicht aktiviert
- oder Fehlermeldung anliegend.
-
SAFETRUE
Einer der Ausgänge S_ModeXSel = SAFETRUE: Die entsprechende Betriebsart ist aktiviert
- und Funktionsbaustein ist aktiviert
- und keine Fehlermeldung anliegend.
|
Weitere Informationen hierzu finden Sie im Thema "S_Mode0Sel bis S_Mode7Sel".
S_AnyModeSel
Kurzbeschreibung | Wert |
Ausgang zur Signalisierung, ob an den Ausgängen S_Mode0Sel bis S_Mode7Sel eine Signalkombination ausgegeben wird. |
-
SAFEFALSE: An den Ausgängen S_Mode0Sel bis S_Mode7Sel werden nur SAFEFALSE-Signale ausgegeben.
-
SAFETRUE: An einem der Ausgänge S_Mode0Sel bis S_Mode7Sel wird ein SAFETRUE-Signal ausgegeben, um in der nachgeschalteten Applikation eine bestimmte Betriebsart zu steuern.
|
Weitere Informationen hierzu finden Sie im Thema S_AnyModeSel.
SafetyDemand
Kurzbeschreibung | Wert |
Ausgang zur Signalisierung "Sicherheitsfunktion angefordert". Dieser Ausgang zeigt an, ob die Sicherheitskette unterbrochen und deshalb die Aufmerksamkeit des Bedieners erforderlich ist. Datentyp: BOOL |
-
FALSE: Sicherheitsfunktion ist nicht angefordert.
-
TRUE: Die Sicherheitsfunktion ist angefordert.
|
Weitere Informationen hierzu finden Sie im Thema "SafetyDemand".
ResetRequest
Kurzbeschreibung | Wert |
Ausgang zur Signalisierung "Rücksetzen erforderlich". Dieser Ausgang zeigt an, ob das Rücksetzen durch den Bediener erforderlich ist. Datentyp: BOOL |
-
FALSE: Kein Rücksetzen erforderlich.
-
TRUE: Rücksetzen ist erforderlich,
- zum Aufheben einer aktiven Anlauf- oder Wiederanlaufsperre (falls verfügbar bei diesem Funktionsbaustein)
-
oder zum Rücksetzen eines Fehlers.
|
Weitere Informationen hierzu finden Sie im Thema "ResetRequest".
Error
Kurzbeschreibung | Wert |
Ausgang für Fehlermeldung.Datentyp: BOOL |
-
FALSE: Es liegt kein Fehler vor.
-
TRUE: Der Funktionsbaustein hat einen Fehler erkannt. In der Folge wird Ausgang S_ModeXSel auf SAFEFALSE gesteuert.
|
Weitere Informationen hierzu finden Sie im Thema "Error".
DiagCode
Kurzbeschreibung | Wert |
Ausgang für Diagnosemeldung.Datentyp: WORD | Diagnosemeldung des Funktionsbausteins. Die möglichen Werte sind im Thema "Diagnose-Codes" aufgelistet und beschrieben. |
Weitere Informationen hierzu finden Sie im Thema "DiagCode".
|
Detailinformationen | Signalablauf-Diagramm
Das Diagramm zeigt den Signalablauf für einen gültigen Wechsel der Betriebsart innerhalb der an ModeMonitorTime eingestellten Überwachungszeit.
-
AutoSetMode = FALSE: Zur Übernahme der eingestellten Betriebsart ist eine manuelle Bestätigung durch eine positive Flanke an Eingang S_SetMode notwendig.
-
S_Unlock = SAFETRUE: Eine Umschaltung der Betriebsart ist möglich.
0 | Der Funktionsbaustein ist noch nicht aktiviert (Activate = FALSE). Folglich sind alle Ausgänge FALSE oder SAFEFALSE. |
1 | Der Funktionsbaustein ist aktiviert (Activate = TRUE), die Eingänge werden jetzt ausgewertet. An den Eingängen liegt die Vorgabe für Betriebsart 0 an (Eingang S_Mode0 ist SAFETRUE). Da aber an Eingang S_SetMode keine manuelle Bestätigung für den Wechsel der Betriebsart erkannt wird (diese ist notwendig weil AutoSetMode = FALSE), bleibt Ausgang S_Mode0Sel trotz der Vorgabe (S_Mode0 = SAFETRUE) auf SAFEFALSE. |
2 | Der Betriebsartenwahlschalter wird betätigt, Anforderung zum Wechsel auf Betriebsart 7. Eingang S_Mode0 wird SAFEFALSE, dieser Wechsel startet die Überwachungszeitmessung. Vor Ablauf der an ModeMonitorTime eingestellten Zeit wechselt S_Mode7 auf SAFETRUE. Die neue Betriebsart 7 ist zwar eingestellt, aber noch nicht aktiv, da mit AutoSetMode = FALSE eine manuelle Übernahme vorgegeben wurde. Um die Betriebsart an Ausgang S_Mode7Sel zu aktivieren, ist eine positive Flanke an S_SetMode notwendig. |
3 | Mit der positiven Signalflanke an Eingang S_SetMode wird die eingestellte Betriebsart 7 freigegeben, Ausgang S_Mode7Sel wird SAFETRUE. |
Anwendungsbeispiel
Dieses Beispiel zeigt die Betriebsartenauswahl mit Hilfe eines fünfstufigen Betriebsartenwahlschalters S1.
Die Signale der fünf Schließerkontakte des Betriebsartenwahlschalters sind an die fünf Eingangsklemmen 1.1 bis 5.1 des sicherheitsbezogenen Eingangsgerätes PSDI 1 angeschlossen. Die Verknüpfung der Signale mit den globalen I/O-Variablen und die Beschaltung der Bausteineingänge sind wie folgt ausgeführt:
Klemme | globale I/O-Variable | Bausteineingang |
1.1 | S1_M0_In | S_Mode0 |
2.1 | S1_M1_In | S_Mode1 |
3.1 | S1_M2_In | S_Mode2 |
4.1 | S1_M3_In | S_Mode3 |
5.1 | S1_M4_In | S_Mode4 |
Da ein fünfstufiger Betriebsartenwahlschalter ausgewertet wird, bleiben die Bausteineingänge S_Mode5 bis S_Mode7 unbeschaltet.
An Eingangsklemme 6.1 des sicherheitsbezogenen Eingangsgeräts PSDI 1 ist ein Schlüsselschalter S2 angeschlossen. Das Eingangssignal ist mit der globalen I/O-Variablen S2_Ulck_In verknüpft, die wiederum an den Bausteineingang S_Unlock angeschlossen ist. Durch Abschließen des Schlüsselschalters (S_Unlock = SAFEFALSE) wird die eingestellte Betriebsart verriegelt.
An Eingang AutoSetMode ist eine FALSE-Konstante angeschlossen, d.h. es ist eine manuelle Bestätigung der eingestellten Betriebsart an Eingang S_SetMode notwendig. Zu diesem Zweck ist an Eingangsklemme 7.1 des sicherheitsbezogenen Eingangsgerätes PSDI 1 der Taster S3 angeschlossen. Dessen Eingangssignal ist mit der globalen I/O-Variablen S3_SetM_In verknüpft, die wiederum an den Bausteineingang S_SetMode angeschlossen ist.
Ein Reset-Taster S4, der an Eingangsklemme 1.1 des Standard-Eingangsgerätes DI 1 angeschlossen ist, dient zum Rücksetzen von Fehlermeldungen (positive Signalflanke an Bausteineingang Reset). Dessen Signal ist mit der globalen I/O-Variablen S4_Reset_MS verknüpft, die wiederum an den Bausteineingang Reset angeschlossen ist.
Hinweis
Die Freigabeausgänge S_Mode0Sel bis S_Mode4Sel des Funktionsbausteins SF_ModeSelector sind mit den Eingängen weiterer sicherheitsbezogener Funktionen/Funktionsbausteine verschaltet. Da ein fünfstufiger Betriebsartenwahlschalter ausgewertet wird, sind die Bausteinausgänge S_Mode5Sel bis S_Mode7Sel nicht relevant und können unbeschaltet bleiben.
|
S1 | Betriebsartenwahlschalter mit 5 Schaltstellungen |
S2 | Schlüsselschalter (Sperrung der Betriebsartenwahl) |
S3 | Quittierung |
S4 | Reset |
 | Siehe Hinweis vor der Abbildung. |
Funktionsbaustein-Instanziierung
Die IEC 61131-3 definiert die Instanziierung von Funktionsbausteinen. Instanziieren bedeutet, dass ein Funktionsbaustein einmal definiert wird und dann mehrfach verwendet (instanziiert) werden kann. Dies gilt für alle Standard-FBs und sicherheitsbezogene FBs (sowohl lokale als auch FBs aus Firmware- und Anwenderbibliotheken).
Warum Instanziierung? Ein Funktionsbaustein besitzt einen internen Speicher, in dem dieser die Arbeitsdaten (lokale Variablen) ablegt. Das bedeutet, die Ausgangswerte, die ein FB berechnet, hängen von den aktuellen intern gespeicherten Werten ab. Die gleichen Eingangswerte liefern deshalb bei verschiedenen FB-Instanzen nicht zwingend die gleichen Ausgangswerte. Die internen Daten des Funktionsbausteins müssen daher für jeden Aufruf, d.h. für jede FB-Instanz, in einem getrennten Speicherbereich gehalten werden. Um jede FB-Instanz eindeutig identifizieren und ihren Speicherbereich separat halten zu können, werden Instanznamen verwendet. Der Instanzname eines FB muss in der 'Variablen'-Tabelle der POE deklariert werden, in welcher der FB verwendet werden soll.
Dabei gilt Folgendes:
- Funktionsbausteine können in anderen Funktionsbausteinen und in Programm-POEs instanziiert werden. Der Aufruf eines FB in einer Funktion-POE ist nicht möglich.
- Funktionen werden ohne Instanznamen aufgerufen, da sie keinen internen Speicher besitzen.
In PLCnext Engineer wird strikt zwischen sicherheitsbezogenem Code und (nicht-sicherheitsbezogenem) Standard-Code unterschieden. Wenn Ihr Projekt eine sicherheitsbezogene SPS enthält, gilt Folgendes:
- Sicherheitsbezogene FBs können nur in sicherheitsbezogenen POEs instanziiert werden, aber nicht in (nicht-sicherheitsbezogenen) Standard-POEs.
- Anwenderdefinierte Standard-FBs können nur in Standard-POEs instanziiert werden. Sie können nicht in sicherheitsbezogenen POEs aufgerufen werden.
- Bestimmte Standard-Firmware-FBs können sowohl in sicherheitsbezogenen, als auch in Standard-POEs instanziiert werden.
Hinweis
Beim Einfügen eines Standard-FBs in ein sicherheitsbezogenes SNOLD-Netzwerk gelten die Regeln für die implizite Typumwandlung (von sicherheitsbezogen nach Standard). |
Beispiel für die Instanziierung eines sicherheitsbezogenen PLCopen-Funktionsbausteins
Der sicherheitsbezogene PLCopen-Funktionsbaustein 'SF_EmergencyStop_V2_00' wurde über eine Bibliothek in das Projekt eingefügt. Er ist dann in der Kategorie 'Programmierung' des KOMPONENTEN-Bereichs verfügbar. Dort befindet sich ein Ordner mit demselben Namen wie die Bibliothek, aus dem sich die FBs in den sicherheitsbezogenen Code einfügen lassen. Der FB soll im Code des sicherheitsbezogenen Programms 'S_Main' zweimal aufgerufen werden, um den Status zweier sicherheitsbezogener Not-Halt-Befehlsgeräte auszuwerten. Für jede FB-Instanz wurde in der Variablentabelle des aufrufenden Programms ein Instanzname deklariert: EStop_M1 und EStop_M2. Die zwei FB-Instanzen wurden in das Code-Arbeitsblatt eingefügt, wobei unterschiedliche Variablen an die Eingangs- und Ausgangs-Formalparameter der Instanzen angeschlossen sind.
Weitere Informationen finden Sie in den folgenden Abschnitten:
|