導航定位系統的原理解析(一個小白寫給另一個小白)

前言

無人駕駛是這幾年大火的一個研究方向,研究無人駕駛需要了解的知識非常多,但是導航定位技術一定是其中必不可少的一環。

本篇文章主要就GNSS系統如何實現定位進行一個簡單的介紹,通過閱讀本篇文章,你將瞭解:

l 衛星導航實現定位的原理;

l 輔助增強系統如何實現釐米級定位。

本篇文章的目標讀者是對定位導航一無所知的小白玩家,大神請繞路。

‘三星’定位基本原理(導航定位的原理)

提到衛星導航系統,相信就算對此不瞭解的人也一定聽說過,三顆衛星就能確定一個地面座標的說法。那麼這個說法是如何來的呢?

假設小明在戶外活動時候迷了路,於是他打電話報警讓警察接他回家,警察告訴他不用着急,會首先通過衛星定位他的手機信號確定他的位置座標信息,所謂位置座標信息就是小明此時的(X,Y,Z)的信息。
定位原理如圖所示:
在這裏插入圖片描述
假設小明此時的位置座標信息爲(X,Y,Z),與小明進行信號通訊的三顆衛星編號分別爲衛星1號,衛星2號和衛星3號。這三顆衛星座標與小明手機發射的信號抵達三顆衛星的時間分別如上圖所示,則顯然有如下方程成立:

在這裏插入圖片描述
解這個三元三次方程組之後,很快就能知道小明的座標信息。小明很開心,坐等救援隊的到來,結果一天一夜過去了,救援隊並沒有人來,小明趕緊打電話問爲什麼還沒到?救援隊接電話的人氣喘吁吁的說,不對啊老弟,按照給定的位置信號找不到你啊,你是不是亂跑了啊,小明說哪能呢,我一動沒敢動啊。
在這裏插入圖片描述
那麼到底是哪出了問題呢?小明仔細的研究這個方程組,最後發現,最有可能出問題的地方就是衛星接收到信號的時間。意思就是接收小明信號的三個衛星可能初始時間並不統一,這樣造成的後果就是,衛星1以爲自己接收到小明信號的時間是5s,實際上可能是5.2s,衛星2以爲自己接收到小明信號的時間可能是5.1s,實際可能是4.9s,衛星3以爲自己接收到小明信號的時間是5.4s,實際可能是5.5s。這種情況是由時鐘誤差造成,這裏不展開,本文僅講述如何在算法上消除這種誤差,很簡單,將上述方程的時間作調整,得到新的方程如下:
在這裏插入圖片描述
想法很性感,現實很骨感,因爲小明很沮喪的發現,這些衛星並不知道自己的時間包含多少誤差量,於是小明靈機一動,既然三顆衛星互相之間各種推諉,那就委託第三方來處理,於是小明又找到了第四顆衛星,以這一顆衛星作爲標準衛星,假設該標準衛星的位置信息爲
在這裏插入圖片描述
該方程組包含4個未知數,四個方程,因此可解。

傳輸誤差

到了這裏,小明就能很快得救了嗎?如果真的這樣想就大錯特錯了。因爲信號在通過電離層、對流層等區域的時候,會很曲折,這時候又會產生新的傳輸誤差。
在這裏插入圖片描述

你看,本來走直線的信號在經過大氣層的時候開始拐彎了,當然了,具體怎麼拐的彎我們並不知道,但是誤差卻產生了。怎麼辦呢?

小明突然想到在附近貌似有個信號塔,這個信號塔的位置是確定的,而小明通過手機定位這個信號塔,也能夠確定自己和信號塔之間的距離。現在小明和信號塔同時給衛星發射信號進行定位,結果信號塔的定位結果和實際結果之間存在誤差,**由於信號塔本身位置是確定的,因此衛星和信號塔之間的距離傳輸誤差很容易被確定,然後信號塔就會告訴小明這個誤差值,小明根據這個誤差值就可以修正自己的位置,然後告訴救援隊自己的真實位置了。**這種做法的好處是通過信號塔把所有從衛星到地面標的物之間的誤差統一考慮了,但是這樣做的前提是信號塔和小明的距離不能太遠,這個信號塔其實就是RTK。
爲什麼RTK和標的物不能距離過遠,這是由於當距離較遠時,導航衛星收到的電離層和對流層的干擾情況會變的不同,此時無法有效修正誤差。

後記

小明獲救後,救援隊爲了防止再次出現類似事件,於是建立了許多參考基準站並組成了網絡。當再有救援活動出現時,可以根據目標的初始位置迅速鎖定目標周圍的三個距離最近的基站,然後根據三個基站的傳輸數據定位出帶救援人員的精確座標。
總而言之,單純通過GPS做定位誤差會比較大,但是如果增加適當的輔助措施,則可以有效的減小這種誤差。關於導航系統的誤差來源,作者簡單整理如下圖所示:
在這裏插入圖片描述
以上就是關於導航的最基礎的知識,作者目前在做一個關於無人工地的項目,裏面涉及到大量的無人駕駛、多機協同控制等內容,當前作者在這些領域也是小白一個,隨着項目的進行,作者會將蒐集到的資料編製成文檔與大家分享,如果有大神路過,還請多多指教。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章