雖然大家都很喜歡無人機,但現(xiàn)實情況是每個人的教育背景,對無人機的需求,看待問題和事物的習慣與角度等都有很大區(qū)別。所以在科普無人機技術(shù)的道路上還任重道遠。 硬件視角常從GPS、強磁計、紅外設(shè)備、單目視覺、雙目視覺、IMU等硬件模塊的性能、用法(其實
雖然大家都很喜歡無人機,但現(xiàn)實情況是每個人的教育背景,對無人機的需求,看待問題和事物的習慣與角度等都有很大區(qū)別。所以在科普無人機技術(shù)的道路上還任重道遠。
硬件視角常從GPS、強磁計、紅外設(shè)備、單目視覺、雙目視覺、IMU等硬件模塊的性能、用法(其實很多文章并不涉及用法)、輸入輸出數(shù)據(jù)類型等著眼。比較直觀,易于操作,易被接受。但容易讓大家無法構(gòu)建對于無人機整個系統(tǒng)的理解,并陷入到某一個具體硬件中,甚至忘卻了該硬件對于無人機的意義。
數(shù)學模型的視角常會研究被控對象的模型性質(zhì)、非線性、非*小相位系統(tǒng)、耦合特性等等。這樣的視角足夠深入,接近被控對象本質(zhì),但抽象性太強,容易造成和實物的脫節(jié)。
石家莊網(wǎng)絡優(yōu)化言硬件和數(shù)學模型兩個視角都很重要,卻也都存在著無法回避的問題。因此筆者選擇無人機的“狀態(tài)”作為切入視角。從“狀態(tài)”視角很容易理解硬件在整個無人機系統(tǒng)中的實際意義:構(gòu)成反饋閉環(huán)并傳回相應的“狀態(tài)信息”,從而為控制器設(shè)計提供必要的反饋信息。
直升機型無人機揮舞角(Flapping angle)構(gòu)造
四旋翼無人機揮舞角(Flapping angle)構(gòu)造
無人機“狀態(tài)”數(shù)目根據(jù)不同的機型會有所區(qū)別。大家從上面兩幅圖中就可以看出,直升機型無人機相比于四旋翼就會多出兩個揮舞角(Flapping angle)作為描述揮舞的狀態(tài)。
無人機狀態(tài)可以“大體”分為兩部分:
描述“外部位置環(huán)”的六個狀態(tài),位置狀態(tài):x、y、z,該狀態(tài)體現(xiàn)了無人機在三個軸線上所處的具體位置;速度狀態(tài):u、v、w用于描述無人機本身沿三個方向的飛行線速度。
描述“內(nèi)部姿態(tài)環(huán)”的六個狀態(tài),姿態(tài)角狀態(tài):∮、θ、ψ,分別描述無人機的橫滾、俯仰、偏航姿態(tài)角;角速度狀態(tài):p、q、r,描述無人機在機身三個旋轉(zhuǎn)軸上的轉(zhuǎn)動速率。
這里“外環(huán)”,“內(nèi)環(huán)”的稱呼是由無人機控制器設(shè)計中的常用控制器結(jié)構(gòu)所演變出來的術(shù)語,直觀來看兩組狀態(tài)分別處于不同的坐標系中,外環(huán)狀態(tài)處于“大地坐標系”(速度狀態(tài)信息在機體坐標系下只要進行坐標變換即可)視角下:
而內(nèi)環(huán)狀態(tài)則是處于“機體坐標系”中。
通過內(nèi)外環(huán)狀態(tài)信息的閉環(huán)反饋,求得“期望狀態(tài)”與“真實狀態(tài)”之間的誤差值,并根據(jù)這個誤差設(shè)計不同結(jié)構(gòu)的控制器,根據(jù)不同算法計算出需要的控制量。
狀態(tài)反饋就是通過各種無人機硬件實現(xiàn)的,因此可以直接通過反饋的狀態(tài)信息類型進行硬件歸類:
位置狀態(tài)——反饋**“位置狀態(tài)”信息的硬件:GPS(x、y、z),氣壓計(z)以及反饋相對“位置狀態(tài)”信息的硬件:紅外傳感器、超聲波,單目視覺、雙目視覺(這一大類根據(jù)硬件數(shù)量和位置能夠返回不同維度量的狀態(tài)信息)。
速度狀態(tài)——反饋**“速度狀態(tài)”信息的硬件,由于位置和速度的微分關(guān)系獲得,大家直接把上面的硬件搬下來就可以了:GPS,氣壓計以及相對位置狀態(tài)硬件。
無人機內(nèi)環(huán)姿態(tài)信息包括六個狀態(tài):姿態(tài)角三個和角速度三個。角速度狀態(tài)由陀螺儀反饋;姿態(tài)角數(shù)據(jù)的反饋硬件構(gòu)架可根據(jù)姿態(tài)算法的不同而發(fā)生變化,硬件會根據(jù)相關(guān)算法的選擇進行設(shè)計如:加速度計+強磁計或者陀螺儀+加速度計+強磁計。
無人機產(chǎn)品中經(jīng)常使用IMU(Inertial measurement unit)獲取內(nèi)環(huán)狀態(tài)信息。而IMU和INS(Inertial Navigation System)經(jīng)常被混用。可以很直觀地看到,IMU實現(xiàn)了無人機線性加速度信息(加速度一般不被看作狀態(tài),而常在姿態(tài)計算中使用)和角速度狀態(tài)信息的反饋;而INS則負責對信息進行處理,實現(xiàn)位置、速度、姿態(tài)角等狀態(tài)的信息反饋。大家注意到上圖中獲取姿態(tài)的算法是直接采用對角速度積分的方法,而在實際產(chǎn)品中由于積分會導致誤差積累,因此更多地使用加速度+偏航角+角速度+濾波算法的數(shù)據(jù)融合算法進行姿態(tài)解算。
以無人機產(chǎn)品功能實現(xiàn)為例,看看狀態(tài)視角如何讓我們更好地理解無人機技術(shù)。*近在Kickstarter上完成眾籌目標的斯凱智能的無人機系統(tǒng)主打Target Tracking功能,我們就從“狀態(tài)”視角看看如何從硬件和算法上實現(xiàn)無人機跟蹤功能。
當我們自己在跟蹤一個對象時,需要知道對方走到哪里去了,自己現(xiàn)在的位置,別跟得太緊,也別被拋開太遠,需調(diào)整步伐保持理想的跟蹤距離。
除了從硬件與算法兩個角度了解無人機,還有“狀態(tài)”視角可以切入
對于無人機而言整個過程也大體類似。無人機需要獲取被控對象的“位置信息”以及反饋回的無人機自身“位置狀態(tài)”,計算出兩者之間的相對距離誤差,再通過硬件或者算法,計算出速度變化——如被跟蹤對象的速度大小,速度方向,并以此來“控制”無人機自身的速度以實現(xiàn)位置的跟蹤。
因此無論采用GPS還是光流單目抑或雙目視覺、紅外、超聲波等等,不管什么硬件,作用都是為了傳輸回無人機對應的“外環(huán)狀態(tài)信息”。
同樣的,無論采用隨身tracker還是內(nèi)置傳感系統(tǒng)的地面站式遙控器抑或直接采用手機,都可以傳輸回被跟蹤目標的“外環(huán)狀態(tài)信息”。
兩個狀態(tài)信息進行比對,形成狀態(tài)誤差,通過IMU等傳感器反饋無人機內(nèi)環(huán)姿態(tài)信息,與目標姿態(tài)形成狀態(tài)誤差,并以此計算得出控制量。
通過狀態(tài)視角,可以很清晰地理解不同產(chǎn)品的硬件意義,并以此設(shè)計自己的無人機控制系統(tǒng)。
圍繞著無人機狀態(tài)反饋信息的處理和使用,算法可以走向兩個不同的分支:數(shù)據(jù)融合(數(shù)據(jù)濾波)和自動控制。根據(jù)不同的狀態(tài)特點,圍繞數(shù)學模型建立系統(tǒng)框架,根據(jù)算法以及反饋狀態(tài)信息的要求選擇相關(guān)的硬件搭建無人機系統(tǒng)等內(nèi)容是無人機控制系統(tǒng)設(shè)計的清晰脈絡。筆者會在后續(xù)系列文章中分步闡述搭建這個系統(tǒng)架構(gòu)中的各個部分,幫助不同行業(yè)喜歡無人機的朋友走入奇妙的無人機世界。