淺談藍牙mesh技術及智能家居領域的應用

2023.06.19

淺談藍牙mesh技術及智能家居領域的應用


藍牙技術聯盟於2017年7月發布藍牙網狀標準,支持多對多拓撲,多個藍牙設備可以互相發送消息並可以作為中繼將消息轉發到網絡中的其他設備。

Part 01

藍牙mesh技術特點

- 支持多對多拓撲

藍牙mesh網絡採用一種稱為“網絡泛洪(flooding)”的方式進行發布和中繼消息,可實現mesh網絡中多個節點和多個節點的連接及消息互通。

- 擴展物理區域覆蓋

藍牙mesh網絡擺脫節點只能下掛在網關或主路由下的束縛,還可作為中繼節點、朋友節點的角色,支持對終端設備消息中繼和轉發,實現“接力傳輸”,克服WiFi技術較遠距離的設備消息互通及覆蓋等困難。

- 去除中心節點依賴

藍牙mesh網絡進行消息傳遞,不會通過某一特定路線、特定設備或某一固定過程進行消息路由,因此,可擺脫中心節點(例如:網關、主路由設備等)的依賴。

- 支持自我修復

藍牙mesh網絡中單一節點故障或異常無法進行通信,會進行自動自我配置,通過其他正常工作節點傳遞或中繼消息,從而實現單點故障自我修復。

Part 02

藍牙mesh技術原理 

藍牙mesh技術的原理和設計主要從網絡架構、拓撲及節點、地址劃分三方面進行體現,以下將以這三個方面為切入點,剖析藍牙技術原理。

1️⃣ 藍牙mesh技術網絡架構

在網絡架構中,藍牙mesh是工作在BLE協議棧之上,使用相同的物理層和鏈路層。

圖片

圖1 藍牙mesh協議棧示意圖

自上而下,藍牙mesh協議棧分別為:模型層(Model Layer)、基礎模型層(Foundation Model Layer)、訪問層(Access Layer)、上層傳輸層(Upper Transport Layer)、底層傳輸層(Lower Transport Layer)、網絡層(Network Layer)、承接層(Bearer Layer)。其中,藍牙mesh協議棧各層作用為:模型層定義用戶場景/應用,基礎模型層配置管理mesh,訪問層定義應用如何利用上下文數據,上層傳輸層對應用數據加密及解密,底層傳輸層對數據分段及重組,網絡層進行網絡管理,承接層進行廣播/GATT承載。

2️⃣ 藍牙mesh拓樸及節點

圖片

圖2 藍牙mesh網絡拓撲

藍牙mesh支持多對多通信,因此在具有較多設備的場景下,藍牙mesh一般為網狀結構,如上圖所示,在藍牙mesh網絡拓撲中,一般存在這四類節點類型:

(1)藍色節點代表普通終端節點,不能對藍牙mesh網絡中消息進行中繼轉發,直接從藍牙mesh網絡中進行消息的接收和發送;

(2)紅色節點為中繼節點,用於消息的中繼,實現網絡消息的遠距離傳輸;

(3)紫色節點代表朋友節點,用於低功耗節點和網絡間傳遞消息;

(4)黃色節點代表低功耗節點,通過朋友節點進行消息的接收或轉發,這類節點一般是低功耗傳感器,採用電池供電,因此會存在休眠機制。

藍牙mesh技術基於網絡泛洪(flooding)的信息傳遞機制,所有信息一旦由節點發布後,就會廣播到網絡上,而非透過路由方式傳遞給一個或多個節點。而WiFi網絡是圍繞著一個中央節點(例如網關、路由器等設備)來進行消息上下行,所有網絡流量都會經過此處,萬一中央節點故障,整個網絡就跟著停擺。藍牙mesh技術可有效去除中心化,擺脫對中心節點依賴。

3️⃣ 藍牙mesh地址劃分

藍牙mesh網絡層定義了四種基本類型的地址:未分配地址、單播地址、虛擬地址、組播地址,其中,地址長度為16位。地址詳細分類如下表所示:

圖片

(1)未分配地址

未分配地址是尚未被配置的節點元素的地址或未分配的地址。未分配地址的值為0x0000。例如:可以通過將模型的發布地址設置為未分配地址來禁用模型的消息發布,未分配地址不得用於消息的源或目標地址字段。

(2)單播地址

單播地址是分配給每個元素的唯一地址,單播地址的值不能為0x0000,可取值範圍為0x0001到0x7FFF。在配網階段,配置器會在網絡節點的生命週期內為節點的每個元素分配單播地址,該地址可以由配置器取消分配,允許重複利用。

(3)虛擬地址

虛擬地址表示一組目標地址,每個虛擬地址在邏輯上代表一個標籤UUID,一個或多個元素可以配置發布或訂閱同一個標籤UUID。標籤UUID不會被傳輸,應該用做上層傳輸層中消息完整性校驗值的附加數據字段。虛擬地址的取值範圍為0x8000到0xBFFF。

(4)組播地址

將0或多個元素的地址配置成同一地址,該地址就為組播地址。組播地址從0xFF00到0xFFFF保留給固定的用途,0XC000到0xFEFF用於其他用途。組播地址只能在消息的目標地址字段中使用,發送給組播地址的消息會被訂閱這個組播地址的所有模型實體接收。

Part 03

藍牙mesh在智能家居領域的應用

在智能家居市場上,藍牙mesh的應用主要集中在給智能家居設備配網和管控智能家居設備兩大場景。

所謂藍牙mesh配網就是通過配置將設備加入到網絡中,使其成為藍牙mesh網絡的一部分。藍牙mesh配網,主要涉及到未配網設備(Unprovisioned Device)、配網器(provisioner)、mesh節點(mesh Node)三個角色。如下圖所示,將未配網設備經過信標階段、邀請階段、交換公鑰階段、身份認證階段、分發配網數據階段5個階段後,即可接入藍牙mesh網絡實現消息的互聯互通。

圖片

圖3 藍牙mesh配網流程圖

對於管控智能家居設備,即可通過節點間消息互傳、廣播等實現同時對多個智能家居設備的管控,並且可以支持遠程控制和本地控制,相較於在WiFi網絡下同時管控多個設備,藍牙mesh管控方式響應速度更快並且對網絡負載更小。

圖片

圖4 藍牙mesh網絡內多個設備管控

綜合Part1~Part3所述,藍牙mesh技術擁有支持多點對多點連接、物理覆蓋區域廣闊、去除中心節點依賴等特性,既然滿足了智能家居設備日益增長的互聯互通的需求,又克服了現有WiFi技術無法解決的困難,為物聯網適配不同場景提供了新的解決方案。