戚心辰,吳劍威
(哈爾濱工業(yè)大學,黑龍江 哈爾濱 150001)
無人機技術(shù)的日漸成熟,使其在工業(yè)中的應(yīng)用越來越廣泛。對于一些高復雜超精密的任務(wù),無人機需要搭載更多的輔助結(jié)構(gòu)(例如:多自由度機械臂),因此常規(guī)的控制方式越來越難以滿足其高魯棒性和抗干擾性的要求。四旋翼無人機由是一種常見的無人機結(jié)構(gòu),其由于結(jié)構(gòu)簡單因而得到廣泛使用。四旋翼無人機是一個四輸入六輸出的欠驅(qū)動系統(tǒng)[1],由于其強耦合、易干擾的非線性特性,極其容易受到干擾的影響。
目前比較常見的控制算法有PID控制、H∞魯棒控制等,文獻[2]利用傳統(tǒng)PID控制,實現(xiàn)無人機搭載機械臂用以橋梁檢測,但對于機械臂帶來的干擾抵抗能力較弱;文獻[3]設(shè)計了基于PD控制的自適應(yīng)控制,提高了無人機抗干擾能力,但控制存在滯后的問題,實時性較差;文獻[4]中無人機采用H∞魯棒控制和加速度反饋結(jié)合的復合控制方式,利用加速度反饋控制用以面對風力的干擾,但其對干擾的響應(yīng)速度比較慢。
無人機飛行過程中,來自外界的非線性干擾會影響無人機的飛行狀態(tài)。傳統(tǒng)的PID控制器對于外界非線性干擾的抵抗能力較差。而神經(jīng)網(wǎng)絡(luò)的自適應(yīng)性可以很好地對無人機內(nèi)部參數(shù)進行調(diào)整。文獻[5]建立逆系統(tǒng),利用BP神經(jīng)網(wǎng)絡(luò)進行姿態(tài)控制補償,提高了控制精度和抗干擾能力,但存在控制滯后,實時性不高的問題,無人機模型沒有被精確辨識。
因此本文提出模糊神經(jīng)網(wǎng)絡(luò)與PID結(jié)合的控制方法,不僅解決了神經(jīng)網(wǎng)絡(luò)學習過程導致的響應(yīng)速度慢的問題,而且提高了無人機姿態(tài)控制的抗干擾能力,并且建立Maxout辨識器,克服了傳統(tǒng)控制對模型參數(shù)過分依賴的問題。仿真結(jié)果結(jié)果表明所設(shè)計的控制方式在大干擾情況對模型未知的無人機進行精確實時控制,無人機系統(tǒng)的魯棒性和抗干擾性得到很好的提高。
圖1為無人機的模型結(jié)構(gòu)圖[6]
圖1 四旋翼無人機
四旋翼無人機結(jié)構(gòu)簡單,通過控制四個機翼的電機,來控制無人機的飛行狀態(tài)。四旋翼無人機系統(tǒng)是個四輸入六輸出的欠驅(qū)動系統(tǒng)。x(t),y(t),z(t),φ(t),θ(t),ψ(t)表示四旋翼無人機的6個自由度。F1、F2、F3、F4表示四個電機產(chǎn)生的旋翼升力。
圖2 四翼無人機示意圖
無人機獲得的總升力F與電機的轉(zhuǎn)速Ω關(guān)系公式如下
(1)
其中k為旋翼的升力系數(shù),與旋翼的形狀結(jié)構(gòu)有關(guān)。
線運動模型為
(2)
m為無人機整機質(zhì)量,g為重力加速度。
四旋翼對無人機在x軸,y軸,z軸方向的的力矩公式如下[6]
(3)
其中λ為反力矩系數(shù),l為無人機質(zhì)心到旋翼中心距離。
無人機動力學方程為
M=Jε+ω×Jω
(4)
J表示剛體轉(zhuǎn)動慣量,ε表示角加速度,ω表示角速度,M表示姿態(tài)通道控制力矩。
整理可得
(5)
對無人機的控制采用PID控制和模糊神經(jīng)網(wǎng)絡(luò)控制并聯(lián)結(jié)合的方式,如圖2所示:
圖3 無人機控制系統(tǒng)
無人機的控制系統(tǒng)輸入指令,包括無人機橫滾角roll,俯仰角pitch,航偏角yaw以及油門指令throttle。將RPY角度誤差e_rpy輸入傳統(tǒng)PID控制器,將RPY角度誤差e_rpy和角速度誤差e_w_rpy以及z軸方向速度誤差e_v輸入模糊神經(jīng)網(wǎng)絡(luò)控制器,把傳統(tǒng)PID控制器與模糊神經(jīng)網(wǎng)絡(luò)控制器并聯(lián)形成復合控制器[14],輸出控制信號u,對無人機的四個電機進行控制,獲得的電機轉(zhuǎn)速n為無人機提供升力。其中,模糊神經(jīng)網(wǎng)絡(luò)的反饋收斂過程需要利用無人機輸出狀態(tài)與控制信號的數(shù)學關(guān)系,即雅各比參數(shù)yu,作為模糊神經(jīng)網(wǎng)絡(luò)控制器的相關(guān)輸入?yún)?shù)變量,這個變量可以通過神經(jīng)網(wǎng)絡(luò)辨識器獲得。
PID控制器結(jié)構(gòu)如下
(6)
傳統(tǒng)控制器輸入?yún)?shù)e包括RPY三角度誤差以及速度誤差;u為控制器的輸出量;kp、ki、kd為PID比例、積分、微分系數(shù)[15]。
在無人機的控制過程中,將RPY角度、角速度、速度誤差e以及關(guān)于無人機RPY角度與控制器控制信號的數(shù)學關(guān)系量雅各比參數(shù)yu作為輸入量。
首先為了減小不同輸入量數(shù)量級差距帶來的影響,將輸入的誤差量e進行歸一化
(7)
將得到的歸一化參數(shù)e′利用模糊理論的隸屬度函數(shù)進行模糊化處理
(8)
其中i取1至5,代表將輸入量模糊化到五個階段,即誤差e>0 且e較大;e>0且e較??;e約等于0;e<0且|e|較小;e<0 且|e|較大,m和p為權(quán)系數(shù)。
對于模糊化學習規(guī)則,對于誤差信號e,對應(yīng)的四個電機的控制信號u1、u2、u3、u4,采取如下表的邏輯方式,數(shù)值1至5表示控制信號由弱到強,邏輯規(guī)則如表1所示。
表1 橫滾角速度模糊控制規(guī)則
表2 俯仰角速度模糊控制規(guī)則
表3 航偏角速度模糊控制規(guī)則
表4 無人機速度模糊控制規(guī)則
利用上述規(guī)則構(gòu)建神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu):
圖4 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)采用常見的BP 神經(jīng)網(wǎng)絡(luò),其通過梯度最速下降法,采用梯度搜索技術(shù)使實際輸出值和期望輸出值的誤差均方值為最小,通過調(diào)節(jié)權(quán)值使二次型誤差函數(shù)最小[16]。二次型誤差函數(shù)表達式為
(9)
其中yt為無人機輸出狀態(tài)的期望值,y為無人機實際狀態(tài)值,無人機的狀態(tài)包括無人機的RPY角度和角速度以及z軸垂直方向的速度量。
神經(jīng)網(wǎng)絡(luò)輸入層輸入為分別為RPY三個角速度誤差以及無人機速度誤差和RPY的三個角度誤差,將誤差e通過式(7)進行歸一化處理得到e′,作為隱含層的輸入值。
對于隱含層,其節(jié)點輸出值為
(10)
m,p為常數(shù),m根據(jù)模糊規(guī)則取5個不同的參數(shù)為-1、-0.5、0、0.5、1。
輸出層節(jié)點值
(11)
其中ωi為對應(yīng)權(quán)系數(shù),通過神經(jīng)網(wǎng)絡(luò)反饋進行權(quán)值調(diào)整,調(diào)整方式遵循BP神經(jīng)網(wǎng)絡(luò)調(diào)整規(guī)則,權(quán)值調(diào)整公式為
(12)
其中η為網(wǎng)絡(luò)學習速率,yu為代表無人機輸出狀態(tài)與輸入控制信號數(shù)學關(guān)系的雅各比參數(shù),在對角度進行控制收斂時,公式中的e包括角度誤差和角速度誤差的和,當且僅當角度誤差和角速度誤差都收斂在一定范圍內(nèi)時,神經(jīng)網(wǎng)絡(luò)才會收斂,從而達到控制精度。
控制器中權(quán)值調(diào)整中的雅各比參數(shù)yu,反應(yīng)了無人機輸出狀態(tài)和四個電機輸入控制信號的數(shù)學關(guān)系。這個關(guān)系需要通過神經(jīng)網(wǎng)絡(luò)的跟蹤辨識求得,要獲得精準的被控對象相關(guān)參數(shù),對神經(jīng)網(wǎng)絡(luò)的辨識要求特別高。神經(jīng)網(wǎng)絡(luò)具有辨識跟蹤函數(shù)的功能,當網(wǎng)絡(luò)的跟蹤能力較好時,神經(jīng)網(wǎng)絡(luò)擬合出的輸出約等于實際輸出量,此時
(13)
在辨識器設(shè)計的過程中,將無人機輸入信號、辨識器輸出與無人機輸出信號差值作為輸入量,神經(jīng)網(wǎng)絡(luò)的激活函數(shù)對于神經(jīng)網(wǎng)絡(luò)的性能有較大的影響,為了提高辨識器的辨識能力,本文采用目前比較新的Maxout函數(shù)作為激活函數(shù)。Maxout 激活函數(shù)是比較前沿的激活函數(shù),其核心是利用線性擬合非線性,比較直觀的解釋就類似與一個圓可以看做是一個邊極其多的多邊形,其邊數(shù)趨于無窮大,它就可以看作是個圓。Maxout 激活函數(shù)在原來兩層網(wǎng)絡(luò)之間加入隱隱含層,每次前饋計算時取隱隱含層最大節(jié)點輸出到下一層。隱隱含層節(jié)點個數(shù)越多,理論上辨識效果越好。
Maxout算法網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示結(jié)構(gòu)。
圖5 Maxout函數(shù)下神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
其中x1,x2為輸入量,z1,z2,z3為隱隱含層節(jié)點,其輸出計算公式如下:
z1=ω1x+b1
z2=ω2x+b2
z3=ω3x+b3
y=max{z1,z2,z3}
(14)
仿真對比了復合控制器和傳統(tǒng)PID控制器。通過對無人機RPY角度以及角速度和無人機z軸方向速度輸入信號,對仿真系統(tǒng)的無人機進行控制。設(shè)定仿真輸入信號,使無人機按照指定角度作出姿態(tài)響應(yīng)。
令無人機在0-25秒按照5m/s的速度起飛,在25-50秒空中懸停;橫滾角度roll在仿真5秒時開始通過0.5秒時間到達10°,15秒歸0°;俯仰角pitch在仿真8秒時候通過0.5s時間到達-15°,在20秒歸0°;航偏角yaw在15秒時開始以 5°/s的速度到達50°。
傳統(tǒng)PID控制器和復合控制器的仿真結(jié)果如圖6和7,在傳統(tǒng)PID控制器的控制下,無人機在8秒時pitch的輸入指令,導致無人機yaw產(chǎn)生短暫的偏差,且yaw角度在偏轉(zhuǎn)過程中,偏轉(zhuǎn)速度在接近目標角度時下降,偏轉(zhuǎn)時間不可控,輸入指令會使其它響應(yīng)曲線發(fā)生失真。
圖6 傳統(tǒng)控制器RPY輸出響應(yīng)曲線
圖7 復合控制器RPY輸出響應(yīng)曲線
在復合控制器的控制過程中,由于神經(jīng)網(wǎng)絡(luò)在收斂的過程中自動調(diào)節(jié),上述現(xiàn)象得到很好的改善,航偏角yaw的偏轉(zhuǎn)速度與時間呈較好的線性關(guān)系,不同角度指令之間的互相耦合干擾情況也得到改善。
對于z軸方向的速度響應(yīng),傳統(tǒng)PID控制器響應(yīng)的z軸方向速度在起飛的過程中以及新的指令到來時速度改變的過程中出現(xiàn)超調(diào)現(xiàn)象,同時如果指令改變或者模型結(jié)構(gòu)參數(shù)改變,PID控制器的相關(guān)參數(shù)需要重新調(diào)整。PID控制器速度響應(yīng)曲線圖如圖8所示。
圖8 傳統(tǒng)控制器z軸速度響應(yīng)曲線
在復合控制器中由于神經(jīng)網(wǎng)絡(luò)內(nèi)部參數(shù)的的逐步調(diào)整性能,超調(diào)現(xiàn)象得到很好的緩解,同時由于復合控制器結(jié)合了PID控制,同時彌補了神經(jīng)網(wǎng)絡(luò)控制器響應(yīng)慢的缺點,由于神經(jīng)網(wǎng)絡(luò)的自適應(yīng)性,即使模型參數(shù)改變,神經(jīng)網(wǎng)絡(luò)依然可以很好地進行自我調(diào)整。
圖9 復合控制器z軸速度響應(yīng)曲線
傳統(tǒng)PID控制器在無人機速度由5m/s變?yōu)榭罩袘彝?m/s時產(chǎn)生最大瞬時速度-1.323m/s的超調(diào)響應(yīng),對于神經(jīng)網(wǎng)絡(luò)控制器,由于其參數(shù)自整定,在復合控制器同一情況下速度響應(yīng)超調(diào)僅僅產(chǎn)生-0.2417m/s的超調(diào),相比傳統(tǒng)PID控制,復合控制器的響應(yīng)更加完善。
為了驗證系統(tǒng)的抗干擾性,對無人機施加隨機干擾,干擾的方式為在MATLAB軟件的SIMULINK仿真平臺下的無人機模型下連接一個自由擺錘,以引入一個隨機多方向的干擾力。并對傳統(tǒng)控制和復合控制下的系統(tǒng)響應(yīng)進行對比。如圖10所知,傳統(tǒng)PID控制器在面對干擾時引起的波動誤差較大。
圖10 傳統(tǒng)控制器干擾下RPY輸出響應(yīng)曲線
由圖11得知,在仿真開始的前5s,在PID控制下,無人機roll角度晃動嚴重,在初期的晃動度數(shù)幅值達到3.615°,在仿真結(jié)束時波動起伏依然達到0.2693°,PID控制對無人機晃動抑制能力有限。
圖11 傳統(tǒng)控制器干擾下響應(yīng)曲線放大
在結(jié)合了模糊神經(jīng)網(wǎng)絡(luò)以后,仿真初期無人機對外部干擾力就形成很好地抑制。
圖12 復合控制器干擾下RPY輸出響應(yīng)曲線
圖13 復合控制器干擾下響應(yīng)曲線放大
圖13可知,晃動幅值控制在了1.238°范圍內(nèi)。在通過神經(jīng)網(wǎng)絡(luò)參數(shù)內(nèi)部自整定后在最后將無人機晃動幅值減小了65.8%。
仿真結(jié)果表明:
1)神經(jīng)網(wǎng)絡(luò)的自適應(yīng)性以及Maxout辨識器的精準辨識顯著地提升了無人機系統(tǒng)的自我優(yōu)化和環(huán)境適應(yīng)能力,姿態(tài)響應(yīng)中信號耦合產(chǎn)生的失真得到改善。
2)無人機受到干擾晃動幅值顯著降低,基于模糊神經(jīng)網(wǎng)絡(luò)的復合控制器大大提高了系統(tǒng)的抗干擾性。
本文以四旋翼無人機為研究對象,針對在常規(guī)PID控制下,系統(tǒng)需依賴精確的數(shù)學模型,對干擾的抵御能力較弱的問題,提出了模糊理論、神經(jīng)網(wǎng)絡(luò)和PID算法相結(jié)合的復合控制器,同時輔助以基于Maxout辨識器對被控對象精準辨識。仿真通過將復合控制器與常規(guī)PID控制方式進行對比,驗證了復合控制器其控制精度和抗干擾能力更加優(yōu)越的結(jié)論。該復合控制器的提出為無人機在更多領(lǐng)域進行復雜任務(wù)的執(zhí)行打下了基礎(chǔ)。