Funktionsbeschreibung
Der sicherheitsbezogene Funktionsbaustein SF_RecipeRead ist Teil einer Safety-Bibliothek, die FBs für das applikative Rezepturen-Handling der sicherheitsbezogenen SPS bereitstellt.
Der Funktionsbaustein SF_RecipeRead kann Werte aus dem angegebenen Datensatz (Dateisektion) der angegebenen Rezeptur-Datei lesen.
Eine Funktionsbausteininstanz liest einen Datensatz aus 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".
Diese Datei liegt im remanenten Speicherbereich (z.B. SD-Karte) der übergeordneten Standard-Steuerung. Sie wurde mit dem Funktionsbaustein SF_RecipeWrite in derselben oder einer anderen sicherheitsbezogenen Applikation erzeugt.
Nachdem der Lesevorgang abgeschlossen ist (was auch die erfolgreiche Validierung der gelesenen Daten beinhaltet - siehe unten), steuert der Done-Ausgang auf SAFETRUE und die gelesenen Werte liegen an den Ausgängen PayloadRead** (mit ** = 00 bis 15) des Funktionsbausteins an.
Erkennung verfälschter Daten oder eines falschen Datensatzes
Bevor er Daten liest, prüft der FB grundsätzlich die Konsistenz der Datei/des Datensatzes, indem er die Datei/Datensatz-CRC neu berechnet und vergleicht. Diese Konsistenzprüfung wird unabhängig von den unten beschriebenen, vom Benutzer konfigurierbaren CRC-Prüfungen durchgeführt.
Zusätzlich zu diesen standardmäßigen Validierungen können Sie weitere CRC-Prüfungen aktivieren, indem Sie an den entsprechen Check**CRC-Eingang des Bausteins den Wert SAFETRUE anlegen. Falls aktiviert, validiert der FB die zu lesende Datei bzw. den Datensatz, indem er die in der Rezeptur-Datei gespeicherte Prüfsumme(n) mit den zu erwartenden Werten vergleicht, die am entsprechenden CRC-Eingang des Bausteins anliegen. Die gelesenen Daten werden nur dann als gültig erachtet, wenn diese Validierung erfolgreich ist, d.h. wenn die Prüfsummen identisch mit den zu erwartenden CRCs sind.
Weitere Infos
Lesen Sie hierzu das Thema "Fehlervermeidung". Beachten Sie insbesondere die dort vermerkten Gefahrenhinweise, für den Fall, dass Sie die konfigurierbaren Datenvalidierungen deaktivieren. |
- Anlegen einer ungültigen Datei- oder Datensatzkennung an einem FB-Eingang.
- Gleichzeitige Schreibzugriffe auf denselben Rezeptur-Datensatz innerhalb eines Zyklus der Sicherheitssteuerung.
- Gleichzeitige Lese- und Schreibzugriffe auf dieselbe Rezeptur-Datei bzw. denselben Datensatz innerhalb eines Zyklus der Sicherheitssteuerung.
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:
- Gleichzeitiges Lesen desselben Datensatzes innerhalb eines Zyklus.
- Gleichzeitiges Lesen und Löschen innerhalb eines Zyklus.
Weitere Infos
Lesen Sie hierzu das Thema "Fehlervermeidung". |