BLE ISM 網狀網路 BlueNRG-Mesh

BLE結合網狀網路 藍牙解開物聯網連結難題

2018-07-31
各界期盼已久的藍牙(Bluetooth)網狀網路聯網技術,終於問世一年了。這款技術是在2017年6月由藍牙技術聯盟(Bluetooth SIG)正式發表,除了既有的藍牙聯網拓撲(包括點對點、星狀及廣播)外,還新增工業級安全網狀網路聯網功能(圖1)。 藍牙低功耗(Bluetooth Low Energy, BLE)已廣為使用集線器(Hub)的商業用短距個人區域網路(PAN)應用所採用,例如當智慧型手機連線使用電池之周邊產品。這套全新的網狀網路連線規範,能讓好幾百個節點無縫相互連結且連線範圍更廣,透過一套中繼機制擴大節點到節點之間的通訊範圍。
圖1 藍牙低功耗網路拓撲

不同於一般看法的是,藍牙網狀網路規範其實並非仰賴最新的藍牙5.0規範。事實上,任何一款採用藍牙4.0(或更新版本)的智慧型手機都能輕鬆監測並控制網狀網路聯網節點。

以下將簡介藍牙技術近年來演化過程及最新的網狀網路聯網功能,接著還將說明開發人員及創新人士如何利用這些令人驚艷的革命性進展,以低功耗藍牙系統單晶片(SoC)、工具與現成的評估套件,將最尖端的藍牙技術聯盟聯網技術導入市場。

提升體驗能耗更低 藍牙低功耗受矚目

藍牙低功耗技術早在2010年就已經推出,納入藍牙4.0核心規範(Bluetooth Core Specification 4.0)。有別於先前的藍牙標準,藍牙低功耗是一種專為控制並監測應用程式所設計的低功耗解決方案。它沿用了諾基亞(Nokia)先前的一款無線協定,本來是為個人區域網路所提供的一種通用無線聯網解決方案,亦即讓「個人」裝置連結行動電話。這是利用單一向心狀集線器元件進行星狀拓撲聯網的典型案例,由行動電話擔任網路主控(Master),連結一個或更多的從屬(Slave)裝置。它是一種一對多的連線方式,能在局部個人裝置進行短距互動時提供超低功耗聯網功能。

藍牙低功耗使用2.4GHz工業、科技和醫療(Industrial Scientific Medical, ISM)免授權頻段,在2MHz的頻道間距裡容納了40個無線電射頻頻道。同時還採用自適應跳頻(Frequency-hopping)來確保聯網功能的穩健性,出現干擾和衰退/多路徑傳播問題時也更加可靠。在40個頻道當中,有3個頻道是用做廣告用途,無法與聯網裝置進行雙向通訊。廣告頻道的用途是偵測、建立網路連線和廣播傳輸。

目前大部分的手持裝置、智慧型手機與平板(不論Android或iOS作業系統)都支援藍牙低功耗標準,還有微軟Windows、Linux和蘋果(Apple) macOS等多數作業系統。幾秒鐘內就能方便且迅速地和智慧裝置建立起無線連結,使用起來非常簡單。過去幾年這套標準已大幅演進,推出各種重要功能,也進行改良並增加彈性。

2014年12月藍牙4.2核心規範問世後也多次進行重要更新,終於能為物聯網(IoT)提供更聰明、速度更快且更為理想的無線技術。新功能包括Privacy 1.2,有助於避免裝置遭到未經授權人士或裝置的追蹤;還有符合美國聯邦資訊處理標準(FIPS)的加密安全聯網功能,從一開始連線(譬如進行裝置配對連線時)就能確保資料隱密性。

除此之外,4.2規範還提供最新的數據長度擴展(Data-length Extension)功能,除了能夠加速資料傳輸,也適用於低功耗IP(IPv6/6LoWPAN)、Bluetooth Smart Internet Gateways(GATT)等最新的網際網路聯網技術。

至於2016年12月推出的藍牙5.0規範,則是更進一步擴大了各種新應用的採用範圍,原因除了傳輸率更快(為資料傳輸率兩倍),還具備長距離功能和八倍廣播訊息功能,可提升定位與導航等系統之性能。未來,最新的5.0規範將進一步提升整體使用者體驗,但能耗成本更低,還可加速帶動藍牙低功耗的採用,成為物聯網領域下一個主流安全聯網解決方案。

挾低功耗高安全性 藍牙網狀網路被看好

