[GNSS筆記]從衛星到你的手機,定位是如何實現的?

每天我們打開手機地圖、使用導航、叫外送,都在使用 GNSS 定位技術。但你有想過,為什麼手機能知道你在哪裡嗎?衛星在 2 萬公里外的太空,是如何精確定位到地面上的你?

在我剛開始接觸 GNSS 相關的功能開發時,也對這個「看不見的魔法」充滿好奇。經過多年的實務開發和測試,把手邊的資料做個整理,讓大家更理解 GNSS 定位的原理。


一、什麼是 GNSS?

GNSS(Global Navigation Satellite System,全球導航衛星系統)是一個通用術語,包含了全球所有的衛星定位系統:

系統 國家/地區 衛星數量 狀態
GPS 美國 31 顆 運行中
GLONASS 俄羅斯 24 顆 運行中
Galileo 歐盟 30 顆 運行中
BeiDou 中國 35 顆 運行中

很多人會把 GPS 和 GNSS 混用,但嚴格來說,GPS 只是 GNSS 的一種。現代的手機和導航設備通常會同時使用多個系統,以提高定位精度和可靠性。


二、GNSS 系統的三大組成

GNSS 是一個複雜的系統工程,由三個部分組成:

1. 太空段(Space Segment)

24-35 顆衛星組成的星座,分布在 6 個軌道面上,高度約 20,000 公里(中地球軌道 MEO)。

為什麼要這麼多顆?
– 確保地球上任何地點、任何時間都能看到至少 4 顆衛星
– 衛星繞地球一圈約 12 小時
– 每顆衛星覆蓋地球約 38% 的面積

衛星上的關鍵設備
原子鐘:精度達每天誤差 < 1 奈秒(銣或銫原子鐘)
訊號發射器:發送導航訊號
太陽能板:提供電力
姿態控制系統:維持衛星方向

2. 控制段(Control Segment)

全球分布的地面監控站,負責:
監測衛星狀態:軌道、時鐘、訊號品質
計算修正參數:星曆(衛星軌道)、時鐘誤差
上傳資料:更新衛星的導航訊息

例如 GPS 系統有 1 個主控站(美國科羅拉多)、6 個監控站、4 個上傳站。

3. 使用者段(User Segment)

就是我們手上的接收機:手機、車用導航、無人機、測量儀器等。

接收機的工作
– 捕獲並追蹤衛星訊號
– 解調導航訊息
– 測量到衛星的距離
– 計算自己的位置


三、定位的核心原理:三邊測量

GNSS 定位的核心概念是 三邊測量(Trilateration),跟三角測量不同,它不需要測量角度,只需要測量距離。

理解三邊測量

想像你在一個陌生的城市迷路了:

衛星1
– 衛星告訴你:「你距離我 20,000 公里」
– 你的位置在一個球面上(以衛星為中心,半徑 20,000 公里)
– 可能的位置:無限多個

衛星2
– 第二顆衛星說:「你距離我 21,000 公里」
– 兩個球面相交形成一個
– 可能的位置:還是很多

衛星3
– 第三顆衛星說:「你距離我 22,000 公里」
– 三個球面相交於兩個點
– 其中一個點通常在地球外太空(排除)
– 理論上可以定位了

衛星4
– 等等,為什麼還需要第 4 顆?
因為使用者接收端的時鐘不準!(這是重點)
– 需要第 4 顆衛星用來解算時鐘誤差
– 得到唯一的精確位置

💡 實務經驗: 如果只用 3 顆衛星強制定位(2D 模式),誤差可以達到上百公尺。這是因為假設高度固定的前提往往不準確,而且無法修正時鐘誤差。所以現代接收機通常要求至少 4 顆衛星才輸出定位結果。


四、如何測量距離?測時間!

其實,GNSS 定位的本質不是測量「距離」,而是「時間」。

測距原理

  1. 衛星發送訊號:帶有精確的時間戳記(例如:12:00:00.000000000)
  2. 接收機收到訊號:記錄接收時間(例如:12:00:00.067000000)
  3. 計算時間差:[ \Delta t = 0.067 \text{ 秒} ]
  4. 換算成距離:[ d = c \times \Delta t = 3 \times 10^8 \text{ m/s} \times 0.067 \text{ s} = 20,100,000 \text{ 公尺} ]

為什麼叫「偽距」?

因為測量到的距離包含了誤差,最主要的是接收機時鐘誤差

\text{偽距} = \text{真實距離} + c \times \Delta t_{時鐘誤差} + \text{其他誤差}

時鐘誤差的影響有多大?
– 衛星上的原子鐘:每天誤差 < 1 奈秒
– 接收機的石英振盪器:每天誤差約 1 毫秒
精度差距:100 萬倍!

如果接收機時鐘只有 1 微秒的誤差:
距離誤差 = 3 \times 10^8 \times 1 \times 10^{-6} = 300 \text{ 公尺}

這就是為什麼需要第 4 顆衛星來解算時鐘誤差。


五、GNSS 訊號結構

GNSS 訊號非常微弱(到達地面時功率約 -130 dBm,比手機訊號弱 100 萬倍),但為什麼還能接收?答案是展頻技術

訊號的三個組成部分

1. 載波(Carrier)
– GPS L1:1575.42 MHz
– GPS L2:1227.60 MHz
– GPS L5:1176.45 MHz

