視頻教程:?
ThingsBoard介紹_嗶哩嗶哩_bilibiliThingsBoard是一個(gè)基于Java的開源物聯(lián)網(wǎng)平臺(tái),旨在實(shí)現(xiàn)物聯(lián)網(wǎng)項(xiàng)目的快速開發(fā)、管理和擴(kuò)展。本課程主要從0到1帶你熟悉ThingsBoard,學(xué)習(xí)優(yōu)秀的物聯(lián)網(wǎng)變成思維與思想,主要有有一下幾點(diǎn):1、ThingsBoard相關(guān)介紹,以及為何在物聯(lián)網(wǎng)平臺(tái)火爆2、不同環(huán)境部署并運(yùn)行ThingsBoard項(xiàng)目3、從0到1搭建全新物聯(lián)網(wǎng)平臺(tái)4、利用規(guī)則鏈搭建自己的業(yè)務(wù)平臺(tái)5、多種方式把設(shè)備接入到Thi, 視頻播放量 7、彈幕量 0、點(diǎn)贊數(shù) 1、投硬幣枚數(shù) 0、收藏人數(shù) 1、轉(zhuǎn)發(fā)人數(shù) 0, 視頻作者 西西o0o, 作者簡介 基于IOT開發(fā)多年,講解開源ThingsBoard源碼講解,相關(guān)視頻:宜啟智控PRO通過MQTT接入物聯(lián)網(wǎng)平臺(tái)ThingsBoard演示,ThingsBoard使用Docker快速安裝,宜啟智控將支持MQTT私有云,利好物聯(lián)網(wǎng)平臺(tái)集成商及開發(fā)者,鍵盤:你干嘛???你按我干什么?,王炸!AI聲音克隆+Sora開源平替一鍵啟動(dòng),全網(wǎng)最簡單!,對(duì)話微軟程序員:資源管理器為什么會(huì)監(jiān)視360,從零開始學(xué)習(xí)大語言模型(一),開年王炸!OpenAI剛剛推出了AI視頻模型Sora??https://www.bilibili.com/video/BV1Xp421m75C/?spm_id_from=333.999.0.0&vd_source=2c25d693b3d4273a56b43c45b70e1896
1. Thingsboard 簡介
ThingsBoard是一個(gè)基于Java的開源物聯(lián)網(wǎng)平臺(tái),旨在實(shí)現(xiàn)物聯(lián)網(wǎng)項(xiàng)目的快速開發(fā)、管理和擴(kuò)展。它使用行業(yè)標(biāo)準(zhǔn)的物聯(lián)網(wǎng)協(xié)議(MQTT、CoAP和HTTP)實(shí)現(xiàn)設(shè)備連接,并支持云和本地部署。ThingsBoard結(jié)合了可擴(kuò)展性、容錯(cuò)性和高性能,確保數(shù)據(jù)不會(huì)丟失。
ThingsBoard集群可以處理數(shù)百萬個(gè)設(shè)備,提供高可用性和可擴(kuò)展性。該平臺(tái)還支持多種數(shù)據(jù)采集方式,包括從設(shè)備直接采集、通過網(wǎng)關(guān)采集以及使用其他云服務(wù)采集。用戶可以在云服務(wù)器上通過可自定義的儀表板查看或共享來自任意數(shù)量設(shè)備的數(shù)據(jù)。此外,ThingsBoard還提供了30多個(gè)可自定義的小部件,允許用戶為大多數(shù)物聯(lián)網(wǎng)用例構(gòu)建最終用戶自定義儀表板。
Thingsboard 分為專業(yè)版和社區(qū)版,社區(qū)版是開源的,專業(yè)版是收費(fèi)的。thingsboard 提供了30多個(gè)可自定義的小部件,允許為大多數(shù)物聯(lián)網(wǎng)用例構(gòu)建最終用戶自定義儀表板。官網(wǎng)地址:http://thingsboard.io/
2. Thingsboard 基本特點(diǎn)
提供設(shè)備、資產(chǎn)和客戶,并定義它們之間的關(guān)系。
-
警報(bào)管理:分析傳入的遙測(cè)數(shù)據(jù)并通過復(fù)雜的事件處理觸發(fā)警報(bào)。
-
設(shè)備管理:使用遠(yuǎn)程過程調(diào)用(RPC)控制設(shè)備。根據(jù)設(shè)備生命周期事件,REST API 事件,RPC 請(qǐng)求等構(gòu)建工作流
-
可擴(kuò)展性:可水平擴(kuò)展的平臺(tái),使用領(lǐng)先的開源技術(shù)進(jìn)行構(gòu)建。
-
數(shù)據(jù)可視化:?從設(shè)備和資產(chǎn)收集并可視化數(shù)據(jù)。提供了現(xiàn)成的30個(gè)可配置小部件,并能夠使用內(nèi)置編輯器創(chuàng)建自己的小部件。內(nèi)置線圖,數(shù)字和模擬儀表,地圖等等。
-
容錯(cuò):沒有單點(diǎn)故障,集群中的每個(gè)節(jié)點(diǎn)都是相同的。沒有主人工人或熱備用人員。自動(dòng)檢測(cè)到節(jié)點(diǎn)故障。可以在不停機(jī)的情況下更換故障節(jié)點(diǎn)。使用可靠的 NoSQL 數(shù)據(jù)庫復(fù)制持久數(shù)據(jù)。
-
強(qiáng)大而高效:單個(gè)服務(wù)器節(jié)點(diǎn)可以處理成千上萬個(gè)設(shè)備,具體取決于用例。ThingsBoard 集群可以處理數(shù)百萬個(gè)設(shè)備。
-
可自定義的:通過可自定義的小部件和規(guī)則引擎節(jié)點(diǎn),輕松添加新功能。使用可自定義的規(guī)則鏈,窗口小部件和傳輸實(shí)現(xiàn)來擴(kuò)展默認(rèn)平臺(tái)功能。除了MQTT,CoAP和HTTP支持之外,ThingsBoard用戶還可以使用自己的傳輸實(shí)現(xiàn)或自定義現(xiàn)有協(xié)議的行為。
-
持久:永遠(yuǎn)不會(huì)丟失您的數(shù)據(jù)。
-
遙測(cè)數(shù)據(jù)收集功能:?設(shè)計(jì)動(dòng)態(tài)且響應(yīng)迅速的儀表板,并向您的客戶提供設(shè)備或資產(chǎn)遙測(cè)和見解??梢钥煽康厥占痛鎯?chǔ)遙測(cè)數(shù)據(jù),以應(yīng)對(duì)網(wǎng)絡(luò)和硬件故障。使用可自定義的Web儀表板或服務(wù)器端API訪問收集的數(shù)據(jù)。
3. Thingsboard架構(gòu)
Thingsboard有兩種架構(gòu)形式,微服務(wù)架構(gòu)和 Monolithic 架構(gòu),兩個(gè)架構(gòu)的基本功能一致,該文檔主要介紹 Monolithic 架構(gòu),架構(gòu)圖如下:
Device端:數(shù)據(jù)采集,需要支持MQTT或HTTP等協(xié)議
通訊通道:數(shù)據(jù)采集監(jiān)聽
規(guī)則引擎:對(duì)數(shù)據(jù)進(jìn)行過濾,處理核心業(yè)務(wù)規(guī)則服務(wù)側(cè) API 和 GW
用? 戶? 端:用戶和應(yīng)用
1.?設(shè)備連接
支持MQTT、CoAP、HTTP(S) 等協(xié)議,通過以上協(xié)議設(shè)備可以連接到信息網(wǎng)絡(luò),比如4G、5G。
2. 引擎規(guī)則
TingsBoard Rule Engine 處理來自設(shè)備的信息,并觸發(fā)稱為插件的可配置模塊。
3. 核心服務(wù)
TingsBoard包含一組允許管理管理以下實(shí)體的核心服務(wù):
設(shè)備及其憑據(jù)
規(guī)則鏈及規(guī)則節(jié)點(diǎn)
租戶 Tenants,客戶 Customers 和平臺(tái)的關(guān)系是:平臺(tái) =>租戶 =>客戶
小部件和儀表盤
警報(bào)和事件
規(guī)則能夠調(diào)用此API的某個(gè)子集。例如,規(guī)則可以為某些設(shè)備創(chuàng)建報(bào)警
4. 服務(wù)端API網(wǎng)關(guān)
每個(gè) ThingsBoard 服務(wù)器都為注冊(cè)用戶提供 REST API。system telemetry 服務(wù)允許使用REST API 和 websocket 管理屬性并獲取時(shí)間序列數(shù)據(jù)。系統(tǒng) RPC 服務(wù)提供 REST API 以自定義命令推送到設(shè)備。
測(cè)量數(shù)據(jù)處理:
RPC 過程:
根據(jù)發(fā)起者,Thinsboard RPC 功能可以分為兩種類型:設(shè)備發(fā)起的 RPC 調(diào)用和服務(wù)器發(fā)起的 RPC 調(diào)用。為了使用更熟悉的名稱,我們將源自設(shè)備的 RPC 調(diào)用命名為客戶端 RPC 調(diào)用,將源自服務(wù)器的 RPC 調(diào)用命名為服務(wù)器端 RPC 調(diào)用。
服務(wù)器端RPC調(diào)用可以分為單向和雙向:
-
單向RPC:請(qǐng)求沒有發(fā)送確認(rèn)就發(fā)送到設(shè)備,并且顯然不提供設(shè)備的任何響應(yīng)。僅當(dāng)在可配置的超時(shí)時(shí)間內(nèi)沒有與目標(biāo)設(shè)備的活動(dòng)連接時(shí),RPC調(diào)用才會(huì)失敗。
-
雙向RPC:請(qǐng)求被發(fā)送到設(shè)備,并期望在特定的超時(shí)時(shí)間內(nèi)接收到來自設(shè)備的響應(yīng)。服務(wù)器端請(qǐng)求將被阻止,直到目標(biāo)設(shè)備回復(fù)該請(qǐng)求為止。
規(guī)則引擎:
規(guī)則:過濾器,處理器,Action
插件:處理消息,服務(wù)側(cè)API請(qǐng)求,WebSocket和應(yīng)用,持久化和查詢事件,插件間RPC通信
遙測(cè)插件-系統(tǒng)插件,負(fù)責(zé)處理與設(shè)備屬性和遙測(cè)有關(guān)的各種請(qǐng)求。
RPC 插件-允許使用 REST API 對(duì)設(shè)備執(zhí)行 RPC 調(diào)用。RPC 調(diào)用將使用支持的網(wǎng)絡(luò)協(xié)議傳遞到設(shè)備。
設(shè)備消息傳遞插件-允許分配給相同客戶交換事件的設(shè)備。
發(fā)送郵件插件-允許發(fā)送電子郵件。您可以指定郵件服務(wù)器屬性。有關(guān)更多詳細(xì)信息,請(qǐng)參見插件文檔。
Kafka插件-允許將遙測(cè)消息推送到Apache Kafka。有關(guān)更多詳細(xì)信息,請(qǐng)參見插件文檔。
RabbitMQ插件-允許將遙測(cè)消息推送到RabbitMQ。有關(guān)更多詳細(xì)信息,請(qǐng)參見插件文檔。
REST API呼叫插件-允許使用REST API將遙測(cè)消息推送到外部服務(wù)器。有關(guān)更多詳細(xì)信息,請(qǐng)參見插件文檔。時(shí)間RPC插件-允許從設(shè)備發(fā)送RPC請(qǐng)求以獲取當(dāng)前服務(wù)器端時(shí)間戳。
IoT網(wǎng)關(guān):
在所有的物聯(lián)網(wǎng)中,IOT 網(wǎng)關(guān)是非常重要的一環(huán),大部分(60%-80%)設(shè)備都屬于啞終端設(shè)備(不支持 IP),這些設(shè)備都需要通過網(wǎng)關(guān)才能夠接入到云平臺(tái)。因此 Thingsboard 支持通過 IOT 網(wǎng)關(guān)進(jìn)入到平臺(tái),下面是 IOT 網(wǎng)關(guān)的整體架構(gòu)圖。
(其中最新版本的采用Python語言進(jìn)行編寫,建議可以自定義接收端口后,發(fā)送到ThingsBoard)
目前網(wǎng)關(guān)支持:
-
MQTT擴(kuò)展,用于控制,配置和收集使用現(xiàn)有協(xié)議連接到外部MQTT代理的IoT設(shè)備的數(shù)據(jù)。
-
OPC-UA擴(kuò)展,用于從連接到OPC-UA服務(wù)器的IoT設(shè)備收集數(shù)據(jù)。
-
Sigfox擴(kuò)展,用于從連接到Sigfox Backend的IoT設(shè)備收集數(shù)據(jù)。
-
Modbus擴(kuò)展,用于從通過Modbus協(xié)議連接的物聯(lián)網(wǎng)設(shè)備收集數(shù)據(jù)。
4. 系統(tǒng)環(huán)境
????????1、操作系統(tǒng)
Thingsboard兼容多種操作系統(tǒng),包括Linux、Windows和macOS。
????????2、Java環(huán)境
Thingsboard需要Java運(yùn)行環(huán)境。推薦使用Java 11(OpenJDK 11),確保Java環(huán)境正確安裝并配置環(huán)境變量。
????????3、數(shù)據(jù)庫系統(tǒng)
ThingsBard平臺(tái)目前支持三種數(shù)據(jù)庫選項(xiàng):
- SQL:將所有實(shí)體和遙測(cè)存儲(chǔ)在SQL數(shù)據(jù)庫中,建議使用PostgreSQL數(shù)據(jù)庫HSQLDB可用于本地開發(fā)和測(cè)試不建議將HSQLDB用于任何其他用途。
- 混合:將所有實(shí)體存儲(chǔ)在SQL數(shù)據(jù)庫中,并將所有遙測(cè)存儲(chǔ)在NoSQL數(shù)據(jù)庫中。
- 混合 (PostgreSQL + Cassandra):將所有實(shí)體存儲(chǔ)在PostgreSQL數(shù)據(jù)庫中,并將時(shí)間序列數(shù)據(jù)存儲(chǔ)在Cassandra數(shù)據(jù)庫中。
- 混合 (PostgreSQL + TimescaleDB):將所有實(shí)體存儲(chǔ)在PostgreSQL數(shù)據(jù)庫中,并將時(shí)間序列數(shù)據(jù)存儲(chǔ)在Timescale數(shù)據(jù)庫中。
5. 主架構(gòu)
????????1、ThingsBoard設(shè)計(jì)為:
- 擴(kuò)展性:可水平擴(kuò)展的平臺(tái)使用領(lǐng)先的開源技術(shù)構(gòu)建。
- 容錯(cuò)性:沒有單點(diǎn)故障集群中的每個(gè)節(jié)點(diǎn)都是相同的。
- 健壯性:單個(gè)服務(wù)器節(jié)點(diǎn)可以根據(jù)使用情況處理以萬級(jí)別的設(shè)備,集群可以處理數(shù)百萬級(jí)別設(shè)備。
- 持久化:永遠(yuǎn)不會(huì)丟失你的數(shù)據(jù)。
- 自定義:使用可自定義的部件和規(guī)則引擎節(jié)點(diǎn)可以輕松添加新功能。
????????2、規(guī)則引擎
ThingsBoard規(guī)則引擎是系統(tǒng)的心臟,負(fù)責(zé)處理傳入的消息。
- 規(guī)則引擎使用Actor來實(shí)現(xiàn)。主要實(shí)體的actor:規(guī)則鏈和規(guī)則節(jié)點(diǎn)。
- 規(guī)則引擎節(jié)點(diǎn)可以加入集群,其中每個(gè)節(jié)點(diǎn)負(fù)責(zé)傳入消息的某些分區(qū)。
- 在隔離模式下規(guī)則引擎處理特定租戶的消息。
- 在共享模式下規(guī)則引擎處理多個(gè)租戶的消息。
- ThingsBoard規(guī)則引擎可能以兩種模式運(yùn)行:共享和隔離
- 規(guī)則引擎從隊(duì)列中訂閱傳入的數(shù)據(jù)并且僅在處理完消息后才對(duì)其進(jìn)行確認(rèn)。
6. 內(nèi)置功能
- 設(shè)備管理: 提供了對(duì)物聯(lián)網(wǎng)設(shè)備的注冊(cè)、分組、監(jiān)控和遠(yuǎn)程控制功能。
- 數(shù)據(jù)收集和存儲(chǔ): 負(fù)責(zé)從各類IoT設(shè)備高效地收集和存儲(chǔ)大量數(shù)據(jù)。
- 數(shù)據(jù)可視化: 通過自定義儀表板和小部件,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)可視化和分析。
- 規(guī)則引擎: 使用戶能夠定義復(fù)雜的業(yè)務(wù)邏輯,自動(dòng)化處理和響應(yīng)數(shù)據(jù)。
- 安全: 提供了全面的安全機(jī)制,包括數(shù)據(jù)加密和設(shè)備鑒權(quán),確保平臺(tái)和數(shù)據(jù)的安全。
- 集成和API: 支持與外部系統(tǒng)和服務(wù)的廣泛集成,增強(qiáng)平臺(tái)的功能和靈活性。
提供了豐富的API和集成選項(xiàng),可以輕松地與其他系統(tǒng)和應(yīng)用程序集成。
7. 適用場(chǎng)景
- 智能城市:監(jiān)控和管理城市基礎(chǔ)設(shè)施。
- 工業(yè)物聯(lián)網(wǎng):實(shí)現(xiàn)工廠自動(dòng)化和過程優(yōu)化。、
- 能源管理:監(jiān)控和優(yōu)化能源使用。
文章來源:http://www.zghlxwxcb.cn/news/detail-845829.html
- 農(nóng)業(yè)技術(shù):提高農(nóng)業(yè)生產(chǎn)效率和作物管理。
文章來源地址http://www.zghlxwxcb.cn/news/detail-845829.html
到了這里,關(guān)于ThingsBoard開源物聯(lián)網(wǎng)平臺(tái)介紹的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!