Modbus TCP指令格式说明

这个是一条正确的发送指令指令 : 22 A3   00 00   00 06   FE   05   00 1F   FF 00

说明

22 A3 :为此次通信事务处理标识符,一般每次通信之后将被要求加1以区别不同的通信数据报文,可以理解为id;

00 00 :表示该条指令遵循ModbusTCP协议;

00 06  :表示后面数据的长度,可以自己数一下是否是6个Bit

FE : 设备地址,这个可以用于局域网里面的具体的地址,如果目标机器有固定ip,这个就不起作用,直接上写成 00;

05 :功能码,这个可以参考:http://blog.csdn.net/m0_37549050/article/details/71794192  这个是线圈,

00 1f : 操作 线圈的位置;

FF 00 :开启线圈


查询指令和返回结果
指令:0000 0000 0006 fe 01 0000 0004

最后面4个Bit的意思是:0000 表示从第0个线圈开始;0004表示读取四个

结果:0000 0000 0004 fe 01 0100

0000 ;是通信事务处理标识符

0000; 是协议标识,标识用的是modbustcp

0004;标识后面有4Bit数据 fe是设备地址

01:表示的功能码

0100:表示结果,这个表示第0,1,3位置的线圈是关闭的,第2位置的是开着的。

如果想了解更多的,可以参考《基于Modbus协议的工业自动化网络规范 第1部分:Modbus应用协议》;

http://download.csdn.net/detail/m0_37549050/9841423

如果你没有积分,请联系本人,免费发邮箱。


你可能感兴趣的:(物联网)