一种基于规则引擎的混合型协议的物联网平台制造技术

技术编号:27268218 阅读:13 留言:0更新日期:2021-02-06 11:32
一种基于规则引擎的混合型协议的物联网平台,该平台的总体架构自下而上包括接入层、持久层、服务层和应用层四个部分;接入层以MQTT协议和以LoRaWAN协议为代表的低功耗广域网LPWAN协议实现混合型协议接入,通过MQTT协议和LoRaWAN协议接入的设备,将采集到的设备上行数据上传到上层,同时也接收上层传递的下行数据并将下行数据转发给设备;应用层主要是面对用户的应用服务,通过超本文传输协议HTTP接口为用户提供平台功能,该功能包括用户管理、产品管理、设备管理、规则引擎配置、在线调试。本发明专利技术提供了一种基于规则引擎的混合型协议的物联网平台,旨在为中小型创业企业提供一个能够快速开发物联网应用、降低物联网开发成本、提高设备管理能力的解决方案。提高设备管理能力的解决方案。提高设备管理能力的解决方案。

【技术实现步骤摘要】
一种基于规则引擎的混合型协议的物联网平台


[0001]本专利技术涉及工业物联网
,尤其是涉及一种基于规则引擎的混合型协议的物联网平台。

技术介绍

[0002]随着移动互联网和移动智能终端的普及,我们见证及感受着信息与通信科技对于我们生活方式的改变。随着物联网技术的广泛推广和应用,连接感知层和应用层的物联网平台也在其中发挥着越来越重要的作用。目前物联网的应用场景多种多样,主要将物联网场景分为三类:第一类移动性较强,需进行时常切换,上行数据量小,如车辆等移动设备的位置管理;第二类是不需要移动,上行数据量较大,需要较宽的频率段,如继电器控制;第三类不需要进行移动,上行数据量小,长时间采集一次数据,如智能抄表。其中第一类与第二类物联网设备逐渐以MQTT代表的物联网通信协议进行传输数据,而第三类物联网设备由于场景的原因,主要使用低功耗广域网LPWAN(Low Power Wide Area Network)。然而,通常物联网接入端无法广泛应用于不同应用场景。用户也无法方便地根据一些暂时的、特定的需求作出任何个性化设置,而为用户提供个性化定制规则的服务,导致目前仍然缺少能够覆盖大部分物联网场景的解决方案。
[0003]目前物联网平台的发展现状,只支持主流物联网协议MQTT的物联网平台不足以支持物联网应用的发展。

技术实现思路

