(经验分享)多串口服务器与1200PLC进行TCP通讯实践
前几天,boss过来跟我说,想在一个方案上使用串口条码。我一看,MB的都超过8条了。也没有那么多串口去接啊,只能另想办法了。
既然要用到串口,那就是去淘宝与串口相关的宝贝吧。
串口服务器,这就是传说中的神器。
我挑选的是卓岚的串口服务器。当然目前市面上还有MOXA,宇泰,有人等品牌。各有各优点吧。
既然已经选定,那就采购下单。
过了几天,快递就到了。我用的型号是 5443A 系列的,支持232,422,485,多功能型的。
到下载资料,手册,还有调试软件:
安装到时,打开ZLVirCom,到设备,全部更改IP 地址和端口号:
端口号上到下,全部为2000,2001,2002,2003,模式都为TCP client模式,这样串口服务器设置完毕。这个时候到我们PLC的里面的编程了,我们采用的是1200系列PLC,我手上的一款是1214c DC /DC/DC。
不多说,上电测试。把PLC 连接moxa交换机,把多串口服务器也连接到moxa交换机(不要图方便使用多串口的Uplink口)。打开博图,组态PLC什么的就不多说了。启用系统和时钟,使用默认M点,不修改,IP地址使用192.168.1.8。在OB1中添加入,并使用其自动生成背景db的DONE等信号:
并组态以下:
上面端口开放是2000。我们这里只测试2000端口,至于其他端口,老铁们可以自己测试
点击PLC_1_Connection_DB,修改如下参数:
然后我们添加全局DB1,并建立以下,取消块优化:
继续新建全局DB6,按下图配置:
在OB中添加以下:
至于为啥参数要这样填,在这里我不讨论,老铁自行去看F1键。再继续添加以下:
下载所有硬件和软件到PLC后,停止PLC,然后再启动PLC 。打开ZLVirCom,点击设备管理,可查询到192.168.1.200,端口2000的串口1已经和PLC建立连接。在串口1接上条码,拿出烟盒,扫描条码,监控stringDB6,即可快速刷新数据,得到当前条码信息。
目前查询手册可以得知,1200PLC 只能使用8个开放式通讯。那么是不是意味着1200PLC只能接入2套4串口服务器呢(由于1个串口独立为一个IP和端口,所以2套就有8个IP和端口了)?
老铁我,可不相信。
于是做测试。
发现在测试中,PLC开了14个服务端口,电脑用一IP,开启14个TCP客户端去连接PLC,竟然发现在PLC资源中显示开放式用户通讯占用的资源为0。
这让我怎么都想不明白。
我一开始以为是同一IP,不同端口,PLC会认不出来。那么我直接用4串口服务器去测试4个不同IP和端口去连接PLC,发现仍然占用的资源都为0。
至此我不禁脑洞大开,是不是意味着,在IP地址允许的数量里面,我们就可以接入允许数量的串口服务器呢?
以上内容转自于:iHM工控服务器