
实训七 MODBUS 总线硬件设计与实现
1. Modbus 概述
Modbus 协议是一种已广泛应用于当今工业控制领域的通用通讯协议。通过此
协议,控制器相互之间、或控制器经由网络(如以太网)可以和其它设备之间进
行通信。Modbus 协议使用的是主从通讯技术,即由主设备主动查询和操作从设
备。一般将主控设备方所使用的协议称为 Modbus Master,从设备方使用的协议
称为 Modbus Slave。典型的主设备包括工控机和工业控制器等;典型的从设备
如 PLC 可编程控制器等。Modbus 通讯物理接口可以选用串口(包括 RS232 和
RS485),也可以选择以太网口。
2. Modbus RTU 信息帧结构
Modbus RTU 模式中,信息帧结构如图 4 所示[7],包括开始码、地址码、功能码、
数据区、校验码和结束码。开始码和结束码需要有 3.5 个字符以上的静止时间,
依据使用的波特率,计算这个静止的时间(如下图中的 T1-T2-T3-T4)。功能码告
诉了被寻址到的终端执行何种功能,Modbus 协议规定了一系列的功能码供设备
使用。数据区域包含了终端执行特定功能所需要的数据或者终端响应查询时采集
到的数据。这些数据的内容可能是数值、参考地址或者设置值。校验码允许主机
和终端检查传输过程中的错误。有时,由于电噪声和其它干扰,一组数据在从一
个设备传输到另一个设备时在线路上可能会发生一些改变,出错校验能够保证主
机或者终端不去响应那些传输过程中发生了改变的数据,这就提高了系统的安全
性和效率,错误校验使用了 16 位循环冗余的方法(CRC16)。