2-757
2 Instruction Descriptions
NJ-series Instructions Reference Manual (W502)
Communications Instructions
2
SktUDPCreate
Execution condition
Processing
Stage change
Receive data
Socket
Send data
Variable Data type Initial value Comment
ST
IF ( (Trigger=TRUE) AND (DoSendAndRcv=FALSE) AND (_Eip_EtnOnlineSta=TRUE) ) THEN
DoSendAndRcv:=TRUE;
Stage :=INT#1;
SktUDPCreate_instance(Execute:=FALSE);
SktUDPSend_instance(
Execute :=FALSE,
SendDat:=SendSocketDat[0]);
SktUDPRcv_instance(
Execute:=FALSE,
RcvDat :=RcvSocketDat[0]);
SktClose_instance(Execute:=FALSE);
END_IF;
IF (DoSendAndRcv=TRUE) THEN
CASE Stage OF
1 :
SktUDPCreate_instance(
Execute :=TRUE,
SrcUdpPort:=UINT#6000,
Socket =>WkSocket);
IF (SktUDPCreate_instance.Done=TRUE) THEN
Stage:=INT#2;
ELSIF (SktUDPCreate_instance.Error=TRUE) THEN
Stage:=INT#10;
END_IF;
2 :
WkSocket.DstAdr.PortNo:=UINT#6001;
WkSocket.DstAdr.IpAdr :=’192.168.250.2’;
SktUDPSend_instance(
Execute :=TRUE,
Socket :=WkSocket,
SendDat:=SendSocketDat[0],
Size :=UINT#2000);
IF (SktUDPSend_instance.Done=TRUE) THEN
Stage:=INT#3;
ELSIF (SktUDPSend_instance.Error=TRUE) THEN
Stage:=INT#20;
END_IF;
// Start sequence when Trigger changes to TRUE.
// Request creating socket.
// Local UDP port number
// Socket
// Socket
// Send data
// Send data size
// Normal end
// Error end
// Normal end
// Error end
// Initialize instance.
// Initialize instance.
// Initialize instance.
// Dummy
// Initialize instance.
// Dummy
// Request sending data
Trigger
DoSendAndRcv
Stage
RcvSocketDat
WkSocket
SendSocketDat
SktUDPCreate_instance
SktUDPSend_instance
SktUDPRcv_instance
SktClose_instance
False
False
0
[2000(16#0)]
(Handle:=0, SrcAdr:=(PortNo:=0,
IpAdr:=’’), DstAdr:=(PortNo:=0, IpAdr:=’’))
[2000(16#0)]
BOOL
BOOL
INT
ARRAY[0..1999] OF BYTE
_sSOCKET
ARRAY[0..1999] OF BYTE
SktUDPCreate
SktUDPSend
SktUDPRcv
SktClose
_EIP_EtnOnlineSta
BOOL
Constant
Internal
Variables
External
Variables
Variable Data type Comment
Online