小米無人機的看點,可能并不在產(chǎn)品本身

GPS 的海拔數(shù)據(jù)為何不準(zhǔn)確?——詳解無人機導(dǎo)航中的位置坐標(biāo)系
為什么有了 GPS 輸出的海拔高度贡珊,我們還是要用氣壓計等其它設(shè)備來輔助定高呢?
本文作者:無人機中的城堡门岔,原文標(biāo)題『城堡里學(xué)無人機:無人機導(dǎo)航之玩轉(zhuǎn)坐標(biāo)系』
GPS 經(jīng)常是我們談起無人機系統(tǒng)時首先想到的功能模塊,而能夠按照預(yù)先規(guī)劃的飛行路線進(jìn)行自動飛行谨胞,也是無人機在功能上與航模的主要區(qū)別之一固歪。
不管是天上飛的,地上跑的胯努,還是海里游的交通工具或儀器設(shè)備牢裳,如果我們希望能引導(dǎo)它們到期望的目標(biāo)位置,就需要獲得被控對象在某個坐標(biāo)系中的具體坐標(biāo)叶沛,無人機導(dǎo)航也是如此蒲讯。我們期望無人機從 A 點飛到 B 點,就要不斷通過 GPS 或其它導(dǎo)航儀器獲取無人機當(dāng)下的位置坐標(biāo)灰署,并根據(jù)無人機的位置調(diào)整無人機的姿態(tài)判帮,最終到達(dá)目的地局嘁。
在無人機導(dǎo)航中,對 GPS 的數(shù)據(jù)經(jīng)常出現(xiàn)一些誤解晦墙,比如 GPS 輸出的高度坐標(biāo)是相對于海平面悦昵,所以應(yīng)該像經(jīng)緯度一樣可以直接使用;通過 GPS 獲得的速度信息可以直接使用晌畅;IMU 輸出的飛行器加速度是平面加速度……
中學(xué)物理知識告訴我們但指,當(dāng)我們描述物體運動時,一定是相對于特定坐標(biāo)系的抗楔, GPS 和 IMU 等設(shè)備在輸出運動和位置數(shù)據(jù)時也是如此棋凳,這些問題所涉及的正是無人機導(dǎo)航中的基礎(chǔ)概念——無人機坐標(biāo)系——這也是無人機導(dǎo)航中最容易讓人混亂的概念之一。
無人機導(dǎo)航中常見的坐標(biāo)系包括:
- 地球中心坐標(biāo)系(ECEF)(Earth Centered Earth Fixed Coordinate System, ECEF)
- WGS-84 大地坐標(biāo)系(World Geodetic Coordinate System 1984)
- 當(dāng)?shù)厮阶鴺?biāo)系(North-East-Down Coordinate System, NED)
- 機體坐標(biāo)系(Body Frame)
- 機體水平坐標(biāo)系(Vehicle-carried NED Coordinate System)
接下來我們就來簡單說明一下這些坐標(biāo)系在無人機導(dǎo)航中的應(yīng)用连躏。
地球中心坐標(biāo)系(ECEF)

ECEF 坐標(biāo)系與地球固聯(lián)剩岳,且隨著地球轉(zhuǎn)動。圖中 O 即為坐標(biāo)原點入热,位置在地球質(zhì)心拍棕。X 軸通過格林尼治線和赤道線的交點,正方向為原點指向交點方向才顿。Z 軸通過原點指向北極莫湘。Y 軸與 X、Z 軸構(gòu)成右手坐標(biāo)系郑气。

