场景:一个工控人,他接到一个项目,在微信群里交流起来,AB1769的PLC和西门子1500的PLC进行数据,让我帮他出个方案:
应用难点:通讯协议不同,处于不同IP段,PLC无源程序修改
方案:使用GRM300系列网关,2个网口分别接1769和西门子1500
网关内置了各种PLC协议
PLC无需添加任何代码,简单配置网关即可完成数据交换
GRM331WX 可以采集各种协议的串口和网口设备,并在不同设备之间交换数据。采用打包读写的方式,并具备 定时和阀值判断,可最大限度优化通讯速度,充分利用带宽。
比如需要从 A 设备读取数据,然后写入到 B 设备,方法如下:
1.1:定义配置好 A 设备协议类型,需要读取的数据类型,寄存器地址,并确保 A 设备通讯正常。
1.2:定义配置好 B 设备协议类型,需要写入的数据类型,寄存器地址,并确保 B 设备通讯正常。
1.3:在 GRMDEV 定义数据交换,即可完成数据交换
典型应用举例: 一个网口 NET1 接西门子 1500 PLC,另外一个网口 NET2 接 AB_PLC,需要将 AB_PLC的数据发送到西门子 1500PLC。
2.1. 首先配置一个西门子 1500 PLC 的变量
在 PLC 编程软件里面的设置如下:
a ,设备组态,双击“保护(防护与安全)”进入保护设置画面,把允许从远程伙伴(PLC,HMI…)使用 PUT/GET 通信访问打上勾
b,DB 块设置
如果程序中有 DB 数据块,右击相应的 DB 块,选择“属性”,把优化的快访问前面的勾取消掉。 设置完成请重启 PLC 电源!如果还通讯不上,有时需要重新清空 PLC 程序再下载重启后才能生效。
2.2. 配置 AB PLC的变量
新建变量:寄存器名称与 PLC 的控制器标签里的变量名一致(如下图 real 为名字的变量,变量类型要和 PLC 一致)
2.3. 使用数据交换即可完成
模块协议支持: