Modbus TCP协议写数据问题

我按照MODbus tcp协议,成功向%ignore_a_1%的VB0和 VB1写入了 11 22。我想写入更长的数据,比如 比如vb0-vb3 写入 11 22 33 44,甚至更长。我模仿例子去修改发送内容,可是一直不成功。大佬们,应该怎么修改

图片说明:

Modbus TCP协议写数据问题    Modbus TCP协议写数据问题   

最佳答案

功能码06是写入单字!
写入多字要用16!
参考资料:http://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/communication/Ethernet/MODBUS_TCP/modbus_tcp_smart_client.htm

图片说明:

Modbus TCP协议写数据问题  

提问者对于答案的评价:
[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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日 下午6:20
下一篇 2020年10月30日 下午6:20

相关推荐

发表回复

登录后才能评论