發布日期:2022-04-17 點擊率:75
編者按:本系列文章包含兩個部分,第 1 部分介紹藍牙 5.1 測向功能,作為低功耗藍牙固件的附加功能,它能夠讓設計人員開發出基于到達角 (AoA) 和出發角 (AoD) 的定位應用,例如資產跟蹤和室內定位系統 (IPS)。本文將探討用于構建和配置藍牙 5.1 測向應用的合適開發平臺和 SoC,這是這個系列文章的第 2 部分和最后一部分。
最新版本的藍牙核心規范(5.1 版)能夠讓開發人員更輕易地實現資產跟蹤和室內定位系統 (IPS)。具體而言,該規范為藍牙數據包添加了固定頻率擴展信號 (CTE),以便讓接收器能夠從射頻信號中提取 "IQ" 數據(計算收發器位置所需的同相和正交相位信息),而不會對調制產生干擾效果。此外,開發人員現在只需使用主機控制接口 (HCI) 配置采樣控制器,即可輕松配置協議以執行 IQ 采樣。
不過,提取 IQ 數據仍然比較復雜,需要將設計合理的天線陣列與無線微處理器配合使用。即便 IQ 數據成功提取,仍然必須對其進行處理,充分考慮多路徑接收、信號極化和傳播延遲、噪聲和抖動后,才能用于計算發射器的位置。
本文闡示了實際解決方案中所需注意的事項,并介紹了 Dialog Semiconductor、Silicon Labs 和 Nordic Semiconductor 推出的適用于構建藍牙 5.1 測向應用的開發平臺和模塊。此外,本文還闡示了如何使用這些平臺著手原型開發、測試和驗證設計。
藍牙 5.1 數據包中包含由一串數字 "1" 組成的 CTE,從而確保天線以恒定頻率接收該部分信號(而非常用于傳輸藍牙數據的調制頻率)。此外,該數據串未白化(即去相關)。配置得當的低功耗 (LE) 藍牙無線電接收包含 CTE 信號的數據包后,將在 CTE 信號期間進行 IQ 采樣。單個 IQ 樣本由信號幅度和的相位角組成,并以笛卡爾坐標表示(圖 1)。
圖 1:低功耗藍牙接收設備會獲取陣列中每個天線的藍牙數據包 CTE 部分時間段內的相位角和幅度 IQ 樣本,測向應用的第一步正從這一采樣過程開始。這些樣本均以笛卡爾坐標 (I,Q) 表示。(圖片來源:Bluetooth SIG)
藍牙核心規范 v5.1 詳細說明了對低功耗藍牙控制器的變更,使 AoA 和 AoD 技術能夠使用連接(“配對”)或無連接通信。不過,AoA 常用于資產跟蹤等連接應用,而 AoD 將用于 IPS 等無連接應用。
連接式測向使用標準藍牙 5.1 數據包,并在末尾附加 CTE。相比之下,無連接測向則在藍牙周期性廣播數據包末尾添加 CTE(圖 2)。
圖 2:藍牙 5.1 數據包結構顯示了 CTE 的位置和持續時間。連接式應用在標準數據包末尾添加 CTE,而無連接應用則使用廣播數據包。(圖片來源:Bluetooth SIG)
無論是連接式應用,還是無連接應用,開發人員都必須執行一些設置和配置步驟,才能啟動發射器的 CTE 和接收器的 IQ 采樣,而具體步驟取決于應用是基于 AoA 還是 AoD。
在 AoA 適用的資產跟蹤等應用中,發射器是像低成本簡單標簽之類可移動物體,而接收器(或定位器)則是固定參考點。AoA 實現的優點在于,標簽只需使用單個天線(而非陣列)傳輸藍牙 5.1 協議數據包,并且不需要運行計算密集型算法以最終確定發射器的位置(參見第 1 部分)。
雖然資產跟蹤系統的標簽設計遵循相對簡單的射頻 (RF) 設計原則,但標簽需要配備藍牙 5.1 收發器,才能配置數據包以包含 CTE。收發器選型時,值得注意的是,CTE 發送不能采用藍牙低功耗編碼式 PHY(用于實現藍牙 5 技術的遠程無線電),而須采用未編碼 PHY。
市面上有些商用藍牙 5.1 產品可供使用,例如 Dialog Semiconductor 的 DA14691 低功耗藍牙 5 SoC 適用于定位服務應用。該芯片采用 Arm? Cortex?-M33 微處理器,包括 512 KB 的隨機存取存儲器 (RAM)。Dialog 為 DA14691 提供了藍牙 5.1 堆棧。Silicon Labs 也為 EFR32BG13 低功耗藍牙 SoC 發布了藍牙 5.1 堆棧;該芯片采用 Arm Cortex-M4 微處理器,提供 64 KB 的 RAM 和 512 KB 的閃存。此外,Nordic Semiconductor 更進一步,他們發布了全新“測向”硬件和軟件解決方案 nRF52811。這款低功耗藍牙 SoC 可以兼容藍牙 5.1,集成了 Arm Cortex -M4 微處理器,并結合了來自 Nordic 的高端器件 nRF52840 的多協議無線電。該芯片提供 192 KB 的閃存和 24 KB 的 RAM。
這些器件在藍牙測向應用中適合用于發射器和接收器。每個器件均支持 CTE 傳輸,并能借助指定發射器天線布局的配置文件信息獲取 IQ 樣本。從理論上講,這些器件也能執行復雜計算,從而計算傳入無線電信號的入射角和收發器的位置。不過,盡管這些 SoC 使用的 Arm Cortex-M33 和 M4 處理器功能相對強大,但是若在運行復雜測向算法的同時,還需監控無線協議,可能就會造成應用性能不佳。
根據應用對性能和延遲的要求,開發人員可以考慮使用協處理器(可提供額外的 RAM 和閃存),尤其是針對應用軟件。例如,Nordic 的 nRF52811 設計可通過內部集成電路 (I2C) 接口和串行外設接口 (SPI) 與協處理器連接。
另一個設計挑戰是,為了降低成本,低功耗藍牙 SoC 通常不具備多個天線端口,或不具備在陣列中各個天線之間進行系統化切換的能力。因此,在低功耗藍牙 SoC 的單天線端口與多天線陣列之間需要接入射頻開關,從而在各個天線之間切換以收集各天線的 IQ 數據(圖 3)。
圖 3:在 AoA 測向資產跟蹤系統中,標簽使用單天線和傳統低功耗藍牙 SoC 來發送包含 CTE 的藍牙 5.1 數據包。主要計算在系統的多天線定位器端執行,定位器收集的信號數據將發送至運行測向算法的定位引擎。(圖片來源:Bluetooth SIG)
接收器(或定位器)需要通過天線陣列的 IQ 數據來檢測信號的相位差,這種相位差是由于陣列中的每個天線與單一信號發射天線的距離差異導致的。而應用是采用 AoA 還是 AoD,正是取決于各個天線的相位角差異。
天線設計通常分為三種類型:均勻直線陣列 (ULA)、均勻矩形陣列 (URA) 和均勻圓形陣列 (UCA)。設計天線陣列需要大量經驗,因而對于開發人員而言,交由第三方專家來配置最佳陣列,并提供物料清單 (BoM) 以便批量構建,往往是更為有效的做法,如第 1 部分所述。
應用對天線陣列、協處理器、額外存儲器和天線管理的要求,不僅增加了資產跟蹤解決方案定位器端的復雜性,也增加了成本和功耗。所幸定位器通常安裝在固定位置,因此可由市電供電。對于大多數解決方案,所需的設備數量比標簽數量少得多。
AoD 實現則略微復雜。在這種情況下,發射器包含天線陣列。接收器執行 IQ 采樣,對各個天線進行測量,并根據遠程發射器天線陣列的設計細節追溯所測量的特定天線。
在 AoD 實現中,固定的定位器信標需要配備藍牙 5.1 收發器、射頻開關和多個天線來傳輸信標信號,但與 AoA 實現不同,由于鏈路這一端不需執行信號分析,因此不需另增處理器和存儲器。然而,移動接收器雖然只需單個天線,卻需要配備相應的硬件和軟件來執行測向計算(圖 4)。例如,在 IPS 應用中,接收器通常是兼容藍牙 5.1 的智能手機,因而處理器和存儲器資源足以完成該任務。
圖 4:在 AoD 測向 IPS 系統中,固定信標使用天線陣列發送包含 CTE 的藍牙 5.1 數據包。主要計算由消費者的智能手機等移動設備執行。(圖片來源:Bluetooth SIG)
Dialog Semiconductor、Silicon Labs 和 Nordic Semiconductor 目前推出的解決方案主要集中在 AoA 和 AoD 應用中的 CTE 傳輸、數據包接收和 IQ 采樣執行等環節。因此,開發人員需要確定執行實際測向計算所需的資源(即硬件和定位引擎固件)。不過,隨著供應商爭相發布增強型測向解決方案,這一情況可能不久后就會發生變化。
例如,針對 AoA 資產跟蹤應用,各家公司都推出了相應的開發工具以支持標簽原型開發。開發過程通常遵循傳統低功率無線設備的開發過程。例如,開發套件中包含由工廠提供的基于藍牙 5.1 目標設備和外設的全功能收發器,將其連接至 PC 或 Mac 構建合適的集成開發環境 (IDE),并利用芯片供應商的軟件工具以實現應用開發。
Dialog 建議使用 DA14695-00HQDEVKT-P-ND 開發套件來開發基于藍牙 5.1 的應用。該套件包括母板、基于 DA14695 藍牙 5.1 SoC 的子板,以及用于連接 PC 的電纜。此外,該開發套件還支持 Arduino 和 MikroElektronika mikroBUS 盾板,并具有功率測量功能。
Silicon Labs 推出了 SLWSTK6006A 無線 Gecko 入門套件。該開發套件配備了 6 個以上基于 EFR32BG21 藍牙 5.1 SoC 的子板,可實現具有多個標簽的資產跟蹤系統原型開發。該開發套件可與該公司的 Simplicity Studio 配合使用,后者支持 Flex SDK 應用和配置軟件開發工具。
Nordic 推出基于該公司 nRF52840 SoC 的 nRF52840-DK 評估板,該 SoC 可與 nRF52811 藍牙 5.1 SoC 完全兼容。該公司的 nRF5 SDK 是一款受眾多常用 IDE 支持的軟件開發工具,可用于執行應用開發和系統配置。(有關低功耗藍牙應用開發的詳細信息,請參見 Digi-Key 文章“兼容藍牙 4.1、4.2 和 5 的低功耗藍牙 SoC 和工具可應對物聯網挑戰”。)
由于藍牙 5.1 默認不發送包含 CTE 的數據包或執行 IQ 采樣,開發人員必須通過供應商的開發工具配置系統以添加這些功能。這些工具可以訪問主機控制器接口 (HCI),之后主機就可使用該接口配置控制器以生成 CTE 和執行 IQ 采樣。
對于無連接應用(AoD 適用的應用類型),主機將執行以下控制器初始化步驟(圖 5):
配置擴展廣播
配置周期性廣播
配置 CTE 發送
啟用 CTE 廣播
啟用周期性廣播
啟用擴展廣播
設置廣播數據
圖 5:無連接方案(AoD 適用的應用類型)主機執行的控制器初始化步驟。(圖片來源:Bluetooth SIG)
掃描設備旨在接收 CTE 數據,獲取廣播發送的 IQ 樣本,因而必須采用如下配置:
配置擴展掃描
啟動擴展掃描
與接收的周期性廣播同步數據包同步
啟用無連接 IQ 采樣
對于連接方案(AoA 適用的應用類型),由主設備或從設備請求其他設備發送包含 CTE 的數據包。通過發送鏈路層 (LL) CTE 請求數據包來執行請求,該數據包中的許多參數可用于配置 CTE 創建。若遠程設備不支持 CTE,則會通知本地設備。于是,本地設備就不會使用當前連接進一步發送 CTE 請求。
具體過程如下,請求設備將:
在控制器中配置 CTE 接收參數
在控制器中啟用 CTE 請求
接收和處理 IQ 報告
不再需要時禁用 CTE 請求發送
響應設備將:
在控制器中配置 CTE 發送參數
在控制器中啟用 CTE 響應
接收并響應來自其他設備的 LL CTE 請求
在藍牙 5.1 規范中,HCI 具有一條新命令“低功耗讀取天線信息”,允許主機獲取其控制器所支持天線的信息。用于獲取遠程設備中天線陣列信息的程序尚未定義。
使用天線陣列執行 IQ 采樣時,獲取的每個樣本都必須追溯至特定天線,并且以系統化方式完成采樣。使用 HCI 配置命令中指定的模式并嚴格遵循時序規則有助于系統化采樣。這些規則的應用以及具體設備對應的具體規則,均取決于應用是基于 AoA 還是 AoD,設備屬于發送設備還是接收設備。例如,單天線發送設備可連續發送包含 CTE 的數據包。不過,IQ 采樣總是由接收設備執行,無論設備使用的天線數量多寡。
CTE 處理時間可分為 4 μs 起始保護周期 、8 μs 參考周期,之后的序列則由切換時隙、采樣時隙,或切換時隙和采樣時隙交替排列組成(圖 6)。
圖 6:該例說明了 AoA 應用中 1 μs 和 2 μs 的切換及采樣時序。單天線發送設備連續發送包含 CTE 的數據包,而接收設備根據切換和采樣序列執行 IQ 采樣。(圖片來源:Bluetooth SIG)
在參考周期內,不切換天線,一次性獲取 8 個 IQ 樣本。主機可以使用參考樣本來估算信號頻率并推斷波長,從而提高角相位角計算的精度。[1]
藍牙核心規范 5.1 版的增強功能要求生成使用 CTE 和 IQ 采樣進行測向所需的原始數據。該規范使用經過驗證的工程技術來確定信號方向,并將接口、配置和交互標準化。另一個優勢在于,如今所有芯片供應商提供的藍牙解決方案均可實現高精度測向。
各大芯片制造商爭相提供各種硬件解決方案、軟件、開發套件和軟件開發套件,讓開發人員能夠盡快熟悉如何配置使用藍牙測向功能的系統。商用資產跟蹤和 IPS 應用仍要求較高水平的開發專業知識,尤其是在天線陣列和定位引擎固件的設計方面。不過,今后的藍牙測向配置有望進一步簡化這一難題。
1: Bluetooth Direction Finding: A Technical Overview, Martin Wooley, Bluetooth SIG, March 2019.
下一篇: PLC、DCS、FCS三大控
上一篇: 工業物聯網應用的供電