ETN21使用功能块实现SOCKET TCP通讯
制作时间:2016.6
硬件设备:CJ2M-CPU33(CPU)、CJ1W-ETN21(以太网模块) 软件:CX-Programmer、SocketTool
案例简介:1.掌握使用系统自带的功能块进行SOCKET TCP通讯
2.熟悉使用SocketTool软件收发数据。
3.本案例中,通过SOCKET TCP相关功能块,把CJ2M的D0开始的数据发送给上位机,同时把上位机数据接收到D10开始的地址中。
1. 系统概述,硬件搭建和接线
图1-1
本案例中,CJ1W-ETN21模块设置IP地址10.110.59.3;计算机IP地址为10.110.59.6。
OMRON 客户服务中心P035-2
2. 操作步骤 (1) 硬件设置:
CJ1W-ETN21两个拨码含义如下:
图2-1
本案例设置CJ1W-ETN21模块单元号为1,节点号为3。
(2) 软件操作:
a. 在CX-Programmer中新建CJ2M的工程,把PLC切换到编程模式创建IO表,双击读取出来的ETN21模块,设置IP地址与子网掩码,其中最后一个网段与硬件节点号一致:
图2-2
OMRON 客户服务中心P035-2
b. Socket tcp分为两种模式,一个是PASSIVE(服务器),一个是ACTIVE(客户端),在CX-Programmer软件里调用自带的功能块如下:
图2-3
c. 上位作为TCP客户端,打开SocketTool软件,新建一个TCP客户端:
图2-4
图2-5
IP地址设置PLC的IP地址,对方端口设置4000
OMRON 客户服务中心P035-2
d. 功能块调用编程说明:
TcpOpenPassive(服务器)功能块参数含义分别为:CJ1W-ETN21单元号1,TCP SOCKET号为1,启用KeepAlive功能,TCP端口号4000,不设置超时时间,不指定对方IP与端口号。
图2-6
图2-7
OMRON 客户服务中心P035-2
TcpRecv功能块参数含义分别为:CJ1W-ETN21单元号1,TCP SOCKET号
为1,接收4字节,数据保存到D10开始的地址中,不设置超时。
图2-8
TcpSend功能块参数含义分别为:CJ1W-ETN21单元号1,TCP SOCKET号
为1,发送2字节,数据从D0开始读取。
图2-9
OMRON 客户服务中心P035-2
TcpClose功能块参数含义分别为:CJ1W-ETN21单元号1,TCP SOCKET号为1。
图2-10
e. 上位作为TCP服务器,打开SocketTool软件,新建一个TCP服务器:本地端口号是10000
图2-11
OMRON 客户服务中心P035-2
d. PLC作为客户端,TcpOpenActive功能块参数含义分别为:CJ1W-ETN21单元号1,TCP SOCKET号为1,TCP端口号4000,目标IP地址10.110.59.6,目标端口号10000。
图2-12
其他功能块参数设置方法与作为服务器时一样。
OMRON 客户服务中心P035-2
3. 现象和结论 a. 建立Passive连接:
PLC执行TcpOpenPassive 功能块,SOCKET TOOL点击连接,一旦连接成功,即显示本地端口号如下:
图3-1
功能块对应的可以显示到电脑的IP地址:
图3-2
OMRON 客户服务中心P035-2
b.从SOCKET TOOL 发送数据给PLC,然后PLC执行RECV功能块。
图3-3
触发RECV:(接收存储地址可以看功能块参考)
图3-4
从D10开始,接收到的数据格式:
图3-5
即:0000(TCP正常完成) 0004(接收4字节) 12345678(数据)
OMRON 客户服务中心P035-2
c. 触发SEND功能块:
图3-6
SocketTool收到对应数据:
图3-7
d. 完成后执行TcpClose功能块断开连接。
e. 建立Active连接:
SocketTool软件,建立TCP服务器后,执行TcpOpenActive功能块: 连接成功后软件状态如下:
图3-8
OMRON 客户服务中心P035-2
f. 触发SEND功能块(数据和Passive的一样),软件收到数据如下:
图3-9
g. 软件发送数据后(数据和Passive的一样),触发RECV功能块:收到的数据如下:
图3-10
h. 完成后执行TcpClose功能块断开连接。
4. 注意事项
(1) PLC直接连接计算机,直连网线与交叉网线都可以。
(2) Passive和Active的不同在于,Passive作为服务器,不需要指定一个确定的
客户端IP地址,只要等待客户端来连接即可。
(3) 功能块输出条件BUSY的标志位一定要加入到启动条件中,否则功能块无法
正常执行。
(4) TCP连接断开后,需等待约 1分钟后,才可以重新建立连接。 (5) 功能块报错可查手册W421-E1-04。
(6) 只有ETN21的口能做SOCKET 通讯,EIP21不可做。
OMRON 客户服务中心P035-2
(7) 每个功能块具体说明可以对调用的功能块鼠标右键,选择功能块库参考进行
查看。
图4-1
(8) 网口模块默认9600端口号用于FINS服务,使用SOCKET功能时,需使用其他端口号。
因篇幅问题不能全部显示,请点此查看更多更全内容