原始全球導航衛星系統測量資料

Android 架構可讓您存取多部 Android 裝置上的原始 GNSS 測量值

您可以在 GitHub 的 GPS Measurement Tools 存放區中找到這些工具,其中包含 GnssLogger 初步版本的原始碼,以及適用於 LinuxWindowsmacOS 的桌面 GNSS 分析應用程式的可執行檔。安裝和使用手冊

Google 智慧型手機 Decimeter 挑戰

Google、航海學院衛星部門和 Kaggle 將贊助 ION GNSS+ 舉辦的第 3 屆智慧型手機 Decimeter 挑戰賽。這項競賽將於 2023 年 9 月 12 日開始,2024 年 5 月 23 日結束。超過 150 個新追蹤記錄將公開,其中包含原始 GNSS 測量資料、感應器資料和精確的真值。所有人都可以參加這項競賽。我們鼓勵參與者向 ION GNSS+ 2024 的「智慧型手機分米挑戰」研討會提交摘要。

如需詳情 (包括規則和條例),請造訪 Kaggle 的競賽頁面,該頁面將於 2023 年 9 月 12 日美國山區時間下午 3 點 30 分上線。

支援原始全球導航衛星系統測量資料的 Android 裝置

搭載 Android 10 (API 級別 29) 以上版本的裝置必須支援原始 GNSS 測量資料。在 Android 9 (API 級別 28) 以下版本中,所有搭載 2016 年或更新硬體的 Android 裝置都必須支援原始 GNSS 測量功能。目前,超過 90% 的現有 Android 手機都有原始測量資料。

部分原始全球導航衛星系統測量資料欄位為選用,且可能因所使用的全球導航衛星系統晶片組而異。這些欄位的範例包括:

  • 偽距和偽距速率。
  • 導覽訊息。
  • 自動增益控制器 (AGC) 值。
  • 累積的差異範圍 (ADR) 或載波相位。

下表列出幾個 Android 裝置範例,並顯示這些裝置支援的原始 GNSS 測量資料等級:

型號 Android 版本 AGC ADR (電信業者階段) L5 全球系統
Google Pixel 4/5/6/7 12 GPS
GLO
GAL
BDS
QZS
Xiaomi Mi 9 9 no GPS
GLO
GAL
BDS
QZS
Xiaomi Mi 8 8.1 no GPS
GLO
GAL
BDS
QZS
Huawei P30 Pro 9 no GPS
GLO
GAL
BDS
Huawei Mate 20 9 no GPS
GLO
GAL
BDS
One Plus 7 Pro 9 no GPS
GLO
GAL
One Plus 7 9 no GPS
GLO
GAL
Samsung Galaxy S20/S21 Ultra (Exynos)* 12 GPS
GLO
GAL
BDS
QZS
Samsung Galaxy S9 (Exynos)* 8.0 no no GPS
GLO
GAL
QZS
Samsung Galaxy S9+ 8.0 no no no GPS
GLO
GAL

* Samsung Galaxy Exynos 版本提供近幾年的 ADR。Samsung Snapdragon 版本尚未提供 ADR。

如要進一步瞭解 Android 裝置提供的原始測量欄位定義,請參閱「全球衛星導航系統」。

原始設備製造商 (OEM)、開發人員和研究人員可以利用本頁的工具測試新手機設計、驗證功能、開發新演算法、評估 GNSS 系統導入的改善項目,以及建構附加價值的應用程式。

SUPL 用戶端程式碼範例

Suplclient 是用於存取 supl.google.com 以取得即時星曆表的範例程式碼。SuplTester 類別提供 SUPL 用戶端專案的使用範例。SuplTester 會設定 SUPL TCP 連線規格,然後在指定的緯度和經度傳送 LPP SUPL 要求,並列印 SUPL 伺服器回應。

天線校正資訊

從 Android 11 (API 級別 30) 開始,您可以使用 GnssAntennaInfo 類別存取天線特性,例如相位中心偏移 (PCO) 座標、相位中心變化 (PCV) 修正值,以及訊號增益修正值。這些修正值可套用至原始測量值,以提高準確度。

使用 GnssAntennaInfo 時,請注意下列系統行為。這些限制旨在強化使用者隱私。

  • 這個 API 提供的特性僅適用於裝置型號,而非個別裝置。

記錄原始測量資料

您可以使用 Android Studio 建構應用程式,擷取原始 GNSS 測量值和其他位置資料,並將這些資料記錄到檔案中。如需這類應用程式的原始碼範例,請參閱「GPS 測量工具」。

Google GNSSLogger 是使用這項功能開發的範例應用程式。如要透過範例應用程式取得 GNSS 輸出內容,裝置必須支援原始 GNSS 測量資料。

使用 GNSS 記錄器擷取 GNSS 記錄檔後,您可以將記錄檔從裝置複製到電腦,以便進一步分析。您可以在 GNSS 記錄器中透過電子郵件將檔案傳送給自己,或將檔案儲存到 Google 雲端硬碟。您也可以使用裝置上的檔案管理應用程式儲存檔案,或者使用 Android Debug Bridge (ADB),詳情請參閱「將檔案複製到/從裝置」。

