CN108494650A - 一种二进制通信协议数据链路层传输帧格式 - Google Patents
一种二进制通信协议数据链路层传输帧格式 Download PDFInfo
- Publication number
- CN108494650A CN108494650A CN201810120317.7A CN201810120317A CN108494650A CN 108494650 A CN108494650 A CN 108494650A CN 201810120317 A CN201810120317 A CN 201810120317A CN 108494650 A CN108494650 A CN 108494650A
- Authority
- CN
- China
- Prior art keywords
- data
- link layer
- transmission
- frame format
- 0xfd
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40228—Modbus
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
Abstract
本发明提出了一种二进制通信协议数据链路层传输帧格式,用于解决RTU模式中以时间间隔标识一帧数据开始和结束导致通信可靠性和传输效率较低的问题。本发明包括帧头、应用数据单元ADU和帧尾;帧头采用0xFE;应用数据单元ADU包括依次连接的地址段、简单数据单元PDU和校验段。地址段包括选项字节字段和设备号字段,简单数据单元PDU包括依次连接的命令码和数据段;帧尾采用0xFF。本发明的优点在于:帧头采用0xFE,帧尾采用0xFF,提高了数据传输的可靠性及传输的稳定性,缩短了每帧数据的传输时间,在传输大量数据时有效的提高数据的传输效率。采用0xFD作为转义字符,增加数据帧有效内容载荷。
Description
技术领域
本发明属于通信传输协议领域,涉及一种数据链路层的通信协议,具体涉及一种二进制通信协议数据链路层传输帧格式,可用于控制设备之间的通信。
背景技术
为实现控制器及不同设备之间的通信,工业上存在着多种通信协议,Modbus协议因其接口广泛,廉价,传输速率高效等特性,在工业领域被广泛的应用和推广,通过此协议,可实现控制器相互之间、控制器及其它设备之间进行通信,目前已成为一种工业领域被广为应用的真正开放、标准的网络通信协议,其在数据链路层协议主要有两种模式:ASCII码模式和RTU模式。
当采用ASCII码模式通信时,消息中每8bits用两个ASCII码表示,报文以冒号(:)字符(ASCII码3AH)开始,以回车换行符结束(ASCII码0DH,0AH),这种方式的主要优点是字符发送时间间隔可达到1s而不发生错误,但ASCII码模式只能传输ASCII码,如果帧数据内容为二进制数据(信息多是二进制数据),则需要转化成ASCII码进行传输,造成传输数据变长,传输数据量变大。因此只在特殊场合应用。
当采用RTU模式通信时,数据链路层传输帧格式的结构如图1所示,消息中每8bits对应两个4位的十六进制字符,每帧间的时间间隔不能超过少于3.5个字符,则帧结构包括一个至少3.5个字符的时间标志一帧数据的开始,应用数据单元ADU和一个至少3.5个字符的时间表示一帧数据的结束也即下一帧数据的开始,这种方式的主要优点是:在同样波特率下,可比ASCII码方式传送更多的数据,但由于帧数据采用时间间隔作为帧开始和帧结束标识,在实际通信过程中,时间间隔的控制通过字符超时定时器的时钟标记,定时器时钟依赖于硬件电路的设计和软件的编写,因此通信容易受到硬件电路和软件编程稳定性的影响,导致通信可靠性和传输效率较低。
为了提高通信的可靠性和传输效率,目前采用的方法大多是在RTU模式的基础上通过在硬件电路上提高定时器的精确性,或者在软件编程上优化程序算法实现的,但是存在的缺陷是由于硬件电路设计本身的限制通信的可靠性和传输效率仍然较低。
发明内容
本发明的目的在于克服上述现有技术存在的不足,提出了一种二进制通信协议数据链路层传输帧格式,旨在提高通信的可靠性和传输效率。
本发明的设计思路是:结合Modbus ASCII码模式下具有专用的起始帧和结束帧的优点,将标准Modbus RTU模式下以时间间隔不能超过少于3.5个字符作为判断帧开始和结束的条件去除,改为在报文中增加0xFE作为帧头,0xFF作为结束帧。
根据上述技术思路,本发明采用的技术方案为:
一种二进制通信协议数据链路层传输帧格式,其传输帧格式包括帧头、应用数据单元ADU和帧尾;
所述帧头,采用0xFE;
所述应用数据单元ADU,包括依次连接的地址段、简单数据单元PDU和校验段,其中,所述地址段,包括选项字节字段和设备号字段,所述简单数据单元PDU,包括依次连接的命令码和数据段;
所述帧尾,采用0xFF;
所述应用数据单元ADU中出现的数据需要转义时,采用0xFD作为转义字符,转义规则为:若出现的数据为0xFD,则将0xFD表示为0xFD,0x00;若出现的数据为0xFE,则将0xFE表示为0xFD,0x01;若出现的数据为0xFF,则将0xFF表示为0xFD,0x02。
上述一种二进制通信协议数据链路层传输帧格式,所述选项字节字段,其中第0位为加密指示位,加密指示位为0时代表不加密,为1时代表加密;第1位和第2位为两位连续的保留位,保留位的默认值为00;第3位和第4位为协议版本号,用于指示不同协议版本,使传输帧格式能向下兼容不同协议格式,协议版本号默认值为00;第5位、第6位和第7位为保留位,保留位的默认值为0。
上述一种二进制通信协议数据链路层传输帧格式,所述设备号字段,其中第0位、第1位、第2位和第3位,表示目的设备号,第4位、第5位、第6位和第7位,表示源设备号,目的设备号和源设备号的取值均为0~15。
上述一种二进制通信协议数据链路层传输帧格式,所述数据段,包括依次连接的1Byte有效数据长度段、N Byte有效数据段和2Byte加密段。
上述一种二进制通信协议数据链路层传输帧格式,所述命令码,其长度为1Byte。
上述一种二进制通信协议数据链路层传输帧格式,所述校验段,其长度为1Byte,采用CRC校验方式。
本发明与现有技术对比,具有以下特点:
1.本发明帧头采用0xFE,帧尾采用0xFF,采用实际字符作为帧头,帧尾避免了通过硬件电路控制时间间隔,提高了数据传输的可靠性及传输的稳定性,克服了现有技术中以时间间隔作为帧的开始或结束标志带来的通信易受到硬件电路的性能和软件编程的影响的缺点;
2.本发明采用0xFD作为转义字符,可减少数据帧中转义字符的个数,增加数据帧有效内容载荷,同时帧头采用0xFE,帧尾采用0xFF,数据传输所花费的时间长度为2个字符的时间,与现有技术,RTU模式中以3.5个字符的时间间隔作为传输帧的间隔相比,缩短了每帧数据的传输时间,在传输大量数据时这个时间的节约将有效的提高数据的传输效率。
附图说明
图1是现有RTU模式数据链路层传输帧格式的结构示意图;
图2是本发明的整体结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图和实施例,对本发明进行进一步的详细说明。
参照图2,一种二进制通信协议数据链路层传输帧格式,所述传输帧格式包括帧头、ADU应用数据单元和帧尾,其具体组成如表1所示。
所述帧头,采用0xFE。
所述帧尾,采用0xFF。
RTU传输模式要求发送的两针数据之间要有一定的数据间隔,以保证接收方能够区分,在实际工程中,时间间隔的控制通常通过字符超时定时器的时钟标记,需要采用硬件电路和软件编程来实现,因此消息传输的准确性及效率都依赖于硬件电路的性能和软件编程的实现,而本发明优选的使用特殊字符作为开始和结束标志,提高了数据传输的可靠性及传输的稳定性。
表1帧格式
由于帧头采用了0xFE,帧尾采用了0xFF,为防止所述应用数据单元ADU中出现0xFE,0xFF字符而使接收端错误的重新开始或终止一帧数据的接收,需要定义转义字符。
转义字符的增加必然引起传输数据的增加,考虑到最小化数据单元中转义字符的个数,本发明优选的使用0xFD作为转义字符,当一个字符的数据小于0xFD时直接使用数据,当数据大于或等于0xFD时使用转义操作,将1Byte数据转义为2Byte数据,转义规则为:若出现的数据为0xFD,则将0xFD表示为0xFD,0x00;若出现的数据为0xFE,则将0xFE表示为0xFD,0x01;若出现的数据为0xFF,则将0xFF表示为0xFD,0x02,数据转义的对比如表1。
表2转义字符设置
数据 | 转义 |
0xFD | 0xFD 0x00 |
0xFE | 0xFD 0x01 |
0xFF | 0xFD 0x02 |
所述ADU应用数据单元,包括依次连接的地址段、简单数据单元PDU和校验段。
所述地址段,优选的采用2Byte,包括选项字节字段和设备号字段。
所述选项字节字段,其中,第0位为加密指示位,加密指示位为0时代表不加密,为1时代表加密;第1位和第2位为两位连续的保留位,保留位的默认值为00;第3位和第4位为协议版本号,用于指示不同协议版本,使传输帧格式能向下兼容不同协议格式,协议版本号默认值为00;第5位、第6位和第7位为保留位,保留位的默认值为0,选项字节字段不同位的设置可最大程度向下兼容不同的协议格式,该设置方式可直观表示如下表2所示。
表3选项字节字段
所述设备号字段,其中,第0位、第1位、第2位和第3位,表示目的设备号,第4位、第5位、第6位和第7位,表示源设备号,目的设备号和源设备号的取值均为0~15,其具体设置如下表所示。
表4设备号字段
所述简单数据单元PDU,包括依次连接的命令码和数据段。
所述命令码,优选的令其长度为1Byte,该命令码可采用由用户自定义的功能码,也可采用标准协议中的功能码。
所述数据段,包括依次连接的1Byte有效数据长度段,N Byte有效数据段和2Byte加密段。
所述有效数据长度段用来存放所传输帧有效数据的长度。
所述加密段,其处理方式由选项字节字段中第0位,加密指示位决定,若加密指示位设为0,表示数据不加密,则无需考虑密码段,若加密指示位设为1,表示数据加密,则数据段的末尾2Byte数据为加密码数据,则需要对有效数据长度,有效数据,校验段进行解码。
所述校验段,其长度为1Byte,采用CRC校验方式,CRC位数与数据流无关,本发明优选的使用CRC8校验方式,是在满足实际要求的情况下,使校验算法尽可能简便。
以下结合现有技术每帧数据的传输时间和本发明每帧数据的传输时间对本发明的技术效果作进一步说明。
发送数据的时间与设置的通信参数有关,计算方法为:若通信参数设置为,起始位1,数据位8,奇偶校验位1,停止位1,即数据位数为11位,波特率9600bps,则传输一个字符的时间为11/9600=1.1454583ms,那么在现有技术中,RTU模式中采用3.5个字符的时间间隔,3.5个字符的时间间隔为:3x1.1451583ms=4.00910405ms,在本发明所规定的帧格式中,采用0xFE作为帧头,0xFE作为帧尾,传输帧头和帧尾需要传输两个字符的时间,所需的传输时间为2x1.1451583=2.2903166ms,这比传统的RTU方式节约了1.5个字符的时间,1.5字符的时间间隔约为1.71818745ms,当传输大量数据时,1.5个字符的时间的节约将有效的提高数据帧的传输效率。
Claims (6)
1.一种二进制通信协议数据链路层传输帧格式,包括帧头、应用数据单元ADU和帧尾;其特征在于:
所述帧头,采用0xFE;
所述应用数据单元ADU,包括依次连接的地址段、简单数据单元PDU和校验段,其中,所述地址段,包括选项字节字段和设备号字段,所述简单数据单元PDU,包括依次连接的命令码和数据段;
所述帧尾,采用0xFF;
所述应用数据单元ADU中出现的数据需要转义时,采用0xFD作为转义字符,转义规则为:若出现的数据为0xFD,则将0xFD表示为0xFD,0x00;若出现的数据为0xFE,则将0xFE表示为0xFD,0x01;若出现的数据为0xFF,则将0xFF表示为0xFD,0x02。
2.根据权利要求1所述的一种二进制通信协议数据链路层传输帧格式,其特征在于:所述选项字节字段,其中第0位为加密指示位,加密指示位为0时代表不加密,为1时代表加密;第1位和第2位为两位连续的保留位,保留位的默认值为00;第3位和第4位为协议版本号,用于指示不同协议版本,使传输帧格式能向下兼容不同协议格式,协议版本号默认值为00;第5位、第6位和第7位为保留位,保留位的默认值为0。
3.根据权利要求1所述的一种二进制通信协议数据链路层传输帧格式,其特征在于:所述设备号字段,其中第0位、第1位、第2位和第3位,表示目的设备号,第4位、第5位、第6位和第7位,表示源设备号,目的设备号和源设备号的取值均为0~15。
4.根据权利要求1所述的一种二进制通信协议数据链路层传输帧格式,其特征在于:所述数据段,包括依次连接的1Byte有效数据长度段、N Byte有效数据段和2Byte加密段。
5.根据权利要求1所述的一种二进制通信协议数据链路层传输帧格式,其特征在于:所述命令码,其长度为1Byte。
6.根据权利要求1所述的一种二进制通信协议数据链路层传输帧格式,其特征在于:所述校验段,其长度为1Byte,采用CRC校验方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810120317.7A CN108494650A (zh) | 2018-02-07 | 2018-02-07 | 一种二进制通信协议数据链路层传输帧格式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810120317.7A CN108494650A (zh) | 2018-02-07 | 2018-02-07 | 一种二进制通信协议数据链路层传输帧格式 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108494650A true CN108494650A (zh) | 2018-09-04 |
Family
ID=63344637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810120317.7A Pending CN108494650A (zh) | 2018-02-07 | 2018-02-07 | 一种二进制通信协议数据链路层传输帧格式 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108494650A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109544769A (zh) * | 2019-01-17 | 2019-03-29 | 福州符号信息科技有限公司 | 一种基于韦根协议的门禁系统及控制方法 |
CN109767535A (zh) * | 2019-01-17 | 2019-05-17 | 福州符号信息科技有限公司 | 一种基于韦根协议的自适应条码的门禁系统和方法 |
CN110351281A (zh) * | 2019-07-15 | 2019-10-18 | 珠海格力电器股份有限公司 | 一种通用数据帧解析方法、装置及设备 |
CN110912931A (zh) * | 2019-12-16 | 2020-03-24 | 上海无线电设备研究所 | 一种基于字符转义的数据通信组帧方法 |
CN112967430A (zh) * | 2021-03-22 | 2021-06-15 | 深圳指芯物联技术有限公司 | 一种智能锁通讯系统以及安全通讯方法 |
CN113709010A (zh) * | 2021-07-16 | 2021-11-26 | 电子科技大学 | 一种不限帧长的Modbus通信协议系统 |
CN114283549A (zh) * | 2022-01-28 | 2022-04-05 | 西安盛赛尔电子有限公司 | 一种火灾报警系统用通信方法 |
CN114362885A (zh) * | 2022-01-10 | 2022-04-15 | 中电望辰科技有限公司 | 物联网数据传输方法、装置、设备和介质 |
CN116600022A (zh) * | 2023-07-17 | 2023-08-15 | 成都数维通信技术有限公司 | 一种通用式工控网络通信协议构建方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094110A (zh) * | 2007-07-18 | 2007-12-26 | 哈尔滨工业大学 | Modbus RTU帧内与帧间字符间隔时间设置和检测显示系统及方法 |
CN104038499A (zh) * | 2014-06-17 | 2014-09-10 | 宁波三星电气股份有限公司 | 基于modbus rtu协议的数据传输方法 |
CN106027686A (zh) * | 2016-08-02 | 2016-10-12 | 山东乐通达物联网科技有限公司 | 基于mpeg-2的增强型modbus通信协议 |
-
2018
- 2018-02-07 CN CN201810120317.7A patent/CN108494650A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101094110A (zh) * | 2007-07-18 | 2007-12-26 | 哈尔滨工业大学 | Modbus RTU帧内与帧间字符间隔时间设置和检测显示系统及方法 |
CN104038499A (zh) * | 2014-06-17 | 2014-09-10 | 宁波三星电气股份有限公司 | 基于modbus rtu协议的数据传输方法 |
CN106027686A (zh) * | 2016-08-02 | 2016-10-12 | 山东乐通达物联网科技有限公司 | 基于mpeg-2的增强型modbus通信协议 |
Non-Patent Citations (1)
Title |
---|
杨英鹏等: "《CDIO工程教育系列教程 公共基础类 计算机网络》", 31 January 2013, 东软电子出版社 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109544769A (zh) * | 2019-01-17 | 2019-03-29 | 福州符号信息科技有限公司 | 一种基于韦根协议的门禁系统及控制方法 |
CN109767535A (zh) * | 2019-01-17 | 2019-05-17 | 福州符号信息科技有限公司 | 一种基于韦根协议的自适应条码的门禁系统和方法 |
CN110351281A (zh) * | 2019-07-15 | 2019-10-18 | 珠海格力电器股份有限公司 | 一种通用数据帧解析方法、装置及设备 |
CN110912931A (zh) * | 2019-12-16 | 2020-03-24 | 上海无线电设备研究所 | 一种基于字符转义的数据通信组帧方法 |
CN112967430B (zh) * | 2021-03-22 | 2023-01-10 | 深圳指芯物联技术有限公司 | 一种智能锁通讯系统以及安全通讯方法 |
CN112967430A (zh) * | 2021-03-22 | 2021-06-15 | 深圳指芯物联技术有限公司 | 一种智能锁通讯系统以及安全通讯方法 |
CN113709010A (zh) * | 2021-07-16 | 2021-11-26 | 电子科技大学 | 一种不限帧长的Modbus通信协议系统 |
CN113709010B (zh) * | 2021-07-16 | 2022-11-04 | 电子科技大学 | 一种不限帧长的Modbus通信协议系统 |
CN114362885A (zh) * | 2022-01-10 | 2022-04-15 | 中电望辰科技有限公司 | 物联网数据传输方法、装置、设备和介质 |
CN114362885B (zh) * | 2022-01-10 | 2024-04-26 | 中电望辰科技有限公司 | 物联网数据传输方法、通信系统、设备和介质 |
CN114283549A (zh) * | 2022-01-28 | 2022-04-05 | 西安盛赛尔电子有限公司 | 一种火灾报警系统用通信方法 |
CN114283549B (zh) * | 2022-01-28 | 2024-05-31 | 西安盛赛尔电子有限公司 | 一种火灾报警系统用通信方法 |
CN116600022A (zh) * | 2023-07-17 | 2023-08-15 | 成都数维通信技术有限公司 | 一种通用式工控网络通信协议构建方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108494650A (zh) | 一种二进制通信协议数据链路层传输帧格式 | |
CN107342773A (zh) | 编码、译码方法及设备 | |
CN102257767A (zh) | 在基于磁场的低频无线通信中配置物理层的方法,以及存储执行该方法的程序的计算机可读记录介质 | |
CN108199941A (zh) | 一种基于can2.0b的can总线通信方法 | |
CN101154989B (zh) | 增强上行控制信道的发送方法 | |
CN106712907A (zh) | 数据传输方法及设备 | |
CN108430091A (zh) | 一种高效的智能家居wifi配网方法及设备 | |
WO2019085634A1 (zh) | 以太网中处理数据的方法、物理层芯片及存储介质 | |
JP2023534880A (ja) | データ伝送方法及び装置 | |
CN107800465B (zh) | 一种电力线载波通讯传输方法 | |
CN104467865A (zh) | 串行通信协议控制器、字节拆分电路及8b10b编码器 | |
CN2807630Y (zh) | 高速无线数据传输调制解调器 | |
CN109347605B (zh) | 一种编码方法、解码方法及装置、计算机可读存储介质 | |
CN110189509A (zh) | 一种无线远程抄表系统 | |
CN108052472A (zh) | 一种iic设备通信系统、写数据方法及读数据方法 | |
CN105721101B (zh) | 一种实现民航报文处理的方法及装置 | |
CN108271296A (zh) | 基于舞台灯光的阵列编程控制器 | |
CN114863666A (zh) | 一种红外遥控的无载波编码方法 | |
CN108183909A (zh) | 一种LoRa通信方法及系统 | |
WO2016188306A1 (zh) | 信息传输方法、信息获取方法、发送端设备及接收端设备 | |
CN207410332U (zh) | 一种高性能无线通信发射器 | |
CN109039381B (zh) | 一种针对dl/t645通讯协议的低压电力线宽带载波通信的加密方法 | |
CN207623968U (zh) | 一种数据通讯装置 | |
CN204479937U (zh) | 一种用于智能家居近距离通讯的多机无线通讯系统 | |
CN105049094B (zh) | 一种复杂型多组参数转码传输的方法与系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180904 |
|
WD01 | Invention patent application deemed withdrawn after publication |