当前位置:网站首页 > 编程语言 > 正文

modbus协议40001(Modbus协议报文解析)



MODBUS协议(功能码及报文解析)


MODBUS协议


Modbus是一种串行通信协议,是Modicon于1979年,为使用可编程逻辑控制器(PLC)而发表的。事实上,它已经成为工业领域通信协议标准,并且现在是工业电子设备之间相,尤其是该命令或其他应答产生通信错误时


12


读取通信事件记录


可是主机检索每台从机的ModBus事务处理通信事件记录。如果某项事务处理完成,记录会给出有关错误


13


编程(184/384 484 584)


可使主机模拟编程器功能修改PC从机逻辑


14


探询(184/384 484 584)


可使主机与正在执行任务的从机通信,定期控询该从机是否已完成其程序操作,仅在含有功能13的报文发送后,本功能码才得发送


15


强置多线圈


强置一串连续逻辑线圈的通断


16


预置多寄存器


把具体的二进制值装入一串连续的保持寄存器


17


报告从机标识


可使主机判断编址从机的类型及该从机运行指示灯的状态


18


(884和MICRO 84)


可使主机模拟编程功能,修改PC状态逻辑


19


重置通信链路


发生非可修改错误后,是从机复位于已知状态,可重置顺序字节


20


读取通用参数(584L)


显示扩展存储器文件中的数据信息


21


写入通用参数(584L)


把通用参数写入扩展存储文件,或修改之


22~64


保留作扩展功能备用


 


65~72


保留以备用户功能所用


留作用户功能的扩展编码


73~119


非法功能


 


120~127


保留


留作内部作用


128~255


保留


用于异常应答


各个功能码对应的数据类型


代码


功能


数据类型


01




02




03



16位整型


04



16位整型


05




06



整16位整型


15




16



整16位整型


MODBUS协议相当复杂,但是常用的命令也就简单的几个,01,02,03,04,05,06,15,16号命令。


各个命令的功能和报文如下:


01 命令 读取线圈状态 MODBUS地址 00001~


MODBUS 请求


功能码


1 BYTE


0X01


起始地址


2 BYTE


0X0000 TO 0XFFFF


读取数量


2 BYTE


1 TO 2000(0X7D0)


MODBUS 响应


功能码


1 BYTE


0X01


字节计数


1 BYTE


N


线圈状态


n BYTE


n =N or N+1


N =读取数量/8 如果余数不为0 则N=N+1


错误 响应


功能码


1 BYTE


0X01+ 0X80


错误代码


1 BYTE


0x1 or 0x2 or 0x3 or 0x4


举例


请求


响应


域名


数据(hex)


域名称


数据(hex)


功能码


01


功能码


01


起始地址高(字节)


00


字节计数


03


起始地址低(字节)


13


27(h)~20状态


CD


读取数量高(字节)


00


35(h)~28状态


6B


读取数量低(字节)


13


38(h)~36状态


05


02 命令 读取输入状态 MODBUS地址 10001~


MODBUS 请求


功能码


1 BYTE


0X02


起始地址


2 BYTE


0X0000 TO 0XFFFF


读取数量


2 BYTE


1 TO 2000(0X7D0)


MODBUS 响应


功能码


1 BYTE


0X02


字节计数


1 BYTE


N


输入状态


n BYTE


n =N or N+1


N =读取数量/8 如果余数不为0 则N=N+1


错误 响应


功能码


1 BYTE


0X02+ 0X80


错误代码


1 BYTE


0x1 or 0x2 or 0x3 or 0x4


举例


请求


响应


域名称


数据(hex)


域名称


数据(hex)


功能码


02


功能码


02


起始地址高(字节)


00


字节计数


03


起始地址低(字节)


C4


204(h)~197状态


AC


读取数量高(字节)


00


212(h)~205状态


DB


读取数量低(字节)


16


218(h)~213状态


35


03 读保持寄存器 MODBUS地址 40001~


MODBUS 请求


功能码


1 BYTE


0X03


起始地址


2 BYTE


0X0000 TO 0XFFFF


读取数量


2 BYT

到此这篇modbus协议40001(Modbus协议报文解析)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 初音未来绿色头发图片(初音未来绿头发的叫什么)2025-04-03 08:09:09
  • Linux文件权限命令(linux文件权限754)2025-04-03 08:09:09
  • 接口415错误(接口报415错误)2025-04-03 08:09:09
  • jvisualvm分析dump大对象(jvm dump分析)2025-04-03 08:09:09
  • 104协议总召(104协议详解)2025-04-03 08:09:09
  • issa英文名(issa英文名含义)2025-04-03 08:09:09
  • webflux详解(webflux原理)2025-04-03 08:09:09
  • 16进制密码解密(16进制解密工具)2025-04-03 08:09:09
  • 二级域名解析882gg(二级域名解析网站)2025-04-03 08:09:09
  • 程序员入门必读书单(入门程序员必读书籍)2025-04-03 08:09:09
  • 全屏图片