本示例介绍远创智控mpi-eth-yc01plus(以下简称 eth-yc01)的 modbustcp 客户机功能,以西门子 s7-300(cpu315-2dp)与三菱 fx5u 交换数据为例。本数据交换采用 modbustcp 协议实现,其他支持 modbustcp从站协议的plc(如施耐德 plc、西门子plc 等),均可实现该数据交换,步骤类似不再重复介绍。对于支持 modbustcp 从站协议的仪表,s7-300 可直接通过远创智控mpi-eth-yc01plus以太网模块进行仪表的数据采集。如下图所示:
远创智控mpi-eth-yc01plus的 db9 公口(x1)连接 s7-300 的 mpi/dp 口,fx5u 自带以太网口与 eth-yc01 的以太网口通过交换机连接,远创智控mpi-eth-yc01plus通过 netdevice 工具配置交换命令,实现实时高效的 s7-300 与fx5u 之间的数据交换。
该功能基于 eth-yc01-s7300plus(固件版本 0.1.5.2 及以上)的 modbustcp 主站功能实现,通过device(软件版本 v1023 及以上)进行主站命令配置,无须 plc 编程,提高了应用开发的速度和便捷性。
1.1 配置 fx5u
1.1.1、打开gx work3,新建项目,以太网配置(内置以太网口)中,配置“modbus/tcp 连接设备”。
1.1.2、编辑 plc 软元件分配,按下表配置所示,d0 映射的modbus 地址为 40001(holdingregister 的 0 地址);
1.2配置远创智控mpi-eth-yc01plus以太网模块数据交换命令
1.2.1打开netdevice,搜索到chnet-s7300mpd 后,选择【修改设备参数】 ;
1.2.2、新建客户机
【1】 点击数据交换,右键创建新的客户机 0;
【2】 选择 modbustcp 协议,用于连接远端的 modbustcp 从站设备,此例中为 fx5u 网口,该网口通过上一章的配置,已经支持 modbustcp 服务器功能,且 plc 的数据和 modbus 地址映射关系也已配置;
【3】 远程服务器的 ip 地址为 fx5u 的 ip 地址,这里设置为 192.168.1.130;远程服务器的通讯端口号,默认为 502;连接超时时间默认为 10s;
【4】 点击确认,创建客户机。
1.2.3、在客户机中配置数据交换命令
【1】 点击新建命令(s7-300 的 db1.dbw100 读取 fx5u 的d0)
【2】 选择[远程→本地],传输 1 个字;传输超时设置层 2s;
【3】 本地站点(s7-300)设置 eth-yc01 所在总线的 plc 的站地址,数据区域选择 db 块,db 号为1,字节偏移为 100,位偏移忽略;
【4】 远程站点(fx5u)的 d0 由上一章映射表可知被映射成 holdingregister 的 0 地址;故数据区域选择 holdingregsiter,偏移地址填 0,站点地址是 modbustcp 协议中的单元号,这边由于 fx5u 不是网关,故可忽略;
【5】 点击“检查”按钮可进行规则检查,点击“确认”按钮即可生成命令。
1.2.4、客户机监视
点击客户机监视按钮,【错误信息】为无错误,且【正确】有数据跳动,说明通信成功。
1.3 验证数据交换
1.3.1、打开 gx work3 变量监视表,对 d0 进行数据修改为bc12h;
1.3.2、打开 simatic manager 变量表,对 db1.dbw100 进行数据监视,值为 bc12h;
注:远创智控eth-yc01-s7300 plus 直通型,扩展的九针母口,支持 mpi/dp 通讯功能,可以连接触摸屏和西门子主站。
远创智控eth-yc01-s7300 plus 桥接型,扩展的九针母口,支持 modbusrtu 的主从站功能,相当于西门子以太网模块cp343+西门子 modbus 主从模块 cp341 的功能组合。两个型号的模块,以太网网口的功能*一致。