使用支援藍牙 5.1 的平台實作精確的資產追蹤和室內定位 - 第 2 篇
資料提供者:DigiKey 北美編輯群
2019-08-14
編輯備註:此系列文章分為兩篇,第 1 篇介紹藍牙 5.1 的測向能力。這是低功耗藍牙韌體的附加功能,可讓設計人員開發到達角 (AoA) 和出發角 (AoD) 型定位應用,例如資產追蹤和室內定位系統 (IPS)。本文是第 2 篇,也是此系列的最後一篇,將探討適合構建和配置藍牙 5.1 測向應用的開發平台與 SoC。
最新版的藍牙核心規格 (v5.1),可讓開發人員更輕鬆實作資產追蹤與室內定位系統 (IPS)。具體來說,此規格在藍牙封包內添加固定頻率擴展訊號 (CTE),可讓接收器從 RF 訊號擷取「IQ」資料 (即計算收發器位置所需的同相與正交相位資訊),而不會有調變的斷裂效應。此外,開發人員現在只需使用主機控制介面 (HCI) 來配置控制器進行 IQ 採樣,即可更輕鬆地配置執行此類採樣的協定。
不過,擷取 IQ 資料仍非易事,需要 設計良好的天線陣列並搭配無線微處理器。即便已擷取到 IQ 資料,仍需要進行處理,將多重路徑接收、訊號極化、傳播延遲、雜訊及抖動因素納入考量之後,才能計算出發射器的位置。
本文將介紹開發實用解決方案所需的產品。接著,還會介紹來自 Dialog Semiconductor、Silicon Labs,以及 Nordic Semiconductor 公司且適合構建藍牙 5.1 測向應用的開發平台及模組。最後,本文將展示如何在這些平台上開始進行設計的原型開發、測試和驗證。
藍牙 5.1 封包架構
藍牙 5.1 封包內含由數位「1」組成的 CTE,可確保天線針對此訊號部份接收到恆定頻率 (而非傳送藍牙資料時常用的調變頻率)。此外,該資料串並未白化,亦即未去關聯化。若經過適當配置,低功耗藍牙 (LE) 無線電在收到包含 CTE 訊號的封包後,會在 CTE 期間進行 IQ 採樣。單一 IQ 樣本由訊號的振幅及相位角構成,能以笛卡兒座標表示 (圖 1)。
圖 1:測向應用會在藍牙封包的 CTE 部份期間啟動 BLE 接收裝置,針對陣列中的每個天線採集相位角與振幅 IQ 樣本。這些樣本可標示為 (I、Q) 笛卡兒座標。(圖片來源:藍牙技術聯盟)
藍牙核心規格 5.1 版詳細定義了 BLE 控制器的規格變化,能讓 AoA 與 AoD 技術採用連線 (已配對) 通訊或非連線通訊。不過,AoA 通常用於資產追蹤等連線應用,而 AoD 則用於 IPS 等非連線應用。
連線測向採用標準藍牙 5.1 封包並將 CTE 附加在最後。而非連線測向則採用添加到藍牙定期廣告封包中的 CTE (圖 2)。
圖 2:藍牙 5.1 封包結構指出 CTE 的位置和持續時間。連線應用將 CTE 附加到標準封包後,而非連線應用則使用廣告封包。(圖片來源:藍牙技術聯盟)
無論是連線還是非連線場景,開發人員都必須執行一些設定和配置步驟,才能在發射器啟用 CTE 並在接收器啟用 IQ 採樣。確切的流程將在選擇 AoA 或 AoD 型應用後決定。
構建測向解決方案
AoA 適合資產追蹤等應用。在這類應用中,發射器是移動物件,例如簡單的低成本標籤,而接收器 (或定位器) 則是固定參考點。這種實作的優點在於,標籤只需使用單一天線 (而非陣列) 來發射藍牙 5.1 協定封包,而且不需要執行運算密集型演算法,便能最終判定發射器的位置 (請見第 1 篇)。
雖然資產追蹤系統的標籤採用相對簡單的射頻 (RF) 設計原則,但需要使用藍牙 5.1 收發器,才能配置封包以納入 CTE。選擇收發器時,請務必注意 CTE 無法透過 BLE 編碼 PHY 進行傳送 (用來實作藍牙 5 技術遠距功能的無線電),必須採用非編碼類型的 PHY。
市面上已有一些商用藍牙 5.1 產品,例如 Dialog Semiconductor 針對定位服務應用推出的 DA14691 藍牙 5 低功耗 SoC。此晶片採用 Arm® Cortex®-M33 微處理器,且含有 512 KB 的隨機存取記憶體 (RAM)。Dialog 已經針對 DA14691 推出藍牙 5.1 堆疊。此外,Silicon Labs 也針對自家的 EFR32BG13 BLE SoC 推出藍牙 5.1 堆疊;此晶片採用 Arm Cortex-M4 微處理器,並含有 64 KB RAM 和 512 KB 快閃記憶體。Nordic Semiconductor 更進一步推出全新的「測向」軟硬體解決方案 nRF52811。此款 BLE 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) 連接輔助處理器。
另一大設計挑戰是:為了維持低成本,BLE SoC 通常不會提供多個天線埠,或者系統性處理陣列內各天線的切換能力。因此,需要使用 RF 開關,將 BLE SoC 的單一天線埠連接到陣列的多個天線,並在天線之間進行切換,以收集每個天線的 IQ 資料 (圖 3)。
圖 3:在 AoA 測向資產追蹤系統中,標籤會使用單一天線以及傳統的 BLE SoC,來傳送含有 CTE 的藍牙 5.1 封包。主要的運算會在系統的多天線定位器側進行。定位器收集的訊號資料,會饋送給執行測向演算法的定位引擎。(圖片來源:藍牙技術聯盟)
接收器 (或定位器) 需要使用天線陣列透過 IQ 資料來偵測訊號的相位差,而此相位差是陣列內各天線與單一發射天線的距離差所造成的。正是每個天線之間相位角的差異決定了 AoA 或 AoD。
天線通常會設計成以下三種類型:均勻線性陣列 (ULA)、均勻矩形陣列 (URA),或均勻圓形陣列 (UCA)。如第 1 篇所述,設計天線陣列需要大量經驗,對開發人員而言,更有效率的作法通常是交給第三方專家來配置最佳陣列,並提供物料清單 (BoM) 以利量產。
對天線陣列、輔助處理器、額外記憶體及天線管理的要求,會讓資產追蹤解決方案定位器端的複雜性以及成本和功耗都隨之增加。從好的一面來看,定位器通常都維持在固定位置,因此可由主電源供電。對大多數解決方案來說,需要的裝置數量,比起標籤數量還要少很多。
AoD 的實作則略為複雜一點。在此情況下,會是發射器納入天線陣列。接收器會執行 IQ 採樣,從單一天線取得測量值,然後利用遠端發射器天線陣列的設計細節,將測量值追溯到特定天線。
在 AoD 實作中,固定的定位器信標需要使用藍牙 5.1 收發器、RF 開關,以及多個天線來發射信標訊號,但不需要使用 AoA 實作中所需的額外處理器與記憶體,其原因在於這個鏈路側不需要執行訊號分析。雖然行動接收器只需要單一天線,但卻需要硬體和軟體來執行測向計算 (圖 4)。例如,在 IPS 應用中,接收器很可能是與藍牙 5.1 相容的智慧型手機,並有足夠的處理器與記憶體資源來完成作業。
圖 4:在 AoD 測向 IPS 系統中,固定信標會使用天線陣列來傳送含有 CTE 的藍牙 5.1 封包。主要的運算會在行動裝置上進行,如消費者的智慧型手機。(圖片來源:藍牙技術聯盟)
使用藍牙 5.1 進行原型開發
Dialog Semiconductor、Silicon Labs 以及 Nordic Semiconductor 目前都已推出可發射 CTE、接收該類封包並執行 IQ 採樣的 AoA 與 AoD 應用解決方案。開發人員需要決定選擇哪些資源 (即硬體與定位引擎韌體),來執行實際的測向計算作業。然而,隨著各廠商推出增強型測向解決方案,這種情況可能會在不久的將來發生變化。
舉例來說,這些公司都針對 AoA 資產追蹤應用提供了可支援標籤原型開發的開發工具。其開發程序通常依照傳統低功率無線裝置所用的程序進行。例如,開發套件包含以藍牙 5.1 目標裝置及週邊裝置為基礎的原廠全功能型收發器,可連接至裝有適合之整合開發環境 (IDE) 以及晶片供應商軟體工具的 PC 或 Mac 電腦,可促成應用開發。
以 Dialog 為例,該公司建議使用 DA14695-00HQDEVKT-P-ND 開發套件進行藍牙 5.1 開發。此套件包含主機板、以 DA14695 藍牙 5.1 SoC 為基礎的子板,以及連接到 PC 的纜線。此外,此開發套件還支援 Arduino 及 MikroElektronika mikroBUS 擴充板及功率測量。
Silicon Labs 則提供 SLWSTK6006A 無線 Gecko 入門套件。此開發套件至少隨附六個以 EFR32BG21 藍牙 5.1 SoC 為基礎的子板,可促成開發多標籤資產追蹤系統的原型。此開發套件可搭配該公司的 Simplicity Studio 使用,其支援 Flex SDK 應用程式以及組態軟體開發工具。
Nordic 則提供以該公司 nRF52840 SoC 為基礎的 nRF52840-DK 評估板,此 SoC 與 nRF52811 藍牙 5.1 SoC 完全相容。應用開發和系統配置將透過該公司的 nRF5 SDK 軟體開發工具進行,其受到眾多主流 IDE 的支援。(若要進一步瞭解低功耗藍牙應用的開發作業,請參閱 DigiKey 文章《藍牙 4.1、4.2 和 5 相容的低功耗藍牙 SoC 與工具能克服物聯網難題》。)
在預設情況下,藍牙 5.1 不會傳送含有 CTE 的封包或進行 IQ 採樣,開發人員必須使用廠商的開發工具配置系統後,才能添加這些功能。這些工具能存取主機控制介面 (HCI),再由主機使用該介面配置控制器,進行 CTE 產生和 IQ 採樣。
在無連線的情況下 (通常會使用 AoD 的情況),主機會進行以下控制器初始化步驟 (圖 5):
- 配置延長廣告
- 配置定期廣告
- 配置 CTE 傳輸
- 啟用 CTE 廣告
- 啟用定期廣告
- 啟用延長廣告
- 設定廣告資料
圖 5:主機針對無連線情況 (通常會使用 AoD 的情況) 所進行的控制器初始化步驟。(圖片來源:藍牙技術聯盟)
掃描裝置專用於接收 CTE 資料並採集廣告業者所傳送 IQ 樣本,必須配置如下:
- 配置延長掃描
- 開始延長掃描
- 與收到的定期廣告同步封包進行同步
- 啟用無連線的 IQ 採樣
在連線情況下 (通常會使用 AoA 的情況),主控或從屬裝置會請求其他裝置傳送含有 CTE 的封包。發出請求時需傳送鏈路層 (LL) CTE 請求封包,而其中含有多個參數,可用來配置 CTE 的建立。如果遠端裝置不支援 CTE,則會通知本機裝置此資訊,而本機裝置將不再使用當前連線來傳送後續的 CTE 請求。
詳細的程序如下。請求裝置將進行下列作業:
- 在控制器中配置 CTE 接收參數
- 在控制器中啟用 CTE 請求
- 接收並處理 IQ 報告
- 若不再需要,就停用 CTE 請求傳輸
回應裝置將進行下列作業:
- 在控制器中配置 CTE 傳送參數
- 在控制器中啟用 CTE 回應
- 接收並回應來自其他裝置的 LL CTE 請求
在藍牙 5.1 規格中,HCI 具有新命令「LE 讀取天線資訊」,可讓主機取得控制器所支援天線的相關資訊。但取得遠端裝置天線陣列相關資訊的流程,仍待制訂。
以天線陣列進行 IQ 採樣時,擷取的各個樣本必須追溯到特定天線,而且必須以系統性方式完成採樣。使用 HCI 配置命令所指定的模式,並遵循嚴格的時序規則,將有助於實現此系統化方法。如何應用這些規則,以及裝置所適用的規則為何,取決於應用使用的是 AoA 還是 AoD,以及裝置是發射還是接收。例如,使用單一天線的發射裝置會傳送包含 CTE 的連續封包;然而,IQ 採樣則永遠由接收裝置進行,與採用的天線數量無關。
CTE 所分配到的處理時間可分為:初始的 4 μs 保護期、8 μs 參考期,接著是一連串切換時隙、採樣時隙,或是成對的切換和採樣時隙 (圖 6)。
圖 6:本範例以圖形方式展示 AoA 應用的 1 μs 和 2μs 時序切換及採樣。使用單一天線的發射裝置將持續發射含有 CTE 的封包,而接收裝置則會根據切換和採樣順序進行 IQ 採樣。(圖片來源:藍牙技術聯盟)
在參考期內,天線不會切換,且能取得八個 IQ 樣本。主機可使用參考樣本,估算訊號的頻率並推斷波長,進而提高角度計算的精確度。[1]
結論
藍牙核心規格 5.1 版在功能上有所增進,可使用 CTE 和 IQ 採樣產生測向所需的原始資料。此規格使用經過實證的工程技術來確定訊號方向,並對介面、配置和互動進行標準化。另一個優點是,可在所有提供藍牙解決方案的晶片廠商之間,達到高精確度的測向功能互通。
晶片廠一直加快腳步推出硬體解決方案、軟體、開發套件和 SDK,讓開發人員能夠迅速熟悉系統的配置,以充分利用藍牙的測向功能。開發商用資產追蹤和 IPS 應用仍然需要高水準的專業知識,特別是天線陣列和定位引擎韌體的開發,但未來的藍牙測向格局,有望進一步緩解這方面的難題。
參考資料
1: Bluetooth Direction Finding: A Technical Overview, Martin Wooley, Bluetooth SIG, March 2019.

聲明:各作者及/或論壇參與者於本網站所發表之意見、理念和觀點,概不反映 DigiKey 的意見、理念和觀點,亦非 DigiKey 的正式原則。