1. 程式人生 > >IoT -- (九) IoT通訊技術選型與模型設計

IoT -- (九) IoT通訊技術選型與模型設計

IoT時代的無線通訊技術

“世界上最遙遠的距離就是沒有網路”,網路通訊是IoT的基礎,常見的無線網路通訊技術有:WiFi、NFC、ZigBee、Bluetooth、WWAN(Wireless Wide Area Network,包括GPRS、3G、4G、5G等)、NB-IoT、Sub-1GHz等。它們在組網、功耗、通訊距離、安全性等方面各有差別,因此擁有不同的適用場景。WiFi、Bluetooth、WWAN是現階段物聯網的主力,佔所有應用的95%以上。ZigBee主要用在全屋智慧領域,NB-IoT是針對IoT設計的下一代網路。

那麼如何在眾多無線通訊技術中找到適合自己的呢?下面根據我的經驗做一下簡單總結,供大家參考。

為什麼選WiFi 
WiFi最大的優點是連線快速、持久、穩定,它是IoT裝置端連線的首選方案,唯一需要考慮的是智慧裝置對WiFi覆蓋範圍的依賴導致smart devices的活動範圍比較小,不適合隨時攜帶和戶外場景。

舉例:各種智慧家電可以通過WiFi被遠端控制。

為什麼選Bluetooth 
Bluetooth最大的優點是不依賴於外部網路、便攜、低功耗。只要有手機和智慧裝置,就能保持穩定的連線,走到哪連到哪。所以大部分運動和戶外使用的裝置都會優先考慮Bluetooth。它的主要不足是:不能直接連線雲端,傳輸速度比較慢,組網能力比較弱。

舉例:智慧手環,共享單車的智慧藍芽鎖,iBeacon定位。

為什麼選WWAN

 
WiFi的不足是智慧裝置移動範圍小,藍芽的短板是裝置不能直連雲端和組網能力弱,而WWAN既可以隨時移動,也可以隨時聯網,完美彌補了WiFi和Bluetooth的不足。但實際上它也存在二個短板:一是它在使用的過程中會產生費用,二是網路狀況不穩定,常常遇到無網或弱網的環境。

舉例:車載智慧裝置,政府的城市公共自行車。

無線模組選型分析

前面介紹了主流的三種無線技術,下面是一些特殊場景用到的無線技術選型。

ZigBee的使用 
在全屋智慧(精裝修智慧房屋)的場景中,從交付開始,家中就已存在大量IoT裝置,如果使用WiFi方案,每個裝置配網會非常麻煩,並且WiFi每次做移動或修改密碼,智慧裝置都要做相應的調整。如果使用藍芽方案,以目前的BLE 4.2標準來說,藍芽的組網只能一個Central連線7個外設(部分晶片會有能力擴充,因為比較少見,所以這裡忽略),藍芽組網能力弱,也滿足不了需求。所以在全屋智慧場景中,經常會使用ZigBee+WiFi的二合一閘道器。ZigBee和藍芽一樣都是近距離低功耗的通訊技術,但它相比藍芽最大的優勢就是強大的組網能力,ZigBee和WiFi的二合一閘道器通過ZigBee連線IoT裝置,通過WiFi將資料同步到雲端。

Sub-1GHz的使用 
飛行器常常在沒有WiFi,山上等GPRS無訊號或弱網的環境中使用,而且通常有較遠的飛行距離,這樣WiFi、Bluetooth、ZigBee和WWAN這種單一的無線模組不能很好的解決飛行器的通訊需求,所以需要多種無線模組的組合使用。通過Bluetooth讓遙控器和手機連線,通過Sub-1GHz處理長距離飛行時飛行器和遙控器的通訊,通過其他波長處理中距離或短距離飛行中的資料通訊。這種組合既能滿足手機操控,又能在中距離有高質量的影象資料,在遠距離還能繼續控制。

同樣功能的裝置不一定選相同的通訊模組

例如補水儀,統一的功能,都是從裝置噴出水汽到面板,給面板補水,但有行動式和固定式兩種,行動式體積小,便於攜帶,隨時使用,可以選擇Bluetooth;固定式功能多,可以冷熱交替補水,一般在家中使用,選WiFi沒錯。

總結和整理 
圖片描述
上表對前面介紹的無線通訊技術做了個總結,方便大家瞭解其中的差別,選到適合自己的方案。

IoT物聯模型

應用側的架構,根據接入裝置的種類和數量,複雜度會相差很大,其中物聯平臺的架構最為複雜,例如阿里智慧、微信物聯、米家、百度物聯這類平臺級的系統。不過能做平臺級物聯絡統的公司還很少,大部分還是針對特定裝置型別或共同特徵的智慧裝置的載體,它們的結構相對簡單些,也是本文重點介紹的部分。

以智慧手機、智慧裝置,智慧雲三者互動為例,主要涉及的無線通訊方式就是WiFi、WWAN、Bluetooth,其中WiFi和WWAN的場景幾乎一致,Bluetooth架構多一層媒介層,本文主要介紹這三種場景。

WWAN/WiFi和Bluetooth在應用架構設計上最重要的區別是WWAN的智慧裝置可以直接和雲端互動,而Bluetooth智慧裝置需要一箇中轉媒介,大部分時候,這個媒介指的是智慧手機,偶爾也可能是其他的形態,比如藍芽閘道器,或是一臺裝有作業系統的智慧冰箱。

