華桑暾, 邱亞峰, 陳 成
(南京理工大學(xué)機(jī)械工程學(xué)院,南京 210000)
無人直升機(jī)具有體積小、靈活性高等特點,在軍事、農(nóng)業(yè)等方面應(yīng)用廣泛,但無論在哪個領(lǐng)域,都要求其具有超高的可控性、穩(wěn)定性,姿態(tài)控制作為飛行控制的關(guān)鍵一環(huán),直接影響著無人直升機(jī)性能的好壞,為了提高無人直升機(jī)的可控品質(zhì),需要研究一種抗干擾能力強(qiáng)的控制方法。
目前常見的姿態(tài)控制方法有許多種。其中:PID控制對經(jīng)常變化的環(huán)境需不停地調(diào)整增益[1],在直升機(jī)姿態(tài)控制方面,往往難以取得理想的效果;反步控制將復(fù)雜的系統(tǒng)分解為多個系統(tǒng)并分別設(shè)計Lyapunov函數(shù),可以實現(xiàn)對非線性系統(tǒng)的控制[2],但隨著系統(tǒng)階數(shù)增加,控制的復(fù)雜性也迅速增加;模糊控制雖不依賴于精確模型,但其設(shè)計缺乏系統(tǒng)性,在復(fù)雜系統(tǒng)的控制上顯得力不從心[3]。上述控制都或多或少存在缺點,自抗擾控制(ADRC)算法具有天然的解耦性,將系統(tǒng)的內(nèi)擾與外擾進(jìn)行實時估計并補(bǔ)償,且不依賴于具體模型,對于直升機(jī)控制有著較好的控制能力。
文獻(xiàn)[4]針對無人直升機(jī)系統(tǒng)航向通道擾動大等問題,將ADRC用于航向通道,驗證了ADRC具有對擾動抑制能力強(qiáng)、控制精度高等優(yōu)點;文獻(xiàn)[5]嚴(yán)格證明了控制閉環(huán)系統(tǒng)的穩(wěn)定性和收斂性,并通過數(shù)值仿真驗證了自抗擾控制效果優(yōu)于滑??刂?。文獻(xiàn)[6]推導(dǎo)了另一種控制函數(shù)fsun(),進(jìn)一步升華了ADRC的理論深度。
本文首先建立了無人直升機(jī)的動力學(xué)模型,并提出一種基于改進(jìn)fal函數(shù)的自抗擾控制方法,最后通過Simulink進(jìn)行仿真,研究改進(jìn)ADRC的性能,并驗證了其對無人直升機(jī)姿態(tài)控制的良好性能。
直升機(jī)在飛行過程中,可以分解為空間平動和繞質(zhì)心的定點轉(zhuǎn)動。假設(shè)直升機(jī)為一剛體,并忽略彈性變形的影響,其動力學(xué)方程可由牛頓第二定律導(dǎo)出,向量形式為[7]
(1)
式中:F為外力;m為直升機(jī)的質(zhì)量;M為外力矩;v為直升機(jī)質(zhì)心的運動速度;H為動量矩。
將v和H按機(jī)體坐標(biāo)系分解,可得到三軸的線運動方程為
(2)
式中:Fx,Fy,Fz為外力在Ox,Oy,Oz軸上的投影之和;u,v,w分別為3個軸的線速度;p,q,r分別為3個軸的角速度;φ,θ,ψ分別表示橫滾角、俯仰角、偏航角。角運動方程為
(3)
式中:Mx,My,Mz為外力矩在Ox,Oy,Oz軸上的投影之和;Ixx,Iyy,Izz為直升機(jī)對Ox,Oy,Oz軸的轉(zhuǎn)動慣量;Ixz為直升機(jī)對Ox和Oz軸的慣性積,繞機(jī)體軸正方向轉(zhuǎn)動的力矩為正。
機(jī)體角速度和歐拉角角速度之間的關(guān)系為
(4)
綜上,得到直升機(jī)的非線性動力學(xué)方程為
(5)
對無人直升機(jī)的全量運動方程進(jìn)行線性化處理,在平衡點處按泰勒級數(shù)展開,建立起直升機(jī)的小擾動線性化全面運動方程[8]為
(6)
式中,狀態(tài)變量為
ΔX=[ΔφΔθΔψΔuΔvΔwΔpΔqΔr]
(7)
控制變量為
U=[ΔδcΔδaΔδeΔδr]
(8)
式中,δc,δa,δe,δr分別為直升機(jī)的總距操縱量,橫向、縱向周期變距以及尾槳槳距。將參數(shù)代入矩陣A,B,即可得到無人直升機(jī)線性化模型。
非線性函數(shù)是非線性誤差反饋律的重要組成部分,傳統(tǒng)的非線性函數(shù)主要為fal函數(shù),具有一定的濾波效果,其描述如下
(9)
圖1所示為fal函數(shù)和改進(jìn)fal函數(shù)的小誤差響應(yīng)。圖1(a)為當(dāng)線性區(qū)間δ=0.2,α分別取0.01,0.05,0.1,0.25,0.5,1時的fal函數(shù)圖像。圖2為α=0.25時,δ分別取0.01,0.05,0.1,0.25,0.5,1時的fal函數(shù)圖像??梢钥吹剑害恋娜≈禌Q定了fal函數(shù)的線性程度,α越小,非線性程度越強(qiáng);δ決定了函數(shù)的線性區(qū)間,δ越大,線性區(qū)間越大。
圖2 α=0.25,δ響應(yīng)曲線Fig.2 δ response curve when α=0.25
從圖1(a)可以發(fā)現(xiàn),|e|=δ時函數(shù)雖然連續(xù),但是并不光滑,導(dǎo)數(shù)的突變可能會導(dǎo)致系統(tǒng)性能變差;從式(9)看,當(dāng)|e|>1時,若α取值較大,則最后的系統(tǒng)增益仍可能很大,不符合自抗擾控制“大誤差,小增益”的要求[9]。因此,針對以上問題,并根據(jù)fal函數(shù)遵循的原則,提出改進(jìn)fal函數(shù)原則:1)在原點處連續(xù)且平滑; 2)在|e|=δ處可導(dǎo)、連續(xù);3)在誤差較大時保持小的系統(tǒng)增益。
圖1 fal函數(shù)和改進(jìn)fal函數(shù)小誤差響應(yīng)曲線Fig.1 Small error response curves of fal-function and the improved fal-function
綜上,設(shè)計的改進(jìn)fal函數(shù)描述如下。
當(dāng)|e|≤δ時,fal函數(shù)改寫為
fal′(e,α,δ,λ)=k1sine+k2e2+k3e3
(10)
式中,k1,k2,k3為函數(shù)增益。
當(dāng)δ<|e|<1時,fal函數(shù)保持不變,即
fal′(e,α,δ,λ)=|e|αsgn(e)。
(11)
當(dāng)|e|>1時,引入限制量λ,
fal′(e,α,δ,λ)=|e|α/λsgn(e)。
(12)
為保證在|e|=δ處可導(dǎo)且連續(xù),需滿足函數(shù)值與導(dǎo)數(shù)均相同,即
(13)
求解得到
(14)
綜上所述,fal函數(shù)可寫為
(15)
圖1(b)為改進(jìn)fal函數(shù)在δ=0.2,λ=1時,α分別取0.01,0.05,0.1,0.25,0.5時的圖像??梢钥吹剑趞e|≤δ時,改進(jìn)fal函數(shù)仍具有快速收斂的特性,在δ<|e|≤1時,工作在非線性區(qū)間,與傳統(tǒng)fal函數(shù)相比,改進(jìn)fal函數(shù)在|e|=δ處連續(xù)且可導(dǎo),在|e|>1時,如圖3所示,改進(jìn)fal函數(shù)限制系統(tǒng)增益能力更強(qiáng),更符合自抗擾控制“小誤差,大增益;大誤差,小增益”的要求。
圖3 fal函數(shù)和改進(jìn)fal函數(shù)大誤差響應(yīng)曲線Fig.3 Large error response curves of fal-function and the improved fal-function
圖4為α=0.25,δ=0.1時的函數(shù)誤差增益曲線,可以看到,傳統(tǒng)fal函數(shù)增益在|e|≤δ時在線性區(qū)間,因此函數(shù)增益不變,該特點雖解決了函數(shù)增益不會突增的問題,但也將函數(shù)增益限制在了一個較小的區(qū)間。對于改進(jìn)fal函數(shù),當(dāng)誤差極小時
(16)
結(jié)合圖4可以看到,改進(jìn)fal函數(shù)在|e|≤δ時,函數(shù)增益更大,也沒有出現(xiàn)突增,增益控制效果將會更優(yōu)。
圖4 誤差增益曲線Fig.4 Error gain curve
直升機(jī)作為一個多輸入-多輸出(MIMO)系統(tǒng),具有非線性、強(qiáng)耦合性等特點,其控制問題較其他方面更難,而自抗擾控制具有天然的解耦性,非常適合于直升機(jī)的控制。
對于一個多輸入-多輸出系統(tǒng)
(17)
(18)
x=[x1x2…xm]T,f=[f1f2…fm]T,u=[u1u2…um]T,令U=Bu,則系統(tǒng)變成
(19)
進(jìn)一步地
(20)
自抗擾控制器包括3個部分:跟蹤微分器(TD)、擴(kuò)張狀態(tài)觀測器(ESO)、非線性狀態(tài)誤差反饋控制律(NLSEF)[10],圖5為其控制器結(jié)構(gòu)圖。
圖5 二階自抗擾控制器結(jié)構(gòu)圖Fig.5 Structure diagram of second-order active disturbance rejection controller
跟蹤微分器是為了減少因突變引起的系統(tǒng)大幅度超調(diào),它能夠?qū)π盘柶鸬揭粋€緩沖作用,實現(xiàn)對信號的快速跟蹤,跟蹤微分器的離散形式如下
(21)
式中:h為采樣周期;v(k)為第k時刻的輸入信號;r為決定跟蹤快慢的參數(shù),其取值依據(jù)系統(tǒng)的承受能力而定;fhan(·)函數(shù)為最速控制綜合函數(shù),描述如下
(22)
(23)
上述微分器可以快速實現(xiàn)對輸入信號v及其微分信號的快速跟蹤。
ESO將內(nèi)擾和外擾結(jié)合在一起成為一個新擾動,在原系統(tǒng)狀態(tài)的基礎(chǔ)上擴(kuò)張出一個新狀態(tài),原系統(tǒng)變?yōu)榫€性系統(tǒng)[9],通過之前改寫的fal函數(shù),新的非線性擴(kuò)張觀測器表示為
(24)
式中:β0i>0(i=1,2,3);α1,α2為可調(diào)參數(shù),常取α1=0.5,α2=0.25。
通過得到的誤差信號及其微分信號,將這兩個信號進(jìn)行適當(dāng)?shù)慕M合,其中,非線性誤差反饋控制律采用以下方式
(25)
擾動補(bǔ)償形成控制量
u=u0-z3/b0
(26)
式中:v1,v2為跟蹤微分器輸出;z1,z2,z3為ESO輸出;β1,β2分別為比例增益和微分增益;α1,α2常取值為0<α1<1<α2;δ為改進(jìn)fal函數(shù)的近似線性區(qū)間;b0為補(bǔ)償因子。
為了驗證改進(jìn)ADRC的控制效果,在Matlab/Simu-link中建立無人直升機(jī)的數(shù)學(xué)模型,并與傳統(tǒng)ADRC和PID控制進(jìn)行比較,無人直升機(jī)的參數(shù)如表1所示,改進(jìn)的ADRC參數(shù)如表2所示。為保證實驗的嚴(yán)謹(jǐn)性,傳統(tǒng)ADRC控制參數(shù)與改進(jìn)ADRC參數(shù)設(shè)置相同。
表1 某無人直升機(jī)參數(shù)Table 1 Parameters of an unmanned helicopter
表2 改進(jìn)ADRC參數(shù)Table 2 Improved ADRC parameters
設(shè)計3組仿真實驗,第1組是在無干擾的情況下橫滾角、俯仰角、偏航角的跟蹤實驗。設(shè)定姿態(tài)角變化幅值為10°、頻率為0.1 Hz的方波為跟蹤目標(biāo),姿態(tài)角初始值為0°,仿真結(jié)果如圖6所示。
圖6 方波信號跟蹤仿真
第2組是在白噪聲干擾下抗干擾的實驗,直升機(jī)在飛行過程中易受到外界干擾,以橫滾角為例,在對橫滾通道估計前加入均值為0、方差為3的高斯白噪聲來模擬直升機(jī)飛行中受到的總外擾,仿真結(jié)果如圖7所示。
圖7 白噪聲干擾下橫滾角抗干擾仿真Fig.7 Anti-jamming simulation of roll angle under interference of white noise
第3組是模擬直升機(jī)在飛行過程中受陣風(fēng)影響,角度突變,以橫滾角為例,在對橫滾通道估計前加入幅值為6°的階躍干擾,仿真結(jié)果如圖8所示。
圖8 階躍干擾下橫滾角抗干擾仿真Fig.8 Anti-jamming simulation of roll angle understep interference
在跟蹤性能實驗仿真中,傳統(tǒng)ADRC和改進(jìn)的ADRC跟蹤效果遠(yuǎn)好于PID控制,改進(jìn)ADRC依舊具有良好的跟蹤快速性以及低超調(diào)性。
通過白噪聲干擾下的抗干擾實驗仿真可以明顯看到,改進(jìn)ADRC橫滾角波動范圍小于傳統(tǒng)ADRC,因為改進(jìn)fal函數(shù)在接近0時收斂性更強(qiáng),因此縮短了調(diào)節(jié)的時間。在階躍干擾下的抗干擾實驗仿真中,可以看到改進(jìn)ADRC在大誤差下保持系統(tǒng)穩(wěn)定的能力更強(qiáng),能更快地使系統(tǒng)回到穩(wěn)態(tài)。該仿真驗證了采用改進(jìn)fal函數(shù)的ADRC控制比采用傳統(tǒng)fal函數(shù)的ADRC控制具有更強(qiáng)的抗干擾性。
本文首先建立無人直升機(jī)的動力學(xué)模型,并針對fal函數(shù)拐點處不平滑、誤差過大時增益較大等問題,提出了改進(jìn)fal函數(shù)。將改進(jìn)fal函數(shù)應(yīng)用于自抗擾控制,重新設(shè)計了ADRC的非線性誤差反饋律。通過Matlab/Simulink仿真得到改進(jìn)ADRC在無人直升機(jī)姿態(tài)控制方面的快速性、超調(diào)量依舊效果良好,而抗干擾性能優(yōu)于傳統(tǒng)ADRC。