[发明专利]一种Modbus RTU通讯协议提高通讯效率的方法在审
申请号: | 201910712086.3 | 申请日: | 2019-08-02 |
公开(公告)号: | CN110311848A | 公开(公告)日: | 2019-10-08 |
发明(设计)人: | 汤新舟 | 申请(专利权)人: | 杭州远流科技有限公司 |
主分类号: | H04L12/40 | 分类号: | H04L12/40;H04L1/00 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 林超 |
地址: | 310000 浙江省杭州市滨江区西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据帧 功能码 数据内容 通讯效率 通讯协议 预判 循环冗余校验 数据帧获取 接收地址 总线空闲 从站 主站 解析 通讯 | ||
本发明公开了一种Modbus RTU通讯协议提高通讯效率的方法。针对ModbusRTU协议的主站和从站,在接收到数据帧开始之后,利用数据帧中接收到的功能码和部分数据内容确定数据长度,并进行以下判断,以功能码和部分数据内容进行该数据帧长度的预判;预判长度达到之后,开始进行循环冗余校验,利用接收到的数据帧获取其中的接收地址,最后按照功能码和数据开始解析。本发明方法不再依靠总线空闲时间来进行判断,而依靠数据帧本身所包含的特点进行判断,使得ModbusRTU的实际通讯速度加快,解决了上述技术问题。
技术领域
本发明涉及了一种Modbus RTU通讯协议改进方法,尤其是涉及了一种Modbus RTU通讯协议提高通讯效率的方法。
背景技术
Modbus RTU是一个开放的串行协议,采用的是主从的通讯方式。Modbus RTU在各个工业行业之中得到了广泛的应用,在诸如各类PLC,控制器,传感器,执行器之中,它已经成为一通用工业标准。
Modbus RTU的通讯模式为请求/应答的方式,主站发出查询指令,从站根据收到的指令进行处理和应答。
在请求消息中,主站将告知指定的从站(地址)将要执行何种功能(功能码),并附加以功能码所对应的数据,同时提供了数据帧的CRC校验。
从站收到信息后,将判断这个信息的CRC是否正确,是单播还是广播,这将决定是否需要应答,对于广播不需要应答,如果是单播,则开始判断是否是发给从站本机的:如果非本机则无需应答,并开始对请求的功能码和数据进行解析,对其进行处理,并生成反馈数据帧;如果这个过程中有错误发生,也生成包含错误代码的应答数据帧。
Modbus RTU数据帧在总线上如图1所示,采用的是总线空闲时间的时间阈值来判断一个数据帧的结束(char表示字符字节)。在Modbus RTU的协议中,总线空闲时间的时间阈值这个数据值设定为3.5个字节的长度,即总线空闲时间大于3.5个字节长度的时间阈值情况下,认为是数据帧结束。通常,如果通讯速率低于和等于19200bps,要求严格按照3.5字节的时间进行判断;如果通讯速率高于19200bps,则应该采用1.7500ms作为数据帧结束的判断。
ModbusRTU的协议实现方法如下:
第一,数据帧接收和处理的逻辑如下:串口接收到数据之后,如图2所示,将数据存入到串口数据数组,复位定时器,并以定时器的时间即为数据帧结束的判断值。
第二,如图3所示,定时器发生了溢出中断,即超过了总线空闲时间的时间阈值,说明ModbusRTU的数据帧接收完全,则开始对ModbusRTU的数据帧进行分析,并执行后续的操作。
上面为现有Modbus RTU的工作原理和实现方法。
事实上,Modbus RTU是一个完全开放的协议,可实现于多种硬件平台和软件平台之中,硬件上包括有PC,PLC,各种嵌入式设备等等,运行的操作系统包含了Windows OS,Linux OS,各种嵌入式操作系统以及无操作系统等等。不同的硬件,软件配置都会对ModbusRTU的性能造成影响,例如,所能获得的定时器的精度都存在相当的差异,并不能在所有的情况下都获得毫秒级的精度。
这就导致,为了设备获取更好的兼容性,通常在开发ModbusRTU协议时会将这个数据帧结束的时间阈值判断数值调高,以便兼容不同平台下的Modbus设备,这个数值通常会设定到数十毫秒。这就使得在采用Modbus RTU协议的情况下,其实际通讯速度变差。
发明内容
为了解决背景技术中存在的技术问题,为了更快速的对ModbusRTU数据帧的结束进行判断,本发明提出了一种Modbus RTU通讯协议提高通讯效率的方法,通过一种新的数据帧完整性结束判定来提高效率。在方法上,不采用总线数据的空闲时间作为判断,而是利用了ModbusRTU数据帧本身的特点来做判断。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州远流科技有限公司,未经杭州远流科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910712086.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种批量数据传输方法和装置
- 下一篇:互联网对接方法