明天给大家带来基于阿里云 IoT 物联网平台 + TSDB 时序时空数据库 + Quick BI 报表三大云产品组合实现楼宇环境监控端到端开发实战。
少啰嗦,先看成果。
部署后成果
0. 技术架构
本次 IoT 物联网开发实战咱们在室内部署 4 个温湿度传感器,实时采集数据,每 10 秒发送到阿里云 IoT 物联网平台,通过规定引擎写入 TSDB 时序数据库。在 Quick BI 工作台,创立数据报表以分钟维度展现室内温湿度变动曲线。
技术架构如下:
1. 物联网平台开发
1.1. 收费开明阿里云 IoT 物联网云服务:https://www.aliyun.com/produc…;
1.2. 创立产品室内温湿度计器,抉择自定义品类,直连设施,定义物模型,蕴含 2 个属性温度,湿度:
1.3. 注册设施,获取身份三元组。
1.4. 配置规定引擎,实时流转数据到 TSDB 中
1.5. 实现设施端开发,实时上报温湿度数据。咱们以 Node.js 脚本来模仿设施上报,代码如下:
// 依赖 mqtt 库
const mqtt = require('aliyun-iot-mqtt');
// 设施身份
var options = {
productKey: "device productKey",
deviceName: "device deviceName",
deviceSecret: "device 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);
}
2.TSDB 数据库
2.1. 创立时序数据库,并开明公网 TSQL 连贯串
2.2.IoT 设施数据写入 TSDB 的记录
3.Quick BI
3.1. 开明 Quick BI 服务,增加数据源,输出 TSDB 连贯参数。
数据源增加胜利
3.2. 基于数据源的温度和湿度指标,创立数据集。
3.3. 创立数据仪表板,并依据业务需要编辑图表。
3.4. 公布仪表板。
3.5. 在浏览器中查看楼宇环境监控报表。
【往期回顾】
1、39 张 IoT 传感器工作原理 GIF 图汇总
2、IoT 设施发送 MQTT 申请的波折经验
3、20 元体 Arduino 环境监测仪开发
4、智能手持测温枪开发实际
5、JMeter 压测 MQTT 服务性能实战
物联网平台产品介绍详情:https://www.aliyun.com/produc…
阿里云物联网平台客户交换群