張 龍,趙志勤,劉曉蕾,田中梁
(西北機電工程研究所,陜西咸陽 712099)
基于FlightGear的制導(dǎo)彈藥飛行實測數(shù)據(jù)可視化研究
張 龍,趙志勤,劉曉蕾,田中梁
(西北機電工程研究所,陜西咸陽 712099)
為分析飛行數(shù)據(jù)是否滿足飛行性能要求,觀測飛行過程中制導(dǎo)彈藥部件間的相對運動,應(yīng)用FlightGear飛行模擬平臺,研究了制導(dǎo)彈藥三維模型建模方法、可視化場景繪制技術(shù)、飛行實測數(shù)據(jù)的處理方法和三維模型的實測數(shù)據(jù)驅(qū)動技術(shù),構(gòu)建了制導(dǎo)彈藥飛行實測數(shù)據(jù)驅(qū)動的數(shù)據(jù)可視化系統(tǒng),實現(xiàn)了制導(dǎo)彈藥飛行過程的多視角可視化,直觀再現(xiàn)了制導(dǎo)彈藥飛行過程中的飛行軌跡以及不同部件之間的相對運動關(guān)系,為判斷制導(dǎo)彈藥飛行數(shù)據(jù)有效性和飛行控制過程等提供了可視的技術(shù)手段。
制導(dǎo)彈藥;飛行實測數(shù)據(jù);數(shù)據(jù)驅(qū)動;可視化;FlightGear
當(dāng)前,國內(nèi)外制導(dǎo)彈藥技術(shù)發(fā)展迅速,對各種類型制導(dǎo)彈藥需求越來越迫切。制導(dǎo)彈藥研發(fā)過程中既要控制研發(fā)經(jīng)費又要加快研發(fā)進度,這就要求研發(fā)過程中應(yīng)用新的設(shè)計手段與試驗方法。數(shù)字化設(shè)計與試驗技術(shù)的發(fā)展為這一要求提供了可能性,特別是虛擬現(xiàn)實技術(shù)的發(fā)展,推動數(shù)字仿真向動態(tài)場景發(fā)展,可實現(xiàn)從設(shè)計到試驗全過程的數(shù)據(jù)可視化。
數(shù)據(jù)可視化源于科學(xué)計算可視化,是運用計算機圖形學(xué)、圖像處理技術(shù)和虛擬現(xiàn)實將數(shù)據(jù)轉(zhuǎn)化為圖形或者場景并進行交互處理的理論、方法和技術(shù)[1]。制導(dǎo)彈藥飛行試驗中,采用彈載飛行數(shù)據(jù)記錄儀記錄飛行數(shù)據(jù),構(gòu)建基于飛行數(shù)據(jù)驅(qū)動的數(shù)據(jù)可視化系統(tǒng),提供了多視角飛行數(shù)據(jù)觀察方式。數(shù)據(jù)可視化系統(tǒng)可以基于OpenGL(Open Graphic Library)的開發(fā)技術(shù)實現(xiàn)[2],也可以利用VEGA等專用仿真工具實現(xiàn),但是上述方法存在開發(fā)周期長、費用高、數(shù)據(jù)轉(zhuǎn)換繁瑣等問題,更適用于航空航天等領(lǐng)域。對于制導(dǎo)彈藥實測飛行數(shù)據(jù)可視化,筆者闡述了基于FlightGear構(gòu)建低成本、高效的實測數(shù)據(jù)驅(qū)動數(shù)據(jù)可視化系統(tǒng)。FlightGear是一個開源的飛行模擬器,該可視化引擎具有跨平臺、多場景、可交互、開放性等特點。利用FlightGear作為飛行仿真可視化引擎,具有可擴展性強、開發(fā)周期短、系統(tǒng)建設(shè)簡單、使用方便等優(yōu)點[3]。
制導(dǎo)彈藥實測飛行數(shù)據(jù)可視化仿真框架包括可視化場景繪制、制導(dǎo)彈藥三維建模、系統(tǒng)交互配置、實測數(shù)據(jù)處理和數(shù)據(jù)驅(qū)動模塊開發(fā)等部分??梢暬瘓鼍袄L制完成發(fā)射裝置、制導(dǎo)彈藥的載入與繪制操作,實現(xiàn)動態(tài)場景中的地形、天氣等顯示效果;系統(tǒng)交互配置建立制導(dǎo)彈藥三維模型與實測數(shù)據(jù)的交互關(guān)系;數(shù)據(jù)驅(qū)動模塊將實測數(shù)據(jù)發(fā)送到可視化場景中,驅(qū)動三維模型在場景中動態(tài)顯示。整套系統(tǒng)仿真框架如圖1所示。
筆者基于FlightGear平臺,針對某型制導(dǎo)彈藥有控飛行試驗記錄數(shù)據(jù),使用Matlab/Simlink工具,建立試驗數(shù)據(jù)的載入與驅(qū)動模塊,利用Flight-Gear提供的外部數(shù)據(jù)輸入/輸出接口,將飛行航跡/姿態(tài)以及舵面動作等記錄數(shù)據(jù),通過數(shù)據(jù)網(wǎng)絡(luò)實時傳遞,驅(qū)動FlightGear可視化引擎,實現(xiàn)在飛行仿真中,飛行姿態(tài)、環(huán)境條件及地形信息的三維實時可視化顯示。
制導(dǎo)彈藥的三維建模是實現(xiàn)數(shù)據(jù)可視化的關(guān)鍵部分。制導(dǎo)彈藥三維模型在AC3D軟件下構(gòu)建,模型包含結(jié)構(gòu)信息、材質(zhì)信息和位置信息等。AC3D是個跨平臺的3D模型制作軟件,與Flight-Gear具有良好的接口,AC3D的數(shù)據(jù)格式可以直接載入FlightGear場景中。考慮到制導(dǎo)彈藥飛行歷程數(shù)據(jù)可視化的負載需求,出于對模型運行流暢性的保證,盡量降低模型復(fù)雜度,簡化了內(nèi)部結(jié)構(gòu)細節(jié)特征。另外,由于飛行歷程數(shù)據(jù)包括制導(dǎo)彈藥舵面等部件的動作信息,還需明確定義相關(guān)部件屬性,對部件名稱、舵面編號以及相關(guān)轉(zhuǎn)軸等信息進行編輯。
以某型制導(dǎo)彈藥模型制作為例,使用AC3D建立制導(dǎo)彈藥模型,如圖2所示。
飛行試驗記錄數(shù)據(jù)可視化場景由以下部分構(gòu)成:制導(dǎo)彈藥、發(fā)射裝置、地形、天空、特效。
FlightGear提供了全球地形文件,每塊地形文件都是10°×10°的壓縮包,壓縮包名字以經(jīng)緯度命名,地形文件安裝在Scenery場景目錄下。地形場景直接由FlightGear根據(jù)地理經(jīng)緯度坐標(biāo)載入。天空場景可根據(jù)實際試驗環(huán)境設(shè)置風(fēng)場、紊流、光線、云霧等效果。
建立FlightGear場景載入的批處理命令如下:
命令依次為程序調(diào)用、網(wǎng)絡(luò)設(shè)置、制導(dǎo)彈藥模型(MsGuide01)載入、環(huán)境設(shè)置、初始位置設(shè)置、初始姿態(tài)設(shè)置等。
由于制導(dǎo)彈藥由相應(yīng)的發(fā)射裝置發(fā)射,需在場景中載入發(fā)射裝置,筆者利用FlightGear的preferences.xml配置文件載入由AC3D建立的發(fā)射裝置三維模型,配置命令為:<scenario>Launcher</scenario>。在對應(yīng)的Launcher.xml配置文件中,通過<latitude>、<longitude>、<speed>等屬性定義發(fā)射裝置在場景中的位置和速度等信息。
某制導(dǎo)彈藥飛行模式采用制導(dǎo)彈藥為卷弧尾翼穩(wěn)定方式,彈體在卷弧尾翼作用下高速旋轉(zhuǎn)。制導(dǎo)部安裝在彈藥前段,考慮到制導(dǎo)部旋轉(zhuǎn)適應(yīng)性的問題,需要對制導(dǎo)彈藥進行滾轉(zhuǎn)控制,而直接利用鴨舵控制滾轉(zhuǎn)時,鴨舵產(chǎn)生的下洗流場作用在卷弧尾翼上,會導(dǎo)致滾轉(zhuǎn)控制困難,甚至失效。因此采用在彈體與制導(dǎo)部之間增加旋轉(zhuǎn)隔離軸承的方式解決該問題。制導(dǎo)彈藥飛行時,制導(dǎo)部在鴨舵控制下不旋轉(zhuǎn),彈體則自由旋轉(zhuǎn)。鴨舵既控制制導(dǎo)部的滾轉(zhuǎn)姿態(tài)又控制全彈彈道軌跡。根據(jù)以上描述,飛行試驗實測關(guān)鍵數(shù)據(jù)內(nèi)容如表1所示。
表1 飛行試驗實測關(guān)鍵數(shù)據(jù)
表1中,飛行實測數(shù)據(jù)由不同設(shè)備測試記錄,記錄的時間基準(zhǔn)與記錄間隔并不相同,部分?jǐn)?shù)據(jù)的參考坐標(biāo)也不相同。飛行實測數(shù)據(jù)可視化系統(tǒng)要求支持這些不同來源、不同類型的數(shù)據(jù),支持?jǐn)?shù)據(jù)動態(tài)回放,同時可以調(diào)節(jié)回放速率。根據(jù)上述要求,利用Matlab/Simulink工具可以較為方便地完成數(shù)據(jù)處理工作。將上述數(shù)據(jù)內(nèi)容以時間插值的方式建立模型,并設(shè)定數(shù)據(jù)發(fā)送頻率為每秒30幀,以驅(qū)動飛行模擬視圖的更新。
飛行實測數(shù)據(jù)與數(shù)據(jù)可視化仿真系統(tǒng)之間坐標(biāo)不匹配,在數(shù)據(jù)可視化仿真系統(tǒng)設(shè)計中,采用以橢球WGS84世界坐標(biāo)系為基準(zhǔn)的坐標(biāo)轉(zhuǎn)換在視景仿真系統(tǒng)中的實現(xiàn)方法[4]。表1中,彈載數(shù)據(jù)記錄儀記錄的彈道軌跡為WGS84直角坐標(biāo)系下的數(shù)據(jù),而FlightGear采用大地坐標(biāo)系,因此須將進行WGS84直角坐標(biāo)到大地坐標(biāo)的坐標(biāo)轉(zhuǎn)換,圖3給出了兩者坐標(biāo)轉(zhuǎn)換關(guān)系。
圖3中,Oxeyeze為WGS84直角坐標(biāo),原點位于旋轉(zhuǎn)橢球體中心,ze與地球自轉(zhuǎn)軸重合,正向沿地球自轉(zhuǎn)方向,xe和ye軸位于赤道平面內(nèi),xe軸穿過本初子午線,ye軸穿過東經(jīng)90°子午線,制導(dǎo)彈藥P點的位置用P點在該坐標(biāo)系內(nèi)的坐標(biāo)(xe,ye,ze)來表示。大地坐標(biāo)坐標(biāo)原點位于橢球中心,地面上P點的大地子午面NP′Q與本初子午面所構(gòu)成的二面角β稱為P點大地經(jīng)度,由本初子午面算起,向東為正,向西為負。P點對于橢球的法線PP′與赤道平面的夾角α為P點的大地緯度,由赤道平面算起,向北為正,向南為負。P點沿法線到橢球面(PP′)的距離為大地高度H,從橢球面起算,向外為正,向內(nèi)為負,P點位置用緯經(jīng)高(α,β,H)來表示。
為了通過實測飛行數(shù)據(jù)驅(qū)動FlightGear運行,需要按照FlightGear定義的網(wǎng)絡(luò)通信協(xié)議編寫接口驅(qū)動,以本文所構(gòu)建的制導(dǎo)彈藥飛行數(shù)據(jù)可視化為例,如表1所示,需要16個變量信息。按照這16個變量信息進行編程,并通過UDP協(xié)議發(fā)送到FlightGear節(jié)點,實現(xiàn)和FlightGear的交互。
實測飛行數(shù)據(jù)與FlightGear交互過程中不但要驅(qū)動制導(dǎo)彈藥位置與姿態(tài)更新,還需驅(qū)動4個控制舵面偏轉(zhuǎn)及制導(dǎo)部旋轉(zhuǎn)姿態(tài)的更新。因此需要將16個變量信息與制導(dǎo)彈藥運動及相應(yīng)部件的對應(yīng)關(guān)系進行配置。在FlightGear軟件系統(tǒng)中大量使用了XML文檔作為配置文件,XML(Extensible Markup Languager)[5-7]是W3C(World Wide Web Consortium)組織提出的Web上數(shù)據(jù)表示和數(shù)據(jù)交換的標(biāo)準(zhǔn)。
本文構(gòu)建三維模型與變量信息之間的XML配置文件,格式如下:
上述程序中<type>定義了動作類型,<o(jì)bject-name>為動作部件名稱,<property>為對應(yīng)的驅(qū)動信息接口,<center>定義了旋轉(zhuǎn)中心,<axis>定義旋轉(zhuǎn)軸。
在XML配置文件基礎(chǔ)及網(wǎng)絡(luò)通信接口驅(qū)動的基礎(chǔ)上構(gòu)建數(shù)據(jù)驅(qū)動的可視化仿真模塊,模塊在Simulink下構(gòu)建如圖4所示。
圖4中,F(xiàn)light-test Data為飛行實測數(shù)據(jù)處理模塊;Interface Driver為接口驅(qū)動程序;Send Data模塊為UDP協(xié)議發(fā)送模塊;Simulation Pace模塊用以設(shè)置可視化場景的播放速率;Generate Run Script為FlightGear初始設(shè)置的腳本文件生成模塊。仿真模塊運行時先運行dos(′runfg &′)命令啟動FlightGear界面,然后運行Simulink模塊即可實現(xiàn)實測飛行數(shù)據(jù)的可視化,其飛行場景和飛行軌跡如圖5所示。
飛行實測數(shù)據(jù)可視化系統(tǒng)可以顯示制導(dǎo)彈藥飛行軌跡與姿態(tài),在可視化場景顯示的同時也可以實時顯示相應(yīng)的數(shù)據(jù)曲線,實現(xiàn)數(shù)據(jù)曲線與飛行狀態(tài)的對比分析??梢暬到y(tǒng)也提供了從不同角度、不同層次全面了解飛行狀態(tài)的功能,系統(tǒng)支持多種再現(xiàn)觀察模式,可以從全局觀察彈道軌跡變化、制導(dǎo)彈藥姿態(tài)變化,也可以局部觀察舵面偏轉(zhuǎn)運動等。
1)采用FlightGear飛行模擬平臺與Simulink軟件結(jié)合的方式,實現(xiàn)制導(dǎo)彈藥實測飛行數(shù)據(jù)可視化系統(tǒng)的構(gòu)建,該系統(tǒng)實現(xiàn)簡單且具有較強的可移植性和適應(yīng)性。
2)基于實測飛行數(shù)據(jù)對制導(dǎo)彈藥飛行歷程進行可視化分析,為研究人員辨別數(shù)據(jù)有效性、飛行控制狀態(tài)以及相對運動細節(jié)提供了直觀的判斷方式。
3)結(jié)合某制導(dǎo)彈藥飛行實測數(shù)據(jù),完成了數(shù)據(jù)可視化分析工作,特別是為該制導(dǎo)彈藥制導(dǎo)部與彈體的相對旋轉(zhuǎn)運動以及舵面既控制制導(dǎo)部滾轉(zhuǎn)姿態(tài)又控制彈道軌跡時的復(fù)合運動提供了可視化的評定方式。
(References)
[1]趙煥芳,朱東華.信息可視化在技術(shù)檢測中的應(yīng)用[J].情報雜志,2005,24(12):46-48.ZHAO Hua-fang,ZHU Dong-hua.Enabling appliaction of information visualization on technology monitoring[J].Journal of Information,2005,24(12):46-48.(in Chinese)
[2]葉舸,田兆鋒,閆楚良.基于OpenGL的飛機飛行實測數(shù)據(jù)可視化研究[J].航空學(xué)報,2011,32(6):1050-1057.YE Ke,TIAN Zhao-feng,YAN Chu-liang.Flight-test data visualization of aircraft’s flight course based on OpenGL[J].Acta Aeronautica Et Astronautica Sinica,2011,32(6):1050-1057.(in Chinese)
[3]郭衛(wèi)剛,韓維,王秀霞.基于Matlab/Flightgear飛機飛行性能的可視化仿真系統(tǒng)[J].實驗技術(shù)與管理,2010,27(10):110-112.GUO Wei-gang,HAN Wei,WANG Xiu-xia.Visual simulation system of flight perfomance based on Matlab/Flightgear[J].Experimental Technology and Management,2010,27(10):110-112.(in Chinese)
[4]王金華,嚴(yán)衛(wèi)生,劉旭琳.視景仿真中的遠程水下航行器坐標(biāo)變換實現(xiàn)[J].兵工學(xué)報,2010,31(9):1145-1150.WANG Jin-hua,YAN Wei-sheng,LIU Xu-lin.Coordinate transformation of long distance underwater vehicles in visual simulation[J].Acta Armamentarii,2010,31(9):1145-1150.(in Chinese)
[5]尹泉,侯力,王玫,等.XML網(wǎng)頁開發(fā)實例教程[M].北京:機械工業(yè)出版社,2002.YI Quan,HOU Li,WANG Mei,et al.XML web development tutorial examples[M].Beijing:China Machine Press,2002.(in Chinese)
[6]曾春華,王超,張鵬.XML編程從入門到精通[M].北京:希望電子出版社,2002.ZENG Chun-hua,WANG Chao,ZHANG Peng.XML programming from entry to the master[M].Beijing:Hope Electronic Press,2002.(in Chinese)
[7]張昌宏,王嘩,丁展春.基于XML的企業(yè)應(yīng)用集成方法研究[J].艦船電子工程,2005,(6):81-84.ZHANG Chang-hong,WANG Hua,DING Zhan-chun.Based on XML enterprise application integration method[J].Ship Electronic Engineering,2005,(6):81-84.(in Chinese)
Flight-test Data Visualization Research on Flight Course of Guided Munition Based on FlightGear
ZHANG Long,ZHAO Zhi-qin,LIU Xiao-lei,TIAN Zhong-liang
(Northwest Institute of Mechanical &Electrical Engineering,Xianyang 712099,Shaanxi,China)
In order to analyze if the flight-test data to satisfy the performance requirements of flight,and to observe the relative motions between guided munition parts during the course of flight,by use of FlightGear flight simulation platform,the guided munition modeling method of 3Dmodel,the rendering method of virtual scene,the processing method of flight-test data and the measured data driven technology of 3Dmodel were studied,and the visualization system of flight measured data of guided munition was constructed to realize multi-angle of view visualization during the course of flight of guided munition.This method can intuitively reappear the flight path of guided munition during the course of flight and relative motion between various parts,and it can provide visualization technological means for judging the flight data validity of the guided munition and flight control process.
guided munition;flight measured data;data drive;visualization;FlightGear
TJ765.4
A
1673-6524(2014)01-0092-05
2013-08-02;
2013-10-11
張龍(1984-),男,碩士,工程師,主要從事智能彈藥與系統(tǒng)仿真技術(shù)研究。E-mail:zlong7@163.com