錢華明,孫 龍,蔡佳楠,黃 蔚
(哈爾濱工程大學(xué)自動化學(xué)院,150001哈爾濱)
精確的姿態(tài)信息是航天器完成航天任務(wù)的基礎(chǔ).能夠提供姿態(tài)信息的測量器件有很多,但是精度最高應(yīng)用最廣泛的是星敏感器.星敏感器的姿態(tài)確定過程分星空成像、星點提取、星圖識別和姿態(tài)計算4個步驟.其中星圖識別是星敏感器姿態(tài)確定的決定性階段.對于星敏感器而言,星圖識別的實質(zhì)就是尋找觀測星圖中觀測星在導(dǎo)航星表中對應(yīng)的導(dǎo)航星[1].
隨著星敏感器的發(fā)展,出現(xiàn)了許多的星圖識別算法.Padgett和Kreutz-Delgado等將星圖識別算法劃分為兩種類型[2].第一種類型是子圖同構(gòu)類算法,這類算法把觀測星圖看成是全天星圖的子圖,將星點作為頂點,利用星點的星等和它們之間的角距等信息,以線段、三角形、多邊形等作為基本元素來進行星圖識別[3].其中最具代表性的有三角形算法[4]、匹配組算法[5].另一種類型是模式識別類算法,這種算法為每顆星構(gòu)造一個獨一無二的特征“星模式”,這樣星圖識別的實質(zhì)就是在星表中尋找與觀測星模式相近的導(dǎo)航星.其中,比較有代表性的有柵格算法[2]、基于統(tǒng)計特征的識別算法[6].
在這兩類算法中,三角形算法的應(yīng)用最廣泛.然而三角形算法容易受到噪聲的干擾,對噪聲的魯棒性較差,因此只能適用于噪聲水平較低的情況.文獻[7]針對各種噪聲對比了三角形算法、匹配組算法與柵格算法,結(jié)果表明柵格算法的噪聲魯棒性要遠(yuǎn)遠(yuǎn)高于三角形算法和匹配組算法.然而柵格算法要求視場中觀測星的數(shù)目不小于6顆[8],這就限制了該算法在小視場、低星等敏感極限星敏感器中的應(yīng)用.文獻[9-10]中介紹了一種擴充星圖的方法,利用陀螺的輸出和前一時刻的識別信息將星圖進行擴充,使得星圖中星點數(shù)目增加,從而達到算法要求的限度.然而擴充星圖法在星圖識別階段采用的是三角形算法,因此無法擺脫三角形算法本身的缺陷,容易受到噪聲的影響.星敏感器本身存在著暗電流噪聲、畸變噪聲等,同時在航天器執(zhí)行任務(wù)時會不可避免地受到環(huán)境的影響從而引入一定的噪聲,在這種情況下,擴充星圖算法的使用會受到很大的限制.
若將擴充星圖的思想與柵格算法結(jié)合,利用擴充星圖的方法來獲取更豐富的星點信息,利用柵格算法進行星圖識別,既能夠打破柵格算法的限制,又可以利用柵格算法在星圖識別階段提高算法對噪聲的魯棒性,增加星圖識別成功率,這就是本文的擴充柵格算法.與現(xiàn)有的擴充星圖方法相比,擴充柵格算法能夠繼承柵格算法優(yōu)勢,擁有更好的噪聲魯棒性,更加適用于噪聲水平較高的復(fù)雜環(huán)境.不管是擴充星圖法還是本文的擴充柵格法都用到了陀螺的輸出信息,因此擴充星圖中必定存在由陀螺漂移引入的噪聲,研究這些噪聲對星圖識別的影響是十分必要的.這是原始擴充星圖法中忽略的一項,在本文中對其進行了詳細(xì)的分析并在仿真環(huán)節(jié)進行了驗證.
新算法用到了陀螺的輸出和前一時刻的識別結(jié)果,不屬于全天識別算法,文獻[11]將這種類型的算法命名為遞歸模式算法,這種模式的算法適用于星敏感器的跟蹤模式.因此,為了使得整個星圖識別過程完整地運行,在初始姿態(tài)捕獲模式本文選用了Pyramid算法,這種算法解決了太空迷失問題(lost in space),已經(jīng)被成功地應(yīng)用到實際飛行器中[12].
原始的柵格算法柵格圖像生成過程見圖1,具體執(zhí)行步驟[2,7]:1)從拍攝星圖中選取一顆星作為待識別星(參考星又叫主星),然后將其連同其鄰域半徑pr一起移動,使得其移動到視場中央.2)決定近鄰星,近鄰星是在參考星鄰域半徑pr之內(nèi),半徑br以外離參考星最近的星.3)以參考星和近鄰星連線為基準(zhǔn),以主星為中心旋轉(zhuǎn)星圖,使得星圖的x軸穿過近鄰星.4)生成g×g柵格,得到一個有g(shù)2個元素的矢量,有伴星的網(wǎng)格為1,否則為0,從而得到一個參考星的星模式s=[a1a2…am].
圖1 原始柵格算法
將參考星的星模式與存儲在數(shù)據(jù)庫中的星模式進行對比,若與星庫中第i顆星的星模式的相同元素數(shù)目超過門限值ξ,則認(rèn)為兩顆星匹配.若任意視軸下匹配星的數(shù)目超過兩顆,則認(rèn)為此次星圖識別成功.
從柵格的形成過程可以看出,近鄰星的緩沖半徑br和星圖某一坐標(biāo)軸方向上的柵格數(shù)目g控制柵格的形成過程,從而決定柵格算法的性能.若g較大,則每個柵格就較小,此時位置噪聲對算法的影響較大.但是g較大時能夠保證星圖中的星點充分被利用,使得一個是柵格中出現(xiàn)多顆星的概率降低,星模式有足夠多的維數(shù)進行匹配.但是,如果g太大,柵格算法的計算量將會大大增加,更嚴(yán)重的是星點可能出現(xiàn)在多個柵格中,使得誤匹配的概率增加.反之g減小,則每個柵格將會變大,噪聲對算法的影響隨之減小.然而,當(dāng)g變小的時候,一個柵格中出現(xiàn)多顆星的概率將會升高.如果g過小,會使得星模式維數(shù)太低,達不到正常識別的要求.同理,br變大會使得算法對噪聲的魯棒性變強,但是br太大會使得近鄰星出現(xiàn)在視場之外的幾率增加,使得近鄰星的選擇成功率降低,這將會直接影響到算法的星圖識別成功率.因此,在小視場的星敏感器使用中,需要統(tǒng)計星點在視場中的分布情況,然后根據(jù)統(tǒng)計結(jié)果來設(shè)置柵格數(shù)目g和緩沖半徑br.
在某些情況下為了滿足低功耗、小體積的條件,星敏感器的視場一般被設(shè)置得很小,Nano-JASMINE就是一個典型實例[13].在這種情況下,不能保證每次都能捕獲到兩顆以上的恒星,因此星圖識別的過程就不能正常進行,下面介紹一種利用擴充星圖進行星圖識別的方法[8-9],具體步驟:1)t時刻星圖識別成功后,計算載體的姿態(tài),利用姿態(tài)信息分析星圖中沒有被用來進行星圖識別的星點,并記錄它們的位置.2)利用得到的姿態(tài)信息和陀螺輸出的測量信息估計t+1時刻步驟1中記錄的星點的位置,如果在t+1時刻星點位置不在預(yù)測星圖中,則按照圖2所示的擴充星圖法將視場擴充.3)當(dāng)星敏感器在t+1時刻得到拍攝星圖時,將其與步驟2預(yù)測星圖中的星利用三角形算法進行識別,若識別成功的星點數(shù)目不小于2,利用識別成功的恒星計算載體姿態(tài),否則跳到下一步.4)識別擴充視場中的恒星,若失敗,則整個星圖識別失敗.
圖2 擴充星圖法
上述擴充星圖的方法,將星圖擴充之后能夠得到更豐富的星點信息.這種方法實際上跟增大星敏感器視場起到的效果相同.因此為了更加的直觀,本文將其加以改變,變?yōu)閿U充視場的方法,假設(shè)實際視場大小為θR×θR,擴充后的視場大小為θE×θE,算法流程見圖3,算法步驟:1)t時刻星圖識別成功后,計算載體的姿態(tài).2)在t+1時刻利用得到的姿態(tài)和陀螺的輸出信息計算視軸的方向矢量P.利用P從星表中選擇落入視場θE×θE中的恒星,生成t+1時刻的模擬星圖A.此模擬星圖包括模擬真實星圖和擴充星圖兩部分,如圖4所示.3)敏感器在t+1時刻拍攝到的為星圖B,將星圖A和B組合并刪除星圖A中真實模擬星圖中的星點,從而生成星圖C,如圖4所示.4)從星圖C中的真實視場中選擇待識別星,使用柵格算法進行識別.
圖3 算法流程
圖4 擴充柵格算法
從上述步驟可以看出,在星圖識別階段使用的是柵格算法,它的噪聲魯棒性要優(yōu)于現(xiàn)有擴充星圖法中的三角形算法.同時通過將視場進行擴充可以得到更多的星點信息,從而達到柵格算法的要求.傳統(tǒng)柵格算法使用查找表進行星模式的查找和匹配,在參考星表較大的情況下效果很好.但是擴充柵格算法用于跟蹤模式,不需要建立參考星表,因此本文用圖5所示的方法構(gòu)造星模式:每一個柵格分配一個數(shù)字,最后記錄有伴星的柵格分配到的數(shù)字;將這些數(shù)字組成一個矢量,這個矢量就可以看作參考星的星模式.
圖5 星模式的構(gòu)造
由于陀螺漂移的存在,使用陀螺信息生成的模擬星圖中必定引入了因陀螺漂移而產(chǎn)生的位置噪聲.研究該噪聲對星圖識別算法的影響是十分必要的.
為簡化計算,假設(shè)星敏感器與載體之間的安裝矩陣為單位陣且陀螺捷聯(lián)安裝在載體的三軸上.假設(shè)在t時刻,星點在像平面的位置為(xtc,.如圖 6 所示,ωx、ωy、ωz分別為載體三軸的轉(zhuǎn)動角速度,由ωy引起的星點移動速度為v1且沿x軸反方向;由ωx引起的星點移動速度為v2且沿y軸方向;由ωz引起的移動速度可分解為沿著x軸的負(fù)方向速度v3和沿著y軸的正方向速度v4.則星點的移動速度可以表示為[14]
式中:f為星敏感器光學(xué)系統(tǒng)的焦距.
根據(jù)式(1)可以得到t+δt時刻星點的位置為
當(dāng)δt較小時,有
陀螺的測量模型可以簡化為ω=ωr+b+η,其中ωr為真實角速度;b為陀螺常值漂移;η為陀螺隨機測量噪聲,將其代入上式,則得
則由陀螺測量噪聲引起的星點位置誤差為
假設(shè)3個陀螺相同,bx+ηx=by+ηy=bz+ηz=b+η,那么由陀螺測量噪聲引入的總的星點位置誤差為
假設(shè)星敏感器誤差引起的星點位置噪聲為δps像素.若新方法在星點位置噪聲為δp+δps時仍能保證較高的星圖識別成功率,則能夠說明新算法對陀螺噪聲有較強的魯棒性.
圖6 星點移動示意
仿真中所用的基本星表是第谷第二星表(Tycho-2),從中選取星等亮度大于 8.0的星42 057顆組成導(dǎo)航星表.
由于各種噪聲的存在,星敏感器不能夠完美地呈現(xiàn)星空.因此,為了模擬真實情況下的星圖識別過程,用兩種形式的高斯白噪聲對所有的噪聲進行模擬.第 1種是星等噪聲 MN(magnitude noise),由恒星亮度的變化引起.第2種是星點的位置噪聲PN(position noise),由星敏感器噪聲和陀螺測量噪聲引起,測量單位為像素.另外,由于恒星的自行、測量誤差等因素的存在,星表中也存在噪聲.對于大視場星敏感器而言,與其他噪聲相比星表噪聲非常小,可以忽略不計.然而,對于本文使用的小視場星敏感器,星表噪聲是需要考慮的一個因素,因此在本文中星表噪聲也用MN和PN來表征.圖7、8分別描述了星敏感器拍攝星圖和擴充法中用到的模擬星圖的模擬方法.
圖7 拍攝星圖的模擬方法
圖8 模擬星圖的模擬方法
根據(jù)1.1節(jié)的敘述,需要根據(jù)星點在星圖中分布的統(tǒng)計結(jié)果來設(shè)置柵格數(shù)目g和緩沖半徑br.選取星敏感器視場大小為4°×4°,星等敏感極限為7.5,圖9為10 000次隨機視軸指向星點之間角距分布的統(tǒng)計結(jié)果.
圖9 視場中星點角距分布統(tǒng)計
根據(jù)統(tǒng)計結(jié)果,星點之間的角距在0~0.1°之間的概率為 0.17%,在 0.1~0.2°之間的概率為0.67%,在 0.2~0.3°之間的概率為 1.02%.則角距分布在 0~0.2°之間的概率為 0.17%+0.67%=0.84%,因此選取柵格大小為0.2°.選取擴充視場大小為 8°×8°,像平面像素為 1 024×1 024,則柵格數(shù)目g=8°/0.2°=40.同理選擇緩沖半徑br=0.3°,約為40像素.其他仿真參數(shù)設(shè)置:星表星等噪聲為0.1像素,位置噪聲為0.1像素,陀螺常值漂移為 1°/h,隨機漂移為 0.5°/h.
本文的仿真中分為兩個部分,第1部分是在不同噪聲環(huán)境下本文的擴充柵格算法與現(xiàn)有的擴充星圖法的對比,第2部分是算法性能的全面驗證.
圖10為星敏感器星等噪聲為0.2像素時擴充柵格算法和擴充星圖法的星圖識別成功率隨著位置噪聲變化的曲線.
圖10 識別成功率隨位置噪聲變化曲線
圖11為位置噪聲為0.3像素時擴充柵格算法和擴充星圖法的星圖識別成功率隨著星等噪聲變化的曲線.
圖11 識別成功率隨星等噪聲變化曲線
由圖10、11可見,隨著星等噪聲和位置噪聲的增加,現(xiàn)有的擴充星圖法由于在星圖識別階段用的是三角形算法,所以其噪聲魯棒性較差,導(dǎo)致星圖識別成功率迅速降低.而由于擴充柵格法用的是魯棒性較強的柵格算法,其識別成功率明顯優(yōu)于擴充星圖法.
下面對擴充柵格算法的性能進行全面的驗證,一般用如下3項指標(biāo)評價星圖識別算法的性能:1)算法在不同噪聲環(huán)境下的星圖識別成功率.2)算法平均進行一次成功識別所用的時間.3)算法數(shù)據(jù)庫對內(nèi)存的要求.
隨著微電子技術(shù)的發(fā)展,大容量小體積的存儲器件不斷出現(xiàn),內(nèi)存的需求對星圖別算法的限制越來越小,因此本文不考慮這方面的因素.由于新算法用到了陀螺信息,由式(6)可知星敏感器的更新周期會影響陀螺引入的位置噪聲.因此本文添加一項星敏感器更新周期對算法識別成功率的影響.首先,當(dāng)星敏感器更新周期為1 s時,在10 000次隨機視軸的仿真中,新算法星圖識別成功率與位置噪聲標(biāo)準(zhǔn)偏差之間的關(guān)系曲線見圖12.
圖12 星圖識別成功率
由圖12可見,當(dāng)位置噪聲小于1像素時,新算法的星圖識別成功率大于97.4%.同時還注意到一點,當(dāng)位置噪聲為0時,星圖識別成功率也達不到100%.因為有時星敏感器只能捕獲到一顆或者兩顆星,這時成功識別兩顆星的概率會大大降低.在上述仿真條件下,10 000次隨機視軸仿真中,星敏感器捕獲星數(shù)目的統(tǒng)計結(jié)果見表1和圖13.星敏感器捕獲到小于兩顆星的概率為0.6%,而星圖識別過程成功的要求是至少成功匹配兩顆星.因此即使所有誤差都不存在,星圖識別的成功率也只有99.4%.但是,這并不能代表本文的算法不夠優(yōu)秀,從表中可以發(fā)現(xiàn),星敏感器捕獲不小于6顆星的概率為79.71%,即傳統(tǒng)算法即使在所有噪聲都為零時,星圖識別成功率也只能達到79.71%,而本文算法在位置噪聲為1像素的情況下仍能夠達到97.4%.能夠取得這么高的成功率,除了視場擴充帶來更豐富的星點信息之外,近鄰星選擇成功率的提高也是一個很重要的因素.傳統(tǒng)方法近鄰星的選擇成功率最高只有52.2%,而本文算法近鄰星成功率最大可達到86.7%,如圖14所示.主要原因是,新算法的參考星是從真實星圖中選擇,而真實星圖在整個擴充后的星圖的中央,因此參考星的近鄰星不會出現(xiàn)在擴充后星圖的邊緣,使得近鄰星出現(xiàn)在星圖外的概率大大降低.
表1 星敏感器捕獲星數(shù)目統(tǒng)計
圖13 星敏感器捕獲星數(shù)目的統(tǒng)計概率
圖14 新算法近鄰星選擇成功率
假設(shè)星敏感器的更新周期為t,圖15為當(dāng)星敏感器的位置噪聲為0.3像素時,更新周期與星圖識別成功率的仿真結(jié)果.圖16為由陀螺漂移引入的位置噪聲隨更新周期變化的仿真結(jié)果.
圖15 更新周期對星圖識別成功率的影響
圖16 陀螺引入的位置噪聲與更新周期的關(guān)系曲線
由15、16可見,當(dāng)星敏感器更新周期為10 s時,由陀螺漂移引入的位置噪聲約為0.54像素,此時總的位置噪聲為0.84像素,星圖識別成功率為97.6%.而實際上星敏感器的更新頻率為1~10 Hz,即其更新周期小于1 s,因此由陀螺引入的位置噪聲小于0.05像素,這時總的位置噪聲小于0.35像素,星圖識別成功率達到98.2%.因此,考慮到柵格算法對噪聲的強魯棒性,由陀螺漂移產(chǎn)生的噪聲對星圖識別成功率的影響非常小,可以不予考慮.
圖17為星敏感器捕獲星數(shù)目與進行一個星圖識別的平均識別時間之間的關(guān)系.仿真硬件:Pentium(R)CPU E5200,2.49 GHz,計算機系統(tǒng)為Windows XP,所用軟件為 MATLAB,代碼沒有經(jīng)過優(yōu)化.由圖中看出,隨著捕獲星數(shù)目的增加,星圖識別所用時間也隨之增加.但是由于小視場星敏感器一次只能捕獲幾顆星,因此平均識別時間大約為6 ms.
圖17 新方法耗時
另外,本文還將新方法應(yīng)用于低星等敏感極限的星敏感器時,進行仿真,得到了相似的實驗結(jié)果.綜上所述,擴充柵格算法的噪聲魯棒性要優(yōu)于現(xiàn)有擴充星圖法,同時能夠?qū)⒁晥鲞M行擴充,得到足夠的星點信息來進行星圖識別,且在復(fù)雜噪聲環(huán)境中能夠達到很高的識別成功率,是一種適用于小視場或低星等敏感極限的星敏感器的星圖識別算法.
1)提出了一種適用于小視場或低星等敏感極限星敏感器的擴充柵格算法.該算法是基于傳統(tǒng)高魯棒性的柵格算法而建立的,相較于現(xiàn)有擴充星圖法擁有更強的噪聲魯棒性.同時新算法可以通過擴充視場來獲得更多的星點信息,能夠打破原始柵格算法的限制.
2)實驗結(jié)果表明,在星敏感器為小視場或者低星等敏感極限時,擴充柵格法的星圖識別成功率優(yōu)于傳統(tǒng)的擴充星圖法.擴充柵格法的近鄰星識別成功率優(yōu)于傳統(tǒng)的柵格算法.綜合上述優(yōu)勢,該擴充柵格算法在小視場星、低星等敏感極限星敏感器上體現(xiàn)出了較好的技術(shù)性能.
[1]LIEBE C C.Star trackers for attitude determination[J].IEEE Trans on Aerospace and Electronic System,1995,10(6):10-16.
[2]PADGETT C,KREUTZ-DELGADO K.A grid algorithm for autonomous star identification[J].IEEE Trans on Aerospace and Electronic System,1997,33(1):202-213.
[3]張廣軍.星圖識別[M].北京:國防工業(yè)出版社,2011:22-29.
[4]COLE C L.Fast star pattern recognition using spherical triangles[D].Buffalo,NY:State University of New York at Buffalo,2004.
[5]KOSIK J.Star pattern identification aboard an inertially stabilized spacecraft[J].Journal of Guidance,Control and Dynamics,1991,14(1):230-235.
[6] UDOMKESMALEE S,ALEXANDER J,TOLIVAR F.Stochastic star identification [J].Journal of Guidance,Control and Dynamics,1994,17(6):1283-1286.
[7]PADGETT C,KREUTZ-DELGADO K,UDOMKESMALEE S.Evaluation of star identification techniques[J].Journal of Guidance,Control and Dynamics,1997,20(2),259-267.
[8]HO K.A survey of algorithms for star identification with low-cost star trackers [J].Acta Astronautica,2012,73:156-163.
[9]Compact and low-cost advanced star sensor system[R].Tokyo,Japan:Mitsubishi Electric and Electronics,2002:1-12.
[10]HO K,NAKASUKA S.Novel star identification method combining two star trackers with extended FOVs[C]//AIAA Guidance,Navigation,and Control Conference.Toronto,Ontario,Canada:IEEE,2010:1-15.
[11]SAMAAN M A,MORTARI D,JUNKINS J L.Recursive mode star identification algorithms[J].IEEE Trans on Aerospace and Electronic System,2005,41(4):1246-1254.
[12]MORTARI D,JUNKINS L J,SAMAAN M A.Lost-inspace pyramid algorithm for robust star pattern recognition[C]//Proceeding of Guidance and Control 2001.Colorado:Elsevier,2001:1-23.
[13]Scholarpedia.Nano-JASMINE[EB/OL].http://www.space.t.u-tokyo.ac.jp/nanojasmine/Index-e.htm.
[14]XING Fei,CHEN Nan,YOU Zheng,et al.A novel approach based on MEMS-Gyro’s data deep coupling for determining the centroid of star spot[J].Mathematical Problems in Engineering,2012,2012:403584.