EtherNet/IPユニットの送信バッファへのデータの書き込み
このFP命令は、EtherNet/IPメッセージ用のFP_ETHERNETIP_DATA_SEND_DUTで指定された送信データバッファに、FP_ETHERNETIP_DATA_EXCHANGE_FBと交換されたデータを書き込みます。
入力
送信バッファに書き込まれるデータ。
送信バッファに書き込まれるデータ量は、接続された変数のデータ型によって異なります。
データ型がSTRINGの場合、現在の文字列の長さと文字が送信バッファに書き込まれます。
BOOL型変数は使用できません。
フラグは、データが既存のバッファに追加されることを示します。
FALSEが設定されている場合、送信バッファは、送信バッファにデータを書き込む前にクリアされます。
TRUEが設定されている場合、送信バッファはクリアされず、データはバッファにすでにあるデータに追加されます。
データは、FP_ETHERNETIP_DATA_SEND_DUTのバイト位置iDataSize_Bytesにある要素awDataに追加されます。
入出力
送信データバッファの構造体(DUT)。
インデックス修飾時にエリアを超えたとき
Ethernetのユニットコンフィグレーションで、EtherNet/IP機能を使用しないとき
パラメータに指定された値が許容範囲外の場合。
インデックス修飾時にエリアを超えたとき
Ethernetのユニットコンフィグレーションで、EtherNet/IP機能を使用しないとき
パラメータに指定された値が許容範囲外の場合。
POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。POUヘッダは全プログラム言語で使用できます。
VAR
bAppend: BOOL:=FALSE;
bEnable: BOOL:=FALSE;
sData: STRING[32]:='';
dutSend: FP_ETHERNETIP_DATA_SEND_DUT;
END_VAR
変数bEnableがTRUEにセットされたとき、ファンクションが実行されます。
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;