明天给大家带来基于阿里云 IoT 物联网平台 + Tablestore 表格存储数据库 + DataV大屏 三大云产品组合搭建实时环境监控大屏的开发实战。
少啰嗦,先看成果。
部署后成果
1.技 术 架 构
咱们在室内每层部署 4 个温湿度传感器,实时采集数据,每10秒发送到阿里云 IoT 物联网平台,通过规定引擎写入 表格存储 Tablestore数据库。在DataV大屏工作台,创立可视化大屏,实时展现室内温湿度变动曲线。
技术架构如下:
2.IoT 物联网开发
2.1 创立产品和注册设施
首先,咱们登陆 IoT 物联网平台的控制台,创立产品温湿度环境监测器,并在性能定义中增加温度和湿度两个属性,如下图:
而后,咱们在产品下注册一个设施,获取设施身份证书,用于设施和IoT云平台建设MQTT长连贯时的身份认证。
2.2 配置云产品流转
1.4.配置规定引擎,实时流转数据到 TSDB中
编写数据处理 SQL:
残缺 SQL 参考:
SELECT deviceName() as deviceName, timestamp('yyyy-MM-dd HH:mm:ss') as time, attribute('floor') as floor, items.temperature.value as temperature, items.humidity.value as humidity FROM "/a1kRdXDgN0v/+/thing/event/property/post"
数据转发:
2.3 设施端程序脚本
咱们以 Node.js 脚本来模仿设施上报温度和湿度,代码如下:
// 依赖mqtt库const mqtt = require('aliyun-iot-mqtt');// 设施身份var options = { productKey: "设施 productKey", deviceName: "设施 deviceName", deviceSecret: "设施 deviceSecret", regionId: "cn-shanghai"};// 建设连贯const client = mqtt.getAliyunIotMqttClient(options);//模仿 设施 上报数据(原始报文)setInterval(function() { client.publish( `/sys/${options.productKey}/${options.deviceName}/thing/event/property/post` , getPostData() );}, 10 * 1000);// 模仿 温湿度function getPostData() { const payload = { id: Date.now(), version:"1.0", params: { temperature: 10+Math.floor(Math.random() * Math.floor(50)), humidity: 10+Math.floor(Math.random() * Math.floor(50)) }, method: "thing.event.property.post" } console.log("payload=[ " + payload + " ]") return JSON.stringify(payload);}
3.表格存储 Tablestore
3.1 创建表格存储数据表
咱们在表格存储控制台,创立数据库iotMsg,并创立iot_thermometer_data 数据表,其中以 deviceName 和 time 为主键列,如下图:
3.2 实时存储的环境数
据当设施启动后,咱们就会在数据库中看到实时的温湿度数据,如下图:
4.DataV 可视化大屏
设施实时上报数据通过IoT物联网平台实时流转到表格存储数据库后,接下来的工作就是把数据可视化出现进去,这时就用到了DataV可视化大屏云产品。
4.1 增加数据源
咱们进入DataV控制台,在我的数据下,增加数据源,输出表格存储实例iot_data的拜访门路和AccessKey身份信息,如下图:
4.2 搭建大屏页面
配置完数据源后,在DataV管制的我的可视化上面创立一个大屏,依据业务需要增加可视化组件,并为每个组件配置相干的数据源,以及过滤器用来适配数据格式,如下图:
4.3 公布实时监控大屏
当咱们实现组件的数据源配置后,就能够公布可视化大屏了。公布后,用户能够通过浏览器拜访,如下图:
往期举荐
1、不讲武德,下班摸鱼,监控老板行踪
2、微信小程序 MQTT模拟器
3、自建MQTT集群迁徙阿里云IoT实际
4、IoT+TSDB+Quick BI 搭建楼宇环境监控
物联网平台产品介绍详情:https://www.aliyun.com/produc...
阿里云物联网平台客户交换群