前几天,boss过来跟我说,想在一个方案上使用串口条码枪。我一看,MB的都超过8条枪了。也没有那么多串口去接啊,只能另想办法了。

既然要用到串口,那就是去淘宝找找与串口想关的宝贝吧。

串口服务器,这就是传说中的神器。

我挑选的是卓岚的串口服务器。当然目前市面上还有MOXA,宇泰,有人等品牌。各有各优点吧。

既然已经选定,那就采购下单。

过了几天,快递就到了。我用的型号是 5443A 系列的,支持232,422,485,多功能型的。

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(1)

到官网下载资料,手册,还有调试软件:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(2)

安装到时,打开ZLVirCom,找到设备,全部更改IP 地址和端口号:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(3)

端口号上到下,全部为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等信号:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(4)

并组态以下:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(5)

上面端口开放是2000。我们这里只测试2000端口,至于其他端口,老铁们可以自己测试

点击PLC_1_Connection_DB,修改如下参数:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(6)

然后我们添加全局DB1,并建立以下,取消块优化:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(7)

继续新建全局DB6,按下图配置:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(8)

在OB中添加以下:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(9)

至于为啥参数要这样填,在这里我不讨论,老铁自行去看F1键。再继续添加以下:

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(10)

下载所有硬件和软件到PLC后,停止PLC,然后再启动PLC 。打开ZLVirCom,点击设备管理,可查询到192.168.1.200,端口2000的串口1已经和PLC建立连接。在串口1接上条码枪,拿出烟盒,扫描条码,监控stringDB6,即可快速刷新数据,得到当前条码信息。

目前查询手册可以得知,1200PLC 只能使用8个开放式通讯。那么是不是意味着1200PLC只能接入2套4串口服务器呢(由于1个串口独立为一个IP和端口,所以2套就有8个IP和端口了)?

串口服务器和plc的区别(多串口服务器与1200PLC进行TCP通讯实践)(11)

老铁我,可不相信。

于是做测试。

发现在测试中,PLC开了14个服务端口,电脑用一IP,开启14个TCP客户端去连接PLC,竟然发现在PLC资源中显示开放式用户通讯占用的资源为0。

这让我怎么都想不明白。

我一开始以为是同一IP,不同端口,PLC会认不出来。那么我直接用4串口服务器去测试4个不同IP和端口去连接PLC,发现仍然占用的资源都为0。

至此我不禁脑洞大开,是不是意味着,在IP地址允许的数量里面,我们就可以接入允许数量的串口服务器呢?

希望有老铁知道为啥不占用资源的,跟帖告知一下!

供稿:陈步飞扬(QQ:173144128) 2020年3月30日


说明:

1、本文是实践经验,非严格论文,与相关产品和理论可能不完全相符。

2、原创不易,欢迎转发,让更多朋友看到(引用请注明出处!)

3、本号坚持工控方面的原创(已有大量文章),欢迎关注。

,