GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

本文作者:無人機中的城堡,原文標題『城堡里學無人機:無人機導航之玩轉坐標系』

GPS 經常是我們談起無人機系統時首先想到的功能模塊,而能夠按照預先規劃的飛行路線進行自動飛行,也是無人機在功能上與航模的主要區別之一。

不管是天上飛的,地上跑的,還是海里游的交通工具或儀器設備,如果我們希望能引導它們到期望的目標位置,就需要獲得被控對象在某個坐標系中的具體坐標,無人機導航也是如此。我們期望無人機從 A 點飛到 B 點,就要不斷通過 GPS 或其它導航儀器獲取無人機當下的位置坐標,並根據無人機的位置調整無人機的姿態,最終到達目的地。

在無人機導航中,對 GPS 的數據經常出現一些誤解,比如 GPS 輸出的高度坐標是相對於海平面,所以應該像經緯度一樣可以直接使用;通過 GPS 獲得的速度信息可以直接使用;IMU 輸出的飛行器加速度是平面加速度……

中學物理知識告訴我們,當我們描述物體運動時,一定是相對於特定坐標系的, GPS 和 IMU 等設備在輸出運動和位置數據時也是如此,這些問題所涉及的正是無人機導航中的基礎概念——無人機坐標系——這也是無人機導航中最容易讓人混亂的概念之一。

無人機導航中常見的坐標系包括:

  • 地球中心坐標系(ECEF)(Earth Centered Earth Fixed Coordinate System, ECEF)
  • WGS-84 大地坐標系(World Geodetic Coordinate System 1984)
  • 當地水平坐標系(North-East-Down Coordinate System, NED)
  • 機體坐標系(Body Frame)
  • 機體水平坐標系(Vehicle-carried NED Coordinate System)

接下來我們就來簡單說明一下這些坐標系在無人機導航中的應用。

地球中心坐標系(ECEF)

GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

ECEF 坐標系與地球固聯,且隨著地球轉動。圖中 O 即為坐標原點,位置在地球質心。X 軸通過格林尼治線和赤道線的交點,正方向為原點指向交點方向。Z 軸通過原點指向北極。Y 軸與 X、Z 軸構成右手坐標系。

GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

右手坐標系即符合「右手法則」的坐標系的統稱,這個法則大家會經常見到,它的目的是為了以最簡單的方式確定坐標軸以及正方向。如圖,右手拇指,食指,中指「痙攣」狀,其中任意兩個手指與已確定的兩個坐標軸及正方向重合,第三個手指的方向就是剩下坐標軸的正方向。

WGS-84 坐標系

GPS 輸出的就是這個坐標系下的坐標數據!

完整一點解釋是,GPS 單點定位的坐標以及相對定位中解算的基線向量屬於 WGS-84 大地坐標系。

WGS-84 坐標系的 X 軸指向 BIH(國際時間服務機構)1984.0 定義的零子午面(Greenwich)和協議地球極(CTP)赤道的交點。Z 軸指向 CTP 方向。Y 軸與 X、Z 軸構成右手坐標系。

什麼「BIH1984.0」聽來很複雜有沒有!一句話解釋就是:把前面提到的 ECEF 坐標系用在 GPS 中,就是 WGS-84 坐標系。

GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

上面圖中大家很容易看出 GPS 輸出的常見定位數據:經度(longitude),緯度(latitude),海拔(altitude)。不知大家有沒有覺得奇怪,為什麼有了 GPS 輸出的海拔高度,我們還是要用氣壓計等其它設備來輔助定高呢?GPS 的海拔數據精度沒有辦法支撐無人機高度定位嗎?

這是因為 GPS 輸出的信息是相對於 WGS-84 坐標系的。我們可以把它看做一個參考橢球體,GPS 輸出的高度是垂直於橢球表面的高度而非海平面高度,然而地球可不是一個標準的「橢球體」。

GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

圖中 h 是 GPS 測得的相對於橢球表面的高度;H 表示正高;N 表示大地水準偏差,即地球實際形狀與參考橢球體的偏差,範圍在正負 100m 之間,它隨著地球重力分佈變化,沒有唯一的確定數值。所以,GPS 直接輸出的海拔數據也就會始終存在一個「誤差」了。

NED 坐標系

GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

上圖清晰地表明了 ECEF 坐標系(藍色)和 NED 坐標系(綠色)之間的關係。NED 坐標系是在導航計算時使用的坐標系,向量分別指向北,東,地,因此 NED 坐標系也經常稱為「北東地坐標系」。

我們有了經緯度為什麼還需要 NED 坐標系呢?GPS 可以獲得在 WGS-84 中的速度向量,為了方便使用速度向量進行無人機控制,我們還要把它轉換在無人機所在位置的「平面坐標系」下,也就是 Local NED。

機體坐標系

GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

機體坐標系與飛行器固聯,坐標系符合右手法則,原點在飛行器重心處,X 軸指向飛行器機頭前進方向,Y 軸由原點指向飛行器右側,Z 軸方向根據 X、Y 軸由右手法則確定。

機體坐標系是無人機慣性導航的基礎坐標系,IMU 中獲得的加速度狀態信息就是該坐標系下的數值。當我們獲取 IMU 輸出的 X 軸加速度信息時,是基於機體坐標系的,不能直接應用在 NED 坐標系下。

所以,如果想要對無人機進行導航控制,就必須能夠正確處理 GPS、IMU 等硬體輸出的信息,並將這些信信息轉化到正確的坐標系下。在之後文章中,將為大家詳解無人機導航中的數據轉換與計算方法。

責任編輯:陳凱文

版權聲明:本文系深圳灣編輯創作發布,轉載請註明來自深圳灣,並標明網站地址 shenzhenware.com

轉載、約稿、投稿、團隊報道請聯繫微信公眾號:shenzhenware(回復關鍵字)

未经允许不得转载:Feenix第四色色 » GPS 的海拔數據為何不準確?——詳解無人機導航中的位置坐標系

赞 (0)
分享到:更多 ()

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址