謝方圓 張愛民
1. 中國人民解放軍63766部隊,西雙版納 666200 2. 西安交通大學電子與信息學部,西安 710049
衛星運行在復雜多變的太空環境中,不僅面臨來自外界的各類干擾影響,還可能由于外界或內部的原因出現各種故障,進而對功能造成影響。在衛星在軌期間的各類故障中,執行機構發生故障的比例很高,而且對衛星姿態造成的影響很大。為了提高衛星對執行機構故障的容錯能力,現代衛星往往采用3個以上的反作用飛輪構成冗余執行機構。那么一個控制需求會有多種可行的執行機構分配方案,這就引出了控制分配問題。
針對過驅動衛星的控制分配問題,傳統的偽逆分配法,其本質上是固定分配,不能充分利用執行器冗余的優勢[1]。動態控制分配(Dynamic Control Allocation, DAC)在故障時根據約束條件和最優化目標將虛擬控制力矩重新進行分配,使執行機構最終輸出的控制力矩盡可能與虛擬控制力矩一致[2]。提高了控制過程的精確度、系統對執行機構故障的容錯能力,進而延長衛星在軌壽命。如文獻[3]中針對空天飛行器再入過程異類冗余執行機構的復合控制分配問題,設計了基于二次規劃的按需動態分配律,實現了姿態準確跟蹤。文獻[4]在過驅動衛星姿態控制中應用基于負載均衡的控制分配方法,優化了推力分配布局,延長了執行機構使用壽命。
相對于被動容錯方法,采用DAC可以無需設計過于復雜的控制器,以提供對飛輪故障的魯棒性,而是通過DAC方法進行處理;相對于主動容錯方法,不需要重構控制器[5],也會相應的使控制方法的設計復雜度降低。所以,將簡單的控制器和DAC結合,是針對飛輪故障的一種有效的姿態控制設計方法。但在以往的文獻中,應用動態控制分配方法時,將權值矩陣對角線元素設置為最大限幅值倒數,并沒有將飛輪故障的影響考慮在內。本文考慮飛輪故障,重新設計了對角權值矩陣的計算方法。
另外,無論何種執行機構,都存在由于物理限制存在輸出力矩和轉速的上限。在要求的力矩或轉速超過上限時,執行機構就無法跟隨控制命令,造成實際輸出的力矩和要求之間存在誤差,即執行機構發生了飽和。但一些文獻在設計控制律時并沒有考慮這一點。如文獻[6]中,僅設計了控制器,對于工程實踐中可能出現的執行機構飽和問題沒有加以考慮,缺乏實踐指導意義。Kenneth提出了解決這一問題的兩種方法[7]。其中利用控制效率矩陣(安裝矩陣)零空間特性的修正方法,可以使超出執行機構位置和速度限制的分配方案重新落入可行域內,且保證控制矢量方向不變。
衛星發射過程中,顛簸可能帶來結構變形,現代快速響應衛星安裝矩陣在發射前可能來不及校準,這些因素都會使衛星不可避免的存在執行機構安裝偏差,往往會對控制精度有較大影響。所以高精度的姿態控制必須考慮執行機構存在安裝偏差的問題[8-9]。
以上提及的衛星姿態控制中可能出現的問題,以往許多文獻中一般只著眼于它們中的一部分,而忽略了其他部分,沒有綜合考慮。雖然設計的控制方法對其他未考慮的問題可能有一定的控制效果,但缺乏理論支撐和仿真驗證。也有少量的文獻將以上問題綜合考慮[10],但控制器設計過程復雜,不利于實際工程應用。
本文綜合考慮不確定干擾、飛輪安裝偏差、故障以及飽和,結合滑模控制和動態控制分配,利用零空間法處理飛輪的飽和問題。仿真結果證明,本文提出的控制方法對上述問題有良好的控制效果。
采用四元數描述的衛星姿態動力與運動學方程為:
(1)
(2)
(3)
式中:J∈R3為衛星慣量矩陣;we表示本體系Β相對于期望系Ο的誤差角速度;有
(4)

(5)
假設1.干擾力矩d有界,即滿足‖d‖≤λ。其中:‖·‖表示(·)的2-范數,λ>0為正常數。
假設2.角速度w和姿態四元數qv均可通過直接測量或間接計算得到。
1.2.1 飛輪安裝偏差分析
記執行機構的數量為m>3,執行機構產生的力矩向量為v=[v1v2…vm]T。衛星的控制力矩u=[u1u2…un]T(n=3),由反作用飛輪通過安裝矩陣D提供:
un×1=Dn×mvm×1
(6)
考慮航天器反作用飛輪存在安裝偏差ΔD,設標稱部分為D0,即有:
D=D0+ΔD
(7)

