.LocalPort=9600‘本地计算机端口号
.RemoteHost=txtIP.Text‘取得远程PLC的IP地址
.RemotePort=txtPort.Text‘远程PLC端口号
.Bind9600‘指定使用的本地端口
EndWith
初始化工作完成后向PLC提出连接请求,待PLC接受请求并发送应答信息后,客户端程序依照各种帧格式建立好要发送的信息帧,就可以与PLC进行双向的数据交流了。在这一过程中,可建立发送失败后的重发机制,以增强通信的可靠性。
首先,建立并发送“握手信息”指令(20字节),指明客户机节点号;当计算机接收到PLC返回帧(24字节)后,检查PLC是否收到命令,并取得服务器和客户机节点号。当计算机接收到PLC返回的数据时,会产生DataArrival事件,参数BytesTotal包含接收到的数据字节数。在DataArrival事件中,可以调用GetData方法接收数据。如果接收到Close事件,则用Close方法关闭连接。另外,可用Winsock的State属性来反映当前TCP/IP的连接状态。这里仅列举主要程序如下:
‘向服务器请求连接
WskClient.Connect
TimeDelay100
Do
DoEvents
LoopUntilWskClient.state=sckConnected
‘建立并发送FINS命令帧
PrivateSubSendData_Click()
ReDimSendData(19)AsByte
上一篇:PLC工控系统中应用了人机界面