FP_ETHERNETIP_DATA_SET

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.

Parameter

Eingang

Data (BOOL, INT, UINT, WORD, DINT, UDINT, DWORD, REAL, DATE, TOD, DT, STRING)
  • 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.

bAppendData (BOOL)

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

dutSendData (FP_ETHERNETIP_DATA_SEND_DUT)

Strukturierter Datentyp des Sendedatenpuffers.

Fehleralarmmerker

sys_bIsOperationErrorHold (wird auf TRUE gesetzt und bleibt TRUE)
  • 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.

sys_bIsOperationErrorNonHold (wird für einen Zyklus auf TRUE gesetzt)
  • 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.

Beispiel

POE-Kopf

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

KOP-Rumpf

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

ST-Rumpf

If (bEnable) Then
    FP_ETHERNETIP_DATA_SET(Data := sData,
                           bAppendData := bAppend,
                           dutSendData := dutSend);
End_if;

Letzte Änderung am: 2022-04-19Feedback zu dieser SeitePanasonic Hotline