在MBUS MSG指令里有一个错误位,我看了手册上说1-8的低位,其中0是无错误,那Q0.0有输出到底是对还是不对,还有Q0.2是不用的意思,它是一直为1的吗?我现在程序测试过程中,发现Q0.1和Q0.2都有输出,不知道是什么错误啊
图片说明:
最佳答案
1、有关MBUS_MSG 指令错误代码:
Error 错误代码: 只有在 Done 位为1时,错误代码才有效
0 = 无错误
1 = 响应校验错误
2 = 未用
3 = 接收超时(从站无响应)
4 = 请求参数错误(slave address, modbus address, count, RW)
5 = modbus/自由口未使能
6 = modbus正在忙于其它请求
7 = 响应错误(响应不是请求的操作)
8 = 响应CRC校验和错误
101 = 从站不支持请求的功能
102 = 从站不支持数据地址
103 = 从站不支持此种数据类型
104 = 从站设备故障
105 = 从站接受了信息,但是响应被延迟
106 = 从站忙,拒绝了该信息
107 = 从站拒绝了信息
108 = 从站存储器奇偶错误
2、程序中的QB0输出的就是上述Error 错误代码:
、其中0是无错误,那Q0.0与其他位都没有输出,即QB0为0(二进制0000 0000)。
、Q0.2是一直为1,其他位为0,即为4(二进制0000 0100),表示 请求参数错误。
、Q0.1和Q0.2都有输出,即为6(二进制0000 0110),表示 modbus正在忙于其它请求 。
3、常见的错误:
如果多个 MBUS_MSG 指令同时使能(激活)会造成 6 号错误,一次只能激活一条MBUS_MSG指令 ;
从站 delay 参数设的时间过长会造成主站 3 号错误 ;
从站掉电或不运行,网络故障都会造成主站 3 号错误 。
提问者对于答案的评价:
谢谢
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc221304.html