请教一下,200smart和6个传感器进行modbus 485通讯,应该如何设置

CPU ST30加上SB CM01通讯板,用来和6个带modbus 485的传感器进行通讯,程序应该如何编写,是执行MBUS_CTRL后就执行MBUS_MSG吗?6个modbus通讯,MBUS_CTRL是执行一次还是执行6次?主机查询命令如下所示,应该怎么写

图片说明:

请教一下,200smart和6个传感器进行modbus 485通讯,应该如何设置   

最佳答案

1、
6个站设成不同的从站地址(设备地址);
通讯参数必须是一样的,波特率相同、数据位8位、检验方式相同、停止位1位;
通讯线路手拉手连接;
6个站至少要用 6 MBUS_MSG,用下面轮循的方式写程序。
就你如图的主站请求帧只要填写 MBUS_MSG 指令的相应管脚,帧是由CPU自已组织的。
Slave    从站地址:1 
RW       读写请求:0       0 = 读, 1 = 写
Addr     数据地址:40003    图中的00 02H 对应的就是这个地址,
             有些仪表存在上、下偏移现象,这个测试一下,或者有 MODSCAN32 可以对其进行验证。
Count   数据个数:7
DataPtr  数据指针:&VB0,读回的数据放到VB0-VB13 这一连续的区域中
Modbus RTU 主站 (最下面有MODBUS RTU 轮循实例)
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/communication/serial_port/modbus/Master/Master.htm
2、
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/plc347936.html

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

相关推荐

发表回复

登录后才能评论