Beschreibung (S7-300, S7-400)
Diese Anweisung ermöglicht eine fehlersichere Quittierung von einem Bedien- und Beobachtungssystem aus. Damit kann z. B. die Wiedereingliederung von F‑Peripherie über das Bedien- und Beobachtungssystem gesteuert werden. Eine Quittierung besteht aus zwei Schritten:
-
Wechsel des Durchgangs IN für genau einen Zyklus auf den Wert 6
-
Wechsel des Durchgangs IN für genau einen Zyklus auf den Wert 9 innerhalb einer Minute
Die Anweisung wertet aus, ob nach einem Wechsel des Durchgangs IN auf den Wert 6 nach frühestens 1 Sekunde oder spätestens einer Minute ein Wechsel auf den Wert 9 erfolgt ist. Dann wird der Ausgang OUT (Ausgang für Quittierung) für einen Zyklus auf 1 gesetzt.
Wird ein ungültiger Wert eingegeben oder erfolgt der Wechsel auf den Wert 9 nicht innerhalb von einer Minute oder vor Ablauf einer Sekunde, wird der Durchgang IN auf 0 zurückgesetzt, und die beiden obigen Schritte müssen erneut durchgeführt werden.
Während der Zeit, in der der Wechsel von 6 auf den Wert 9 erfolgen muss, wird der Ausgang Q auf 1 gesetzt. Sonst hat Q den Wert 0.
Jedem Aufruf der Anweisung "Fehlersichere Quittierung" muss ein Datenbereich zugeordnet werden, in dem die Anweisungsdaten gespeichert werden. Dazu wird beim Einfügen der Anweisung im Programm automatisch der Dialog "Aufrufoptionen" geöffnet, in dem Sie einen Datenbaustein (Einzelinstanz) (z. B. ACK_OP_DB_1) oder eine Multiinstanz (z. B. ACK_OP_Instance_1) für die Anweisung "Fehlersichere Quittierung" erstellen können. Nach dem Erstellen finden Sie den neuen Datenbaustein in der Projektnavigation im Ordner "STEP 7 Safety" unter "Programmbausteine > Systembausteine" oder die Multiinstanz als lokale Variable im Abschnitt "Static" der Schnittstelle des Bausteins. Weitere Informationen dazu finden Sie in der Hilfe zu STEP 7.
|
Hinweis Sie müssen für jeden Aufruf des ACK_OP einen separaten Datenbereich verwenden. Jeder Aufruf darf in einem Zyklus der F-Ablaufgruppe nur einmal bearbeitet werden. Bei Nichtbeachtung ist das unter "Beschreibung" beschriebene Verhalten nicht mehr sichergestellt. |
Die Beschaltung des Freigabeeingangs "EN" bzw. des Freigabeausgangs "ENO" ist nicht möglich. Somit wird die Anweisung (unabhängig vom Signalzustand am Freigabeeingang "EN") immer ausgeführt.
|
|
Warnung |
|
Die beiden Quittierungsschritte dürfen nicht durch eine einzige Bedienung ausgelöst werden, z. B., indem Sie die Quittierungsschritte inklusive der Zeitbedingungen programmieren und durch eine einzige Funktionstaste auslösen. Durch die beiden separaten Quittierungsschritte wird auch eine fehlerhafte Auslösung einer Quittierung z. B. durch Ihr nicht fehlersicheres Bedien- und Beobachtungssystem verhindert. (S013) |
|
|
|
Warnung |
|
Falls Sie miteinander vernetzte Bedien‑ und Beobachtungssysteme und F‑CPUs haben, die die Anweisung ACK_OP zur fehlersicheren Quittierung nutzen, müssen Sie sich vor Ausführung der beiden Quittierungsschritte davon überzeugen, dass tatsächlich die beabsichtigte F‑CPU angesprochen wird.
|
|
* Ein Netz besteht aus einem oder mehreren Subnetzen. "Netzweit" bedeutet, über Subnetz-Grenzen hinweg.
|
Hinweis Sie dürfen den Ausgang Q über Bedien- und Beobachtungssysteme auslesen oder ggf. in Ihrem Standard-Anwenderprogramm auswerten. Sie können den Durchgang IN mit einem für jeden Aufruf der Anweisung ACK_OP eigenen Merkerwort bzw. DBW eines DBs des Standard-Anwenderprogramms versorgen. |
|
Hinweis Die Projektierung Ihres Bedien- und Beobachtungssystem hat keinen Einfluss auf die F-Gesamtsignatur. |
Beschreibung (S7-1200, S7-1500)
Diese Anweisung ermöglicht eine fehlersichere Quittierung von einem Bedien- und Beobachtungssystem aus. Damit kann z. B. die Wiedereingliederung von F‑Peripherie über das Bedien- und Beobachtungssystem gesteuert werden. Eine Quittierung besteht aus zwei Schritten:
-
Wechsel des Durchgangs IN für genau einen Zyklus auf den Wert 6
-
Wechsel des Durchgangs IN für genau einen Zyklus auf den Wert am Eingang ACK_ID innerhalb einer Minute
Die Anweisung wertet aus, ob nach einem Wechsel des Durchgangs IN auf den Wert 6 nach frühestens 1 Sekunde oder spätestens einer Minute ein Wechsel auf den Wert am Eingang ACK_ID erfolgt ist. Dann wird der Ausgang OUT (Ausgang für Quittierung) für einen Zyklus auf 1 gesetzt.
Wird ein ungültiger Wert eingegeben oder erfolgt der Wechsel auf den Wert am Eingang ACK_ID nicht innerhalb von einer Minute oder vor Ablauf einer Sekunde, wird der Durchgang IN auf 0 zurückgesetzt, und die beiden obigen Schritte müssen erneut durchgeführt werden.
Während der Zeit, in der der Wechsel von 6 auf den Wert am Eingang ACK_ID erfolgen muss, wird der Ausgang Q auf 1 gesetzt. Sonst hat Q den Wert 0.
Jedem Aufruf der Anweisung "Fehlersichere Quittierung" muss ein Datenbereich zugeordnet werden, in dem die Anweisungsdaten gespeichert werden. Dazu wird beim Einfügen der Anweisung im Programm automatisch der Dialog "Aufrufoptionen" geöffnet, in dem Sie einen Datenbaustein (Einzelinstanz) (z. B. ACK_OP_DB_1) oder eine Multiinstanz (z. B. ACK_OP_Instance_1) für die Anweisung "Fehlersichere Quittierung" erstellen können. Nach dem Erstellen finden Sie den neuen Datenbaustein in der Projektnavigation im Ordner "STEP 7 Safety" unter "Programmbausteine > Systembausteine" oder die Multiinstanz als lokale Variable im Abschnitt "Static" der Schnittstelle des Bausteins. Weitere Informationen dazu finden Sie in der Hilfe zu STEP 7.
|
Hinweis Sie müssen für jeden Aufruf des ACK_OP einen separaten Datenbereich verwenden. Jeder Aufruf darf in einem Zyklus der F-Ablaufgruppe nur einmal bearbeitet werden. Bei Nichtbeachtung ist das unter "Beschreibung" beschriebene Verhalten nicht mehr sichergestellt. |
Die Beschaltung des Freigabeeingangs "EN" bzw. des Freigabeausgangs "ENO" ist nicht möglich. Somit wird die Anweisung (unabhängig vom Signalzustand am Freigabeeingang "EN") immer ausgeführt.
|
|
Warnung |
|
Die beiden Quittierungsschritte dürfen nicht durch eine einzige Bedienung ausgelöst werden, z. B., indem Sie die Quittierungsschritte inklusive der Zeitbedingungen programmieren und durch eine einzige Funktionstaste auslösen. Durch die beiden separaten Quittierungsschritte wird auch eine fehlerhafte Auslösung einer Quittierung z. B. durch Ihr nicht fehlersicheres Bedien- und Beobachtungssystem verhindert. (S013) |
|
|
|
Warnung |
|
Falls Sie miteinander vernetzte Bedien‑ und Beobachtungssysteme und F‑CPUs haben, die die Anweisung ACK_OP zur fehlersicheren Quittierung nutzen, müssen Sie sich vor Ausführung der beiden Quittierungsschritte davon überzeugen, dass tatsächlich die beabsichtigte F‑CPU angesprochen wird. Alternative 1:
Alternative 2:
|
|
* Ein Netz besteht aus einem oder mehreren Subnetzen. "Netzweit" bedeutet, über Subnetz-Grenzen hinweg.
|
Hinweis Sie dürfen den Ausgang Q über Bedien- und Beobachtungssysteme auslesen oder ggf. in Ihrem Standard-Anwenderprogramm auswerten. Sie müssen für jeden Aufruf der Anweisung ACK_OP den Durchgang IN mit einem eigenen Merkerwort bzw. DBW eines DBs des Standard-Anwenderprogramms versorgen. |
|
Hinweis Die Versorgung des Durchgangs IN der Anweisung ACK_OP sowie die Projektierung Ihres Bedien- und Beobachtungssystems haben keinen Einfluss auf die F-Gesamtsignatur, die F-SW-Gesamtsignatur bzw. die Signatur des Bausteins, der die Anweisung ACK_OP aufruft. Änderungen der Versorgung des Durchgangs IN bzw. der Projektierung Ihres Bedien- und Beobachtungssystem führen deshalb nicht zu einer geänderten F-Gesamtsignatur/F-SW-Gesamtsignatur/Signatur des aufrufenden Bausteins. |
Parameter (S7-300, S7-400)
Die folgende Tabelle zeigt die Parameter der Anweisung:
|
Parameter |
Deklaration |
Datentyp |
Beschreibung |
|---|---|---|---|
|
IN |
InOut |
INT |
Eingangsgröße vom Bedien- und Beobachtungssystem |
|
OUT |
Output |
BOOL |
Ausgang für Quittierung |
|
Q |
Output |
BOOL |
Status der Zeit |
Parameter (S7-1200, S7-1500)
Die folgende Tabelle zeigt die Parameter der Anweisung:
|
Parameter |
Deklaration |
Datentyp |
Beschreibung |
|---|---|---|---|
|
ACK_ID |
Input |
INT |
Kennung der Quittierung (9 ... 30000) |
|
IN |
InOut |
INT |
Eingangsgröße vom Bedien- und Beobachtungssystem |
|
OUT |
Output |
BOOL |
Ausgang für Quittierung |
|
Q |
Output |
BOOL |
Status der Zeit |
Anweisungsversionen
Für diese Anweisung stehen mehrere Versionen zur Verfügung:
|
Version |
S7-300/400 |
S7-1200 G1 |
S7-1200 G2 |
S7-1500 |
Funktion |
|---|---|---|---|---|---|
|
1.0 |
x |
— |
— |
— |
Bei der Migration von Projekten, die mit S7 Distributed Safety V5.4 SP5 erstellt wurden, wird automatisch die Version 1.0 der Anweisung verwendet. Wenn Sie ein migriertes Sicherheitsprogramm mit STEP 7 Safety Advanced erstmalig übersetzen wollen, empfehlen wir Ihnen, zuvor die Version der Anweisung auf die höchste verfügbare Version umzustellen. |
|
1.1 |
x |
— |
— |
o |
Diese Versionen sind funktional identisch zur Version 1.0 für F-CPUs S7-300/400. Für F-CPUs S7-1200/1500 müssen Sie zusätzlich den Eingang ACK_ID berücksichtigen. |
|
1.2 |
x |
o |
— |
o |
|
|
1.3 |
x |
x |
x |
x |
|
Beim Anlegen einer neuen F-CPU mit STEP 7 Safety ist automatisch die höchste für die angelegte F-CPU verfügbare Version voreingestellt.
Weitere Informationen zur Verwendung von Anweisungsversionen erhalten Sie in der Hilfe zu STEP 7 unter "Anweisungsversionen verwenden".
Zeitliche Unschärfe, die durch den Aktualisierungszeitpunkt und die Toleranz der in der Anweisung verwendeten Zeitbasis entsteht
Beachten Sie dazu das Kapitel "Zeitliche Unschärfe bei Anweisungen mit Zeitverarbeitung".
Beispiel
Ein Beispiel für die Anwendung der Anweisung erhalten Sie unter Realisierung einer Anwenderquittierung im Sicherheitsprogramm der F-CPU eines DP-Masters oder IO-Controllers.