-

Funktionsbeschreibung

Der sicherheitsbezogene Funktionsbaustein SF_RecipeWrite ist Teil einer Safety-Bibliothek, die FBs für das applikative Rezepturen-Handling der sicherheitsbezogenen SPS bereitstellt.

Der Funktionsbaustein SF_RecipeWrite kann eine Rezeptur-Datei erzeugen oder verändern, indem er die Werte an seinen PayloadWrite-Eingängen schreibt.

Eine Funktionsbausteininstanz schreibt einen Datensatz in einer Rezeptur-Datei. Ein solcher Datensatz enthält 16 SAFEDWORD-Werte (d.h. 64 Bytes Rezepturdaten). Lesen Sie hierzu das Thema "Rezeptur-Dateien: Hintergrundinformation und Dateistruktur".

Die Rezeptur-Datei ist im remanenten Speicher (z.B. SD-Karte) der übergeordneten Standard-Steuerung abgelegt. Allgemeine Informationen über diese Dateien, deren Struktur etc. finden Sie im Thema "Rezeptur-Dateien: Hintergrundinformation und Dateistruktur" in den Vorseiten zu dieser Bausteinhilfe.

Nachdem er die Payload-Werte in den spezifizierten Datensatz (die Dateisektion) der Rezeptur-Datei geschrieben hat, werden die gesamte Datei sowie der geschriebene Datensatz versiegelt und es werden Prüfsummen berechnet. Eine Rezeptur-Datei besteht aus mehreren Datensätzen (die auch als Sektionen bezeichnet werden). Der FB berechnet eine Prüfsumme über die Datei (FileCRC) und je eine Prüfsumme über jeden enthaltenen Datensatz (DataSetCRC). Diese Prüfsummen schreibt der FB neben der Seriennummer der Sicherheitssteuerung und der Prüfsumme des aktuellen Projekts (ProjectCRC) in die Rezeptur-Datei.

Nachdem er die Datei erfolgreich geschrieben und versiegelt hat, steuert der FB seinen Ausgang Done auf SAFETRUE und schreibt die berechneten CRCs auf seine Ausgänge DataSetCRC und FileCRC.

Erkennen eines inkorrekten/ungültigen Schreibvorgangs

Der Funktionsbaustein und die Sicherheitssteuerung implementieren mehrere Verifizierungs- und Validierungsmaßnahmen, die dazu beitragen, eine Fehlfunktion des FB (und damit ggf. der gesamten Sicherheitsfunktion) durch die Verwendung ungültiger Rezepturdaten zu verhindern. Dazu gehört zum Beispiel:

Erlaubte aber potenziell unerwünschte Mehrfachzugriffe

Andere gleichzeitige Zugriffe durch mehrere Rezeptur-Funktionsbausteine werden zwar ggf. nicht als Fehler betrachtet, sollten aber durch entsprechendes Strukturieren der sicherheitsbezogenen Applikation verhindert werden oder, falls sie notwendig sind, sorgfältig im Rahmen einer Funktionsprüfung verifiziert werden.
Beispiele für solche generell erlaubten aber möglicherweise kritischen gleichzeitigen Zugriffe sind:

Weitere Infos
Lesen Sie hierzu das Thema "Fehlervermeidung".