1.2.2 飛輪故障分析
飛輪效率矩陣為F=diag(f1,f2,…,fm),其中fi(i=1,2,…,m)∈[0,1]表示每個飛輪的故障系數,fi=1表示飛輪正常,fi∈(0,1)表示飛輪效率降低,fi=0表示完全失效。記vc為飛輪的輸入指令。飛輪實際輸出v的表達式如下:
v=Fvc
(8)
假設4.F已經準確檢測或估計到,其估計誤差本文不做討論。
1.2.3 飛輪飽和分析
定義飛輪在物理限制下可以輸出控制力矩的范圍為:vmin≤v≤vmax,速度的范圍為:ηmin≤η≤ηmax。設采樣時間為T,綜上,在某一時刻t飛輪輸出力矩范圍可表示為:
(9)
(10)
這使得位置和速率的雙重約束轉化為單位計算周期內的位置約束問題。
綜上,本文研究的問題可以描述為:在衛星姿態控制過程中,考慮存在不確定干擾以及飛輪安裝偏差的情況下,當飛輪出現故障以及飽和時,設計怎樣的控制方案,能使衛星姿態系統仍能穩定運行。
首先考慮在衛星存在不確定干擾和飛輪安裝偏差的情況下如何設計控制律u,使系統漸近穩定。
如果使用偽逆法將控制力矩分配到各個飛輪,則:
(11)
式中:u∈R3為控制模塊計算得到的所需的控制力矩。將式(6)、(7)和(11)代入式(3)中可得:
(12)
設計滑模變量s=we+βe,可得:

(13)
定義
(14)
則
(15)
設計Lyapunov函數
(16)
則
(17)
設計控制律
u=-A-ksgn(s)-kss
(18)
式中:k、ks為待確定的正常數。代入式(17)中:
(19)
式中:sTksgn(s)=k‖s‖,代入式(19)可得
(20)
由假設1和假設3可知
(21)
將控制律代入可得

(22)

(23)

控制律中的ks和滑模矢量參數β的取值如下:
(24)

ts為要求的響應時間,根據控制任務需求選取。值得一提的是,在滑模控制的實際應用中,由于慣性、滯后等因素的存在,會不可避免的產生抖振。使用邊界層法,即用飽和函數sat(s)代替符號函數(開關函數)sgn(s),可以達到削弱抖振的目的,并提高仿真速率。這里取飽和函數為:
(25)
并令ε=0.001。
從前面的分析可知,僅僅使用偽逆法進行力矩分配是無法應對飛輪故障的。所以這里使用動態控制分配處理飛輪故障。
動態控制分配問題本質上是一個優化問題,求解它是一個數學規劃問題。選擇l2范數作為優化目標:

(26)
s.t.
(27)
式中:v(t)∈Rm為所求的飛輪力矩指令,vs(t)∈Rm為期望的穩態飛輪力矩,v(t-T)∈Rm是上一時刻的飛輪力矩指令,W1和W2為對角權值矩陣;u(t)∈Rn為虛擬控制力矩,D0∈Rn×m是安裝矩陣的標稱部分,Ω表示飛輪控制力矩的可行域。
文獻[11]中將W1矩陣對角線元素設置為最大限幅值倒數,但這種方法并沒有將飛輪故障的影響考慮在內。事實上,當星上故障檢測系統已經發現某飛輪存在故障,則應增大W1對應的對角線值,使分配時盡量減少使用該飛輪。根據這兩個方面的要求,本文將文獻中的方法加以改進,將W1對角線元素設置為:
(28)
在不考慮飽和影響的情況下,優化問題變為:

