徐 瑞,耿子陽,朱圣英,李朝玉,梁子璇
(1. 北京理工大學宇航學院,北京 100081;2. 深空自主導航與控制工信部重點實驗室,北京 100081)
當航天器在軌運行時,經常需要執行大角度姿態機動,而在姿態機動過程中,航天器面臨各種復雜的約束。這些約束可以分為兩類:第一類約束來自外部的指向約束,即航天器攜帶的敏感儀器應禁止指向太陽、月亮等明亮天體。典型的例子是紅外天文衛星IRAS,其機載紅外望遠鏡需要遠離熱源。為了防止直射的陽光影響觀察,在姿態機動過程中,紅外望遠鏡指向與太陽方向之間的角度必須不小于特定值。第二類約束來自航天器內部,由于航天器提供的控制力矩幅度以及角速度傳感器的量程范圍有限,控制力矩和角速度大小等受到約束[1]。針對第二類約束可以通過設計合理的控制器來處理,而對第一類約束問題的研究則較晚,本文提出的多約束姿態機動路徑球面幾何規劃方法主要用于解決第一類約束問題。
用于解決復雜約束下的航天器姿態機動問題(Spacecraft reorientation in presence of constraints,SRPC)的相關算法已經在國際深空探測任務中進行了多次技術驗證,代表性的任務有:卡西尼號土星探測任務、費米伽瑪射線空間望遠鏡(簡稱FIRST/Planck)任務和太陽異常磁層粒子探測器任務。SPRC問題在二十世紀九十年代得到了廣泛的研究,Kim等[2]考慮使用凸優化框架處理約束,通過引入參數化的方式提供了可嵌入航天器自主姿態重定向規劃算法的SRPC求解器。McInnes[3]提出了一種人工勢能函數法用于引導航天器姿態,通過在不期望指向上疊加較高的勢能來避免紅外望遠鏡指向太陽和其他明亮區域。Spindler[4]使用控制理論中的微分幾何方法推導出姿態機動控制律,在規定的航天器姿態之間采用rest-rest控制,可以自動避免航天器指向禁止方向。武長青等利用非凸二次型描述姿態指向約束,并引入線性松弛技術,不僅能滿足復雜約束還可以降低姿態機動的能量消耗[5-6]。
針對航天器姿態機動過程中面臨的不同約束,眾多學者提出多種解決SPRC問題的算法框架。本文提出的球面幾何規劃方法繼承并發展了Hablani[7]的幾何算法框架,該框架對航天器受到的幾何約束進行了系統性描述。一般地,幾何規劃方法首先考慮無約束姿態機動的最優機動路徑,然后通過幾何算法尋找中間節點,給出姿態機動的指令序列,保證路徑滿足指向約束。其它算法框架包括勢能函數算法[8-9]、約束監視算法[10]、隨機智能算法等。其中概率路標規劃器(PRM)[11]、快速搜索隨機樹(RRT)[12-15]等已在路徑規劃中得到了大量應用。
本文首先建立航天器姿態和指向約束在三維空間和二維平面之間的相對位置及其轉換關系。然后,提出了一種多約束姿態路徑球面幾何遞歸修正方法。對于只有一個約束的情況可以直接采用該方法進行處理,并且通過保持一定的角度余量,可以解決航天器實際運行路徑與規劃路徑不一致的問題。對于存在多個指向約束的情況,根據是否對當前規劃路徑產生影響,將這些約束進一步分為有效約束和無效約束,給出了區分這些約束的檢測方法。本文將約束檢測方法和幾何規劃方法相結合,尋找中間節點以規避約束區域,以遞歸的方式處理多約束問題。該方法可以作為姿態規劃器的內嵌算法向控制器提供一系列姿態指令。最后,通過與粒子群優化算法仿真對比,校驗了該方法具有節省機動時間、計算效率高的優點。
描述航天器的姿態有多種方式,本文采用歐拉軸/角和單位四元數兩種方式描述航天器姿態,姿態四元數與歐拉軸/角的關系如下:
(1)
式中:q0,qv分別為四元數的標部和矢部。本文采用最小角度機動方式,航天器從初始姿態q(t0)機動到給定姿態q(ti),根據歐拉旋轉定理,其姿態機動路徑為繞e軸旋轉θ角。
考慮具有空間指向約束的敏感器件一般都是固定在航天器主體上,其在空間中的指向記為v。v在本體坐標系B下是一個常幺矢vB,但是在慣性坐標系I中會隨著航天器的姿態改變而改變,這里記為vI。航天器的姿態q與vB,vI的關系可以表示如下:
(2)
一般地,造成指向約束的來源(如太陽、軌道碎片形成的區域等)在慣性空間中可以看作是靜止不動的,這意味著它們形成的空間約束錐在慣性參考系下屬于靜態約束。因此需要確定v在慣性系下的值vI。根據式(2),vB在敏感元器件安裝完成后就確定了,任意時刻vI(t)的值可以通過該時刻的姿態四元數q(t)推算。
航天器的姿態運動學方程描述航天器姿態(姿態四元數表示下的)與角速度之間的關系:
(3)
式(3)也可進一步表示為:
(4)

