S7-200的modbus主站指令的地址码是5位数,例如40001,但是有的设备,例如日本松下的FP-X的modbus的保持寄存器码是6位数,例如432765,请问怎样解决这个问题?
最佳答案
个人感觉当主站库的地址很大的时候,会产生错误4,但 《西门子 S7-200 · LOGO! · SITOP 参考》 里有这样一段话:
?如何访问大于 9999 的保持寄存器地址?
通常 modbus 协议的保持寄存器地址范围在 40001 - 49999 之间。对于多数应用来说已经够了。但有些 modbus 从站把地址映射到保持寄存器区的地址超过 9999 的部分。
modbus Master 协议库支持超过 9999 的保持寄存器地址。地址范围为 400001 - 465536。只需在调用 MBUS_MSG 子程序时给 Addr 参数赋相应的值即可,如 416768。
!Modubs Master 扩展地址模式仅支持保持寄存器区,不支持其他地址类型。
所以我认为主站库的版本更新了,所以楼主在使用的时候,要用最新版本的主站库。
提问者对于答案的评价:
感谢您的提醒,我会特别注意的
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc354563.html