(29)
s.t.
D0v(t)=u(t)
(30)
根據文獻[12],可得優化問題的解為:
v(t)=Evs(t)+Fv(t-T)+Gu(t)
(31)
(32)
采用零空間法處理飛輪飽和。
安裝矩陣D∈Rn×m,存在一組m-n個m維正交向量,它們構成了Rm上D的零空間的一組基。將這組向量組成的矩陣記為N∈Rm×(m-n),即滿足DN=0,則DNx=0,?x∈Rm-n,記vm=Nx。向量vp滿足Dvp=u,則向量v=vp+vm有下式成立:
u=Dv=D(vp+vm)=Dvp+DNx+
Dvp+0·x=Dvp=u
(33)
式(33)說明若初始解vp加上一個由D的零空間基組成的向量vm,等式仍成立。所以,基于零空間控制分配方法就應用了這一思路:給定了初始解vp,滿足Dvp=u,在vp?Ω時,尋找x,使得v=vp+vm=vp+Nx∈Ω成立。
若經過計算后得到的v滿足了所有分量未超出約束范圍,則將修正結果輸出到執行機構,若還存在超出約束范圍的分量,則重復以上的修正過程。值得注意的是,以上方法存在多次迭代仍不能使所有分量都落入約束范圍內的情況,這時需要設定一個最大迭代次數,若仍有超出約束范圍的分量,就將其置于極限值后停止修正,這時輸出的執行機構命令雖然無法合成要求的控制量,但避免了多次迭代浪費寶貴的控制時間。
設衛星的轉動慣量矩陣:
J0=diag(6.292,9.650,5.477)kg·m2
(34)
設系統初始姿態角為θ0=[10 10 10]o或θ0=[45 45 45]o兩種值。

考慮4個反作用飛輪按照αi=35.25°,βi=45°(i=1,2,3,4)的標稱安裝角安裝于衛星上。則由文獻[13]可知
(35)
外干擾在三個通道上均設置為:
uf=0.0005sin(0.1t)N·m
存在安裝偏差角Δαi,Δβi。仿真中Δαi(i=1,2,3,4)在[-4.5° 4.5°]之間隨機選擇,Δβi(i=1,2,3,4)在[-5.5° 5.5°]之間隨機選擇。
仿真中的飛輪故障設置為某飛輪完全失效,其他飛輪能正常運轉,既在仿真中對應的飛輪效率矩陣的對角線元素為0。設置飛輪最大位置限制為±0.25N·m,轉速最大限制為0.03N·m/s。取ts=60s。設計以下3種條件:
仿真1:初始姿態角[10° 10° 10°],未發生飽和,3號飛輪完全失效。仿真結果如圖1~2所示。

圖1 飛輪指令與實際產生的力矩差
仿真2:初始姿態角[45° 45° 45°],發生了飽和,飛輪正常。仿真結果如圖3所示。
仿真3:初始姿態角[45° 45° 45°],發生了飽和,且2號飛輪完全失效。仿真結果如圖4所示。

圖2 虛擬力矩與實際輸出力矩差

圖3 無DAC,無零空間法仿真結果

圖4 有DAC,有零空間法仿真結果
通過對比仿真1中的兩組實驗結果,發現在同樣的控制目標下,相對于無DAC時,有DAC時飛輪更好地跟蹤了力矩指令,且穩態不存在波動。這是由于無DAC時,違逆法仍然將控制力矩按照安裝矩陣的偽逆分配給3號飛輪較大的力矩,但此飛輪無法響應,導致其輸出和指令之間的差Δv很大,相應的會造成較大的Δu。有DAC時,失效飛輪對應的W1矩陣對角線元素增大,抑制了向3號飛輪分配較大的力矩,所以,使Δv減小,降低了分配誤差。
通過對比仿真2中的兩組實驗結果,發現有零空間法時,Δu三個分量的絕對值都有所減低,證明了零空間法對飽和影響的抑制作用。這是由于發生飽和時,無零空間法時,超出飛輪限制的力矩會被直接置于飽和值,不做其他處理,造成合成的力矩存在誤差;有零空間法時,首先將超出限制的分量置于飽和值,再根據算法計算剩余的分量,循環一定次數,輸出調整后的值。相當于將飽和的分量超限部分讓剩余未飽和的分量分擔,從而降低了控制誤差。
在仿真 3中,在干擾、偏差、失效、飽和共同存在時,設計的控制方法仍能有良好的穩態性能,說明了設計的控制律的有效性;對比圖3和圖4兩組實驗結果,發現當失效和飽和同時存在時,在DAC和零空間的共同作用下,Δv和Δu都明顯降低,使得控制過程得到了改善。所以本文設計的控制方法不僅能使系統最終趨于穩定,還能改善系統的控制過程,有效應對本文中的姿態控制問題。
研究了不確定干擾、飛輪安裝偏差、故障、飽和同時存在時的衛星姿態控制問題。首先針對衛星姿態在不確定干擾和飛輪存在安裝偏差時設計滑模控制律,并驗證了其穩定性;而后分別應用動態控制分配和零空間法處理飛輪故障和飽和。最后設計對比仿真,仿真結果與預期一致,證明了設計的控制方法對本文中的姿態控制問題的有效性。并且在降低穩態和動態誤差方面都取得了一定的效果。本文設計的控制方法避免了復雜的控制器設計過程,適應性更廣,更易于工程應用。