一种物联网设备通信协议包动态挂载系统及方法与流程

文档序号:26503506发布日期:2021-09-04 06:27阅读:189来源:国知局
一种物联网设备通信协议包动态挂载系统及方法与流程

1.本发明涉及通信协议技术领域,尤其涉及一种物联网设备通信协议包动态挂载系统及方法。


背景技术:

2.本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
3.当前,随着物联网技术不断发展,物联设备的互联网+升级需求和范围不断扩大,应用场景从工业领域延伸到日常生活领域,物联设备无论是数量还是种类都在不断变化,对应的设备通信协议也随之不断变化,而在物联网系统中,需要连接各种不同类型的物联设备,对接不同的通信协议,系统一旦设计成型后,通信协议的格式就固定了,如果需要新增或者修改设备通信协议中的内容,则需要重新修改系统程序,设置重新设计系统架构,系统通用性差,维护成本高。


技术实现要素:

4.为了解决上述问题,本发明提出了一种物联网设备通信协议包动态挂载系统及方法,针对物联网协议的多样性和多变性,将通信协议组件化,通信消息格式化,实现系统对通信协议的无差别处理。
5.在一些实施方式中,采用如下技术方案:
6.一种物联网设备通信协议包动态挂载系统,包括:相互通信的物联网管理系统和物联网设备,所述物联网管理系统包含至少一个服务端网关通道,所述服务端网关通道内动态挂载相对应的协议包组件;
7.物联网设备与物联网管理系统进行数据交互时,根据物联网设备所属的服务端网关类型,将数据流发送到对应的网关通道中;所述网关通道根据数据的协议格式,进行协议包的动态挂载和适配,匹配对应的通信协议。
8.在另一些实施方式中,采用如下技术方案:
9.一种物联网设备通信协议包动态挂载方法,包括:
10.将通信协议制作成通信协议包的形式,作为独立的组件协议包组件动态挂载在物联网设备对应的服务端网关通道中;
11.进行数据交互时,根据物联网设备所属的服务端网关类型,将数据流发送到对应的网关通道中;
12.所述网关通道根据数据的协议格式,进行协议包的动态挂载和适配,匹配对应的通信协议。
13.与现有技术相比,本发明的有益效果是:
14.(1)本发明将通信协议制作成通信协议包的形式,作为独立的组件为物联设备提供通信协议的内容定义功能。物联网系统以服务端的形式物联设备提供对应的通信协议链
路管理,协议的新增和变更不再影响整个系统的稳定性,针对每个设备协议,制作成对应协议的通信协议包,以组件的形式加载到对应的设备中,在通讯过程中,设备通过自动识别对设备通信协议包进行动态的挂载,实现系统与协议的解耦。设备协议的变更不再对系统产生任何影响,同时协议的动态挂载提高的协议的灵活性和可用性。
15.(2)本发明提供统一的消息管理机制,在动态挂载的过程中,将设备消息进行统一的格式化,之后交由系统进行消息管理,提高系统的通用性和灵活性,降低系统的维护成本。
16.本发明的其他特征和附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本方面的实践了解到。
附图说明
17.图1是本发明实施例中物联网设备通信协议包动态挂载系统结构示意图;
18.图2是本发明实施例中协议包动态挂载方法工作流程示意图;
19.图3是本发明实施例中系统消息机制统一处理及消息转发过程示意图;
20.图4是本发明实施例中系统消息数据处理流程示意图;
21.图5是本发明实施例中协议功能示意图。
具体实施方式
22.应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本发明使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。
23.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
24.本发明涉及到的名词含义解释如下:
25.设备:物理网系统中的某个特定的设备;
26.网络组件:用于管理各种网络服务(mqtt,tcp等)、动态配置和启停。只负责接收,发送报文,不负责任何处理逻辑。
27.协议:用于自定义消息解析规则,用于认证、将设备发送给平台报文解析为平台统一的报文,以及处理平台下发给设备的指令。
28.设备网关:负责平台侧统一的设备接入,使用网络组件处理对应的请求以及报文,使用配置的协议解析为平台统一的设备消息(devicemessage),然后推送系统。
29.实施例一
30.在一个或多个实施方式中,公开了一种物联网设备通信协议包动态挂载系统,参照图1,具体包括:
31.相互通信的物联网管理系统和物联网设备,物联网管理系统包含至少一个服务端网关通道,服务端网关通道内动态挂载相对应的协议包组件;
32.物联网设备与物联网管理系统进行数据交互时,根据物联网设备所属的服务端网
关类型,将数据流发送到对应的网关通道中;网关通道根据数据的协议格式,进行协议包的动态挂载和适配,匹配对应的通信协议。
33.具体地,结合图2,物联网管理系统中包含多个服务端网关通道,协议包组件动态挂载在各自的服务端网关通道中,分散的物联网设备在与系统进行数据交互时,会根据其所属的服务端网关类型,将数据流发送到对应的网关通道中,网关通道会根据数据的协议格式,进行协议包的动态挂载和适配,匹配对应的通信协议。
34.如果通信协议发生了变更,只需要将协议包组件移除修改,修改完成后添加到系统,即可实现动态挂载功能,对物联网管理系统本身不会产生任何影响。新增设备协议时,只需要在对应的服务端网关通道中添加协议包,即可实现动态挂载。
35.本实施例中,消息组件对于消息的处理采用物联网管理系统统一设备消息定义的方式。
36.物联网管理系统使用自定义的协议包将物联网设备上报的报文解析为平台统一的消息,来进行统一管理。
37.所述的统一消息机制与物模型中的定义相同,物模型主要由属性(property),功能(function),事件(event)组成;物模型是系统的设备模型定义。
38.统一消息机制主要由deviceid,messageid,headers,timestamp组成。
39.其中,deviceid为设备的唯一标识,messageid为消息的唯一标识,headers为消息头,通常用于对自定义消息处理的行为,如是否异步消息,是否分片消息等。timestamp时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。它的提出主要是为物联网信息提供一份电子证据,以证明用户的某些信息的产生时间。
40.messageid通常由平台自动生成,如果设备不支持消息id,可在自定义协议中通过map的方式来做映射,将设备返回的消息与平台的messageid进行绑。
41.属性消息,获取设备属性(readpropertymessage)对应设备回复的消息readpropertymessagereply;修改设备属性(writepropertymessage)对应设备回复的消息writepropertymessagereply;设备上报属性(reportpropertymessage)由设备上报。
42.需要注意的是:设备回复的消息是通过messageid进行绑定,messageid应该注意要全局唯一,如果设备无法做到,可以在编解码时通过添加前缀等方式实现。
43.功能消息,调用设备功能到消息(functioninvokemessage)由平台发往设备,对应到返回消息functioninvokemessagereply。
44.事件消息,事件消息eventmessage由设备端发往平台。
45.结合图3,设备信息通过动态挂载进入系统,通过物联网管理系统统一格式化的消息定义,对设备信息进行格式转化,通过统一的消息机制进入系统数据流中,物联网管理系统对消息的相关处理之后,通过对应的格式转化,反馈到对应的动态协议包,通知设备;在这个过程中,由于物联网管理系统对数据的处理是基于统一的消息机制,设备的协议对于系统是无差别的,这种方式使得系统具有非常高的稳定性和可扩展性。
46.系统消息处理流程如图4所示,具体包括如下流程:
47.设备上报数据,经过动态挂载匹配对应的消息解析机制,消息解析合法,进入消息统一处理机制,否则反馈设备并丢弃消息。
48.通过消息统一处理机制进行协议统一,协议不合法或者格式不合法,反馈设备并
丢弃消息。消息合法,则判断消息类型,若是鉴权类消息,进行设备鉴权,鉴权成功则建立连接,否则,反馈设备并丢弃消息。若是设备信息,则进行设备的数据上报,进入系统数据流。
49.本实施例中,参照图5,针对物联网协议的多样性和多变性,通过对各种通信协议的深入研究,将拆分为静态功能和动态功能,其中通信链路的链接断开、设备的在线检查、设备的通信握手等功能作为静态功能部分,协议的具体内容作为动态功能部分。
50.静态功能部分,在物联网管理系统中将设备管理功能进行统一扩展,创建包括tcp协议、mqtt协议、websocket协议等多种常用协议的服务网关中心。并形成服务网关中心管理功能和动态组件挂载功能。统一设备连接管理,多协议适配(tcp,mqtt,udp,coap,http等),屏蔽网络编程复杂性,灵活接入不同厂家不同协议的设备。
51.动态功能部分,如图1中虚线部分,将协议包的数据交互功能已组件的形式开发成单独的服务包。在系统定义通信协议时,只需要将服务包上传并给定服务名称,即可在系统中动态的对协议包进行挂载,无需任何系统的改动。
52.设备接入的核心是协议包,无论是直连设备,或者是云云对接,都可以在自定义协议包里进行处理。
53.在接入一个设备时,首先根据设备以及设备接入文档(报文说明),将设备物模型的属性、功能以及事件设计好。
54.属性用于定义一些指标数据,如:电压、温度等。属性都应该是简单的数据类型,如:int,float,string等,避免使用结构体等复杂类型。
55.功能用于定义设备具有的一些可执行动作,例如:消音、关灯、云台控制等。根据情况设计好输入参数和输出参数。
56.事件用于定义设备在特定条件时发生的动作,如:火警、检测到人脸、通常为结构体类型,用于保存比较复杂的数据。
57.协议包开发,使用策略模式来定义功能码,以及不同功能码对应的解析规则。如:使用枚举来定义功能码。
58.本实施例中,使用偏移量直接处理报文。将对报文处理的类封装为独立的类,然后在开发过程中,使用单元测试验证处理是否正确。
59.本实施例给出了通信协议包组件化的方法,使得物联网系统与通信协议解耦,设备协议的变更不再对系统产生任何影响,同时协议的动态挂载提高的协议的灵活性和可用性。
60.实施例二
61.在一个或多个实施方式中,公开了一种物联网设备通信协议包动态挂载方法,具体包括:
62.将通信协议制作成通信协议包的形式,作为独立的组件协议包组件动态挂载在物联网设备对应的服务端网关通道中;
63.进行数据交互时,根据物联网设备所属的服务端网关类型,将数据流发送到对应的网关通道中;
64.所述网关通道根据数据的协议格式,进行协议包的动态挂载和适配,匹配对应的通信协议。
65.通信协议变更时,将相对应的协议包组件在服务端网关通道中移除并进行修改,
修改完成后添加到服务端网关通道内,实现协议包组件动态挂载。
66.新增物联网设备的通信协议时,在对应的服务端网关通道中添加通信协议包,实现动态挂载。
67.另外,在动态挂载的过程中,将接收到的物联网设备消息进行统一的格式化,然后进行消息统一管理。
68.经过动态挂载匹配对应的消息解析机制,如果消息解析不合法,则反馈设备并丢弃消息;
69.如果消息解析合法,则判断消息的类型:
70.若是鉴权类消息,进行设备鉴权,鉴权成功则建立连接,否则,反馈设备并丢弃消息;若是设备信息,则进行物联网设备的数据上报。
71.上述过程的具体实现方式已经在实施例一中进行了说明,此处不再详述。
72.上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1