modbus通讯协议详解

2025-05-19 16:18:34

1、MODBUS串行通信协议基本规则:每个MODBUS数据包都由以下5个部分组成:(1)从站地址;(2) 要执行的功能码;(3)寄存器地址(变量地址);(4)数据 ;(5)CRC校验;

modbus通讯协议详解

4、(3)寄存器地址:从机执行有效命令时数据区域存储的位置。不同变量占用不同寄存器个数,有些地址变量占用两个寄存器,4字节数据,有些变量占用一个寄存器,2字节数据,请根据实际情况使用。有些占用更多寄存器,根据实际数据来定。

5、(4)数据区:数据区包含了终端执行特定功能所需要的数据或者终端响应查询时采集到的数据。这些数据的内容可能是数值、参考地址或者设置值;例如:功能码告诉终端读取一个寄存器,数据区则需要指明从哪个寄存器开始及读取多少个数据,内嵌的地址和数据依照类型和从机之间的不同内容而有所不同;寄存器数值发送顺序为:高位字节在前,低位字节在后。

6、(5)CRC校验: MODBUS-RTU模式采用16位CRC校验。发送设备应当对包裹中的每一个数据都进行CRC16计算,最后结果存放入检验域中。接收设备也应当对包裹中的每一个数据(除校验域以外)进行CRC16计算,将结果域校验域进行比较;只有相同的包裹才可以被接受。

7、通信异常处理 如果主站发送了一个非法的数据包或者是主站请求一个无效的数据寄存器时,异常的数据响应就会产生。这个异常数赍铈于脏据响应由从站地址、功能码、故障码和校验域组成. 根据MODBUS通讯要求,异常响应功能码=请求功能码+0x80;异常应答时,将功能号的最高位置1。例如:主机请求功能号为0x04则从机返回的功能号对应为0x84。

modbus通讯协议详解modbus通讯协议详解
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