劉靈童,王 旭,王大海,鄭 凱,尹曉嬌
(西安石油大學 電子工程學院,陜西 西安 710065)
為了使計算機更好地控制四旋翼的運動,需要建立四旋翼的動力學模型。為了建立出的數學模型不失一般性,對飛行器做出如下假設。
(1)四旋翼飛行器為均勻對稱的剛體;
(2)慣性坐標系原點E與四旋翼飛行器的幾何中心和質量中心都處于同一位置;
(3)飛行器有且只受螺旋槳產生的拉力和重力的影響,即質量與轉動慣量不變;
(4)飛行器所受的各個方向的拉力與螺旋槳轉速的平方成正比例。
首先建立兩個基本坐標系,分別為慣性坐標系和飛行器坐標系,如圖1所示。這兩個坐標系之間的轉化關系如下。


圖1 飛行器坐標系與四旋翼結構模型
為了方便后續運算,相關定義如下:
偏航角ψ:x在OXY平面內的投影與x軸的夾角;俯仰角θ:z在OXY平面內的投影與z軸的夾角;翻滾角φ:y在OXY平面內的投影與y軸的夾角;
Fx,Fy,Fx分別為飛行器所受總拉力F在B(oxyz)中3個坐標軸上的分量;p、q、r為角速度ω在B(oxyz)中3個坐標軸上的分量。由于牛頓第二定律和力學方程可表示為:

根據假設四旋翼均勻對稱,其慣性矩陣可定義為對角陣I。對飛行器動量矩計算,可得到飛行器力矩之和M在飛行器坐標系3個軸向分量Mx,My,Mz的角運動方程:

為了方便后續算法控制,可定義U1為垂直速度控制量,U2為翻滾輸入控制量,U3為俯仰控制量,U4為偏航控制量,這樣可以通過這四個獨立控制通道來控制整機的運動。根據圖1的姿態關系,可得出:

整理上述公式,可得到四旋翼的數學模型如下所示。


上文在建立四旋翼數學模型時引入了4個控制量U,這樣可以將復雜的非線性耦合模型轉化為4個較為獨立的控制通路,這樣,整個模型的運動過程就可以分解為線運動和角運動。為了簡化控制系統,假設飛行器的姿態角和加速度之間存在簡單的積分關系,再根據相關資料對無人機的描述與測定,通過系統的傳遞函數,可總結出各個控制通道的傳遞函數[2],如表1所示(注:表1傳遞函數僅針對一款四旋翼飛行器的控制通道)。

表1 各個通道的傳遞函數
在完成自抗擾控制之前,需要先對微分控制器進行一定的了解與設計。
在許多控制系統中,求輸入信號的微分是控制器中必不可少的一個步驟,四旋翼控制系統也不例外。但是,在較多實際應用中,輸入信號往往會伴隨著噪聲一同進入微分環節,利用差分法進行運算也會使得微分環節輸出信號中的噪聲不降反升,為了解決這一問題,人們設計了二階微分器來盡可能地抵消噪聲對于輸出信號的影響。其傳遞函數如下:

由傳遞函數可知,在低頻段該環節的微分特性與純微分環節的頻率特性幾乎一致,在高頻階段,其增益是隨著頻率的升高而下降的。噪聲抑制的問題得到解決后,將我們合適的動態設計加入該環節,就得到了微分跟蹤控制器。在Matlab中,以Z軸通道為控制對象,將隨機的高頻噪聲疊加在正弦信號中作為該控制器的輸入信號,觀察輸出信號與預期位置的對比,觀察其動態性能。如圖2所示,盡管輸入信號存在較多高頻尖刺等噪聲,微分控制器依然可以在過濾掉大部分毛刺的同時,保證一個較好的跟隨性能。為了利用其良好的性質,部分自抗擾控制算法也會包含微分跟蹤環節。

