天天看點

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

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

少啰嗦,先看效果。

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

部署後效果

   0.技術架構   

本次 IoT 物聯網開發實戰我們在室内部署 4 個溫濕度傳感器,實時采集資料,每10秒發送到阿裡雲 IoT 物聯網平台,通過規則引擎寫入 TSDB時序資料庫。在Quick BI 工作台,建立資料報表以分鐘次元展示室内溫濕度變化曲線。

技術架構如下:

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

   1.物聯網平台開發   

1.1.免費開通阿裡雲 IoT物聯網雲服務:

https://www.aliyun.com/product/iot-deviceconnect

/>

1.2.建立産品室内溫濕度計器,選擇自定義品類,直連裝置,定義物模型,包含2個屬性溫度,濕度:

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰
1.3.注冊裝置,擷取身份三元組。
基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰
1.4.配置規則引擎,實時流轉資料到 TSDB中
基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

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 連接配接串

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

2.2.IoT裝置資料寫入TSDB的記錄

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

   3.Quick BI   

3.1.開通Quick BI服務,添加資料源,輸入TSDB連接配接參數。

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

資料源添加成功

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

3.2.基于資料源的溫度和濕度名額,建立資料集。

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

3.3.建立資料儀表闆,并根據業務需求編輯圖表。

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

3.4.釋出儀表闆。

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

3.5.在浏覽器中檢視樓宇環境監控報表。

基于 IoT+TSDB+Quick BI 雲産品架構的樓宇環境監控實戰

【往期回顧】

1、39張IoT傳感器工作原理GIF圖彙總 2、IoT 裝置發送 MQTT 請求的曲折經曆 3、20元體 Arduino 環境監測儀開發 4、智能手持測溫槍開發實踐 5、JMeter 壓測 MQTT 服務性能實戰