WWAN和WiFi物聯模型的主要區別在於WWAN裝置只要插上上網絡卡,就可以上網,而WiFi裝置需要多一步配網的過程。

WWAN/WiFi物聯模式

WWAN/WiFi物聯模型如圖1所示。 
圖片描述

圖1 WWAN/WiFi物聯模式

圖片描述

圖2 Bluetooth物聯模式

WiFi在裝置初次使用時,首先需要配網操作。通過WiFi在手機和智慧裝置之間建立點對點連線,手機把WiFi的SSID和密碼傳遞到智慧裝置,然後再斷開手機與智慧裝置的直連,把智慧裝置連線的WiFi網路切換至用於連線的WiFi裝置(在家的場景,通常指的是家中的路由器)。WiFi smart device在聯網成功後,會向雲端傳送裝置啟用的訊息,此後裝置端和雲端就建立了一個穩定,長期的連線,保證了資料上行和命令下發。

Bluetooth物聯模式 
藍芽裝置一般都作為外設,和智慧手機建立一對一的連線之後,通過智慧手機作為媒介,間接與雲端進行資料同步。通常情況,BLE 智慧手機裝置和智慧手機的通訊非常重要(通道1),裝置操控和資料同步都是通過這層連線完成的,相比之下通道2經常只是智慧手機的普通API請求,用做Bluetooth 智慧手機裝置的資料持久層使用。

IoT模型優化

上一節介紹了WWAN/WiFi和Bluetooth的物聯模型,IoT模型在設計的時候,有很多需要考慮的地方,常見的有:通道的安全、物聯協議、動態化等。

通道的安全 
通道安全往往是通過對連線通道認證和資料對稱/非對稱加密這兩件事情保障的。對於安全性較高的裝置,一定要在建立連線通道時,確保通道的安全性,在資料和命令上下行時,儘可能不要使用明文傳輸。安全通道的建立可以使用一些成熟的方案或者成熟的加密演算法去實現,選擇演算法時要考慮到裝置端的計算能力。裝置端因為成本和體積,計算能力較弱,如果演算法過於複雜會嚴重影響到裝置端的處理能力和穩定性。

物聯協議 
物聯協議是大型IoT平臺必須考慮的問題,因為接入的裝置型別多,很多場景需要多個裝置互聯互動,良好的物聯協議設計可以減低裝置接入的成本,提高穩定性和處理能力。現在每個物聯平臺都有自己的物聯協議。

物聯協議可以細分為通用協議和領域定製協議。通用協議可以做物聯通道的兜底方案,對裝置有一個統一的收口,而具體領域定製協議可以根據品類和業務深入定製行業解決方案,優化領域和領域裝置的接入速度,優化業務流程和場景質量。一個優秀的領域協議需要綜合平臺、方案商、裝置製造商多方經驗才能制定,忌諱由平臺制定後強推。

下面用藍芽來舉例說明一下平臺的物聯協議和業務協議。

微信物聯的藍芽協議要求:廣播包中包含ServiceUUID:FEE7作為統一標識,FEA1為資料出口,FEA2為資料入口,把藍芽協議扁平化形成一種請求,相應的資料模式。這是一個通道的固定,並沒有涉及業務。 
業務協議舉例:藍芽體重秤,協議如圖3。

圖片描述

圖3 藍芽體重秤協議

業務協議根據具體的通道,規定了二進位制流中每一位資料的含義、資料長度、單位、大小端模式等。業務協議和智慧裝置具體的功能和要做的業務緊密相關。

動態化 
物聯平臺因為接入的裝置各種各樣,晶片有各種不同的方案,如果要相容多種裝置和方案,就必須要求這個架構有著非常好的靈活性,而動態化可以極大提高靈活性。

客戶端通過HTML5、React-Native等動態化渲染技術,解決業務層的動態化;資料協議的動態化可以在客戶端或者服務端,通過動態化指令碼方案實現;裝置端的動態化可以考慮OTA韌體升級實現。

上面只是動態化的一些具體實現方向,對於大型的物聯平臺,往往是通過一整套架構和模型去解決的,阿里IoT平臺就有自己的一整套解決方案,因為會涉及到商業機密,這裡不再詳述。

總結

本文淺嘗輒止地介紹了IoT方向的一些無線通訊技術以及IoT模型選擇的思考,歡迎大家入坑。這些方案是近年來的主流方案,而隨著IoT的飛速發展,也許幾年後就會出現一些殺手級的方案完全改變IoT的現狀和格局。也有許多已知技術正在孕育當中,比如Bluetooth5和NB-IoT,Bluetooth5相比4.2,在組網和傳輸距離上有了很大提升,連線範圍擴大了4倍,速度提高了2倍,無連線資料廣播能力提高了8倍,同時提升了組網能力。筆者和TI,Nordic工程師有聊到過,裝置廠商的5.0晶片都已經開發完成,等待生產。量產後,預計會對ZigBee有很大的衝擊。

而NB-IoT的提出就是針對IoT的使用場景,其最大特色是覆蓋面廣,價格便宜。NB-IoT現在聯盟的力量很強大,大部分晶片商、通訊商、電信運營商都參與其中,積極推進NB-IoT的公共網路建設,預計就在這一年兩內NB-IoT的網路會覆蓋國內很多地區,未來潛力非常值得關注。