Daten zum Sendepuffer des EtherNet/IP-Moduls schreiben
Dieser FP-Befehl schreibt Daten in den durch FP_ETHERNETIP_DATA_SEND_DUT angegebenen Sendedatenpuffer für eine EtherNet/IP-Nachricht, die mit FP_ETHERNETIP_DATA_EXCHANGE_FB ausgetauscht wurde.
Eingang
Daten, die in den Sendepuffer geschrieben werden.
Die Menge der Daten, die in den Sendepuffer geschrieben werden, hängt vom Datentyp der verbundenen Variablen ab.
Beim Datentyp STRING werden die aktuelle Zeichenfolgenlänge und die Zeichen in den Sendepuffer geschrieben.
Boolesche Variable sind nicht zulässig.
Merker, der anzeigt, dass Daten an einen bestehenden Puffer angehängt werden sollen.
Wenn FALSE eingestellt ist, wird der Sendepuffer geleert, bevor Daten in den Sendepuffer geschrieben werden.
Wenn TRUE eingestellt ist, wird der Sendepuffer nicht geleert und die Daten werden an die bereits im Puffer befindlichen Daten angehängt.
Die Daten werden an das Element awData an der Byteposition iDataSize_Bytes of FP_ETHERNETIP_DATA_SEND_DUT angehängt.
Ein-/Ausgang
Strukturierter Datentyp des Sendedatenpuffers.
wenn der mit dem Index-Modifizierer definierte Bereich größer ist als der zulässige Bereich
wenn die EtherNet/IP-Funktion in der Ethernet-Modulkonfiguration nicht verwendet wird.
wenn ein für einen Parameter angegebener Wert außerhalb des zulässigen Bereichs liegt.
wenn der mit dem Index-Modifizierer definierte Bereich größer ist als der zulässige Bereich
wenn die EtherNet/IP-Funktion in der Ethernet-Modulkonfiguration nicht verwendet wird.
wenn ein für einen Parameter angegebener Wert außerhalb des zulässigen Bereichs liegt.
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
bAppend: BOOL:=FALSE;
bEnable: BOOL:=FALSE;
sData: STRING[32]:='';
dutSend: FP_ETHERNETIP_DATA_SEND_DUT;
END_VAR
Wenn die Variable bEnable auf TRUE gesetzt wird, wird die Funktion ausgeführt.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_CONTACT,,bEnable,4,1,6,3,);
B(B_F,FP_ETHERNETIP_DATA_SET!,,17,0,31,6,,?DEN?DData?DbAppendData?DdutSendData?AdutSendData?AENO);
B(B_VARIN,,sData,15,2,17,4,);
B(B_VARIN,,bAppend,15,3,17,5,);
B(B_VARIN,,dutSend,15,4,17,6,);
L(1,0,1,6);
L(1,2,4,2);
L(6,2,17,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
If (bEnable) Then
FP_ETHERNETIP_DATA_SET(Data := sData,
bAppendData := bAppend,
dutSendData := dutSend);
End_if;