smart 200 modbus 读取仪表数据,仪表为从站,怎么做?寄存器地址从2425开始,具体可看图片
图片说明:
zuijia答案
看了你的图表。
如果这个仪表支持的通讯格式是modubs rtu的,则可以调用西门子现成的库文件;如果不支持modubsrtu的只能自己编程,即编辑自由口通讯格式。
通讯数据寄存器格式是40001的规约,即读取的A相电流是从40025开始的4个字节的数据。其中,图表R表示只读,W/R表示允许读和写。
控制要求
通过MODBUS通信的方式实现两台西门子S7-200 SMART PLC的主从站通信:
主站的PLC的I0.0~I0.7控制从站PLC的Q0.0~Q0.7
从站的I0.0~I0.7控制主站的Q0.0~Q0.7
读取从站AIW16所采集到的数值读到主站的VW100中
把主站的MW10~MW16的数据写给从站的VW100~VW106中。
主站程序参考如下
从站程序
如果只有一台PLC时,可以只编写主站程序,使用MODBUS调试软件,使用从站调试软件Modsim32,前提是需要有USB转485的接口工具,具体操作如下:
1
确认端口
插入USB转485接口后,点击桌面“此电脑”,右键选择“管理”,点击设备管理器中的端口。该示例端口号为COM3
2
打开从站调试软件Modsim32
选择连接设置→连接→选择实际的端口,再选择通信协议中的波特率、校验位等;如下图所示。
3、创建通信文件
点击文件→新建创建通信程序
主站的PLC的I0.0~I0.7控制从站PLC的Q0.0~Q0.7
从站的I0.0~I0.7控制主站的Q0.0~Q0.7
MODBUS地址选择02,双击对应的地址,选择开。如下图所示。
读取从站AIW16所采集到的数值读到主站的VW100中
把主站的MW10~MW16的数据写给从站的VW100~VW106中。
以上是通过2台PLC之间的通信程序编写以及如果使用调试助手软件进行模拟仿真验证程序的分享。