在S7-200与变频器用modbus通讯时,返回的出错字符,是不是可以在SM2里读取的
最佳答案
不是的。
1 如果你用的是SIEMENS提供的主站库,那么错误信息在ERROR里查看。
MBUS-CTRL的ERROR值:
0= 无错误
1= 校验选择非法
2= 波特率选择非法
3= 模式选择非法
MBUS-MSG的ERROR值:
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 如果你用的不是SIEMENS提供的库,用RCV接收数据,那么相关接收信息参看SMB86
3 如果你用的不是SIEMENS提供的库,用字符中断方式接收数据,那么相关接收信息参看SMB3
SMB3用于自由口模式,包含在接收字符中检测到校验错误时设置的校验错误位。当检测到校验错误时,打开SM3.0。在程序接受和读取存储在SMB2中的信息字符数值之前,使用该位测试自由口信息字符是否有传输错误。
提问者对于答案的评价:
谢谢您的回答,让我学到了好多知识。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc351209.html