(一)Qt MODBUS TCP应用学习:通信过程

1.请求生成
收到需求后,客户端(client或master)生成MODBUS请求,并发到TCP管理。
MODBUS请求ADU编码,包括MBAP报文头和MODBUS请求。
MBAP报文头包括事务元标识符(在应用中会由00 00逐渐递增,计数)、协议标识符(00 00)、长度(2字节)、单元标识符(1字节,设备编号/Server_ID)。
MODBUS请求包括功能码(1字节)、起始地址(2字节)、寄存器数量(2字节)。

2.响应生成
肯定的MODBUS响应:响应功能码=请求功能码。
其他的事务元标识符、协议标识符、单元标识符同样采取复制的形式进行响应。

例如:
客户端发出:00 00 00 00 00 06 01 03 00 20 00 08
服务器回应:00 00 00 00 00 13 01 03 10 FC 18 FC 18 FC 18 FC 18 FC 18 FC 18 FC 18 FC 18
此处是对设备01进行读保持寄存器数值的请求(功能码03),从寄存器32(00 20)开始读取连续的8(00 08)个寄存器存储的数值。
响应中的10是指字节数,此处数据共计16字节。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值