海为PLC通过串口服务器TCP232-E5-2与组态王通信
1.海为PLC通过串口服务器TCP232-E5-2与组态王通信
端口0为串口232设置波特率19200 校验、数据、停止N 8 2与PLC232串口设置一致,串口流设置none 模块端口23 远程端口23 工作方式tcp server 本机IP :有线网络的IP,不是无线网的IP (232支持同步波特率,但有人软件里选项需要同时勾选)
端口1为485设置,波特率19200 校验、数据、停止N 8 2与PLC485串口设置一致,串口流设置RS 485 模块端口26(默认)远程端口26 工作方式tcp server 本机IP :有线网络的IP,不是无限网的IP(485通讯不能选同步波特率)
更改设置后点击端口设置,再点击保存。
通过有人软件增加虚拟串口
网络协议:串口服务器作tcp server 电脑作tcp client所以选择tcp client目标IP写串口服务器的IP地址,目标端口的设置与前面232或485的端口设置一致,485通讯是目标端口为26
有人软件需要长开启,不能关闭否则不能通讯,串口号为COM1
组态王设置
在做海为PLC和组态王通讯的时候,经常会发现可以对PLC的位地址进行控制,但是监视的位的状态却回不来,或者就是控制的延时时间很长,往往会等了好几秒才能对PLC进行控制,这是什么原因呢?其实,这个组态王里的数据打包长度有关,我们要设置组态王的收发数据长度,也就是数据打包问题,所以我们解决的方法如下:
1,首先找到组态王的安装目录:本例安装在C盘,进入以下路径
C:\Program Files\kingview\DRIVER
2,在DRIVER里点开查看的下拉菜单,选择列表。
3,这时候找到.ini的后缀名文件。
找到ModbusMaster.ini文件,用记事本打开。
4,打开的原文件如下图:
把里面的数据长度设置为58, 点击文件,选择保存。
之所以设置为58是因为MODBUS和海为PLC通讯的时候每次收发的长度为58,而组态王每次给PLC发送的数据默认为120多个字节,这样会使通讯速度大大降低,而且会造成数据无法正常的读取,所以在遇到上述问题时,可以进行这方面的修改。
打开组态王,双击com1弹出设置串口波特率校验数据位停止位要与前面一致通信方式也要一致(如果用得其他串口,组态王会新建串口如com5 com6,此时需要双击com5重新设置通讯参数)
点击右侧新建选择莫迪康modbus RTU 下的com点击下一步
下一步选择你创建的虚拟串口com1
下一步设置地址与PLC地址一致
其他默认到完成
然后创建数据词典X0 Y0 M0
然后做个画面就可以测试一下
注:如果电脑待机或重启后无法连接请重启有人软件
2.海为PLC通过串口服务器TCP通信
有人虚拟串口软件创建虚拟串口
组态王里面设置