IoT -- (四) 物联网系统架构介绍
物聯(lián)網(wǎng)系統(tǒng)框架介紹
下面將談到幾個關(guān)鍵問題:
- 設(shè)備如何接入網(wǎng)絡(luò)?
- 設(shè)備間如何通信?
- 物聯(lián)網(wǎng)數(shù)據(jù)的用途?
- 如何搭建起一個物聯(lián)網(wǎng)系統(tǒng)框架呢?它的技術(shù)架構(gòu)又是怎么樣呢?
- 物聯(lián)網(wǎng)終端軟件系統(tǒng)架構(gòu)?
- 物聯(lián)網(wǎng)云平臺系統(tǒng)架構(gòu)?
1. 物聯(lián)網(wǎng)設(shè)備如何接入到網(wǎng)絡(luò)?
只有設(shè)備接入到網(wǎng)絡(luò)里面,才能算是物聯(lián)網(wǎng)設(shè)備。這里涉及到2個關(guān)鍵點:接入方式以及網(wǎng)絡(luò)通信方式。
設(shè)備接入方式:
當前有2種接入方式
在物聯(lián)網(wǎng)設(shè)備里面,物聯(lián)網(wǎng)網(wǎng)關(guān)是一個非常重要的角色。一個處在本地局域網(wǎng)與外部接入網(wǎng)絡(luò)之間的智能設(shè)備。主要的功能是網(wǎng)絡(luò)隔離,協(xié)議轉(zhuǎn)化/適配以及數(shù)據(jù)網(wǎng)內(nèi)外傳輸。
一個典型的物聯(lián)網(wǎng)網(wǎng)關(guān)架構(gòu)如下:
網(wǎng)絡(luò)通信方式
常用的通信網(wǎng)絡(luò)主要存在2種方式:
1.移動網(wǎng)絡(luò)(主要戶外設(shè)備用)
移動網(wǎng)絡(luò)2G/3G/4G/5G/NB-IOT等
2.寬帶(主要戶內(nèi)設(shè)備用)
WIFI,Ethernet等
物聯(lián)網(wǎng)設(shè)備接入網(wǎng)絡(luò)后如何開展M2M,M2C通信?
物聯(lián)網(wǎng)設(shè)備終端接入網(wǎng)絡(luò)后,只是物聯(lián)網(wǎng)應(yīng)用的開始。 設(shè)備接入網(wǎng)絡(luò)后,設(shè)備與設(shè)備之間需要互相通信, 設(shè)備與云端需要互相通信。 只有互通,物聯(lián)網(wǎng)的價值才展現(xiàn)出來。 既然要互通,則需要一套物聯(lián)網(wǎng)通信協(xié)議。只有遵循該套協(xié)議的設(shè)備相互間能夠通信,能夠交換數(shù)據(jù)。
常用的物聯(lián)網(wǎng)通信協(xié)議有哪些? 主要有如下協(xié)議:MQTT,COAP等,他們有個共同點都是基于消息模型來實現(xiàn)的。設(shè)備與設(shè)備之間,設(shè)備與云端之間通過交換消息來實現(xiàn)通信,消息里面攜帶了通信數(shù)據(jù)。
物聯(lián)網(wǎng)設(shè)備之間,設(shè)備與云平臺能夠交換數(shù)據(jù)后,接下來要干怎么呢?
21世紀,什么最重要?數(shù)據(jù)。 有了大量的物聯(lián)網(wǎng)設(shè)備數(shù)據(jù)后, 針對數(shù)據(jù),人類可以去挖掘里面的規(guī)律,挖掘里面的商業(yè)價值,對設(shè)備未來的狀態(tài)進行預(yù)測等等。
對于物聯(lián)網(wǎng)數(shù)據(jù)應(yīng)用,分幾個層次來講
1.基礎(chǔ)應(yīng)用:監(jiān)控
通過物聯(lián)網(wǎng)收集到設(shè)備數(shù)據(jù)后, 如果設(shè)備數(shù)據(jù)狀態(tài)超過預(yù)設(shè)的狀態(tài)則自動第一時間報警,管理員第一時間開展處理,可以通過遠程操作,下達命令。把問題解決在萌芽狀態(tài)。
2.進階應(yīng)用: 報表統(tǒng)計
通過統(tǒng)計方法, 對設(shè)備的歷史運行數(shù)據(jù)進行統(tǒng)計分析。可以按不同維度分析出不同報告。然后以圖表或者大屏方式展現(xiàn)在管理員面前。 管理員可以快速直觀的了解到整個物聯(lián)網(wǎng)設(shè)備運行狀況。
3.高級應(yīng)用: 數(shù)據(jù)挖掘/機器學習
這部分需要從數(shù)據(jù)里面挖掘出有價值的東西出來。比如通過一段時間時間設(shè)備數(shù)據(jù)的連續(xù)跟蹤分析并結(jié)合人類過往的設(shè)備運維經(jīng)驗,通過機器學習方式預(yù)測設(shè)備發(fā)生故障概率,以及發(fā)生故障后可能的引起原因,并給出維修方案。剛才舉的例子,是物聯(lián)網(wǎng)高級應(yīng)用里面的冰山一角。 通過引入現(xiàn)在火熱的AI技術(shù)。 物聯(lián)網(wǎng)就能變成智能物聯(lián)網(wǎng)了。 也許在不久的將來, 人與設(shè)備可以自由對話,設(shè)備與設(shè)備之間也能夠?qū)υ挷⒆詣幼龀鲎顑?yōu)決策。
綜合所述,物聯(lián)網(wǎng)的價值在于提高生產(chǎn)效率,管理效率,極大促進社會生產(chǎn)力的提高。
如何搭建起一個物聯(lián)網(wǎng)系統(tǒng)框架呢?它的技術(shù)架構(gòu)又是怎么樣呢?
物聯(lián)網(wǎng)終端設(shè)備軟件系統(tǒng)架構(gòu)
常見系統(tǒng)框架的總結(jié)下來主要存在如下2種: 帶RTOS的(處理復(fù)雜的業(yè)務(wù)場景,場景里面通過需要多個事務(wù)并行協(xié)同完成工作)和不帶RTOS的(通常處理的業(yè)務(wù)場景較單一)
不帶RTOS設(shè)備終端系統(tǒng)框架:
帶RTOS設(shè)備終端系統(tǒng)框架:
RTOS是什么? 實時多任務(wù)操作系統(tǒng),有了它,在終端設(shè)備里面可以并行運行多個任務(wù)。每個任務(wù)負責一個事務(wù)。通過并行化運行,響應(yīng)實時性及效率就得到提升。RTOS實時操作內(nèi)核一般包含的重要組件如下:
以任務(wù)調(diào)度組件舉例:
在嵌入式操作系統(tǒng)中,任務(wù)是CPU上最小運行單元。通常一個稍微復(fù)雜點IOT APP是由多個任務(wù)協(xié)同完成。比如有的任務(wù)負責處理用戶事件輸入以及UI顯示,有的任務(wù)負責處理數(shù)據(jù)通信,有的任務(wù)負責業(yè)務(wù)邏輯處理。
既然一個系統(tǒng)中有多個任務(wù)在跑,而CPU資源確是單一的,這樣導(dǎo)致每個時刻只能由一個任務(wù)在CPU上跑。 因此為了每個任務(wù)都能夠在CPU上有運行機會,就涉及到了任務(wù)調(diào)度概念。 任務(wù)調(diào)度需要按照一定的規(guī)則來,那一般是按照哪些規(guī)則來的? 我們常見的調(diào)度方式有3種: 一個基于優(yōu)先級調(diào)度的, 一個是基于時間片調(diào)度的, 一個是把優(yōu)先級和時間片結(jié)合在一起調(diào)度。
以優(yōu)先級調(diào)度舉例,在定義任務(wù)的時候,給每個任務(wù)分配一個優(yōu)先級,在運行的時候,高優(yōu)先級的任務(wù)都會優(yōu)先被運行。 直到?jīng)]有高優(yōu)先級任務(wù)后,低優(yōu)先級任務(wù)才會被運行。 假如低優(yōu)先級任務(wù)獲得CPU資源后,這是如果有高優(yōu)先級任務(wù)就緒怎么辦呢? 兩種處理方式:1. 繼續(xù)運行 2. 搶占式。 高優(yōu)先級搶占CPU資源進入運行狀態(tài)。
其他組件就不一一列舉了。
物聯(lián)網(wǎng)云平臺系統(tǒng)架構(gòu)
物聯(lián)網(wǎng)云平臺系統(tǒng)架構(gòu)主要包含四大組件:
- 設(shè)備接入
- 設(shè)備管理
- 規(guī)則引擎
- 安全認證及權(quán)限管理
設(shè)備接入
設(shè)備接入主要都干些什么呢?
1.包含多種設(shè)備接入?yún)f(xié)議,最主流的是MQTT協(xié)議。有些云計算廠商也在MQTT協(xié)議上精簡協(xié)議變成獨有的接入?yún)f(xié)議。
2.并發(fā)連接管理,維持可能是數(shù)十億設(shè)備的長連接管理。
如果應(yīng)對數(shù)十億的設(shè)備連接管理? 目前開放出來的MQTT代理服務(wù)器大都是單機版,最多也就是并發(fā)連接十幾萬設(shè)備。因此如果要管理數(shù)十億的連接,需要用到負載均衡,用到分布式架構(gòu)。在云平臺需要部署分布式MQTT代理服務(wù)器。
設(shè)備管理
一般以樹形結(jié)構(gòu)的方式管理設(shè)備,包含設(shè)備創(chuàng)建管理以及設(shè)備狀態(tài)管理等等。根節(jié)點以產(chǎn)品開始, 然后是設(shè)備組,再到具體設(shè)備。
主要包含如下管理:
產(chǎn)品注冊及管理
產(chǎn)品下面的設(shè)備增刪改查管理
設(shè)備消息發(fā)布
OTA設(shè)備升級管理等
規(guī)則引擎
物聯(lián)網(wǎng)云平臺通常是基于現(xiàn)有云計算平臺搭建的。 一個物聯(lián)網(wǎng)成熟業(yè)務(wù)除了用到物聯(lián)網(wǎng)云平臺提供功能外,一般還需要用到云計算平臺提供功能,比如云主機,云數(shù)據(jù)庫等。用戶可以在云主機上搭建web 行業(yè)應(yīng)用服務(wù)。
規(guī)則引擎主要作用是把物聯(lián)網(wǎng)平臺數(shù)據(jù)通過過濾轉(zhuǎn)發(fā)到其他云計算產(chǎn)品上。
比如可以把設(shè)備上報的數(shù)據(jù)轉(zhuǎn)發(fā)到table store數(shù)據(jù)庫產(chǎn)品里。
規(guī)則引擎一般使用方式:類SQL語言,通過編寫SQL語言,用戶可以過濾數(shù)據(jù)、處理數(shù)據(jù),并把數(shù)據(jù)發(fā)到其他云計算產(chǎn)品,或者其他云計算服務(wù)。
安全認證及權(quán)限管理
物聯(lián)網(wǎng)云平臺為每個設(shè)備頒發(fā)唯一的證書,需要證書通過后才能允許設(shè)備接入到云平臺。云平臺最小授權(quán)粒度一般是做到設(shè)備級。我們所說的證書一般分為2種:一種是產(chǎn)品級證書,一種是設(shè)備級證書。 產(chǎn)品級證書擁有最大的權(quán)限,可以對產(chǎn)品下所有的設(shè)備進行操作。 設(shè)備級證書,只能對自己所屬的設(shè)備進行操作,無法對其他設(shè)備進行操作。
因此每個接入云平臺的設(shè)備都在本地存儲一個證書(其實存在形式是一個KEY,有多個字符串構(gòu)成)。每次與云端建立連接時,都要把證書帶上。以便云端安全組件核查通過。
云計算產(chǎn)品
大數(shù)據(jù)計算產(chǎn)品, 云基礎(chǔ)服務(wù)(高性能服務(wù)器,云數(shù)據(jù)庫,云網(wǎng)絡(luò))等
物聯(lián)網(wǎng)應(yīng)用
智慧城市, 智慧農(nóng)業(yè),工業(yè)4.0等
下面一張是來自百度物聯(lián)網(wǎng)平臺架構(gòu):
突出展示了物聯(lián)網(wǎng)設(shè)備, 物聯(lián)網(wǎng)云平臺, 云計算平臺是如何協(xié)同工作的,有較大的參考價值。
總結(jié)
以上是生活随笔為你收集整理的IoT -- (四) 物联网系统架构介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Debug深度学习中的NAN Loss
- 下一篇: 以消费者为中心 第四范式为企业转型准备“