(5)
航天器的姿態動力學方程描述的是執行機構提供的控制力矩與角速度之間的關系:
(6)
將式(6)展開得:
(7)
這里的角速度和控制力矩及其分量都是在本體坐標系下表示的量。
為了便于分析障礙區域與敏感軸的指向關系,需要建立一個在初始指向附近展開的局部坐標系L。局部坐標系L起到了從三維慣性坐標系到α-β平面坐標之間轉換作用,在L系附近能較方便的定義方位角α和高度角β,同時也能計算出L系的三個坐標軸軸向矢量在慣性空間中的指向,進而確定空間慣性坐標系與α-β平面坐標之間關系。如圖1所示:

圖1 敏感軸v與障礙區域s在L系下的關系Fig.1 The relationship between the v and s under the coordinate frame L

(8)
在不考慮約束影響的情況下,實現星載敏感軸從v0機動到vf的路徑為繞固定軸Lz旋轉θ角,這條路徑沒有多余的角度機動,因此被稱為最小角度機動(Minimum-angle Slew Path)。根據式(1)可以計算出航天器最終時刻相對于初始時刻的機動姿態。障礙區域s在局部坐標系L下有兩種表達方式:
(9)
根據式(9)可以推出高度角與方位角的計算方式:
(10)
式中:α的具體取值由坐標(sTLx,sTLy)所在象限決定。障礙區域與敏感軸指向可以用單位球面上的點表示,這些點進而被映射到α-β平面上,如圖2所示。

圖2 障礙規避問題在α-β平面下的幾何表示Fig.2 Geometrical representation of obstacle avoidance problem under the plane α-β
圖2中陰影部分表示障礙區域,c1,c2,c3分別是三個障礙區,這樣在三維空間中形成的空間禁入錐可以用二維曲面上的圓盤面表示:圓的半徑即為禁入錐的半頂角,圓心的位置指向障礙區域的中心天體。注意,這里將α-β平面稱為曲面是為了強調該平面的距離測度不同于一般歐氏空間(R2)的測度,因為二者有不同的黎曼度量。
根據納皮爾圓周定理可以得到α-β平面上任意兩點A(α1,β1),B(α2,β2)間的距離公式:
d(A,B)=arccos(cos(β2-β1)·cos(α2-α1))
(11)
根據約束區域對當前路徑是否有影響,將約束分為有效約束和無效約束,對于圖2所示的路徑B1,c1為有效約束,c2,c3為無效約束。注意,c2,c3雖然對路徑B1無影響但對后續的規劃路徑存在影響(如c2對路徑B3的影響)。之所以進行這樣的劃分是因為需要保證:規劃最終路徑的有效約束個數為零,即滿足所有的約束條件。
另一個需要考慮的問題是航天器姿態機動的實際運動路徑與規劃路徑不完全一致,本文把規劃的路徑劃分為B2段與B3段(均為實線段),實際運動的路徑用虛線段B4表示。對于B3段,雖然B3滿足約束c2但實際運動路徑卻違反了約束,針對這種情況,本文提出一種增加裕角(γ-φ)的方法將障礙區擴充到禁入區。這樣,如B2段所示,即使實際運動路徑偏差了規劃路徑也能避免敏感器視軸進入障礙區域。裕角值的確定與控制器的選擇有關,因為不同的控制器產生的實際運動軌跡是不同的。但由于姿態控制系統本質是非線性系統,無法得到路徑的解析式,更無法建立控制律與裕角值之間的精確對應關系,所以裕角值的選擇需要通過實際經驗來決定。
本文進一步給出判斷有效約束和無效約束的計算方法,由于在α-β平面中心點到某段路徑的距離(測地線的長度)計算困難,需要將點的坐標轉換回慣性坐標系表示,可以看成是式(10)的逆過程:
(12)
其中:Li(j)(i=x,y,z;j=1,2,3)表示Li軸在慣性空間中的第j個分量。
記任意一段路徑由p1出發到p2,則點s到測地線p1p2的距離為:
d=
(13)


(14)
針對當前路徑存在約束違反的情況,尤其是有多個有效約束存在的情況(如圖3所示),路徑節點的指令序列記為M(vo,m1,m2,…,vf),節點之間的路徑為沿著最小角度路線,并與禁入區域相切方式進行姿態機動。

