西门子200smart MODBUS TCP 通信返回83 02错误

错误码 02, 非法数据地址。
西门子200smart MODBUS TCP 通信返回83 02错误

打算从VW100开始读6个数值

西门子200smart MODBUS TCP 通信返回83 02错误
西门子200smart MODBUS TCP 通信返回83 02错误
西门子200smart MODBUS TCP 通信返回83 02错误

使用modbus tcp软件发命令

西门子200smart MODBUS TCP 通信返回83 02错误
也可以用手册里的modscan64(需注册)
这里的错误是,想当然的以为,读VW100的值,modbus命令里也要用100(0x64)。
错误也很符合故障码02的描述。
200smart里,数据寄存器最大100个,又从第100个读6个或者1个数据,数据地址肯定错了。
发:00 01 00 00 00 06 ff 03 00 64 00 01
回:00 01 00 00 00 03 ff 83 02

实际上,MBUS_SERVER
西门子200smart MODBUS TCP 通信返回83 02错误
通讯时,数据地址0,对应着VW100,即40001地址。
因此读VW100-105,则如下命令:
发:00 01 00 00 00 06 ff 03 00 00 00 06
回:00 01 00 00 00 0f ff 03 0c 06 46 0c 92 12 db 19 24 1f 6d 25 b6
西门子200smart MODBUS TCP 通信返回83 02错误

参考:
[1]: http://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/smartsms/077.html
[2]: http://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/communication/Ethernet/MODBUS_TCP/modbus_tcp_smart_server.htm

上一篇:20分钟内通关vimtutor Linux0306


下一篇:文艺平衡树【模板】【Splay】