一种基于二进制解析协议自定义的物联网信息交互方法与流程

文档序号:18081153发布日期:2019-07-06 10:05阅读:675来源:国知局
一种基于二进制解析协议自定义的物联网信息交互方法与流程

本发明实施例涉及物联网通信技术领域,具体涉及一种基于二进制解析协议自定义的物联网信息交互方法。



背景技术:

当前物联网设备的上报协议主要有两种,json协议,二进制解析协议。json协议,使用方便,容易解析,容易应用,但是对于物联网芯片的性能要求高,有些低端的芯片无法支持。而且传统硬件产商以前的产品如果普遍使用的不是josn协议,向json协议迁移,成本较高。二进制解析协议,性能好,协议简短,但是不具有通用性,不容易解析,芯片的支持性比较好,而且从老的物联网系统向物联网平台移植特别麻烦。



技术实现要素:

为此,本发明实施例提供一种基于二进制解析协议自定义的物联网信息交互方法,以解决现有技术中开发成本高,不具有通用性,不直观的问题。

为了实现上述目的,本发明的实施方式提供如下技术方案:

一种基于二进制解析协议自定义的物联网信息交互方法,包括以下步骤:

创建属性模块,每个属性模块至少包含索引标识与属性类型;

创建协议规则,搭建由至少一个属性模块组成的协议逻辑框架,若属性模块的数量多于1个,则需设置属性模块之间的逻辑关系线路,生成二进制解析协议,添加协议识别码;

二进制数据拆解,接收物联网终端上传的二进制数据,根据二进制数据头部的识别码匹配协议识别码调取二进制解析协议,根据二进制解析协议中设定的字节/位规则对二进制数据进行拆分,得到拆分属性模块;

数据解析,根据属性类型将拆分属性模块匹配到协议逻辑框架中的属性模块上,并按照协议逻辑框架的逻辑关系线路进行重组,得到json格式数据。

在本发明的再一个实施例中,所述协议逻辑框架内包含复合属性模块,所述复合属性模块可拆分为至少2个不同属性类型的拆分属性模块,添加拆分属性模块之间的逻辑关系线路。

在本发明的再一个实施例中,所述属性模块内包括属性名称、功能分类及属性定义。

在本发明的再一个实施例中,所述创建协议规则之后接收检测二进制数据,根据检测二进制数据头部的识别码匹配协议识别码,调取对应的二进制解析协议,根据二进制解析协议中设定的字节/位规则对二进制数据进行拆分,得到检测拆分属性模块,根据属性类型将拆分属性模块匹配到二进制解析协议中的属性模块上,并按照属性模块之间的逻辑关系线路进行重组,验证检测结果的准确性。

根据本发明的实施方式,具有如下优点:

本发明实施例提供的一种基于二进制解析协议自定义的物联网信息交互方法通过设置一种通用的解析二进制上报数据的协议框架,支持多种的二进制上报数据的解析,不需要用户编写代码,就可以完成二进制上报数据的解析,便于形成直观、易用的协议规则配置界面及二进制协议解析测试方法,便于二进制协议解析的自定义及计算推广。

附图说明

为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。

本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。

图1为本发明实施例提供的一种基于二进制解析协议自定义的物联网信息交互方法的方法流程图;

图2为本发明实施例提供的二进制解析协议的搭建结构图。

图中:

1、属性模块;2、复合属性模块;3、逻辑线路关系;4、拆分属性模块。

具体实施方式

以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本说明书中所引用的如“上”、“下”、“左”、“右”、“中间”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。

如图1所示,一种基于二进制解析协议自定义的物联网信息交互方法,包括以下步骤:

创建属性模块1,每个属性模块1至少包含索引标识与属性类型,索引标识用于搭建二进制建协议规则时系统搜寻调取属性模块1,属性类型用于解析后生成的字段的数据类型。属性模块1内还包括属性名称、功能分类及属性定义,属性名称指方便阅读的名字,如温度、pm2.5,功能分类可分为普通与特殊,属性定义的作用是用来描述,特定值的意义,如1表示正常,2表示启动,3表示关闭。如空气净化器上传的二进制数据进行解析,上传的二进制数据包括pm2.5、温度及二氧化碳浓度,索引标识分别为pm25、temperature、co2,功能分类均为普通,属性类型依次为整数型、浮点型、整数型,属性定义均为“无”,备注框可填写空气pm2.5、当前室内温度、当前室内二氧化碳浓度。

创建协议规则,如图2所示,搭建由至少一个属性模块1组成的协议逻辑框架,若属性模块1的数量多于1个,则需设置属性模块1之间的逻辑关系线路,生成二进制解析协议,添加协议识别码,协议识别码是二进制解析协议的唯一标识,协议识别码设置在每个生成的二进制数据的头部,协议识别码的内容可根据所要解析的二进制数据的标识码设定,用于后期为二进制数据匹配解析协议。如索引解析pm2.5、温度及二氧化碳浓度的属性模块1,逻辑关系线路为pm2.5属性模块1、温度属性模块1与二氧化碳浓度属性模块1之间串联连接,形成先后解析顺序。

为了增加解析协议的多样性,满足复杂二进制数据的解析需求,协议逻辑框架内可增加复合属性模块2,所述复合属性模块2可拆分为至少2个不同属性类型的拆分属性模块4,添加拆分属性模块4之间的逻辑关系线路。拆分属性模块4还可包含可拆分的符合属性模块1,设置方法与前述符合属性模块1相同,可实现多级拆分。如上述举例中温度属性模块1与pm2.5属性模块1串联连接的二氧化碳浓度属性模块1之间具有关联性,因此将两个属性模块1合并为一个与复合属性模块2,形成一级拆分逻辑关系。

二进制数据拆解,接收物联网终端上传的二进制数据,根据二进制数据头部的识别码匹配协议识别码,调取对应协议识别码的二进制解析协议,根据二进制解析协议中设定的字节/位规则对二进制数据进行拆分,得到拆分属性模块4。

数据解析,根据属性类型将拆分属性模块4匹配到协议逻辑框架中的属性模块1上,并按照协议逻辑框架的逻辑关系线路进行重组,得到json格式数据。

所述创建协议规则之后接收检测二进制数据,根据检测二进制数据头部的识别码匹配协议识别码,调取对应的二进制解析协议,根据二进制解析协议中设定的字节/位规则对二进制数据进行拆分,得到检测拆分属性模块4,根据属性类型将拆分属性模块4匹配到二进制解析协议中的属性模块1上,并按照属性模块1之间的逻辑关系线路进行重组,验证检测结果的准确性。

虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1