圖3 路徑節點生成示意圖Fig.3 Schematic diagram of path nodes generation
(15)
(16)
式中:ε,η的幾何意義如圖3所示,αm,βm分別為m的方位角、高度角。路徑節點生成的迭代過程如下:

(17)
本文仿真案例如下,為了方便計算假定航天器的初始姿態qini=[1, 0, 0, 0]T,姿態機動實現敏感軸從v0=[0, 0, 1]T機動到vf=[0, 1, 0]T即最終姿態qend=[0.7071, -0.7071, 0, 0]T。
航天器的轉動慣量J=diag(123,205,147.6)(kg·m2),姿態機動路徑的約束模型相關數據計算整理成見表1。
采用本文提出的姿態路徑幾何遞歸修正方法計算出姿態規劃指令集M見表2。
本文采用粒子群算法作為對比,因為粒子群優化算法本身具有許多優點,第一,實際應用廣泛;第二,有許多有效方法避免算法陷入局部最優;第三,部分參數有較為成熟的理論研究方法用于選擇。本文采用標準粒子群優化算法流程求得姿態規劃指令。其相關參數設置如下:

表1 約束模型相關數據Table 1 Relevant data of the constraint model

表2 姿態規劃指令集M計算結果Table 2 Calculation result of attitude planning instructions set M
初始種群G=100慣性權重η=0.8,自我學習因子與群體學習因子均設為0.5,位置和速度分別限制在±1、±0.05;通過粒子群算法搜索得到的姿態指令集N見表3。

表3 粒子群算法搜索的姿態指令集NTable 3 Attitude planning instructions set N searched by particle swarm algorithm
有效約束個數為零時是球面幾何遞歸修正過程的結束條件,因此姿態指令集M能夠自動滿足路徑約束。而粒子群算法得到的姿態指令集N是通過將路徑約束作為適應度函數的優化對象之一來滿足約束的。
將規劃得到的姿態指令作為控制系統輸入,通過航天器姿態機動,使敏感軸安全地完成從初始指向到目標指向的機動。因此,可以將整個姿態機動過程劃分為三段,本文對每一段機動過程都進行了仿真。
本文采用經典PID姿態跟蹤控制器[16],分別對姿態指令集M,N中給出的姿態位置進行路徑跟蹤仿真,為了保證整個姿態機動路徑光滑性,從一個節點機動到另一個節點采用rest-rest機動方式。整個機動過程可劃分為三段,每段仿真結果如圖4所示。

圖4 球面幾何規劃算法下的姿態位置歷時曲線Fig.4 Attitude position histories using spherical geometric planning method

圖5 球面幾何規劃算法下的姿態位置歷時曲線Fig.5 Angular velocity histories using spherical geometric planning method
圖4~5表示采用球面幾何遞歸修正方法的航天器在不同階段姿態與角速度的歷時曲線,圖6~7則表示粒子群優化算法下航天器的姿態位置和角速度歷時曲線。從仿真結果可以看出,按照球面幾何規劃方法提供的姿態控制指令集,航天器姿態機動最短機動時間為230 s左右,從姿態位置變化來看以最小角度機動的方式完成大約163°的角度機動。從角速度變化來看,整個機動過程實現了rest-rest機動方式,這保證了航天器能實現連續的姿態機動,同時也為非連續的姿態機動提供可能性,即航天器在到達某個路徑節點后可停留一段時間,雖然會導致姿態機動時間增加,但是航天器可以利用這段時間再進行調整,為其它系統分配時間資源以保證整個系統的魯棒性。航天器按照粒子群算法提供的控制指令集在250 s左右完成姿態機動,耗時要多于球面幾何規劃方法。這是因為球面幾何規劃方法設計的的路徑會掠過禁入錐表面(在考慮裕角的情況下)接近最短路徑,所以能節省姿態機動時間。而且,球面幾何規劃方法是確定性算法,沒有隨機因素,計算效率要更高。
本文對航天器姿態機動中各類約束進行了分類,提出了一種球面幾何規劃方法來解決姿態機動的路徑規劃問題。利用球面幾何方法對航天器姿態、敏感軸指向和空間指向約束之間關系進行了推導。然后,進一步將約束劃分為有效約束和無效約束,提出了區分此類約束的路徑約束檢測方法,有效減少了約束處理的數量。最后給出了路徑中間節點的解析公式。結果表明,與群智能算法相比,球面幾何規劃方法具有節省機動時間、計算效率高等優點,對于節省星載計算資源具有重要參考意義。

圖6 粒子群優化算法下的姿態位置歷時曲線Fig.6 Attitude position histories using particle swarm optimization algorithm

圖7 粒子群優化算法下的角速度歷時曲線Fig.7 Angular velocity histories using particle swarm optimization algorithm