專利名稱:一種多功能星敏模擬器的制作方法
技術(shù)領(lǐng)域:
本技術(shù)屬于航天測試技術(shù),涉及地面測試時(shí),星敏感器模型的建立,保證星敏模型與真實(shí)產(chǎn)品的一致性。
背景技術(shù):
近年來高精度的星敏感器在衛(wèi)星控制分系統(tǒng)中大量使用,為了完成衛(wèi)星控制分系統(tǒng)高精度和高保真度的系統(tǒng)測試,采用靜態(tài)星敏模擬器無法完成系統(tǒng)閉環(huán),只能進(jìn)行星敏開環(huán)測試;采用動態(tài)星敏模擬器,可有效地進(jìn)行系統(tǒng)閉環(huán)測試,但是,由于受動態(tài)星敏模擬器安裝難度大及整星無法安裝等因素的影響,動態(tài)星敏模擬器只適用于短時(shí)間內(nèi)在系統(tǒng)測試中采用,通常為2-3天,對于長達(dá)1000多個小時(shí)的系統(tǒng)測試和整星測試而言,是遠(yuǎn)遠(yuǎn)不夠的,為此,需要設(shè)計(jì)一種高保真度的數(shù)字星敏模擬器,用于在系統(tǒng)閉環(huán)測試,為控制分系統(tǒng)提供星敏數(shù)據(jù)的模擬。另一方面,隨著國內(nèi)星敏感器研制技術(shù)的發(fā)展,星敏的功能日益強(qiáng)大,星敏軟件由在軌固化形式向在軌可注入修改形式逐步發(fā)展,并在多顆衛(wèi)星中采用,而這一功能的實(shí)現(xiàn),需要由整星的星務(wù)計(jì)算機(jī)、控制計(jì)算機(jī)、星敏三個環(huán)節(jié)共同來完成,由于注入方案和步驟復(fù)雜、難度大,各個環(huán)節(jié)的驗(yàn)證工作需要分開進(jìn)行,為了對控制分系統(tǒng)應(yīng)用軟件的星敏注入功能進(jìn)行充分驗(yàn)證,需要采用一種帶注入功能的數(shù)字星敏模擬器,用于替代真正星敏感器。目前,控制分系統(tǒng)驗(yàn)證中使用的數(shù)字星敏模擬器,一般將衛(wèi)星動力學(xué)模型輸出的實(shí)時(shí)星敏數(shù)據(jù)通過串口發(fā)送給星載控制計(jì)算機(jī),用于系統(tǒng)閉環(huán)和整星的測試。而真實(shí)的星敏感器,由于受星敏處理器、單機(jī)本身等限制,不能輸出實(shí)時(shí)的星敏數(shù)據(jù),均具有時(shí)延特點(diǎn),而目前的數(shù)字星敏模擬器則不帶有時(shí)延特點(diǎn)或注入功能。
發(fā)明內(nèi)容
本發(fā)明解決的技術(shù)問題是:克服現(xiàn)有技術(shù)的不足,提供一種帶有注入和時(shí)延特點(diǎn)的多功能星敏模擬器,實(shí)現(xiàn)真實(shí)星敏感器的高保真度模擬,用于衛(wèi)星控制分系統(tǒng)和整星的系統(tǒng)閉環(huán)測試。本發(fā)明的技術(shù)方案是:一種多功能星敏模擬器,包括接收指令處理模塊、狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊;接收指令處理模塊接收外部的星載控制計(jì)算機(jī)發(fā)出的數(shù)據(jù)指令,將星載控制計(jì)算機(jī)的數(shù)據(jù)指令按其類型分為狀態(tài)設(shè)置類指令、注入程序類指令和數(shù)據(jù)回復(fù)類指令,并分別對應(yīng)送至狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊;同時(shí)接收指令處理模塊接收測試序列設(shè)置的星敏時(shí)延參數(shù)Td,并將星敏時(shí)延參數(shù)Td發(fā)送至數(shù)據(jù)回復(fù)模塊;所述的測試序列為衛(wèi)星閉環(huán)測試時(shí)按時(shí)間先后順序設(shè)置的測試條件;狀態(tài)設(shè)置模塊根據(jù)真實(shí)星敏感器狀態(tài)設(shè)置邏輯以及輸入進(jìn)來的狀態(tài)設(shè)置類指令,完成對星敏的狀態(tài)設(shè)置模擬和模式轉(zhuǎn)換模擬,并將模擬后的結(jié)果輸送至數(shù)據(jù)回復(fù)模塊;程序注入模塊對輸入進(jìn)來的注入程序類指令進(jìn)行動態(tài)存儲;定義一個NX (L+1)字節(jié)的內(nèi)存空間,其中N為可存儲的最大數(shù)據(jù)塊塊數(shù),L為注入程序類指令中一個數(shù)據(jù)塊的字節(jié)數(shù);每一個數(shù)據(jù)塊內(nèi)包含地面上行的已經(jīng)分好塊的注入程序類指令;將小于等于N個數(shù)據(jù)塊的注入程序類指令直接在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行存儲并顯示;對于大于N個數(shù)據(jù)塊的注入程序類指令,將前N個數(shù)據(jù)塊的注入程序類指令直接在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行存儲并顯示,超過N個數(shù)據(jù)塊的注入程序類指令,則在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行循環(huán)覆蓋存儲并顯示;每接收一個數(shù)據(jù)塊經(jīng)星敏模擬器判斷正確后,發(fā)送一個正確標(biāo)志給數(shù)據(jù)回復(fù)模塊;數(shù)據(jù)回復(fù)模塊根據(jù)狀態(tài)設(shè)置模塊輸送過來的模擬結(jié)果以及程序注入模塊發(fā)送的正確標(biāo)志,將狀態(tài)設(shè)置模塊的模擬結(jié)果以及程序注入模塊發(fā)送的正確標(biāo)志及時(shí)反饋給指令處理模塊,并按真實(shí)星敏感器通訊協(xié)議的要求,及時(shí)響應(yīng)星載控制計(jì)算機(jī)發(fā)出的數(shù)據(jù)指令;定義一個LnumX (Tb/Tp)字節(jié)的星敏姿態(tài)數(shù)據(jù)數(shù)組,其中Lnum為星敏姿態(tài)數(shù)據(jù)包的長度,Tb為設(shè)定的最大時(shí)延,Tp為衛(wèi)星動力學(xué)仿真周期;所述的星敏姿態(tài)數(shù)據(jù)數(shù)組對外部衛(wèi)星模擬器中星敏模型輸出的(Tb/Tp)組星敏姿態(tài)數(shù)據(jù)包進(jìn)行實(shí)時(shí)存儲和更新;每組星敏姿態(tài)數(shù)據(jù)包包括動力學(xué)仿真時(shí)間以及當(dāng)前時(shí)刻對應(yīng)的星敏姿態(tài)數(shù)據(jù);從所述星敏姿態(tài)數(shù)據(jù)數(shù)組中,選取第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包作為當(dāng)前輸出;讀取星敏模擬器最近一次記錄的同步時(shí)刻并與取出的第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包中的動力學(xué)仿真時(shí)間項(xiàng)作差,得到星敏輸出數(shù)據(jù)的相對時(shí)間,記作第(Td/Tp)組星敏數(shù)據(jù)包中的星敏時(shí)間,結(jié)合輸出的第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包并按照星敏通信協(xié)議組包得到時(shí)延為Td的星敏姿態(tài)數(shù)據(jù)包,經(jīng)過指令處理模塊發(fā)送給星載控制計(jì)算機(jī);同時(shí),星敏模擬器每周期對(Tb/Tp)組星敏姿態(tài)數(shù)據(jù)包進(jìn)行動態(tài)更新,形成一個最大時(shí)延為Tb的星敏數(shù)據(jù)動態(tài)數(shù)據(jù)流;所述的同步時(shí)刻指的是星敏模擬器接收到星載計(jì)算機(jī)的同步信號時(shí),對應(yīng)的星敏模擬器時(shí)刻。本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點(diǎn)在于:針對目前星敏模擬器沒有注入功能和時(shí)延特性的不足,設(shè)計(jì)了一種帶注入功能和時(shí)延特點(diǎn)的星敏模擬器,比較真實(shí)的模擬了真實(shí)星敏在軌的工作特點(diǎn),從2009年開始,本發(fā)明已經(jīng)成功應(yīng)用于多個采用星敏定姿的遙感衛(wèi)星控制分系統(tǒng)閉環(huán)測試和整星測試,為 整星和分系統(tǒng)閉環(huán)測試提供了有效星敏數(shù)據(jù)動態(tài)模擬,取得了良好的效果。
圖1為本發(fā)明星敏模擬器實(shí)現(xiàn)原理框圖;圖2為時(shí)延特性實(shí)現(xiàn)原理框圖。
具體實(shí)施例方式實(shí)施流程如圖1和圖2所示,具體描述如下:一種多功能星敏模擬器,包括接收指令處理模塊、狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊;指令處理模塊負(fù)責(zé)與星載控制計(jì)算機(jī)進(jìn)行通訊,負(fù)責(zé)接收和響應(yīng)星載計(jì)算機(jī)指令。接收指令處理模塊接收外部的星載控制計(jì)算機(jī)發(fā)出的數(shù)據(jù)指令,將星載控制計(jì)算機(jī)的數(shù)據(jù)指令按其類型分為狀態(tài)設(shè)置類指令、注入程序類指令和數(shù)據(jù)回復(fù)類指令,并分別對應(yīng)送至狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊;同時(shí)接收指令處理模塊接收測試序列設(shè)置的星敏時(shí)延參數(shù)Td,并將星敏時(shí)延參數(shù)Td發(fā)送至數(shù)據(jù)回復(fù)模塊;所述的測試序列為衛(wèi)星閉環(huán)測試時(shí)按時(shí)間先后順序設(shè)置的測試條件;狀態(tài)設(shè)置模塊根據(jù)真實(shí)星敏感器狀態(tài)設(shè)置邏輯以及輸入進(jìn)來的狀態(tài)設(shè)置類指令,如模式字、模式轉(zhuǎn)換開關(guān)、寫開關(guān)、復(fù)位指令等,完成對星敏的狀態(tài)設(shè)置模擬和模式轉(zhuǎn)換模擬,并將模擬后的結(jié)果輸送至數(shù)據(jù)回復(fù)模塊;程序注入模塊將注入程序類指令寫入指定內(nèi)存空間,并在上位機(jī)進(jìn)行顯示,并將正確標(biāo)志發(fā)送給數(shù)據(jù)回復(fù)模塊;定義一個NX (L+1)字節(jié)的內(nèi)存空間,其中N為可存儲的最大數(shù)據(jù)塊塊數(shù),L為注入程序類指令中一個數(shù)據(jù)塊的字節(jié)數(shù);每一個數(shù)據(jù)塊內(nèi)包含地面上行的已經(jīng)分好塊的注入程序類指令;將小于等于N個數(shù)據(jù)塊的注入程序類指令直接在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行存儲并顯示;對于大于N個數(shù)據(jù)塊的注入程序類指令,將前N個數(shù)據(jù)塊的注入程序類指令直接在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行存儲并顯示,超過N個數(shù)據(jù)塊的注入程序類指令,則在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行循環(huán)覆蓋存儲并顯示;所述的循環(huán)覆蓋存儲方式為第N+1塊數(shù)據(jù)塊覆蓋第I塊數(shù)據(jù)塊、第N+2塊覆蓋第2塊數(shù)據(jù)塊……第N+N塊覆蓋第N塊數(shù)據(jù)塊的方式進(jìn)行動態(tài)存儲;每接收一個數(shù)據(jù)塊經(jīng)星敏模擬器判斷正確后,發(fā)送一個正確標(biāo)志給數(shù)據(jù)回復(fù)模塊;數(shù)據(jù)回復(fù)模塊根據(jù)狀態(tài)設(shè)置模塊輸送過來的模擬結(jié)果以及程序注入模塊發(fā)送的正確標(biāo)志,將狀態(tài)設(shè)置模塊的模擬結(jié)果以及程序注入模塊發(fā)送的正確標(biāo)志及時(shí)反饋給指令處理模塊,并按真實(shí)星敏感器通訊協(xié)議的要求,及時(shí)響應(yīng)星載控制計(jì)算機(jī)發(fā)出的數(shù)據(jù)指令;定義一個LnumX (Tb/Tp)字節(jié)的星敏姿態(tài)數(shù)據(jù)數(shù)組,其中Lnum為星敏姿態(tài)數(shù)據(jù)包的長度,Tb為設(shè)定的最大時(shí)延,Tp為衛(wèi)星動力學(xué)仿真周期;所述的星敏姿態(tài)數(shù)據(jù)數(shù)組對外部衛(wèi)星模擬器中星敏模型輸出的(Tb/Tp)組星敏姿態(tài)數(shù)據(jù)包進(jìn)行實(shí)時(shí)存儲和更新;每組星敏姿態(tài)數(shù)據(jù)包包括動力學(xué)仿真時(shí)間以及當(dāng)前時(shí)刻對應(yīng)的星敏姿態(tài)數(shù)據(jù);從所述星敏姿態(tài)數(shù)據(jù)數(shù)組中,選取第(Td/Tp)組星敏姿態(tài)數(shù)據(jù) 包作為當(dāng)前輸出;讀取星敏模擬器最近一次記錄的同步時(shí)刻并與取出的第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包中的動力學(xué)仿真時(shí)間項(xiàng)作差,得到星敏輸出數(shù)據(jù)的相對時(shí)間,記作第(Td/Tp)組星敏數(shù)據(jù)包中的星敏時(shí)間,結(jié)合輸出的第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包并按照星敏通信協(xié)議組包得到時(shí)延為Td的星敏姿態(tài)數(shù)據(jù)包,經(jīng)過指令處理模塊發(fā)送給星載控制計(jì)算機(jī),用于分系統(tǒng)閉環(huán)測試;同時(shí),星敏模擬器每周期對(Tb/Tp)組星敏姿態(tài)數(shù)據(jù)包進(jìn)行動態(tài)更新,采用先進(jìn)先出的方式,形成一個最大時(shí)延為Tb的星敏數(shù)據(jù)動態(tài)數(shù)據(jù)流,便于下一控制周期星敏姿態(tài)數(shù)據(jù)包的正確生成;所述的同步時(shí)刻指的是星敏模擬器接收到星載計(jì)算機(jī)的同步信號時(shí),對應(yīng)的星敏模擬器時(shí)刻。本發(fā)明未詳細(xì)說明部分屬本領(lǐng)域技術(shù)人員公知常識。
權(quán)利要求
1.一種多功能星敏模擬器,其特征在于:包括接收指令處理模塊、狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊; 接收指令處理模塊接收外部的星載控制計(jì)算機(jī)發(fā)出的數(shù)據(jù)指令,將星載控制計(jì)算機(jī)的數(shù)據(jù)指令按其類型分為狀態(tài)設(shè)置類指令、注入程序類指令和數(shù)據(jù)回復(fù)類指令,并分別對應(yīng)送至狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊;同時(shí)接收指令處理模塊接收測試序列設(shè)置的星敏時(shí)延參數(shù)Td,并將星敏時(shí)延參數(shù)Td發(fā)送至數(shù)據(jù)回復(fù)模塊;所述的測試序列為衛(wèi)星閉環(huán)測試時(shí)按時(shí)間先后順序設(shè)置的測試條件; 狀態(tài)設(shè)置模塊根據(jù)真實(shí)星敏感器狀態(tài)設(shè)置邏輯以及輸入進(jìn)來的狀態(tài)設(shè)置類指令,完成對星敏的狀態(tài)設(shè)置模擬和模式轉(zhuǎn)換模擬,并將模擬后的結(jié)果輸送至數(shù)據(jù)回復(fù)模塊; 程序注入模塊對輸入進(jìn)來的注入程序類指令進(jìn)行動態(tài)存儲;定義一個NX (L+1)字節(jié)的內(nèi)存空間,其中N為可存儲的最大數(shù)據(jù)塊塊數(shù),L為注入程序類指令中一個數(shù)據(jù)塊的字節(jié)數(shù);每一個數(shù)據(jù)塊內(nèi)包含地面上行的已經(jīng)分好塊的注入程序類指令;將小于等于N個數(shù)據(jù)塊的注入程序類指令直接在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行存儲并顯示;對于大于N個數(shù)據(jù)塊的注入程序類指令,將前N個數(shù)據(jù)塊的注入程序類指令直接在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行存儲并顯示,超過N個數(shù)據(jù)塊的注入程序類指令,則在定義的NX (L+1)字節(jié)的內(nèi)存空間中按照從第一塊數(shù)據(jù)塊到第N塊數(shù)據(jù)塊的順序依次進(jìn)行循環(huán)覆蓋存儲并顯示;每接收一個數(shù)據(jù)塊經(jīng)星敏模擬器判斷正確后,發(fā)送一個正確標(biāo)志給數(shù)據(jù)回復(fù)模塊; 數(shù)據(jù)回復(fù)模塊根據(jù)狀態(tài)設(shè)置模塊輸送過來的模擬結(jié)果以及程序注入模塊發(fā)送的正確標(biāo)志,將狀態(tài)設(shè)置模塊的模擬結(jié)果以及程序注入模塊發(fā)送的正確標(biāo)志及時(shí)反饋給指令處理模塊,并按真實(shí)星敏感器通訊協(xié)議的要求,及時(shí)響應(yīng)星載控制計(jì)算機(jī)發(fā)出的數(shù)據(jù)指令;定義一個LnumX (Tb/Tp)字節(jié)的星敏姿態(tài)數(shù)據(jù)數(shù)組,其中Lnum為星敏姿態(tài)數(shù)據(jù)包的長度,Tb為設(shè)定的最大時(shí)延,Tp為衛(wèi)星動力學(xué)仿真周期;所述的星敏姿態(tài)數(shù)據(jù)數(shù)組對外部衛(wèi)星模擬器中星敏模型輸出的(Tb/Tp)組星敏姿態(tài)數(shù)據(jù)包進(jìn)行實(shí)時(shí)存儲和更新;每組星敏姿態(tài)數(shù)據(jù)包包括動力學(xué)仿真時(shí)間以及當(dāng)前時(shí)刻對應(yīng)的星敏姿態(tài)數(shù)據(jù);從所述星敏姿態(tài)數(shù)據(jù)數(shù)組中,選取第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包作為當(dāng)前輸出;讀取星敏模擬器最近一次記錄的同步時(shí)刻并與取出的第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包中的動力學(xué)仿真時(shí)間項(xiàng)作差,得到星敏輸出數(shù)據(jù)的相對時(shí)間,記作第(Td/Tp)組星敏數(shù)據(jù)包中 的星敏時(shí)間,結(jié)合輸出的第(Td/Tp)組星敏姿態(tài)數(shù)據(jù)包并按照星敏通信協(xié)議組包得到時(shí)延為Td的星敏姿態(tài)數(shù)據(jù)包,經(jīng)過指令處理模塊發(fā)送給星載控制計(jì)算機(jī);同時(shí),星敏模擬器每周期對(Tb/Tp)組星敏姿態(tài)數(shù)據(jù)包進(jìn)行動態(tài)更新,形成一個最大時(shí)延為Tb的星敏數(shù)據(jù)動態(tài)數(shù)據(jù)流;所述的同步時(shí)刻指的是星敏模擬器接收到星載計(jì)算機(jī)的同步信號時(shí),對應(yīng)的星敏模擬器時(shí)刻。
全文摘要
本發(fā)明公開了一種多功能星敏模擬器,包括接收指令處理模塊、狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊;接收指令處理模塊接收外部的星載控制計(jì)算機(jī)發(fā)出的數(shù)據(jù)指令,分類后分別對應(yīng)送至狀態(tài)設(shè)置模塊、程序注入模塊和數(shù)據(jù)回復(fù)模塊進(jìn)行處理,真實(shí)的模擬了真實(shí)星敏在軌的工作。本發(fā)明針對目前衛(wèi)星系統(tǒng)驗(yàn)證中沒有帶有時(shí)延和注入功能的數(shù)字星模模擬器的問題,設(shè)計(jì)了一種帶有注入和時(shí)延特點(diǎn)的多功能星敏模擬器,用于衛(wèi)星控制分系統(tǒng)和整星的系統(tǒng)閉環(huán)測試,是以往從未采用過的工程試驗(yàn)?zāi)M技術(shù)。
文檔編號G05B17/00GK103235516SQ20131012156
公開日2013年8月7日 申請日期2013年4月9日 優(yōu)先權(quán)日2013年4月9日
發(fā)明者周劍敏, 袁軍, 曹永梅, 劉彤, 王勝剛, 姚寧, 王哲, 潘立鑫 申請人:北京控制工程研究所