本文是通过IGT-DSER智能网关读写AB罗克韦尔Compact、Control系列PLC的标签数据缓存并转为Modbus从站协议,与上位机通讯的案例。
打开智能网关的参数软件(在附件中),通过'功能'->'数据转发与平台对接',再选择'数据转发与缓存’,进入以下页面设置PLC寄存器地址和Modbus数据地址:
上图中序号001是PLC内名称为‘TREAL’的REAL类型的控制器标签,对应到Modbus地址的HR0(400001);
序号002是PLC内程序名称为‘MainProgram’的DINT类型的程序标签,标签名称为‘tag3’,对应到Modbus地址的HR2(400003);
序号003是名称为‘ARR_INT_50’的INT类型的控制器标签数组,取该数组中的第2个INT,对应到Modbus地址的HR4(400005);
序号004是PLC内名称为‘TAG1’的INT类型的控制器标签,对应到Modbus地址的HR5(400006);
智能网关上的网口与串口参数设置如下图:
左边页面的网络参数上位机通讯的端口2对应为ModbusTCP协议,其‘对应输出接口’选择为‘无’,表示对应到网关内部的数据地址,即采集缓存的数据;
右边的串口参数中‘本站地址’设置为0-255之间的值(本例中为1),分配智能网关自身的站号,同时寄存器对应到网关内部采集缓存的寄存器地址;
参数设置完成后下载重启后,即可通过上位机主站软件进行测试,以下是通过Modbus Poll的软件测试设置和测试的截图:
西门子、三菱、欧姆龙等PLC控制器都可以实现免编程的Modbus协议转换,相关资料在附件中。