求S7-200和变频器施耐德ATV31 MODBUS通讯程序

看手册,基本程序写了,但是就是不明白,这个变频器里的modbus地址怎么弄,西门子手册上说是40000—49999 。我看见变频器手册上的地址modbus地址是8601,手册上说modbus地址=40000+(T/2+1) ,这个T是不是就是8601 ,算不出啊。不知道怎么控制启动和停止,难啊。资料找了许多,看不懂,最好有现成的可以参考。

问题补充:
有没有详细的具体的列子

最佳答案

modbus地址
 1 设备地址,假如有很多变频器接入PORT0口,那么每个变频器都有一个地址,modbus通讯帧第一个字节就是地址,即设备地址。
 2 模拟量地址,比如电压地址,电流地址,频率地址等,这个要看变频器的通讯规约。

 
 通常 modbus 地址由 5 位数字组成,包括起始的数据类型代号,以及后面的偏移地址。modbus Master 协议库把标准的 modbus 地址映射为所谓 modbus 功能号,读写从站的数据。modbus Master 协议库支持如下地址:
 00001 – 09999:数字量输出( 线圈) 
 10001 – 19999:数字量输入(触点) 
 30001 – 39999:输入数据寄存器(通常为模拟量输入) 
 40001 – 49999:数据保持寄存器 

 
 如何访问大于 9999 的保持寄存器地址?
 通常 modbus 协议的保持寄存器地址范围在 40001 – 49999 之间。对于多数应用来说已经够了。但有些 modbus 从站把地址映射到保持寄存器区的地址超过 9999 的部分。
 modbus Master 协议库支持超过 9999 的保持寄存器地址。地址范围为 400001 – 465536。只需在调用 MBUS_MSG 子程序时给 Addr 参数赋相应的值即可,如 416768。

 3 如果不明白地址怎么设定,那么不用库,自己写通讯程序。

 4 +(T/2+1) 这个是针对200PLC做modbus从站的情况,和其他设备无关。

提问者对于答案的评价:
还是不清楚啊

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月1日
下一篇 2020年11月1日

相关推荐