錢 偉/中國人民解放軍92419 部隊
在無人機的全數字仿真過程中,需要對離散過程進行控制。本文指出了pid離散系統控制中常見的幾個問題,對仿真控制過程中用到的改進離散系統pid控制方法進行了介紹,并給出了仿真結果。結果表明,在pid控制基礎上可以結合實際情況調整控制律參數結構,以應對可能發生的問題。
在無人機的全數字仿真中,數學模型是基礎,基礎如果不準會對后續的控制律設計帶來很大的影響。有了數學模型就可以設計控制律,無人機最初的控制律設計和飛行控制仿真可以在 MATLAB/ Simulink環境下進行。利用風洞吹風數據和理論計算建立無人機的非線性動力學模型,選取若干個平衡狀態,對非線性模型進行配平、線性化以后得到無人機線性小擾動模型。在線性化小擾動模型的基礎上進行縱向和橫向控制系統的解耦,按照由內環向外環的順序,利用經典時域或頻域控制理論或者利用現代控制理論進行控制律設計。在控制律設計中,比例-微分-積分(PID)控制方法是最常見的一種,其魯棒性和適應性也最強,能夠滿足無人機全數字仿真中控制的需求,為了提高系統的穩定性和快速性,也需要對pid算法進行一些適應性改進。
整個模型解算過程首先進行無人機空氣動力參數計算,求解出計算三軸力和力矩所需的三軸力和力矩系數,計算公式如下:
升力系數cy:

阻力系數cx:
側力系數cz:

俯仰力矩系數mz:

滾轉力矩系數mx:

偏航力矩系數my:

升力Y、阻力X、側力為Z:

俯仰力矩ΣMz、滾轉力矩ΣMx、偏航力矩為ΣMy:

公式中α為迎角,β為側滑角,δz為升降舵,δx為副翼舵,δy為方向舵。
對計算的到氣動力和力矩進行坐標轉換,轉到機體坐標系,再加入發動機推力、重力、火箭推力,和各個力帶來的偏差,得到機體坐標系的三軸力和力矩。代入到無人機運動的動力學和運動學方程計算出無人機的狀態信息。無人機十二階狀態方程如下:

其中,十二個狀態變量: [V,α,β,ωx,ωy,ωz,?,γ,Ψ,x,y,z]分別表示空速、迎角、側滑角、滾轉角速率、偏航角速率、俯仰角速率、俯仰角、滾轉角、偏航角、縱向位移、高度、側向位移;[∑Mx,∑My,∑Mz],[Vx,Vy,Vz]分別為作用在飛機上的合力矩和速度在機體軸上的分量,Ix,Iy,Iz表示慣性矩,Ixy表示慣性積。

圖1 pid控制器結構
PID控制器是一種線性的控制器,它根據給定值r(t)和實際輸出值c(t)構成控制偏差:

將偏差的比例(P)、積分(I)、微分(D)通過線性組合構成控制量,對被控對象進行控制,故稱PID控制器。其輸入e(t)與輸出u(t)的關系為

在無人機的全數字仿真中,采用的是采樣控制系統,系統按照0.02s的時間間隔進行采樣,因此采樣控制系統中的pid控制器只能依據采樣點上的偏差值計算控制量輸出。
在實現離散前,我們假設系統采樣周期為T。假設我們檢查第K個采樣周期,很顯然系統進行第K次采樣。此時的偏差可以表示為:

那么積分就可以表示為:

微分就可以表示為:

于是我們可以將第K次采樣時,PID算法的離線形式表示為:

如果采樣周期足夠小,這種離散逼近相當準確。上式中U(k)為全量輸出,它對應著被控對象的執行機構第k次采樣時刻應該達到的位置,因此也成為位置式pid算式。位置型PID控制的優點是速度快,穩態誤差小,但也存在缺點,由于它的輸出與整個過去的狀態有關,用了偏差的累加值進行積分,會產生累積偏差。由于產生偏差的部分為積分環節,所以在pid控制器中,就考慮到了積分的分離控制。
PID控制器中積分環節主要是為了消除靜差,提高控制精度。但在過程的啟動、結束或大幅度增減設定值時,短時間內系統輸出有很大偏差,會造成PID運算的積分累積,引起超調或者振蕩。為了解決這一干擾,引入了積分分離的思想。其思路是偏差值較大時,取消積分作用,以免于超調量增大;而偏差值較小時,引入積分作用,以便消除靜差,提高控制精度。
具體的實現步驟是:根據實際情況,設定一個閾值;當偏差大于閾值時,消除積分僅用PD控制;當偏差小于等于閾值時,引入積分采用PID控制。則控制算法可表示為:

其中,β稱為積分開關系數,其取值范圍為:

