Statusdaten aller Ethernet-Module unter Verwendung von HTTP-Übertragung lesen
Dieser FP-Befehl ruft die Informationen von allen Ethernet-Modulen nTransferID0–nTransferID15 ab und schreibt die Werte in den SDT FP_CLIENT_STATUS_ALL_DUT.
Ausgang
Speichert die Werte des Ethernet-Status aller Ethernet-Module
Dieser Befehl ist in Interrupt-Programmen nicht verfügbar.
Bevor Sie den Befehl ausführen, müssen Sie die Datenübertragungseinstellungen mit FP_HTTP_SET_MODE oder dem Einstellungsdialog des HTTP-Clients angeben.
Wenn ein Fehler auftritt, prüfen Sie die Systemvariable sys_iEthernetConnectionErrorCode auf die Fehlercodenummer.
wenn eine Datenübertragungseinstellung angegeben ist, die nicht mit FP_HTTP_SET_MODE oder im Einstellungsdialog des HTTP-Clients konfiguriert wurde.
wenn der Befehl in einem Interrupt-Programm ausgeführt wird
wenn eine Datenübertragungseinstellung angegeben ist, die nicht mit FP_HTTP_SET_MODE oder im Einstellungsdialog des HTTP-Clients konfiguriert wurde.
wenn der Befehl in einem Interrupt-Programm ausgeführt wird
Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.
VAR
dutFPClientStatusAll: FP_CLIENT_STATUS_ALL_DUT;
bGetStatusAll: BOOL:=FALSE;
END_VAR
Wenn bGetStatusAll auf TRUE gesetzt ist, wird der Befehl ausgeführt. Die Statuswerte aller Ethernet-Module werden in den SDT dutFPClientStatusAll gescrhieben.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_COMMENT,,Get status of all FTP Transfer numbers: e.g. ID0..ID15,3,1,26,4,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_VAROUT,,dutFPClientStatusAll,26,3,28,5,);
B(B_CONTACT,,bGetStatusAll,5,2,7,4,);
B(B_F,FP_HTTP_GET_STATUS_ALL!,,12,1,26,5,,?DEN?AENO?CdutFPClientStatusAll);
L(1,3,5,3);
L(7,3,12,3);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bGetStatusAll) then
FP_HTTP_GET_STATUS_ALL(dutClientStatusAll => dutFPClientStatusAll);
End_if;