所有網狀網路均以節點實體為基礎單元。藍牙網狀網路節點乃利用泛流在網路中的封包(Packet),也就是訊息(Message),與任何一個其他節點進行通訊。訊息可以是指令或報告,目的通常並非連續性的資料串流作業。透過所謂的中繼節點(Relay Node)形成中繼機制,就能迅速將訊息發布到原本可能無法到達的節點,藉此大幅延伸網路覆蓋範圍。網路直徑最多可達126個躍點數(Hop),對企業用照明裝置等應用來說已相當足夠。

為防止網路塞車也採取多種機制,例如判定何時結束訊息中繼。這能將網路泛洪(Flooding)技巧的缺點降至最低程度,同時保留簡單、冗餘(Redundancy)和可靠等好處。

當中繼節點維持喚醒狀態以接收並傳送訊息,就無法利用藍牙技術原有的低功耗特色。因此,中繼節點並不適合利用電池運轉的裝置。這時就必須仰賴好友節點(Friend)和低功耗節點協助。好友節點(通常由固接電源供電)能緩衝被定址到其他好友低功耗節點的訊息,但後者可進入低功耗狀態,再依照預先設定的排程定期回復,藉此消耗並處理被定址的訊息,然後再回到休眠狀態。

第四類為代理(Proxy)節點,能讓現有的智慧型手機等藍牙低功耗裝置,即使原本不支援網狀網路也能透過標準的GATT(Generic Attribute Profile)介面連結網路。這種回溯相容性將加速網狀網路技術的普及,尤其是在智慧建築和家庭自動化領域。

每個節點都至少包含一個以上的單元(Element),也就是網路的可定址實體。反過來說,這些單元乃是藉由用戶端/伺服器架構(Client-server Model)式的結構來相互暴露,並使用發布-訂閱(Publish-and-subscribe)機制進行溝通(圖2)。伺服器架構包括單元的狀態(例如燈泡的開/關狀態),以及與狀態本身相關的訊息,而客戶端架構(例如一般開關)則屬於無狀態(State-less)模式,能定義成組的訊息並利用它們和伺服器狀態進行互動。

圖2  客戶端/伺服器架構下的發布/訂閱機制

必須收聽來自網路之控制訊息的節點(例如燈泡),會訂閱與相關來源有關之狀態變化。反之,負責控制的來源(例如電燈開關)則會把狀態發布給特定燈泡。

因此當應用於照明/開關時,客戶端裝置(開關)負責張貼訊息,伺服器裝置(燈泡)就會接到新指令出現的通知。為進一步提升彈性,藍牙網狀網路提供了定義並定址成組節點的可能性(利用群定址而非單點定址)。舉例來說,這項功能可以讓控制屬於同一實體地點的所有燈泡更加方便,例如某個房間或家中玄關所有照明(圖3)。

圖3  透過群定址功能輕鬆控制多個節點

透過開通配置(Provisioning)程序,裝置就能連上網路並成為可定址節點。一個網路最多可開通配置32,767個節點。通常可透過執行智慧型手機或平板上的應用程式來完成,並藉此創造出一個開通配置節點的資料庫。

藍牙技術聯盟向來重視安全性問題並將之納入考量,把工業等級的安全實務操作列為藍牙網狀網路的必備條件。因此,從開通配置程序開始所有流量都有加密,也不得以未加密訊息進行通訊。還在多個網路層利用訊息完整性檢查碼(Message Integrity Check, MIC)檢查流量。儘管已利用三重金鑰機制(裝置金鑰、網路金鑰和應用程式金鑰)、複雜的混淆式(Obfuscation)端對端加密程序,加上金鑰更新、有害網址清單(Blacklisting)和訊息排序等技巧將安全威脅降到最低程度,還是會針對節點與資料進行驗證。整體的網狀網路軟體則分為七層,請見(圖4)所示的藍牙網狀網路架構。

圖4  藍牙網狀網路架構

多樣產品組合選擇 BlueNRG運用彈性大

現已有元件廠商推出了BlueNRG產品家族列入於低功耗射頻產品系列,經過專業的設計可滿足物聯網應用對無線聯網功能的高難度需求,最適合智慧建築、家庭自動化、智慧工業和車用市場。

BlueNRG產品組合包含兩大類藍牙低功耗產品,分別為無線應用處理器和網路處理器。其中,BlueNRG-2是藍牙低功耗無線應用家族最新推出的產品,具有良好的功能、效能以及可擴充的封裝組合,是一種能提供彈性空間、使用簡便且高效率的可編程系統單晶片解決方案。以下分別說明各類產品的特性:

