使用百度智能云物联网核心套件打造物联网智能应用系统

不久前,百度天工智能物联网平台正式推出物联网核心套件——IoT Core。IoT Core以物接入、规则引擎、物联网边缘等多项能力整合为基础,能够更好的帮助企业实现自身物联网体系从零到一的迅速构建以及实现设备终端、边缘服务、云平台之间的连接和数据交互,集中、高效地满足客户的核心业务需求。今天和大家分享一下如何使用IoT Core构建物联网应用系统。 

一个完整的物联网应用系统一般由传感器/设备、网关、物联网平台、存储服务、业务服务、PC/移动终端业务APP等共同组成。IoT Core在其中承担连接设备与服务、设备与业务APP、设备与存储的重要工作,通过物联网核心套件,可以简单快速实现设备与其他系统组件的连通。 

设备接入 

设备接入也称为设备上云,是构建物联网应用的第一步,首先实现设备与云端建立连接通道。IoT Core支持设备通过MQTT、CoAP、http/https三种协议接入平台,同时通过topic方式灵活定义设备与应用服务交互的数据接口。 

直连接入 

对于有配备了联网模组(4G/5G、WIFI模组、有线网卡等)可以直接连接互联网的设备,如智能手机、智能电视、工控机等,开发者可以综合考虑硬件能耗、算力在上述三种协议中选择。 

网关接入 

对于本身不具备联网能力的设备,可以借助网关接入平台。网关作为具备直接联网接入的直连设备,代理子设备与IoT Core进行双向通讯,同时网关可以将子设备原有的Modbus、ProfiBus、蓝牙、ZigBee等协议读取、解析出来上报给平台。 

云云对接 

对于已接入自建平台或其他平台的存量设备受限于不支持OTA等原因,设备无法直接接入IoT Core,只能保持与原平台的连接,通过原有平台接入服务器上报数据或接收指令。这种情况下,在平台迁移到IoT Core过程中,可以通过云云对接方式,将存量设备和新增设备统一进行管理和对接业务应用。IoT Core提供http/https方式接入,可以在服务端开发代理服务将设备上报到原平台的数据映射转发到IoT Core,业务应用仅需要对接IoT Core即可,而不需要分别对接多个平台。

设备监控 

设备监控作为设备联网上云的最基本应用,手机端APP、PC端web应用可以实时显示设备最新状态。IoT Core支持将为应用分发MQTT连接,每一个应用端都可以作为一个长连接客户端与平台保持通讯,设备实时数据可以通过MQTT主题直接推送给应用端,更高级的用法可以同步过规则引擎将设备上报的原始数据经过过滤条件判断和格式转换后推送给应用端。 

 

数据采集和存储 

一般情况下,为了对设备、业务进行持续监测、分析、预测,最常用的手段即采集设备数据并进行存储。IoT Core提供了通用上行接口$iot/{deviceName}/events用于上报数据,开发者也可以根据不同的业务服务自定义任意主题作为数据上报接口。同时根据业务需要自定义上报的数据格式,最后通过规则引擎将数据格式转换为时序数据库TSDB支持的写入格式,自动存储到TSDB当中。 

 

事件告警 

设备联网后可以实时监测设备的行为,可以在设备端、边缘端监测到设备运行错误、告警、日志等事件,上报到云端实时通知。通过规则引擎,可以对设备上报的事件进行条件过滤和判断,后发布给不同的MQTT主题,触发业务侧服务对事件进行相应的处理。 

控制设备 

很多时候我们做设备上云的目的不仅仅是采集和监测,更重要的是我们可以根据监测结果或业务需要通过自动化程序或APP向设备发布指令,远程控制设备。IoT Core提供多种方式向设备下发指令消息。 

MQTT方式下发 

应用端或服务端通过MQTT方式直接向设备端发布消息,设备只需要订阅相应主题即可实时接收指令数据。 

HTTP/HTTPS方式下发 

服务端亦可以通过服务请求的方式向设备下发消息,此方式不需要服务端与IoT Core保持长连接,可以实现按需调用。  

规则引擎转发 

对于根据不同条件触发设备动作或者设备间联动的场景,可以利用规则引擎实现,规则引擎支持实时监测设备数据,当数据符合设定的条件时,自动向预先设定的其他设备自动发布消息,以实现设备联合控制的场景。 

实时数据 

在生产实践中,很多时候我们同样希望业务服务获得设备的实时数据,以便在云端进行实时分析、预测、感知等。使用IoT Core用户业务服务器可以通过多种方式获得设备的实时数据。 

数据转发到消息队列 

最常用的方式是通过规则引擎将设备消息转发至Kafka,业务服务实时消费数据进行业务处理。Kakfa具备高吞吐、低延时特点以及削峰填谷的作用,可以在保证消息实时性的基础上,同时解决瞬时消息流量激增造成的业务服务压力。 

数据转发到MQTT 

在设备上报消息量规模较小时,也可以使用规则引擎将消息发布到指定的MQTT主题,业务服务器通过订阅相应的MQTT主题实时接收到设备数据。 

数据处理 

IoT Core提供多种计算产品的对接能力,可以将设备数据分发到不同的计算产品进行进一步处理。 

  • 分发到流式计算进行实时统计分析 
  • 分发到函数计算进行数据解析、复杂业务处理等 
  • 分发到对象存储、数据仓库等,最终提供给大数据分析、机器学习等离线计算产品 

可视化 

天工物联网平台多个产品搭配组合可搭建出丰富的业务应用,物影子、时序数据库TSDB、物可视相互打通,物可视可以获取设备数据通过简单的拖拉拽构建出丰富的可视化应用。 

 

应用集成 

面向企业构建应用系统时,难以避免遇到异构应用系统集成问题。随着企业业务发展,不断引入多个应用系统来帮助我们管理设备和分析数据,如故障预测、能耗分析、稼动率、故障率等。 

利用IoT Core提供的数据存储和实时数据能力,配合规则引擎将数据格式转换成应用接口需要的格式,屏蔽设备硬件协议差异,快速实现应用对接。