王丹 徐進 陳丹
(1 中國空間技術(shù)研究院載人航天總體部,北京 100094)(2 中國空間技術(shù)研究院,北京 100094)
飛行程序是航天器在飛行過程中為實現(xiàn)飛行任務(wù)所執(zhí)行的指令序列,其設(shè)計過程是一個為飛行任務(wù)選擇合適的動作、狀態(tài)、執(zhí)行時間、執(zhí)行條件和資源分配的過程。傳統(tǒng)的飛行程序設(shè)計方法是:由航天器設(shè)計工程師根據(jù)飛行任務(wù)需求及航天器的各種設(shè)計約束條件,通過人工手段設(shè)計出合理的飛行程序;地面飛控實施單位根據(jù)設(shè)計的飛行程序和在軌實時測定軌的結(jié)果,生成向航天器注入的飛行程序,并由航天器研制單位檢查確認后在測控區(qū)內(nèi)向航天器實施注入。由于航天器設(shè)計狀態(tài)的復(fù)雜,一個功能可能需要多個分系統(tǒng)協(xié)同完成,緊急情況下對飛行程序的生成時間有很高的要求,且完成飛行任務(wù)的方案,尤其是故障的處理方案對測控資源有很強的依賴,在航天器飛控任務(wù)中需要投入大量的人力和物力確保飛行程序的實時性和準確性。因此,有必要改進傳統(tǒng)的飛行程序設(shè)計手段,研究更智能、更高效的飛行程序設(shè)計方法。
航天器自主管理是航天器發(fā)展的大趨勢[1],包括自主規(guī)劃、自主導(dǎo)航、自主控制、自主故障診斷等方面,NASA 從20世紀80年代開始研究自主管理技術(shù),并于1999年在深空-1(DS-1)探測器上成功實施了自主管理試驗[2]。DS-1通過自主規(guī)劃和智能執(zhí)行模塊[3]實現(xiàn)了將使命級的高層任務(wù)請求進行規(guī)劃、推理輸出執(zhí)行任務(wù)飛行程序的目的。在DS-1的基礎(chǔ)上,NASA 開發(fā)了連續(xù)行為調(diào)度、規(guī)劃、執(zhí)行與重新規(guī)劃(CASPER)系統(tǒng)[4-7],在對地觀測項目和火星探測項目中應(yīng)用,實現(xiàn)了規(guī)劃的實時修正。國內(nèi)航天器的自主管理水平也在不斷提高,目前已成功實現(xiàn)了自主交會對接,部分小衛(wèi)星通過設(shè)計自主指令的方式實現(xiàn)了一定程度上的自主管理[8],但在自主規(guī)劃方面的應(yīng)用較少,只對航天器自主規(guī)劃的系統(tǒng)框架進行了研究[9-10],并未涉及系統(tǒng)實現(xiàn)的具體方法。本文以執(zhí)行交會對接任務(wù)的載人航天器為應(yīng)用為背景,提出將自主規(guī)劃技術(shù)應(yīng)用于載人航天器的飛行程序設(shè)計,并設(shè)計了自主規(guī)劃系統(tǒng),可減輕地面飛控人員的壓力,進一步提高航天器的自主管理水平。
航天器任務(wù)規(guī)劃的主要目的是根據(jù)用戶級的任務(wù)需求,產(chǎn)生完成任務(wù)需求且滿足各分系統(tǒng)約束條件的飛行計劃,并通過一系列的飛行指令或操作實現(xiàn)飛行計劃,即生成飛行程序。航天器自主規(guī)劃,要求航天器通過一定的算法自動完成從使命級用戶需求到飛行程序的轉(zhuǎn)換處理。一般,自主規(guī)劃系統(tǒng)由知識庫、數(shù)據(jù)庫和規(guī)劃推理機3個部分組成[1],如圖1所示。
圖1 自主規(guī)劃系統(tǒng)模型Fig.1 Autonomous planning system model
知識庫用于描述航天器模型知識,包括航天器的構(gòu)造、功能以及完成各種功能所需要執(zhí)行的動作和滿足的各種約束條件。數(shù)據(jù)庫用于動態(tài)維護航天器的實時狀態(tài),在接受初始狀態(tài)輸入后,根據(jù)飛行過程以及飛行程序的執(zhí)行結(jié)果實時更新。規(guī)劃推理機接收到用戶級的任務(wù)請求后,利用知識庫的航天器模型推理可用于完成任務(wù)的動作,以及搜索對應(yīng)動作的約束條件,將約束條件作為操作符,通過約束傳遞的方式搜索出所有約束條件都滿足的指令序列,約束條件的操作處理要使用的航天器狀態(tài)和資源類信息從數(shù)據(jù)庫中調(diào)取。
以交會對接為目的的載人航天器,每次飛行的主要任務(wù)安排基本是事先確定的,如入軌后要設(shè)置哪些運行狀態(tài)、經(jīng)過幾次軌道機動完成交會、何時對接、何時分離、何時開展哪些在軌試驗等,無法確定的是每個具體動作的執(zhí)行時機,因為這些與飛行軌道、載人航天器自主控制結(jié)果密切相關(guān)。因此,任務(wù)中的飛行程序控制,主要是根據(jù)實時測定軌數(shù)據(jù)計算航天器進出測控區(qū)的時間、交會對接的兩航天器的相對距離等信息,再根據(jù)計算得到的信息生成與上述信息存在嚴格約束的事件指令。已知的任務(wù)安排加上實時的載人航天器狀態(tài)(含軌道)數(shù)據(jù),即是飛行程序設(shè)計的條件。我國的載人航天器飛行程序可分為以下兩部分內(nèi)容。
(1)進出測控區(qū)程序:這部分飛行程序反映的是測控覆蓋情況,其功能是在載人航天器從測控區(qū)外進入測控區(qū)內(nèi)時打開天地鏈路通信設(shè)備,將遙測數(shù)據(jù)從存儲模式切換到下行模式,供地面人員監(jiān)視狀態(tài)。從測控區(qū)內(nèi)到測控區(qū)外時執(zhí)行相應(yīng)的逆過程。進出測控區(qū)飛行程序只與飛行軌道和測站位置相關(guān)。
(2)執(zhí)行具體任務(wù)的事件程序:這部分飛行程序與飛行任務(wù)安排相關(guān),如軌道控制發(fā)動機開關(guān)、太陽翼控制、敏感器切換和飛行模式切換等,每一項任務(wù)又要考慮測控覆蓋條件、航天器運行狀態(tài),即要使用進出測控區(qū)程序中的信息和載人航天器實際運行過程中產(chǎn)生的狀態(tài)信息。
基于上述特點,對于載人航天器,一個高級任務(wù)安排需要由哪些動作序列完成可直接在知識庫中固化,通過知識庫模型描述動作序列的約束條件,規(guī)劃推理只要完成約束條件的操作處理,可簡化規(guī)劃推理的復(fù)雜度。載人航天器的飛行程序管理和數(shù)據(jù)管理,均由數(shù)據(jù)管理分系統(tǒng)的中心計算機完成,航天器的狀態(tài)信息可從該計算機中的數(shù)據(jù)提取,因此載人航天器的自主規(guī)劃系統(tǒng)不用獨立設(shè)置數(shù)據(jù)庫模塊,只要重點設(shè)計知識庫模塊和規(guī)劃推理機。
飛行程序自主規(guī)劃系統(tǒng)(見圖2)由測控覆蓋計算模塊、知識配置模塊和規(guī)劃調(diào)度模塊3個部分組成。
圖2 載人航天器飛行程序自主規(guī)劃系統(tǒng)結(jié)構(gòu)Fig.2 Autonomous planning system structure of manned spacecraft flight procedure
測控覆蓋計算模塊根據(jù)控制分系統(tǒng)提供的載人航天器位置,完成載人航天器與測控區(qū)相對位置的計算,作為規(guī)劃調(diào)度模塊的測控約束輸入條件。知識配置模塊為規(guī)劃系統(tǒng)的基礎(chǔ)模塊,包括指令知識庫和任務(wù)安排庫,是規(guī)劃調(diào)度模塊的知識輸入。其中:指令知識庫根據(jù)載人航天器的設(shè)計狀態(tài),將固定時序關(guān)系的指令封裝成指令集,用計算機可理解的語言描述指令發(fā)送的約束條件;任務(wù)安排庫為事先確定的高層任務(wù)序列。規(guī)劃調(diào)度模塊作為自主規(guī)劃系統(tǒng)的中央模塊,可根據(jù)飛行任務(wù)安排調(diào)用指令知識庫、測控覆蓋計算結(jié)果、載人航天器的實時運行狀態(tài),通過規(guī)劃推理得到滿足各方面約束條件的飛行程序,同時還可進行緊急故障情況下的調(diào)度管理和應(yīng)急飛行程序的生成。
此外,自主規(guī)劃系統(tǒng)還設(shè)置了與其他分系統(tǒng)的數(shù)據(jù)交互接口,可從控制分系統(tǒng)接收載人航天器姿態(tài)軌道數(shù)據(jù)及故障狀態(tài)等相關(guān)信息,從推進、熱控、電源等其他分系統(tǒng)接收相應(yīng)的在軌運行狀態(tài)信息。同時,為增加系統(tǒng)靈活性及保證飛行安全,還設(shè)置了地面直接干預(yù)的接口,可根據(jù)地面飛控人員的需要進行修改或配置。
測控覆蓋計算模塊是根據(jù)控制分系統(tǒng)提供的載人航天器當(dāng)前位置計算其是否在地面站或中繼測控區(qū)內(nèi),并給出進出測控區(qū)的狀態(tài)信息。進出地面站和進出中繼測控區(qū)的計算方法類似,以中繼為例,具體步驟如下。
(1)從控制分系統(tǒng)獲取載人航天器當(dāng)前的軌道位置信息,得到載人航天器在大地直角坐標(biāo)系下的坐標(biāo)。
(2)根據(jù)事先存儲好的中繼衛(wèi)星位置信息,實時計算從當(dāng)前載人航天器指向中繼衛(wèi)星的矢量,以及航天器中繼天線軸向矢量,由兩矢量可計算出載人航天器可見中繼衛(wèi)星的仰角。
(3)對中繼衛(wèi)星觀察載人航天器的仰角進行實時判斷,當(dāng)僅滿足進中繼測控區(qū)的仰角條件時,生成進測控區(qū)的狀態(tài)信息;當(dāng)僅滿足出中繼測控區(qū)的仰角條件時,生成出測控區(qū)的狀態(tài)信息。進出測控區(qū)的仰角閾值,根據(jù)載人航天器的飛行軌道高度計算。
進出地面站與進出中繼測控區(qū)的計算,區(qū)別僅為仰角矢量為地面站指向載人航天器的矢量與指向地面站正上方的矢量夾角。
根據(jù)上述測控覆蓋計算,除了可以給出進出地面站、中繼測控區(qū)的狀態(tài)信息外,還可以得到當(dāng)前載人航天器與每個地面站、中繼衛(wèi)星的相對位置關(guān)系,作為規(guī)劃調(diào)度模塊的測控約束輸入條件。
知識配置模塊是載人航天器自主規(guī)劃要用到的與其任務(wù)、功能相關(guān)的知識,包括指令知識庫和任務(wù)安排庫兩部分。
4.3.1 指令知識庫
飛行程序是由一條條飛行指令組成的,但指令知識庫不是簡單的飛行指令羅列,而是根據(jù)飛行指令的功能、邏輯關(guān)系以及約束條件對飛行指令進行封裝,從而建立規(guī)劃調(diào)度模塊能夠識別并能正確執(zhí)行的飛行指令。指令知識庫中封裝好的指令,是一個個附加有約束條件描述的指令集。
1)指令集定義
載人航天器的動作最終由指令完成,一個動作可能由一條指令獨立完成或多條指令按照固定時序共同完成,為了減少重復(fù)動作對指令的操作,將完成常用動作且存在固定時序關(guān)系的一段指令序列封裝成一個指令集,可將指令集中任意一條指令作為指令相對時的零時刻。完成指令集的封裝后,后續(xù)對指令集的操作等同于單指令。
2)指令發(fā)送條件描述
指令的發(fā)送時機受載人航天器的各種特性所約束,包括載人航天器所處軌道位置的測控覆蓋條件、與其他飛行事件的先后時序關(guān)系、某個特征點時刻、其他分系統(tǒng)狀態(tài)條件等方面,將這些約束條件用計算機可以理解的語言,封裝在指令(集)中,每個指令(集)定義一個指令(集)ID,指令(集)約束條件的描述形式如表1所示。
表1 飛行程序指令發(fā)送約束條件描述Table 1 Constraint conditions of flight procedure command
(1)測控約束用于描述要求載人航天器所處的測控條件,偏移量可取大于等于0 的任意值。如(CM,A,2,0,10)表示進入第2 圈、A 測站、0°仰角后10s的時刻發(fā)送該指令。
(2)協(xié)同約束用于描述指令與指令之間的協(xié)同關(guān)系,偏移量可取任意值。如(CR,LP1,-10)表示LP1指令發(fā)送前10s時刻發(fā)送該指令。
(3)特征點約束用于描述指令與特征點的協(xié)同關(guān)系。特征點包括交會對接的兩航天器相對距離特征點、航天器飛行高度等,在控制分系統(tǒng)中定義,由控制分系統(tǒng)給出特征點取值時刻;偏移量可取任意值。如定義CP001表示兩航天器相對距離100m,(CP,CP001,0)則表示在兩航天器相對距離100m 時刻發(fā)送該指令。
(4)狀態(tài)約束用于描述要求載人航天器各分系統(tǒng)所處的狀態(tài),由各分系統(tǒng)的狀態(tài)參數(shù)取值表征。狀態(tài)參數(shù)取值可由一個或多個參數(shù)進行邏輯運算;偏移量可取大于等于0 的任意值。如(C001==0x01&&B002>4.0,0)表示要求C001參數(shù)取值為0x01,且B002參數(shù)取值大于4.0時發(fā)送該指令。
(5)絕對時間用于地面直接指定指令發(fā)送時刻,在緊急情況需要地面直接干預(yù)時使用。
4.3.2 任務(wù)安排庫
任務(wù)安排庫中設(shè)置的是事先確定好的飛行任務(wù)集合,每個飛行任務(wù)中包含若干飛行指令或飛行指令集。任務(wù)安排庫中的飛行任務(wù),可在每次載人航天器發(fā)射前由地面依據(jù)設(shè)計狀態(tài)或在軌飛行安排進行裝訂。這些飛行任務(wù)既包括正常飛行任務(wù),也包括各種故障或應(yīng)急飛行任務(wù),對于執(zhí)行交會對接任務(wù)的載人航天器而言,主要包括以下兩方面。
(1)正常飛行任務(wù):包括發(fā)射任務(wù)、軌道控制任務(wù)、交會對接任務(wù)、組合體飛行任務(wù)、航天員手控任務(wù)、返回任務(wù)及在軌試驗任務(wù)等。
(2)故障飛行任務(wù):包括應(yīng)急救生任務(wù)、姿態(tài)捕獲任務(wù)、交會對接緊急避撞任務(wù)及應(yīng)急返回任務(wù)等。
規(guī)劃調(diào)度模塊是整個飛行程序自主規(guī)劃系統(tǒng)的核心模塊,可通過啟動測控覆蓋計算,并調(diào)用知識配置模塊中相應(yīng)的任務(wù)安排和對應(yīng)的飛行指令約束條件,完成飛行程序的規(guī)劃,并向各相關(guān)分系統(tǒng)分發(fā)。此外,通過檢測控制、電源、推進、熱控等關(guān)鍵分系統(tǒng)的健康狀態(tài)和飛行狀態(tài),可對出現(xiàn)的各種緊急故障,通過終止當(dāng)前任務(wù),取消后續(xù)飛行指令,調(diào)用故障處置任務(wù),實現(xiàn)飛行程序的動態(tài)管理和調(diào)度。
4.4.1 正常飛行程序規(guī)劃過程
載人航天器正常飛行程序的自主規(guī)劃流程如圖3所示,其主要過程如下。
(1)調(diào)用任務(wù)安排庫,確定當(dāng)前飛行任務(wù),讀取該項任務(wù)的全部指令(集)序列;
(2)從指令知識庫中讀取這些指令(集)的發(fā)送約束條件信息;
(3)將指令(集)的協(xié)同約束條件作為操作符,通過不停地傳遞該項約束,將有協(xié)同約束的指令按照先后關(guān)系排序,產(chǎn)生一個或多個以T0為相對時刻的指令序列,T0可以是測控約束點、特征點或狀態(tài)約束點;
(4)分別從測控覆蓋計算模塊、控制分系統(tǒng)和其他分系統(tǒng)獲取測控約束、特征點約束和狀態(tài)約束的條件信息,計算約束條件滿足的時刻作為T0代入第3步生成的序列;
(5)將上述計算完成的序列與測控覆蓋計算模塊的進出測控區(qū)序列,按照指令執(zhí)行時刻排序,并進行綜合修正,即得到完整的飛行程序序列。
圖3 正常飛行程序自主規(guī)劃流程Fig.3 Autonomous planning flow for normal flight procedure
4.4.2 緊急故障處理
對于載人航天器,在發(fā)射、交會對接或返回過程中出現(xiàn)的部分故障,若處理不及時可能會危及飛行安全,甚至航天員的生命安全。例如,在返回過程中,當(dāng)控制分系統(tǒng)出現(xiàn)暫時故障須中止返回時,若后續(xù)飛行程序仍執(zhí)行艙段分離操作,將帶來不可逆轉(zhuǎn)的嚴重后果。針對這些緊急故障,首先要求與該類故障相關(guān)的飛行事件均安排在測控區(qū)內(nèi)執(zhí)行,且在有限的地面測控弧段限制下,要求地面人員迅速做出故障判斷和處理決策。
針對該項需求,規(guī)劃調(diào)度模塊增加了與控制、電源、推進等關(guān)鍵分系統(tǒng)的多個信息交互接口,這些分系統(tǒng)將不健康狀態(tài)或故障模式以故障碼的形式給出,規(guī)劃調(diào)度模塊收到編碼后,依據(jù)事先制定好的故障預(yù)案或處理策略進行故障處理,實現(xiàn)飛行程序的動態(tài)規(guī)劃和調(diào)度。當(dāng)出現(xiàn)緊急突發(fā)故障或未預(yù)料的故障時,規(guī)劃調(diào)度模塊將會刪除已經(jīng)規(guī)劃完成但尚未執(zhí)行的飛行程序,中止后續(xù)飛行程序的規(guī)劃,只保留進出測控區(qū)程序的輸出,保證最低限度的飛行程序安排;當(dāng)故障解除后,根據(jù)退出規(guī)劃時的任務(wù)完成狀態(tài),繼續(xù)完成后續(xù)飛行程序規(guī)劃。
本文設(shè)計的自主規(guī)劃系統(tǒng)可由載人航天器數(shù)據(jù)管理分系統(tǒng)的中心計算機完成,3個組成模塊均由軟件實現(xiàn),軟件需求明確,在現(xiàn)有載人航天器軟件的基礎(chǔ)上增加3個模塊是完全能實現(xiàn)的。其中:完整的測控覆蓋計算模塊已在交會對接任務(wù)的載人航天器模擬器上驗證,規(guī)劃調(diào)度模塊的基本思想已在對地觀測衛(wèi)星上應(yīng)用[10]。自主規(guī)劃系統(tǒng)與載人航天器上其他分系統(tǒng)的接口,是飛行狀態(tài)信息接口和故障碼信息接口。目前,載人航天器數(shù)據(jù)管理分系統(tǒng)的中心計算機已具有管理航天器遙測參數(shù)信息的功能,分系統(tǒng)的飛行狀態(tài)可由中心計算機從遙測參數(shù)中提取。故障碼信息的傳遞可通過載人航天器上的總線系統(tǒng),以服務(wù)請求的形式提出,由數(shù)據(jù)管理分系統(tǒng)的中心計算機響應(yīng)。
本文提出的基于自主規(guī)劃的載人航天器飛行程序設(shè)計,與傳統(tǒng)的飛行程序設(shè)計相比,大大減少了對地面飛控的人力、物力需求,以及飛行方案對地面測控資源的依賴,通過飛行程序和自主控制的協(xié)同設(shè)計進一步提高了航天器的自主管理水平。
以載人航天器交會對接任務(wù)的提前轉(zhuǎn)出停泊點需求為例。傳統(tǒng)的飛行程序設(shè)計無法滿足該需求,只能按照標(biāo)稱的控制方案執(zhí)行追蹤飛行器向目標(biāo)飛行器接近過程,采用本文的設(shè)計方法,將追蹤飛行器的接近程序定義成指令集,并將該指令集的約束條件設(shè)計成特征點約束,特征點定義為控制分系統(tǒng)的進入停泊點時刻,即可實現(xiàn)在控制分系統(tǒng)滿足提前轉(zhuǎn)出停泊點的條件時飛行程序的自適應(yīng)調(diào)整,為后續(xù)的對接過程節(jié)省寶貴的測控弧段。
載人航天器的返回控制過程也可以體現(xiàn)出本文設(shè)計的優(yōu)勢。在傳統(tǒng)模式下,要求返回控制過程必須在測控區(qū)內(nèi)執(zhí)行,采用本文的設(shè)計方法,最緊急的處理程序由載人航天器自主執(zhí)行,取消了該事件對測控站的約束,為飛行方案的設(shè)計提供了更靈活的條件。
航天器飛行程序?qū)︼w行任務(wù)的成敗起著非常重要的作用,目前飛行程序的設(shè)計和實施耗費著較大的資源,尤其是人力資源和測控資源,而且有限的測控資源條件對飛行方案和故障預(yù)案設(shè)計提出了反約束。本文針對載人航天器的應(yīng)用背景,提出了通過自主測控覆蓋計算和指令約束條件封裝實現(xiàn)載人航天器飛行程序自主規(guī)劃的方法,可減少載人航天器在軌飛行對地面飛控人員、設(shè)備和測控資源的依賴。該設(shè)計通過特征點、狀態(tài)、故障碼等信息的傳遞,有效解決了飛行程序管理與控制分系統(tǒng)的協(xié)同問題;針對交會對接、返回等控制過程的緊急故障,實現(xiàn)了飛行程序的動態(tài)調(diào)度和即時自主處置。
(References)
[1]代樹武,孫輝先.航天器自主運行技術(shù)的進展[J].宇航學(xué)報,2003,24(1):17-22 Dai Shuwu,Sun Huixian.Technical overview of autonomous control and on-board data processing for spacecraft[J].Journal of Astronautics,2003,24(1):17-22(in Chinese)
[2]Pell B,Bernard D,Chien S,et al.An autonomous spacecraft agent prototype[J].Autonomous Robots,1998,5(1):29-52
[3]Muscettola N.HSTS:integrating planning and scheduling[R].San Francisco:Intelligent Scheduling,Morgan Kaufmann,1993
[4]Chien S,Sherwood R,Tran D,et al.The EO-1autonomous science agent architecture[R].Washington D.C.:NASA,2006
[5]Estlin T,Rabideau G,Mutz D,et al.Using continuous planning techniques to coordinate multiple rovers[R].Washington D.C.:NASA,2006
[6]Chien S,Rabideau G,Willis J,et al.Automating planning and scheduling of shuttle payload operations[J].Artficial Intelligence,1999,114(1/2):239-255
[7]Chien S,Knight R,Stechert A,et al.Integrated planning and execution for autonomous spacecraft[C]//Proceedings of the IEEE Aerospace Conference.New York:IEEE,1999:263-271
[8]伍保峰,李志剛,李軍予,等.面向任務(wù)的小衛(wèi)星自主指令設(shè)計[J].航天器工程,2013,22(4):68-71 Wu Baofeng,Li Zhigang,Li Junyu,et al.Design of misson-oriented autonomous commands for small satellites[J].Spacecraft Engineering,2013,22(4):68-71(in Chinese)
[9]李玉慶,徐敏強,王日新.航天器自主規(guī)劃系統(tǒng)分析與設(shè)計[J].吉林大學(xué)學(xué)報(工學(xué)版),2007,37(6):1471-1475 Li Yuqing,Xu Minqiang,Wang Rixin.Analysis and design of autonomous control system for spacecraft[J].Journal of Jilin University(Engineering and Technology Edition),2007,37(6):1471-1475(in Chinese)
[10]代樹武,孫輝先.衛(wèi)星的智能規(guī)劃與調(diào)度[J].控制與決策,2003,18(2):203-206 Dai Shuwu,Sun Huixian.Intelligent planning and scheduling system for spacecraft operations[J].Control and Decision,2003,18(2):203-206(in Chinese)