由上述表述及公式我們可以知道,積分分離算法的效果其實與ε值的選取有莫大關系,所以ε值的選取實際上是實現的難點,ε值過大則達不到積分分離的效果,而ε值過小則難以進入積分區,ε值的選取存在很大的主觀因素。積分分離算法的思想非常簡單。當然,對于β的取值,很多人提出了改進措施,例如分多段取值,設定多個閾值ε1,ε2,ε3,ε4等,不過這些閾值也需要根據實際的系統來設定。除了分段取值外,甚至也有采用函數關系來獲取β值。
積分作用的引入是為了消除系統的靜差,提高控制精度。但是如果一個系統總是存在統一個方向的偏差,PID控制器的輸出由于積分作用的不斷累加而擴大,從而導致控制器輸出不斷增大超出正常范圍進入飽和區。當系統出現反響的偏差時,需要首先從飽和區退出,而不能對反向的偏差進行快速的響應。
為了解決積分飽和的問題,引入了抗積分飽和的PID算法。其思路是在計算U(k)的時候,先判斷上一時刻的控制量U(k-1)是否已經超出了限制范圍。若U(k-1)>Umax,則只累加負偏差;同理,若U(k-1) 在普通的PID控制算法中,由于積分系數Ki是常數,所以在整個控制過程中,積分增量是不變的。然而,系統對于積分項的要求是,系統偏差大時,積分作用應該減弱甚至是全無,而在偏差小時,則應該加強。積分系數取大了會產生超調,甚至積分飽和,取小了又不能短時間內消除靜差。因此,如何根據系統的偏差大小改變積分速度,對提高系統的品質是有必要的。變積分PID算法正好可以滿足這一要求。算法公式如下,將積分系數設置為與偏差值相對應的值,偏差大,積分系數小,甚至為0;偏差小,適當增加積分系數。這里的積分系數以及偏差區間應當根據系統的實際進行設計確定 在PID控制中,微分信號可以改善系統的動態特性,但也容易引入高頻干擾,在誤差信號存在擾動時,更是能夠顯示微分的不足之處。克服上述問題的方法之一就是不完全微分PID控制,其核心思想就是在PID控制算法的微分項中加入一個一階慣性環節。 微分項中加入慣性環節可以理解為讓微分作用不能給立即體現,假如說微分作用給定的信號輸出是100,那么加入慣性環節后,其不能立即輸出100,而是由0逐漸上升到100,上升的速率與慣性環節的系數有關。采用不完全微分的優點在于,如果誤差存在高頻干擾,那么與誤差信號直接關系的微分項不能發生突變,從而起到濾波的作用,準確的說是低通濾波,緩慢變化的信號可以通過,而高頻干擾信號就被濾掉了,從而有效減小高頻噪聲對控制器的影響。 按照無人機的氣動數據建立非線性模型,對其進行線性化后設計控制律。在對高度和航向角的控制中采用了積分分離法和變積分法,以高度控制為例:高度控制系統的控制律規律為: 其中,前兩項為內回路,為穩定回路;第三項為比例控制,第四項為垂直速度控制,屬微分控制,最后一項為積分項。全系統仿真中對積分項的系數進行了設置,當高度差大于40m時,取值為零;當高度差小于6m時取值3;高度差在6~40m之間時取值為1。通過全數字仿真系統進行仿真,控制高度從300m爬升至400m結果如圖2,可以看出,無人機穩定爬升,有超調(<5%),到達穩態時間約為14m。 當加入抗積分飽和控制以后,設置積分上限為10,當控制量輸出大于積分上限時,積分只累積負值的偏差;當控制量輸出小于積分上限時,積分只累積正值偏差。同時由于抗積分飽和可以提高系統穩定度,因此適當增大系統積分系數,可以使系統更快的到達穩定值。同樣取高度由300米爬升至400米,加入抗積分飽和以后的高度響應曲線如圖3所示。 對比圖2和圖3可知,采用常規PID算法對高度進行控制,響應時間較長,為14秒;高度有超調,超調約5米。采用抗積分飽和的PID控制算法對高度進行控制,系統到達穩態的時間更短,為8秒,超調也更小,僅有0.5米。因此抗積分飽和PID控制算法在對穩態精度要求較高的場合更能發揮作用。 加入抗積分飽和的高度控制系統對應的無人機俯仰角變化曲線如圖4所示。圖4中綠色曲線表示無人機的俯仰角反饋,紅色曲線表示無人機滾轉角反饋值,藍色曲線表示航向角曲線。 由于當前無人機航向角不在顯示的[-30,30]范圍區間,因此航向角并未顯示。通過圖4可以看出,從收到高度調整指令開始,無人機的俯仰角按照控制規律進行變化,前期由于偏差較大,按照較大的固定俯仰角爬升,中期偏差較小時采用較小的固定俯仰角進行爬升,最后當偏差小于20米時,采用增加了抗積分飽和功能PID控制算法進行高度控制,最終保證了高度控制系統的實現。 由于無人機在調整高度的過程中橫側向不受影響,副翼舵用來保持無人機的姿態角始終為零,因此在高度調整時無人機的滾轉角為零,如圖4。 在無人機的設計階段需要進行大量的仿真,從全數字仿真,設計和驗證控制律,到半物理仿真,控制律與實物聯調,需要多次對控制律進行設計和微調。一方面要保證各個通道的控制性能,另一方面也不能嚴重影響其他通道。本文以高度控制系統為例講解了幾分分離和變積分法的應用,一般來說積分項只在控制系統的外環控制中使用,比如無人機控制中的高度控制、航向控制、位置控制等,如果不采取措施,很容易使積分飽和。而在內回路中,為了提高系統的響應速度,對控制的精度準度反而沒有特別高的要求,一般也就不需要積分項,只采取比例控制或比例微分控制即可,如無人機仿真中的俯仰角控制、滾轉角控制等。PID控制方法在被控系統為連續系統和離散系統情況下都有很好的控制效果。根據自身系統特性,設計合適和控制律優化和改進PID算法,是對基礎性算法的良好補充,能更好的實現控制系統“快、準、穩”的控制目的。■ 圖2 高度控制系統及響應 圖3 加入抗積分飽和的高度控制 圖4 加入抗積分飽和的俯仰角變化量 (參考文獻:略,如有需要,請聯系編輯部。)變積分法

不完全微分PID 控制實現
仿真結果

結語