[0004]为了克服目前通信协议无法适应大部分场景的缺陷,本专利技术提供了一种基于规则引擎的混合型协议的物联网平台,旨在为中小型创业企业提供一个能够快速开发物联网应用、降低物联网开发成本、提高设备管理能力的解决方案。
[0005]本专利技术解决其技术问题所采用的技术方案是:
[0006]一种基于规则引擎的混合型协议的物联网平台,该平台的总体架构自下而上包括接入层、持久层、服务层和应用层四个部分;
[0007]接入层以MQTT协议和以LoRaWAN协议为代表的低功耗广域网LPWAN协议实现混合型协议接入,通过MQTT协议和LoRaWAN协议接入的设备,将采集到的设备上行数据上传到上层,同时也接收上层传递的下行数据并将下行数据转发给设备;
[0008]持久层提供平台基本的数据服务,包括关系型数据库MySQL、缓存数据库Redis、时序数据库InfluxDB;
[0009]服务层包括规则引擎和告警服务,通过规则引擎技术的Rete算法对逻辑规则进行处理;
[0010]应用层主要是面对用户的应用服务,通过超本文传输协议HTTP接口为用户提供平台功能,该功能包括用户管理、产品管理、设备管理、规则引擎配置、在线调试。
[0011]进一步,所述接入层的MQTT协议接入端包括设备接入的SDK包、权限校验模块以及
数据收发模块,设备接入的SDK包提供了MQTT协议的连接功能,对外上传和接收上下行数据;
[0012]权限校验模块以Mosquitto代理服务器鉴权插件为载体,在插件中进行设备接入和上下行数据的校验,同时插件还需要支持应用层的在线调试功能,该模块通过GO语言的CGO特性重新改写了鉴权插件,使得鉴权插件加入了RESTful结构的超文本传输协议HTTP权限校验和MQTT协议权限校验;
[0013]数据收发模块同时接收设备上传的数据以及上层下发的控制指令,是MQTT协议接入端对外的出入口,同时数据收发模块还要对接规则引擎的入口,将设备的上传数据通过消息队列MQ的方式推送到规则引擎。
[0014]再进一步,所述接入层的LoRaWAN协议接入端能够支持LoRaWAN协议,通过用户数据报协议UDP的方式向LoRa网关传递上层下发的数据信息以及接受LoRa网关上传的数据;
[0015]该接入端包括网桥以及LoRaServer,网桥在LoRaWAN协议接入端承担着承上启下的作用,能够将远距离无线传输LoRa调频技术传递的节点数据传递到配置好的网桥的用户数据报协议UDP端口上完成数据传递,同时网桥监听用户数据报协议UDP端口,订阅来自LoRaServer的消息队列MQ消息;
[0016]LoRaServer作为LoRaWAN协议接入端的主体部分,是LoRaWAN网络中连接网桥至网关和云平台的协议处理器,实现了LoRa设备的入网,处理上行数据、支持LoRaWAN ClassA与ClassC两种下行类型、处理介质访问控制MAC网络指令、对接规则引擎。
[0017]再进一步,所述服务层中规则引擎的架构包括规则解析器、数据转换模块以及应用规则引擎,
[0018]规则解析器采用了递归向下解析,找到每个点的记号后,进行各自的模块的解析,到了新的点又根据记号进行解析,如此往复,直到完成整个查询的解析节点;
[0019]数据转换模块能够将不同协议上传的轻量级数据交换格式JSON数据按规则进行转换,并且调用相应的应用规则引擎的接口,对转换后的数据进行规则匹配和流转;
[0020]应用规则引擎收到数据转换模块传递的转换后的设备数据,根据Topic进入对应的Rete网络进行规则匹配。
[0021]再进一步,所述规则引擎的流程包括以下步骤:
[0022]1)规则引擎启动时会获取数据库中已经缓存的规则,通过规则解析器将用户配置的规则解析成Topic、属性转换规则和触发条件,应用规则引擎根据规则触发条件递归形成规则推理网络;并且采用Redis Hash类型,添加“productKey|topic”为Hash表Key,规则的主键ID作为Field,属性转换规则为Value的缓存;
[0023]2)规则引擎订阅到消息队列MQ的消息,首先会先到缓存数据库Redis缓存获取所有“ProductKey|Topic”下的属性转换规则,将获取到的属性转换规则与订阅到的消息队列MQ消息通过数据转换模块并行处理得到转换后的设备数据,并将转换后的设备数据推入规则推理网络,经过应用规则引擎的规则匹配校验,过滤出成功匹配的规则的主键ID,并在数据库中获取到规则配置好的数据目的地,将转换好的数据推送出去,完成设备数据流转。
[0024]更进一步,所述规则引擎的流程还包括以下步骤:在规则引擎运行的过程中,某个产品添加了一条新的规则,规则引擎会同步更新规则推理网络、数据库和缓存数据库Redis缓存。
[0025]本专利技术的有益效果主要表现在:该平台能够同时接入包括消息队列遥测传输协议MQTT和以LoRaWAN协议为代表的低功耗广域网LPWAN协议的物联网设备,通过规则引擎的转化将LoRaWAN协议的物联网数据转化为普通物联网数据,不仅可以对设备上传的数据进行存储和处理,也可以下发应用层的控制指令给设备,实现设备控制功能。
附图说明
[0026]图1为本专利技术的混合型协议的物联网平台的总体架构图。
[0027]图2为本专利技术的MQTT协议接入端结构图。
[0028]图3为本专利技术的LoRaWAN协议接入端结构图。
[0029]图4为本专利技术的规则引擎架构图。
[0030]图5为本专利技术的规则引擎流程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于规则引擎的混合型协议的物联网平台,其特征在于:该平台的总体架构自下而上包括接入层、持久层、服务层和应用层四个部分;接入层以MQTT协议和以LoRaWAN协议为代表的低功耗广域网LPWAN协议实现混合型协议接入,通过MQTT协议和LoRaWAN协议接入的设备,将采集到的设备上行数据上传到上层,同时也接收上层传递的下行数据并将下行数据转发给设备;持久层提供平台基本的数据服务,包括关系型数据库MySQL、缓存数据库Redis、时序数据库InfluxDB;服务层包括规则引擎和告警服务,通过规则引擎技术的Rete算法对逻辑规则进行处理;应用层主要是面对用户的应用服务,通过超本文传输协议HTTP接口为用户提供平台功能,该功能包括用户管理、产品管理、设备管理、规则引擎配置、在线调试。2.如权利要求1所述的一种基于规则引擎的混合型协议的物联网平台,其特征在于:所述接入层的MQTT协议接入端包括设备接入的SDK包、权限校验模块以及数据收发模块,设备接入的SDK包提供了MQTT协议的连接功能,对外上传和接收上下行数据;权限校验模块以Mosquitto代理服务器鉴权插件为载体,在插件中进行设备接入和上下行数据的校验,同时插件还需要支持应用层的在线调试功能,该模块通过GO语言的CGO特性重新改写了鉴权插件,使得鉴权插件加入了RESTful结构的超文本传输协议HTTP权限校验和MQTT协议权限校验;数据收发模块同时接收设备上传的数据以及上层下发的控制指令,是MQTT协议接入端对外的出入口,同时数据收发模块还要对接规则引擎的入口,将设备的上传数据通过消息队列MQ的方式推送到规则引擎。3.如权利要求1或2所述的一种基于规则引擎的混合型协议的物联网平台,其特征在于:所述接入层的LoRaWAN协议接入端能够支持LoRaWAN协议,通过用户数据报协议UDP的方式向LoRa网关传递上层下发的数据信息以及接受LoRa网关上传的数据;该接入端包括网桥以及LoRaServer,网桥在LoRaWAN协议接入端承担着承上启下的作用,能够将远距离无线传输LoRa调频技术传递的节点数据传递到配置好的网桥的用户数据报协议UDP端口上完成数据传递,同时网桥监听用户数据报协议UDP端口,订阅来自LoRaServer的消息队列M...

【专利技术属性】
技术研发人员:王涌左楚涵陆卫鲍明月张琪张豪
申请(专利权)人:浙江工业大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1