右手坐標(biāo)系即符合「右手法則」的坐標(biāo)系的統(tǒng)稱幅垮,這個法則大家會經(jīng)常見到,它的目的是為了以最簡單的方式確定坐標(biāo)軸以及正方向尾组。如圖忙芒,右手拇指,食指讳侨,中指「痙攣」?fàn)詈侨渲腥我鈨蓚€手指與已確定的兩個坐標(biāo)軸及正方向重合,第三個手指的方向就是剩下坐標(biāo)軸的正方向跨跨。
WGS-84 坐標(biāo)系
GPS 輸出的就是這個坐標(biāo)系下的坐標(biāo)數(shù)據(jù)潮峦!
完整一點解釋是,GPS 單點定位的坐標(biāo)以及相對定位中解算的基線向量屬于 WGS-84 大地坐標(biāo)系勇婴。
WGS-84 坐標(biāo)系的 X 軸指向 BIH(國際時間服務(wù)機構(gòu))1984.0 定義的零子午面(Greenwich)和協(xié)議地球極(CTP)赤道的交點忱嘹。Z 軸指向 CTP 方向。Y 軸與 X耕渴、Z 軸構(gòu)成右手坐標(biāo)系拘悦。
什么「BIH1984.0」聽來很復(fù)雜有沒有!一句話解釋就是:把前面提到的 ECEF 坐標(biāo)系用在 GPS 中橱脸,就是 WGS-84 坐標(biāo)系础米。

上面圖中大家很容易看出 GPS 輸出的常見定位數(shù)據(jù):經(jīng)度(longitude)分苇,緯度(latitude),海拔(altitude)屁桑。不知大家有沒有覺得奇怪医寿,為什么有了 GPS 輸出的海拔高度,我們還是要用氣壓計等其它設(shè)備來輔助定高呢蘑斧?GPS 的海拔數(shù)據(jù)精度沒有辦法支撐無人機高度定位嗎糟红?
這是因為 GPS 輸出的信息是相對于 WGS-84 坐標(biāo)系的。我們可以把它看做一個參考橢球體乌叶,GPS 輸出的高度是垂直于橢球表面的高度而非海平面高度,然而地球可不是一個標(biāo)準(zhǔn)的「橢球體」柒爸。

圖中 h 是 GPS 測得的相對于橢球表面的高度准浴;H 表示正高;N 表示大地水準(zhǔn)偏差捎稚,即地球?qū)嶋H形狀與參考橢球體的偏差乐横,范圍在正負(fù) 100m 之間,它隨著地球重力分布變化今野,沒有唯一的確定數(shù)值葡公。所以,GPS 直接輸出的海拔數(shù)據(jù)也就會始終存在一個「誤差」了条霜。
NED 坐標(biāo)系

上圖清晰地表明了 ECEF 坐標(biāo)系(藍(lán)色)和 NED 坐標(biāo)系(綠色)之間的關(guān)系催什。NED 坐標(biāo)系是在導(dǎo)航計算時使用的坐標(biāo)系,向量分別指向北宰睡,東蒲凶,地,因此 NED 坐標(biāo)系也經(jīng)常稱為「北東地坐標(biāo)系」拆内。
我們有了經(jīng)緯度為什么還需要 NED 坐標(biāo)系呢旋圆?GPS 可以獲得在 WGS-84 中的速度向量,為了方便使用速度向量進(jìn)行無人機控制麸恍,我們還要把它轉(zhuǎn)換在無人機所在位置的「平面坐標(biāo)系」下灵巧,也就是 Local NED。
機體坐標(biāo)系

機體坐標(biāo)系與飛行器固聯(lián)抹沪,坐標(biāo)系符合右手法則刻肄,原點在飛行器重心處,X 軸指向飛行器機頭前進(jìn)方向采够,Y 軸由原點指向飛行器右側(cè)肄方,Z 軸方向根據(jù) X、Y 軸由右手法則確定蹬癌。
機體坐標(biāo)系是無人機慣性導(dǎo)航的基礎(chǔ)坐標(biāo)系权她,IMU 中獲得的加速度狀態(tài)信息就是該坐標(biāo)系下的數(shù)值虹茶。當(dāng)我們獲取 IMU 輸出的 X 軸加速度信息時,是基于機體坐標(biāo)系的隅要,不能直接應(yīng)用在 NED 坐標(biāo)系下蝴罪。
所以,如果想要對無人機進(jìn)行導(dǎo)航控制步清,就必須能夠正確處理 GPS要门、IMU 等硬件輸出的信息,并將這些信信息轉(zhuǎn)化到正確的坐標(biāo)系下廓啊。在之后文章中欢搜,將為大家詳解無人機導(dǎo)航中的數(shù)據(jù)轉(zhuǎn)換與計算方法。
責(zé)任編輯:陳凱文