网页更新:2013-10-5 10:07:56

MODBUS RTU 通信协议简介

稳定可靠的通信协议

MODBUS RTU协议简介:
Modbus协议最初由Modicon公司开发出来,在1979年末该公司成为施耐德自动化(Schneider Automation)部门的一部分,现在Modbus已经是工业领域全球最流行的协议。
此协议支持传统的RS-232、RS-422、RS-485和以太网设备。许多工业设备,包括PLC,DCS,智能仪表等都在使用Modbus协议作为他们之间的通讯标准。
有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。

Modbus协议包括ASCII、RTU、TCP等,并没有规定物理层。
此协议定义了控制器能够认识和使用的消息结构,而不管它们是经过何种网络进行通信的。标准的Modicon控制器使用RS232C实现串行的Modbus。
Modbus的ASCII、RTU协议规定了消息、数据的结构、命令和就答的方式,数据通讯采用Maser/Slave方式,Master端发出数据请求消息,Slave端接收到正确消息后就可以发送数据到Master端以响应请求;Master端也可以直接发消息修改Slave端的数据,实现双向读写。

Modbus协议需要对数据进行校验,串行协议中除有奇偶校验外,ASCII模式采用LRC校验,RTU模式采用16位CRC校验,但TCP模式没有额外规定校验,因为TCP协议是一个面向连接的可靠协议。
另外,Modbus采用主从方式定时收发数据,在实际使用中如果某Slave站点断开后(如故障或关机),Master端可以诊断出来,而当故障修复后,网络又可自动接通。因此,Modbus协议的可靠性较好。

对于Modbus的ASCII、RTU和TCP协议来说,其中TCP和RTU协议非常类似,只要把RTU协议的两个字节的校验码去掉,然后在RTU协议的开始加上5个0和一个6并通过TCP/IP网络协议发送出去即可。因此这里只介绍一下Modbus的ASCII和RTU协议。

MODBUS ASCII 协议和 MODBUS RTU 协议比较表
协议开始标记结束标记校验传输效率程序处理
ASCII:(冒号)CR,LFLRC直观,简单
RTUCRC稍复杂


通过比较可以看到,ASCII协议和RTU协议相比,ASCII协议拥有开始和结束标记,因此在进行程序处理时能更加方便,由于传输的都是可见的ASCII字符,所以进行调试时就更加的直观,另外它的LRC校验也比较容易。但是它传输的都是可见的ASCII字符,RTU传输的数据每一个字节ASCII都要用两个字节来传输,比如RTU传输一个十六进制数0xF9,ASCII就需要传输"F"和"9"的ASCII码0x39和0x46两个字节,这样它的传输的效率就比较低。所以一般来说,如果所需要传输的数据量较小可以考虑使用ASCII协议,如果所需传输的数据量比较大,最好能使用RTU协议。

MODBUS功能码简介:

功能码名称功能说明
01读取线圈状态取得一组逻辑线圈的当前状态(ON/OFF)
02读取输入状态取得一组开关输入的当前状态(ON/OFF)
03读取保持寄存器读取一个或多个保持寄存器
04读取输入寄存器读取一个或多个随机寄存器
05强置单线圈强置一个逻辑线圈的通断
06预置单寄存器把具体值装入一个保持寄存器
07读取异常状态取得8个内部线圈的通断状态,这8个线圈的地址由控制器决定
08回送诊断校验把诊断校验报文送从机,以对通信处理进行评鉴
09编程(只用于484)使主机模拟编程器作用,修改PC从机逻辑
10控询(只用于484)可使主机与一台正在执行长程序任务从机通信,探询该从机是否已完成其操作任务,仅在含有功能码9的报文发送后,功能码才发送
11读取事件计数可使主机发出单询问,并随即判定操作是否成功,尤其是该命令或其它应答产生通信错误时
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保留用于异常应答

 

logo_D 个人站点 ©1991-2017 Deyun Machinery & Electronic Technologies Pvt Ltd, All Rights Reserved
山东·诸城 皇华镇位井子村103号  | TEL:13335252885 | 鲁ICP备05003338号