趙向領(lǐng)
(中國(guó)民航大學(xué) 空管學(xué)院,天津300300)
飛行數(shù)據(jù)記錄器 (flight data recorder,F(xiàn)DR)、快速存取記錄器 (quick access recorder,QAR)以及數(shù)字式記錄器 (digital ACMS recorder,DAR)作為現(xiàn)代大中型民用飛機(jī)常用機(jī)載設(shè)備,記錄了飛機(jī)各系統(tǒng)工作狀況、飛行員操作以及發(fā)動(dòng)機(jī)工作狀態(tài)等機(jī)載數(shù)據(jù)。這些數(shù)據(jù)客觀、全面反映了飛機(jī)的飛行狀態(tài),不僅是飛行性能監(jiān)控、飛行技術(shù)檢查、安全評(píng)估和飛機(jī)維護(hù)工作的重要數(shù)據(jù)參考[1],也是事故及事故征候調(diào)查、不安全事件分析的重要依據(jù)[2]。
目前,對(duì)機(jī)載數(shù)據(jù)的分析和研究主要是通過(guò)數(shù)據(jù)列表、二維曲線圖以及數(shù)據(jù)表格等形式,操作和判斷過(guò)程抽象,很難直觀有效地把握復(fù)雜數(shù)據(jù)集各參數(shù)之間動(dòng)態(tài)的內(nèi)在關(guān)系以及其反應(yīng)的復(fù)雜行為與狀況[3]。而視景仿真技術(shù)的發(fā)展,為機(jī)載數(shù)據(jù)可視化提供了可能。當(dāng)前美國(guó)SimAuthor公司生產(chǎn)的FlightViz[4]自譽(yù)為飛行數(shù)據(jù)分析與可視化的領(lǐng)跑者,以3D視覺(jué)效果重現(xiàn)飛行軌跡,但造價(jià)昂貴;中國(guó)民用航空局航空安全技術(shù)中心研發(fā)了基于交互式三維圖形飛行仿真系統(tǒng)EasyFlight[5],主要用于重大事故和事故征候的飛行模擬再現(xiàn)和典型案例仿真制作,但在航空公司很少見(jiàn)其蹤影。
遠(yuǎn)航通研發(fā)的QAR飛行數(shù)據(jù)三維回放產(chǎn)品[6],僅用于國(guó)航的一發(fā)失效應(yīng)急起飛程序的輔助設(shè)計(jì)和教育課件開(kāi)發(fā)。文獻(xiàn) [7]在FlightGear軟件基礎(chǔ)上進(jìn)行飛行回放開(kāi)發(fā),但開(kāi)放性軟件的地形數(shù)據(jù)可信度以及機(jī)場(chǎng)及障礙物經(jīng)緯度受到質(zhì)疑。文獻(xiàn) [8]在Google Earth上進(jìn)行飛行程序設(shè)計(jì)與模擬飛行開(kāi)發(fā),由于開(kāi)發(fā)結(jié)果必須上傳到國(guó)外服務(wù)器,保密性受到威脅,知識(shí)產(chǎn)權(quán)存在爭(zhēng)議。
本文參考飛行訓(xùn)練仿真系統(tǒng),設(shè)計(jì)了飛機(jī)飛行回放的仿真系統(tǒng),解決了大規(guī)模數(shù)據(jù)實(shí)時(shí)顯示的關(guān)鍵問(wèn)題,在普通筆記本電腦上實(shí)現(xiàn)了三維場(chǎng)景中的飛行動(dòng)態(tài)回放。該方法造價(jià)低廉,且回放流暢。
航班飛行后的機(jī)載數(shù)據(jù)經(jīng)過(guò)破譯處理后得到原始的飛行數(shù)據(jù),從該數(shù)據(jù)中提取有關(guān)飛機(jī)經(jīng)緯度位置、飛行高度、俯仰角、偏航角、滾轉(zhuǎn)角、航跡角、偏流角、真空速、地速等飛機(jī)的位置、姿態(tài)、速度等信息,進(jìn)行坐標(biāo)轉(zhuǎn)換與去噪處理獲得飛行狀態(tài)數(shù)據(jù),之后利用飛行狀態(tài)數(shù)據(jù)驅(qū)動(dòng)飛機(jī)模型運(yùn)動(dòng)?;具^(guò)程如圖1所示。
圖1 驅(qū)動(dòng)飛行原理
坐標(biāo)轉(zhuǎn)換是把經(jīng)緯度坐標(biāo)轉(zhuǎn)換成為仿真中可用的直角坐標(biāo),以飛機(jī)某一特定定位點(diǎn)為坐標(biāo)原點(diǎn),X軸向東,Z軸向北,Y軸背離地心向上。由墨卡托投影的等角性質(zhì),可將等角航線轉(zhuǎn)換為直線,提高顯示的準(zhǔn)確度和保真度,通過(guò)式 (1)實(shí)現(xiàn)。
其中
式中:(B,L)——任意點(diǎn)經(jīng)緯度,(X,Z)——對(duì)應(yīng)的直角坐標(biāo),(B0,L0)——坐標(biāo)原點(diǎn)的經(jīng)緯度,a、b、f、e、e′——地球橢球體的長(zhǎng)半軸、短半軸、扁率、第一偏心率、第二偏心率,N——卯酉圈曲率半徑。
由于飛行干擾與擾動(dòng)、機(jī)載設(shè)備精度與數(shù)據(jù)采集模式的影響使得轉(zhuǎn)換數(shù)據(jù)出現(xiàn)明顯差錯(cuò),甚至矛盾,如果不進(jìn)行處理,在飛行回放中會(huì)出現(xiàn)不正常的振動(dòng)和擺動(dòng),本文通過(guò)去噪處理和平滑性處理解決。終端區(qū)近地面飛行時(shí),要考慮到飛機(jī)與地面之間的關(guān)系,要求飛機(jī)位置與地形位置匹配準(zhǔn)確度高??紤]到飛機(jī)起飛著陸時(shí)必然在跑道上,此時(shí)高度數(shù)據(jù)為零或機(jī)場(chǎng)標(biāo)高;飛機(jī)離地或即將著陸時(shí),定位點(diǎn)也比較多,這些點(diǎn)都可以用來(lái)修正和校對(duì)飛行軌跡。
飛行回放仿真中飛行的場(chǎng)景必不可少,且飛行場(chǎng)景信息應(yīng)當(dāng)與飛機(jī)飛行的位置和姿態(tài)動(dòng)態(tài)變化,因此要根據(jù)飛機(jī)位置和姿態(tài)確定可見(jiàn)的場(chǎng)景區(qū)域,在該區(qū)域內(nèi)顯示地形,建筑物等場(chǎng)景信息,從而實(shí)現(xiàn)在三維場(chǎng)景中進(jìn)行動(dòng)態(tài)回放。
視景仿真技術(shù)在航空方面主要是應(yīng)用于飛行訓(xùn)練仿真和飛行器駕駛模擬[9-11],飛行軌跡回放方面應(yīng)用很少。本文參考飛行訓(xùn)練仿真系統(tǒng),采用數(shù)據(jù)驅(qū)動(dòng)式飛行可視化仿真技術(shù)[12]實(shí)現(xiàn)飛行回放,即按照時(shí)間順序,對(duì)某次飛行的真實(shí)歷史飛行狀態(tài)數(shù)據(jù)從不同視角進(jìn)行可視化仿真。
該飛行回放系統(tǒng)分為5個(gè)模塊和3種數(shù)據(jù) (如圖2所示)。5個(gè)模塊包括:機(jī)載數(shù)據(jù)的提取與轉(zhuǎn)化模塊,飛行運(yùn)動(dòng)仿真模塊,視景驅(qū)動(dòng)模塊,綜合顯示與實(shí)體對(duì)象管理模塊和安全分析與評(píng)估模塊。3種數(shù)據(jù)有:機(jī)載數(shù)據(jù),地形高程數(shù)據(jù)和三維實(shí)體模型。
圖2 系統(tǒng)結(jié)構(gòu)
機(jī)載數(shù)據(jù)的提取與轉(zhuǎn)化用于從經(jīng)過(guò)初步處理的機(jī)載數(shù)據(jù)中提取經(jīng)緯度、航向、速度等重要信息,做經(jīng)緯度修正、坐標(biāo)轉(zhuǎn)換、航跡計(jì)算、軌跡平滑處理、偏差消除等工作。
飛行運(yùn)動(dòng)仿真模塊是通過(guò)外界輸入設(shè)備或準(zhǔn)備好時(shí)飛行數(shù)據(jù)驅(qū)動(dòng)飛機(jī)再現(xiàn)真實(shí)飛行。顯示飛機(jī)運(yùn)動(dòng)的位置、航向、姿態(tài)等。
視景驅(qū)動(dòng)模塊通過(guò)攝像機(jī)或飛機(jī)駕駛艙前窗來(lái)確定所能見(jiàn)到的場(chǎng)景,確定顯示區(qū)域及其區(qū)域內(nèi)部要顯示場(chǎng)景信息。
綜合顯示與實(shí)體對(duì)象管理模塊用于把可見(jiàn)的場(chǎng)景所需數(shù)據(jù)動(dòng)態(tài)讀入內(nèi)存,根據(jù)景物與地形塊的位置拓?fù)潢P(guān)系,把可見(jiàn)景物和地形顯示出來(lái),并把不可見(jiàn)的場(chǎng)景信息卸載,回收內(nèi)存。
安全分析與評(píng)估報(bào)告模塊在飛行過(guò)程中判斷飛機(jī)與障礙物的相互關(guān)系,檢查超障余度,檢查飛行數(shù)據(jù)與參考值的偏離等相關(guān)信息,記錄評(píng)判偏離是否在允許范圍內(nèi),確定偏離較大的物理量。
機(jī)載數(shù)據(jù)是機(jī)載記錄設(shè)備記錄的,經(jīng)過(guò)初步處理的飛行狀態(tài)參數(shù)數(shù)據(jù),本文采用的是QAR數(shù)據(jù)。
地形高程數(shù)據(jù)是機(jī)場(chǎng)周邊的地形高度信息,用于真實(shí)再現(xiàn)機(jī)場(chǎng)及周邊環(huán)境,建立自然障礙物。
三維實(shí)體模型是飛機(jī)、候機(jī)樓、塔臺(tái)等三維模型和航路、進(jìn)離場(chǎng)程序、障礙物評(píng)價(jià)面等虛擬實(shí)體模型。
為實(shí)現(xiàn)三維真實(shí)場(chǎng)景的飛行回放,需要對(duì)大規(guī)模地形數(shù)據(jù)需要恰當(dāng)?shù)奶幚恚駝t會(huì)影響動(dòng)畫(huà)顯示效果。地形數(shù)據(jù)處理在于如何快速連續(xù)地動(dòng)態(tài)顯示地形高程信息,紋理信息以及其表面的附屬物。
機(jī)場(chǎng)終端區(qū)是飛行事故、事故征候的多發(fā)區(qū),飛機(jī)的起飛與降落也是飛機(jī)性能保障的關(guān)鍵階段,在這個(gè)階段,對(duì)飛行員的飛行操作要求與爬升、巡航、下降相比要求較高。因此終端區(qū)的飛行回放與演練更具實(shí)際意義。
在三維場(chǎng)景中回放飛機(jī)在終端區(qū)的起降,逼真的機(jī)場(chǎng)及其周邊建筑物、障礙物等場(chǎng)景信息必不可少,飛行回放的場(chǎng)景地形數(shù)據(jù)占整個(gè)程序數(shù)據(jù)處理的很大部分,高精度的地形場(chǎng)景不僅給人清晰、真實(shí)之感,而且可以更精確的飛行回放。由于計(jì)算機(jī)數(shù)據(jù)處理能力的有限性與廣大地形數(shù)據(jù)的無(wú)限性矛盾,大規(guī)模的地理信息數(shù)據(jù)顯示通常是飛行仿真和場(chǎng)景漫游的速度瓶頸,如果不恰當(dāng)處理將會(huì)限制飛行回放的質(zhì)量,這就要求設(shè)計(jì)分塊地形場(chǎng)景的動(dòng)態(tài)顯示和處理[13-15]。
地形數(shù)據(jù)一般采用地形高程模型 (digital elevation model,DEM),把地形高程數(shù)據(jù)分成很多小塊,按平面坐標(biāo)形式編號(hào)。如圖3所示,通過(guò)飛機(jī)所在位置P(X,Z)確定 所 需 地 形 塊:ix= [X/WIDTH],iz= [Z/HEIGHT]。WIDTH,HEIGHT分別表示地形塊的以像素為單位的寬度和高度,(ix,iz)為飛機(jī)當(dāng)前所在地形塊的索引坐標(biāo),及圖上地形塊①。調(diào)入該地形塊①,并以其為中心調(diào)入周邊相鄰的8個(gè)地形塊②、③、④、⑤、⑥、⑦、⑧、⑨,之后渲染,經(jīng)過(guò)緩沖區(qū)再顯示。
圖3 確定地形塊
飛行顯示每刷新一次,判斷一次飛機(jī)所在地形塊,如果仍在原來(lái)地形塊,則只把緩沖區(qū)中渲染好的場(chǎng)景顯示,不再讀取和渲染;如果飛機(jī)到了新的地形塊,比如從①飛到了②,則全部卸載,然后以②為中心,讀?、诩捌渲苓叺?個(gè)地形塊,渲染并顯示,從而實(shí)現(xiàn)地形的動(dòng)態(tài)更新。
飛機(jī)爬升、巡航、下降階段一般距地面比較高,低精度地形高程信息甚至地理平面數(shù)據(jù)即可滿足視覺(jué)要求,但飛機(jī)在機(jī)場(chǎng)終端區(qū)運(yùn)行時(shí)要考慮飛機(jī)相對(duì)于跑道、障礙物、相關(guān)飛行程序等的關(guān)系,必然要顯示高清晰地形場(chǎng)景,因此,飛機(jī)的高度決定了地形數(shù)據(jù)的精度。
如圖4所示,不同精度數(shù)據(jù)在同一屏幕上顯示大小相同,而顯示的視野大小不同。低精度數(shù)據(jù)是在高精度數(shù)據(jù)基礎(chǔ)上人為降低數(shù)據(jù)精度,地形塊大小不變,地形數(shù)據(jù)范圍增大。本文調(diào)用高度精度地形數(shù)據(jù)的轉(zhuǎn)換高度設(shè)為400m,800m和1500m這4個(gè)精度層次。
圖4 確定精度層次
本文基于三維場(chǎng)景的飛機(jī)回放仿真在普通筆記本電腦上實(shí)現(xiàn)。運(yùn)行配制為:Intel(R)Core (TM)2Duo,2.2GH,2GB 內(nèi) 存,NIVIDIA GeForce GT240T 顯 卡;Windows 7操作系統(tǒng)。底層三維引擎為OpenGL,軟件開(kāi)發(fā)平臺(tái)為VC++6.0。三維模型建造工具3DMAX,紋理圖像處理軟件為Photoshop。
圖5是拉薩機(jī)場(chǎng)09L跑道飛機(jī)起飛的飛行回放演示。地形高程數(shù)據(jù)來(lái)源于中國(guó)科學(xué)院科學(xué)數(shù)據(jù)庫(kù)的SRTM數(shù)據(jù)服務(wù)系統(tǒng),采用的是30m精度數(shù)據(jù)。SRTM以1經(jīng)緯度大小為一塊存儲(chǔ),本文切割成了可動(dòng)態(tài)處理的128×128大小的地形塊。在渲染地形數(shù)據(jù)時(shí)可用最高精度在原數(shù)據(jù)精度基礎(chǔ)上擴(kuò)大30倍,其它不同精度相應(yīng)增大倍數(shù),以實(shí)現(xiàn)1:1回放效果。機(jī)載數(shù)據(jù)為某航空公司開(kāi)辟高原航線試飛時(shí)的真實(shí)飛行數(shù)據(jù)。紋理數(shù)據(jù)來(lái)源于Google Earth,跑道信息來(lái)源于機(jī)場(chǎng)AIP,飛機(jī)3DS模型尚未加紋理。
經(jīng)演示,動(dòng)畫(huà)運(yùn)行速度20幀以上,動(dòng)畫(huà)比較連貫,可以達(dá)到真實(shí)場(chǎng)景飛行回放的目的。
仿真采用了多層次真實(shí)紋理,動(dòng)畫(huà)可達(dá)到微軟模擬飛行游戲的視覺(jué)效果,而國(guó)航用的遠(yuǎn)航通飛行引擎采用的是顏色紋理,且地理信息數(shù)據(jù)與飛機(jī)比例不搭配;FlightViz雖然用了真實(shí)紋理,紋理精度單一,近距離地貌效果顯示模糊。該原型機(jī)把進(jìn)離場(chǎng)程序及其保護(hù)區(qū)整合在了場(chǎng)景中,圖4中黃色透明帶即為RWY09L離場(chǎng)程序及保護(hù)區(qū),F(xiàn)lightViz與EasyFlight仍然以輔助窗口顯示航圖形式顯示進(jìn)離場(chǎng)程序。此外,飛機(jī)模型還做有包圍盒 (Bounding Box)和碰撞檢測(cè)程序,在飛行回放中,如果飛機(jī)包圍盒與障礙物、飛行程序保護(hù)區(qū)相關(guān)平面以及與其它飛機(jī)模型包圍盒發(fā)生碰撞干涉時(shí),會(huì)發(fā)出警告信息;而其它回放程序干涉問(wèn)題都是在飛行過(guò)程結(jié)束后在二維圖形中進(jìn)行分析,使得事故征候很難在回放中辨識(shí)出來(lái)。
圖5 飛行回放演示
本文主要完成了在虛擬現(xiàn)實(shí)場(chǎng)景中對(duì)飛機(jī)飛行軌跡的回放;給出了基于三維場(chǎng)景的飛行回放仿真系統(tǒng)的系統(tǒng)結(jié)構(gòu);解決了高分辨率大規(guī)模地形數(shù)據(jù)實(shí)時(shí)顯示問(wèn)題。
該系統(tǒng)實(shí)現(xiàn)了多視角復(fù)雜地形場(chǎng)景的飛行回放仿真,飛機(jī)狀態(tài)完全根據(jù)真實(shí)機(jī)載數(shù)據(jù),能夠有效反應(yīng)飛行的狀態(tài),可以用于輔助飛行品質(zhì)檢測(cè)以及事后事故調(diào)查。該系統(tǒng)應(yīng)用開(kāi)放地形數(shù)據(jù)和3DS飛機(jī)模型,而且地形數(shù)據(jù)塊按經(jīng)緯度排布,只需稍微處理就可以更換其它所需機(jī)場(chǎng)數(shù)據(jù),擴(kuò)展性強(qiáng)。此外,如果把機(jī)載數(shù)據(jù)變成數(shù)據(jù)化的飛行程序,就可對(duì)新設(shè)計(jì)的飛行程序進(jìn)行試飛校驗(yàn)。
[1]GENG Hong,JIE Jun.Fuel flow regression model of aircraft cruise based on QAR data[J].Aeroengine,2008 34 (4):46-50 (in Chinese).[耿宏,揭俊.基于QAR數(shù)據(jù)的飛行巡航段燃油流量回歸模型 [J].航空發(fā)動(dòng)機(jī),2008,34 (4):46-50.]
[2]LI Chunxiang.Research on the visualization technology of flight data[J].China Safety Science Journal,2009,19 (1):166-171(in Chinese).[李春香.飛行數(shù)據(jù)可視化技術(shù)研究 [J].中國(guó)安全科學(xué)學(xué)報(bào),2009,19 (1):166-171.]
[3]WANG Wei,LIU Shaohua,GAO Hui,et al.Design and implementation of virtual flight reappearance system driven by flight data[J].Journal of System Simulation,2007,19 (9):2000-2002(in Chinese).[王煒,劉少華,高輝,等.飛參驅(qū)動(dòng)的虛擬飛行再現(xiàn)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].系統(tǒng)仿真學(xué)報(bào),2007,19 (9):2000-2002.]
[4]SimAuthor.FlightViz-flight data animation software [EB/OL].[2011-05-12].http://www.simauthor.com/flightviz.html.
[5]China Academy of Civil Aviation Science and Technology.3D flight simulation system-easyflight [EB/OL].[2011-03-21].http://www.castc.org.cn/kjcg/hkaqlycg/2006yq1/201006/t20100624_537.html(in Chinese). [中國(guó)民航科學(xué)技術(shù)研究院.三維飛行仿真系統(tǒng)-EasyFlight [EB/OL]. [2011-03-21].http://www.castc.org.cn/kjcg/hkaqlycg/2006yq1/201006/t20100624_537.html.]
[6]Aero-com.QAR flight data 3Dreplay production solution [EB/ON].[2011-03-20].http://www.aero-com.cn/aero-com/Default.aspx?tabid=163(in Chinese).[遠(yuǎn)航通.QAR飛行數(shù)據(jù)三維回放產(chǎn)品方案 [EB/OL].[2011-03-20].http://www.aero-com.cn/aero-com/Default.aspx?tabid=163.]
[7]GUO Weigang,HAN Wei,WANG Xiuxia.Visual simulation system of flight performance based on Matlab/Flightgear [J].Experimental Technology and Management,2010,27 (10):110-112 (in Chinese). [衛(wèi)剛,韓維,王秀霞.基于 Matlab/Flightgear飛機(jī)飛行性能的可視化仿真系統(tǒng) [J].實(shí)驗(yàn)技術(shù)與管理,2010,27 (10):110-112.]
[8]TANG Yong,LIU Changzhong,WU Honggang.3Dflight track and 6-DOF flight simulation based on Google Earth [J].Journal of Computer Applications,2009,29 (12):3385-3387(in Chinese).[唐勇,劉昌忠,吳宏剛.基于Google Earth的三維航跡監(jiān)視及六自由度飛行仿真 [J].計(jì)算機(jī)應(yīng)用,2009,29 (12):3385-3387.]
[9]JIAN Ying,YE Zhen,GUO Jie.A visual flight simulation platform for UAVs [J].Computer Engineering,2005,31(14):190-192 (in Chinese).[貝英,葉榛,郭杰.無(wú)人機(jī)飛行視景仿真平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn) [J].計(jì)算機(jī)工程,2005,31(14):190-192.]
[10]GUO Pengsong,YIN Hong,YAN Feng,et al.Implementation of plane’s walkthrough system of virtual scene based on OpenGL [J].Computer Engineering and Design,2005,26(7):1938-1941 (in Chinese). [郭蓬松,殷宏,晏峰,等.基于OpenGL的飛機(jī)虛擬場(chǎng)景漫游系統(tǒng)的實(shí)現(xiàn) [J].計(jì)算機(jī)工程與設(shè)計(jì),2005,26 (7):1938-1941.]
[11]XU Yongbo,WANG Xingren.Study on image jittering in visual system of networked flight simulators [J].Acta Simulata Systematica Sinica,2005,17 (2):414-417 (in Chinese).[徐勇波,王行仁,賈榮珍.飛行仿真器聯(lián)網(wǎng)仿真視景圖像抖動(dòng)研究[J].系統(tǒng)仿真學(xué)報(bào),2005,17 (2):414-417.]
[12]WU Jing,WU Xiaoyan,ZHOU Yanyan.Research on design and realization of steering flight visual simulation system [C].Asia Simulation Conference—7th Intl Conf on Sys Simulation and Scientific Computing,2008:1350-1353.
[13]ZHAO Xiangling, WEI Zhiqiang,XIE Chunsheng.Rapid generating method for terrain scene in flight simulation [J].Journal of Civil Aviation University of China,2007:30-33 (in Chinese).[趙向領(lǐng),魏志強(qiáng),謝春生.飛行仿真視景中的地形快速生成算法 [J].中國(guó)民航大學(xué)學(xué)報(bào),2007:30-33.]
[14]XIE Jianbin,LIU Tong,ZHANG Zhaowen,et al.A new method for dynamic-loading large terrain dataset visualization in flight simulation [C].Proc of 2nd Workshop on Digital Media and its Application in Museum and Heritage,2007:218-222.
[15]XIAO Yanhu,SUN Bo,ZHAO Huiqin,et al.Visual simulation system for flight simulation based on OSG [C].International Conference on Audio Language and Image Processing Proceedings,2010:562-566.