亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種基于xml的航天器通用化指令生成方法

文檔序號:6616006閱讀:490來源:國知局
專利名稱:一種基于xml的航天器通用化指令生成方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種基于xml的航天器通用化指令生成方法,屬于航天器指令控制技術(shù)領(lǐng)域。
背景技術(shù)
航天器在太空中的運(yùn)行控制是根據(jù)地面發(fā)出的指令進(jìn)行的,一般由地面上注指令,經(jīng)過星地通信鏈路傳輸,星上接收指令并解碼處理,完成對航天器的運(yùn)行控制。所以航天器研制階段需要一套指令生成軟件來完成指令的生成,從而實(shí)現(xiàn)對航天器的控制。由于各類航天器對衛(wèi)星控制需求不同,所以各航天器的指令生成軟件需要生成的指令種類存在差異,導(dǎo)致每個(gè)航天器型號都需要開發(fā)一套指令生成軟件。為此,本文提出了一種方法,可以基于xml語言來描述一顆航天器所需的指令,然后根據(jù)xml描述來實(shí)現(xiàn)航天器的指令生 成。

發(fā)明內(nèi)容
為解決上述問題,本發(fā)明提供了一種基于xml描述的航天器通用化指令生成方法,直接使用xml描述該型號的所有指令并加載到軟件配置文件中即可實(shí)現(xiàn)新型號的指令生成,從而提高型號研發(fā)效率,避免研發(fā)新的指令生成軟件帶來的錯(cuò)誤,同時(shí)也為型號研制節(jié)約了成本。本發(fā)明的基于xml的航天器通用化指令生成方法,包括四個(gè)步驟指令結(jié)構(gòu)描述、指令內(nèi)容分解、指令結(jié)構(gòu)解析與指令內(nèi)容輸入、指令生成。步驟一、指令結(jié)構(gòu)描述;將航天器指令分為塊頭、塊中和塊尾部分;其中,在〈TcBlock〉和〈/TcBlock〉之間填寫指令塊的主程序;在〈TcHead〉和〈/TcHead〉之間填寫指令塊的塊頭內(nèi)容,塊頭內(nèi)容包括塊識別、塊類型、有效長度;在〈TcContent〉和〈/TcContent〉之間填寫塊中內(nèi)容,塊中是一系列指令單元,在〈TcUnit〉和〈/TcUnit〉之間填寫各指令單元內(nèi)容;在〈TcTail〉和〈/TcTail〉之間填寫塊尾內(nèi)容,塊尾內(nèi)容為校驗(yàn)信息和填充數(shù)據(jù)。航天器指令結(jié)構(gòu)為
權(quán)利要求
1.一種基于xml的航天器通用化指令生成方法,其特征在于包括以下四個(gè)步驟 步驟一、指令結(jié)構(gòu)描述; 將航天器指令分為塊頭、塊中和塊尾部分;其中,在〈TcBlock〉和〈/TcBlock〉之間填寫指令塊的主程序;在〈TcHead〉和〈/TcHead〉之間填寫指令塊的塊頭內(nèi)容,塊頭內(nèi)容包括塊識別、塊類型、有效長度;在〈TcContent〉和〈/TcContent〉之間填寫塊中內(nèi)容,塊中是一系列指令單元,在〈TcUnit〉和〈/TcUnit〉之間填寫各指令單元內(nèi)容;在〈TcTail〉和〈/TcTail)之間填寫塊尾內(nèi)容,塊尾內(nèi)容為校驗(yàn)信息和填充數(shù)據(jù); 航天器指令結(jié)構(gòu)為
2.如權(quán)利要求I所述的一種基于xml的航天器通用化指令生成方法,其特征在于,所述data的類型為固定型,記為fixed ;data進(jìn)一步包括val子項(xiàng),val表示該data的值;解析固定型data時(shí),根據(jù)val子項(xiàng)得到data的值,根據(jù)fillByteLen子項(xiàng)得到data占有的字節(jié)數(shù),根據(jù)isHighByteFirst子項(xiàng)得到data的字節(jié)序;根據(jù)這三項(xiàng)信息,得出data對應(yīng)的指令內(nèi)容。
3.如權(quán)利要求I所述的一種基于xml的航天器通用化指令生成方法,其特征在于,所述data的類型為輸入型,記為input ;解析輸入型data時(shí),根據(jù)fillByteLen子項(xiàng)得到data占有的字節(jié)數(shù),再根據(jù)isHighByteFirst子項(xiàng)得到data的字節(jié)序,data的值則由用戶通過界面輸入框輸入;根據(jù)用戶輸入的值以及fillByteLen、isHighByteFirst信息得出data對應(yīng)的指令內(nèi)容。
4.如權(quán)利要求I所述的一種基于xml的航天器通用化指令生成方法,其特征在于,所述data的類型為有效長度型,記為validlen ;data進(jìn)一步包括invalidLen子項(xiàng),invalidLen表示無效字節(jié)數(shù);解析有效長度型data時(shí),根據(jù)fillByteLen子項(xiàng)得到data占有的字節(jié)數(shù),再根據(jù)isHighByteFirst子項(xiàng)得到data的字節(jié)序,再根據(jù)invalidLen子項(xiàng)得出指令塊中無效字節(jié)的長度,由指令塊的總長度減去無效長度,得出有效長度的值;根據(jù)有效長度的值以及fillByteLen、isHighByteFirst信息得出該data對應(yīng)的指令內(nèi)容。
5.如權(quán)利要求I所述的一種基于xml的航天器通用化指令生成方法,其特征在于,所述data的類型為選項(xiàng)型,記為option ;data進(jìn)一步包括val子項(xiàng),val子項(xiàng)中有多個(gè)選項(xiàng)item,其中,item表示對應(yīng)選項(xiàng)的實(shí)際值,item的name屬性對應(yīng)選項(xiàng)的用戶界面展現(xiàn)值;解析選項(xiàng)型data時(shí),根據(jù)fillByteLen子項(xiàng)得到該data占有的字節(jié)數(shù),再根據(jù)isHighByteFirst子項(xiàng)得到該data的字節(jié)序,data的值是用戶通過界面選擇框進(jìn)行選擇的,選擇框的內(nèi)容則是由val子項(xiàng)得到的,val子項(xiàng)中的一個(gè)item即對應(yīng)選擇框中的一個(gè)選項(xiàng);根據(jù)用戶選擇的實(shí)際值以及fillByteLen、isHighByteFirst信息得出該data對應(yīng)的指令內(nèi)容。
6.如權(quán)利要求I所述的一種基于xml的航天器通用化指令生成方法,其特征在于,所述data的類型為時(shí)間型,記為time ;data還進(jìn)一步包括byteSort子項(xiàng),表示字節(jié)序;解析時(shí)間型data時(shí),字節(jié)序以byteSort子項(xiàng)的字節(jié)序?yàn)閮?yōu)先,無byteSort子項(xiàng)時(shí),字節(jié)序由isHighByteFirst子項(xiàng)得出;根據(jù)fillByteLen子項(xiàng)得到該data占有的字節(jié)數(shù),再根據(jù)byteSort子項(xiàng)或isHighByteFirst子項(xiàng)得到該data的字節(jié)序,data的值為用戶通過時(shí)間輸入框輸入的時(shí)間與基準(zhǔn)時(shí)間的秒差值;根據(jù)data的值以及fillByteLen、byteSort或isHighByteFirst信息得出該data對應(yīng)的指令內(nèi)容。
7.如權(quán)利要求I所述的一種基于xml的航天器通用化指令生成方法,其特征在于,所述data的類型為校驗(yàn)型,記為crc ;data還進(jìn)一步包括val子項(xiàng),val子項(xiàng)中包含2個(gè)選項(xiàng)item, 2個(gè)item選項(xiàng)分別對應(yīng)異或校驗(yàn)計(jì)算方式和CRC校驗(yàn)計(jì)算方式;解析校驗(yàn)型data時(shí),根據(jù)fillByteLen子項(xiàng)得到該data占有的字節(jié)數(shù),再根據(jù)isHighByteFirst子項(xiàng)得到該data的字節(jié)序,根據(jù)用戶選擇采用異或校驗(yàn)計(jì)算方式還是CRC校驗(yàn)計(jì)算方式,data的值為異或校驗(yàn)或CRC校驗(yàn)計(jì)算得到的值;根據(jù)data的值以及fillByteLen、isHighByteFirst信息得出該data對應(yīng)的指令內(nèi)容。
8.如權(quán)利要求I所述的一種基于xml的航天器通用化指令生成方法,其特征在于,所述data的類型為填充型,記為fillarea ;data還進(jìn)一步包括val子項(xiàng)和Ien子項(xiàng),其中val子項(xiàng)表示data的值,Ien子項(xiàng)表示遙控?cái)?shù)據(jù)巾貞數(shù)據(jù)區(qū)長度,Ien子項(xiàng)的選項(xiàng)item表示遙控?cái)?shù)據(jù)幀數(shù)據(jù)區(qū)長度的幾個(gè)選項(xiàng);解析填充型data時(shí),填充位的存在與否取決于塊頭、塊數(shù)據(jù)和塊尾的字節(jié)數(shù)之和是否滿足遙控?cái)?shù)據(jù)幀數(shù)據(jù)區(qū)長度的要求,若塊頭、塊數(shù)據(jù)和塊尾的字節(jié)數(shù)之和小于遙控幀數(shù)據(jù)區(qū)的長度要求則需要以若干個(gè)固定值進(jìn)行填充;遙控?cái)?shù)據(jù)中貞數(shù)據(jù)區(qū)的長度由填充型data的Ien子項(xiàng)決定,設(shè)data的Ien子項(xiàng)共有n個(gè)item,用數(shù)組item[n-l]裝載,item[n_l]中的數(shù)是嚴(yán)格增序排列,則item取值為item選項(xiàng)中大于塊頭、塊數(shù)據(jù)和塊尾的字節(jié)數(shù)之和,且最接近塊頭、塊數(shù)據(jù)和塊尾的字節(jié)數(shù)之和的長度,data值為item值減去塊頭、塊數(shù)據(jù)和塊尾的字節(jié)數(shù)之和;根據(jù)data的值以及fillByteLen、isHighByteFirst信息得出該data對應(yīng)的指令內(nèi)容。
全文摘要
本發(fā)明提供了一種基于xml的航天器通用化指令生成方法。該方法包括四個(gè)步驟指令結(jié)構(gòu)描述、指令內(nèi)容分解、指令結(jié)構(gòu)解析與指令內(nèi)容輸入、指令生成。首先將航天器指令分為塊頭、塊中和塊尾部分;然后根據(jù)指令的實(shí)際含義,將航天器指令文件中的各指令分解為指令塊的最小單元data,將指令塊data內(nèi)容填入塊頭、塊中和塊尾部分;接著依次解析塊頭、塊中和塊尾data,動態(tài)生成指令塊用戶輸入界面,用戶完成相應(yīng)data內(nèi)容,完成塊頭、塊中和塊尾內(nèi)容的組織;最后,根據(jù)填充指令結(jié)構(gòu)中的內(nèi)容,生成指令的二進(jìn)制字節(jié)序列。本發(fā)明給出了一種結(jié)構(gòu)簡單且能適用于各種指令的航天器指令結(jié)構(gòu),實(shí)現(xiàn)了指令生成功能的通用化處理,提高了研制效率,節(jié)省了航天器研制成本。
文檔編號G06F9/44GK102981849SQ20121045559
公開日2013年3月20日 申請日期2012年11月13日 優(yōu)先權(quán)日2012年11月13日
發(fā)明者朱劍冰, 王向暉, 袁珺, 王文平, 張紅軍, 穆強(qiáng), 韋涌泉, 郭堅(jiān), 楊柳青, 范延芳, 董振輝 申請人:北京空間飛行器總體設(shè)計(jì)部
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1