zl程序教程

您现在的位置是:首页 >  后端

当前栏目

python开发mbus程序_关于MBUS MSG指令

Python程序开发 关于 msg 指令 MBus
2023-06-13 09:14:31 时间

在MBUS MSG指令里有一个错误位,我看了手册上说1-8的低位,其中0是无错误,那Q0.0有输出到底是对还是不对,还有Q0.2是不用的意思,它是一直为1的吗?我现在程序测试过程中,发现Q0.1和Q0.2都有输出,不知道是什么错误啊

图片说明: 1,

佳答案

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 号错误 。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/181435.html原文链接:https://javaforall.cn