本發(fā)明涉及載人儀表軟件在軌配置技術(shù),特別是一種用于載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置方法。
背景技術(shù):
現(xiàn)有的軟件在軌重配置技術(shù)是基于在軌程序的重配置,其主要由地面控制站通過專用上行配置信道發(fā)送配置信息流,星上專用配置信道接收機(jī)解調(diào)接收,由星載計算機(jī)分離配置信息,并指導(dǎo)星上有效載荷將衛(wèi)星配置信息存儲在合適的存儲空間,隨后載荷自主導(dǎo)引配置信息流完成星上程序的部分或全部重構(gòu)。載人飛行器儀表軟件程序規(guī)模大,包括多個系統(tǒng)、分系統(tǒng)及儀表軟件,其儀表軟件顯示的參數(shù)是按照預(yù)先設(shè)計好的公式參數(shù)進(jìn)行解算和顯示的,但是隨著載人飛行器的在軌變換,儀表軟件需要具有公式參數(shù)、報警范圍在軌重配置的功能,現(xiàn)有的軟件在軌重配置技術(shù)需要儀表軟件提供較大的內(nèi)存實現(xiàn)配置信息流的存儲及重構(gòu),重構(gòu)成功的幾率不高,而且需要大規(guī)模的更改儀表軟件的代碼,不能對儀表軟件進(jìn)行在軌重配置,不適用于儀表軟件眾多且在軌變化頻繁的載人飛行器,因此需要提出一種適用于載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置方法。
技術(shù)實現(xiàn)要素:
本發(fā)明解決的技術(shù)問題是:克服現(xiàn)有技術(shù)的不足,提供了一種用于載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置方法,解決了現(xiàn)有的軟件在軌重配置技術(shù)需要大規(guī)模的更改儀表軟件的代碼,不能對儀表軟件進(jìn)行在軌重配置的問題,能夠更好的適用于儀表軟件眾多且在軌變化頻繁的載人飛行器。
本發(fā)明的技術(shù)解決方案是:一種用于載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置方法,包括如下步驟
(1)選擇上注數(shù)據(jù)幀序列的類型,當(dāng)選擇系數(shù)數(shù)據(jù)注入幀序列進(jìn)行儀表軟件系數(shù)更新時,獲取需要更新的儀表軟件系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱、系數(shù)序號、更改的系數(shù)值作為屬性信息,當(dāng)選擇報警范圍修改幀序列進(jìn)行儀表軟件報警范圍更新時,獲取需要更新的儀表軟件系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱、報警參數(shù)上限更新值或者報警參數(shù)下限更新值作為屬性信息,當(dāng)選取參數(shù)去除數(shù)據(jù)幀序列進(jìn)行儀表軟件顯示參數(shù)去除時,獲取需要去除的儀表軟件的系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱作為屬性信息;所述的上注數(shù)據(jù)幀序列包括系數(shù)數(shù)據(jù)注入幀序列、報警范圍修改幀序列、參數(shù)去除數(shù)據(jù)幀序列;所述的載人飛行器的系統(tǒng)包括空間實驗室、神舟飛船;所述的空間實驗室系統(tǒng)、神舟飛船系統(tǒng)均包括電源分系統(tǒng)、環(huán)控分系統(tǒng)、熱控分系統(tǒng)、測控分系統(tǒng)、推進(jìn)分系統(tǒng)、數(shù)據(jù)處理分系統(tǒng),其中,各個分系統(tǒng)包括多個儀表軟件,參數(shù)名稱為儀表軟件產(chǎn)生參數(shù)的唯一名稱,系數(shù)序號為參數(shù)名稱對應(yīng)參數(shù)進(jìn)行解算所使用的解算公式的系數(shù)的序號,更改的系數(shù)值為解算公式中當(dāng)前系數(shù)序號對應(yīng)的解算公式中的系數(shù)新值,報警參數(shù)上限更新值為儀表軟件對參數(shù)名稱對應(yīng)參數(shù)進(jìn)行報警的報警范圍上限新值,報警參數(shù)下限更新值為儀表軟件對參數(shù)名稱對應(yīng)參數(shù)進(jìn)行報警的報警范圍下限新值,當(dāng)參數(shù)名稱對應(yīng)的參數(shù)被去除后,該參數(shù)不進(jìn)行報警;所述的解算公式的系數(shù)不超過8個;
(2)根據(jù)步驟(1)選擇的上注數(shù)據(jù)幀序列類型及獲取的屬性信息生成生成上注數(shù)據(jù)幀序列;所述的上注數(shù)據(jù)幀序列包括至少一個格式統(tǒng)一的數(shù)據(jù)包;所述的數(shù)據(jù)包包括幀類型、有效數(shù)據(jù)、注入幀標(biāo)識、器上校驗結(jié)果、校驗和,其中,幀類型包括更新參數(shù)系數(shù)、更新報警范圍、參數(shù)無效信息、使用備份文件、遙測回傳文件、丟棄當(dāng)前序列,注入幀標(biāo)識為當(dāng)前數(shù)據(jù)包在上注數(shù)據(jù)幀序列中的位置,各個數(shù)據(jù)包的注入幀標(biāo)識為連續(xù)的,有效數(shù)據(jù)為屬性信息,器上校驗結(jié)果的初值為空;
(3)根據(jù)當(dāng)前上注數(shù)據(jù)幀序列中的屬性信息選擇預(yù)置在地面的需要更新或者去除的載人飛行器儀表軟件的原始配置文件,然后根據(jù)上注數(shù)據(jù)幀序列對原始配置文件進(jìn)行儀表軟件系數(shù)更新、儀表軟件報警范圍更新或者儀表軟件顯示參數(shù)去除,得到新配置文件,對比原始配置文件、新配置文件得到差異部分,對差異部分進(jìn)行判斷,如果差異部分符合當(dāng)前上注數(shù)據(jù)幀序列,則轉(zhuǎn)入到步驟(4),否則轉(zhuǎn)到步驟(1);所述的配置文件包括參數(shù)配置文件、報警配置文件、無效參數(shù)配置文件其中,參數(shù)配置文件包括儀表軟件系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱、參數(shù)序號、參數(shù)類型、系數(shù)序號、參數(shù)有效范圍、參數(shù)解算公式、參數(shù)解算公式中的系數(shù)值,報警配置文件包括儀表軟件系統(tǒng)號、分系統(tǒng)號、報警參數(shù)名稱、報警參數(shù)序號、報警參數(shù)類型、參數(shù)報警范圍、報警參數(shù)報警方式,無效參數(shù)配置文件包括系統(tǒng)號、分系統(tǒng)號、參數(shù)序號、參數(shù)類型;
(4)將步驟(2)得到的上注數(shù)據(jù)幀序列根據(jù)屬性信息依次上注至對應(yīng)的載人飛行器儀表軟件,同時接收載人飛行器儀表軟件遙測回地面的上注數(shù)據(jù)幀序列,判斷遙測上注數(shù)據(jù)幀序列、上注的上注數(shù)據(jù)幀序列,如果兩者相同,則依次產(chǎn)生并發(fā)送上注啟動幀至當(dāng)前載人飛行器儀表軟件,否則轉(zhuǎn)到步驟(1);所述的上注啟動幀包括幀類型、有效數(shù)據(jù)、注入幀標(biāo)識、器上校驗結(jié)果、校驗和,其中,幀類型為啟用上注信息,有效數(shù)據(jù)為0XEE,注入幀標(biāo)識為0,器上校驗結(jié)果的初始值為空;所述的上注數(shù)據(jù)幀序列中均對應(yīng)一個上注啟動幀;
(5)當(dāng)載人飛行器儀表軟件接收到上注啟動幀時,對上注啟動幀使用校驗和進(jìn)行校驗,如果校驗通過,則將上注啟動幀中的器上校驗結(jié)果修改為校驗通過,并轉(zhuǎn)入步驟(6),否則將上注啟動幀中的器上校驗結(jié)果修改為校驗不通過、幀類型修改為丟棄當(dāng)前序列,將當(dāng)前上注啟動幀及對應(yīng)的上注幀序列舍棄,轉(zhuǎn)入步驟(1);
(6)對步驟(5)中校驗通過的上注啟動幀對應(yīng)的上注數(shù)據(jù)幀序列進(jìn)行校驗和驗證,如果驗證失敗,則將上注數(shù)據(jù)幀序列中的器上校驗結(jié)果修改為校驗不通過、幀類型修改為丟棄當(dāng)前序列,并舍棄當(dāng)前上注數(shù)據(jù)幀序列,如果驗證正確,則對當(dāng)前上注數(shù)據(jù)幀序列進(jìn)行完整性驗證,若驗證通過,則轉(zhuǎn)入步驟(7),否則將上注數(shù)據(jù)幀序列中的器上校驗結(jié)果修改為校驗不通過、幀類型修改為丟棄當(dāng)前序列,并舍棄當(dāng)前上注數(shù)據(jù)幀序列,轉(zhuǎn)入步驟(1);
(7)判斷當(dāng)前上注幀序列中屬性信息的系數(shù)序號的取值、參數(shù)名稱、更改的系數(shù)值、報警參數(shù)上限更新值或者報警參數(shù)下限更新值,如果系數(shù)序號的取值、參數(shù)名稱、更改的系數(shù)值、報警參數(shù)上限更新值、報警參數(shù)下限更新值均滿足屬性信息使用的取值范圍,則使用當(dāng)前上注幀序列進(jìn)行儀表軟件系數(shù)更新、儀表軟件報警范圍更新或者儀表軟件顯示參數(shù)去除,生成新的配置文件,否則將上注數(shù)據(jù)幀序列中的器上校驗結(jié)果修改為校驗不通過并舍棄;
(8)在地面向載人飛行器儀表軟件發(fā)送申請文件遙測幀,控制載人飛行器儀表軟件將步驟(7)得到的新的配置文件遙測至地面,然后在地面使用上注數(shù)據(jù)幀序列對新的配置文件進(jìn)行驗證,如果新的配置文件符合當(dāng)前上注數(shù)據(jù)幀序列的更新或者去除結(jié)果,則完成載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置,否則轉(zhuǎn)入步驟(1)重新進(jìn)行載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置。
所述的步驟(2)中的數(shù)據(jù)包為64字節(jié)。
所述的步驟(6)中的完整性驗證過程包括如下步驟:
(1)判斷當(dāng)前上注數(shù)據(jù)幀序列中數(shù)據(jù)包的幀類型是否相同;
(2)判斷當(dāng)前上注數(shù)據(jù)幀序列中數(shù)據(jù)包的注入幀標(biāo)識是否連續(xù);
(3)如果當(dāng)前上注數(shù)據(jù)幀序列中數(shù)據(jù)包的幀類型相同且注入幀標(biāo)識連續(xù),則完整性驗證通過,否則完整性驗證不通過。
本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點在于:
(1)本發(fā)明方法通過在地面上注數(shù)據(jù)幀序列,解決了載人飛行器中的大規(guī)模儀表軟件數(shù)據(jù)配置不可更改的缺陷,在不更改載人飛行器儀表軟件代碼的情況下,對儀表軟件進(jìn)行了在軌重配置;
(2)本發(fā)明方法通過對上注數(shù)據(jù)幀序列、上注啟動幀進(jìn)行雙重檢測應(yīng)答,解決了上注數(shù)據(jù)幀的安全性問題,提高了載人飛行器在軌數(shù)據(jù)重配置的安全性和可靠性。
附圖說明
圖1為本發(fā)明一種用于載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置方法原理流程圖;
圖2為本發(fā)明方法中地面原始配置文件配置前和配置后比較的流程示意圖。
具體實施方式
載人飛行器中儀表軟件顯示的參數(shù)是按照預(yù)先設(shè)計好的公式參數(shù)進(jìn)行解算和顯示的,但是隨著載人飛行器的在軌可更換,儀表軟件需要具有公式參數(shù)、報警范圍在軌可重配置功能,本發(fā)明針對現(xiàn)有技術(shù)的不足,提出一種用于載人飛行器儀表軟件的在軌數(shù)據(jù)安全重配置方法,通過在地面上注數(shù)據(jù)幀更改儀表軟件的配置文件來實現(xiàn)對儀表軟件的特定功能重配置,提高了在軌數(shù)據(jù)安全重配置的安全性和可靠性,為船上大規(guī)模軟件提供了一種通過地面的干預(yù)下在軌可更新配置的手段,改變了以往載人飛行器船上大規(guī)模軟件難以在軌重配置的缺陷,下面結(jié)合附圖對本發(fā)明方法進(jìn)行詳細(xì)說明。
如圖1所示本發(fā)明方法包括如下步驟:
(1)在地面上注幀自動生成軟件中選擇上注數(shù)據(jù)幀序列的類型,當(dāng)進(jìn)行儀表軟件系數(shù)更新時,選擇系數(shù)數(shù)據(jù)注入幀序列,當(dāng)進(jìn)行儀表軟件報警范圍更新時,選擇報警范圍修改幀序列,當(dāng)進(jìn)行儀表軟件顯示參數(shù)去除時,選擇參數(shù)去除數(shù)據(jù)幀序列。然后根據(jù)選擇的上注數(shù)據(jù)幀序列的類型獲取屬性信息,當(dāng)進(jìn)行儀表軟件系數(shù)更新時,獲取需要更新的儀表軟件系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱、系數(shù)序號、更改的系數(shù)值,其中,本發(fā)明方法中載人飛行器的系統(tǒng)包括空間實驗室、神舟飛船,空間實驗室系統(tǒng)、神舟飛船均包括電源分系統(tǒng)、環(huán)控分系統(tǒng)、熱控分系統(tǒng)、測控分系統(tǒng)、推進(jìn)分系統(tǒng)、數(shù)據(jù)處理分系統(tǒng),各個分系統(tǒng)包括多個儀表軟件,比如電源分系統(tǒng)包括的儀表有電池組A、電池組B、電池組C等;參數(shù)名稱為儀表軟件產(chǎn)生參數(shù)的統(tǒng)一且唯一的名稱;系數(shù)序號為參數(shù)名稱對應(yīng)參數(shù)進(jìn)行解算所使用的解算公式的系數(shù)的序號;更改的系數(shù)值為解算公式中當(dāng)前系數(shù)序號對應(yīng)的解算公式中的系數(shù)新值。
當(dāng)進(jìn)行儀表軟件報警范圍更新時,獲取需要更新的儀表軟件系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱、報警參數(shù)上限更新值或者報警參數(shù)下限更新值,報警參數(shù)上限更新值為儀表軟件對參數(shù)名稱對應(yīng)參數(shù)進(jìn)行報警的報警范圍上限新值,報警參數(shù)下限更新值為儀表軟件對參數(shù)名稱對應(yīng)參數(shù)進(jìn)行報警的報警范圍下限新值。當(dāng)進(jìn)行儀表軟件顯示參數(shù)去除時,獲取需要去除的儀表軟件的系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱。
最后根據(jù)當(dāng)前上注數(shù)據(jù)幀序列類型對應(yīng)的屬性信息生成上注數(shù)據(jù)幀序列,上注數(shù)據(jù)幀序列包括至少一個格式統(tǒng)一的64字節(jié)的數(shù)據(jù)包,64字節(jié)的數(shù)據(jù)包如表1所示包括同步頭、幀類型(包括更新參數(shù)系數(shù)、更新報警范圍、參數(shù)無效信息、使用備份文件、遙測回傳文件、丟棄當(dāng)前序列、使用備份文件)、有效數(shù)據(jù)(屬性信息)、注入幀標(biāo)識(64字節(jié)的數(shù)據(jù)包在上注數(shù)據(jù)幀序列的位置)、器上校驗結(jié)果(船上軟件對數(shù)據(jù)幀進(jìn)行校驗和計算,并將校驗和填入本字節(jié))和校驗和(上注數(shù)據(jù)幀序列的校驗和)。
表1上注的數(shù)據(jù)幀序列內(nèi)容
(2)如圖2所示為地面原始配置文件配置前和配置后比較的流程示意圖,本發(fā)明方法在地面上注軟件中保存載人飛行器儀表軟件的原始配置文件,根據(jù)當(dāng)前選擇的上注數(shù)據(jù)幀序列類型獲取對應(yīng)的載人飛行器儀表軟件需要修改的原始配置文件,配置文件包括參數(shù)配置文件、報警配置文件和無效參數(shù)配置文件。參數(shù)配置文件說明每個參數(shù)的一些特性(比如儀表軟件系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱、參數(shù)序號、參數(shù)類型、系數(shù)序號、參數(shù)有效范圍、參數(shù)解算公式、參數(shù)解算公式中的系數(shù)值),報警配置文件說明每個報警參數(shù)的一些特性(比如儀表軟件系統(tǒng)號、分系統(tǒng)號、報警參數(shù)名稱、報警參數(shù)序號、報警參數(shù)類型、參數(shù)報警范圍、報警參數(shù)報警方式),無效參數(shù)配置文件說明無效參數(shù)的一些特性(比如系統(tǒng)號、分系統(tǒng)號、參數(shù)序號、參數(shù)類型)。
得到配置文件后,根據(jù)上注數(shù)據(jù)幀序列對相應(yīng)的配置文件進(jìn)行更改,比如當(dāng)進(jìn)行參數(shù)系數(shù)更新時,將上注數(shù)據(jù)幀序列中所有的參數(shù)系數(shù)在相應(yīng)的參數(shù)配置文件中對應(yīng)參數(shù)的公式系數(shù)值進(jìn)行更新;當(dāng)進(jìn)行報警范圍更改時,將上注幀序列中所有的報警范圍在相應(yīng)的報警配置文件中對應(yīng)報警參數(shù)的報警范圍值進(jìn)行更新;當(dāng)進(jìn)行參數(shù)去除時,將上注幀序列中所有需要去除的參數(shù)增加到無效參數(shù)配置文件中;然后根據(jù)步驟(1)得到的上注數(shù)據(jù)幀序列對配置文件進(jìn)行重配置,得到新配置文件,對比原始配置文件、新配置文件得到兩者的差異部分,最后對差異部分進(jìn)行判斷,如果差異部分符合當(dāng)前上注數(shù)據(jù)幀序列內(nèi)容,則轉(zhuǎn)入到步驟(3),否則轉(zhuǎn)到步驟(1)。
(3)地面上注軟件將步驟(1)得到的上注數(shù)據(jù)幀序列依次上注至載人飛行器儀表軟件,同時接收當(dāng)前載人飛行器儀表軟件遙測回地面的上注數(shù)據(jù)幀序列,判斷遙測上注數(shù)據(jù)幀序列、上注的上注數(shù)據(jù)幀序列是否一致,如果相同,則產(chǎn)生并發(fā)送上注啟動幀至當(dāng)前載人飛行器儀表軟件,否則轉(zhuǎn)到步驟(1),其中,上注啟動幀的格式同上注數(shù)據(jù)幀序列中數(shù)據(jù)包的格式一致,所不同的是它的幀類型為0x5A:啟用上注信息,有效數(shù)據(jù)填充0XEE,注入幀標(biāo)識為0,船上軟件對上注啟動幀進(jìn)行校驗和檢查通過后,確認(rèn)當(dāng)前上注為有效的上注,每個上注啟動幀均對應(yīng)一個上注數(shù)據(jù)幀序列。
(4)對于船上軟件,一次完整的上注數(shù)據(jù)程序是一個上注數(shù)據(jù)幀序列和隨后的上注啟動幀的完整接收。在當(dāng)前載人飛行器儀表軟件接收到上注啟動幀并進(jìn)行有效性檢查通過后,對此次上注數(shù)據(jù)幀序列進(jìn)行幀頭驗證、校驗和驗證,如果驗證失敗則將此次上注數(shù)據(jù)幀序列直接丟棄,如果驗證正確則表明當(dāng)前載人飛行器儀表軟件收到正確的一幀“數(shù)據(jù)幀序列”后,然后對之前接收到的上注數(shù)據(jù)幀序列的完整性進(jìn)行驗證,即判斷上注數(shù)據(jù)幀序列中所有64字節(jié)數(shù)據(jù)包的“幀類型”是否相同、“注入幀標(biāo)識”是否正確完整連續(xù),如果上注數(shù)據(jù)幀序列的完整性驗證成功,則進(jìn)行下一步的安全性檢查,否則將此次上注數(shù)據(jù)幀序列直接丟棄。
最后對通過完整性驗證的上注幀序列中的有效數(shù)據(jù)進(jìn)行安全性檢查,即“更改系數(shù)數(shù)目”是否超出有效范圍,其中,本發(fā)明方法中系數(shù)序號的數(shù)目的有效范圍是1到8,其余是無效。本發(fā)明方法中系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱或者系數(shù)序號示例如表2所示,如果分系統(tǒng)號、參數(shù)名稱或者系數(shù)序號等有一項超出有效范圍,則認(rèn)為超出有效范圍,安全性檢查不通過;當(dāng)安全性檢查全部通過時,如果當(dāng)前上注數(shù)據(jù)幀序列是系數(shù)數(shù)據(jù)注入幀序列,則進(jìn)行系數(shù)更新,如果當(dāng)前上注數(shù)據(jù)幀序列是報警范圍修改幀序列,則進(jìn)行報警范圍更新,如果當(dāng)前上注數(shù)據(jù)幀序列是參數(shù)去除數(shù)據(jù)幀序列,則去除相應(yīng)的顯示參數(shù),同時會根據(jù)上注幀對配置文件進(jìn)行更改,生成新的配置文件。
表2系統(tǒng)號、分系統(tǒng)號、參數(shù)名稱或者系數(shù)序號示例
(5)在地面向載人飛行器儀表軟件發(fā)送申請文件遙測幀,要求儀表軟件將更新后的配置文件整體遙測,儀表軟件收到該幀后,使用遙測通道將申請文件遙測幀中規(guī)定的文件進(jìn)行遙測。地面對接收到的遙測配置文件進(jìn)行驗證,如果驗證通過,則本次上注過程成功結(jié)束;如果驗證失敗,則轉(zhuǎn)入步驟(1)重新開始整個注入過程,或者放棄本次上注。
本發(fā)明說明書中未作詳細(xì)描述的內(nèi)容屬本領(lǐng)域技術(shù)人員的公知技術(shù)。