美文网首页
ModbusTcp Android

ModbusTcp Android

作者: 晓晓桑 | 来源:发表于2019-11-29 14:20 被阅读0次

Modbus-TCP

通信报文
image.png

请求报文:
00 00 00 00 00 06 01 03 00 01 00 03
前6个字节为头字节。
00 00 00 00 00 06:
00 00: 两个字节是Client发出的检验信息,Sever端只是需要将这两个字节的内容copy以后再放到response的报文的相应位子就可以了
00 00:第三个第四个:两个字节是表示tcp/ip 的协议的modbus的协议;
00 06:两个字节表示的是header handle后面还有多长的字节,即表示的是该字节以后的字节长度(lengch),可以看到在00 06后面还有 “01 03 00 01 00 03”六个字节,所以这两个字节表示的就是6

PDU:
01 03 00 01 00 03
01: 一个字节表示slave address;
03:Fuction code ;
00 01:表示Client request的寄存器地址;
00 03: 表示request 寄存器的长度;(寄存器个数)

返回报文:
00 00 00 00 00 09 01 03 06 00 00 00 00 00 00
头字节(前6个字节为):
00 00 00 00 00 09:
00 00:前两位为Server返回的检验码,copy from Client request。
其它的:表示与客户端的表示相同。

PDU:
01 03 06 00 00 00 00 00 00
01:是Slave address,从地址数;
03: 是Function code
06:表示了回复给Client request的需要读的寄存器的值的个数,这里因为主地址向从地址读了3个寄存器即3个16位的寄存器(个字)所以这里为3个字节,因为3个字为6个字节,而06这个字节表示的就是从地址要回复给主地址的寄存器字节长度。
00 00 00 00 00 00:表示了6个字节的值。

modbus功能码 Function code

https://wenku.baidu.com/view/5b6f902fb4daa58da0114a48.html

工具:Modbus4j

相关文章

网友评论

      本文标题:ModbusTcp Android

      本文链接:https://www.haomeiwen.com/subject/yhqgwctx.html