分享

一文入门百度天工IoT平台

 京城客家人老黄 2017-10-09

产品概述

为了更好的推动物联网在中国的发展,百度云正式推出了物接入服务,全面助力构建物联网社会。IoT Hub 适用于五大业务场景:

智慧能源(百度园区)

智能硬件

工业4.0(风电厂)

智能家居

车联网

在各场景实现的主要功能包括:

设备监控,通过接入天工平台随时监控物理设备运行情况

数据存储,通过TSDB存储历史数据,支持实时查询

运维报警,通过规则引擎、机器学习完成故障预测、故障报警

PAAS平台,让ISV解决了设备安全连接与多种类型设备都低成本接入的难题,让其专注于SaaS级的服务,让企业人力成本更聚焦,更高效。

产品市场现状

盈利模式

1. 按消息收费

平台有每月一百万条免费消息额度,超过的按照一定数量MQTT消息进行收费。

2. 按数据收费

平台提供1百万点/月的免费额度,超过的按照x百万点/每月进行收费。

重点应用领域

暂未知,通过百度天工的开发者群了解,ISV数量已初具规模,应用场景在设备监控领域已有数个成功案例。

产品结构分析

★产品技术架构

天工技术架构

一文入门百度天工IoT平台

Edge SDK:百度云面向设备端提供的SDK,可以安装在单机设备或企业网关上。安装了SDK的设备只需要配置一个云端生成的密钥便可以完成与云端连接,实现与云端通讯配置。Edge SDK支持SSL方式连接,保证用户数据安全。

SDK运行在客户端。目前包含三个具体的SDK:

1) modbus: modbus物解析网关。Modbus(TCP和RTU)协议数据的采集、上传,并且在云端进行解析和存储。

2) device-management: 新版物管理SDK。

3) bacnet: bacnet网关。BACNET(IP)协议数据的采集、上传,并且在云端进行存储。

例如,百度modbus网关是一个端上的程序,需要运行在用户设备的现场。它采集用户modbus从站的数据,并且上传到百度物解析服务,然后根据解析项目配置的解析设置,进行解析。最后入库。他通过定义订阅MQTT主题以接受管理配置(采集策略),然后执行相关的采集任务,采集到数据后,依然通过MQTT协议上数据上传到云端。

百度BACNet网关是一个端上的程序,需要运行在用户BACNet设备所在的网络上的计算机或者开发板上。它模拟成一个BACNet IP设备,并且根据配置,采集网络内其他BACNet设备的数据,并且上传到指定的物接入主题。 它主要基于bacnet-stack-0.8.3开发,并且依赖paho.mqtt.c, cJSON等库。

物接入:物接入是全托管的云服务,可以在智能设备与云端之间建立安全的双向连接,并通过主流的物联网协议(如MQTT)通讯,实现从设备端到云端以及从云端到设备端的安全稳定的消息传输。

就是MQTT代理服务器。

厂端数据上送是通过在本地PC安装edge SDK,作为数据采集的主站,同时支持以MQTT协议将数据上送至云端。

物管理:主要用于对接入云端的设备进行管理和操作。物管理需要与百度云的物接入服务配合使用,对接入云端的设备进行一站式设备管理,可应用于设备的层级管理、监测、遥控、固件升级和维护保养等各个场景。

物解析:在云端为用户提供工业协议解析服务(比如Modbus和OPC UA)。当云端收到设备端返回的原始数据后,结合用户提供的设备通讯地址表,物解析服务可将数据解析成直接可用于存储和分析的数据。

规则引擎:作为百度云天工智能物联网平台的重要组件,用于将信息根据预先设置好的规则转发至百度云的其它服务。用户可通过规则引擎设定消息处理规则,对规则匹配的消息采取相应的转发操作,如推送给手机APP等;也可以将设备消息无缝转发到时序数据库、百度Kafka和对象存储中进行存储。

时序数据库:用于管理时间序列数据的专业化数据库。区别于传统的关系型数据库,时序数据库针对时间序列数据的存储、查询和展现进行了专门的优化,从而获得极高的数据压缩能力、极优的查询性能,特别适用于物联网应用场景。

天算智能大数据平台:提供了完备的大数据托管服务、智能API、众多业务场景模板以及人脸识别、文字识别、语音识别等服务,帮助用户实现智能业务。

天工平台可与天算智能大数据平台实现无缝对接,助力企业快速具备海量数据分析能力。

合作伙伴应用&企业应用:提供了API接口,可与企业应用或其他第三方平台进行对接。

★各层协议及通讯方式

edge sdk与厂端设备:modbus,opc ua(还未支持),BACnet。

装有edge sdk的PC与物接入:MQTT协议,支持ssl。

物接入与物解析和规则引擎:MQTT协议。

规则引擎:基于MQTT主题处理消息;主题中的消息必须是JSON格式。

产品功能规格

物接入

功能点

一文入门百度天工IoT平台

试用过程举例:

在 物接入 界面,新增 物接入实例 ,定义云端mqtt服务器地址

一文入门百度天工IoT平台

物接入实例 下挂的 设备 定义厂端物理设备:

一文入门百度天工IoT平台

设备 身份 定义连接的用户名:

一文入门百度天工IoT平台

设备 策略 定义mqtt的topic(主题):

一文入门百度天工IoT平台

自动生成连接的密钥:

一文入门百度天工IoT平台

连接用户名:melon/device0922