2. 測距碼(Ranging Code)
C/A 碼(民用):1.023 MHz,每顆衛星有獨特的碼
P 碼(軍用):10.23 MHz,加密

3. 導航訊息(Navigation Message)
– 衛星軌道資料(星曆)
– 時鐘修正參數
– 系統狀態資訊
– 傳輸速率:50 bps(非常慢!)

展頻技術的優勢

GNSS 使用 CDMA(碼分多址) 技術:
– 所有衛星在同一頻率發射
– 用不同的測距碼區分
– 即使訊號被雜訊淹沒,仍能透過相關運算提取出來
處理增益約 30-40 dB

💡 實務經驗: 在室內測試時,我們用頻譜分析儀根本看不到 GPS 訊號(被雜訊淹沒),但接收機透過相關運算,仍能成功捕獲衛星。這就是展頻技術的威力。不過室內定位精度很差,因為訊號穿透建築物會嚴重衰減和延遲。


六、定位計算流程

接收機如何從訊號變成位置?完整流程如下:

步驟 1:捕獲(Acquisition)
- 搜尋可見衛星
- 找到測距碼的相位
- 粗略估計都卜勒頻移

步驟 2:追蹤(Tracking)
- 鎖定訊號
- 持續測量碼相位和載波相位
- 補償都卜勒效應

步驟 3:解調導航訊息
- 讀取星曆資料(衛星軌道)
- 讀取時鐘修正參數
- 需要 12.5-30 秒(完整星曆)

步驟 4:計算衛星位置
- 根據星曆和時間
- 計算衛星在 ECEF 座標系的位置

步驟 5:測量偽距
- 從碼相位計算傳播時間
- 乘以光速得到偽距

步驟 6:解算位置
- 建立 4 個方程式(4 顆衛星)
- 解 4 個未知數(X, Y, Z, Δt)
- 使用最小二乘法或卡爾曼濾波

冷啟動 vs 熱啟動
冷啟動:完全沒有資訊,需要 30-60 秒
熱啟動:有星曆和時間,只需 5-10 秒
溫啟動:有部分資訊,需要 15-30 秒


七、誤差來源與精度

即使原理完美,實際定位還是會有誤差。

主要誤差來源

誤差類型 影響 修正方法
衛星時鐘誤差 1-2 公尺 星曆參數修正
軌道誤差 1-5 公尺 精密星曆
電離層延遲 5-30 公尺 雙頻修正、模型
對流層延遲 0.5-5 公尺 模型修正
多路徑效應 1-10 公尺 天線設計、演算法
接收機雜訊 0.5-2 公尺 硬體品質

不同應用的精度需求

  • 手機導航:5-10 公尺(單點定位)
  • 車用導航:3-5 公尺(多 GNSS + 地圖匹配)
  • 測量應用:公分級(RTK)
  • 授時應用:奈秒級(原子鐘同步)

💡 實務經驗: 我們在台北市區測試時發現,多路徑效應是最大的誤差來源。高樓反射的訊號會讓接收機「以為」衛星在錯誤的方向,導致定位偏移 20-50 公尺。後來我們加入多路徑檢測演算法,比對訊號的相關峰值,可以識別並排除部分反射訊號。


八、為什麼要用多 GNSS 系統?

現代接收機通常支援多個 GNSS 系統(GPS + GLONASS + Galileo + BeiDou),優勢明顯:

優勢 1:更多可見衛星

  • 單 GPS:通常 6-10 顆
  • 多 GNSS:可達 15-25 顆
  • 在都市峽谷、山區特別有用

優勢 2:更好的幾何分布

  • 衛星分布更均勻
  • DOP 值更低
  • 定位精度提升 20-40%

優勢 3:更高的可靠性

  • 某個系統故障時仍能定位
  • 減少對單一國家系統的依賴

優勢 4:更快的首次定位

  • 更多衛星 = 更快捕獲
  • 冷啟動時間縮短 30-50%

九、GNSS 的實際應用

GNSS 不只是導航,應用範圍非常廣:

位置服務

  • 車用導航、手機地圖
  • 外送、叫車服務
  • 運動追蹤、健身手錶

測量與測繪

  • 土地測量(RTK,公分級)
  • 地質監測、地震研究
  • 精準農業(自動駕駛農機)

授時服務

  • 電信基站時間同步
  • 金融交易時間戳記
  • 電力網同步

科學研究

  • 氣象預報(電離層監測)
  • 地殼變動監測
  • 太空天氣研究

十、總結

GNSS 定位的核心原理可以總結為:

測時間 → 算距離 → 定位置

關鍵技術要點

  1. 原子鐘:提供奈秒級的時間基準
  2. 展頻技術:讓微弱訊號能被接收
  3. 三邊測量:用距離而非角度定位
  4. 4 顆衛星:3D 位置 + 時鐘誤差修正
  5. 多系統融合:提升精度和可靠性

理解 GNSS 的關鍵

  • 不是測距離,是測時間
  • 時鐘精度決定定位精度
  • 衛星幾何分布比數量更重要
  • 誤差修正是提升精度的關鍵

你對 GNSS 技術有什麼疑問或經驗?歡迎在下方留言討論!

如果這篇文章對你有幫助,歡迎分享給對衛星定位技術有興趣的朋友 😊

分類: 技術相關,標籤: , , , , , , , , , , , , , , , , , 。這篇內容的永久連結

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *