首页 理论教育 MODBUS通信协议介绍与应用分析

MODBUS通信协议介绍与应用分析

更新时间:2025-01-08 工作计划 版权反馈
【摘要】:MODBUS通信协议是应用于电子控制器的一种通用语言。当在MODBUS网络上通信时,此协议决定了每个控制器需要知道它们的设备地址,以及识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用MODBUS协议发出。在其他网络上,包含了MODBUS协议的消息转换为在此网络上使用的帧或包结构。MODBUS的协议内容表7-3是MODBUS协议的命令。

MODBUS通信协议是应用于电子控制器的一种通用语言。通过此协议,控制器相互之间、控制器和其他设备之间通过网络(例如以太网)可以通信。它已经成为一个通用工业标准,通过该协议,不同厂商生产的控制设备都可以连成工业网络,进行集中监控,因此一个单位如果有好几种品牌的PLC,了解该协议很有必要。

此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了控制器请求访问其他设备的过程、如何回应来自其他设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。

当在MODBUS网络上通信时,此协议决定了每个控制器需要知道它们的设备地址,以及识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息并用MODBUS协议发出。在其他网络上,包含了MODBUS协议的消息转换为在此网络上使用的帧或包结构。这种转换也扩展了根据具体的网络解决节点地址、路由路径及错误检测的方法。

1.MODBUS的通信结构

MODBUS采用主从通信结构,在该结构中只有一个单元(定义为MaSter),可以在网络上对另一个单元(定义为Slave)启动查询会话。主设备通常是一台计算机、一个编程面板或一个图像面板,从设备通常是一个工业控制器,主设备可以对一指定的从设备发布信息,也可对所有的从设备进行广播。主设备的查询包括目标地址(或许是广播地址)、命令代码、过程数据或其全部。设备的反应包括地址、收到的相同的命令代码或错误的代码、过程数据或其全部等。

2.MODBUS的通信方式

MODBUS中定义的通信方式有两种:ASCII和RTU(远程终端单元)。在一个MODBUS通信网络中只能够用一种通信方式,不允许同时存在两种通信方式,该方式和一系列的通信参数必须和MODBUS网络上的所有装置保持一致。

(1)ASCII方式

1)ASCII方式每个字节的格式:

①十六进制,ASCII字符0~9,A~F;

②消息中的每个ASCII字符都由十六进制字符组成。

2)每个字节的组成:

①1个起始位;

②7个数据位,最小的有效位先发送;

③1个奇偶校验位(如果有校验);

④1个停止位(有校验时),2个停止位(无校验时)。

3)检测码:LRC(纵向冗余检测)。

(2)RTU方式

1)RTU方式每个字节的格式:

①8位二进制,ASCII字符0~9,A~F;

②消息中的每个8位域都由十六进制字符组成。(www.xing528.com)

2)每个字节的组成

①1个起始位;

②8个数据位,最小的有效位先发送;

③1个奇偶校验位,无校验则无;

④1个停止位(有校验时),2个停止位(无校验时)。

3)检测码:CRC(循环冗余检测)。

ASCII方式的主要优点是它允许在2个字符没有错误发生的情况下,可以最多有1s的时间间隔。RTU方式的主要优点是在相同的波特率情况下它的高密度,与ASCII相比,可以有更大的数据处理能力,但是每个信息必须在连续的状态下传输。

(3)MODBUS的协议内容

表7-3是MODBUS协议的命令。

表7-3 MODBUS协议的命令

978-7-111-46505-8-Chapter07-14.jpg

3.MODBUS消息帧

当消息在标准的MODBUS系列网络传输时,每个字符或字节以如下方式发送(从左到右):最低有效位—最高有效位。

使用ASCII字符帧时,位的序列如图7-11所示。

978-7-111-46505-8-Chapter07-15.jpg

图7-11 ASCⅡ字符帧位顺序

使用RTU字符帧时,位的序列如图7-12所示。

978-7-111-46505-8-Chapter07-16.jpg

图7-12 RTU字符帧位顺序

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