・BlueNRG-2

新推出的BlueNRG-2晶片尤其適合藍牙無線聯網應用,這款產品簡單且功能導向,只需一顆鈕扣電池就能運轉好幾個月甚至數年。使用BlueNRG-2時,開發人員還能利用微機電系統(MEMS)感測器產品組合的無縫互連功能,包含加速度計、陀螺儀、磁力計、慣性測量單元(IMU)、壓力感測器以及其他環境感測器。還有整合式雙通道10位元類比數位轉換器(ADC),能為類比前端轉能器提供方便的介面,還有脈衝數位調變(PDM)介面,可簡化數位MEMS麥克風連線以執行自然語言語音控制應用。記憶體容量增加,再搭配高效率核心架構,可執行ST Open.MEMS資料庫但對整體能耗並無太大影響。同時擁有這些感測器和資料庫,開發人員就能建置各種先進功能,例如手勢辨識和活動追蹤。

・BlueNRG-1

BlueNRG-1是一款類似BlueNRG-2的可編程藍牙低功耗系統單晶片,但記憶體容量較小(160KB vs 256KB)且功能集較為縮減,例如它少了延伸封包長度,也不符合先前推出的藍牙4.2認證。

・BlueNRG-MS

若應用需要更大的儲存量以應付資料或應用程式碼、更高的處理能力,或者是周邊裝置集合更加豐富且更有彈性的輸入輸出(I/O),還是可能使用外部微控制器來搭配BlueNRG-1或BlueNRG-2。但若不需要BlueNRG-1或BlueNRG-2的新增特色或功能,便可使用BlueNRG-MS網路處理器。因為BlueNRG-MS是純網路處理器,它無法儲存局部應用或資料程式碼,可透過串列周邊介面(SPI)輕鬆連結STM32微處理器。有了STM32全產品系列的擴充功能,加上BlueNRG-MS藍牙低功耗無線電,造就了一款功能強大、有彈性並兼具成本效益的解決方案,適合要求更高的藍牙低功耗裝置。舉例來說,它可完全滿足家用自動化控制主機的需求,透過方便的LCD介面來管理整個照明或感測器網狀網路。

具備網狀網路連線 BlueNRG-Mesh有亮點

透過新增網狀網路連線功能,BlueNRG-Mesh強化了BlueNRG產品組合。這款實作利用BlueNRG產品組合的低功耗架構,經過優化並量身打造,可利用同公司產品組合所提供的不同分割。不論標的應用是簡單的商業照明燈泡,還是工業環境下的企業用解決方案,或是智慧家庭的暖氣監控功能,因為同時提供單晶片與雙晶片分割所以能輕鬆因應多樣化的網狀網路市場。

利用BlueNRG-2可編程藍牙處理器,就可建置更簡單的網狀網路節點,代管藍牙堆疊、網狀網路協定和使用者介面程式碼。除此之外,因為它可以和感測器之間形成無縫介面,加上有輸入/輸出介面(例如I2C、SPI、UART),利用單晶片解決方案即可完整設計出感測器節點,只需要少少的幾行程式就能與網狀網路通訊。BlueNRG-2的運作溫度範圍,適用於照明用燈泡或空調(HVAC)網路等應用。

BlueNRG-Mesh靠的是用於資料通訊的廣告封包,並利用管理式網路泛洪的方法來交換基本訊息。這款實作符合標準Bluetooth SIG規範,能支援多種節點且最多可定址32,767個節點。

多重躍點資料傳輸功能,加上BlueNRG裝置+8dBm的輸出功率,可確保穩健可靠的聯網範圍,且通訊距離表現卓越,已經證實適用於所有大規模情境。在嚴苛環境下遭遇通訊問題,或者在擁擠的2.4GHz射頻(RF)頻譜下運作時,泛洪機制也能確保網路具備高度回復能力(圖5)。

圖5  BlueNRG-Mesh軟體開發套件用於嵌入式和Android平台

綜合上述,藍牙網狀網路是一種穩健的大規模聯網解決方案,適合商業和工業等級的物聯網情境。而BlueNRG-Mesh實作完全符合藍牙網狀網路1.0規格,提供彈性、可靠而且能夠擴充的解決方案,使用者馬上就能著手利用這種新技術。

(本文作者任職於意法半導體)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!