当前位置: 主页 > PLC控制

S7200PLC用MODBUS库做RTU通讯的问题

用200PLCMODBUS库和一个电能表通讯,读电能表上的电压和电流等,MODBUS的ADDR参数是用功能码3还是用4了?????电能表上实例用的是功能码3.。但看书上是用的4,还有看别人写的200与变频器通讯程序,读功能用的是4,懂不到了???图1是电能表给的实例,图2和3是书上写的。非常感谢了……。和电能表是该用几了??

问题补充:
03和04都是读功能

图片说明:

S7200PLC用MODBUS库做RTU通讯的问题S7200PLC用MODBUS库做RTU通讯的问题 S7200PLC用MODBUS库做RTU通讯的问题S7200PLC用MODBUS库做RTU通讯的问题 392e2dec8adb119b881d691ccCE42c4b2acdb6a57ae268a80a54BF965686a8FC

最佳答案

你说的这2个不是一个概念,03是功能码是决定你是读寄存器还是写寄存器,比如03是读多个字,16是写多个字。40001是地址,一般地址有2种写法,如果仪表说明书里写的是40001,那你在MBUS_MSG的Addr管脚直接填40001,如果仪表说明书写的是0010,那么你你在MBUS_MSG的Addr管脚直接填40011,地址要加40001,4000+表示保持寄存器。简单的理解是一个是你的操作,一个是操作的地址。
纯手打,望采纳!

图片说明:

S7200PLC用MODBUS库做RTU通讯的问题S7200PLC用MODBUS库做RTU通讯的问题

提问者对于答案的评价:
现在理解到了

专家置评

00001–09999数字量输出读功能1写功能5,功能15:
10001–19999数字量输入读功能2
30001–39999输入寄存器读功能4
40001–49999保持寄存器读功能3写功能6,功能16

  • 关注微信

猜你喜欢

微信公众号