今天給大家帶來基于阿裡雲 IoT 物聯網平台 + TSDB 時序時空資料庫 + Quick BI 報表三大雲産品組合實作樓宇環境監控端到端開發實戰。
少啰嗦,先看效果。

部署後效果
0.技術架構
本次 IoT 物聯網開發實戰我們在室内部署 4 個溫濕度傳感器,實時采集資料,每10秒發送到阿裡雲 IoT 物聯網平台,通過規則引擎寫入 TSDB時序資料庫。在Quick BI 工作台,建立資料報表以分鐘次元展示室内溫濕度變化曲線。
技術架構如下:
1.物聯網平台開發
1.1.免費開通阿裡雲 IoT物聯網雲服務:
https://www.aliyun.com/product/iot-deviceconnect
/>
1.2.建立産品室内溫濕度計器,選擇自定義品類,直連裝置,定義物模型,包含2個屬性溫度,濕度:
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 服務性能實戰