我按照MODbus tcp协议,成功向%ignore_a_1%的VB0和 VB1写入了 11 22。我想写入更长的数据,比如 比如vb0-vb3 写入 11 22 33 44,甚至更长。我模仿例子去修改发送内容,可是一直不成功。大佬们,应该怎么修改
图片说明:
最佳答案
功能码06是写入单字!
写入多字要用16!
参考资料:http://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/communication/Ethernet/MODBUS_TCP/modbus_tcp_smart_client.htm
图片说明:
提问者对于答案的评价:
[2020-06-11 14:21:22.144]# SEND HEX>
00 00 00 00 00 08 01 16 00 00 11 22 33 44
[2020-06-11 14:21:22.152]# RECV HEX>
00 00 00 00 00 03 01 96 01
[2020-06-11 14:21:39.611]# SEND HEX>
00 00 00 00 00 08 01 0F 00 00 11 22 33 44
[2020-06-11 14:21:39.618]# RECV HEX>
00 00 00 00 00 03 01 8F 03
我试了这个命令,返回的还是错误,大佬能不能直接把命令写出来给我,我研究下
最佳答案作者回复:
你发的是16进制,十进制的16转换十六进制是10
把16改成10
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc279863.html