一种智能硬件接入的物联网云平台的方法
技术领域
本发明涉及物联网领域,特别涉及一种智能硬件接入的物联网云平台的方法。
背景技术
随着物联网的不断发展,物联网,大数据以及云服务等已经应用到各行各业。物联网平台作为iot技术应用的核心部分。性能及实施的便利性在整个物联网中起着关键的作用。现有的iot技术平台虽然已经应用在各产业中,但是在设备接入方面任然存在一些缺点:
1.现有的iot平台虽然提供了接入功能,但是接入成本高,还需要招入技术人员进行二次开发。
2.现有iot平台提供设备接入,但是仅仅提供一种网络协议,比如一些私有协议的适配和扩展没有办法进行接入平台。
3.现有iot平台没有提供配置自定义自动化规则功能,需要自己做二次开发。
发明内容
发明目的:为了克服背景技术中的缺点,本发明实施例提供了一种智能硬件接入的物联网云平台的方法,能够有效解决上述背景技术中涉及的问题。
技术方案:
一种智能硬件接入的物联网云平台的方法,所述方法包括以下步骤:
网关接收并且解析智能硬件设备发送的消息,所述的消息符合云平台上制定的终端接入协议;
根据解析结果确定智能硬件的连接类型,网关监听到所述智能设备的连接则将获取的元数据消息推送至所述云平台;
所述云平台订阅到消息后,通过数据库进行鉴权于授权并比对设备用户信息,且将识别的智能设备接入方式通过物联网网关转发给协议适配器进行处理所述智能设备的认证与授权;
当所述智能设备认证与授权成功后,若数据采集模块接收到所述智能设备发送的数据报文则将接收到的数据写入缓存数据库和实时数据库并将业务数据发送到消息队列,若数据采集模块接收到来自物联网云平台或者用户设定的规则数据则通过适配的网络协议下发指定数据到接入且保持连接的智能设备;
定时数据处理模块通过消息队列接收实时数据并将所述实时数据转入大数据处理平台,定时业务模块根据设定的规则匹配和数据触发设定的事件;
大数据处理平台每隔预设时间处理数据并根据物联网云平台的用户配置的数据获取规则生成大屏动态数据。
作为本发明的一种优选方式,所述方法还包括以下步骤:
物联网网关负责数据的接收,存储以及下发报文消息,具体包括:
a、当智能设备接入后,物联网网关根据配置获取所述智能设备的接入信息,判断所述接入信息是否匹配标准工业物联网协议,若匹配其中至少一个协议则通过外部代理获取物联网设备数据;
b、当物联网网关接收到设备数据则将数据转发至消息队列并将最新数据写入至缓存数据库;
c、物联网网关提供API接口以供其他模块调用,其他模块通过所述API接口发送或下发数据;
d、物联网网关同时将传输的数据和消息预先用统一格式来映射并将数据同时发送到Kafka队列中;
e、物联网网关支持集群功能并持续收集数据,且在网络和硬件出现故障后提供数据;
f、智能设备接入物联网网关时,物联网网关首先通过数据进行鉴权于授权及比对token信息并识别智能设备接入放置,且将识别的接入方式转发给协议适配器进行处理设备的认证与授权。
作为本发明的一种优选方式,所述方法还包括以下步骤:
物联网网关模块将设备的数据信息转化为主题,接入的智能设备对应订阅主题或发布对应格式的数据主题到对应的消息队列。
作为本发明的一种优选方式,所述方法还包括以下步骤:
物联网云平台对接入的智能设备的主题进行配置,物联网网关根据配置完成的主题规则进行数据解析以及传输。
作为本发明的一种优选方式,所述方法还包括以下步骤:
智能设备鉴权成功后,接入信息记录存储于Mysq1数据库中,其中所述接入信息包括接入时间、接入设备名称、接入地点。
作为本发明的一种优选方式,通过消息队列接收到的数据进行规则匹配和事件匹配的方法是:
数据采集模块通过消息队列接收智能设备的实时数据并根据配置的规则判断接收的数据是否满足规则条件,若满足则根据用户配置相应规则事件作出对应动作。
作为本发明的一种优选方式,规则引擎由消息事件、规则阶段、规则链三部分组成;
消息事件:来自智能设备、智能设备生命周期事件、RESTAPI事件、RPC请求的传入数据;
规则节点:对传入消息执行的函数,若有若干不同的节点类型则对传入消息进行包括过滤、转换的操作;
规则链:节点之间通过关系相互连接,将规则节点的出站消息发送至下一连接的规则节点。
作为本发明的一种优选方式,规则判断的方法包括:
1)、创建规则节点,规则节点可以指定规则节点按其性质分组可以分为:过滤节点(用于消息过滤)、扩展节点(用于更新传入消息的元数据)、转换节点(用于更改消息字段)、动作节点(根据接收到的消息执行各种动作)、外部节点(用于与外部系统交互);
2)、每个规则节点可具有依赖于规则节点实现的特定配置参数;
3)、规则节点具有特定的UI功能,允许用户测试JS函数;单击测试过滤器函数后,将看到JS编辑器,它将允许替换输入参数并验证函数的输出;
4)、创建自己需求的规则节点后,在规则编辑器中输入脚本消息,在筛选器部分中执行JS脚本,确定后,将输出脚本执行中过滤的结果;
5)、再将创建的多个节点通过关系相互连接,形成规则链。将前一规则节点的输出消息发送到下一连接的规则节点;
6)、创建规则引擎消息,将最终输出的信息存放到规则引擎消息中。
本发明实现以下有益效果:
1.物联网云平台只需要简单的几个步骤即可以将设备接入至互联网,降低了接入的成本,无需进行二次开发。
2.物联网云平台提供配置界面,用户可以通过平台的规则引擎来处理设备的数据事件,可以配置规则节点对传入消息执行特定的函数。
3.物联网云平台提供用户在云端进行便捷地扩展终端的上传数据的参数。
4.物联网云平台采用微服务之基于Docker的分布式构建,Docker最大的特点是静态的镜像和动态的容器实例相结合,提供可部署、可运行的标准化应用交付件,保证了容灾,容错,高可用性,适合环卫,环保和工业行业里应用。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并于说明书一起用于解释本公开的原理。
图1为本发明其中一个示例提供的系统总体的架构图。
图2为本发明其中一个示例提供的设备接入IOT网关的架构图。
图3为本发明其中一个示例提供的数据采集服务的架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
实施例一
参考图1-3所示。
具体的,本实施例提供一种智能硬件接入的物联网云平台的方法,其特征在于,所述方法包括以下步骤:
S1、网关接收并且解析智能硬件设备发送的消息,所述的消息应符合云平台上制定的终端接入协议。
S2、根据解析结果确定智能硬件的连接类型,网关监听到所述智能设备的连接则将获取的元数据消息推送至所述云平台。
S3、所述云平台订阅到消息后,通过数据库进行鉴权于授权并比对设备用户信息,且将识别的智能设备接入方式通过物联网网关转发给协议适配器进行处理所述智能设备的认证与授权。
S4、当所述智能设备认证与授权成功后,若数据采集模块接收到所述智能设备发送的数据报文则将接收到的数据写入缓存数据库和实时数据库并将业务数据发送到消息队列,若数据采集模块接收到来自物联网云平台或者用户设定的规则数据则通过适配的网络协议下发指定数据到接入且保持连接的智能设备。
S5、定时数据处理模块通过消息队列接收实时数据并将所述实时数据转入大数据处理平台,定时业务模块根据设定的规则匹配和数据触发设定的事件。
S6、大数据处理平台每隔预设时间处理数据并根据物联网云平台的用户配置的数据获取规则生成大屏动态数据。
其中,接入的智能设备可通过工业标准的物联网协议(MQTT,CoAP和HTTP)等具有完整的TCP/IP协议栈实现设备连接,并支持云和内部部署。平台设备为支持工业标准的物联网协议(MQTT,CoAP和HTTP)及私有协议的服务器,负责整个接入协议的接收和发送,平台系统提供了设备的接入服务,定时业务服务,物联网网关服务,定时数据服务。该平台采用了分布式微服务架构,通过Docker虚拟容器化的方式运行,每个Docker都装载着一个微服务。
其中,物联网网关提供简单的api集成,并封装好与网联网云平台的常见任务;常见任务有:设备数据原始报文提供,本地数据持久性存储以及协议消息转换器/适配器。对外提供给应用程序开发人员,开发人员可选择Python、Go、C/C++和其他语言,并通过外部MQTT代理或OPC-UA服务器连接到本网关。支持其他协议的设备可以通过实现自定义扩展连接到网关。
作为本发明的一种优选方式,所述方法还包括以下步骤:
物联网网关负责数据的接收,存储以及下发报文消息,具体包括:
a、当智能设备接入后,物联网网关根据配置获取所述智能设备的接入信息,判断所述接入信息是否匹配标准工业物联网协议,若匹配其中至少一个协议则通过外部代理获取物联网设备数据。
b、当物联网网关接收到设备数据则将数据转发至消息队列并将最新数据写入至缓存数据库。
c、物联网网关提供API接口以供其他模块调用,其他模块通过所述API接口发送或下发数据。
d、物联网网关同时将传输的数据和消息预先用统一格式来映射并将数据同时发送到Kafka队列中。
e、物联网网关支持集群功能并持续收集数据,且在网络和硬件出现故障后提供数据。
f、智能设备接入物联网网关时,物联网网关首先通过数据进行鉴权于授权及比对token信息并识别智能设备接入放置,且将识别的接入方式转发给协议适配器进行处理设备的认证与授权。
作为本发明的一种优选方式,所述方法还包括以下步骤:
物联网网关模块将设备的数据信息转化为主题,接入的智能设备对应订阅主题或发布对应格式的数据主题到对应的消息队列。
作为本发明的一种优选方式,所述方法还包括以下步骤:
物联网云平台对接入的智能设备的主题进行配置,物联网网关根据配置完成的主题规则进行数据解析以及传输。
其中,智能设备的数据信息转化为主题的方法:当智能设备的数据信息为设备本身时,数据是从物联网云平台到接入设备端,因此配置一个到设备属性为data1,则对应的主题为/company/设备序列号/用户-发送/data1,相应地接入设备需要订阅该主题;当设备属性为从设备时,数据是由物联网云平台从接入设备端读取数据,配置一个从设备属性为data2,则对应的主题为/company/设备序列号/用户-接收/data2,相应地接入设备端需要发布数据到该主题。
作为本发明的一种优选方式,所述方法还包括以下步骤:
智能设备鉴权成功后,接入信息记录存储于Mysq1数据库中,其中所述接入信息包括接入时间、接入设备名称、接入地点。
作为本发明的一种优选方式,通过消息队列接收到的数据进行规则匹配和事件匹配的方法是:
数据采集模块通过消息队列接收智能设备的实时数据并根据配置的规则判断接收的数据是否满足规则条件,若满足则根据用户配置相应规则事件作出对应动作。
作为本发明的一种优选方式,规则引擎由消息事件、规则阶段、规则链三部分组成。
消息事件:来自智能设备、智能设备生命周期事件、RESTAPI事件、RPC请求的传入数据。
规则节点:对传入消息执行的函数,若有若干不同的节点类型则对传入消息进行包括过滤、转换的操作。
规则链:节点之间通过关系相互连接,将规则节点的出站消息发送至下一连接的规则节点。
其中,规则引擎是一个易于使用的框架,用于构建事件的工作流。
作为本发明的一种优选方式,规则判断的方法包括:
规则判断的方法包括:
1)、创建规则节点,规则节点可以指定规则节点按其性质分组可以分为:过滤节点(用于消息过滤)、扩展节点(用于更新传入消息的元数据)、转换节点(用于更改消息字段)、动作节点(根据接收到的消息执行各种动作)、外部节点(用于与外部系统交互)。
2)、每个规则节点可具有依赖于规则节点实现的特定配置参数,比如“fieldScript”规则节点可以通过处理传入数据的自定义JS函数进行配置。“out-mail”节点配置允许指定邮件服务器连接参数。
3)、规则节点具有特定的UI功能,允许用户测试JS函数;单击测试过滤器函数后,将看到JS编辑器,它将允许替换输入参数并验证函数的输出。
4)、创建自己需求的规则节点后,在规则编辑器中输入脚本消息,在筛选器部分中执行JS脚本,确定后,将输出脚本执行中过滤的结果。
5)、再将创建的多个节点通过关系相互连接,形成规则链。将前一规则节点的输出消息发送到下一连接的规则节点。
6)、创建规则引擎消息,将最终输出的信息存放到规则引擎消息中;规则引擎消息包含以下信息:消息ID(基于时间的,通用唯一标识),消息发起人(设备或其他实体标识符),消息类型,消息的有效主体(JSON主体),元数据。
上述实施例只为说明本发明的技术构思及特点,其目的是让熟悉该技术领域的技术人员能够了解本发明的内容并据以实施,并不能以此来限制本发明的保护范围。凡根据本发明精神实质所作出的等同变换或修饰,都应涵盖在本发明的保护范围之内。