摘 要: 針對六自由度欠驅動四旋翼無人飛行器非線性模型,討論了四旋翼無人飛行器的姿態和高度控制問題。采用經典PD控制、智能模糊控制、非線性反步法和滑模變結構控制,設計四旋翼姿態和高度控制器,并在Matlab/Simulink環境下進行仿真。仿真結果表明:四種控制方法均能實現四旋翼的姿態穩定和定高懸停;其中,滑模變結構控制具有更好的動態跟蹤特性。
關鍵詞: 非線性模型; 模糊控制; 反步法; 滑模控制; 姿態控制
中圖分類號: TN964?34; V249.122 文獻標識碼: A 文章編號: 1004?373X(2013)15?0088?03
Several control methods of Quadrotor
WU Zhong?hua, JIA Qiu?ling
(School of Automation, Northwestern Polytechnical University, Xi’an 710029, China)
Abstract: The issues involving attitude and altitude control of Quadrotor unmanned air vehicles (UAVs) are discussed in allusion to the nonlinear model of underactuated UAVs in this paper. Classical PD control, intelligent fuzzy control, nonlinear backstepping and sliding?mode variable structure control are adopted in the design of Quadrotor attitude and altitude controllers. The four control methods were simulated under Matlab/Simulation environment. The simulation results show that all these control methods can make the Quadrotor’s attitude stabilized and let it hover at a desired altitude. The sliding?mode variable structure control method can achieve better tracking performance.
Keywords: nonlinear model; fuzzy control; backstepping; sliding?mode control; attitude control
0 引 言
四旋翼飛行器是一種可垂直起降的蝶形飛行器,其機械結構簡單,易于維護。所以在軍事和民用領域都有很大的應用前景[1]。
四旋翼飛行器動力學模型的復雜性、強耦合性和對環境影響的敏感性,使得線性控制方法在四旋翼應用中受到很大的限制[2]。四旋翼飛行器通常采用雙閉環控制,內環為姿態控制[3],外環為位置控制,而姿態控制是決定控制精度和系統穩定的關鍵。
本文針對四旋翼飛行器的非線性模型進行控制器設計,采用經典PD控制、智能模糊控制、反步法[4](Backstepping)和滑模變結構控制, 設計了四旋翼姿態和高度控制器,實現了姿態穩定,定高懸停功能。并在Matlab/Simulink環境下進行仿真、對實驗結果進行比較進而驗證滑模變結構控制方法的優越性。
1 系統數學模型
圖1為四旋翼飛行器的工作原理圖,通過調節四個電機的轉速,能夠改變飛行器的運動狀態。假設飛行器重心為載體系原點,電機的升力面和重心位于同一個平面上,且電機無安裝誤差角。選取北、東、地坐標系作為地球坐標系,得到系統數學模型[5?6]:
[Ixx?=θψ(Iyy-Izz)+JrθΩr+U2Iyyθ=?ψ(Izz-Ixx)+Jr?Ωr+U3Izzψ=?θ(Ixx-Iyy)+U4Z=1m(cos?cosθ)U1-g] (1)
[U1=bl(Ω21+Ω22+Ω23+Ω24)U2=bl(-Ω22+Ω24)U3=bl(Ω21-Ω23)U4=dl(-Ω21+Ω22-Ω23+Ω24)] (2)
令[b1=lIxx,][b2=lIyy,][b3=lIzz;][a1=(Iyy-Izz)Ixx,][a2=JrIxx],[a3=(Izz-Ixx)Iyy,][a4=JrIyy;][a5=(Ixx-Iyy)Izz。]
選取狀態變量:
[X=[?,?,θ,θ,ψ,ψ,z,z]=[x1,x2,x3,x4,x5,x6,x7,x8]]
其中[θ]為俯仰角;[?]為滾轉角,[ψ]為偏航角;[Z]為高度;[Ω]為電機轉速;[Ωr]為轉速擾動;[m]為載體質量;[g]為重力加速度;[l]為軸距;[U1,U2,U3,U4]為控制輸入;[b,d]為系數;[Jr]為旋翼轉動慣量;[Ixx,Iyy,Izz]為機體坐標系下三軸轉動慣量。
圖1 四旋翼飛行器的工作原理圖
2 控制器設計
2.1 模糊控制
模糊邏輯系統的輸入為[e]和[e],經模糊化、模糊推理、解模糊化處理后得到控制輸入[U1,U2,U3,U4。]基于[e]和[e]的變化設計控制輸入[U1,U2,U3,U4,]得到模糊控制規則見表1。{-0.16,-0.1,-0.05,0,0.05,0.1,0.16},{-0.435,-0.3,-0.15,0,0.15,0.3,0.435}為[e]和[e]的模糊集論域。[e]和[e]的量化因子以及[U1,U2,U3,U4]的比例因子對控制系統的動態性能影響很大,因此在模糊控制的設計中要選擇適當的比例系數,系統才能獲得較好的響應特性。為了消除模糊控制中的穩態誤差,在控制系統中加入積分環節。
表1 模糊控制規則
[[e]\[U]\[e]\NB\NM\NS\ZE\PS\PM\PB\NB\NB\NB\NM\NM\NS\NS\ZE\NM\NB\NM\NM\NS\NS\ZE\PS\NS\NM\NM\NS\NS\ZE\PS\PS\ZE\NM\NS\NS\ZE\PS\PS\PM\PS\NS\NS\ZE\PS\PM\PM\PM\PM\NS\NS\ZE\PS\PS\PM\PM\PB\ZE\PS\PS\PM\PM\PB\PB\]
2.2 Backstepping控制
Backstepping設計方法的基本思想是將復雜的非線性系統分解成不超過系統階數的子系統,然后為每個子系統分別設計Lyapunov函數和中間虛擬控制量,一直“后退”到整個系統,直到完成整個控制律的設計,且使整個閉環系統滿足期望的動靜態性能指標。
由式(1)、(2)綜合可得系統的控制律,并使系統的狀態能夠快速跟隨期望軌跡。具體設計步驟如下:設置目標值與實際值之差:
[z1=x1d-x1] (3)
第一,根據Lyapunov原理,選取Lyapunov函數,使其正定且一階倒數半負定:
[V(z1)=12z21] (4)
[V(z1)=z1(x1d-x2))] (5)
選取虛擬狀態變量[x2]使[z1]穩定:
[x2=x1d+α1z1, α1>0] (6)
則:
[V(z1)=-α1z21] (7)
[z2=x2-x1d-α1z1] (8)
第二,選取Lyapunov函數:
[V(z1,z2)=12(z21+z22)] (9)
對式(9)求導,可得:
[V(z1,z2)=z2(a1x4x6+a2x4Ωr+b1U2)-z2(x1d-α1(z2+α1z1))-z1z2-α1z21] (10)
令[V(z1,z2)=-α21z21-α22z22(α2>0)],則:
[U2=1b1(z1-a1x4x6-a2x4Ωr-α1(z2+α1z1)-α2z2)] (11)
同理可得:
[U3=1b2(z3-a3x2x6-a4x2Ωr-α3(z4+α3z3)-α4z4)U4=1b3(z5-a5x2x4-α6z6-α5(z6+α5z5))U1=mcosx1cosx3(g-α8z8+z7-α7(z8+α7z7))] (12)
其中:
[z3=x3d-x3, z4=x4-x3d-α3z3z5=x5d-x5, z6=x6-x6d-α5z5z7=x7d-x7, z8=x8-x7d-α7z7] (13)
[U1,U2,,U3,U4]為控制輸入。
2.3 滑模控制器
Backstepping控制律的不足在于,需要被控對象的精確建模信息。若將反步法控制與滑模控制相結合,則能擴大反步法和滑模控制的適用范圍,使得控制律對模型的干擾具有較強的魯棒性。根據滑模變結構原理,本文采用指數趨近律([s=-k1sign(s)-k2s])改善趨近運動的動態品質。具體設計步驟如下:
第一,除去式(6)外,反步法的設計式(3)~式(13)和滑模控制基本一致。
第二,選取滑模面[s2=z2]([ss<0]):
[s2=-k1sign(s2)-k2s2=x2-x1d-α1z1=a1x4x6+a2x4Ωr+b1U2-x1d+α1(z2+a1z1)] (14)
其中sign()是符號函數。
令[s2s2<0],由Backstepping控制方法可得:
[U2=1b1(-a1x4x6-a2x4Ωr-α21z1-k1sign(s2)-k2s2)] (15)
同理可得:
[U3=1b2(-a3x2x6-a4x2Ωr-α22z3-k3sign(s3)-k4s3)U4=1b3(-a5x2x4-α23z5-k5sign(s4)-k6s4)U1=mcosx1cosx3[g-α27z7-k7sign(s8)-k8s8]] (16)
其中:
[z3=x3d-x3, s3=x4-x3d-α2z3z5=x5d-x5, s4=x6-x6d-α3z5z7=x7d-x7, s8=x8-x7d-α7z7] (17)
3 仿真結果和分析
在Matlab/Simulink環境下對本文提出的控制算法進行了仿真驗證。假設四旋翼飛行器初始姿態為[15° 10° -10°],初始高度為3 m,期望姿態為[0° 0° 0°],期望高度為2 m。設置四旋翼仿真參數見表2。
表2 四旋翼仿真參數
[參數\值\參數\值\m /kg\0.65\b /(Ns2)\3.1e-5\Ixx /(kg·m2)\7.5e-3\d /(Nms2)\7.5e-7\Iyy /(kg·m2)\7.5e-3\[Jr] /(kg·m2)\6e-5\Izz /(kg·m2)\1.3e-2\l /m\0.23\]
仿真結果如圖2~圖7所示。
圖2 PD控制仿真結果
圖3 模糊控制仿真結果
圖2~圖5仿真結果表明,針對四旋翼的非線性模型,四種方法都能實現四旋翼的姿態穩定、定高懸停功能,且具有良好的控制效果。由圖6,圖7可知:
圖4 Backstepping控制仿真結果
圖5 Sliding控制仿真結果
圖6 滾轉角比較
圖7 高度比較
(1)PD控制滾轉角收斂時間為2.5 s,模糊控制滾轉角收斂時間為5.5 s,Backstepping控制滾轉角收斂時間為0.45 s,滑模控制滾轉角收斂時間為0.18 s。
(2)高度收斂時間在四種控制律中分別為5 s,10 s,1.2 s,0.5 s。
綜上所述,采用滑模控制算法的四旋翼姿態高度控制系統能較快地跟蹤期望的狀態值,能夠使系統快速收斂,達到穩態,且無超調,使控制系統獲得了令人滿意的效果。
4 結 語
本文針對四旋翼非線性模型采用PD控制、模糊控制、Backstepping控制和滑模控制四種控制方法進行四旋翼姿態和高度控制器的設計,并在Matlab/Simulink環境下進行了仿真。仿真結果表明:四種方法均實現了姿態和高度的穩定控制,且滑模控制優于其他控制,表現出更好的控制精度和較好的動態跟蹤特性。
參考文獻
[1] 岳基隆,張慶杰,朱華勇.微小型四旋翼無人機研究進展及關鍵技術淺析[J].電光與控制,2010,17(10):46?51.
[2] 聶博文,馬宏緒,王劍,等.微小型四旋翼飛行器的研究現狀與關鍵技術[J].電光與控制,2007,14(6):l13?117.
[3] 楊慶華,宋召青,時磊.四旋翼飛行器建模、控制與仿真[J].海軍航空工程學院學報,2009,24(5):500?501.
[4] MIAN A A, WANG D B. Modeling and backstepping?based nonlinear control Strategy for a 6 DOF Quadrotor helicopter [J]. Chinese Journal of Aeronautics, 2008, 21(3): 261?268.
[5] BOUABDALLAH S, SIEGWART R. Backstepping and sliding mode techniques applied to an indoor micro quadrotor [C]// Proceeding of the 2005 IEEE, ICRA. Barcelona, Spain: IEEE, 2005: 432?437.
[6] KIM Jinhyun, KANG Minsung, PARK Sangdeok. Accurate modeling and robust hovering control for a Quadrotor VTOL aircraft [J]. Journal of Intelligent and Robotic Systems, 2010, 57(1?4): 9?26.