连接秘钥:zvG+GpeHiteiQ1OzN6AR8PIWOW2eXAH52xSaJKBlY8g=

对接成功后其他mqtt客户端可以订阅该主题,也可通过“规则引擎”对消息进行处理,然后送往不同的数据目的地(如时序数据库TSDB、Kafka,以及另一个topic)。

物解析

一文入门百度天工IoT平台

物解析的输出的数据格式为json,消息示例如下:

一文入门百度天工IoT平台

物解析和物接入的关系:

物解析底层依赖于物接入。物解析是在物接入的基础上,自动创建了一些配置。比如在物解析中新建第一个网关时,系统会自动在物接入中新建一个实例,同时在这个实例中配置设备(thing)、身份(principal)、策略(policy)、主题(topic)等。物解析服务端和网关设备之间,通过这个实例来发布消息或订阅消息。

规则引擎

规则引擎就是通过灵活的设定规则,将设备传上云端的数据,送往不同的数据目的地(如时序数据库TSDB、Kafka、对象存储BOS等)以达到不同的业务目标。

支持创建规则和调试规则。

一文入门百度天工IoT平台

物管理

一文入门百度天工IoT平台

流式计算(还未上线)

灵活强大的数据事件处理引擎,可以用来设置针对流式处理数据的实时分析计算工具

平台交互设计

入口

整体均采用web方式进行交互,在百度云官网登录后,进入各功能模块模块的入口如下:

一文入门百度天工IoT平台

物接入

一文入门百度天工IoT平台

物接入详细使用过程见3.3.1.2.

物解析

一文入门百度天工IoT平台

物解析所挂子设备的对应维护点表界面如下:

一文入门百度天工IoT平台

规则引擎

规则引擎主要面向消息配置sql查询语句,并配置转发目的地。

一文入门百度天工IoT平台

时序数据库TSDB

支持线上支付后开通不同配置的时序数据库,数据库支持线上的统计数据查看:

一文入门百度天工IoT平台

详细数据可通过导出进行查看,导出文件格式:CSV(UTF-8)

一文入门百度天工IoT平台

★★天工规则引擎设计

使用过程介绍

1) 创建数据源

配置物接入IoT Hub打通云端和设备端之间的双向通道。

2) 创建目的地

目的地即规则引擎对消息处理完后,转发的目的地。目前支持三种目的地配置:

百度Kafka

时序数据库TSDB

物接入主题

3) 新建规则

一文入门百度天工IoT平台一文入门百度天工IoT平台

查询字段:从消息中筛选出来用于后续操作(如:转发至TSDB或百度Kafka)的数据。如果填写“*”,则将原样转发payload中的所有数据至目的地。如果将消息转发至TSDB,需要预先对消息格式进行调整,具体操作请查看将消息转发至TSDB。

主题:消息来源的物接入主题。

约束条件:后续操作的触发条件。缺省情况下,转发每一条消息至目的地。

查询字段和约束条件中支持的操作符包括算术运算、逻辑运算等等

4) 验证规则

满足条件做转发:

一文入门百度天工IoT平台

不满足条件,不做转发:

一文入门百度天工IoT平台


应用实例

智慧路灯(官方)

如下图所示为百度云天工智能物联网平台智慧路灯解决方案架构。

一文入门百度天工IoT平台

路灯接入可以采用多种方式,例如:3G/4G,电力载波,LPWAN等,无论采用哪种方式,用户只需在接入设备中预装Edge SDK,都能轻松打通路灯和百度云之间的双向安全通道,实现将路灯接入百度云的物接入服务。路灯可以实时将设备状态、电压电流、环境温度、地理坐标等信息发送至物接入服务。同时在工程师的智能终端上预装APP对接百度云,可实时上报工程师的地理位置坐标。

物接入接收到路灯上送的消息后,可将消息分别转发至物管理和规则引擎服务。

用户可在规则引擎上制定策略,实现以下操作:

· 当路灯下线或电压电流超过阈值时,检索距离现场最近的维护工程师,并自动发送告警、路灯坐标等信息给指定的维护工程师。工程师的智能终端可对接百度地图服务,自动在地图上显示待维修路灯的位置。

· 将电压电流、环境温度等信息转发至时序数据库,并对接天算大数据平台,用于后续的数据挖掘。

用户可在物管理服务中对路灯进行分层管理,可以将每个路灯划分到不同的“市/区/街道”下,后续可在不同维度下对路灯进行操作,例如:统一关闭/打开某一条街道下的路灯。同时物管理服务提供了API接口,可方便用户自研或对接第三方管理平台。

总结:在终端设备上安装edge SDK,天工可实现路灯设备数据上送和转发,现阶段没有实现对路灯进行控制。

单链路灯控制(自编)

需求:

当照度传感器A实时值低于500流明时,开启灯A。假设照度传感器A和灯A均支持modbus协议。

实现方案:

1. 本地安装百度modbus网关,与照度传感器A和灯A通过以太网连接;

2. 百度modbus网关采用MQTT协议实时上传照度传感器A的实时值至物解析;

3. 物解析将消息转发至规则引擎,当判断照度传感器A实时值低于500流明时,发送一个包含desired改变的payload(含义为开灯)的mqtt消息至物影子-灯A;

4. 当物影子-灯A接收到'desired'相关属性的更新后,会diff设备影子中'reported'和“desired”相关字段,将diff后的结果发送到delta主题。百度modbus网关通过订阅delta主题,可将设备状态同步到“desired”的状态。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多