兩年來,大疆精靈系列更新了兩代,飛控技術更新了兩代,智能導航技術從無到有,諸多新的軟件和硬件產品陸續發布。同時我們也多了很多友商,現在多旋翼飛行器市場火爆,諸多產品琳瑯滿目,價格千差萬別。為了理解這些飛行器的區別,首先要理解這些飛行器上使用的傳感器技術。我覺得現在很有必要再發一篇科普文章,定義“智能導航”這個概念,順便字里行間介紹一下兩年來大疆在傳感器技術方面的努力。
1. 飛行器的狀態
客機、多旋翼飛行器等很多載人不載人的飛行器要想穩定飛行,首先最基礎的問題是確定自己在空間中的位置和相關的狀態。測量這些狀態,就需要各種不同的傳感器。世界是三維的,飛行器的三維位置非常重要。比如民航客機飛行的時候,都是用GPS獲得自己經度、緯度和高度三維位置。另外GPS還能用多普勒效應測量自己的三維速度。后來GPS民用之后,成本十幾塊錢的GPS接收機就可以讓小型的設備,比如汽車、手機也接收到自己的三維位置和三維位置。
對多旋翼飛行器來說,只知道三維位置和三維速度還不夠,因為多旋翼飛行器在空中飛行的時候,是通過調整自己的“姿態”來產生往某個方向的推力的。比如說往側面飛實際上就是往側面傾,根據一些物理學的原理,飛行器的一部分升力會推著飛行器往側面移動。為了能夠調整自己的姿態,就必須有辦法測量自己的姿態。姿態用三個角度表示,因此也是三維的。與三維位置、三維角度相對應的物理量是三維速度、三維加速度和三維角速度,一共是十五個需要測量的狀態。
這十五個狀態都對多旋翼飛行器保持穩定飛行有至關重要的作用。拿“懸停”這件看起來是多旋翼飛行器最基本的能力來說,實際上飛行器的控制器在背后做了一系列“串級控制”:在知道自己三維位置的基礎上,控制自己的位置始終鎖定在懸停位置,這里的控制量是一個目標的懸停速度,當飛行器的位置等于懸停位置時,這個目標懸停速度為0,當飛行器的位置偏離了懸停位置時,飛行器就需要產生一個讓自己趨向懸停位置的速度,也就是一個不為零的目標懸停速度;飛行器要想控制自己產生目標懸停速度,就需要根據自己當前的三維速度,產生一個目標加速度;為了實現這個目標加速度,飛機需要知道自己的三維角度,進而調整自己的姿態;為了調整自己的姿態,就需要知道自己的三維角速度,進而調整電機的轉速。
讀者可能會想哇為什么這么復雜。其實我們身邊的許多工程產品都在簡單的表現背后藏著復雜的過程。比如汽車的油門也是類似的,踩下油門之后,有傳感器測量汽油的流速、控制汽油的流速;然后有傳感器測量發動機的轉速、控制發動機轉速……從踩油門到加速的過程中也有許許多多的傳感器在測量汽車的各個狀態量,并對這些狀態量施加控制。
知道十五個狀態量是多旋翼飛行器做任何動作的基礎中的基礎,但是讓飛行器在任何情況下都準確知道這十五個狀態量是非常困難的事情,因為現在的科技水平還沒有能夠實現讓一個傳感器同時測量這么多的物理量。幾十年來,人們發展出了一套復雜的技術,叫做組合導航,用GPS加上慣性測量元件、氣壓計和地磁指南針來讓飛行器測量自己的十五個狀態量。
2. 組合導航
慣性測量元件是一種能夠測量自身三維加速度和三維角速度的設備(實際上慣性測量元件有兩種,一種加速度計,一種角速度計,為了行文方便,我們把這兩種元件當做一種,統稱為慣性測量元件)。根據物理學原理,加速度的積分是速度,速度的積分是位置,角速度的積分是角度,理論上單靠慣性測量元件,我們就可以知道十五個狀態量。
人類的科技水平也的確實現了這一點:GPS還沒被發明以前,導彈上通常都裝著一個精密的慣性測量元件,導彈打出去以后靠這個裝置測量自己的十五個狀態量,然后控制自己飛越海洋和大洲。然而這種慣性測量元件會在測量的過程中慢慢累積誤差,元件本身的工藝、技術、成本越差,積累誤差的速度就越快。導彈上價值幾百萬的慣性測量元件飛幾萬公里后會積累十幾米到幾公里的誤差,這種水平的導彈已經非常了不起了,畢竟不是每個國家都可以在背后豎著洲際導彈和國際社會講道理。
人體內也有慣性測量元件,人的耳蝸充滿液體,人運動的時候這些液體有慣性,可以被耳中的神經感受到,因此測出了運動的加速度。然而人的慣性測量元件非常差,閉上眼睛,也不摸周圍的東西,只靠耳蝸感受的移動,人基本沒法走直線。而多旋翼飛行器上用的低成本MEMS慣性測量元件,精度就更差了,它測量的速度和位置在幾秒鐘內就會發散到幾十米開外去,完全沒法用來規劃控制自己的飛行路線。
此外,慣性測量元件還會受到溫度、制造工藝的限制,產生一些測量的偏差,比如說有時溫度突然變化之后,一個靜止的慣性測量元件會覺得自己轉動了起來,雖然它靜止著,但是會輸出不為零的角速度。這類測量的偏差需要比較仔細的算法進行修正,而且往往不能單靠慣性測量元件自己的測量完全消除。
地磁指南針是一種測量航向的傳感器。指南針在人們的生活中作用重大,在未知的環境中,不分南北可能寸步難行。飛行器的機身正方向朝南還是朝北這個狀態量用導航的術語來說叫做航向,也就是飛行器姿態的三維角度中的一個,他在組合導航系統中是非常重要的一個狀態量。
地磁指南針能夠指南指北是因為地球表面空間中有看不見的橫貫南北的地磁線,地磁指南針可以測量出穿過自身的地磁強度,從而指出當前自身相對于地磁線的偏轉。同樣地,這個理論雖然非常簡單,但是地磁線的強度非常弱,很容易受到干擾。比如多旋翼飛行器通用的無刷電機,在運轉的時候就會產生變化的磁場,和地磁場疊加之后,地磁指南針就找不到正確的方向了。地磁指南針的這個特性非常令人惱火,但是早期的多旋翼飛行器開發人員毫無辦法,因為這是唯一的能夠確定飛行器在空間中絕對航向的設備。如果不知道這個航向,就基本沒辦法進行組合導航。
氣壓計的原理最為簡單。因為地球表面海拔越高,空氣越稀薄,氣壓越低,因此氣壓就能夠給出飛行器的海拔高度。不過,不出意料的是,尺寸和重量適合在多旋翼飛行器上使用的氣壓計有很大的缺陷,它的測量值會受到溫度、濕度、空氣流速、光照、振動等因素的影響,單靠氣壓計非常難實現對高度的穩定測量。
組合導航技術結合GPS、慣性測量元件、地磁指南針和氣壓計各自的優缺點,使用電子信號處理領域的很多技術,融合多種傳感器的測量值,獲得較為準確的飛行器十五個狀態量的測量。前面說慣性測量元件的測量容易發散,這個發散可以通過GPS來抑制:GPS可以獲得三維位置也可以獲得三維速度,慣性測量元件可以獲得三維加速度,加速度的積分也是速度。在通過地磁指南針獲得航向的基礎上,兩種速度的觀測就可以融合起來,通過GPS的測量值來發現并抑制慣性測量元件的發散。慣性測量元件的發散被抑制住之后,它也可以更準地測量三維角度和三維加速度。因此GPS和慣性測量元件在這些情況中互相取長補短。除此之外,氣壓計和GPS互相提高了高度測量的精度,地磁指南針、GPS和慣性測量元件一同提高了航向測量的精度,他們都是利用了相同的融合、“互補”的思想。
組合導航技術中傳感器互補的原理直接源于1948年誕生的信息論。克勞德-香農總結歸納出的信息論提出了信息的概念以及如何從數學上度量信息,信息論可以說是現代人類文明的基石之一。解釋清楚信息的本質之后,人們才能夠用數學表示一個樸素而又深刻的原理:信息可以用來估計狀態,越多的信息可以把狀態量估計得越準。
此后,控制論的奠基人諾伯特-維納、魯道夫-卡爾曼以及其他一大批工程師和科學家完善了通過信息進行狀態估計的線性估計理論,進一步提出了傳感器之間“互補濾波”,共同減小誤差的理論。卡爾曼設計的卡爾曼濾波器還被實現在了阿波羅飛船的導航計算機當中,使用星座位置和慣性測量元件互補測量阿波羅飛船的十五個狀態量。
信息論、線性估計理論以及卡爾曼濾波器允許人們把多個具有誤差的傳感器通過數學方程融合起來,利用傳感器信息估計特定的狀態量,而且越多傳感器“互補”,可以獲得越好的狀態估計。這樣,數學給工程學指出了發展方向:造更多牛逼的傳感器進行互補,就能獲得更好的狀態估計能力。大疆飛控總工程師魚大人也曾經說過:“最牛逼的工程師都是在搞傳感器。”傳感器技術的重要性可見一斑。
作為一種位置傳感器,GPS具有諸多的問題,GPS信號只有在開闊的空間內才能給出比較好的測量值,因為GPS接收機需要從天上的衛星獲得信號,這些信號要從太空傳入大氣層,這么遠的距離,信號已經相對來說很微弱,所以必須要求接收機和衛星之間的連線上沒有遮擋,一旦有建筑甚至是樹木的遮擋,衛星發下來的信號就有噪聲,GPS接收機就不能給出很好的位置和速度觀測。在室內環境中,GPS甚至完全不能使用。組合導航技術要想進一步發展,就需要尋找其他能夠在GPS不能使用的環境中使用的傳感器。
一種較為簡單的能夠替代GPS測量高度的傳感器是小型超聲波模塊。這種模塊通常有一收一發兩個探頭,一個探頭發出超聲波,另一個探頭測量回波的時間,能夠算出導致聲波反彈的物體離探頭的距離。現在在淘寶上,只要10塊錢就可以買到一個能夠比較準確測量幾米內物體距離的超聲波模塊,被廣泛用在大學生制作的小機器人上。這種10塊錢的傳感器沒有比氣壓計和MEMS慣性測量元件性能高多少,它發出的聲波容易發散,探測到的物體不一定位于探頭正前方,另外聲波也容易被空氣中的水霧、振動所影響,給出完全錯誤的觀測。因此,超聲波模塊最好的使用場景是對著地面,測量自身和地面的距離。
電子發燒友App





評論