圖2 理想位置與系統實際位置對比
為了進一步改善PID控制器在強干擾環境以及不確定因素中的控制能力,由韓教授首次提出了自抗擾控制(Active Disturbance Rejection Control,ADRC)的概念,這種控制器的核心思想在與利用一個環節來實時地估計被控對象的外部干擾和內部震蕩,然后再用其他環節實施補償,從而使得自抗擾控制系統具有較好的抵抗擾動的能力[3]。線性自抗擾控制基本結構,如圖3所示。

圖3 線性自抗擾系統結構
其中G0表示需要被控制的對象,b0為整個系統的控制增益,它是由整個被控系統來確定的,需要在后期整定。LSEF為線性狀態誤差反饋,在不同場合中,這個環節可以用微分跟蹤器來代替。LESO為線性擴張狀態觀測器,其形式為:

其中z1,z2,z3是LESO的3個輸出量,β1,β2,β3都是需要在之后確定的觀測參數。
假設被控對象可以被估計為一個二階模型:

g可以看成是內部動態和外部擾動(ω)的綜合特性,當ESO被正確整定時,z1,z2,z3將分別對y,y·,f進行跟蹤,那么控制系統就會轉化成兩個積分串聯環節,即

那么,對于常規的PID控制來說,LSEF就可表示為PD控制:

這樣,就出現了b0,kp,kd,β1,β2,β3一共6個參數需要整定。當然,根據系統的傳遞函數,可以根據以下方法完成所有參數整定[4]:
(1)根據已知被控對象要求的調節時間t?s,令,ωo=kωc,使kp=ω2c,kd=2ωc,β1=3ωo,β2=,β3=kβ2;在一般情況下k取4。
(2)逐漸增大b0的值,到動態響應性能指標滿足系統要求。
本次將使用Simulink仿真環境以x軸和俯仰通道作為被控對象進行設計。因為ESO的輸入中需要y·,所以,可以將一個積分環節獨立出該通道的傳遞函數中,并且重新設計增益,方便后期的仿真系統的搭建。根據計算,修改完成后的被控對象的仿真搭建如圖4所示。

圖4 調整后被控對象的仿真搭建
其中,u和td是被控對象的兩個輸入,y為系統輸出,dy/dt也就是輸出的導數,f為被控對象的總擾動。之后,根據ADRC的控制基本框圖完成仿真模型的搭建,如圖5所示。

圖5 線性自抗擾仿真系統搭建
其中,z1,z2,z3分別為LESO的3個輸出,與系統輸出y,,f進行對比顯示。為了模擬其在實際控制中可能遇到的高頻噪聲或者是內部信號突變干擾,在LESO前加入了噪聲模塊,在控制對象的td輸入口接入了負階躍信號,將在第3s仿真時間輸出值由0跳變為1。按照上文步驟進行參數整定,整定結果為:b0=180,ωc=20,ωo=80;運行仿真程序后,其結果如下所示:
從圖6中可以看出,ESO的觀測跟蹤效果顯著,即使在反饋回路中加入了相關干擾控制系統也可以在0.5 s內使系統輸出為給定值并且達到穩態。為了探明系統自身變化對控制結果的影響,將被控對象的增益做±10%步長4%的變化,以調節時間為采樣點,進行統計,其結果如表2所示。

圖6 線性自抗擾系統多干擾響應曲線

表2 變增益動態性能對比
由此數據可得,自抗擾控制對被控對象的精確數學模型需求并不強,也就說明,當四旋翼飛行器部分參數改變時,此種算法依舊可以保持一個較為穩定的控制結果。這種控制能力對于四旋翼飛行器至關重要。
本文以四旋翼飛行器為研究對象,建立了其數學模型,根據該模型,使用Matlab進行自抗擾控制的仿真。從仿真結果來看,自抗擾控制系統對高頻信號干擾與外部參數補償兩個方面的控制效果都較好,總結出了其動態性能等相關規律,為相關四旋翼控制算法的實現與發展提供了結論支撐。