產生背景 早在第二次世界大戰以前,世界就已經出現了無線電導航系統。
最早人們採用的是長波信號,波長長達26公里,因為長波信號可以輕易地被電離層反射,所以美國的OMEGA系統用了八個發射器就把信號覆蓋了全球。不過因為信號波長比較長,定位精度受到很大影響:OMEGA系統的精度只有六公里。
為提高定位精度,只有提高無線電信號頻率,但是藉助電離層反射的全球覆蓋就受到了影響:波長越短的信號,直線傳輸特性越強,同時不能被電離層反射:通過把波長減小到2.6公里,LORAN系統倒是把定位精度提高到450米了,可全球只有10%的面積被信號覆蓋。
自從1957年有了衛星,科學家的興趣自然就轉到這上面來了:衛星可以發射短波長信號,穿透電離層覆蓋半個地球的面積。
歷史演變 從20世紀60年代開始,美軍就不斷地試驗並改進以衛星為基礎的無線電導航系統,從最早的TRANSIT,到NAVSTAR, 一步一步地把GPS系統進行完善並降低接收系統成本。隨著接收系統的成本不斷降低,很多有商業頭腦的人預見到了GPS系統的民用市場的廣大,把GPS擴展到民用的呼籲在美國國內越來越高。
不過最終促成此事的是一樁悲劇:1983年,韓國的KAL-007航班因為迷航誤入前蘇聯領空,被前蘇聯戰鬥機擊落,機上乘客和機組人員無一生還。那會兒GPS還沒有投入民用,民用航班的導航主要靠無線電信標,萬一地面信標站或機上系統有故障,那麻煩就大了。於是美國前總統里根於1984年正式宣布:開放GPS信號的民間使用,無償提供服務。 從1989年2月開始,真正用於實用的BLOCK II 衛星開始發射升空。到1993年12月,美國國防部宣布GPS系統初步完成,由24顆BLOCK I 和 BLOCK II 衛星組成。1995年7月,美國國防部宣布GPS系統完全完成,由24顆BLOCK II衛星組成。
系統組成 GPS系統由三部分組成:控制部分,空間部分,用戶端。
空間部分和控制部分由美國軍方維護,主要是保證衛星正常工作及其傳送的信號準確無誤。用戶端就是大家平常用的GPS接收機,雖然形式多種多樣,但基本操作都是接收衛星信號並計算接收機所在位置。
在空間部分,美軍布置了24顆BLOCK II衛星,由ROCKWELL公司製造,星重700-900公斤,包含太陽能極板為5米寬,設計使用壽命為7.5年。衛星軌道距地面20200公里,軌道面與地球赤道面夾角為55度,軌道面與赤道面交線之間在赤道面上的夾角為60度,每個軌道面布置4顆衛星,所以總衛星數是6個軌道面乘以4為24顆。其中21顆正式使用,3顆備用。每顆衛星每12個小時繞地球一周。這樣算下來,在任何時刻、地球的任意地方,基本都能“看到”12顆左右的衛星。
定位原理 GPS接收機的定位實際是就是通過計算接收機距不同衛星的距離來完成的:
如果接收機知道它離第一顆衛星的距離,接收機在宇宙中可能的位置就是一個球;如果接收機同時知道它離第二顆衛星的距離,接收機可能的位置就是兩個球的交線;如果接收機同時知道它離第三顆衛星的距離,那么接收機的可能位置就是三個球的兩個交點。那這兩個交點到底哪個是真正的位置點呢,其實非常好判斷:一個點在距離地表10公里之內,一個點在距離地表幾千公里以外,你說哪個是?
那么大家都知道,GPS需要至少四顆衛星來定位,那這第四顆衛星是怎么回事呢?無線電波以每秒30萬公里傳輸,從衛星發射信號到接收機收到信號,只需要大概0.06秒。如果接收機的時間精度是百萬分之一秒,那末折算出來的距離誤差就是300000000/100000000=300米。在衛星上的鐘是四個原子鐘,精確地同步到精度為幾十億分之一秒。可接收機的時鐘是普通石英鐘,精度遠達不到百萬分之一秒,如果也用原子鐘的話,重量咱們先不說,每個原子鐘造價是二十萬美金,那還有誰用的起呀?所以,第四顆衛星的信號實際上是提供時間基準,給GPS接收機用來計算接收機距離其他三顆衛星的距離:有了時間基準,接收機就可以測量從其他三顆衛星到達接收機的時間,然後把時間轉換成距離。
信號結構 一般民用GPS使用的是GPS系統的L1載波,頻率為1575.42 MHz。在這個載波頻率上面以調相方式載入了兩種不同的偽隨機噪聲碼:C/A碼和P碼。C/A碼是用於民用的測距碼,碼長為1023個碼元,即1023次從數字零到數字1的跳動,這1023個碼元每秒重複1000次,即1.023MHz, 或每一百萬分之一秒跳動一次。P碼是軍用碼,碼長非常長,碼速為10.23MHz,即每千萬分之一秒跳動一次。 由於GPS接收機通過對比碼元的跳動來計算從衛星到接收機的時間,然後再轉換成距離,顯而易見,P碼的時間精度高了10倍,距離精度也就高了10倍:現代信號處理技術計算碼元跳動的時間精度是碼寬的百分之一,一百萬分之一秒折合出來的距離是300米,它的百分之一就是3米。而P碼的精度是這個數值的十分之一,即0.3米。換句話說,在計算某個衛星距離接收機的實際距離的時候,C/A碼的理論精度是3米。 接收機“知道”了自己與衛星的距離,並不能計算出自己的位置,因為它不知道衛星在發射電波時的位置,因此在衛星載波上面,還載入了一個50Hz的導航電文,這個導航電文包括了:衛星的軌道參數、時鐘參數、軌道修正參數、大氣對GPS信號折射的修正值等等。GPS接收機就是通過這些參數計算出某一時刻某顆衛星在空間中的位置,然後再確定自己與衛星的距離,然後再計算自己的實際位置。導航電文總長1500比特,在50Hz傳送的情況下,每一個循環周期是30秒。 可能大家覺得這個比較枯燥,可這正是隱藏在各個GPS技術參數後面的無數個“為什麼”之一。大家比較一下GARMIN和MAGELLAN的各個型號GPS接收機的技術參數,就會發現:所有型號的的GPS接收機的冷啟動時間(即GPS對衛星及自己所在地一無所知)都是45秒左右,不是廠商懶不想改進GPS性能,而是已經快到技術極限啦:45秒裡面的30秒是用來接收導航電文的,剩下15秒鐘是計算接收機位置的。 如果你看到某款GPS接收機標稱冷啟動時間是30秒,趕緊走開不要再看第二眼:廠家連這個數據都敢拿出來騙你,他們的接收機的定位數據你還敢用嗎?當然GPS系統是不斷在改進的,也許將來的導航電文用一秒鐘就發過來了,不過如今的數據還是需要30秒才能發過來。 其實每個GPS的技術參數都是有學問的,不過限於本文篇幅及技術複雜性,不能一一介紹。最根本的原因是我現學現賣,還沒有鑽研到那么深呢。呵呵。不過我不是專業搞這個的,只是在使用GPS的時候愛問個為什麼,然後去查資料找答案,請大家不要用刁鑽古怪的問題難為我,我還想省出時間去爬山以及自制地圖呢,嘻嘻。 還有一個問題是關於GPS接收機算方向和速度的:大家都知道一般GPS接收機每秒鐘計算一次位置,把前一秒鐘的位置和這一秒鐘的位置比較,接收機就可以算出自己的前進方向和速度,對吧? 錯!實際上GPS接收機在計算前進速度的時候,用的是都卜勒效應:在扣除衛星相對於接收機移動的都卜勒效應以後,多出來的部分就是接收機移動的部分了,把這部分進行計算,就可以算出接收機的前進速度了。這種計算方法要比直接計算每秒鐘的前進速度準,準確程度是每小時0.5公里,想想一般人散步的速度還有每小時三公里以上,不由得不佩服那些研究這個的科學家。不信你自己可以作個試驗:在走路或開車的時候走一些迷惑GPS的蛇行路線或8字形路線,看看GPS的速度顯示是否連續並準確,一般這種情況下GPS的方向顯示會略有延遲,因為它每一秒鐘才算一次,而且方向的計算是要和前幾秒鐘的方向進行加權平均。
準確率 以上講的是在“完美”的世界裡面的GPS原理,到了現實中這個“不完美”的世界,問題就來了,有很多種因素會影響到GPS的準確率:
GPS誤差引入簡表 衛星時鐘誤差
0-1.5米
衛星軌道誤差
1-5米
電離層引入的誤差
0-30米
大氣層引入的誤差
0-30米
接收機本身的噪音
0-10米
多路反射
0-1米
總定位誤差
大約28米
可以看出,主要GPS定位誤差來自於電離層和大氣層,是因為電離層中的氣體分子和大氣層中的水蒸汽分子會折射GPS的微波信號,使其在從衛星到接收機的路線中會稍微彎曲一下,導致接收機把彎曲的路徑來當作直線路徑,從而引入誤差。這種現象在微波信號斜斜地穿越電離層和大氣層時更明顯,因為微波信號在其中穿越的時間和距離更長。不過在衛星的導航電文中,已經包含了大氣層的修正參數,能夠消除50%到70%的誤差。
數據糾正 GPS的準確率每秒鐘都在變化:衛星軌道在不斷變化,電離層在不斷變化(白天和黑夜能差幾倍),大氣層的溫度、濕度和氣壓也在不斷變化,所以這些因素引入的誤差也是在每一秒鐘都在變化的。
一般這兩年出的GPS(我指的是著名廠商的各種手持機)的誤差的大致範圍是10米,如今GARMIN和MAGELLAN手持機的標稱精度是7米(在95%的情況下)。這個標稱值是在最好的條件下算出來的,就象汽車的百公里油秏指標一樣。
換句話說,GPS給你的位置數據是相對位置數據,你需要在這個數據點周圍畫一個半徑是10米的圓圈,你的絕對位置肯定在這裡面,但具體在哪裡,只能用更高級的手段測量了。
在可能的情況下,精度越高當然越好,在現代一般實時提高精度的方法是差分法:利用兩台GPS,同時觀測衛星信號,在一台GPS位置已知的情況下,可以算出當時那個時刻那一區域的GPS信號修正值,然後想辦法通知另外一台GPS, 那末另外一台GPS就可以算出一個準確程度非常高的位置了。因為如今在中國民用GPS的差分修正還很少有機會被大家用到,所以在這裡我就不介紹了 。
使用的注意事項 GPS的能與不能 第一,GPS能為你提供定位服務,但不能永遠工作。這是非常重要的一點,在野外的時候有無數種情況會使GPS接收機停止工作,所以一定要有備用手段:指南針和紙地圖是必不可少的裝備,學會使用它們也是GPS機友應有的基本技能。關於GPS接收機對衛星信號的依賴,我在下面介紹。
第二,GPS能告訴你應該向那裡走,但不能替你走。聽著像傻子說的話,是吧?不過這個在實際野外套用中經常發生:不要以為帶了GPS不會迷路就萬事大吉了,在很多種情況下,你明明知道應該向某個方向走,可就是過不去,所以野外的實際經驗非常重要,GPS只是輔助指路的手段。
第三,GPS能告訴你當前的位置,但不能告訴你周圍的地形狀況。在知道自己的位置以後,周圍的地形狀況就需要地圖的支持了:無論是紙地圖還是PDA中的電子掃描地圖還是手持機中的矢量地圖,這些都是獲得地形信息的來源。
第四,GPS能幫助你記走過的路,但不能完美地再現。在你爬山的時候,你走過的路線在GPS中是按航跡記錄的,航跡可能由幾十上百個航跡點(TRACK POINT)組成,如果半路上你迷路了,需要順原路摸回去的時候,GPS可以把這些航跡點轉換成航點(WAYPOINT), 然後指導你一段一段地摸回出發地。由於GPS的限制,轉換成的航點只能有30個或更少,所以航點組成的航線(ROUTE)要比原始航跡粗糙得多。這個我在下面再強調。
GPS衛星信號的遮閉 基於GPS系統的原理,GPS接收機強烈依賴於直接接收到衛星信號,換句話說,嚴重依賴於接收機“看到”的天空的範圍——天空範圍越大,接收機收到的來自不同衛星的衛星信號就越多,就越能準確地定位。
GPS接受機接收的是從衛星來的1575.42 MHz微波信號,所有的自然天氣現象不會遮閉GPS信號,當然對定位精度有影響。因為衛星發射功率及距離原因,該信號比同頻率的背景噪聲小100倍,比現在穿過你身體的廣播信號小上千倍。GPS手持機使用複雜的數位訊號技術把真正有用的信號過濾出來。所以一般的無線電干擾對GPS接收機並不構成威脅,真正有威脅的是物體的遮擋。
1.GPS微波信號的穿透能力
1) 所有金屬實體會完全遮閉GPS信號。注意含有金屬塗層的汽車貼膜對GPS也有遮閉作用。 2) 厚度為1厘米以上的水體(液態)會完全衰減GPS信號至不可用。 3) 玻璃和塑膠對GPS信號有輕度衰減,所以你可以把GPS放在衣服口袋裡面,或汽車風檔下,或插入腰間的護套。 4) 不過厚重的非金屬物體也會完全遮擋信號,幾厘米的木頭會完全遮閉GPS信號。 5) 1575.42MHz的微波信號波長是19厘米,所以理論上可以透過孔徑(直徑)大於19厘米的金屬網,或普通金屬絎架結構,比如輸電鐵塔。
2.樹冠對GPS信號的影響
樹冠對GPS信號的衰減主要是來自於: 1) 樹葉中含有的水分,以及樹葉上面的水分(露水或下雨)。由此可以推斷:針葉樹對信號的影響比闊葉樹要小。 2) 樹的枝幹密集程度。 在樹下測得GPS的精度肯定受到以上因素的影響,影響的大小收到各種因素影響,需要自己用自己的GPS接收機測試,以便心裡有數。
3.多路反射對定位精度的影響
光滑金屬或非金屬表面會反射微波信號,導致信號通過多個路逕到達GPS接收機,由此影響GPS精度。這種現象在城市尤其明顯,或者是在乾湖床或平靜的湖邊進行測量的時候。不過這種影響不大,只要知道就行了。
4.山體對GPS信號的威脅
如果在山谷中行走,兩側均有連續山體,山體的視角在45度以上的時候,一般只能收到四顆衛星,也有可能無法定位。如果是山澗中,像龍門澗那種只能看見一線天的地方,百分之百GPS接收機不能定位。 所以大家在進入山谷或山澗的時候要做好準備,在GPS不工作的時候有應對辦法,比如使用傳統方法用紅飄帶標記線路等等。建議大家設定自己的GPS接收機,在無法定位的時候,使用音響報警,這樣在野外比較安全。
使用前的準備 在出發前準備好 備用電池,備用指南針和紙地圖。
在到達進山處以後要清除GPS中的TRACK和里程表。因為大家往往要坐車幾十上百公里才能到達目的地,如果GPS裡面存的航跡點太多的話,會嚴重影響將來返回時所用的航點精度:GPS會以為你是要回到GPS 航跡點中的第一個點,那么用30個航點來表示這幾十公里的路線,精度會非常差的。
帶好紙筆,記錄在登山過程中所記的一些航點,以便將來回家整理。
在野外保護好GPS接收機,建議要有針織護套防止刮擦及碰撞。一般GPS接收機在這種護套裡面也能很好工作。
在使用GPS的時候有意識地收集一些地標信息,即在這些地方定義一個航點。這些地標信息包括:岔路、水源、平台休息處等等, 共享這些數據對於其他驢友是非常有幫助的。