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