WLAN RTT (IEEE 802.11mc)


WLAN RTT (IEEE 802.11mc)

Android 9 中的 WLAN 往返時間 (RTT) 功能允許設備測量與其他支持設備的距離:無論它們是接入點 (AP) 還是 WLAN 感知對等設備(如果設備支持 WLAN 感知)。此功能基於 IEEE 802.11mc 協議,使應用能夠使用准確性更高的定位功能和增強的感知功能。

示例和來源

要使用此功能,請采用在 Android 開源項目 (AOSP) 中提供的 WLAN 硬件接口設計語言 (HIDL)。在 Android 8.0 中,HIDL 取代了之前使用的硬件抽象層 (HAL) 結構,以便通過指定收集到接口和軟件包的類型和方法調用來簡化實現流程。

借助 WLAN HIDL 使用 WLAN RTT 功能:hardware/interfaces/wifi/1.0 或更高版本。

您可以參考舊版 WLAN HAL 來了解它與新 HIDL 接口之間的關系:hardware/libhardware_legacy/+/master/include/hardware_legacy/rtt.h

實現

要實現 WLAN RTT,您必須提供框架和 HAL/固件支持:

  • 框架:

    • AOSP 代碼
    • 啟用 WLAN RTT:需要功能標記
  • WLAN RTT (IEEE 802.11mc) HAL 支持(意味着固件支持)

要實現此功能,請采用 WLAN HIDL,另外還要啟用功能標記:

  • 在位於 device/<oem>/<device> 的 device.mk 中,修改 PRODUCT_COPY_FILES 環境變量,以便支持 WLAN RTT 功能:

    PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml
     

除此以外,實現此功能所需的所有內容都會包含在 AOSP 中。

隨機分配 MAC 地址

為加強隱私保護,在 WLAN RTT 事務期間使用的 MAC 地址必須是隨機分配的地址,即不得與 WLAN 接口的原生 MAC 地址一致。不過,有一種例外情況:如果某個設備與 AP 相關聯,則此設備可能會使用與其相關聯的 MAC 地址來處理與此 AP 或其他 AP 之間的任何 RTT 事務。

驗證

這項功能有適用的 Android 兼容性測試套件 (CTS) 測試。CTS 會檢測何時啟用了這項功能,並會自動包含相關測試。您也可以使用供應商測試套件 (VTS) 和 acts/sl4a(用於執行擴展程序集成測試的測試套件)來測試此功能。

單元測試

使用以下測試執行 WLAN RTT 軟件包測試:

服務測試:

% ./frameworks/opt/net/wifi/tests/wifitests/runtests.sh -e package
com.android.server.wifi.rtt
 

Manager 測試:

% ./frameworks/base/wifi/tests/runtests.sh -e package android.net.wifi.rtt
 

集成 (ACTS) 測試

acts/sl4a 測試套件(在 /tools/test/connectivity/acts/tests/google/wifi/rtt/README.md 中有相應說明)提供了功能測試、性能測試和壓力測試。

CTS

這項功能有適用的 Android 兼容性測試套件 (CTS) 測試。CTS 會檢測何時啟用了這項功能,並會自動包含相關測試。支持 WLAN RTT (IEEE 802.11mc) 的接入點必須位於被測設備的覆蓋范圍內。

您可以使用以下命令觸發 CTS 測試:

% atest WifiRttTest
 

校准

為了確保 WLAN RTT 能夠正常運行,802.11mc 協議中返回的距離的精確度應在關鍵績效指標 (KPI) 范圍內(理想情況下)。對於所列帶寬出現的 90% 的 CDF 錯誤,針對距離估算值建議的 KPI 具有以下容差:

  • 80MHz:2 米
  • 40MHz:4 米
  • 20MHz:8 米

為確保正確實現功能,您必須進行校准測試。

您可以通過以下方式來實現這項測試:通過不斷增加距離,比較地面真實距離和 RTT 估算距離。如果真實距離和 RTT 估算距離基本一致,則您應該針對已知已進行 RTT 校准的設備驗證解決方案。距離校准應在下列條件下進行測試:

  1. 大型開放實驗室或沒有大量金屬物體(金屬物體可能會導致多路徑異常高發)的走廊。
  2. 視線 (LOS) 路線/路徑至少要延長 25 米。
  3. 從路線一端到另一端以每次增加 0.5 米的方式標記。
  4. 選擇一個位於路線一端的位置來安裝支持 RTT 的接入點(位於地面以上 20 厘米處);一個可移動支架(也位於地面上方 20 厘米處),用於沿路線移動 Android 手機(或接受測試的其他 Android 移動設備),可移動支架應與每隔 0.5 米出現的標記對齊。注意:這項重復性任務可由小型機器人來完成,也可以由人工操作員來完成。
  5. 每個標記處應記錄 50 個距離結果,同時應記錄相應標記距離接入點的距離。應在每個標記位置處計算統計信息(例如距離均值和方差)。

您可以根據第 5 步中的結果繪制一個圖表,其中 X 軸為地面真實距離,Y 軸為估算距離,以及一條估算出的最合適的回歸路線。理想的設備校准會產生一條梯度為 1.0 的線,且 Y 軸的偏差為 0.0 米。如果這些值的偏差落在相應帶寬的 KPI 范圍內,則這些偏差是可接受的。如果結果超過 KPI 范圍,則應該重新校准設備功能,以使結果符合 KPI 規范。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM