摘要
本文深入介紹了低功耗藍牙(BLE)協(xié)議棧架構(gòu),并探討了如何運用現(xiàn)有的BLE應(yīng)用,充分發(fā)揮低功耗無線通信的潛力。為了能夠高效可靠地開展設(shè)計、解決問題和優(yōu)化應(yīng)用,這些知識必不可少。
引言
低功耗藍牙(BLE)是物聯(lián)網(wǎng)(IoT)生態(tài)系統(tǒng)的一項關(guān)鍵技術(shù)。BLE最初是作為一種無線協(xié)議開發(fā)的,用于取代鍵盤、鼠標(biāo)和耳機等消費電子產(chǎn)品中的線纜,但時至今日,它的功能已經(jīng)大大拓展,不再僅僅是線纜的替代方案。目前,它在醫(yī)療、零售、汽車等多個行業(yè)及位置標(biāo)簽、儀器控制等工業(yè)應(yīng)用中發(fā)揮著重要作用。
根據(jù)《2023年藍牙市場更新報告》(2023 Bluetooth Market Update),從2023年到2027年,支持藍牙無線技術(shù)的設(shè)備出貨量的復(fù)合年增長率(CAGR)為9%。1 在這種增長態(tài)勢下,預(yù)計到2027年,BLE設(shè)備出貨量將翻一番以上,并且在所有支持藍牙技術(shù)的設(shè)備中,97%會采用BLE。1
BLE是一種無線技術(shù),于2010年7月隨藍牙4.0規(guī)范推出。BLE前稱為Bluetooth Smart(藍牙智能),專為超低功耗設(shè)備而設(shè)計。
我們熟悉的傳統(tǒng)藍牙技術(shù)主要用于將智能手機與耳機配對、傳輸音樂和照片等大量數(shù)據(jù),而BLE則有著不同的用途。傳統(tǒng)藍牙雖然能夠處理大量數(shù)據(jù)傳輸,但會因此而消耗更多的電池電量。相比之下,BLE針對不需要大量數(shù)據(jù)傳輸?shù)膽?yīng)用進行了優(yōu)化,因而成為各種功耗敏感應(yīng)用的理想選擇。傳統(tǒng)藍牙即使在不使用時,仍會保持活動狀態(tài)并消耗電量,而BLE大部分時間處于休眠模式,僅在建立連接時才會喚醒,并且連接時間通常僅維持幾毫秒。這種高效的電源管理,結(jié)合最高1 Mbps(BLE 5.0中達到2 Mbps)的數(shù)據(jù)速率,使得BLE設(shè)備能夠以極低的功耗運行。
圖1.(a)經(jīng)典藍牙和(b)低功耗藍牙規(guī)范要點2
圖2.(a)經(jīng)典藍牙和(b)低功耗藍牙的應(yīng)用2
藍牙規(guī)范
如圖1和圖2所示:
經(jīng)典藍牙:代表藍牙的最早版本,具有較高的數(shù)據(jù)速率能力,適用于流媒體、高帶寬文件傳輸和耳機。它有79個RF信道,其中32個廣播信道,以便其他設(shè)備可以發(fā)現(xiàn)和連接。
低功耗藍牙:針對數(shù)據(jù)傳輸不頻繁的低功耗應(yīng)用,例如傳感器和其他低帶寬傳輸。它有40個RF信道,其中3個信道用于設(shè)備發(fā)現(xiàn)。
BLE應(yīng)用概述
典型的BLE應(yīng)用由兩個設(shè)備組成:外圍設(shè)備和中心設(shè)備。在建立連接之前,外圍設(shè)備會通過一個稱為BLE廣播的過程對外宣告自身的存在。中心設(shè)備會掃描可用的外圍設(shè)備。一旦中心設(shè)備找到所需的外圍設(shè)備,兩者之間就會建立連接。然后,每個設(shè)備中的應(yīng)用可以通過BLE協(xié)議棧的不同層傳輸數(shù)據(jù),實現(xiàn)相互通信。參見圖3。
例如,智能手機可以充當(dāng)中心設(shè)備,而健身追蹤器可以充當(dāng)外圍設(shè)備。健身追蹤器作為服務(wù)器,收集心率、血壓、ECG、步數(shù)甚至睡眠模式等數(shù)據(jù)。健身追蹤器向附近設(shè)備廣播自身的存在,包括作為客戶端的智能手機。智能手機從健身追蹤器中檢索這些數(shù)據(jù),并顯示在用戶易于理解的應(yīng)用程序上。這只是BLE支持實現(xiàn)的眾多應(yīng)用中的一個例子,我們將在文章的后半部分討論更多應(yīng)用。
圖3.外圍設(shè)備和中心設(shè)備的各層
BLE協(xié)議棧架構(gòu)
BLE協(xié)議棧架構(gòu)(如圖4所示)是實現(xiàn)BLE設(shè)備之間通信的結(jié)構(gòu)化軟件框架。它定義了必要的層級和協(xié)議,用于建立、維持和終止藍牙連接,方便設(shè)備間交換數(shù)據(jù)。
BLE協(xié)議棧架構(gòu)通常分為三個主要層級:應(yīng)用層、主機層和控制器層。應(yīng)用層是協(xié)議棧的最頂層。BLE設(shè)備上運行的應(yīng)用程序在這一層利用和處理實際數(shù)據(jù)。主機層位于協(xié)議棧中的應(yīng)用層和控制器層之間,實現(xiàn)了BLE通信所需的所有較高級別協(xié)議和配置文件。此外,它還提供高級應(yīng)用程序編程接口(API),使得應(yīng)用程序能夠與協(xié)議棧的較低層交互。控制器層是BLE協(xié)議棧的硬件部分,負責(zé)藍牙信號的發(fā)送和接收??刂破鲗犹幚硇盘柕奶l、調(diào)制和解調(diào)等任務(wù)。上述層級協(xié)同工作,實現(xiàn)BLE設(shè)備之間高效可靠的通信。
圖4.BLE協(xié)議棧架構(gòu)
應(yīng)用
應(yīng)用層用于實現(xiàn)BLE設(shè)備具體應(yīng)用需求。應(yīng)用層通過GATT(通用屬性規(guī)范)與協(xié)議棧下層進行交互,基于GATT定義的服務(wù)、特征和相應(yīng)數(shù)據(jù)。
設(shè)備的特性和行為在應(yīng)用層設(shè)計。其中包括定義服務(wù)和特征,指定數(shù)據(jù)交換方式,實現(xiàn)連接、斷開連接、數(shù)據(jù)更新等事件處理邏輯。應(yīng)用層的主要作用是根據(jù)設(shè)備及其預(yù)期使用場景的具體需求來定制BLE協(xié)議棧。
主機
主機層包含BLE協(xié)議棧的其余上層協(xié)議,具體包括邏輯鏈路控制與適配協(xié)議(L2CAP)、安全管理器協(xié)議(SMP)、屬性協(xié)議(ATT)、通用屬性規(guī)范(GATT)和通用訪問規(guī)范(GAP)。L2CAP作為上下層協(xié)議之間的通道接口,負責(zé)應(yīng)用數(shù)據(jù)的分割和封裝,并使用ACL鏈接傳輸數(shù)據(jù)包。L2CAP通過通道標(biāo)識符(CID)和通道復(fù)用來正確定位設(shè)備上的端點。參見圖5。
圖5.L2CAP數(shù)據(jù)包
L2CAP信號
在BLE協(xié)議棧中,命令以請求和響應(yīng)的形式在設(shè)備之間交換。以下是有關(guān)命令的一些要點:
命令以請求和響應(yīng)的形式發(fā)送。
每個協(xié)議數(shù)據(jù)單元(PDU)可以發(fā)送一個命令。
包含L2CAP信令消息的PDU稱為C幀(控制幀),而數(shù)據(jù)幀則分為B幀(基本信息幀)和LE幀(低功耗信息幀)。參見圖6。
圖6.L2CAP幀格式
?Command Reject(命令被拒絕)
?命令代碼無法識別或命令長度不正確時發(fā)送的響應(yīng)
?可能原因
?未知命令
?超出LCAP信令最大傳輸單元(MTU)
?請求中的CID無效
?Connection Parameter Update Request(連接參數(shù)更新請求)
?由LE節(jié)點向LE主節(jié)點發(fā)送,請求一組新的連接參數(shù)
?連接參數(shù)
?Interval min(最小間隔)
?Interval max(最大間隔)
?Node latency(節(jié)點延遲)
?Timeout multiplier(超時乘數(shù))
?Connection Parameter Update Response(連接參數(shù)更新響應(yīng))
?由LE主節(jié)點向LE節(jié)點發(fā)送,以響應(yīng)連接參數(shù)更新請求
SMP定義了BLE設(shè)備之間的配對、認證和加密程序。SMP命令使用L2CAP服務(wù)執(zhí)行這些程序。SMP命令包由代碼字段和數(shù)據(jù)字段組成。代碼字段用于標(biāo)識命令的類型,而數(shù)據(jù)字段的長度和格式取決于命令類型。所有SMP程序都實現(xiàn)了30秒超時,用于判斷程序是否失敗。參見表1。
表1.SMP命令代碼
ATT定義了訪問設(shè)備屬性或數(shù)據(jù)的規(guī)則。它支持發(fā)現(xiàn)、讀取和寫入遠程設(shè)備上的屬性。ATT遵循客戶端-服務(wù)器模型。服務(wù)器公開一組屬性,而客戶端可以發(fā)現(xiàn)、讀取和寫入這些屬性。ATT中的屬性結(jié)構(gòu)由句柄、類型、值和權(quán)限組成。屬性句柄是分配給服務(wù)器上每個屬性的唯一非零標(biāo)識符。屬性類型通過通用唯一標(biāo)識符(UUID)指定屬性的含義。UUID可以是由藍牙技術(shù)聯(lián)盟(SIG)分配的16位UUID,也可以是自定義的128位UUID。屬性值是屬性的實際數(shù)據(jù)值,而屬性權(quán)限決定了屬性允許的訪問級別。參見圖7。
圖7.屬性結(jié)構(gòu)
ATT定義了六種協(xié)議數(shù)據(jù)單元(PDU)類型:請求、響應(yīng)、命令、確認、通知和指示(圖8)。請求PDU由客戶端發(fā)送給服務(wù)器,請求回復(fù)。響應(yīng)PDU是請求回復(fù)時服務(wù)器對客戶端的回復(fù)。命令PDU由客戶端發(fā)送給服務(wù)器,無需回復(fù)。指示PDU由服務(wù)器發(fā)送給客戶端,需要回復(fù)。確認PDU由客戶端發(fā)送給服務(wù)器,作為對指示的回復(fù)。通知PDU由服務(wù)器發(fā)送給客戶端,無需回復(fù)。通過這些PDU類型,客戶端和服務(wù)器可以在BLE協(xié)議棧的ATT層交換信息和進行控制。
圖8.不同類型的屬性PDU
ATT PDU包由操作碼、屬性參數(shù)和身份驗證簽名構(gòu)成(圖9)。操作碼字段用于標(biāo)識PDU的方法/類型,例如請求或響應(yīng)。它還包括一個命令標(biāo)志,用于指示PDU類型是否為命令;以及一個身份驗證簽名標(biāo)志,用于指示數(shù)據(jù)包是否使用身份驗證簽名。
圖9.ATT PDU包格式
圖10.BLE層數(shù)據(jù)包格式
圖10總結(jié)了BLE協(xié)議棧架構(gòu)中各層的數(shù)據(jù)包格式,并概要顯示了數(shù)據(jù)的結(jié)構(gòu)。
沿著主機層往上,下一個更高的層級是GATT。通用屬性規(guī)范(GATT)負責(zé)定義數(shù)據(jù)或?qū)傩缘母袷交⒎庋b以及設(shè)備之間的交互規(guī)則。GATT程序包括屬性發(fā)現(xiàn)、讀取、寫入、通知和指示。它為管理BLE設(shè)備中的數(shù)據(jù)提供了一個標(biāo)準框架。
一個BLE設(shè)備中可能存在多個GATT配置文件(圖11)。藍牙規(guī)范中定義了標(biāo)準配置文件,以確保不同制造商生產(chǎn)的BLE設(shè)備能夠互操作。但是,基于特定應(yīng)用要求,也可以實現(xiàn)自定義配置文件。因此,了解GATT配置文件的結(jié)構(gòu)至關(guān)重要。
GATT配置文件由服務(wù)組成。服務(wù)指ATT協(xié)議中定義的一組相關(guān)屬性。在GATT中,“特征”一詞通常用于指代屬性,但特征可能包含本身即為屬性的描述符。特征是用戶數(shù)據(jù)的容器,而描述符提供有關(guān)用戶數(shù)據(jù)的說明或附加信息。
圖11.GATT配置文件結(jié)構(gòu)
與ATT類似,GATT中也有兩個角色:GATT客戶端和GATT服務(wù)器。GATT客戶端是訪問遠程GATT服務(wù)器上數(shù)據(jù)的設(shè)備。GATT服務(wù)器是支持遠程GATT客戶端訪問數(shù)據(jù)的設(shè)備。在GATT中,一個設(shè)備的角色由數(shù)據(jù)訪問的方向決定。
在BLE協(xié)議棧的主機層中,通用訪問規(guī)范(GAP - Generic Access Profile) 是頂層協(xié)議,定義了藍牙設(shè)備如何相互訪問和通信。GAP涵蓋了設(shè)備的工作模式、發(fā)現(xiàn)流程、連接建立和安全機制。所有支持藍牙技術(shù)的設(shè)備都需要實現(xiàn)GAP,因為它為BLE設(shè)備的控制提供了標(biāo)準框架。
GAP根據(jù)BLE設(shè)備的活動狀態(tài)為其提供不同的角色。當(dāng)不需要連接時,BLE設(shè)備可以充當(dāng)廣播者或觀察者。廣播者是一種在鄰近范圍內(nèi)宣告自身存在的設(shè)備。它主要利用鏈路層的廣播者角色發(fā)送廣播。觀察者與廣播者相反,它利用鏈路層的掃描者角色掃描相關(guān)區(qū)域,以接收來自附近設(shè)備的廣播。在現(xiàn)實生活中,廣播者的例子有BLE信標(biāo),而觀察者的例子有收集數(shù)據(jù)的BLE集線器。參見圖12。
圖12.廣播者向觀察者發(fā)送廣播數(shù)據(jù)包
當(dāng)可以建立連接時,GAP為BLE設(shè)備提供兩個額外的角色:外圍設(shè)備和中心設(shè)備。外圍設(shè)備與廣播者類似,它會宣告自身的存在,并等待來自遠程中心設(shè)備的連接請求。中心設(shè)備則充當(dāng)觀察者,掃描外圍設(shè)備,并向所需外圍設(shè)備發(fā)起連接請求。如前所述,外圍設(shè)備的例子有智能手表、健身追蹤器和家庭自動化傳感器,而中心設(shè)備的例子有智能手機、平板電腦和筆記本電腦。參見圖13。
圖13.中心設(shè)備/外圍設(shè)備 vs 廣播者/觀察者
根據(jù)藍牙規(guī)范的要求,在一個配置文件中GAP服務(wù)必須由GATT服務(wù)器實現(xiàn)。GAP服務(wù)涵蓋有關(guān)設(shè)備基本信息的各種特征,通常包括:設(shè)備名稱、設(shè)備外觀、外圍設(shè)備首選連接參數(shù)、中心設(shè)備地址解析,以及僅能通過解析獲得的私有地址。
控制器
控制器包含兩層:鏈路層和物理層。物理層位于BLE協(xié)議棧的底層,負責(zé)無線信號的實際傳輸和接收。物理層工作在2.4 GHz ISM頻段,采用高斯頻移鍵控(GFSK)調(diào)制方案。這種調(diào)制方案通過改變載波信號的頻率來實現(xiàn)高效的數(shù)據(jù)傳輸。
物理層由40個信道組成,每個信道彼此間隔2 MHz:
3個廣播信道用于廣播短數(shù)據(jù)包,以宣告廣播者的存在及其可用的服務(wù)或信息。
37個數(shù)據(jù)信道在中心設(shè)備與外圍設(shè)備建立連接后使用。
在藍牙5核心規(guī)范發(fā)布前,BLE僅使用3個固定廣播信道(37、38、39)。而藍牙5引入的擴展廣播功能,允許將原本用于數(shù)據(jù)傳輸?shù)?7個數(shù)據(jù)信道作為輔助廣播信道使用。此擴展解鎖了藍牙5中的新特性,擴展了物理層的編碼方案選擇。參見圖14。
圖14.BLE信道
藍牙5引入了三種不同的物理層(PHY)類型,支持三種調(diào)制方案和四種數(shù)據(jù)傳輸速率(表2)。默認物理層(PHY)為LE 1M,以每秒1兆符號率(1 Msym/s)的調(diào)制方案運行,實現(xiàn)和每秒1兆比特率(1 Mbps)的數(shù)據(jù)傳輸速率,無線傳輸距離可達100米。另一類型物理層(PHY)為LE 2M,使用2 Msym/s調(diào)制方案,數(shù)據(jù)傳輸速率提升至2 Mbps。第三種物理層(PHY)為LE Coded,支持125Kbps和500Kbps兩種數(shù)據(jù)傳輸速率。類似LE 1M模式,LE Coded采用1 Msym/s符號率調(diào)試方案。采用數(shù)據(jù)速率125Kbps的編碼,每1比特數(shù)據(jù)擴展為8個符號(S=8),而采用數(shù)據(jù)速率500Kbps的編碼,每1比特數(shù)據(jù)擴展為2個符號(S=2)。這種編碼方案使得LE Coded PHY用于長距離模式應(yīng)用,在空曠空間中傳輸距離可達1000米。(支持前向糾錯,降低誤碼率。)
表2.BLE中的不同PHY
物理層(PHY)的上一層為鏈路層,鏈路層負責(zé)管理設(shè)備間的掃描、廣播、連接建立、連接和鏈路的維護。鏈路層還管理這數(shù)據(jù)傳輸?shù)男诺老葥?,利用自適應(yīng)跳頻擴頻來減少干擾。鏈路層狀態(tài)機定義了五種狀態(tài):就緒態(tài)、廣播態(tài)、掃描態(tài)、發(fā)起態(tài)、連接態(tài)。(見圖15)
空閑時鏈路層處于準備狀態(tài),不傳輸或接收數(shù)據(jù)包。
在廣播狀態(tài)下,鏈路層(充當(dāng)廣播者)發(fā)送廣播數(shù)據(jù)包,同時監(jiān)聽是否有設(shè)備請求額外信息。
在掃描狀態(tài)下,鏈路層(充當(dāng)掃描者)監(jiān)聽廣播者,并可主動發(fā)送掃描請求獲取更多額外信息。
在發(fā)起狀態(tài)下,鏈路層(充當(dāng)發(fā)起者)監(jiān)聽來自廣播者的數(shù)據(jù)包,并響應(yīng)廣播包,向廣播者發(fā)起連接請求。
當(dāng)鏈路層連接到另一個BLE設(shè)備的鏈路層,就處于已連接狀態(tài)。
圖15.鏈路層狀態(tài)轉(zhuǎn)換
除了不同的狀態(tài)之外,鏈路層還定義了如下事件:廣播事件和連接事件。廣播事件涉及使用廣播信道傳輸數(shù)據(jù)包,而連接事件涉及通過數(shù)據(jù)信道在已連接狀態(tài)下傳輸數(shù)據(jù)包。
鏈路層還定義了由物理層傳輸?shù)腂LE數(shù)據(jù)包的格式。數(shù)據(jù)包格式分為編碼PHY(Coded PHY)和未編碼PHY(Uncoded PHY)。
圖16.未編碼PHY的BLE數(shù)據(jù)包
如圖16所示,未編碼PHY的BLE數(shù)據(jù)包以前導(dǎo)碼開始,之后是訪問地址、PDU和循環(huán)冗余校驗(CRC)。
如圖17所示,編碼PHY的BLE數(shù)據(jù)包由前導(dǎo)碼、前向糾錯(FEC)塊1和FEC塊2組成。
前導(dǎo)碼是用于頻率同步的1和0交替序列。對于LE 1M,其長度為1個字節(jié);對于LE 2M,其長度為2個字節(jié)。
訪問地址用作關(guān)聯(lián)碼,供調(diào)諧到物理信道的設(shè)備使用;其長度為4個字節(jié)。對于物理廣播信道,訪問地址為固定值0x8E89BED6。
PDU包含來自BLE協(xié)議棧上層的有效載荷。它可以是廣播PDU或數(shù)據(jù)PDU,其中可能包含通信所需要的來自傳感器或其他設(shè)備的重要信息。更多信息將在下一節(jié)中討論。
CRC用于錯誤校驗。
圖17.編碼PHY的BLE數(shù)據(jù)包
恒音擴展(CTE)由一串持續(xù)調(diào)制的非白化1序列組成,通常情況下是選擇性使用的。CTE對于BLE的測向特性非常重要。
FEC塊1包含訪問地址、編碼指示符(CI)和塊終止符(TERM1)。CI指示FEC塊2使用的編碼方案,而TERM1是3位塊終止符。
FEC塊2包含PDU、CRC和TERM2,其編碼方案與FEC塊1中CI字段所示的編碼方案相同。
無論未編碼PHY還是編碼PHY,其使用的BLE數(shù)據(jù)包PDU都可以分為兩類:廣播信道PDU和數(shù)據(jù)信道PDU。參見圖18至圖21。
圖18.廣播物理信道PDU
圖19.廣播物理信道PDU標(biāo)頭
如圖19所示,廣播信道PDU用于廣播事件。它由2字節(jié)的標(biāo)頭和最多255字節(jié)的有效載荷組成。
標(biāo)頭包含以下字段:PDU類型、RFU(保留以備將來使用)位、ChSel、TxAdd、RxAdd和長度。ChSel、TxAdd和RxAdd位的值取決于PDU類型,而長度字段用于描述有效載荷的長度(以字節(jié)為單位)。
圖20.數(shù)據(jù)物理信道PDU
圖21.數(shù)據(jù)物理信道PDU標(biāo)頭
如上圖所示,數(shù)據(jù)信道PDU由連接事件使用。它由2或3字節(jié)的標(biāo)頭、有效載荷以及用于加密鏈路的消息完整性校驗(MIC)組成。
數(shù)據(jù)信道PDU標(biāo)頭包含以下字段:LLID、NESN、SN、MD、CP、長度和CTEInfo。
LLID用于描述鏈路層數(shù)據(jù)PDU的類型
NESN(下一預(yù)期序列)用于標(biāo)識預(yù)期對等設(shè)備發(fā)送的下一個數(shù)據(jù)包
SN(序列號)用于標(biāo)識當(dāng)前數(shù)據(jù)包
CP(CTEInfo存在)用于表示存在額外的CTEInfo字段
長度字段用于描述有效載荷的長度(以字節(jié)為單位)
CTEInfo用于描述CTE的類型和長度
主機控制器接口(HCI)
HCI充當(dāng)主機和控制器之間的中介。它提供了一組標(biāo)準化的命令和事件,用于支持這兩層之間的通信。
HCI支持多種類型的傳輸層,包括UART、USB、SDIO和三線UART。每種傳輸層都有自己的規(guī)范和要求。本概述著重介紹UART傳輸層。
根據(jù)藍牙5.2規(guī)范,UART傳輸層支持五類數(shù)據(jù)包:命令、事件、異步無連接(ACL)數(shù)據(jù)、同步(SCO)數(shù)據(jù)和等時(ISO)數(shù)據(jù)。
主機使用命令數(shù)據(jù)包向控制器發(fā)送命令。這些命令指示控制器執(zhí)行特定的操作或配置。
控制器使用事件數(shù)據(jù)包將已發(fā)生的事件告知主機。事件可以包括連接狀態(tài)變化、數(shù)據(jù)接收或其他相關(guān)信息。
ACL數(shù)據(jù)包用于主機與控制器之間交換數(shù)據(jù)。它支持傳輸異步數(shù)據(jù),例如來自傳感器或用戶輸入的信息。
SCO數(shù)據(jù)包用于主機與控制器之間交換同步數(shù)據(jù)。但需要注意的是,BLE不支持SCO數(shù)據(jù)包,SCO數(shù)據(jù)包主要用于經(jīng)典藍牙中的語音或音頻傳輸。
ISO數(shù)據(jù)包是新增的數(shù)據(jù)包類型,支持利用BLE在設(shè)備之間傳輸有時限要求的數(shù)據(jù)。等時數(shù)據(jù)包專為需要精準時序的應(yīng)用而設(shè)計,例如音頻流傳輸或?qū)崟r控制。
圖22.藍牙應(yīng)用
為何如此重要?
BLE廣泛應(yīng)用于從消費類產(chǎn)品到工業(yè)環(huán)境的各種場景中,因此了解BLE及其重要性會大有裨益。BLE是一種不斷發(fā)展和升級的協(xié)議,為應(yīng)用開發(fā)提供了無限的可能性。
用例
BLE廣泛應(yīng)用于眾多行業(yè),在不知不覺中影響著我們的日常生活(圖22)。熟悉BLE有助于人們在各種應(yīng)用場景中理解并運用BLE的優(yōu)勢。BLE為很多領(lǐng)域做出了巨大貢獻,推動了現(xiàn)有流程的革新。以下是其中的一些領(lǐng)域:
BLE在醫(yī)學(xué)領(lǐng)域的應(yīng)用
BLE在醫(yī)學(xué)領(lǐng)域發(fā)揮著至關(guān)重要的作用。BLE技術(shù)讓血糖儀、血壓監(jiān)測儀等設(shè)備得以使用,甚至像起搏器這樣要求超低功耗的植入式設(shè)備也能夠更好地發(fā)揮作用。這些設(shè)備可以收集數(shù)據(jù),并向患者和醫(yī)療機構(gòu)傳輸實時報告。BLE還能用于患者追蹤,定位房間或樓層號碼,向醫(yī)療響應(yīng)人員傳輸信息等。
BLE在定位追蹤中的應(yīng)用
借助BLE技術(shù),先進的追蹤器或智能標(biāo)簽可以附著在包、鑰匙甚至寵物上,以便追蹤所在位置。這些標(biāo)簽設(shè)計得非常小巧且節(jié)能,因此BLE的低能耗特性至關(guān)重要。很多行業(yè)也在利用BLE技術(shù),例如倉庫貨位監(jiān)控、雜貨店管理及室內(nèi)導(dǎo)航。
BLE在可穿戴設(shè)備中的應(yīng)用
可穿戴設(shè)備對輕巧便攜和長久續(xù)航的要求,使得BLE技術(shù)成為理想之選。智能手表、健身手環(huán)和智能眼鏡等設(shè)備普遍采用BLE來實現(xiàn)無線連接并降低能耗。
BLE在音頻流傳輸中的應(yīng)用
BLE在音頻流傳輸應(yīng)用中發(fā)揮著重要作用。隨著LE Audio的推出,BLE現(xiàn)在支持低延遲的音頻流傳輸,帶來更佳的音質(zhì)體驗。LE Audio采用低復(fù)雜度通信編解碼器(LC3),能夠在低數(shù)據(jù)速率下保證音頻質(zhì)量不受影響。這為無線音頻消費開辟了新的可能性。
BLE在自動化家居中的應(yīng)用
在自動化家居領(lǐng)域,BLE是實現(xiàn)智能家居的基礎(chǔ)技術(shù)。物聯(lián)網(wǎng)在智能家居中得到廣泛應(yīng)用,而BLE支持各種智能設(shè)備之間無縫連接。市面上有各種各樣支持BLE的智能設(shè)備可用于自動化家居,例如鑰匙扣、家庭信標(biāo)、開關(guān)等。BLE讓用戶能夠控制和監(jiān)控家里的方方面面,例如智能照明、高效節(jié)能的家庭能源管理、智能門鎖、無線揚聲器系統(tǒng)、家用機器人和安保系統(tǒng)。
結(jié)論
在BLE協(xié)議棧中,應(yīng)用數(shù)據(jù)需經(jīng)過多層協(xié)議處理,才能到達另一臺設(shè)備的遠端應(yīng)用程序(該設(shè)備也擁有自身的BLE協(xié)議棧)。完整流程如下:
應(yīng)用層:應(yīng)用程序選擇適當(dāng)?shù)膶傩詠肀4嬉獋鬏數(shù)臄?shù)據(jù)。
ATT層:生成ATT層數(shù)據(jù)包,其中包含與遠端設(shè)備目標(biāo)屬性對應(yīng)的信息。
L2CAP層:來自ATT層的數(shù)據(jù)包將經(jīng)由L2CAP層處理。若有需要,L2CAP執(zhí)行數(shù)據(jù)分段和重組。該層為每個L2CAP數(shù)據(jù)包添加L2CAP標(biāo)頭。
鏈路層:將L2CAP數(shù)據(jù)包傳遞至鏈路層,鏈路層將數(shù)據(jù)包傳遞到物理層進行無線傳輸。給數(shù)據(jù)包添加鏈路層表頭,形成協(xié)議數(shù)據(jù)單元(PDU)。
物理層:在傳輸之前,物理層將必要的前導(dǎo)碼、訪問地址和CRC添加到PDU中。數(shù)據(jù)包隨后通過無線方式傳輸。
在接收端,遠程BLE設(shè)備接收數(shù)據(jù)包,并執(zhí)行逆過程來提取數(shù)據(jù)。
在不同應(yīng)用中實現(xiàn)BLE時,選擇合適的硬件是實現(xiàn)最佳效率和優(yōu)化的關(guān)鍵。針對不同的要求和應(yīng)用,ADI公司提供了多種支持BLE的微控制器。
MAX32665/MAX32666/MAX32667/MAX32668DARWIN系列低功耗微控制器針對廣泛的實際應(yīng)用而設(shè)計。這些MCU支持藍牙5低功耗無線電連接,可以與多個設(shè)備進行無線連接以實現(xiàn)物聯(lián)網(wǎng)應(yīng)用,同時仍維持盡可能低的活動功耗和保持功耗3。DARWIN MCU還擁有同類產(chǎn)品中最大的嵌入式存儲器,支持更大規(guī)模的應(yīng)用和更多的協(xié)議棧。這種靈活性和能力為物聯(lián)網(wǎng)領(lǐng)域的設(shè)計和應(yīng)對各種挑戰(zhàn)提供了無限可能性,既夯實了現(xiàn)代物聯(lián)網(wǎng)解決方案的基石,又為未來發(fā)展鋪平了道路。
參考文獻
1 2023 Bluetooth Market Update,Bluetooth,2023年。
2 Bluetooth Technology Overview,Bluetooth。
3 “了解DARWIN:一種全新低功耗物聯(lián)網(wǎng)MCU”,ADI公司,2022年10月。
4 Madhur Bhargava,“IoT Projects with Bluetooth Low Energy”,Packt Publishing Limited,2017年。
5 “Bluetooth Core Specification Version 5.2 Feature Overview”,Bluetooth。
6 “Core Specification 5.4”,Bluetooth。
7 Naresh Gupta,“Inside Bluetooth Low Energy”,Artech House,2013年。
8 “Stack Architecture”,Zephyr Project。
Bluetooth®文字標(biāo)記和徽標(biāo)是Bluetooth SIG, Inc.的注冊商標(biāo),ADI公司已獲得許可使用此類標(biāo)記。其他商標(biāo)和商號均屬各自所有人所有。





