文档介绍:46
Modbus Protocol PI-MBUS-300
1
PI-MBUS-300 Modbus Protocol
1
PI-MBUS-300 Modbus Protocol
第一章
能代码03将查询从机,并读保持存放器。并用存放器的内容作响应。该数据区必须含有告之从机读取存放器的起始地址及数量,错误校验区的一些信息,为从机提供一种校验方法,以保证信息内容的完整性。
响应:
从机正常响应时,响应功能码是查询功能码的应答,数据字节包含从机采集的数据,如存放器值或状态。如出现错误,那么修改功能码,指明为错误响应。并在数据字节中含有一个代码,来说明错误,错误检查区允许主机确认有效的信息内容。
46
Modbus Protocol PI-MBUS-300
3
PI-MBUS-300 Modbus Protocol
1
PI-MBUS-300 Modbus Protocol
两种串行传输模式
控制器可使用ASCII或RTU通讯模式,在标准Modbus上通讯。在配置每台控制器时,用户须选择通讯模式以及串行口的通讯参数。(波特率,奇偶校验等),在Modbus总线上的所有设备应具有相同的通讯模式和串行通讯参数。
选择ASCII或RTU模式用于标准的Modbus总线。它定义了总线上串行传输信息区的“位〞的含义,决定信息打包及解码方法。
如在MAP和Modbus+总线上时,Modbus信息以帧的方式出现,并与串行传输无关,如请求读保持存放器可以在Modbus+上的两个控制器之间处理,而与使用的控制器的Modbus端口无关。
ASCII 模式
当控制器以ASCII模式在Modbus总线上进行通讯时,一个信息中的每8位字节作为2个ASCII字符传输的,这种模式的主要优点是允许字符之间的时间间隔长达IS,也不会出现错误。
ASCII码每一个字节的格式:
编码系统: 16进制,ASCII字符0-9,A-F 1个16进制
数据位: 1起始位
7位数据,低位先送
奇/偶校验时1位;无奇偶校验时0位
〔LRC〕1位带校验1停止位;无校验2止位
错误校验区: 纵向冗余校验
RTU模式
控制器以RTU模式在Modbus总线上进行通讯时,信息中的每8位字节分成2个4位16进制的字符,该模式的主要优点是在相同波特率下其传输的字符的密度高于ASCII模式,每个信息必须连续传输。
RTU模式中每个字节的格式:
编码系统:8位二进制,十六进制0-9,A-F
数据位: 1起始位
8位数据,低位先送
奇/偶校验时1位;无奇偶校验时0位
停止位1位(带校验);停止位2位(无校验)
带校验时1位停止位;无校验时2位停止位
错误校验区:循环冗余校验(CRC)
Modbus信息帧
何论是ASCII模式还是RTU模式,Modbus信息以帧的方式传输,每帧有确定的起始点和结束点,使接收设备在信息的起点开始读地址,并确定要寻址的设备 (播送时对全部设备),以及信息传输的结束时间。可检测局部信息,错误可作为一种结果设定。
对MAP或Modbus+协议可对信息帧的起始和结束点标记进行处理,也可管理发送至目的地的信息,此时,信息传输中Modbus数据帧内的目的地址已无关紧要,因为Modbus+地址已由发送者或它的网络适配器把它转换成网络节点地址和路由。
ASCII帧
在ASCII模式中,以(:)号(ASCII3AH)表示信息开始,以回撤一换行键(CRLF) (ASCII OD和OAH)表示信息结束。
对其它的区,允许发送的字符为16进制字符0-9,A-F。网络中设备连续检测并接收一个冒号(:)时,每台设备对地址区解码,找出要寻址的设备。
字符之间的最大间隔为1S,假设大于1S,那么接收设备认为出现了一个错误。
典型的信息帧见下表
开始
地址
功能
数据
纵向冗余检查
结束
1字符
2字符
2字符
n字符
2字符
2字符
4
Modbus Protocol PI-MBUS-300
5
PI-MBUS-300 Modbus Protocol
1
PI-MBUS-300 Modbus Protocol
:
图3 ASCII信息帧
例外:对于584和984A/B/X控制器,一个ASCII信息可在LRC区后正常终止,而不需发送CRLF字符,此时出现>IS的时间间隔,控制器也将认为是正常中断。
RTU帧
RTU模式中,