Grundlagen zur Programmbearbeitung
9.5 Asynchron arbeitende Anweisungen
Zuordnung von Aufrufen einer Anweisung zu einem Auftrag
Um eine Anweisung über mehrere Aufrufe auszuführen, muss die CPU einen Folgeaufruf
einem bereits laufenden Auftrag der Anweisung eindeutig zuordnen können.
Für die Zuordnung Aufruf zu Auftrag nutzt die CPU abhängig vom Typ der Anweisung einen
der beiden folgenden Mechanismen:
• Über den Instanzdatenbaustein der Anweisung (bei Typ "SFB")
• Über die den Auftrag identifizierenden Eingangsparameter der Anweisung. Diese
Eingangsparameter müssen während der Bearbeitung der asynchronen Anweisung in
jedem Aufruf übereinstimmen.
Beispiel: Die Anweisung "RD_DPARA" ist identifiziert durch LADDR und RECNUM.
Status einer asynchron arbeitenden Anweisung
Eine asynchron arbeitende Anweisung zeigt ihren Status über die Bausteinparameter
STATUS/RET_VAL und BUSY an. Viele asynchron arbeitende Anweisungen nutzen außerdem
noch die Bausteinparameter DONE und ERROR.
Das folgende Bild zeigt die beiden asynchronen Anweisungen WRREC und RD_DPARA.
①
②
③
④
⑤
Bild 9-7
270
Der Eingangsparameter REQ startet den Auftrag zur Ausführung der asynchronen Anweisung.
Der Ausgangsparameter DONE gibt an, dass der Auftrag fehlerfrei abgeschlossen wurde.
Der Ausgangsparameter BUSY gibt an, ob der Auftrag momentan ausgeführt wird. Wenn
BUSY=1, dann ist eine Ressource für die asynchrone Anweisung belegt. Wenn BUSY=0, dann ist
die Ressource frei.
Der Ausgangsparameter ERROR zeigt an, dass ein Fehler vorliegt.
Der Ausgangsparameter STATUS/RET_VAL gibt Informationen zum Zustand der Auftragsausfüh-
rung. Nach Auftreten eines Fehlers enthält der Ausgangsparameter STATUS/RET_VAL die Fehler-
information.
Bausteinparameter von asynchronen Anweisungen am Beispiel der Anweisungen WRREC
und RD_DPARA
Redundantes System S7-1500R/H
Systemhandbuch, 01/2023, A5E41814780-AE