普渝皓,程實(shí),陳楊*
(1.航天科工空間工程發(fā)展有限公司,北京100854;2.中國(guó)航天科工集團(tuán)二院研究生院,北京100854)
近地小行星對(duì)地球的威脅持續(xù)存在,特別是大量未發(fā)現(xiàn)編目的近地小行星對(duì)地球持續(xù)造成嚴(yán)重突發(fā)撞擊威脅。從歷史情況看,直徑1km以上小行星撞擊地球概率較低且短期內(nèi)難以有效防御,直徑10m以下小行星危害較小無需針對(duì)性進(jìn)行防御,因此監(jiān)測(cè)預(yù)警的重點(diǎn)目標(biāo)為直徑10m至1km的近地小行星。進(jìn)一步考慮工程可行性、應(yīng)對(duì)必要性等因素,防御任務(wù)重點(diǎn)為直徑十米級(jí)至百米級(jí)的小行星。近年來,小行星防御技術(shù)成為研究熱點(diǎn),其中任務(wù)末段的相對(duì)導(dǎo)航技術(shù)與制導(dǎo)技術(shù)是關(guān)鍵技術(shù)[1]。
“雙小行星重定向測(cè)試”(Double Asteroid Redirection Test, DART)任務(wù)于北京時(shí)間2022年9月27日,對(duì)Didymos雙小行星系統(tǒng)中直徑160m的次星Didymos B進(jìn)行動(dòng)能防御,仿真命中點(diǎn)距瞄準(zhǔn)點(diǎn)約15m[2],實(shí)際命中點(diǎn)距離圖像中心17m。根據(jù)公開報(bào)道,DART任務(wù)主飛行器經(jīng)過深空機(jī)動(dòng)與多次中制導(dǎo)修正,滿足中末交接班條件后,進(jìn)入末制導(dǎo)階段,在此階段使用源于比例引導(dǎo)的制導(dǎo)律,制導(dǎo)算法使用擴(kuò)展卡爾曼濾波(Extended Kalman Filter, EKF)對(duì)交會(huì)時(shí)刻的投影脫靶量進(jìn)行估計(jì)[3]。濾波器的觀測(cè)量是由圖像解算出的慣性坐標(biāo)下的視線角,并且假設(shè)任務(wù)飛行器與目標(biāo)小行星之間無相對(duì)加速度。根據(jù)投影脫靶量大小進(jìn)行修正,在交會(huì)前5min進(jìn)行連續(xù)修正,并在交會(huì)前2min???,準(zhǔn)確命中目標(biāo)小行星。面對(duì)目標(biāo)尺寸更小、目標(biāo)軌道預(yù)報(bào)精度更低、交會(huì)精度要求更高的任務(wù)場(chǎng)景,上述方法還有改進(jìn)的空間。
首先,考慮提升濾波算法的精度。以視線角為觀測(cè)量的相對(duì)導(dǎo)航系統(tǒng)是典型的非線性系統(tǒng)。EKF算法在線性化過程中忽略了非線性函數(shù)泰勒級(jí)數(shù)展開的二階及以上的高階項(xiàng)。在初始誤差較大的情況下,特別是在目標(biāo)軌道預(yù)報(bào)精度較低的情況下,有可能引入較大的線性化誤差。無跡卡爾曼(Unscented Kalman Filter, UKF)算法不需要對(duì)狀態(tài)方程和觀測(cè)方程線性化,沒有對(duì)模型高階項(xiàng)的截?cái)嗾`差,可以獲得比EKF更好的估計(jì)精度和濾波穩(wěn)定性[4]。EKF和UKF算法均需要已知系統(tǒng)噪聲和觀測(cè)噪聲的統(tǒng)計(jì)特性。噪聲統(tǒng)計(jì)特性的偏差將導(dǎo)致濾波精度下降甚至導(dǎo)致濾波發(fā)散。為了克服這一問題,需要引入在線估計(jì)噪聲統(tǒng)計(jì)特性和修正濾波增益的自適應(yīng)濾波技術(shù),如基于協(xié)方差匹配的自適應(yīng)濾波[5]、基于極大似然方法的自適應(yīng)濾波[6,7]和基于模糊邏輯的自適應(yīng)濾波[8,9]等。
其次,考慮提升制導(dǎo)指令的計(jì)算精度。在公開文獻(xiàn)中,DART任務(wù)在進(jìn)行投影脫靶量估計(jì)時(shí),忽略了相對(duì)加速度對(duì)制導(dǎo)精度的影響[2]。根據(jù)Lorenzo F的研究表明,DART任務(wù)在四體動(dòng)力學(xué)環(huán)境下引起的軌道誤差均值為238m,目標(biāo)軌道不確定性引起的平均軌道誤差為10m[10]。因此,為應(yīng)對(duì)更小尺寸小行星的更高精度的防御場(chǎng)景,在投影脫靶量的估計(jì)時(shí),需要考慮復(fù)雜引力環(huán)境產(chǎn)生的相對(duì)加速度。
本文首先以B平面坐標(biāo)系作為相對(duì)導(dǎo)航坐標(biāo)系,并給出該坐標(biāo)系下的自主相對(duì)導(dǎo)航系統(tǒng)模型。其次將適用于線性系統(tǒng)的Sage-Husa噪聲估計(jì)器推廣到非線性系統(tǒng),結(jié)合UKF算法得到一種自適應(yīng)無跡卡爾曼(Adaptive Unscented Kalman Filter, AUKF)濾波器,并引入?yún)f(xié)方差匹配的思想,進(jìn)一步提高濾波的快速性和穩(wěn)定性。在投影脫靶量的估計(jì)計(jì)算中,考慮復(fù)雜引力環(huán)境下的影響,提出一種利用投影脫靶量直接計(jì)算制導(dǎo)指令的制導(dǎo)方法。最后以具有潛在威脅的小行星Bennu為目標(biāo),設(shè)計(jì)典型任務(wù)場(chǎng)景并生成飛行數(shù)據(jù),對(duì)本文提出的模型及算法進(jìn)行仿真驗(yàn)證。
2.1.1相對(duì)導(dǎo)航坐標(biāo)系
本文考慮單目?jī)H測(cè)角相對(duì)導(dǎo)航系統(tǒng),以目標(biāo)天體的俯仰角和方位角為觀測(cè)量。任務(wù)末段飛行器相對(duì)目標(biāo)天體的位置矢量和速度矢量夾角很小,甚至重合,沿視線方向的信息無法通過連續(xù)觀測(cè)獲得。若在J2000日心黃道坐標(biāo)系中描述狀態(tài)方程,視線方向距離無法估計(jì)的特性將反映到三個(gè)慣性坐標(biāo)軸上,導(dǎo)致三軸的位置估計(jì)均不可信,無法保證三軸的位置信息的估計(jì)精度。因此,需要將沿視線方向的距離獨(dú)立出來,提高垂直于視線方向的估計(jì)置信度。
B平面坐標(biāo)系是根據(jù)任務(wù)飛行器相對(duì)目標(biāo)天體進(jìn)入漸近線方向定義的參考坐標(biāo)系,如圖1所示,其數(shù)學(xué)定義為:以目標(biāo)天體為中心原點(diǎn),S軸為進(jìn)入軌道雙曲線漸近線的方向矢量,某參考方向矢量記為N,S與N叉乘作為T軸,R軸由S軸和T軸按右手螺旋法則確定。在本文中,S矢量方向可選為初始時(shí)刻任務(wù)飛行器相對(duì)目標(biāo)天體的速度V∞的方向。取N為任務(wù)飛行器軌道平面的法線。即:
圖1 B平面坐標(biāo)系示意圖
(1)
式中:r和v分別表示任務(wù)飛行器在慣性系下的位置和速度矢量。則B平面坐標(biāo)系慣性坐標(biāo)系的轉(zhuǎn)換矩陣為:
(2)
視線方向與相對(duì)位置方向重合,相對(duì)位置方向和相對(duì)速度方向幾乎重合。因此B平面坐標(biāo)系可以將視線方向的距離獨(dú)立出來。由于S軸近似表示飛行器進(jìn)入B平面的方向,T軸和R軸方向的位置信息可以描述任務(wù)飛行器與小行星在B平面內(nèi)的相對(duì)位置。故選取B平面坐標(biāo)系作為相對(duì)導(dǎo)航坐標(biāo)系。
2.1.2 系統(tǒng)狀態(tài)和觀測(cè)方程
該任務(wù)的中心天體為太陽(yáng),同時(shí)飛行器與小行星還要受其他大行星引力及太陽(yáng)光壓力等攝動(dòng)力的影響。飛行器在接近目標(biāo)天體的末段,其與目標(biāo)天體所處的位置相差不大,二者所受的太陽(yáng)引力、攝動(dòng)力相差很小。在不進(jìn)行機(jī)動(dòng)時(shí),任務(wù)飛行器相對(duì)目標(biāo)小行星近似做勻速直線運(yùn)動(dòng)。由于近似所忽略的加速度可視為系統(tǒng)狀態(tài)噪聲。任務(wù)飛行器在B平面坐標(biāo)系下的離散系統(tǒng)狀態(tài)方程為:
(3)
式中:X=[xyzvxvyvz]T表示任務(wù)飛行器在B平面坐標(biāo)系下的相對(duì)位置和速度;t表示濾波步長(zhǎng),Wk-1表示系統(tǒng)狀態(tài)噪聲。
假設(shè)光學(xué)相對(duì)導(dǎo)航相機(jī)捷聯(lián)安裝在任務(wù)飛行器本體,輸出在飛行器本體坐標(biāo)系下描述的目標(biāo)視線角,包括俯仰角和方位角。因此觀測(cè)模型如下:
(4)
式中:qγ和qλ分別表示目標(biāo)的俯仰角和方位角;Vk表示觀測(cè)噪聲;xb、yb、zb表示r在本體坐標(biāo)系b系下的投影。xb、yb、zb與系統(tǒng)狀態(tài)x、y、z的轉(zhuǎn)換關(guān)系為:
(5)
假定非線性系統(tǒng)的狀態(tài)方程和觀測(cè)方程具有離散形式,可表示為:
(6)
式中:X表示被估計(jì)的隨機(jī)向量,Z表示對(duì)X的觀測(cè)為隨機(jī)向量,f和h表示非線性向量函數(shù),Wk和Vk表示不相關(guān)的噪聲序列,且Wk和Vk滿足:
(7)
式中,δkj表示Kronecker算子。
針對(duì)線性系統(tǒng),Sage和Husa提出了基于極大后驗(yàn)估計(jì)的噪聲統(tǒng)計(jì)估值器[11]。將此噪聲統(tǒng)計(jì)估值器推廣到非線性系統(tǒng),可以得到式(6)對(duì)應(yīng)的非線性時(shí)變?cè)肼暯y(tǒng)計(jì)無偏遞推估值器為:
(8)
(9)
(10)
(11)
(12)
(13)
基于無跡卡爾曼濾波算法,結(jié)合式(8)~(11)所示的Sage-Husa噪聲統(tǒng)計(jì)估值器以及協(xié)方差匹配思想,可以得到自適應(yīng)無跡卡爾曼濾波算法。針對(duì)式(6)所示的非線性系統(tǒng),本文提出的自適應(yīng)無跡卡爾曼濾波算法實(shí)現(xiàn)步驟如下:
步驟1,選定濾波初值
(14)
(15)
(16)
(17)
對(duì)k=1,2,3…,執(zhí)行:
(18)
i=1,2,…,n
(19)
i=n+1,n+2,…,2n
(20)
步驟3,時(shí)間更新
(21)
(22)
(23)
步驟4,觀測(cè)更新
(24)
(25)
(26)
(27)
步驟5,狀態(tài)更新
(28)
(29)
(30)
式(28)表示狀態(tài)增益矩陣更新;式(29)表示狀態(tài)變量值更新;式(30)表示狀態(tài)誤差方差陣更新。
步驟6,噪聲更新
需要特別指出的是,當(dāng)系統(tǒng)噪聲方差陣Q和觀測(cè)噪聲方差陣R均未知時(shí),由于無法從輸出中區(qū)分系統(tǒng)噪聲和觀測(cè)噪聲造成的影響,Sage-Husa噪聲估計(jì)器無法同時(shí)對(duì)二者進(jìn)行估計(jì)[12]。因此,需要在一種噪聲已知的條件下估計(jì)另一種噪聲。本文對(duì)飛行器相對(duì)目標(biāo)小行星的運(yùn)動(dòng)采取了近似處理,忽略的相對(duì)加速度為系統(tǒng)噪聲,且系統(tǒng)噪聲為時(shí)變?cè)肼暎^測(cè)噪聲與敏感器的精度和安裝有關(guān),可以預(yù)先確定。故本文對(duì)系統(tǒng)噪聲進(jìn)行估計(jì):式(8)表示對(duì)系統(tǒng)噪聲均值的估計(jì);式(10)表示對(duì)系統(tǒng)噪聲方差的估計(jì)。
步驟7,濾波發(fā)散抑制
協(xié)方差匹配的基本原理是:檢驗(yàn)殘差與其理論統(tǒng)計(jì)特征的相容性,即在濾波過程中,判斷殘差的統(tǒng)計(jì)分布在原假設(shè)條件的相容性,當(dāng)殘差在原假設(shè)下不相容,則需要根據(jù)殘差與理論統(tǒng)計(jì)特征一致的原則,對(duì)協(xié)方差陣進(jìn)行修正。
根據(jù)協(xié)方差匹配判據(jù),濾波器收斂時(shí)應(yīng)滿足:
(31)
式(31)中,εk表示殘差序列;γ為事先設(shè)定的可調(diào)系數(shù),取值范圍為γ≥1;tr[·]表示求跡運(yùn)算。若式(31)不成立,則對(duì)Pk∣k-1做如下修正:
(32)
式(32)中,λk的確定規(guī)則如下:
(33)
(34)
(35)
式(35)中,μ表示衰減系數(shù),取值范圍為0<μ≤1,一般取值為0.95。該系數(shù)能進(jìn)一步提高濾波器的快速跟蹤能力。當(dāng)增大μ時(shí),k時(shí)刻之前信息所占的比重減小,當(dāng)前殘差的影響增大。由于沿視線方向的分量是不可觀測(cè)的,因此在進(jìn)行修正時(shí),沿視線方向的分量不進(jìn)行修正。該方法有很強(qiáng)的關(guān)于突變狀態(tài)的跟蹤能力,并且在濾波達(dá)到穩(wěn)態(tài)時(shí),仍保持對(duì)于緩變以及突變狀態(tài)的跟蹤能力。
綜上所述,AUKF濾波器計(jì)算流程圖如圖2。
圖2 濾波器計(jì)算流程圖
根據(jù)任務(wù)飛行器深空自主導(dǎo)航和相對(duì)導(dǎo)航結(jié)果,能夠確定當(dāng)前時(shí)刻任務(wù)飛行器與目標(biāo)小行星在慣性空間的位置與速度,進(jìn)而可以確定兩者的引力加速度GT、GI和飛行器與目標(biāo)小行星之間的引力差GT/I。針對(duì)交會(huì)過程的末制導(dǎo)段,交會(huì)時(shí)刻的引力差很小,即GT/I=0。因此,當(dāng)前時(shí)刻引力差常值模型用式(36)表示:
(36)
式中:ti表示當(dāng)前時(shí)刻,tf表示交會(huì)時(shí)刻。由式(36)可知,雖然投影脫靶量的計(jì)算是一個(gè)常數(shù),但是在每次制導(dǎo)計(jì)算過程中,通過C0更新來反映當(dāng)前的引力狀態(tài)。將式(36)帶入的式(37)中且令控制力F=0,并對(duì)其進(jìn)行積分:
(37)
VT/I(t)=C0(ti)(t-ti)+VT/I(ti)
(38)
RT/I(ti)
(39)
式中,aT/I、VT/I(t)和RT/I(t)分別表示飛行器與小行星的相對(duì)加速度、相對(duì)速度和相對(duì)位置。
飛行器與小行星的相對(duì)距離到達(dá)最小值時(shí),應(yīng)滿足的條件是:
VT/I(t)·RT/I(t)=0
(40)
將式(38)和式(39)帶入式(40)后得到以交會(huì)時(shí)間為未知量的方程如下所示:
(tf-ti)+RT/I(ti)
(41)
式(41)中,Rmiss(ti)表示ti時(shí)刻的投影脫靶量(Projected Miss Distance)。根據(jù)式(36)-式(41),當(dāng)C0為0的時(shí)候常值模型下的投影脫靶量表達(dá)式與不考慮相對(duì)引力影響的表達(dá)式完全一致。另外,式(41)中通過C0引入了用于表達(dá)不同引力的高階項(xiàng),使得表達(dá)式能夠更加準(zhǔn)確的近似表達(dá)引力差的二次項(xiàng)。
圖3 比例導(dǎo)引與投影脫靶量的關(guān)系
從圖3中可以看出,投影脫靶量還可以表示為:
(42)
(43)
比例導(dǎo)引法是根據(jù)飛行器的旋轉(zhuǎn)角速度與目標(biāo)視線角速度成正比得出的一種導(dǎo)引方法。廣義比例導(dǎo)引是針對(duì)比例導(dǎo)引的一種改善形式,其一般形式為
(44)
將式(43)帶入式(44),可以得到基于投影脫靶量的制導(dǎo)指令計(jì)算形式:
(45)
令tgo=tf-ti,式(45)可以簡(jiǎn)化表示為:
(46)
上述給出的過載指令均為連續(xù)變大小控制量,考慮飛行器無法產(chǎn)生連續(xù)可變的制導(dǎo)過載,需要設(shè)計(jì)高精度的控制輸出變換方法,通過脈寬調(diào)制等手段生成離散開關(guān)控制量,驅(qū)動(dòng)推力器完成實(shí)際的推力輸出。采用脈沖調(diào)寬調(diào)頻方法(PWPF),對(duì)推力指令進(jìn)行分配。對(duì)于PWPF中的4個(gè)參數(shù):放大系數(shù)、時(shí)間常數(shù)、推力器的開關(guān)閾值,在實(shí)際應(yīng)用中,通過試湊的方法經(jīng)仿真試驗(yàn)來確定。
基于潛在威脅小行星Bennu構(gòu)建小行星防御典型場(chǎng)景,進(jìn)行仿真驗(yàn)證。Bennu開普勒軌道信息如表1所示[13]。以軌道信息標(biāo)稱值設(shè)計(jì)飛行任務(wù),任務(wù)于2036年9月18日0時(shí)開始,交會(huì)時(shí)間為2037年1月16日0時(shí),交會(huì)前4h進(jìn)入末段導(dǎo)航與制導(dǎo)階段。小行星實(shí)際軌道根據(jù)星歷誤差范圍隨機(jī)選擇,小行星直徑選擇為30m。為驗(yàn)證算法在實(shí)際應(yīng)用中的有效性,除星歷誤差外引入多種誤差源,進(jìn)行蒙特卡洛仿真分析,誤差項(xiàng)及數(shù)值如表2所示。
表1 Bennu開普勒軌道信息(時(shí)間:59000.0 MJD)
表2 誤差源及誤差值
為對(duì)比本文提出的算法與其他算法的相對(duì)導(dǎo)航效果,在不施加機(jī)動(dòng)的情況下,分別采用EKF算法、UKF算法、不含協(xié)方差匹配的AUKF算法以及含協(xié)方差匹配的AUKF算法(本文提出的完整算法)進(jìn)行仿真。目標(biāo)小行星在J2000日心黃道坐標(biāo)系的初始位置為[-50119639522.77,130393530773.86,13960229459.83]m,初始速度為[-32208.87,-8047.33,-730.88]m/s,任務(wù)飛行器的初始位置為[-50183158838.61,130466720546.96,13974363604.73]m,初始速度為[-27784.43,-13118.19,-1716.38]m/s。在計(jì)算濾波器的初值時(shí),目標(biāo)小行星的初始位置和速度由小行星星歷主值計(jì)算得出,任務(wù)飛行器的初始位置和速度根據(jù)真實(shí)位置設(shè)置測(cè)控誤差,誤差大小如表2所示。本文中采用的濾波初值為[-97946239.90,-241607.05,88444.30,6801.47,0.00,0.00]。濾波器的參數(shù)設(shè)置一致。系統(tǒng)狀態(tài)噪聲方差陣Q0=diag(1×105,1×105,1×105,1×102,1×102,1×102),觀測(cè)噪聲方差陣R0=diag(6×10-8,7×10-8),初始狀態(tài)誤差方差陣P0=diag(1×108,1×106,1×106,1×102,1×102,1×102),濾波步長(zhǎng)為5s,其他參數(shù)按上文推薦取值給定。由于飛行器沿視線方向不可觀測(cè),在濾波不發(fā)散的情況下,該方向的位置和速度的變化趨勢(shì)與按照初始值遞推一致。故僅列出Y軸和Z軸方向的濾波結(jié)果,如圖4、5所示。
圖4 B平面坐標(biāo)系下位置估計(jì)誤差
圖5 B平面坐標(biāo)系下速度估計(jì)誤差
由圖4、5可以看出,EKF算法隨著濾波時(shí)間的增加,累計(jì)的誤差變大,出現(xiàn)了發(fā)散的情況;UKF算法由于預(yù)先給出的噪聲統(tǒng)計(jì)特性存在偏差,估計(jì)精度較差;引入噪聲估計(jì)器后,濾波精度提高,但是收斂速度變慢;利用協(xié)方差匹配的思想進(jìn)行修正,濾波收斂時(shí)間從約2000s減小至約1000s。交會(huì)前300s,y、z方向的位置濾波誤差為6.89m和0.19m,速度濾波誤差為0.0016m/s和0.00028m/s。本文提出的相對(duì)導(dǎo)航算法具有快速、高精度的特點(diǎn)。
在上述條件下對(duì)本文給出的僅測(cè)角導(dǎo)航模型相對(duì)導(dǎo)航和投影脫靶量制導(dǎo)算法進(jìn)行仿真驗(yàn)證,飛行器質(zhì)量800kg,推力大小為5N,交會(huì)前兩分鐘停止控制。制導(dǎo)過程中,B平面坐標(biāo)系下垂直于視線方向的投影脫靶量的估計(jì)值和真實(shí)值變化如圖6所示。進(jìn)行200次蒙特卡羅仿真驗(yàn)證,最終交會(huì)誤差散布圖如圖7所示。最終交會(huì)誤差的均方差3σ=5.22m,最大交會(huì)誤差為6.3m。
圖6 末制導(dǎo)階段飛行器與導(dǎo)航濾波器表現(xiàn)情況
圖7 B平面內(nèi)命中點(diǎn)散布圖
小行星防御中的目標(biāo)尺寸更小、目標(biāo)軌道預(yù)報(bào)精度更低、交會(huì)精度要求更高等問題對(duì)相對(duì)導(dǎo)航的估計(jì)精度和制導(dǎo)精度提出了更高要求。本文首先采用B平面坐標(biāo)系作為相對(duì)導(dǎo)航坐標(biāo)系,分離出不可觀的信息,建立僅測(cè)角導(dǎo)航的系統(tǒng)狀態(tài)方程及觀測(cè)方程。由于觀測(cè)方程為非線性方程,本文以UKF算法作為基礎(chǔ)濾波算法,避免了線性化后帶來的截?cái)嗾`差??紤]系統(tǒng)方程含有未知統(tǒng)計(jì)特性的噪聲,將Sage-Husa噪聲估計(jì)器推廣到非線性形式,對(duì)未知噪聲進(jìn)行在線估計(jì)。針對(duì)Sage-Husa算法對(duì)濾波穩(wěn)定性及快速性帶來的影響,采用協(xié)方差匹配思想和奇異值分解方法,加快濾波收斂,提高濾波的穩(wěn)定性并且保證算法不失效。其次利用相對(duì)導(dǎo)航濾波結(jié)果,建立了引力差產(chǎn)生的相對(duì)加速度的常值模型,計(jì)算考慮相對(duì)加速度的投影脫靶量,并設(shè)計(jì)了基于投影脫靶量的制導(dǎo)指令計(jì)算方法。最后利用典型小行星防御任務(wù)場(chǎng)景進(jìn)行算法精度驗(yàn)證。由計(jì)算機(jī)仿真結(jié)果表明,本文建立的模型及濾波算法可以對(duì)可觀測(cè)坐標(biāo)軸方向的狀態(tài)進(jìn)行快速準(zhǔn)確估計(jì)?;谕队懊摪辛康闹茖?dǎo)算法,在復(fù)雜引力環(huán)境下,能夠?qū)崿F(xiàn)5.22m(3σ)的交會(huì)精度。本文的相關(guān)研究,能夠?yàn)槲覈?guó)未來小行星防御任務(wù)相對(duì)導(dǎo)航與制導(dǎo)系統(tǒng)的設(shè)計(jì)提供一定的參考和理論依據(jù)。