大型網(wǎng)站制作梅州網(wǎng)絡(luò)推廣
目錄
引言
1. Azure IoT Hub 節(jié)點簡介
2. 節(jié)點配置
2.1 基本配置示例
3. 使用場景
3.1 數(shù)據(jù)傳輸
3.2 數(shù)據(jù)分析
3.3 設(shè)備管理
4. 實際項目中的應(yīng)用
4.1 項目背景
4.2 項目需求
4.3 實現(xiàn)步驟
5. 總結(jié)
引言
ThingsBoard 是一個開源的物聯(lián)網(wǎng)平臺,提供了設(shè)備管理、數(shù)據(jù)收集、處理和可視化等功能。規(guī)則鏈是 ThingsBoard 中的一個強大功能,允許用戶定義復(fù)雜的業(yè)務(wù)邏輯來處理設(shè)備上報的數(shù)據(jù)。在規(guī)則鏈中,
Azure IoT Hub
節(jié)點用于將消息發(fā)送到 Microsoft Azure IoT Hub。
ThingsBoard從入門到實戰(zhàn)課程,深入透析底層原理,快速搭建自己的IOT平臺_嗶哩嗶哩_bilibiliThingsBoard從入門到實戰(zhàn)課程,深入透析底層原理,快速搭建自己的IOT平臺共計36條視頻,包括:1、ThingsBoard項目介紹、2、ThingsBoard前端Vue版本代碼編譯、3、ThingsBoard本地后端源碼編譯等,UP主更多精彩視頻,請關(guān)注UP賬號。https://www.bilibili.com/video/BV1CH36egEDM/?spm_id_from=333.999.0.0&vd_source=5b535ac3589f53abe431d7f6afc44ff4
1. Azure IoT Hub 節(jié)點簡介
Azure IoT Hub
節(jié)點的主要作用是在規(guī)則鏈執(zhí)行過程中,將消息發(fā)送到 Azure IoT Hub。Azure IoT Hub 是 Microsoft Azure 提供的一項完全托管的服務(wù),用于可靠地連接、監(jiān)視和管理數(shù)十億個 IoT 設(shè)備。通過使用 Azure IoT Hub
節(jié)點,可以將設(shè)備上報的數(shù)據(jù)或處理結(jié)果發(fā)送到 Azure IoT Hub,再由其他 Azure 服務(wù)或系統(tǒng)消費這些消息,實現(xiàn)數(shù)據(jù)的進一步處理和分析。
2. 節(jié)點配置
- IoT Hub 連接字符串:提供 Azure IoT Hub 的連接字符串,用于身份驗證。
- 設(shè)備 ID:指定要發(fā)送消息的設(shè)備 ID。
- 消息:指定要發(fā)送的消息內(nèi)容,可以是靜態(tài)文本或動態(tài)變量。
2.1 基本配置示例
{"connectionString": "HostName=youriothub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=yoursharedaccesskey","deviceId": "yourdeviceid","message": "This is a test message from ThingsBoard"
}
3. 使用場景
Azure IoT Hub
節(jié)點在多種場景下都非常有用,特別是在需要將設(shè)備數(shù)據(jù)發(fā)送到 Azure 云服務(wù)進行進一步處理和分析的場景中。以下是一些具體的應(yīng)用場景:
3.1 數(shù)據(jù)傳輸
在需要將設(shè)備上報的數(shù)據(jù)發(fā)送到 Azure IoT Hub 時,可以通過 Azure IoT Hub
節(jié)點將數(shù)據(jù)發(fā)送到指定的設(shè)備。
{"connectionString": "HostName=youriothub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=yoursharedaccesskey","deviceId": "yourdeviceid","message": "Device ${msg.deviceId} reported data: ${msg.data}"
}
3.2 數(shù)據(jù)分析
在需要對設(shè)備數(shù)據(jù)進行實時分析時,可以通過 Azure IoT Hub
節(jié)點將數(shù)據(jù)發(fā)送到 Azure IoT Hub,再由 Azure Stream Analytics 或其他 Azure 服務(wù)進行處理和分析。
{"connectionString": "HostName=youriothub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=yoursharedaccesskey","deviceId": "yourdeviceid","message": "Device ${msg.deviceId} reported data: ${msg.data}"
}
3.3 設(shè)備管理
在需要管理和控制設(shè)備時,可以通過 Azure IoT Hub
節(jié)點將命令或配置發(fā)送到指定的設(shè)備。
{"connectionString": "HostName=youriothub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=yoursharedaccesskey","deviceId": "yourdeviceid","message": "Command to device: ${msg.command}"
}
4. 實際項目中的應(yīng)用
下面是一個實際項目中的例子,展示如何在智能家居系統(tǒng)中使用 Azure IoT Hub
節(jié)點。
4.1 項目背景
假設(shè)我們正在開發(fā)一個智能家居系統(tǒng),該系統(tǒng)需要支持用戶通過手機應(yīng)用控制家中的燈光、空調(diào)等設(shè)備,并記錄設(shè)備的狀態(tài)和使用情況。此外,還需要將設(shè)備數(shù)據(jù)發(fā)送到 Azure IoT Hub 進行進一步處理和分析。
4.2 項目需求
- 記錄設(shè)備的狀態(tài),例如當(dāng)前溫度、濕度等。
- 記錄設(shè)備的使用情況,例如開關(guān)次數(shù)、能耗等。
- 實現(xiàn)實時反饋,確保用戶能夠及時了解操作結(jié)果。
- 將設(shè)備數(shù)據(jù)發(fā)送到 Azure IoT Hub 進行進一步處理和分析。
4.3 實現(xiàn)步驟
-
部署設(shè)備:
- 在家中安裝智能燈光、空調(diào)等設(shè)備,并連接到 ThingsBoard 平臺。
-
創(chuàng)建規(guī)則鏈:
- 添加?
Azure IoT Hub
?節(jié)點,用于將設(shè)備上報的數(shù)據(jù)發(fā)送到 Azure IoT Hub。 - 添加其他處理節(jié)點,如設(shè)備控制、狀態(tài)查詢和數(shù)據(jù)存儲。
- 添加?
-
配置規(guī)則鏈
- 配置?
Azure IoT Hub
?節(jié)點,用于發(fā)送設(shè)備數(shù)據(jù)。
- 配置?
{"connectionString": "HostName=youriothub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=yoursharedaccesskey","deviceId": "yourdeviceid","message": "Device ${msg.deviceId} reported data: ${msg.data}"
}
- 處理數(shù)據(jù):
- 根據(jù)業(yè)務(wù)邏輯,動態(tài)地將設(shè)備數(shù)據(jù)發(fā)送到 Azure IoT Hub。
// 發(fā)送設(shè)備數(shù)據(jù)到 Azure IoT Hub
public void sendDeviceDataToAzureIoTHub(String deviceId, String data) {// 配置 Azure IoT Hub 節(jié)點JsonNode config = JsonNodeFactory.instance.objectNode().put("connectionString", "HostName=youriothub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=yoursharedaccesskey").put("deviceId", deviceId).put("message", "Device " + deviceId + " reported data: " + data);azureIoTHubNode.sendMessage(config);
}
-
前端界面:
- 開發(fā)一個前端界面,顯示設(shè)備的狀態(tài)和使用情況。
- 提供一個界面,讓用戶能夠查看和管理設(shè)備的狀態(tài)和使用情況,以及接收通知。
-
數(shù)據(jù)查詢:
- 使用 SQL 查詢,獲取設(shè)備的狀態(tài)和使用情況。
SELECT * FROM device_status WHERE device_id = 'device1' ORDER BY timestamp DESC LIMIT 10;
SELECT * FROM device_usage WHERE device_id = 'device1' ORDER BY timestamp DESC LIMIT 10;
5. 總結(jié)
Azure IoT Hub
節(jié)點在 ThingsBoard 規(guī)則鏈中是一個非常有用的工具,可以幫助將消息發(fā)送到 Azure IoT Hub,實現(xiàn)數(shù)據(jù)的進一步處理和分析。通過合理地使用Azure IoT Hub
節(jié)點,可以在數(shù)據(jù)傳輸、數(shù)據(jù)分析和設(shè)備管理等場景中,確保系統(tǒng)的高效性和靈活性。無論是在智能家居、工業(yè)監(jiān)控還是其他物聯(lián)網(wǎng)應(yīng)用中,Azure IoT Hub
節(jié)點都能發(fā)揮重要作用。
???? 🌐?項目地址
Things Vuehttp://thingsvue.tpson.cn:7772/#/login?redirect=/tb-home/index
賬號:admin@thingsboard.org 密碼:admin123456
🎽?安裝使用
獲取項目代碼:
代碼地址https://gitee.com/tpsonwell_admin/thingsvue