Mischen von sicherheitsbezogenen und Standard-Variablen in einem FBS/KOP-Netzwerk
Dieses Thema enthält folgende Informationen:
HINWEIS:
Begriffsdefinition: Standard = nicht-sicherheitsbezogen.
Der Begriff "Standard" bezeichnet nicht-sicherheitsbezogene Elemente/Objekte. Beispiele: Ein Standard-Prozessdaten-Element wird nur von einem nicht-sicherheitsbezogenen I/O-Gerät (d.h. einem Standard-Gerät) gelesen/geschrieben. Standard-Variablen/-Funktionen/-Funktionsbausteine sind nicht-sicherheitsbezogene Daten. Der Begriff "Standard-Steuerung" bezeichnet die nicht-sicherheitsbezogene Steuerung.
Wozu sicherheitsbezogene Variablen und Standard-Variablen mischen?
Innerhalb eines FBS/KOP-Netzwerks können sicherheitsbezogene und Standard-Variablen gemischt werden.
Auf diese Weise kann das Zustimmprinzip ausprogrammiert werden, ohne dass dazu die EN_OUT-Funktion notwendig ist (siehe Thema "Zustimmprinzip programmieren").
Die einfachste Realisierung des Zustimmprinzips in einem FBS/KOP-Netzwerk ist eine logische UND-Verknüpfung eines sicherheitsbezogenen Signals (in Form eines KOP-Kontaktes) mit einem Standardsignal (ebenfalls ein KOP-Kontakt). Das bedeutet, dass der Standardprozess (im Code dargestellt durch das Standard-Signal) der Sicherheitssteuerung (vertreten durch das sicherheitsbezogene Signal) zustimmt. Dies ist im ersten Beispielnetzwerk unten dargestellt.
In solchen gemischten FBS/KOP-Netzwerken sind UND-Verknüpfungen von sicherheitsbezogenen und Standard-Variablen sowie Datentypkonvertierungen von sicherheitsbezogen nach Standard erlaubt. Unzulässig sind dagegen Datentypkonvertierungen von Standard nach sicherheitsbezogen und ODER-Verknüpfungen von sicherheitsbezogenen und Standard-Datentypen, deren Ausgang eine sicherheitsbezogene Variable schreibt. Lesen Sie hierzu die unten aufgeführten Regeln.
Beim Mischen sicherheitsbezogener Variablen und Standard-Variablen in einem Netzwerk müssen folgende Sicherheitsregeln beachtet werden:
WARNUNG
UNBEABSICHTIGTER BETRIEBSZUSTAND DES GERÄTS
Überprüfen Sie, welche Auswirkungen Standard-Signale mittels UND-Verknüpfung auf sicherheitsbezogene Ausgänge haben.
Verwenden Sie keine Variablen in sicherheitsbezogenen Funktionen nach einer Datentypkonvertierung von sicherheitsbezogen nach Standard.
Die Nichtbeachtung dieser Anweisungen kann Tod, schwere Körperverletzungen oder Sachschäden zur Folge haben.
Sicherheitsbezogene Signalpfade werden hervorgehoben
Werden sicherheitsbezogene und Standard-Variablen innerhalb eines Netzwerks gemischt, führt EcoStruxure Machine Expert - Safety im FBS/KOP-Code eine Datenflussanalyse durch und hebt führende sicherheitsbezogene Signalpfade hervor, indem es sie als dicke rote Linien darstellt.
Ein sicherheitsbezogener Pfad endet entweder an einer sicherheitsbezogenen Ausgangsvariablen oder, im Fall einer Standard-Ausgangsvariablen, am letzten Objekteingang vor diesem Ausgang. Wenn ein Standard-Signalpfad an einem sicherheitsbezogenen Ausgang endet, dann wird dieser Ausgang mit einem rot schraffierten Hintergrund dargestellt.
Beispiele:
Behandlung von Formalparametern
In Code-Netzwerken werden FB-/Funktionseingänge wie Ausgangsvariablen eines Netzwerks behandelt. Umgekehrt wird jeder Ausgangsformalparameter eines FB/einer Funktion wie eine Eingangsvariable eines Netzwerks betrachtet. Folglich gelten für FBs/Funktionen, die in einem gemischten Netzwerk verwendet werden, dieselben Regeln wie für Variablen.
Beispiel:
Zulässige Verbindungen zwischen sicherheitsbezogenen Variablen und Standard-Variablen
Die folgenden Verbindungen zwischen sicherheitsbezogenen Variablen und Standard-Variablen sind zulässig:
Sicherheitsbezogene Eingangsvariable schreibt Standard-Ausgangsvariable (entspricht Typkonvertierung sicherheitsbezogen > Standard). ![]() |
Sicherheitsbezogene und Standard-Eingangsvariable schreiben sicherheitsbezogene Ausgangsvariable (UND-Verknüpfung). ![]() |
Sicherheitsbezogene und Standard-Eingangsvariable schreiben Standard-Ausgangsvariable (UND-Verknüpfung). ![]() |
Zwei (oder mehr) parallele sicherheitsbezogene Eingangsvariablen schreiben Standard-Ausgangsvariable (entspricht ODER-Verknüpfung mit anschließender Typkonvertierung sicherheitsbezogen > Standard). ![]() |
Sicherheitsbezogene Eingangsvariable und parallele Standard-Eingangsvariable schreiben Standard-Ausgangsvariable. ![]() |
Sicherheitsbezogene Eingangsvariable schreibt sicherheitsbezogene Ausgangsvariable mit paralleler Standard-Ausgangsvariable. ![]() |
Unzulässige Verbindungen zwischen sicherheitsbezogenen Variablen und Standard-Variablen
Die nachfolgend gezeigten Netzwerke enthalten unzulässige Verbindungen zwischen sicherheitsbezogenen Variablen und Standard-Variablen und führen zu Fehlermeldungen des Kompilers:
Standard-Eingangsvariable schreibt sicherheitsbezogene Ausgangsvariable (entspricht Typkonvertierung Standard > sicherheitsbezogen). ![]() |
Sicherheitsbezogene Eingangsvariable mit paralleler Standard-Eingangsvariable schreibt sicherheitsbezogene Ausgangsvariable (ODER-Verknüpfung eines sicherheitsbezogenen und eines Standard-Datentyps mit anschließender ungültiger Typkonvertierung). ![]() |