王宇航,楊天祥,王新闊
(1. 西北工業(yè)大學(xué)自動化學(xué)院,陜西 西安 710129;2. 航空工業(yè)特種飛行器研究所,湖北 荊門448035)
隨著科技的發(fā)展,現(xiàn)代飛行器的安全性、可靠性不斷提高,許多先進飛行器配備了多操縱面和多推力矢量發(fā)動機[1]?,F(xiàn)代重載運輸飛艇迅速發(fā)展,融合了推力矢量先進技術(shù),改善了可靠性與安全性,逐漸成為各個國家的研究熱點。
多推力矢量發(fā)動機成為飛艇主要的操縱方式后,需要采用控制分配技術(shù)對多個發(fā)動機進行協(xié)調(diào)操縱[2]。工程中最常用的控制分配[3]方法為廣義逆法,這類方法計算簡單,易于實現(xiàn),但廣義逆陣的選取不是唯一的,通常的做法是選擇控制效率矩陣的 Moore-Penrose 逆,但這種選取方式無法保證控制分配效率,為了體現(xiàn)控制分配策略優(yōu)勢,需要尋找控制分配效率最大的廣義逆陣。
通常做法是利用遺傳算法強大的搜索能力優(yōu)化廣義逆法,但其容易陷入局部最優(yōu)解,為了獲得全局最優(yōu)解,文獻[4]加入了小生境遺傳算法,文獻[5]在基本遺傳算法中加入切斷算子與拼接算子。根據(jù)文獻[4-5]中提高樣本多樣性避免陷入局部最優(yōu)的思想,本文將模擬退火算法思想融合到遺傳算法中。
通常小范圍的質(zhì)量干擾可以利用飛艇自身的魯棒性去消除[6]。但當(dāng)飛艇的重量或重心發(fā)生大幅變化時,如重載飛艇的貨物裝載與投放[7],重心、轉(zhuǎn)動慣量變化將影響飛艇的操穩(wěn)特性[8]。文獻[9]從相互作用力的角度將變化視為干擾,同時根據(jù)觀測器的觀測值,對控制器進行干擾補償。文獻[10]實時計算飛機重心,控制飛機水箱中水的實時流動,維持飛機重心。本文結(jié)合文獻[9-10]中方法的優(yōu)點,利用水箱的補水與放水策略維持飛艇總重量、重心的穩(wěn)定。
因此,本文采用控制分配策略進行控制設(shè)計,尋找最大分配效率的同時,為了避免陷入局部最優(yōu)值,利用基于模擬退火思想優(yōu)化的遺傳算法的去優(yōu)化廣義逆陣;設(shè)計水箱補償貨物質(zhì)量策略進行仿真,觀測懸停飛艇對貨物干擾的響應(yīng),達(dá)到飛艇懸停裝卸貨物并維持姿態(tài)與高度穩(wěn)定的目的。
本次實驗飛艇如下圖1所示,不同于常規(guī)飛艇,實驗飛艇共有8個推力矢量發(fā)動機、方向舵與升降舵。
圖1 推力矢量飛艇
根據(jù)推力矢量發(fā)動機偏轉(zhuǎn)角的定義[11],以一個發(fā)動機為例,列寫出推力矢量發(fā)動機在艇體系[12]中的分量
(1)
δTy,δTz為推力矢量發(fā)動機偏轉(zhuǎn)角,推力矢量發(fā)動機相對于飛艇體積中心的坐標(biāo)為RT=[xTyTzT],推力力矩在艇體系中可表示為
(2)
除了推力之外,飛艇還受到氣動力、流體慣性力、重力及浮力[12]。計算出的合力在艇體系中沿三軸分解,建立飛艇動力學(xué)方程,得到以下公式
(3)
(4)
其中m表示飛艇質(zhì)量,F(xiàn)x,F(xiàn)y,F(xiàn)z表示艇體系中x,y,z的三軸合力,φ,θ,ψ表示滾轉(zhuǎn)角、俯仰角、偏航角,p,q,r表示艇體系三軸角速度,L,M,N表示艇體系三軸合力矩,u,v,w表示艇體系三軸速度,I表示飛艇轉(zhuǎn)動慣量。
將貨物看作加入飛艇模型的干擾,寫出干擾的力與力矩公式
(5)
(6)
mΔ表示貨物質(zhì)量,lx,ly,lz表示貨物在艇體系中的x,y,z坐標(biāo)。
圖2 飛艇模型輸入輸出
根據(jù)多推力矢量建模分析,多推力矢量飛艇與常規(guī)飛行器最大的不同點就是推力矢量發(fā)動機代替操縱舵面成為了主要的操縱方式,飛艇的姿態(tài)變化不再依靠某個單一的舵面進行操縱,而是需要多個發(fā)動機進行協(xié)調(diào)操縱。為了在不改變常規(guī)控制律設(shè)計方式的同時體現(xiàn)多推力矢量的優(yōu)勢,將控制律設(shè)計模塊與控制分配模塊分開設(shè)計。
將控制系統(tǒng)進行分層模塊化設(shè)計,通過控制分配技術(shù)將多推力矢量飛艇飛行過程中的期望力與力矩分別映射到飛艇機體系的三軸上,再利用設(shè)計的控制分配模塊,將三軸力與力矩協(xié)調(diào)分配到各個發(fā)動機。
圖3 控制系統(tǒng)的分層模塊化設(shè)計
控制分配問題可以描述如下:給定期望虛擬變量v(t)∈Rk,映射B:Rm→Rk(m>k),通過不定方程Beu(t)=v(t)求解u(t)。其中,控制變量u(t)∈Rm,Be稱為控制效能矩陣。
控制分配評價方法有很多,利用轉(zhuǎn)矩可達(dá)集思想可以評價控制分配的效率[10]:
廣義逆是最常用的控制分配方法,對控制分配問題給出了如下解:
u=Fud+Pv
(7)
對于ud=0,rank(v)=3,Wu=I這種不含權(quán)值的分配問題,即
Beu=v,BeP=I
(8)
令Bex=0(x=(x1,x2,…,xm)T,rank(Be)=r)。設(shè)該方程的基礎(chǔ)解系為ξ=[ξ1,ξ2,…,ξm-r],則x=k1ξ1+k2ξ2+…+km-rξm-r為該方程的通解。
式中
(9)
顯然x=[x1,x2,x3]構(gòu)成了方程Bex=[0,0,0]T的通解。
優(yōu)化目標(biāo)是找出一組參數(shù)K使得廣義逆陣P對應(yīng)的分配效率最大。
其中
(10)
模擬退火算法的提出主要是為了解決局部最優(yōu)解問題[14]。從算法設(shè)計角度上來說,首先,算法初始假定一個較高的T值,這個值被稱作模擬溫度,此時算法運算是不穩(wěn)定的,選擇當(dāng)前錯誤的可能性很高。當(dāng)T衰減的時候,算法的演算方向就會變穩(wěn)定,而選擇錯誤的可能性也會下降。最后,達(dá)到停止迭代的條件時可以找到大致最優(yōu)方案。
由上文知,K為需要優(yōu)化的參數(shù),而模擬退火算法主要依據(jù)降溫過程完成優(yōu)化,對于局部的優(yōu)化能力較強。而遺傳算法全局搜索能力強,但其局部優(yōu)化能力弱,可能會出現(xiàn)早熟現(xiàn)象和遺傳漂移的情況,容易到局部最優(yōu)中無法跳出[15];因此結(jié)合兩種算法思想,取長補短,能更好更快地得到全局最優(yōu)解。
模擬退火思想應(yīng)用到遺傳算法的具體操作步驟如下:
1) 初始化種群
設(shè)置需要進行遺傳操作的代數(shù),初始化g=0;
設(shè)置群體的規(guī)模大小N,并根據(jù)設(shè)置的群體規(guī)模大下選擇一定數(shù)量的有效個體組成初始群體P(t);
設(shè)置遺傳算法操作算子交叉概率算子Pc,變異概率算子Pm;
設(shè)置退火的初始溫度TC;
設(shè)置每次溫度下降的退火衰減因子k。
2) 適應(yīng)度函數(shù)計算
一般選取的適應(yīng)度函數(shù)都是與目標(biāo)函數(shù)相關(guān),在模擬退火遺傳算法的思想中,模擬退火算法將適應(yīng)度函數(shù)與退火溫度聯(lián)系起來,可以組成新的適應(yīng)度函數(shù)。
假設(shè)第i個個體在種群中的適應(yīng)度為
(11)
其中,c(X)是目標(biāo)函數(shù),T即為模擬退火算法中的溫度T,它在隨機迭代進程中逐漸減小。
3) 選擇運算
4) 交叉運算
采取輪盤賭的形式選擇個體進行單點交叉計算。
5) 變異運算
交叉概率Pc控制速度大小,過小會導(dǎo)致尋優(yōu)過程過慢,過大會導(dǎo)致個體消失太快,容易陷入到局部最優(yōu)之中。而變異概率Pm過小就難以產(chǎn)生新個體,Pm過大導(dǎo)致新種群與原來種群差異過大。因此,為了減少固定概率值帶來的影響,可以讓這兩個參數(shù)值隨著適應(yīng)度函數(shù)進行變化,并調(diào)整兩者如下
(12)
(13)
6) 模擬退火運算
進行交叉和變異之后,產(chǎn)生的新個體通過模擬退火運算判斷是否接受。
7) 終止條件
到達(dá)最大迭代次數(shù)。
圖4 模擬退火算法流程圖
P=P0+[x1,x2,x3]=P0+ξ·K矩陣作為控制分配的最終目的,控制分配模塊將控制律模塊虛擬的期望力和力矩通過P矩陣轉(zhuǎn)換為飛艇實際輸入,偽逆法直接求取矩陣P的Moore-Penrose逆,加權(quán)偽逆法加入了權(quán)重矩陣Wu,基于模擬退火算法思想的遺傳算法在加權(quán)偽逆法的基礎(chǔ)上,尋找具有最大分配效率參數(shù)矩陣K,三種算法的可優(yōu)化范圍逐漸增大,尋找到的控制分配的效率也會逐漸增大。
圖5 算法思想對比圖
由于采用控制分配策略,所以只需要采用常規(guī)控制律設(shè)計方法得到虛擬控制量,將控制律設(shè)計分為橫縱向分別設(shè)計。
采用常規(guī)PID控制器進行控制得到飛艇縱向控制律:
(14)
上式中的為可調(diào)參數(shù),同理可得橫側(cè)向控制律,將控制律輸出的期望值送到控制分配模塊,控制分配模塊將期望合力與合力矩轉(zhuǎn)換為實際飛艇的推力矢量輸入,達(dá)到控制目的。
圖6 控制系統(tǒng)分層結(jié)構(gòu)
利用飛艇自身的對稱性,以飛艇中軸線為中線,在飛艇橫向?qū)ΨQ安排水箱,對于要分析的飛艇來說,設(shè)計三個貨物吊裝點,在飛艇中軸線分為前部中部后部三個,具體水箱的安裝位置與吊裝點如圖所示。
圖7 水箱分布
1) 當(dāng)飛艇進行裝載貨物時,根據(jù)吊裝點的不同選擇對應(yīng)位置的水箱進行排水以減輕飛艇質(zhì)量,使之滿足加上貨物后飛艇總體質(zhì)量不變;
2) 當(dāng)水箱排水達(dá)到一定質(zhì)量后開始進行貨物的裝載,此時保持水箱繼續(xù)排水直到排出水的質(zhì)量與貨物質(zhì)量相同;
3) 當(dāng)排水和貨物上升均完成后,飛艇恢復(fù)到穩(wěn)定狀態(tài),此時表示一次貨物的裝載完成。飛艇進行卸載貨物的步驟與裝載貨物的思路基本相同,只是將排水過程換成進水過程即可。
懸停配平狀態(tài)選取V=0.1m/s,H=100m。由水箱分布可知,飛艇橫側(cè)向受到的貨物干擾較小,橫側(cè)向姿態(tài)保持穩(wěn)定,實驗主要觀測飛艇縱向姿態(tài)參數(shù)變化。
本次實驗規(guī)定遺傳算法交叉概率初始值為0.5,變異概率初始值為0.1。選擇種群規(guī)模為100,選擇迭代次數(shù)為100 次。
模擬退火思想優(yōu)化遺傳算法中主要影響求解質(zhì)量與求解時間的是退火溫度的下降梯度,一般情況下選擇為0.97~0.99之間。本次實驗規(guī)定下降梯度為0.98,實驗結(jié)果如下:
圖8 加權(quán)偽逆控制分配效率(30.90%)
圖9 模擬退火優(yōu)化遺傳算法控制分配效率(49.27%)
可以看到,基于模擬退火思想改進的遺傳算法相較于加權(quán)偽逆算法,優(yōu)化效果有顯著提高,分配效率是加權(quán)偽逆算法的1.59倍。
優(yōu)化后得到的縱向控制分配P矩陣為
P=[ -0.5244 27.4203 -89.0803 4.0020
-16.6119 -36.4108 -0.5594 14.9044
35.3557 13.6680 1.1496 -26.6969 12.0420
-2.5360 20.5063 5.2565 -6.3171 -50.9687]
(15)
設(shè)計前中后部三個吊裝點,分一次性大質(zhì)量吊裝以及小質(zhì)量連續(xù)吊裝共六組實驗,以驗證設(shè)計的懸停狀態(tài)飛艇控制分配對于貨物裝卸時縱向姿態(tài)保持的有效性,實驗要求飛艇姿態(tài)可以保持穩(wěn)定,高度偏差在-10 ~10m之間。
表1 懸停貨物吊裝實驗
為了表示飛艇貨物裝卸時貨物質(zhì)量變化,將水箱、貨物質(zhì)量變化,總質(zhì)量變化用曲線畫出:
圖10 吊裝貨物質(zhì)量變化
將仿真根據(jù)吊裝方式分為兩組,利用模擬退火優(yōu)化后的分配陣控制飛艇懸停,加入貨物,觀察參數(shù)選取為飛艇速度、高度、俯仰角。
圖11 實驗1姿態(tài)運動參數(shù)變化
圖12 實驗2姿態(tài)運動參數(shù)變化
從實驗結(jié)果圖可以看到,采用一次性吊裝策略,飛艇的姿態(tài)在有限時間內(nèi)只會有一次干擾,加入貨物之后,飛艇的高度在400秒內(nèi)達(dá)到穩(wěn)定,變化范圍在2米以內(nèi),姿態(tài)維持穩(wěn)定,符合實驗要求。
相對于一次性吊裝策略,連續(xù)吊裝采取的策略是每隔100秒吊裝質(zhì)量為1t的貨物。連續(xù)吊裝5次,仿真時間選取500秒,觀測縱向參數(shù)的變化。
圖15 實驗5姿態(tài)運動參數(shù)變化
圖16 實驗6姿態(tài)運動參數(shù)變化
可以看出,隨著吊裝貨物次數(shù)的增加,飛艇的高度呈緩慢下降或上升趨勢,結(jié)合一次性吊裝實驗的結(jié)果,飛艇完成裝卸工作后大概需要400~500秒的時間用于恢復(fù)穩(wěn)定狀態(tài),因此當(dāng)連續(xù)吊裝貨物的時間間隔較短時容易造成飛艇的不穩(wěn)定現(xiàn)象,但在連續(xù)吊裝的三次實驗中經(jīng)過5次貨物的裝卸,飛艇高度改變量小于3m,俯仰角改變量小于5°,符合實驗要求。
圖17 不同控制分配方法控制效果
利用飛艇中部吊裝8t貨物進行了一次仿真,將偽逆法、加權(quán)偽逆法、遺傳算法和基于模擬退火思想的遺傳算法的飛艇懸停吊裝貨物高度變化進行對比,發(fā)現(xiàn)控制分配效率的增大的同時,也改善了控制效果。
仿真利用控制分配策略控制多推力矢量飛艇懸停,在加權(quán)偽逆法基礎(chǔ)上利用基于模擬退火算法優(yōu)化的遺傳算法搜索廣義逆陣,增大了控制分配效率,改善了控制效果;在飛艇懸停裝卸貨物時,運動參數(shù)的變化顯示水箱補水與排水的策略消除了貨物對飛艇帶來的干擾,懸停飛艇姿態(tài)穩(wěn)定。實驗結(jié)果驗證了控制分配策略以及水箱裝載策略的有效性。