基于特征字符型的数据流多协议解析系统及方法

文档序号:7968769阅读:237来源:国知局
专利名称:基于特征字符型的数据流多协议解析系统及方法
技术领域
本发明涉及仪器间通讯协议的解析系统以及基于该系统的协议数据流解析方法,特别是一种用于对同类型不同仪器设备间的多种协议根据特征字符进行数据流的解析系统及相应的解析方法。
背景技术
随着信息技术发展,许多自动化监控设备都提供了各种串行接口如RS-232、RS-422、RS-485、CAN、485等,输出被监控对象的测量结果。尽管这些设备监控的对象是相似甚至是一致的,但设备厂商出于保护自身知识产权和利益的需要,各自设置了通讯协议,并且这些协议往往互不相容。这导致在对被监控对象进行远程遥测遥控时,需要投入相当精力对这些协议进行解析。由于受到外围设备的多样性等因素的影响,需要针对性进行开发,这导致了系统开发烦琐,甚至导致失败。
目前,还未见有能够适用于同类型设备的、适配不同厂商设备的多种协议的处理方法。

发明内容
本发明是为了克服上述存在的缺陷,而提供的一种基于特征字符型、对多种设备协议数据流的解析系统及以及基于该系统的协议数据流方法,使协议解析具有良好的适配性,通用性更强。
本发明解决上述问题所采用的技术方案是解析系统由特征字符集存储模块、协议规则存储模块、待解析数据流存储模块、解析模块组成。特征字符集存储模块是由各种可能出现的字符规则协议所组成,保存在物理存储地址中,可读可写。协议规则存储模块由一系列的字符组成的,是特征字符集的子集,可读可写。待解析数据流存储模块保存在RAM中,是串口接收缓冲区,保存来自外设的数据流。待解析数据流存储模块经过协议规则分析后经解析模块输出数据流的解析结果。解析模块根据协议规则存储模块中的规则检索特征字符集,获得协议中特征字符描述的数据流各个字节的物理地址,并据此分解获得具体数据。特征字符集、协议规则存储在可读写的物理地址中如EEPROM、FLASH;解析模块由微处理器(8位和16位单片机、32位嵌入式系统)实现。
所述特征字符是一串中文内码,也可以是英文字符ASCII码,特征字符可以逗号分隔,或其他标点符号分隔。这些特征字符对应的是数据流中各个区域数据代表的物理(意义)对象。
所述协议规则特征字符、起始地址、长度说明组成,起始地址、长度说明一般固定为unsigned int类型,其范围0~65535、byte类型,其范围0-255。
本发明的有益效果是,基于特征字符的协议规则有利于实现对同类型的多种外设协议的描述,并据此解析设备的协议数据流,具有良好的后向兼容性、通用性优点。特征字符集、协议规则均可被修改配置,具有动态重载、开发时间短、移植性好等优点,提高了同类型不同仪器的协议处理质量和效率。


下面结合附图和实施例对本发明作进一步说明。
图1是本发明的框架结构图。
图2是本发明的一个解析流程图。
在图1中,1是特征字符集存储模块,2是协议规则存储模块,3是待解析数据流存储模块,4是解析模块。
在图1所示结构图中,特征字符集存储模块1是由各种可能出现的字符规则协议所组成,保存在物理存储地址中,可读可写。协议规则存储模块2由一系列的字符组成的,是特征字符集的子集,可读可写。待解析数据流存储模块3保存在RAM中,是串口接收缓冲区,保存来自外设的数据流。待解析数据流存储模块3经过协议规则分析后经解析模块4输出数据流的解析结果。
为了便于对本发明进一步理解,现结合图2所述的流程,做具体过程描述。
实施过程包括以下步骤步骤201分析同类型不同外设的数据流说明,整理归纳特征字符集,特征字符之间以标点符号(也可以是特征字符未出现的一些符号)分隔。
步骤202根据和具体外设通讯的要求,分析其数据流协议,设定对应于该外设的协议规则。
步骤203外设通讯的数据由串口接收保存到待解析数据流存储地址,只有在接收完成一批数据流后,进行步骤204,否则执行步骤209。
步骤204按照分隔符号,从特征字符集存储模块中分隔读取一串特征字符。
步骤205判断分隔读取到的特征字符是否是特征字符结束标志字符,如果是,则执行步骤209,否则执行步骤206。
步骤206在协议规则字符串中检索特征字符。
步骤207如果在协议规则中检索到特征字符,则执行步骤208,否则执行步骤204。
步骤208在协议规则中检索到特征字符后,获得起始地址和长度描述,并据此在待解析数据流中截取指定数据。
步骤209程序处理结束,退出。
权利要求
1.一种基于特征字符型的数据流多协议解析系统及方法,其特征是系统由特征字符集存储模块、协议规则存储模块、待解析数据流存储模块、解析模块组成,且基于该系统的协议数据流解析方法包括以下步骤(1)分析同类型不同外设的数据流说明,整理归纳特征字符集;(2)设定具体外设的协议规则;(3)和外设通讯,数据流接收完成后,根据特征字符,按照协议规则将数据流解析。
2.按照权利要求1所述的数据流多协议解析系统及方法,其特征是特征字符、协议规则均保存在存储器中,可保存、可修改;存储器可以是EEPROM或是FLASH。
3.按照权利要求1所述的数据流多协议解析系统及方法,其特征是特征字符可以是一串ASCII英文字符或是中文内码,特征字符之间可以逗号分隔,或其他标点符号分隔。
4.按照权利要求1所述的数据流多协议解析系统及方法,其特征是协议规则是一串ASCII英文字符或是中文内码。
5.按照权利要求1所述的数据流多协议解析系统及方法,其特征是协议规则由三部分组成特征字符、起始地址和长度说明,这三部分可以自由组合。
6.按照权利要求1所述的数据流多协议解析系统及方法,其特征是协议规则中的特征字符均可在特征字符集中找到。
7.按照权利要求1所述的数据流多协议解析系统及方法,其特征是起始地址、长度说明为unsigned int类型,其范围0~65535、byte类型,其范围0-255。
全文摘要
本发明涉及一种基于特征字符型的数据流多协议解析系统及方法。系统由特征字符集存储模块、协议规则存储模块、待解析数据流存储模块、解析模块组成。包括以下步骤首先,分析同类型不同外设的数据流说明,整理归纳特征字符集;其次,设定具体外设的协议规则;最后,在和外设通讯,数据流接收完成后,根据特征字符,按照协议规则将数据流解析。本发明的有益效果是,数据流解析具有良好的后向兼容性、通用性,开发时间短、移植性好,提高了同类型不同仪器的协议处理质量和效率。
文档编号H04L12/56GK1929473SQ20061013197
公开日2007年3月14日 申请日期2006年10月13日 优先权日2006年10月13日
发明者吴允平, 蔡声镇, 林亿芳, 李汪彪, 苏伟达, 吴进营 申请人:福建师范大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1