modbus地址问题188

最左侧的地址是什么意思?
怎么变成40001这种

图片说明:

modbus地址问题188   

最佳答案

1、最左侧是十六进制表示法。每个数据的最后面的字母“H”是十六进制英文的缩写。
2、要先转换成十进制,最后在最高位加上数字4;
3、转换成十进制的方法:
每位都是有权的,就像十进制中的每一个数字代表的权是这个数字所在位的 10 的几次幂;只不过十六进制变成了这个数字所在位的 16 的几次幂。
比如:FC79H 换算成10进制:
第0位: 9 * 16^0 = 9
第1位: 7 * 16^1 =7*16^1= 112
第2位: C * 16^2= 12* 16^2=3072
第3位: F * 16^3 =15* 16^3=61440
结果就是:9 * 16^0 + 7 * 16^1 + 12 * 16^2 + 15 * 16^3 = 64633
最后在最高位加上数字4,寄存器地址就是 464633
也可以用WINDOS 自带的计算器将十六进制转换成十进制。
3.S7-200 SMART CPU作为 Modbus RTU 主站如何访问 Modbus 地址范围大于49999 的保持寄存器?
5、通常 Modbus 协议的保持寄存器范围在 40001 到 49999 之间,这个范围对于多数应用来说已经足够了,但有些 Modbus 从站保持寄存器区的地址会超出该范围。Modbus RTU 主站协议库支持保持寄存器地址范围为(40001 到 49999) 或者(400001 到 465536)。如果 Modbus 从站地址范围为 400001 – 465536,只需在调用 MBUS_MSG 子程序时给 Addr 参数赋相应的值即可,如 416768。 
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/communication/serial_port/modbus/FAQ.htm
4、其它的通讯资料参考
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/SmartSMS/020.html

提问者对于答案的评价:
谢谢,但是跟楼下说的,要加400001,而不是400000,我就说怎么没读到

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc291563.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月31日 上午12:50
下一篇 2020年10月31日 上午12:50

相关推荐