S7-200和巡检仪如何MODBUS通讯

巡检仪选的是(江苏杰克:XMD-1232-4-T),仪表厂家说支持modbus RTU协议,我想用S7-200(CPU216)端口0作主站,采用modbus通讯,把仪表里面的数字读到PLC里面,弄了N久,终是无结果:程序如下:
网络1:
LDN    T251
TON    T250, 10
网络2:
LD     T250
TOF    T251, 10
网络3:
LD     SM0.0
=      L60.0
LD     SM0.0
=      L63.7
LD     L60.0
CALL   MBUS_CTRL:SBR1, L63.7, 1200, 0, 1000, M0.0, MB1
网络4:
LD     T251
=      L60.0
LD     T251
EU
=      L63.7
LD     L60.0
CALL   MBUS_MSG:SBR2, L63.7, 5, 0, 40040, 64, &VB100, M0.2, MB1

巡检仪资料:
32路巡检仪通讯协议modbus RTU
   本协议适用于上位机通过串行接口读/写仪器仪表的参数数据。
1. 接口标准:
串行接口可选RS―232 (三线制) 、RS―485(二线制)等。
2. 通信控制方式:
采用主从控制方式,上位机为主站,仪表为从站。主站对从站采用异步半双工数据通信,最多可连接32台仪表。

3. 通信数据格式:
采用10位无奇偶校验帧格式,1位起始位,8位字长,1位停止位,格式详见下图:
起  始    DATA.0 .1 .2  .3 .4 .5 .6 .7 停   止   位

4. 通信波特率:
600bps ~ 9600bps 可选。
5.通讯参数与名称
参数地址 参数名称 参   数   含   义 数据类型 属性
0040H PV01 第01通道测量值 整型(双字节) 只读
0041H PV02 第02通道测量值 整型(双字节) 只读
0042H PV03 第03通道测量值 整型(双字节) 只读
0043H PV04 第04通道测量值 整型(双字节) 只读
0044H PV05 第05通道测量值 整型(双字节) 只读
0045H PV06 第06通道测量值 整型(双字节) 只读
0046H PV07 第07通道测量值 整型(双字节) 只读
0047H PV08 第08通道测量值 整型(双字节) 只读
0048H PV09 第09通道测量值 整型(双字节) 只读
0049H PV10 第10通道测量值 整型(双字节) 只读
004AH PV11 第11通道测量值 整型(双字节) 只读
004BH PV12 第12通道测量值 整型(双字节) 只读
004CH PV13 第13通道测量值 整型(双字节) 只读
004DH PV14 第14通道测量值 整型(双字节) 只读
004EH PV15 第15通道测量值 整型(双字节) 只读
004FH PV16 第16通道测量值 整型(双字节) 只读
0050H PV17 第17通道测量值 整型(双字节) 只读
0051H PV18 第18通道测量值 整型(双字节) 只读
0052H PV19 第19通道测量值 整型(双字节) 只读
0053H PV20 第20通道测量值 整型(双字节) 只读
0054H PV21 第21通道测量值 整型(双字节) 只读
0055H PV22 第22通道测量值 整型(双字节) 只读
0056H PV23 第23通道测量值 整型(双字节) 只读
0057H PV24 第24通道测量值 整型(双字节) 只读
0058H PV25 第25通道测量值 整型(双字节) 只读
0059H PV26 第26通道测量值 整型(双字节) 只读
005AH PV27 第27通道测量值 整型(双字节) 只读
005BH PV28 第28通道测量值 整型(双字节) 只读
005CH PV29 第29通道测量值 整型(双字节) 只读
005DH PV30 第30通道测量值 整型(双字节) 只读
005EH PV31 第31通道测量值 整型(双字节) 只读
005FH PV32 第32通道测量值 整型(双字节) 只读


还望各位指点指点,有哪位有做过这方面的,多多赐教,我邮箱:yuxueming2007@163.com.

最佳答案

LZ的数据区地址不对,数据区首地址为0040H,对应的modbus地址应该为40064,不是40040

其次,采用串口调试工具软件连接到端口上测试一下PLC的请求和巡检仪的响应是否正确

modbus读多个寄存器请求格式:
子站地址(1byte)、功能码(1byte)、数据地址(2byte)、数据长度(2byte)、CRC校验(2byte)

读响应格式
子站地址(1byte)、功能码(1byte)、数据长度(1byte)、数据(数据长度)、CRC校验(2byte)。 

如果还有问题,可以再发上来。

提问者对于答案的评价:
谢谢,也感谢其他几位。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日 下午2:29
下一篇 2020年11月1日 下午2:29

相关推荐