CPU 224XP和modbus RTU传感器通讯时,MBUS_MSG 错误代码为3(接收超时:在"超时"时间内,没有来自从站的应答。可能有以下一些原因:与从站的电气连接有问题、主设备和从站设置为不同的波特率/奇偶校验设置,以及错误的从站地址)。传感器的功能码是04,读数据的开始地址是0000H,那我MBUS_MSG的ADDR是不是该填30001??
问题补充:
感谢大家的回答,还没连上现在,请问如何查看cpu发出的码是什么?
最佳答案
您好
RD
01 读取单个/多个线圈(DO)状态
02 读取单个/多个触点(DI)状态
03 读取单个/多个保存寄存器
04 读取单个/多个输入寄存器(AI)状态
WR
05 写单个线圈(DO)
06 写单个保存寄存器
15 写多个线圈(DO)
16 写多个保存寄存器
以上是modbus RTU的功能码,如果真的是04,则200plc做主站,应该使用30001对应对方的0000H
200做主站,发出的报文格式如下
01 04 00 00 00 05 e0 29
第一个字节是从站站地址
04为功能码
00 00 为从站存储器地址
00 05 意思是读5个字
e0 29 是CRC校验,这个知道就行。想了解,可以百度一下。
提问者对于答案的评价:
谢谢了。我的问题还没解决哦,不知道是不是硬件接线的问题
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc261452.html