梳理完控制以及飛行力學的一些基本原理之后,就該正式進入無人機導航、制導與控制的討論了。導航制導與控制是無人機系統(tǒng)中最復雜的分系統(tǒng),其功能可以有多種劃分方法,本文中,我們就以下面框圖所示的劃分方法為例,對無人機導航制導與控制系統(tǒng)的基本原理和常用方法做一下介紹和歸納。
由于GPS、室內定位甚至自動駕駛在生活中的廣泛應用,“導航”、“制導”、“控制”這幾個詞也越來越為大眾所熟悉和使用,但是對于這些詞的定義,我們日常生活中的使用和理解方法可能與無人機語境有所不同,所以有必要對其在本系列文章中的含義做一下解釋:
導航:即無人機獲得自己當前(在某個參照系下)的位置、速度等信息,必要時還需要獲得當前(相對于某個參照系)的姿態(tài)、姿態(tài)角速度等信息。例如,采用純慣性導航可以獲得無人機在某個慣性系下的位置、速度和加速度,以及相對于該慣性系的姿態(tài)角和角速度;GPS導航系統(tǒng)則可以提供無人機在WGS84坐標系下的速度、位置和航向角等信息;而借助如Vicon、UWB等室內定位系統(tǒng)則可以獲得無人機相對于室內某個坐標系的速度、位置等信息。因此,簡要概括導航的主要工作就是要“知道自己在哪,知道自己的姿態(tài)”。
制導:即無人機發(fā)現(xiàn)(或外部輸入)目標的位置、速度等信息,并根據(jù)自己的位置、速度以及內部性能和外部環(huán)境的約束條件,獲得抵達目標所需的位置或速度指令。例如,按照規(guī)劃的航路點飛行時,計算無人機徑直或者沿某個航線飛抵航路點的指令;采用基于計算機視覺目標跟蹤的光學制導時,根據(jù)目標在視場中的位置(以及攝像頭可能存在的離軸角)計算跟蹤目標所需的過載或者姿態(tài)角速度指令;而當預裝(或SLAM獲得的)地圖中存在需要規(guī)避的障礙物或禁飛區(qū)時,根據(jù)無人機飛行性能計算可行的規(guī)避路線或者速度指令。因此,簡要概括制導的主要工作就是要“知道目標在哪,如何抵達目標”。
控制:即無人機根據(jù)當前的速度、姿態(tài)等信息,通過執(zhí)行機構作用來改變姿態(tài)、速度等參數(shù),進而實現(xiàn)穩(wěn)定飛行或跟蹤制導指令。例如,當固定翼無人機需要爬升高度時,計算需要的俯仰角和俯仰角速度指令,以及為了讓空速不至于大幅降低所需的油門指令;當沿著航線飛行,但是存在側風時,計算所需的偏航角指令以利用側滑抵消側風影響;或者當多旋翼無人機的某個旋翼失效時,計算如何為剩余旋翼分配指令以盡可能實現(xiàn)穩(wěn)定飛行。因此,簡要概括控制的主要工作就是“改變飛行姿態(tài),跟蹤制導指令”。
雖然理論上,導航、制導和控制這三者各司其職,只是在指令計算和執(zhí)行上有順承關系,但是在實際系統(tǒng)中,三者可能會有很多交叉因素。例如,導航系統(tǒng)中所測量或估計出的角速度,既要用于導航系統(tǒng)的速度和位置估計,又要用于姿態(tài)控制;而在一些高機動性的飛行器(如直接碰撞殺傷的動能攔截器等)和空天飛行器(如升力體再入返回的制導控制)上也有制導與控制一體化設計的趨勢。但在本文中,仍然根據(jù)無人機的固有特性,盡量將三者作為具有獨立功能的分系統(tǒng)看待。其中,導航系統(tǒng)原理可以大致分為以下幾個類型:
基于絕對參考系的導航。如慣性導航、磁羅盤導航等。慣性導航運用牛頓力學原理,通過構建一個與機體固聯(lián)的慣性平臺,從而根據(jù)加速度計測量的慣性加速度計算在某慣性參考系下的速度和位置,根據(jù)陀螺儀測量所得的角速度計算機體相對于慣性平臺的姿態(tài)角,從而只需要加速度計和陀螺儀滿足一定的精度要求,就可以在不需要外部信息的情況下獲得機體相對于慣性參考系的速度、位置和姿態(tài)角。之所以將與機體固聯(lián)的移動參照系成為慣性平臺,是因為早期的平臺式慣性導航設備中確實存在一個物理上的框架,該框架基于陀螺進動原理始終與慣性系(或當?shù)劂U錘坐標系)保持平行。高精度的平臺慣導系統(tǒng)可以長期不需要外部信息進行導航,例如有些核潛艇所裝備的慣導系統(tǒng)可以保證水下航行數(shù)月的導航誤差在數(shù)海里的量級。
雖然平臺慣導的精度很高,但是由于系統(tǒng)復雜且體積巨大,不便于在小型飛行器上裝備,隨著計算機技術和導航器件技術的發(fā)展,捷聯(lián)慣導越來越多地被使用。與平臺慣導所用的物理平臺不同,捷聯(lián)慣導的陀螺儀和加速度計都與機體固連,因此采用虛擬的數(shù)學慣性平臺,即慣性器件測量所得數(shù)據(jù)都會經過坐標變換的數(shù)學運算轉換到慣性坐標系下,由于去掉了物理平臺,捷聯(lián)慣導系統(tǒng)的體積大幅縮減。特別是近二十年來快速發(fā)展的MEMS(微機電系統(tǒng))器件,已經可以將捷聯(lián)慣導系統(tǒng)的體積縮小到幾立方厘米的量級。
當然,慣性導航并非完美,由于導航過程依賴慣性器件的輸出數(shù)據(jù)、坐標變換以及數(shù)值積分,所以器件誤差和數(shù)值計算的截斷誤差會不斷累積,在缺乏額外的相對于絕對坐標系的信息時,該誤差無法被修正,因此,慣導系統(tǒng)通常作為飛行器的主要導航系統(tǒng),但同時還需要其他導航信息對慣導結果進行修正。
幾乎其他所有導航方法都可以用于修正慣導系統(tǒng)誤差,甚至是慣導系統(tǒng)本身,如AHRS(航姿參考系統(tǒng)),這種系統(tǒng)除了采用陀螺儀積分得出姿態(tài)角,還能根據(jù)加速度計測量的重力方向以及磁羅盤測量的磁航向對姿態(tài)角結果進行修正,從而在陀螺儀精度不高的情況下獲得長期穩(wěn)定的姿態(tài)角輸出,不過由于低精度器件所得的姿態(tài)角結果短期和長期均有不同程度的誤差,該系統(tǒng)無法進行精確的航位推算。
基于距離測量的導航。如衛(wèi)星導航、室內定位等。這類導航方式一般是通過測量飛行器與已知精確位置的參考點之間的距離,從而解算出飛行器位置。例如衛(wèi)星導航系統(tǒng)就是通過接收多顆衛(wèi)星發(fā)射出來的星歷信息,從中得出時間差并根據(jù)光速計算出距離,從而解算出飛行器在WGS84坐標系下的位置和經緯高度信息。同樣采用類似方式的還有室內定位應用中很火的WIFI定位和UWB定位技術,均是利用信號強度或發(fā)送接收的時間差計算飛行器與各參考點之間的距離,從而解算飛行器實時位置。
基于特征匹配的導航。如地形匹配、運動捕捉系統(tǒng)等。這類導航方式通常是通過飛行器實時提取地磁、地貌、圖像等特征,并與特征庫進行比對或進行相應計算,從而得到飛行器位置、速度等信息實現(xiàn)導航功能,如巡航導彈中所使用的地形匹配方法和現(xiàn)在比較火的SAR(合成孔徑雷達)地貌匹配方法,都是通過提取飛行路徑上的一維或二維地形地貌信息,并與數(shù)字高程地圖庫進行比對,從而獲知當前位置、速度等信息,這在衛(wèi)星導航信號丟失時的長期導航具有重要意義。運用計算機視覺技術,通過識別已知位置上的標記物特征完成位置、速度估計的方法也歸屬此類。還有另一類導航方法就是類似于Vicon的運動捕捉系統(tǒng),這種系統(tǒng)則是通過已知位置的光學等傳感器識別飛行器上設置的標記物,從而解算出飛行器實時位置、速度。
而既然說到基于特征,就不得不關注計算機視覺在導航中的應用,例如在消費級無人機上運用多年的稀疏光流算法,就是根據(jù)灰度圖像中特征點的運動計算出無人機的運動速度,近年來火爆的SLAM則更是將計算機視覺發(fā)揮到極致,這種算法通過將運動中實時采集的圖像特征性信息與慣導等系統(tǒng)信息進行融合,從而可以在未知環(huán)境中一邊完成周圍場景的三維模型重建,一邊進行自身在場景中相對位置和速度的解算。
說回無人機的導航,當前多數(shù)無人機采用慣導/衛(wèi)星導航組合作為基本的導航方式,可以保證絕大多數(shù)場景下的穩(wěn)定導航。大型軍用無人機由于對導航系統(tǒng)的輕量化和成本要求不高,為了實現(xiàn)較高的導航精度,其通常仍采用光纖/激光陀螺和石英加速度計組成的高精度慣導系統(tǒng),而中小型和民用無人機則采用更輕小更廉價,但是精度較低的MEMS器件組成慣導或航姿參考系統(tǒng),與衛(wèi)星導航組合后,仍能提供有效的導航信息輸出。
而在某些特殊應用場景下,衛(wèi)星導航信號會丟失,如微型無人機在室內和城市樓群之間飛行,這時就需要其他的導航方式進行輔助。常用的比如氣壓計的使用就可以以較低的綜合成本獲得低精度的海拔高度(誤差100米量級)和較高精度的相對高度信息(誤差0.1米量級)。無人機在室內飛行時,可以架設前文提到的WIFI、UWB或Vicon等需要復雜外部設備的室內定位系統(tǒng),或者外部設置已知位置的標記物,通過無人機的視覺系統(tǒng)完成識別和自身定位。而在極為特殊的場景下,如各種高危未知環(huán)境的勘測,使得常用輔助導航系統(tǒng)都難以使用時,就不得不祭出SLAM這一殺手锏了,SLAM技術正處于高速發(fā)展中,且已經有多種實用的方案出現(xiàn)了,完美的SLAM系統(tǒng)可以完成科幻電影里那種放出去幾駕微型無人機自由飛行,配合一個便攜地面站,便可以實時地重建周圍環(huán)境的3D模型,這種性能在未來五年之內肯定可以實現(xiàn)。當然絕大多數(shù)輔助的導航方式都難以輸出用于制導控制的高頻率(200Hz以上)導航信息,因此通常情況下仍是將輔助導航系統(tǒng)與慣性導航相結合。
下面來討論無人機的制導,現(xiàn)階段大多數(shù)軍用還是民用無人機在自動飛行過程中僅需完成航路點或航線的跟蹤,因此制導策略相對簡單。多旋翼無人機,跟蹤航路點時只需要將飛行速度方向對準下一個航路點,跟蹤航線也僅需首先飛到航線上距離當前位置最近的點即可;而這項任務對于固定翼無人機相對復雜。因為固定翼無人機的速度方向需要通過航向來改變,而航向則需要通過滾轉來改變,這就使得滾轉角與速度方向之間形成了近似二階環(huán)節(jié)的過程,這通常可以運用導彈的比例導引法來實現(xiàn)航路點跟蹤。比例導引法的基本原理就是讓飛行器速度矢量在空間中的轉動角速度正比于飛行器與目標間的視線角變化率,對于航路點這一靜止目標,只需要無人機與航路點之間的距離足夠,就可以保證準確抵達下一個航路點,而對于航線跟蹤,則需要選擇一個虛擬的目標點使得無人機首先向航線靠近,然后再逐步將方向對準航線方向。例如現(xiàn)在被廣泛使用的L1制導算法,就是在航線上選擇與無人機距離為L1的參考點,然后根據(jù)速度方向與到參考點連線方向之間的夾角計算橫向機動的需用過載,進而實現(xiàn)航線跟蹤。
而隨著無人機在多種場景下應用的不斷深入,除了航路點和航線的跟蹤以外,無人機抵達目標的最優(yōu)路徑選擇,障礙物或禁飛區(qū)規(guī)避以及多機協(xié)同工作所需要的制導策略越來越復雜。我們知道最優(yōu)控制方法在航天器軌道轉移、火箭入軌制導等問題中起到了良好的效果,但是對于大氣中飛行的無人機路徑規(guī)劃,基于間接法的最優(yōu)控制問題很難求解,因此無人機路徑規(guī)劃往往采用基于網(wǎng)格地圖的搜索算法,或者蟻群算法、遺傳算法等特殊的路徑優(yōu)化方法。例如在基于概率地圖的搜索算法中,首先運用隨機概率方法在自由空間(任務空間中,除去障礙物后的空間)中選取采樣點,并選取距離當前點最近的k個點構成當前點的臨近點集,然后利用局部規(guī)劃器將當前點與其臨近點集中的所有點用直線段連接起來,同時進行相交檢驗,將不與障礙物相交的直線段保留下來構成一個圖,作為初始路徑, 完成路徑規(guī)劃的學習階段;在查詢階段,運用優(yōu)化方法對上述圖進行搜索,從而得到由圖的邊構成的從出發(fā)點到目的點并滿足優(yōu)化目標的路徑。
另一類常用的算法并不是基于網(wǎng)格地圖進行搜索,例如人工勢場法,其基本思想是將無人機的運動,設計成一種在抽象的人造引力場中的運動,如下圖所示,目標物對無人機產生“引力”,而障礙物對無人機產生“斥力”,通過求解目標和所有障礙物對無人機產生的合力,就可以得到無人機運動速度或加速度指令。相對于大多數(shù)搜索算法,人工勢場法運算量更小,且得到的軌跡更平滑。
以上這兩類制導算法通常適用于一架無人機的航路跟蹤或路徑規(guī)劃,而當設計無人機編隊甚至集群時,問題復雜程度則驟增。對于集群中的某個無人機來說,其他無人機既是可以協(xié)作和互通信息的伙伴,同時又是快速移動的障礙物,而整個集群的路徑規(guī)劃有需要考慮集群以及其中每一架無人機特性所形成的約束條件,或者當集群處于協(xié)同作戰(zhàn)模式時,又需要對目標自發(fā)形成各角度的全向飽和攻擊,當然,這其中需要解決的問題正是當前研究的熱點。
最后再討論一下無人機的控制,導航系統(tǒng)獲得了無人機當前位置速度和姿態(tài)信息,制導系統(tǒng)完成路徑規(guī)劃和制導指令生成,而控制的任務就是精確、快速穩(wěn)定地跟蹤收到的制導指令,因此控制也是最關鍵的環(huán)節(jié)。最常用的控制算法還是歷久彌新的PID,通過將被控參數(shù)參考值與當前值誤差的比例、積分和微分進行適當組合,便能夠完成大部分近似線性系統(tǒng)的有效控制。
而事實上,現(xiàn)在工程中所使用的很多PID算法,早已經不是基本的構型了,常用的改進方式主要有以下幾種:
增益調度:既然PID控制器設計過程一般是在某個平衡點處做系統(tǒng)的小擾動線性化方程(平心而論,工程中還真不都是這么按流程來,各種野路子都有),進而完成設計的,那么只要在正常工作范圍(對于無人機來說可以是飛行包線)內選取足夠的平衡點,并根據(jù)每個平衡點的模型選擇合適的PID控制參數(shù),這樣就可以在控制器工作中通過插值等方式選擇相應平衡點附近的控制參數(shù),這種變參數(shù)的方法就是一種增益調度方法,而基于增益調度的PID控制器就可以針對具有一定非線性特性的系統(tǒng)進行控制。這種方法在飛行控制中已應用多年。
參數(shù)自適應:比如以系統(tǒng)積分誤差性能指標為準則,搜索使得誤差性能指標為最小的參數(shù)作為控制器參數(shù),又或者基于神經網(wǎng)絡和遺傳算法的參數(shù)自適應等,不過這些方法在工程中使用的比較少。
串級:通過將被控系統(tǒng)分為內外環(huán),只需要內外環(huán)的固有頻率有一定的差別(比如說內環(huán)頻率是外環(huán)的五倍以上,無人機的姿態(tài)響應和位置響應一般可以滿足),即可用實現(xiàn)快變量和慢變量的分別控制,通過簡單的調參就可以實現(xiàn)快速的內環(huán)響應和精確的外環(huán)控制,并具有比單個控制器更好的抗干擾性能。
積分抗飽和:PID控制中的積分作用雖然可用消除穩(wěn)態(tài)誤差,但是積分退飽和過程帶來的超調往往較大,因此可用在被控參數(shù)的誤差較大時,停止誤差的積分過程,或者對誤差的積分值進行限幅,這樣就可以顯著地降低超調量,縮短過程的穩(wěn)定時間。
不完全微分:雖然被控參數(shù)一般不會出現(xiàn)突變,但是參考值卻經常會出現(xiàn)突變,這使得誤差的微分也會突變,為了降低這種突變造成的控制量幅值,可以采用不完全微分策略,即微分只作用于被控參數(shù)(如飛行控制中的角速度阻尼)。
PID算法的改進方式還有很多,難以細數(shù),不過這種改進終歸難以解決所有問題,例如被控對象的高度非線性、強耦合性、時變性等特性,因此新的控制方法層出不窮。下面列舉幾種較為實用的其他控制方法。
反饋線性化:利用數(shù)學變換的方法和微分幾何學的知識,將狀態(tài)和控制變量轉變?yōu)榫€性形式,然后,利用常規(guī)的線性設計的方法進行設計,將設計的結果通過反變換,轉換為原始的狀態(tài)和控制形式。反饋線性化可以將存在通道間耦合的非線性系統(tǒng)變換為解耦的線性系統(tǒng),方便外環(huán)的線性控制器設計。不過該方法應用中或多或少會存在建模誤差,因此設計時要重點考慮魯棒性的因素。
滑模變結構:這種方法不需要對被控對象進行精確建模,而是在動態(tài)過程中,根據(jù)系統(tǒng)當前的狀態(tài)(如偏差及其各階導數(shù)等)有目的地不斷變化,迫使系統(tǒng)按照預定“滑動模態(tài)”的狀態(tài)軌跡運動。由于滑動模態(tài)可以進行設計且與對象參數(shù)及擾動無關,這就使得滑??刂凭哂锌焖夙憫?、對應參數(shù)變化及擾動不靈敏、無需系統(tǒng)在線辨識、物理實現(xiàn)簡單等優(yōu)點。但是基本的滑模變結構算法存在控制參數(shù)抖振的問題,需要再趨近率設計時進行適當?shù)膬?yōu)化策略。
反步控制:其基本思路是將復雜的系統(tǒng)分解成不超過系統(tǒng)階數(shù)的多個子系統(tǒng),然后通過反向遞推為每個子系統(tǒng)設計部分李雅普諾夫函數(shù)和中間虛擬控制量,直至設計完成整個控制器。反步方法運用于飛控系統(tǒng)控制器的設計可以處理一類非線性、不確定性因素的影響,而且已經被證明具有比較好穩(wěn)定性及誤差的收斂性。
自適應逆:與動態(tài)逆的思想類似,這種方法運用各種自適應逆濾波網(wǎng)絡(如LMS濾波器網(wǎng)絡、神經網(wǎng)絡等)去擬合出被控對象的逆系統(tǒng),從而將控制器與被控對象構成的前向通道變換成一一映射的線性化解耦系統(tǒng),而之所以稱為“自適應”,則是這個擬合出逆系統(tǒng)的網(wǎng)絡可以在線學習被控對象的特性。這種方法在仿真中可以取得比傳統(tǒng)控制方法優(yōu)越很多的效果,但是由于濾波器網(wǎng)絡可能存在無法檢出的內部缺陷,所以在某些狀態(tài)組合下,可能會出現(xiàn)故障(包括深度神經網(wǎng)絡在內的所有神經網(wǎng)絡都潛在此風險)。
本文簡要梳理了可用于無人機的導航、制導和控制的方法、策略或算法,其中部分算法將在后續(xù)的仿真系統(tǒng)相應的文章詳細介紹并在代碼中體現(xiàn)。
(正文已結束)
推薦閱讀:one時尚秀
免責聲明及提醒:此文內容為本網(wǎng)所轉載企業(yè)宣傳資訊,該相關信息僅為宣傳及傳遞更多信息之目的,不代表本網(wǎng)站觀點,文章真實性請瀏覽者慎重核實!任何投資加盟均有風險,提醒廣大民眾投資需謹慎!