In diesem Abschnitt werden Verwaltung und Funktionsweise der Kommunikationsfunktionen der Steuerungen über den Funktionsbaustein READ_VAR
erläutert. (Der PLCopen-Standard definiert Regeln für Funktionsbausteine.)
Die Parameter, die für alle Funktionsbausteine in der PLCCommunication-Bibliothek gelten, sind in der folgenden Abbildung hervorgehoben:
Diese Parameter werden von mehreren Funktionsbausteinen in der PLCCommunication-Bibliothek gemeinsam verwendet:
Eingang |
Typ |
Kommentar |
---|---|---|
|
BOOL |
Die Funktion wird an der steigenden Flanke dieses Eingangs ausgeführt.
HINWEIS: Wenn |
|
BOOL |
Bricht die laufende Operation an der steigenden Flanke ab. |
|
ADDRESS |
Adresse des externen Zielgeräts (kann der Ausgang des ADDM-Funktionsbausteins sein). |
|
WORD |
Der Timeout für den Datenaustausch ist ein Vielfaches von 100 ms (0 für unendlich).
HINWEIS: Für den HMI SCU ist die Timeout-Dauer (Timeout time) auf ≅1 s festgelegt und kann für die Modbus-Kommunikationsfunktionsbausteine nicht eingestellt werden.
|
HINWEIS: Für eine Funktionsbausteinoperation sind möglicherweise mehrere Austauschvorgänge erforderlich. Das Timeout wird auf jeden Datenaustausch zwischen Steuerung und Modem angewendet, daher kann die Gesamtdauer des Funktionsbausteins länger sein als das Timeout. |
Ausgang |
Typ |
Kommentar |
---|---|---|
|
BOOL |
|
|
BOOL |
|
|
BOOL |
|
|
BOOL |
|
|
BYTE |
|
|
DWORD |
|
Busy
auf 0 zurückgesetzt wird, wird einer (und nur einer) der folgenden drei Ausgänge auf 1 gesetzt:
Done
Error
Aborted
Zur Initialisierung von Funktionsbausteinen ist eine steigende Flanke erforderlich. Der Funktionsbaustein muss zunächst den Eingang Execute
als „False“ ansehen, um eine nachfolgende steigende Flanke zu erkennen.
WARNUNG | |
---|---|
Die Funktion startet bei steigender Flanke am Eingang Execute
. Der Ausgang Busy
wird daraufhin auf TRUE
gesetzt. Diese Abbildung zeigt das Verhalten des Funktionsbausteins, wenn die Operation automatisch abgeschlossen wird (unabhängig davon, ob Fehler erkannt wurden):
Hinweis 1: Das Bit Done
oder Error
wird während eines Taskzyklus nur dann auf TRUE
gesetzt, wenn Execute
bereits am Ende der Operation auf FALSE
zurückgesetzt wurde.
Diese Abbildung zeigt den Funktionsabbruch durch die Anwendung. Die steigende Flanke am Eingang Abort
bricht die laufende Funktion ab. In diesen Fällen wird der abgebrochene Ausgang auf 1 gesetzt und CommError
enthält den Code Canceled - 16#02
(Datenaustausch durch Benutzeranforderung angehalten):
Hinweis 1: Das Bit Abort
wird während eines Taskzyklus nur dann auf TRUE
gesetzt, wenn Execute
zum Zeitpunkt der Abbruchanforderung auf FALSE
zurückgesetzt wurde.