s7 200 smart中的modbus rtu通讯

s7 200 smart做为主站,从站为一个环保数采仪,从站地址为1:9600:8:无:1
1、主站读取从站的三个模拟量:400001(float),400083(int),400085(int)
请问主站如何设置指针地址以及寄存器地址,需要做轮询吗,如何做。(多从站需要轮询,这种单从站的如何读跨度较大地址的数值)
2、主从建立通讯后,从站上接入的设备会掉线(设备均采用rs232接入到了从站设备上)

最佳答案

1、400001-400085 这一片连续区域读,仪表允不允许读,这个要看说明书;
     即使允许读,数据量大,有效数占比很少,无用数多,会增加通讯负载;
     所以建议分次读,用多条指令,轮循的方法。
     如 400083-400085 都允许读,则用二条主站读指令
2、同一个从站,从站地址为1,基于上面
第一条 MBUS_MSG 主要管脚
Slave    1   从站地址
RW       0   读写请求:0 = 读, 1 = 写
Addr     400001   读写从站的保持寄存器起始地址
Coun t  2   数据个数,这个数据类型是浮点数,点2 个字
DataPtr  &VB0, 则VD0为读来的从站 400001 保持寄存器数据
第二条 MBUS_MSG 主要管脚    
Slave    1   从站地址
RW       0   读写请求:0 = 读, 1 = 写
Addr     400083   读写从站的保持寄存器起始地址
Coun t  3   数据个数,400083-40085 是3个字
DataPtr  &VB4, 则VW4为读来的从站 400083  保持寄存器数据
                               VW6为读来的从站 400084  保持寄存器数据
                               VW8为读来的从站 400085  保持寄存器数据
3、如果要改成三条,参考上面给出的方法,也是可以的。
4、参考资料
Modbus RTU 主站 (最下面有MODBUS RTU 轮循实例)
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/communication/serial_port/modbus/Master/Master.htm
S7-200 SMART Modbus RTU通信常见问题
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/SmartSMS/020.html

提问者对于答案的评价:
感谢支持

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc343885.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月4日 下午10:11
下一篇 2021年7月4日 下午10:11

相关推荐

发表回复

登录后才能评论