ABPLC和西门子PLC之间通过网关实现协议转换 |
发布时间:2024-02-20
|
一个工程师接到一个项目,中间AB1769的PLC和西门子1500的PLC需要实现通讯,两个PLC的通讯协议不同,又是不同IP段。自己写通讯协议,需要自己编程和组织通讯,难度大,调试耗费时间长,因此选用协议网关转换实现比较简单。 巨控的GRM300协议网关性价比及较高,本文就用巨控GRM300协议网关为例,讲解如何实现两个不同品牌型号PLC之间协议转换通讯的,两个PLC都无需写通讯程序块,2个网口分别接1769和西门子1500,GRM300网关内置了各种PLC协议,简单配置网关即可完成数据交换 GRM300内置多种的串口和网口的工业设备通讯协议,并通过简单设置数据交换赋值,就能实现不同设备的数据交互。通过网关变量数据交换赋值功能,就能快速实现协议转换,PLC,设备,仪表都无需编写通讯程序。 从 A 设备读取数据,然后写入到 B 设备,方法如下: 1.1:定义配置好 A 设备协议类型,需要读取的数据类型,寄存器地址,并确保 A 设备通讯正常。 1.2:定义配置好 B 设备协议类型,需要写入的数据类型,寄存器地址,并确保 B 设备通讯正常。 1.3:在GRM300的配置软件 GRMDEV 定义数据交换,即可完成数据交换 典型应用举例:一个网口 LAN接西门子 1500 PLC,另外一个网口WAN 接 AB_PLC,需要将 AB_PLC的数据发送到西门子 1500PLC。 WAN和LAN是隔离独立的,都有自己的IP。 2.1. 首先配置一个和西门子 1500 PLC 关联的变量。 PLC 里面需要做的设置如下:勾选:允许从远程伙伴(PLC,HMI…)使用 PUT/GET 通信访问,DB 块设置 把优化的快访问前面的勾取消掉,巨控GRM300是通过S7协议读写DB绝对地址。 设置完成后下载程序,并重启 PLC 电源!如果还通讯不上,有时需要重新清空 PLC 程序再下载重启后才能生效。 2.2用GRMDEV5软件建立一个变量,通过选择I/O设备,和设置映射PLC的寄存器地址,实现变量名和寄存器的一对一绑定。 2.3.再 配置 AB PLC的变量 新建一个和AB PLC关联的变量:寄存器名称与AN PLC 的控制器标签里的变量名一致,最好是直接拷贝过来(如下图 real 为名字的变量,变量类型要和 PLC 一致) 2.4. 通过GRM300内置的等式赋值脚本功能,就能实现数据交互,完成协议转换。 |