姚 冰
(中國民航大學(xué) 航空工程學(xué)院,天津 300300)
航空運輸業(yè)對拉動全球經(jīng)濟增長作用明顯,是國家發(fā)展的重要載體。美國不僅具有國際領(lǐng)先的飛機制造產(chǎn)業(yè)和技術(shù),還擁有完善的航空運輸系統(tǒng)。預(yù)計到2025年,美國的空中運輸系統(tǒng)需要容納目前飛機數(shù)量的4倍,下一代空中交通系統(tǒng)的關(guān)鍵就在等效可視飛行能力[1]。等效可視飛行能力可以擺脫實際天氣和能見度狀況的限制,獲得“全天候”滑行和著陸的能力,現(xiàn)代視景系統(tǒng)是獲得這種“全天候”著陸能力的一種有效手段。視景系統(tǒng)大部分使用平視顯示器(HUD)作為顯示裝置,HUD技術(shù)源于軍工技術(shù),20世紀80年代初開始應(yīng)用于民用干線飛機,并日趨成為駕駛艙的重要組成部分,波音787就將 HUD作為必裝設(shè)備[2]。HUD主要通過數(shù)據(jù)采集、信息計算、圖形生成、投影和準直等一系列處理將一些重要飛行信息(飛行航跡、高度、速度和姿態(tài)等)以綠色的符號形式顯示在飛行員正前方“無窮遠”處,與駕駛艙外景/目標重疊在一起[3]。本文基于 GL studio軟件和 Vega Prime軟件對大型運輸機平視顯示系統(tǒng)進行仿真[4-5]研究,為后續(xù)針對平視顯示器開展工效和認知研究提供基礎(chǔ)。
本系統(tǒng)以增強視景系統(tǒng)搭載的平視顯示系統(tǒng)為藍本,利用GL Studio制作出動態(tài)鏈接庫(.dll)形式的平視顯示器靜態(tài)模型,導(dǎo)入Vega Prime提供的三維場景(地形、運輸機和障礙物等模型)中,通過接口插件GLS Vega Prime PlugIn實現(xiàn)仿真數(shù)據(jù)傳遞,從而完成平視顯示系統(tǒng)的動態(tài)仿真。平視顯示系統(tǒng)開發(fā)流程如圖1所示。
為了實現(xiàn)大型運輸機平視顯示器的仿真,首先確定工程類型,設(shè)計平視顯示器的靜態(tài)圖形界面,根據(jù)仿真任務(wù)的需要,平視顯示器界面上有航向、高度、速度、下降率和姿態(tài)等主要飛行信息,參照波音787飛機平視顯示器的格式,空速表、高度表和俯仰角度刻度表為柱形刻度表,航向角刻度表和滾轉(zhuǎn)角刻度表為盤形刻度表;其次由于運輸機平視顯示系統(tǒng)要求實時顯示外部視景和各項飛行信息,因此需要對平視顯示器靜態(tài)界面上的各儀表對象添加相應(yīng)的屬性、方法和變量;然后利用GL Studio代碼生成器生成.cpp和.h文件格式的源代碼文件,最終編譯生成.dll形式的平視顯示器靜態(tài)模型。平視顯示器靜態(tài)模型開發(fā)流程圖如圖2所示,開發(fā)出的平視顯示器靜態(tài)模型如圖3所示。
圖1 平視顯示系統(tǒng)開發(fā)流程
1.2.1 平視顯示器上柱形刻度表的開發(fā)
平視顯示器上柱形刻度表是指帶有刻度符號和對應(yīng)數(shù)值的柱形虛擬儀表,空速表、高度表和俯仰角刻度表都屬于柱形刻度表。下面以空速表為例,對柱形刻度表的開發(fā)過程進行說明。
空速表主要由綠色刻度符號和對應(yīng)的數(shù)值組成。利用GL Studio編輯器設(shè)計窗口工具欄中的“Adds a line object”即可輕易制作綠色刻度符號,然后在對象屬性窗口設(shè)置綠色刻度符號的位置和長度。同樣,對于綠色刻度符號對應(yīng)的刻度值,只需單擊GL Studio編輯器設(shè)計窗口工具欄中“Inserts a GlsTextGrid”制作按鈕即可,然后在對象屬性窗口設(shè)置刻度值的位置、顏色和大小等信息,但是空速實時顯示框與背景刻度值存在疊加,需要建立組件,以控制背景刻度值在空速實時顯示框區(qū)域處是不可見的。建立好空速表的靜態(tài)界面后,在代碼區(qū)內(nèi)添加屬性AirSpeed,同時添加相應(yīng)代碼,使各刻度值處能實時輸出正確的數(shù)值。
圖2 平視顯示器靜態(tài)模型開發(fā)流程圖
圖3 平視顯示器靜態(tài)模型
1.2.2 平視顯示器上盤形刻度表的開發(fā)
平視顯示器上盤形刻度表是指帶有刻度符號和對應(yīng)數(shù)值的盤形虛擬儀表,航向角度表和滾轉(zhuǎn)角度表都屬于盤形刻度表。盤形刻度表的制作較簡單,只需利用好GL Studio編輯器設(shè)計窗口工具欄中的“Inserts a GlsAngularScale”即可,該按鈕用來制作盤形刻度符號。在實時飛行中,為了便于飛行員能夠迅速地掃視到航向角信息,航向角刻度值需時刻保持在便于飛行員閱讀的正立狀態(tài),因此在代碼區(qū)的屬性中對每個刻度值符號添加函數(shù)DynamicRotate(),該函數(shù)用來控制對象的旋轉(zhuǎn)。
1.2.3 添加交互代碼
制作好平視顯示器靜態(tài)模型后,在GL Studio編輯器代碼區(qū)添加交互代碼。在實時飛行中,通過插件GLS Vega Prime PlugIn接收運輸機在由 Vega Prime軟件提供的三維場景中的實時飛行信息,并在平視顯示器各儀表上體現(xiàn)出來。
Vega Prime的視景仿真主要包括視景模型的預(yù)處理、LynxPrime圖形界面設(shè)計和視景仿真程序設(shè)計3個部分。視景模型的預(yù)處理主要包括大地形建模和實體(運輸機、儀表等)建模;LynxPrime圖形界面設(shè)計主要包括環(huán)境設(shè)置和模型初始位置定位;視景仿真程序設(shè)計則使用VC++平臺創(chuàng)建控制臺程序或者創(chuàng)建MFC對話框程序,對視景仿真程序進行更深層次的設(shè)計。
本文在完成視景模型的預(yù)處理后,在LynxPrime圖形界面中首先加入運輸機模型(如圖4所示),然后利用插件GLS Vega Prime PlugIn將平視顯示器靜態(tài)模型導(dǎo)入,在Object Connection中關(guān)聯(lián)運輸機模型,同時修改其位置參數(shù),將其定位在座艙中的正確位置,最后設(shè)置三維視景中的各種環(huán)境,從而完成HUD.acf文件的配置。在視景仿真程序設(shè)計中使用VC++平臺創(chuàng)建好控制臺程序后,直接在項目源文件中的HUD.cpp文件中定義已經(jīng)配置好的HUD.acf文件,然后根據(jù)需要進行其他編程(如加入操縱桿或進行自動飛行),從而完成平視顯示系統(tǒng)的開發(fā)。平視顯示系統(tǒng)動態(tài)圖如圖5所示。
圖4 運輸機模型
圖5 平視顯示系統(tǒng)動態(tài)圖
將GL Studio制作出動態(tài)鏈接庫(.dll)形式的平視顯示器靜態(tài)模型導(dǎo)入Vega Prime軟件中的運輸機模型后,運行平視顯示系統(tǒng)的過程中可能會出現(xiàn)平視顯示器界面無法顯示的問題,這是因為在使用VC++平臺編譯GL Studio自動生成的各種源文件時沒有正確配置編譯環(huán)境。
GL Studio軟件中,對于生成的可執(zhí)行文件有兩種調(diào)用方式,相應(yīng)地在VC++平臺中創(chuàng)建工程時有兩種類型的工程:StandaloneAppWizard類型和Live Component Wizard類型。本 文 選 擇 LiveComponent Wizard類型的工程,經(jīng)過編譯后會生成.dll形式的文件,因此在VC++平臺中將項目屬性的活動解決方案配置設(shè)為 Release/Debug LiveComponent glsdll md,從而與.dll的工程類型相對應(yīng)。
在運輸機飛行過程中,平視顯示器實時顯示各種飛行信息,地平線標志刻度線、地平線標志線以上的俯仰角刻度線及地平線標志線以下的俯仰角刻度線之間是存在差異的(如圖5所示),目的是使經(jīng)過訓(xùn)練的飛行員在飛行過程中可以輕易地獲取飛機的俯仰角度值,但這也增加了俯仰角刻度線制作的復(fù)雜性。
由于GL Studio軟件可結(jié)合VC++進行混合編程,因此可以在GL Studio編輯器設(shè)計窗口的同時畫好地平線標志刻度線、地平線標志線以上的俯仰角刻度線和地平線標志線以下的俯仰角刻度線,將其作為俯仰刻度線基線(如圖6所示),然后在代碼區(qū)中添加方法ChangeLadder(int number),同時添加如下代碼來控制三者的顯示:
圖6 俯仰刻度線基線
在Vega Prime軟件提供的虛擬三維環(huán)境中,運輸機與場景(山、房屋和跑道等)之間會出現(xiàn)“穿透”的現(xiàn)象,使仿真程序失真。Vega Prime中的碰撞檢測基類vpIsector封裝了Tripod、Bump、ZPR等7種相對簡單的碰撞檢測器,用戶先根據(jù)飛行任務(wù)需要選擇碰撞檢測器,然后將碰撞檢測器和目標物體的Isector Mask碼設(shè)為不同的值,只有當兩者的“與”值不為零時進行碰撞檢測。Vega Prime直接利用acf配置即可配置類vpIsector中的碰撞檢測器,但是只能進行碰撞檢測,用戶可以根據(jù)需要編寫碰撞效果程序。
本文以增強視景系統(tǒng)搭載的平視顯示系統(tǒng)為藍本,根據(jù)平視顯示系統(tǒng)的特征和功能要求,基于GL Studio軟件和Vega Prime軟件進行大型運輸機平視顯示系統(tǒng)的仿真。較為詳細地敘述了開發(fā)流程,并對開發(fā)過程中的一些關(guān)鍵問題提出了解決方法。本文的平視顯示系統(tǒng)仿真為后續(xù)針對平視顯示器開展工效和認知研究提供基礎(chǔ),從而提高飛行員的情境意識,改善飛行員的飛行績效。
[1] Randall E Bailey,Lynda J Kramer,Steven P Williams.Enhanced vision for all-weather operations under NextGen[R].Hampton:NASA Langley Research Center,2010.
[2] 何光勤.美國新一代航空運輸系統(tǒng)及其對中國的借鑒意義[J].科技經(jīng)濟市場,2011(5):71-73.
[3] 張偉.民機新一代駕駛艙顯示技術(shù)[J].民用飛機設(shè)計與研究,2011(2):4-7.
[4] 于輝,趙經(jīng)成,付戰(zhàn)平,等.GL Studio虛擬儀表技術(shù)應(yīng)用與系統(tǒng)開發(fā)[M].北京:國防工業(yè)出版社,2010.
[5] 董秀成,鄭海春,李兆鋒.Vega Prime實時三維虛擬現(xiàn)實開發(fā)技術(shù)[M].成都:西南交通大學(xué)出版社,2012.