GPS從入門到放棄(九) — 僞距與載波相位
在第一篇GPS基礎原理講過GPS的基本原理,要實現定位,需要知道衛星的位置和衛星到接收機的距離。衛星位置我們根據導航電文可以推算出來(參考GPS衛星位置解算),剩下的就是距離了。
GPS接收機對每顆衛星都可以產生兩個基本距離測量值:僞距和載波相位,下面先分別說,再結合起來說。
僞距(Pseudo Range)
僞距就是接收機到衛星之間的大概距離。之所以稱之爲僞距,是因爲其不是真實距離,與真實距離之間有各種各樣的誤差。本來根據衛星信號的發射時間 與接收機收到信號的接收時間 可以得到信號的傳播時間,再乘以信號的傳播速度光速 就可以得到接收機到衛星的距離;但是我們知道衛星時鐘和接收機鍾存在鐘差,而且還有大氣層等其他因素的影響,所以這樣直接測得的距離不等於接收機到衛星的真實距離,只能稱之爲僞距 :
假設真實距離爲 ,接收機與 GPS 時間的鐘差爲 ,衛星與 GPS 時間的鐘差爲 ,再考慮到信號在傳播過程中經過大氣層的延時,假設因大氣電離層導致的延時爲 ,因大氣對流層導致的延時爲 ,其他各種未考慮到的因素及噪聲的導致的延時爲 ,則:
於是可得:
該式右邊可以認爲都是已知量,其中 和 都有相應的模型, 也有模型在導航電文中(參考GPS導航電文)。而
其中 爲衛星位置座標,
於是有
這就是更加嚴格準確的GPS定位基本方程,包含 四個未知數,針對四顆衛星觀測就可以得到4個方程的方程組,可以與第一篇中最後給出的方程組對比一下。
那這個僞距觀測量 我們怎麼來得到呢?一般來說,可以由接收機通過觀測得到。根據僞距計算公式 ,是接收機時間,接收機是知道的,所以我們只需要求出 就可以了。
是衛星發送信號的時間,可由接收機接收到的導航電文結合跟蹤的C/A碼相位來確定。計算公式如下:
其中 爲導航電文交接字中GPS時間; 爲當前子幀中,接收機已接收到的完整的字的個數; 爲當前字中,接收機已接收到的完整的比特的個數; 爲當前比特中,接收機已接收到的完整的C/A碼的個數; 爲當前C/A碼中,接收機已接收到的碼片的個數。要注意,這個 是用衛星時鐘的。
一般接收機對C/A碼相位的跟蹤精度可以達到碼片的1% ~ 2%,一個碼片是300m左右,於是僞距精度可以達到3 ~ 6m左右。
載波相位(Carrier Phase)
除了通過僞距來測距之外,載波相位也可以用來測距。
我們知道L1載波的的頻率爲1575.42MHz,波長約爲19cm。如果我們能測量出傳播路徑上兩點之間的相位差,那麼這兩點間的距離就可以求出來。假設 爲接收機複製的衛星載波信號的相位,爲接收機接收到的衛星載波信號的相位,則載波相位測量值(相位差)爲
因爲載波的波長很短,遠遠小於接收機到衛星的距離,信號傳到地球中間過程可能產生整數個(N個)週期的差別,這個 N 我們稱之爲周整模糊度。設波長爲 ,接收機與衛星之間的距離爲 ,則有
若再考慮大氣電離層導致的延時 、大氣對流層導致的延時 、接收機鐘差 、衛星鐘差 、以及其他各種未考慮到的因素及噪聲的導致的相位差 ,則有
如果知道僞距 ,我們可以用僞距來粗略估算周整模糊度 N,方法爲:
其中,“[ ]”表示取整運算。當然,因爲僞距的精度有限,所以得到的 N 的誤差也比較大,可以達到幾十周之多。
僞距和載波相位結合
從前面的介紹可以看出,僞距精度不如載波相位高,但是僞距可以實現絕對定位,而載波相位有一個未知的周整模糊度,無法實現絕對定位,如果能把兩者結合起來,必然能達到更好的效果。
一種結合的方法是用載波相位來平滑僞距。設 爲 k時刻的僞距測量值, 爲 k時刻的載波相位測量值, 爲 k時刻的平滑僞距,有:
其中 爲平滑時間常數, 值越大,平滑僞距結果就越依賴於載波相位變化量,也就越平滑。