(北京控制工程研究所,北京 100094)
目前我國大多數(shù)航天器仍采用地面遙控遙測的控制方法,地面飛控人員預先設計航天器的飛行程序,編排飛行事件,據(jù)此生成航天器的在軌注入指令。在執(zhí)行飛控任務時,以指令序列的形式將指令批量發(fā)送至航天器,通過地面遙測信息確認指令的執(zhí)行情況和各部件的狀態(tài)。對深空探測航天器而言,由于遠距離產(chǎn)生的通信延遲,這種傳統(tǒng)的控制方式無法滿足對觀測信息處理和決策的實時要求[1-2]。以月球探測飛行器為例,與地面之間的往返時延是高軌道航天器的10倍以上,且只有當被探測的月面區(qū)域處于地面測控站測控區(qū)間內(nèi)時才能與地面站建立通信鏈路。另外,由于飛行距離遠、任務時間長、環(huán)境未知性較強等因素,導致對探測器的可靠性和生存能力也提出了更高要求。
以美國NASA“新盛世”計劃“深空一號(DS-1)”飛行任務中自主管理技術的成功應用為代表,航天器自主管理技術使解決該問題成為可能[3-5]。DS-1具有很強的自主能力,能夠自主執(zhí)行拍照序列規(guī)劃、圖像處理和分析、軌道和姿態(tài)確定、軌道修正等任務,如軌道修正和圖像處理等過去需要大量人員參與的任務都由器上自主完成,甚至不需要地面確認結果,相比Cassini、Galileo項目,地面導航小組人員數(shù)量由7~10人降低至4~5人。NASA在DS-1的基礎上,又先后在對地觀測項目(EO-1)和火星探測項目中進行應用[6-7],指揮人員只需向航天器發(fā)送高級的、抽象的任務目標,航天器就能根據(jù)接收的任務和自身的狀況產(chǎn)生出合理的行動序列。當遇到突發(fā)情況時,航天器還能自主調(diào)整任務目標,以適應突發(fā)情況。
航天器自主管理系統(tǒng)的主要功能包括:自主任務規(guī)劃、自主故障診斷及系統(tǒng)重構、自主生成指令序列等。目前,國外典型的航天器自主控制系統(tǒng)都采用了基于遠程智能體(Remote Agent,RA)的自主管理體系架構[8]。該體系架構主要具有自主規(guī)劃和診斷的能力:① 自主規(guī)劃旨在降低深空探測任務對地面站操控的依賴,以提高實時控制能力和故障應對能力,保證在軌長期穩(wěn)定運行;② 自主故障診斷是通過自主管理軟件對比模型預期和系統(tǒng)實際間的差異,從而發(fā)現(xiàn)故障。例如,NASA開發(fā)的Livingstone軟件系統(tǒng)是一個基于定性模型的故障診斷和恢復引擎,實現(xiàn)了在線故障診斷功能[8-11]。
隨著以月球探測工程和天問一號火星探測為代表的深空探測任務順利實施,小行星及其他行星等探測任務逐步進入關鍵技術攻關階段,其對航天器自主管理能力提出了更為迫切的需求[12]。本文結合我國深空探測航天器控制系統(tǒng)信息體系結構現(xiàn)狀,對未來深空探測航天器自主管理體系結構和軟件架構進行了探討。
借鑒國外航天器遠程智能體的設計思想,我國深空探測器控制系統(tǒng)由自主管理功能模塊和傳統(tǒng)控制軟件兩部分構成,其關系如圖1所示。自主管理體系結構可由以下3個功能模塊組成,即規(guī)劃和調(diào)度模塊、故障診斷和重構模塊及智能執(zhí)行模塊。
規(guī)劃和調(diào)度模塊負責平衡規(guī)劃目標和約束條件的矛盾沖突,將高級命令分解成低級指令,從而確保規(guī)劃結果滿足航天器資源約束。
深空探測器是一個包括時間和資源信息等多種約束的復雜系統(tǒng),例如,它包括調(diào)度問題中的時間約束、具有不同時間區(qū)間和資源的活動、優(yōu)化問題等,還包括規(guī)劃問題中的活動選擇,因此它既具有規(guī)劃特性又具有調(diào)度特性。隨著規(guī)劃技術和人工智能技術的結合,航天器自主任務規(guī)劃技術逐漸形成兩大分支,即以動作為核心的傳統(tǒng)規(guī)劃和以狀態(tài)為核心的時間線規(guī)劃。
圖1 深空探測航天器自主管理系統(tǒng)框圖
傳統(tǒng)規(guī)劃規(guī)劃方法主要以處理動作邏輯順序為主體,包括圖規(guī)劃、鄰域無關的啟發(fā)式搜索、類經(jīng)典規(guī)劃等。傳統(tǒng)規(guī)劃技術發(fā)展較為完善、算法效率高,在機器人規(guī)劃、生產(chǎn)車間調(diào)度等多個領域得到應用,其缺點是無法簡潔直觀地表述航天領域任務規(guī)劃的顯著時間特性和復雜約束關系,易造成建模的不精確和知識搜索空間增大[13]。
時間線規(guī)劃是以處理時序狀態(tài)約束為主體,通過時間線顯示探測器控制系統(tǒng)狀態(tài)變化和約束關系,在一定程度上彌補了傳統(tǒng)規(guī)劃技術的不足,更適合未來深空探測技術的發(fā)展趨勢。
規(guī)劃和調(diào)度模塊的設計思想是通過使用狀態(tài)時間線知識表示方法實現(xiàn)基于航天器模型、活動約束和飛行規(guī)則的航天器自主任務規(guī)劃。規(guī)劃系統(tǒng)通過使用等級分解和重復修補的方法,將高級的狀態(tài)變量描述為一條時間變化線,并用標志(Token)來描述一個時間線上的具有一定時間區(qū)間的狀態(tài)常量。規(guī)劃算法通過放置這些標志,使其滿足所有的資源和時間約束。規(guī)劃系統(tǒng)使用時間窗口表示標志的開始和結束時間點,在創(chuàng)建和執(zhí)行調(diào)度時都給系統(tǒng)帶來了很大的靈活性。圖2給出以軌道控制為例進行自主規(guī)劃的示例。軌道控制是將航天器由原來軌道轉(zhuǎn)變?yōu)槠谕壍浪M行的控制;軌控發(fā)動機開機前通常需要進行預熱等準備工作,實現(xiàn)軌道控制首先要進行姿態(tài)調(diào)節(jié)(由姿態(tài)a調(diào)至姿態(tài)b),使軌控發(fā)動機推力矢量方向與期望指向相同,根據(jù)指令進行發(fā)動機點火(開機200 s),到達預期速度增量后發(fā)動機關機,待姿態(tài)穩(wěn)定后,恢復軌控初始姿態(tài)(由姿態(tài)b調(diào)至姿態(tài)a)。
故障診斷和重構模塊采用基于探測器模型的診斷方法,跟蹤航天器上控制系統(tǒng)的執(zhí)行情況,并基于智能執(zhí)行模塊的指令以及監(jiān)測模塊的輸出診斷硬件狀態(tài)并反饋給智能執(zhí)行模塊,還可以基于探測器系統(tǒng)總體情況輔助生成容錯策略。
圖2 時間線規(guī)劃示例
故障診斷和重構模塊由離散系統(tǒng)模型和系統(tǒng)狀態(tài)跟蹤算法構成。通過使用一組多層次的定性邏輯模型來描述系統(tǒng)的行為,能夠在最小人工干預的情況下高效、魯棒地完成航天器或者其他復雜系統(tǒng)的故障檢測和診斷任務,并且具有診斷并發(fā)多項故障等諸多功能[14-15]。其推理引擎不僅可以基于定性模型搜索故障,而且可以跟蹤和預報航天器的運行狀態(tài)。它主要由兩部分組成:① 通用診斷引擎(General Diagnostic Engine,GDE),采用命題邏輯和沖突直接搜索的通用設計,包括MI(Mode Identification,模式辨識) 和MR (Mode Reconfiguration,模式重構)兩部分;② 被診斷航天器的定性模型。利用定性表述和命題編輯對不同飛行器診斷對象進行建模。圖3為故障診斷和重構工作過程示意圖。
圖3 故障診斷和重構工作示意圖
智能執(zhí)行模塊負責管理遙控指令接收,發(fā)起規(guī)劃申請,根據(jù)規(guī)劃結果生成控制軟件的指令序列,并根據(jù)指令執(zhí)行結果決定是否發(fā)起重新規(guī)劃。
參照圖1所示的系統(tǒng)框圖,表1給出了飛行任務剖面中自主管理各模塊的功能。
將自主管理模塊視為黑盒嵌入到傳統(tǒng)探測器飛行軟件中,如圖4所示。自主管理模塊包括5個軟件接口函數(shù):地面遙控指令接收接口、探測器狀態(tài)監(jiān)測采集接口、規(guī)劃調(diào)度模塊擴展接口和故障診斷專家?guī)鞌U展接口、規(guī)劃指令輸出接口。
表1 自主管理模塊功能說明
圖4 軟件結構圖
由地面發(fā)送“探測器軌道入射”高級遙控指令,探測器接收到地面遙控指令后發(fā)送給智能執(zhí)行模塊,智能執(zhí)行模塊負責向規(guī)劃和調(diào)度模塊發(fā)起規(guī)劃申請,規(guī)劃和調(diào)度模塊根據(jù)約束條件進行規(guī)劃,規(guī)劃完成后將結果發(fā)送給智能執(zhí)行模塊。智能執(zhí)行模塊監(jiān)測到生成規(guī)劃結果后,將規(guī)劃結果生成指令序列發(fā)送給飛行軟件。智能執(zhí)行模塊根據(jù)飛行軟件反饋數(shù)據(jù)或者故障診斷和重構模塊(Mode Identification and Reconfiguration,MIR)推斷結果來確定指令是否正確執(zhí)行。若監(jiān)測指令執(zhí)行失敗,智能執(zhí)行模塊會采用替代方案或者由故障診斷和重構模塊重構方案再次申請規(guī)劃。如果智能執(zhí)行模塊無法執(zhí)行或修復當前規(guī)劃,則取消規(guī)劃,清除執(zhí)行指令,將控制系統(tǒng)進入安全模式。軟件執(zhí)行時序如圖5所示。
圖5 軟件執(zhí)行時序
以深空探測器行星軌道入射為場景,在Visual Studio開發(fā)環(huán)境中搭建閉環(huán)仿真系統(tǒng),對探測器自主管理技術的實現(xiàn)進行某些任務功能性初步仿真實驗。深空探測器由巡航段轉(zhuǎn)入環(huán)繞段的軌道入射任務通常需要執(zhí)行以下幾個步驟。
① 變軌前自主進行敏感器標定、校準。
② 自主執(zhí)行自主導航任務以精確確定探測器軌道。
③ 根據(jù)導航結果自主執(zhí)行制導律,計算軌控姿態(tài)、軌控速度增量。
④ 自主進行姿態(tài)機動、控制天線指向,向地面下傳導航信標星和目標星圖像信息。
⑤ 變軌前保持對日姿態(tài),控制帆板對日。
⑥ 軌控發(fā)動機預熱。
⑦ 變軌姿態(tài)調(diào)整至預定指向、帆板自主控制。
⑧ 軌控發(fā)動機開機,自主進行姿態(tài)控制,監(jiān)測軌控速度增量、發(fā)動機狀態(tài)。
⑨ 速度增量到達自主關閉軌控發(fā)動機。
⑩ 姿態(tài)穩(wěn)定后恢復對日指向。
深空探測器行星軌道入射任務可描述為一組時間線,每條時間線上根據(jù)時間關系排列著探測器對應子系統(tǒng)的狀態(tài),多組時間線共同定義了探測器在工作過程中的活動流程。通過自主規(guī)劃模塊將這些標志在各自的時間線上進行排列,使其滿足時間、資源和飛行安全規(guī)則的約束限制。任務規(guī)劃的結果如圖6所示。
圖6 任務規(guī)劃結果
圖7~圖9為軌控發(fā)動機開機期間分別注入發(fā)動機故障時,軌控過程中姿態(tài)控制及軌控速度增量仿真曲線??梢钥闯鲕壙厮俣仍隽勘3忠欢螘r間不變后,航天器自主診斷出發(fā)動機故障,切換發(fā)動機組后,繼續(xù)進行正常軌控直到軌控速度增量遞減到0 m/s結束。
筆者結合國外深空探測航天器自主管理技術的發(fā)展,提出未來我國航天器控制系統(tǒng)自主管理體系結構,通過仿真實驗表明采用以“規(guī)劃和調(diào)度”和“故障診斷和重構”為內(nèi)核的自主管理軟件架構,可有效解決航天器在軌應對能力、提升飛控實效性需求,且對現(xiàn)有控制系統(tǒng)信息體系結構具有較好的兼容性。在此基礎上,后續(xù)將進一步通過構建應用任務域模型,研究基于狀態(tài)的自主規(guī)劃方法和基于深度神經(jīng)網(wǎng)絡構建控制系統(tǒng)知識庫的可行性,從而提升故障診斷系統(tǒng)性能以及普適性。
圖7 軌控姿態(tài)角控制
圖8 軌控角速度控制
圖9 軌控速度增量