[摘 要]文章針對無人機(jī)在各種復(fù)雜環(huán)境下飛行控制模型的不確定性問題,設(shè)計了基于閉環(huán)系統(tǒng)辨識算法、校正控制算法參數(shù)整定技術(shù)的智能飛行控制系統(tǒng),并設(shè)計了一套虛擬樣機(jī)仿真系統(tǒng),保證無人機(jī)高速、高精度、高魯棒性飛行控制性能的同時,避免調(diào)參帶來的巨大工作量,同時,通過虛擬樣機(jī)仿真對該算法進(jìn)行了驗(yàn)證。
[關(guān)鍵詞]飛行控制;閉環(huán)系統(tǒng)辨識算法;校正控制算法;參數(shù)整定
[中圖分類號]V249 [文獻(xiàn)標(biāo)志碼]A [文章編號]2095–6487(2024)03–0165–03
1 閉環(huán)系統(tǒng)辨識算法
針對閉環(huán)控制系統(tǒng)中噪聲與干擾信號隨著反饋環(huán)節(jié)傳遞變?yōu)椴豢深A(yù)估和建模的干擾信號,從而使得辨識無法得到系統(tǒng)參數(shù)的無偏估計值的問題,設(shè)計了一種有效的閉環(huán)系統(tǒng)辨識算法,其分為以下3步。
(1)預(yù)處理濾波。利用廣義泊松矩泛函(GPMF)的方法構(gòu)造濾波器,利用GPMF 濾波器的特性,在保留輸入輸出數(shù)據(jù)中與傳遞函數(shù)有關(guān)信息的同時,濾除高頻噪聲。
(2)迭代調(diào)用輔助變量法。輔助變量法通過構(gòu)造特定的輔助變量,可以得到任何傳遞函數(shù)的無偏估計。通過迭代的方式,所構(gòu)造的輔助變量中包含的傳遞函數(shù)本身的響應(yīng)信息越來越多,噪聲干擾信息越來越少,使其逐漸接近理想化的輔助變量。
(3)線性優(yōu)化。通過線性尋優(yōu)方法減小方程誤差,有效地提高系統(tǒng)參數(shù)的辨識結(jié)果所計算的輸出與真實(shí)輸出的擬合度。
2 虛擬樣機(jī)仿真技術(shù)
在三維建模軟件SolidWorks 中建立無人機(jī)的模型,其中各個零件的尺寸、材料,以及各零件之間的配合約束都完全按照真實(shí)無人機(jī)進(jìn)行設(shè)計,以保證其動力學(xué)模型的真實(shí)性。然后將其導(dǎo)出為Simulink 可調(diào)用的三維可視化動力學(xué)模型。
利用MathWorks 官方插件smlink(SimscapeMultibody Link), 可以快速地將SolidWorks 中的裝配體模型轉(zhuǎn)化為MATLAB 運(yùn)算兼容的SimulinkMultibody 模型。在以下網(wǎng)址或MathWorks 首頁搜索smlink, 下載SolidWorks 與Simulink 相關(guān)聯(lián)的插件,并運(yùn)行相應(yīng)的代碼進(jìn)行關(guān)聯(lián):https ://ww2.mathworks.cn/campaigns/offers/download_smlink.html?s_tid=srchtitle( 命令窗口輸入install_addon 安裝插件;輸入smlink_linksw 以關(guān)聯(lián)SolidWorks);將matlab 與SolidWorks 關(guān)聯(lián)成功后,SolidWorks 軟件的裝配體界面中就會出現(xiàn)相對應(yīng)的導(dǎo)出選項。在建立好的三維裝配體模型中,通過選擇工具- simscapeMultibody Link - Export - Simscape Multibody 選項,可以將三維模型快速導(dǎo)出為matlab 可調(diào)用的文件類型STEP 及xml 文件。在MATLAB 命令窗口中輸入命令smimport('***.xml'),將模型導(dǎo)入為Simulink/Multibody 文件(.slx),即為初始化Multibody 模型。
Multibody 是Simulink 中的一個庫函數(shù),主要負(fù)責(zé)機(jī)器人可視化動力學(xué)模型的建立和仿真。Multibody模型包含了無人機(jī)模型的運(yùn)動學(xué)和動力學(xué)屬性,并且可以利用Simulink 圖形化編程進(jìn)行控制和運(yùn)算過程的添加。
3 模型調(diào)整與坐標(biāo)系建立
無人機(jī)動力學(xué)模型建立后,還需要建立與世界坐標(biāo)系之間的坐標(biāo)轉(zhuǎn)換關(guān)系,以計算與反饋無人機(jī)在世界坐標(biāo)系下的運(yùn)動狀態(tài),所以添加各個運(yùn)動副來實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換。
先根據(jù)模型的實(shí)際情況,設(shè)置正確的重力加速度方向,然后進(jìn)行模型的調(diào)整。由于SolidWorks 等三維建模軟件中通過各個零件組成裝配體時,需要在各個零件之間添加配合,即自由度約束。在利用smlink 插件將SolidWorks 模型轉(zhuǎn)換為Multibody 動力學(xué)模型時,這些配合會自動生成相應(yīng)的運(yùn)動副。而SolidWorks 模型的配合與Multibody 動力學(xué)模型中的運(yùn)動副的不同之處在于,SolidWorks 中的零件在未添加配合之前,其各個自由度都是不受約束的,即如果不添加配合,則零件可以進(jìn)行六自由度自由旋轉(zhuǎn)和平移;而在Multibody 中,零件之間未添加任何運(yùn)動副,意味著這兩個零件是固結(jié)的,無法發(fā)生位移和旋轉(zhuǎn)。同時,SolidWorks 中的高級配合,如距離配合、對稱配合等,在轉(zhuǎn)化過程都是無法識別的。所以在進(jìn)行轉(zhuǎn)化過程中,各個零件之間的配合、運(yùn)動副會出現(xiàn)錯誤,需要進(jìn)行調(diào)整。
在通過運(yùn)動副調(diào)整和坐標(biāo)變換調(diào)整,使得動力學(xué)模型成為一個合理的、最簡化的模型后,需要對其添加運(yùn)動自由度。對于伴飛無人機(jī)的動力學(xué)模型,由于合理化調(diào)整后的模型與地面之間不存在任何運(yùn)動副,所以無人機(jī)目前是與地面固結(jié)的、不可移動的,需要合理添加與地面之間的運(yùn)動副,使得無人機(jī)獲得全空間六自由度的運(yùn)動能力。
由于無人機(jī)是個欠驅(qū)動不穩(wěn)定的系統(tǒng),其6 個自由度需要分層次進(jìn)行控制。為了保證無人機(jī)在空間內(nèi)的穩(wěn)定飛行,需要先保證無人機(jī)3 個姿態(tài)角的穩(wěn)定及高度方向的穩(wěn)定控制,再通過俯仰和橫滾角保證xy方向的位置控制。所以無人機(jī)的自由度設(shè)置也應(yīng)分層次。先添加最外環(huán)的xy 方向位置自由度,然后添加高度方向自由度,最后按照歐拉角的表示方法,一次建立3 個姿態(tài)角度的自由度。
還需要添加狀態(tài)的反饋接口及控制力的輸入接口。添加xyz 3 軸方向的移動運(yùn)動副,使得無人機(jī)可以平動;在運(yùn)動副上添加狀態(tài)輸出,作為四旋翼位置的反饋。然后在此基礎(chǔ)上,依次添加3 個單自由度轉(zhuǎn)動副,依次代表四旋翼的偏航、滾轉(zhuǎn)和俯仰3 個歐拉角(用歐拉角表示機(jī)器人的姿態(tài)時,需要規(guī)定一定的順序);分別在3 個轉(zhuǎn)動副上添加狀態(tài)輸出,獲取四旋翼的姿態(tài)角度反饋。
將四旋翼模型的運(yùn)動自由度與虛擬傳感器建立完成后,需要搭建對4 個電機(jī)的控制線路。對電機(jī)的PWM(脈沖寬度調(diào)制)模擬輸入同樣接在轉(zhuǎn)動副上,在仿真建模中直接設(shè)置為扭矩輸入。另外,由于Multibody 工具箱中沒有空氣動力學(xué)仿真,所以在螺旋槳轉(zhuǎn)動時,只通過模型內(nèi)部的解算,是不會給四旋翼提供升力的,只能提供反扭矩。所以需要通過外力和扭矩模塊,手動添加螺旋槳升力。升力與螺旋槳的轉(zhuǎn)速呈二次函數(shù)關(guān)系,所以在轉(zhuǎn)動副中導(dǎo)出電機(jī)的轉(zhuǎn)速,通過函數(shù)f(u)計算得到升力,作用在4 個臂上。圖1 為其中一個轉(zhuǎn)子的控制接口與升力模塊設(shè)置。
至此,四旋翼無人機(jī)的動力學(xué)模型及輸入輸出接口設(shè)計完成。然后在此虛擬樣機(jī)模型基礎(chǔ)上,添加了控制算法,來控制四旋翼的飛行動作。
4 建立聯(lián)合仿真控制系統(tǒng)
四旋翼無人機(jī)是一個耦合的復(fù)雜機(jī)電系統(tǒng),但由于在控制時,其3 個旋轉(zhuǎn)自由度與高度方向自由度的控制相對獨(dú)立,而xy 軸方向的自由度又是通過橫滾和俯仰兩個旋轉(zhuǎn)自由度控制的,所以可以將四旋翼無人機(jī)系統(tǒng)視為一個具有4 個相對獨(dú)立自由度的系統(tǒng)。4 個自由度進(jìn)行獨(dú)立控制。設(shè)置4 個PID 控制器,分別控制高度、偏航、橫滾和俯仰4 個自由度。另外,在xy 軸方向自由度上設(shè)置兩個PID 控制器,分別作為橫滾和俯仰姿態(tài)控制的外環(huán)。對各個PID 控制器進(jìn)行有效的調(diào)參后,四旋翼的控制系統(tǒng)對于各個自由度的期望響應(yīng)達(dá)到快速、準(zhǔn)確、穩(wěn)定的效果。
在添加控制器之前,需要先搭建系統(tǒng)的控制回路?;芈泛突炜仄髟O(shè)置完畢后,在回路中添加控制器??刂葡到y(tǒng)框圖如圖2 所示。
控制響應(yīng)的性能決定了四旋翼無人機(jī)對于規(guī)劃算法的執(zhí)行能力。通過調(diào)節(jié)控制器性能,在執(zhí)行過程中,無人機(jī)能夠及時、準(zhǔn)確地響應(yīng)規(guī)劃算法對于下一時刻的位置期望;在一些常數(shù)期望的自由度上,即第一階段的高度方向位置期望,以及第二階段的水平方向位置期望,控制器保證了四旋翼無人機(jī)穩(wěn)態(tài)的穩(wěn)定控制。
5 最終控制和虛擬樣機(jī)模型
最終控制和四旋翼無人機(jī)Simulink 模型如圖3 所示。其可以對仿真過程與模型的運(yùn)動狀態(tài)進(jìn)行可視化的觀測與優(yōu)化。
6 結(jié)束語
文章針對無人機(jī)在各種復(fù)雜環(huán)境下飛行控制模型的不確定性問題,提出了基于閉環(huán)系統(tǒng)的辨識算法,該方法通過預(yù)處理濾波、迭代調(diào)用輔助變量法、線性優(yōu)化,有效提高了系統(tǒng)參數(shù)的辨識結(jié)果;通過虛擬樣機(jī)仿真技術(shù),設(shè)計了虛擬樣機(jī)仿真系統(tǒng),建立了三維可視化四旋翼無人機(jī)動力學(xué)模型;建立了包含高度、偏航、橫滾和俯仰4 個自由度獨(dú)立的仿真控制系統(tǒng),最終形成控制和虛擬樣機(jī)模型,實(shí)現(xiàn)對仿真過程與模型的運(yùn)動狀態(tài)進(jìn)行可視化的觀測與優(yōu)化。
參考文獻(xiàn)
[1] KRISHNAKUMAR K,GONSALVES P,SATYADAS A,et al . Hybrid fuzzy logic flight controller synthesis via pilot modeling[J].Journal of Guidance Controland Dynamics,2015,18(5):1098-1105.
[2] 姜長生,郭樹軍. 先進(jìn)武裝直升機(jī)一種新型組合智能飛控系統(tǒng)和火/飛綜合系統(tǒng)的設(shè)計與仿真[J]. 航空學(xué)報,1998,19(6):719-725.
[3] 劉廣萍,張漢杰. 遺傳算法在模糊控制器參數(shù)尋優(yōu)中的應(yīng)用[J]. 哈爾濱建筑大學(xué)學(xué)報,2000,33(3):78-81.