请教1200MODBUS地址转换及串口助手使用问题

请教各位老师:
1、用1200作从站,使用MODSCAN测试40001中数值为16#0015,但是用串口助手读40001的话要发代码010300000001840A。我想问下PLC中40001地址是如何对应到串口助手中0000地址的?这两个地址是转换的?
2、1200中MB_SLAVE_DB参数MB_HOLD_REG输入为p#DB1.DBX0.0 WORD 20。我用串口助手发01030020000185C0,PLC回复01 83 02 C0 F1。我想请教个PLC回复的代码是什么意思?

最佳答案

1、如果MB_SLAVE_DB参数MB_HOLD_REG输入为p#DB1.DBX0.0 WORD 20,那么串口助手的40001地址对应DB1.DBW0, 而40020对应的是DB1.DBW19, 帮助说明见图1

2、见图2的说明,发送的数据01030020000185C0 顺序看意义如下
        01     1200的站号
        03     功能码--读取字
        00 20  从第20个字读取,也就是你例子中的 DB1.DBW20开始读取(你例子中只到DBW19)
        00 01   连续读取1个字
       85 C0   发送数据(以上6个字节的CRC校验码)

而PLC回复的 01 83 02 C0 F1意义如下
       01      1200的站号
       83      读取故障
       02      故障代码(数据地址错误或地址超出 MB_HOLD_REG 的有效范围)
       C0 F1   以上三个字节的CRC校验码

图片说明:

请教1200MODBUS地址转换及串口助手使用问题  请教1200MODBUS地址转换及串口助手使用问题  

提问者对于答案的评价:
谢谢回答,回答很详细。
我想问下你图2的截图是哪本手册里的?

专家置评

已阅,最佳答案正确。

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年11月1日
下一篇 2017年11月1日

相关推荐