modbus 从站把地址映射到保持寄存器区的地址不超过 9999 的部分,PLC保持寄存器地址范围在40001 - 49999 之间。对应的 PLC 地址就是从 40001 开始,转换方式是“协议地址 + 40001 = PLC 地址”;
有些 modbus 从站把地址映射到保持寄存器区的地址超过 9999 的部分。地址范围为400001 - 465536。对应的 PLC 地址就是从 400001 开始,转换方式是“协议地址 + 400001 = PLC 地址”
S7 200 RTU通讯,变频器地址为什么要加40001?
1. 因为S7-200包括多种不同的数据存储地址,比如V区,I区,Q区和AI区,这些地址PLC可以区分开来,而Modbus协议是无法区分的。因此,为了让数据地址通过Modbus协议传输,S7-200自带的通信程序规定,地址+40000表示映射到V区;换句话就是说,开始数字为4的地址表示外部设备同PLC的V区之间进行数据交换。这样,PLC可以确定功能码,生成相应的通信数据帧。
2. 虽然你事先加上了40001,但PLC还是把数据帧里面的地址减去了40001,相当于没变。
3. 从40001-49999有9999个数据地址支持,足够大家使用了。但PLC还是可以支持400001-465536这样更大范围的地址。
4. Modbus是从1开始的地址编码,而PLC和其它设备是从0开始的地址编码,所以我们需要加上40001,而不是40000
楼主最近还看过