分析原始測量資料

GNSS 分析應用程式會讀取 GNSS 記錄器收集到的 GPS/GNSS 原始測量資料,並用於分析 GNSS 接收器的行為,如圖 1 所示。

您可以下載 LinuxWindowsmacOS 系統的應用程式。

GNSS 記錄器和 GNSS 分析

圖 1. GNSS 記錄器會收集可供 GNSS 分析使用的精確測量資料。

GNSS Analysis 應用程式是建構於 MATLAB,但您不需要 MATLAB 即可執行。應用程式會編譯為可安裝 MATLAB Runtime 副本的執行檔。

GNSS 分析控制台

如圖 2 所示,您可以透過 GNSS 分析控制台管理應用程式功能,例如:

  • 選取要顯示的衛星。
  • 控制用於計算測量誤差的參考位置、速度和時間 (PVT)。
  • 產生分析報表。
  • 在資料中定義開始和結束時間之間的時間範圍。

GNSS 分析控制台)

圖 2. GNSS 分析控制台

GNSS 分析互動式圖表

GNSS Analysis 應用程式提供以無線電頻率 (RF)、時鐘和測量資料欄排列的互動式圖表,如圖 3 所示。

GNSS 分析互動式圖表)

圖 3. GNSS Analysis 應用程式顯示互動式圖表。

RF 欄會顯示下列資料:

  • 每個星座中,訊號最強的四顆衛星。
  • 針對每顆衛星,顯示載波雜訊比率 (C/No) 的時間圖表。
  • 衛星位置的天空圖。

時鐘欄會顯示下列資料:

  • 虛擬範圍。
  • 接收器時脈的偏移頻率,計算方式為使用下列其中一個參考位置:

    • 自動計算的平均位置。
    • 使用者輸入的緯度、經度和高度。
    • 國家海洋電子協會 (NMEA) 檔案,內含真實參考 PVT。
  • 當接收器重新設定主要振盪器的占空比時,用於記錄時間的待機時鐘偏移。

「測量」欄會顯示下列資料:

  • 從原始偽距離取得的加權最小平方位置結果。權重計算會使用每項測量值的回報不確定性,這屬於原始測量 API 規格。
  • 每項測量值的每個偽距離錯誤。
  • 每項測量資料的每個偽距離速率錯誤。

GNSS 分析測試報告

GNSS 分析可產生測試報告,如圖 4 所示,用於評估 API 導入方式、接收訊號、時鐘行為和測量精確度。針對每個案例,應用程式會根據與已知基準測試的效能,回報接收器是否通過或未通過測試。這份測試報告對裝置製造商而言相當實用,可在設計和實作新裝置時重複使用。如要產生測試報告,請按一下「製作報告」

GNSS 分析測試報告

圖 4. GNSS 分析測試報告

「Compare」分頁會並排比較多個 GNSS 記錄檔的 C/No,如圖 5 所示,這在比較多個裝置的 RF 效能時很有用。

C/沒有並列比較資料

圖 5. 並列比較多個記錄檔中的 C/No 資料

想查看原始碼嗎?GPS 測量工具專案提供開放原始碼 MATLAB 範例,可用於使用 GPS 星座信號執行下列動作:

  • 讀取使用 GNSS Logger 範例應用程式擷取的資料。
  • 計算並以圖表呈現偽距離。
  • 計算加權最小平方位置和速度。
  • 查看及分析載具階段。

GNSS 分析應用程式 4.6.0.1 版本資訊

GNSS Analysis 應用程式 4.6.0.1 版包含下列更新項目:

  • 在 Matlab R2022a 上建構 GnssAnalysisTool,以便存取新功能:
  • 狀態視窗會自動捲動:系統會持續顯示最新的狀態訊息。
  • 新增了 C/N0 比較表,並依星座和 L1 與 L5 進行比較。
  • 新增了偽距離率殘差圖。
  • 移除參考 PVT 靜止或移動的專屬分頁,方便查看已選取的參考 PVT 類型。
  • 將「製作報表」結果從 HTML 移至狀態視窗。
  • 已移除「Mission Planner」分頁。請使用 gnssmissionplanning.com/ 或 www.gnssplanning.com/。
  • 修正 RINEX 觀測檔案剖析相關問題。
  • 當 BKG 無法運作時,會改用 NASA CDDIS 行星儀資料來源來取得 GPS 和 GLO 資料。
  • 從 igs.bkg.bund.de 移至 igs-ftp.bkg.bund.de
  • 如果 GAL、QZSS 或 BDS 星曆資料下載失敗,請勿退出分析。
  • 即使晶片組不支援 BaseBandCNo,也能建立天線 CNo 分析

安裝和使用手冊

提供意見

我們希望改善 Android 對 GNSS 的支援。如有任何 Android 版 GNSS 支援問題,請使用 GNSS 問題追蹤器回報。請先查看常見問題,確認問題是否已獲得解決,再發布問題。

如果你曾使用 GNSS 分析工具,請填寫簡短問卷調查提供意見回饋。如有其他問題或需要支援,請參閱開發人員支援資源

如需常見問題的解答,請參閱 GNSS 分析工具常見問題