前几天,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地址允许的数量里面,我们就可以接入允许数量的串口服务器呢?
希望有老铁知道为啥不占用资源的,跟帖告知一下