衛(wèi)星軌道姿態(tài)可視化三維顯示方法
【專(zhuān)利摘要】衛(wèi)星軌道姿態(tài)可視化三維顯示方法,步驟為:(1)建立三維模型,讀取數(shù)據(jù)庫(kù)中的3DS模型,查看模型是否齊全,如果模型齊全則送狀態(tài)顯示,否則建立相關(guān)的模型,在模型建立的同時(shí),向服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求數(shù)據(jù)包并接收;(2)對(duì)數(shù)據(jù)包中數(shù)據(jù)進(jìn)行查找比對(duì),尋找出狀態(tài)顯示所需數(shù)據(jù),并進(jìn)行解析,將數(shù)據(jù)劃分為兩個(gè)部分,一部分是地面設(shè)備數(shù)據(jù),一部分是星上遙測(cè)數(shù)據(jù);(3)對(duì)于地面設(shè)備數(shù)據(jù),提取時(shí)間信息,計(jì)算太陽(yáng)、月球星歷,計(jì)算日地月三者位置以及衛(wèi)星軌道數(shù)據(jù)等送狀態(tài)顯示;(4)對(duì)于星上遙測(cè)數(shù)據(jù)劃分成三類(lèi)處理分別顯示,一類(lèi)是健康狀態(tài)數(shù)據(jù),一類(lèi)是部件電源狀態(tài)數(shù)據(jù),一類(lèi)是姿態(tài)信息;狀態(tài)顯示采用OpenGL進(jìn)行三維模型繪制及顯示。
【專(zhuān)利說(shuō)明】衛(wèi)星軌道姿態(tài)可視化三維顯示方法【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于航天器地面綜合測(cè)試領(lǐng)域,涉及一種利用0penGL、3DS導(dǎo)入技術(shù)的三維顯示方法,適用于衛(wèi)星軌道設(shè)計(jì)、衛(wèi)星姿態(tài)仿真和動(dòng)態(tài)仿真演示等應(yīng)用。
【背景技術(shù)】
[0002]綜合測(cè)試是衛(wèi)星總裝完成后的一個(gè)試驗(yàn)驗(yàn)證手段,通過(guò)綜合測(cè)試可以實(shí)現(xiàn)對(duì)衛(wèi)星接口特性、功能特性和狀態(tài)是否符合設(shè)計(jì)要求進(jìn)行試驗(yàn)驗(yàn)證。目前對(duì)于衛(wèi)星控制推進(jìn)分系統(tǒng)的綜合測(cè)試,均是通過(guò)對(duì)遙測(cè)數(shù)據(jù)進(jìn)行人工判讀后再執(zhí)行后續(xù)的測(cè)試指令。若通過(guò)三維顯示技術(shù),就能夠直觀地顯示出衛(wèi)星當(dāng)前的姿態(tài)狀態(tài)和軌道變化狀態(tài),同時(shí)能夠細(xì)致地觀察到衛(wèi)星推力器的點(diǎn)火狀態(tài),這樣將有效降低測(cè)試風(fēng)險(xiǎn),減輕測(cè)試人員負(fù)擔(dān),避免測(cè)試人員在判讀遙測(cè)狀態(tài)時(shí)的不準(zhǔn)確。
[0003]目前三維顯示技術(shù)在汽車(chē)、電子等領(lǐng)域已經(jīng)逐步開(kāi)展應(yīng)用,輔助檢測(cè)和維修。在作戰(zhàn)訓(xùn)練方面,已將三維顯示技術(shù)應(yīng)用于虛擬戰(zhàn)場(chǎng)環(huán)境,采用交互式仿真和虛擬現(xiàn)實(shí)技術(shù)可支持多武器的三維電子環(huán)境。將作戰(zhàn)訓(xùn)練和攻防對(duì)抗演習(xí)以及現(xiàn)代作戰(zhàn)行動(dòng)納入整個(gè)三維顯示環(huán)境中,這對(duì)現(xiàn)代作戰(zhàn)行動(dòng)的決策與謀劃發(fā)揮了重大作用。但是在衛(wèi)星綜合測(cè)試領(lǐng)域,三維顯示技術(shù)仍沒(méi)有發(fā)揮作用,沒(méi)有突顯出三維顯示技術(shù)的優(yōu)勢(shì)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的技術(shù)解決問(wèn)題是:克服現(xiàn)有技術(shù)的不足,提供了一種衛(wèi)星軌道姿態(tài)可視化三維顯示方法,利用0penGL、3DS導(dǎo)入技術(shù),可以有效實(shí)現(xiàn)衛(wèi)星姿態(tài)與軌道參數(shù)的動(dòng)態(tài)化和直觀化顯示。
[0005]本發(fā)明的技術(shù)解決方案是:衛(wèi)星軌道姿態(tài)可視化三維顯示方法,步驟如下:
[0006](1)收集衛(wèi)星及衛(wèi)星上安裝的單機(jī)設(shè)備的二維外形圖,并將所述二維外形圖轉(zhuǎn)換為3DS模型并存儲(chǔ)在數(shù)據(jù)庫(kù)中;同時(shí),獲取地面設(shè)備對(duì)衛(wèi)星的遙測(cè)參數(shù)以及衛(wèi)星上存儲(chǔ)的遙測(cè)數(shù)據(jù)并存儲(chǔ)在數(shù)據(jù)庫(kù)中;
[0007](2)將所述的數(shù)據(jù)庫(kù)建立在服務(wù)器上,根據(jù)用戶(hù)需要顯示的內(nèi)容,向服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求,獲取相關(guān)的3DS模型或者遙測(cè)數(shù)據(jù);所述的數(shù)據(jù)請(qǐng)求包括信息頭和信息體兩個(gè)部分,其中信息頭標(biāo)識(shí)了所要請(qǐng)求的信息類(lèi)型,信息體用于獲取請(qǐng)求的信息;
[0008](3)從服務(wù)器接收數(shù)據(jù)信息并解析,獲得3DS模型、地面設(shè)備遙測(cè)數(shù)據(jù),和星上遙測(cè)數(shù)據(jù);
[0009](31)對(duì)于3DS模型,首先判斷是否包含了用戶(hù)需要顯示的全部模型,如果包含了則直接將獲得的3DS模型采用OpenGL進(jìn)行三維模型顯示,如果不完全包含用戶(hù)需要顯示的全部模型,在將包含的3DS模型采用OpenGL進(jìn)行三維模型顯示,將不包含的3DS模型按照用戶(hù)需要采用OpenGL進(jìn)行三維模型繪制和顯示;
[0010](32)對(duì)于地面設(shè)備遙測(cè)數(shù)據(jù),首先提取時(shí)間信息,然后分別計(jì)算儒略世紀(jì)數(shù)、格林尼治時(shí)角,計(jì)算太陽(yáng)、月球星歷,計(jì)算太陽(yáng)、地球、月球三者的位置關(guān)系以及衛(wèi)星本體坐標(biāo)系下的太陽(yáng)矢量、地球矢量、月球矢量,計(jì)算衛(wèi)星的星下點(diǎn)軌跡、太陽(yáng)光照區(qū),將計(jì)算結(jié)果采用OpenGL進(jìn)行三維模型顯示;在此基礎(chǔ)上判斷地面設(shè)備遙測(cè)數(shù)據(jù)中是否包含衛(wèi)星的軌道數(shù)據(jù),如果有則直接將軌道數(shù)據(jù)采用OpenGL進(jìn)行三維模型顯示,如果沒(méi)有則計(jì)算地球非球形攝動(dòng)、太陽(yáng)光壓及太陽(yáng)引力、月球引力對(duì)軌道的影響,由此間接確定出衛(wèi)星的軌道數(shù)據(jù)后采用OpenGL進(jìn)行三維模型顯示;
[0011](33)對(duì)于星上遙測(cè)數(shù)據(jù),劃分為三類(lèi)數(shù)據(jù),一類(lèi)是健康狀態(tài)數(shù)據(jù),對(duì)故障情況下的部件標(biāo)示為紅顏色后采用OpenGL進(jìn)行三維模型顯示,對(duì)健康部件不處理;第二類(lèi)是部件電源狀態(tài)數(shù)據(jù),對(duì)部件電源狀態(tài)為開(kāi)時(shí)標(biāo)示為綠顏色后采用OpenGL進(jìn)行三維模型顯示;第三類(lèi)是姿態(tài)信息,根據(jù)姿態(tài)測(cè)量部件的角度采用OpenGL進(jìn)行三維模型顯示。
[0012]本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點(diǎn)在于:
[0013](I)本發(fā)明方法能有效實(shí)現(xiàn)衛(wèi)星姿態(tài)與軌道參數(shù)動(dòng)態(tài)化和直觀化顯示,通過(guò)接收遙測(cè)數(shù)據(jù)能真實(shí)反映衛(wèi)星狀態(tài),便于測(cè)試人員直觀準(zhǔn)確地了解控制推進(jìn)測(cè)試工作和衛(wèi)星在軌運(yùn)行情況;針對(duì)綜合測(cè)試三維顯示需求,采用3DS模型化文件將真實(shí)設(shè)計(jì)衛(wèi)星模型導(dǎo)入OpenGL進(jìn)行演示驗(yàn)證,同時(shí)配合遙測(cè)數(shù)據(jù)計(jì)算出太陽(yáng)、月球和地球三者位置關(guān)系,接收軌道和姿態(tài)遙測(cè)數(shù)據(jù)實(shí)時(shí)動(dòng)態(tài)地實(shí)現(xiàn)三維數(shù)據(jù)重繪,讓測(cè)試人員直觀準(zhǔn)確地了解衛(wèi)星工作狀態(tài),同時(shí)在自演示模式下進(jìn)行軌道和姿態(tài)規(guī)律計(jì)算,更加快速有效地實(shí)現(xiàn)測(cè)試人員對(duì)星上部件狀態(tài)的了解和判別;
[0014](2)本發(fā)明方法可以有效實(shí)現(xiàn)星下點(diǎn)軌跡計(jì)算和太陽(yáng)光照區(qū)計(jì)算,可以幫助相關(guān)人員直觀獲取衛(wèi)星在地球上的軌跡變化和光照情況。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0015]圖1為本發(fā)明方法的流程圖。
【具體實(shí)施方式】
[0016]如圖1所示,為本發(fā)明衛(wèi)星軌道姿態(tài)可視化三維顯示方法的數(shù)據(jù)流圖,主要步驟如下:
[0017](I)設(shè)定好與數(shù)據(jù)庫(kù)服務(wù)器的網(wǎng)絡(luò)地址和端口 ;數(shù)據(jù)庫(kù)服務(wù)器主要存儲(chǔ)了整星狀態(tài)下的各組成部件,包括衛(wèi)星東/西/南/北板3DS模型、中心承力筒3DS模型、推力器3DS模型及安裝位置坐標(biāo)、陀螺3DS模型及安裝位置、動(dòng)量輪3DS模型及安裝位置、太陽(yáng)帆板驅(qū)動(dòng)機(jī)構(gòu)3DS模型及安裝位置、490N發(fā)動(dòng)機(jī)及安裝位置。此處的3DS模型是將衛(wèi)星三維機(jī)械模型直接通過(guò)Deep Exploration軟件轉(zhuǎn)換而成;
[0018](2)建立三維模型,讀取數(shù)據(jù)庫(kù)中的3DS模型,查看模型是否齊全,如果模型齊全則送狀態(tài)顯示,否則建立相關(guān)的模型,建立模型時(shí)根據(jù)機(jī)械尺寸描繪相應(yīng)的模型狀態(tài);
[0019](3)在模型建立的同時(shí),向服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求數(shù)據(jù)包,建立通信鏈路連接,建立連接后,發(fā)送請(qǐng)求數(shù)據(jù)包訂閱參數(shù);
[0020](4)接收訂閱數(shù)據(jù)包,數(shù)據(jù)包由整星測(cè)試系統(tǒng)提供,包含整星各種測(cè)試設(shè)備狀態(tài)數(shù)據(jù)和整星各種遙測(cè)數(shù)據(jù),訂閱時(shí)一般需要提供由整星測(cè)試系統(tǒng)分配的參數(shù)代號(hào);
[0021](5)對(duì)數(shù)據(jù)包中數(shù)據(jù)進(jìn)行查找比對(duì),尋找出狀態(tài)顯示所需數(shù)據(jù),并進(jìn)行解析,將數(shù)據(jù)劃分為兩個(gè)部分,一部分是地面設(shè)備數(shù)據(jù),一部分是星上遙測(cè)數(shù)據(jù);根據(jù)整星測(cè)試系統(tǒng)分配的原則,地面測(cè)試設(shè)備數(shù)據(jù)一般由ZBXXX表示,ZB表示整星地面測(cè)試設(shè)備數(shù)據(jù)參數(shù),后面XXX表示地面設(shè)備數(shù)據(jù)中某個(gè)參數(shù)的代號(hào),星上遙測(cè)數(shù)據(jù)一般采用與分系統(tǒng)相關(guān)的代號(hào)進(jìn)行區(qū)別,如控制分系統(tǒng)可表示為ZKXXX,ZK表示為整星控制分系統(tǒng)參數(shù),XXX表示參數(shù)代號(hào);
[0022](6)對(duì)于地面設(shè)備數(shù)據(jù),提取時(shí)間信息,計(jì)算儒略世紀(jì)數(shù),計(jì)算格林尼治時(shí)角,計(jì)算太陽(yáng)、月球星歷,計(jì)算日地月三者位置以及衛(wèi)星本體坐標(biāo)系下的太陽(yáng)矢量、地球矢量、月球矢量,計(jì)算衛(wèi)星星下點(diǎn)軌跡,太陽(yáng)光照區(qū),送狀態(tài)顯示,狀態(tài)顯示時(shí)只需顯示日地月衛(wèi)星四者關(guān)系、太陽(yáng)矢量以及星下點(diǎn)軌跡和太陽(yáng)光照區(qū);
[0023](7)在處理地面設(shè)備數(shù)據(jù)時(shí),需查看是否有軌道數(shù)據(jù),如果有則進(jìn)入狀態(tài)顯示,如果沒(méi)有,計(jì)算地球非球形攝動(dòng)、太陽(yáng)光壓及日月引力對(duì)軌道的影響,則計(jì)算出當(dāng)前軌道位置和速度,并根據(jù)軌道要求進(jìn)行描點(diǎn)繪制,送狀態(tài)顯示;
[0024](8)對(duì)于星上遙測(cè)數(shù)據(jù),劃分三類(lèi)數(shù)據(jù),一類(lèi)是健康狀態(tài)數(shù)據(jù),對(duì)故障情況下的部件,將其標(biāo)示為紅顏色,送狀態(tài)顯示,如果部件健康,則不處理,一類(lèi)是部件電源狀態(tài)數(shù)據(jù),對(duì)其電源狀態(tài)進(jìn)行標(biāo)示,電源開(kāi)時(shí),標(biāo)示為綠顏色,一類(lèi)是姿態(tài)信息,根據(jù)讀取的角度將組裝好的衛(wèi)星模型進(jìn)行旋轉(zhuǎn),從而得到當(dāng)前狀態(tài)下的衛(wèi)星姿態(tài)顯示顯示;
[0025](9 )狀態(tài)顯示采用OpenGL進(jìn)行三維模型繪制及顯示。
[0026]下面對(duì)關(guān)鍵環(huán)節(jié)進(jìn)行詳細(xì)的說(shuō)明。
[0027]>建立模型
[0028]對(duì)于建立模型,一種是通過(guò)Deep Exploration軟件將衛(wèi)星機(jī)械設(shè)計(jì)時(shí)的三維模型轉(zhuǎn)換成的3DS模型文件,一種是繪制模型。對(duì)于前一種采用軟件轉(zhuǎn)換即可。對(duì)于繪制模型來(lái)說(shuō),繪制完成的模型稱(chēng)之為自定義模型,首先從實(shí)際的衛(wèi)星機(jī)械模型測(cè)量出需要自定義模型的實(shí)際機(jī)械模型的機(jī)械尺寸參數(shù),即模型參數(shù),包括該機(jī)械模型的安裝坐標(biāo)參數(shù)進(jìn)行保存;其次,建立一個(gè)模型堆??臻g;第三,在這個(gè)空間中,根據(jù)需要繪制的模型參數(shù),設(shè)定好相應(yīng)的安裝坐標(biāo)系,在這個(gè)坐標(biāo)系下繪制相應(yīng)的圖形;第四,建立好模型后,封裝好模型堆??臻g,然后在整星狀態(tài)下調(diào)用相應(yīng)的自定義模型及其安裝坐標(biāo)參數(shù),從而進(jìn)行組裝。
[0029]>發(fā)送請(qǐng)求數(shù)據(jù)包訂閱參數(shù)
[0030]請(qǐng)求數(shù)據(jù)包遵循以下格式,包括兩個(gè)部分,一部分是信息頭,由同步字,長(zhǎng)度版本號(hào),擴(kuò)展字節(jié)號(hào),航天器編號(hào),時(shí)間,數(shù)據(jù)標(biāo)識(shí),信息標(biāo)識(shí),輔助標(biāo)識(shí),信息來(lái)源,信息目的組成,其中除長(zhǎng)度,航天器編號(hào)可進(jìn)行修改外,其他均為固定信息。另一部分是信息體,信息體包含一個(gè)內(nèi)容,即all,即訂閱所有數(shù)據(jù)。
[0031]信息頭格式如下:
[0032]
【權(quán)利要求】
1.衛(wèi)星軌道姿態(tài)可視化三維顯示方法,其特征在于步驟如下: (1)收集衛(wèi)星及衛(wèi)星上安裝的單機(jī)設(shè)備的二維外形圖,并將所述二維外形圖轉(zhuǎn)換為3DS模型并存儲(chǔ)在數(shù)據(jù)庫(kù)中;同時(shí),獲取地面設(shè)備對(duì)衛(wèi)星的遙測(cè)參數(shù)以及衛(wèi)星上存儲(chǔ)的遙測(cè)數(shù)據(jù)并存儲(chǔ)在數(shù)據(jù)庫(kù)中; (2)將所述的數(shù)據(jù)庫(kù)建立在服務(wù)器上,根據(jù)用戶(hù)需要顯示的內(nèi)容,向服務(wù)器發(fā)送數(shù)據(jù)請(qǐng)求,獲取相關(guān)的3DS模型或者遙測(cè)數(shù)據(jù);所述的數(shù)據(jù)請(qǐng)求包括信息頭和信息體兩個(gè)部分,其中信息頭標(biāo)識(shí)了所要請(qǐng)求的信息類(lèi)型,信息體用于獲取請(qǐng)求的信息; (3)從服務(wù)器接收數(shù)據(jù)信息并解析,獲得3DS模型、地面設(shè)備遙測(cè)數(shù)據(jù),和星上遙測(cè)數(shù)據(jù); (31)對(duì)于3DS模型,首先判斷是否包含了用戶(hù)需要顯示的全部模型,如果包含了則直接將獲得的3DS模型采用OpenGL進(jìn)行三維模型顯示,如果不完全包含用戶(hù)需要顯示的全部模型,在將包含的3DS模型采用OpenGL進(jìn)行三維模型顯示,將不包含的3DS模型按照用戶(hù)需要采用OpenGL進(jìn)行三維模型繪制和顯示; (32)對(duì)于地面設(shè)備遙測(cè)數(shù)據(jù),首先提取時(shí)間信息,然后分別計(jì)算儒略世紀(jì)數(shù)、格林尼治時(shí)角,計(jì)算太陽(yáng)、月球星歷,計(jì)算太陽(yáng)、地球、月球三者的位置關(guān)系以及衛(wèi)星本體坐標(biāo)系下的太陽(yáng)矢量、地球矢量、月球矢量,計(jì)算衛(wèi)星的星下點(diǎn)軌跡、太陽(yáng)光照區(qū),將計(jì)算結(jié)果采用OpenGL進(jìn)行三維模型顯示;在此基礎(chǔ)上判斷地面設(shè)備遙測(cè)數(shù)據(jù)中是否包含衛(wèi)星的軌道數(shù)據(jù),如果有則直接將軌道數(shù)據(jù)采用OpenGL進(jìn)行三維模型顯示,如果沒(méi)有則計(jì)算地球非球形攝動(dòng)、太陽(yáng)光壓及太陽(yáng)引力、月球引力對(duì)軌道的影響,由此間接確定出衛(wèi)星的軌道數(shù)據(jù)后采用OpenGL進(jìn)行三維模型顯示; (33)對(duì)于星上遙測(cè)數(shù)據(jù),劃分為三類(lèi)數(shù)據(jù),一類(lèi)是健康狀態(tài)數(shù)據(jù),對(duì)故障情況下的部件標(biāo)示為紅顏色后采用OpenGL進(jìn)行三維模型顯示,對(duì)健康部件不處理;第二類(lèi)是部件電源狀態(tài)數(shù)據(jù),對(duì)部件電源狀態(tài)為開(kāi)時(shí)標(biāo)示為綠顏色后采用OpenGL進(jìn)行三維模型顯示;第三類(lèi)是姿態(tài)信息,根據(jù)姿態(tài)測(cè)量部件的角度采用OpenGL進(jìn)行三維模型顯示。
【文檔編號(hào)】G06F17/50GK103646127SQ201310589853
【公開(kāi)日】2014年3月19日 申請(qǐng)日期:2013年11月20日 優(yōu)先權(quán)日:2013年11月20日
【發(fā)明者】胡迪, 徐東宇, 王劍 申請(qǐng)人:中國(guó)空間技術(shù)研究院