国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Vega Prime的無(wú)人直升機(jī)飛行模擬訓(xùn)練系統(tǒng)研究與實(shí)現(xiàn)

2019-04-10 09:28李婷婷
直升機(jī)技術(shù) 2019年1期
關(guān)鍵詞:操作員模擬訓(xùn)練視圖

李婷婷

(中國(guó)直升機(jī)設(shè)計(jì)研究所,江西 景德鎮(zhèn) 333001)

0 引言

現(xiàn)階段的無(wú)人直升機(jī)飛行操作員的職能是控制無(wú)人直升機(jī)的起飛與著陸過(guò)程,飛行操作員在工作中必須隨時(shí)監(jiān)視無(wú)人直升機(jī)的狀態(tài),并且能夠在緊急情況下控制無(wú)人直升機(jī)返航并著陸。總結(jié)該項(xiàng)工作存在以下問(wèn)題:

1) 飛行操作員實(shí)裝訓(xùn)練容易受到天氣、場(chǎng)地等環(huán)境因素的影響;

2) 由于無(wú)人直升機(jī)的飛行特效,其試飛存在較高的安全風(fēng)險(xiǎn);

3) 特別是初期接受訓(xùn)練的操作員,操作不當(dāng)容易損壞飛機(jī),降低飛機(jī)壽命。

無(wú)人直升機(jī)飛行模擬訓(xùn)練系統(tǒng)是對(duì)實(shí)際飛行操作環(huán)境的一個(gè)虛擬再現(xiàn),可以模擬飛行操作員實(shí)際操作無(wú)人直升機(jī),通過(guò)培訓(xùn)可以提高操控?zé)o人直升機(jī)及應(yīng)對(duì)處理突發(fā)事件的能力,繼而很好地為飛行操作員實(shí)裝訓(xùn)練做基礎(chǔ)。既能提高飛行安全,又降低了飛行試驗(yàn)的成本。

論文基于Vega Prime研究,實(shí)現(xiàn)了一套無(wú)人直升機(jī)飛行模擬訓(xùn)練系統(tǒng)。系統(tǒng)集成了某型無(wú)人直升機(jī)飛行動(dòng)力學(xué)模型、FUTABA操控盒、3D視景演示、故障模擬訓(xùn)練、考核機(jī)制和通用訓(xùn)練軟件。系統(tǒng)設(shè)計(jì)簡(jiǎn)單、逼真度高、人機(jī)交互性強(qiáng)。

1 硬件組成與設(shè)計(jì)方案

1.1 硬件組成

如圖1所示,系統(tǒng)硬件由主控計(jì)算機(jī)、FUTABA操控盒、視景顯示系統(tǒng)組成。主控計(jì)算機(jī)使用HP Z230圖形工作站并配置NVIDIA Quadro K2000顯卡,計(jì)算機(jī)內(nèi)運(yùn)行飛行模擬訓(xùn)練軟件,承擔(dān)某型無(wú)人直升機(jī)飛行動(dòng)力學(xué)控制運(yùn)算、三維視景實(shí)時(shí)渲染等核心任務(wù)。操控盒使用FUTABA,飛行操作員通過(guò)FUTABA控制桿分別對(duì)無(wú)人機(jī)模型的總距、俯仰、尾槳、滾轉(zhuǎn)舵機(jī)通道進(jìn)行控制。視景顯示系統(tǒng)由曲面液晶電視和顯示支架組成,接收來(lái)自主控計(jì)算機(jī)的視頻和音頻信號(hào),通過(guò)DVI轉(zhuǎn)接HDMI線纜傳輸并顯示。

圖1 飛行模擬訓(xùn)練系統(tǒng)組成

1.2 設(shè)計(jì)方案

按圖1所示,系統(tǒng)設(shè)計(jì)方案如下:

1) 建立訓(xùn)練軟件選擇界面,選擇進(jìn)入通用訓(xùn)練軟件或某型無(wú)人直升機(jī)飛行訓(xùn)練軟件。通用訓(xùn)練軟件為普通航模訓(xùn)練者使用的應(yīng)用軟件。

2) 某型無(wú)人直升機(jī)飛行訓(xùn)練軟件包括三維視景演示模塊、飛行控制模塊和FUTABA操控盒,飛行控制模塊包含該型機(jī)飛行動(dòng)力學(xué)模型,是整個(gè)系統(tǒng)的控制對(duì)象。操控盒的連續(xù)輸出量直接被飛行控制模塊調(diào)用,經(jīng)飛行控制模塊解算出無(wú)人機(jī)的當(dāng)前位置和姿態(tài)等信息。

3) 三維視景演示模塊實(shí)時(shí)接收飛行控制模塊輸出的位置和姿態(tài)信息,并在3D場(chǎng)景和2D地圖中顯示無(wú)人直升機(jī)的目標(biāo)態(tài)勢(shì)信息,同時(shí)完成3D場(chǎng)景下的不同視角切換和視圖顯示。

4) 三維視景演示模塊設(shè)飛行模擬設(shè)置接口,飛行模擬設(shè)置信息實(shí)時(shí)發(fā)送給飛行控制模塊,飛行控制模塊接收并進(jìn)入接口設(shè)置的模擬飛行。

5) 三維視景演示模塊實(shí)時(shí)記錄飛行模擬過(guò)程,并事后對(duì)記錄過(guò)程進(jìn)行回放。

2 軟件結(jié)構(gòu)與實(shí)現(xiàn)

2.1 軟件結(jié)構(gòu)

飛行模擬訓(xùn)練軟件在vs2008環(huán)境下利用MFC單文件框架編程實(shí)現(xiàn),使用Vega Prime(簡(jiǎn)稱vp)平臺(tái)實(shí)現(xiàn)三維視景渲染,渲染過(guò)程在定時(shí)器響應(yīng)函數(shù)中完成。vp是美國(guó)Presagis公司在vega基礎(chǔ)上推出的新一代實(shí)時(shí)視景驅(qū)動(dòng)平臺(tái),是高性能實(shí)時(shí)三維視景仿真軟件開(kāi)發(fā)包,接口函數(shù)以C++類形式出現(xiàn),工作效率高,在虛擬現(xiàn)實(shí)領(lǐng)域應(yīng)用廣泛[1]。

vp專門設(shè)計(jì)的用戶圖形界面Lynx Prime工具大大簡(jiǎn)化了應(yīng)用程序的開(kāi)發(fā)過(guò)程。在Lynx Prime設(shè)計(jì)界面,加載使用Terra Vista生成的.mft地形數(shù)據(jù)庫(kù)文件和Multigen Creator構(gòu)建的.flt三維可視化模型,對(duì)vp使用的場(chǎng)景元素類定義及參數(shù)初始化,生成.acf配置文件。Terra Vista是Presagis公司基于Windows平臺(tái)的實(shí)時(shí)3D復(fù)雜地形數(shù)據(jù)庫(kù)生成工具系統(tǒng)軟件,專門應(yīng)用于處理高精度大面積地形數(shù)據(jù)[2]。Multigen Creator提供了強(qiáng)大的多邊形建模、矢量建模以及大面積地形精確生成等功能,生成的實(shí)時(shí)三維模型數(shù)據(jù)庫(kù),能夠和實(shí)時(shí)視景仿真軟件進(jìn)行無(wú)縫焊接[3]。

如圖2所示,按照功能模塊劃分,系統(tǒng)軟件結(jié)構(gòu)由訓(xùn)練軟件選擇、FUTABA操控盒、飛行控制模塊、三維視景演示組成,通過(guò)UDP協(xié)議實(shí)現(xiàn)三維視景演示與飛行控制模塊之間的數(shù)據(jù)實(shí)時(shí)交互。

圖2 系統(tǒng)軟件結(jié)構(gòu)

2.2 程序?qū)崿F(xiàn)

2.2.1 FUTABA操控盒

FUTABA操控盒的控制桿量線性輸出0-255數(shù)值,使用JoyStick操縱桿庫(kù)的JS4_Attach()、JS4_IsWorking()、JS4_GetAxesNums()、JS4_ReadValue()、JS4_Release()實(shí)現(xiàn)操控盒的加載、查詢,操縱桿量獲取,操縱數(shù)據(jù)讀取、釋放。把該操縱數(shù)據(jù)進(jìn)行線性轉(zhuǎn)換,使總距、縱向周期變距、橫向周期變距和尾槳距滿足某型無(wú)人直升機(jī)操縱范圍。

2.2.2 飛行控制模塊

飛行控制模塊把總距、縱向周期變距、橫向周期變距、尾槳距作為輸入,對(duì)無(wú)人機(jī)模型進(jìn)行模擬飛行處理,輸出無(wú)人機(jī)的位置、姿態(tài)信息。在定時(shí)器響應(yīng)函數(shù)中,通過(guò)WinSock2的sendto()將飛行控制模塊的無(wú)人機(jī)姿態(tài)、位置信息以UDP方式發(fā)送給三維視景演示模塊。同時(shí)通過(guò)WinSock2的recvfrom()接收三維視景演示模塊發(fā)送過(guò)來(lái)的飛行模擬設(shè)置信息,并完成對(duì)應(yīng)設(shè)置的模擬處理[4]。

2.2.3 三維視景演示

1) ACF文件配置

圖3為系統(tǒng)視景的acf文件配置界面。新建配置文件,自動(dòng)調(diào)用vpEnv模塊的EnvSun、EnvMoon、EnvSkyDome、EnvCloudLayer、EnvWind、EnvStars類建立天空中太陽(yáng)、云層等元素。在此基礎(chǔ)上,創(chuàng)建vp以下類的例程并設(shè)置,實(shí)現(xiàn)視景元素的建立和初始化。

vpEnv模塊的EnvRain、EnvSnow類:創(chuàng)建場(chǎng)景中雨雪特效實(shí)例,初始狀態(tài)下使特效隱藏。

MetaFlight模塊的Database類:分別創(chuàng)建地形數(shù)據(jù)庫(kù)類實(shí)例,通過(guò)1.27G大小的.mft地景文件把大地形場(chǎng)景加入。利用vpLADBMPagingStrategyPoint和vpLADBMGeometryGridDataset數(shù)據(jù)庫(kù)管理實(shí)例,在vp的管道式流水線渲染過(guò)程中,動(dòng)態(tài)查閱管理和AOI優(yōu)化大地形數(shù)據(jù)庫(kù)的裝載和卸載過(guò)程,根據(jù)LOD功能節(jié)點(diǎn)當(dāng)前視點(diǎn)范圍,平滑切換顯示不同分辨率的層級(jí),保證效率最優(yōu)化[5]。

圖3 ACF文件配置界面

vp模塊的Object類:分別創(chuàng)建無(wú)人直升機(jī)模型、基地周邊100m的高程數(shù)據(jù)地形、停機(jī)坪實(shí)例,模型根據(jù)的外觀尺寸均為MultiGen Creator創(chuàng)建的.flt文件。分別設(shè)定各模型的坐標(biāo)位置,使之吻合地加入3D視景場(chǎng)景。

vp模塊的Scene場(chǎng)景類:創(chuàng)建3D地景場(chǎng)景實(shí)例myScene,在該地景場(chǎng)景中加入無(wú)人直升機(jī)、停機(jī)坪、基地周圍地景,并作為vpLADBMGeometryGridDataset數(shù)據(jù)庫(kù)管理的場(chǎng)景,與大地形數(shù)據(jù)庫(kù)同時(shí)管理。

vpShadow模塊的ShadowDynamicShadows類:創(chuàng)建動(dòng)態(tài)陰影實(shí)例,模擬無(wú)人機(jī)在天空下的陰影效果,有利于觀察無(wú)人機(jī)的位置變化,增加運(yùn)動(dòng)真實(shí)感。

vp模塊的IsectorZ類:創(chuàng)建地形高度檢測(cè)實(shí)例,選擇Z檢測(cè)方法,獲取無(wú)人直升機(jī)所在位置地形高度,飛行控制模塊根據(jù)此地形高度進(jìn)行懸停,避免出現(xiàn)無(wú)人機(jī)繼續(xù)向地下飛行的不真實(shí)現(xiàn)象。

2) 線程UDP信息交互

啟動(dòng)一個(gè)線程,基于UDP協(xié)議接收飛行控制模塊發(fā)送來(lái)的位置姿態(tài)數(shù)據(jù)并通過(guò)WinSock2的recvfrom()來(lái)實(shí)現(xiàn)。飛行操縱模式和傳感器故障等飛行模擬設(shè)置在該線程中基于UDP方式發(fā)送給飛行控制模塊,WinSock2的sendto()實(shí)現(xiàn)設(shè)置信息的發(fā)送。

3) 無(wú)人機(jī)視景實(shí)時(shí)顯示

在Helicopter類中建立vp的無(wú)人機(jī)模型對(duì)象vpObject,通過(guò)對(duì)模型對(duì)象的位置和姿態(tài)賦值傳遞,在視景演示框中實(shí)時(shí)更新顯示。

vp::initialize()完成視景的內(nèi)核、場(chǎng)景渲染庫(kù)初始化和內(nèi)存分配,vpKernel::instance()->define(acfFile.c_str())ACF文件代碼轉(zhuǎn)換,configure()完成文件配置,然后在定時(shí)器OnTimer中完成系統(tǒng)的視景渲染,部分實(shí)現(xiàn)代碼如下:

int frameNum = vpKernel::instance()-> beginFrame(); //進(jìn)入仿真

myDeltaTime = vpKernel::instance()-> getSimulationDeltaTime(); //兩幀時(shí)間間隔

_p_UAV->updateEntity(myDeltaTime);

//完成無(wú)人機(jī)位置、場(chǎng)景更新

int result=vpKernel::instance()->endFrame();

//結(jié)束當(dāng)前幀循環(huán)

vpObject模型對(duì)象的setPosition()和setRotate()更新無(wú)人機(jī)的位置和姿態(tài),同時(shí)利用vpObserver觀察者對(duì)象的setPosition()和setRotate()更新觀察者的觀察位置和角度。根據(jù)現(xiàn)有無(wú)人機(jī)的飛行品質(zhì),設(shè)置當(dāng)俯仰角或滾轉(zhuǎn)角大于60°時(shí),處理無(wú)人機(jī)垂直落地并切換墜毀模型,使用vpAudioSoundSpatial和vpFxSmoke實(shí)例模擬墜地時(shí)的聲音和煙霧特效。

4) 導(dǎo)航及儀表視圖

圖4為儀表視圖,在ACF配置文件中創(chuàng)建GLS儀表窗口實(shí)例WindowGLS、管道實(shí)例channelGLS,channelGLS作為儀表窗口的顯示通道。無(wú)人機(jī)位置和姿態(tài)通過(guò)vpGLStudioComponent* _p_glsViewCmp的setAttrib()函數(shù)賦值給GLS儀表各參數(shù),然后綁定在MFC儀表視圖中顯示。

圖4 儀表視圖

圖5為導(dǎo)航視圖,設(shè)計(jì)在導(dǎo)航視圖窗口嵌入2D地圖,基于窗口消息映射機(jī)制傳遞無(wú)人機(jī)的當(dāng)前位置,并通過(guò)動(dòng)態(tài)疊加無(wú)人機(jī)標(biāo)識(shí)示意,同時(shí)繪制飛行軌跡和偏離基地直線軌跡。2D地圖為3D視景相對(duì)應(yīng)的矢量電子地圖,包含道路、河流、邊界以及輔助顯示信息多個(gè)圖層。在MFC中創(chuàng)建導(dǎo)航視圖窗口,在視圖窗口類中嵌入使用MapWinGis繪圖控件,SetProperty()完成圖層設(shè)置,DrawLineEx()軌跡繪制,ZoomIn()視場(chǎng)縮小,ZoomOut()視場(chǎng)放大,SetBounds()視場(chǎng)移動(dòng)。

圖5 導(dǎo)航視圖

5) 航跡顯示及航跡預(yù)設(shè)

航跡顯示:把航跡顯示的繪畫(huà)點(diǎn)放置在無(wú)人機(jī)的尾翼上,隨著無(wú)人機(jī)的位置、姿態(tài)的改變以紅色透明帶的形式繪制飛行航跡。繪制中利用vpTransform的getMatrixAffine()和vuMatrixConvert()等函數(shù)獲得完整矩陣并轉(zhuǎn)換,幾何繪制工具vrGeometry繪制飛機(jī)當(dāng)前位置與上一時(shí)刻飛機(jī)位置的直線。

在主程序添加工具欄按鈕,利用命令消息實(shí)現(xiàn)預(yù)設(shè)點(diǎn)的導(dǎo)入和預(yù)設(shè)航跡繪制,利用vrGeometry幾何繪制工具以白色曲線繪制。

6) 模擬設(shè)置

模擬設(shè)置包括視景環(huán)境模擬設(shè)置、飛行操縱模擬模式、故障模擬、訓(xùn)練科目設(shè)置等。視景環(huán)境模擬包括一天24小時(shí)、霧雨雪天氣環(huán)境。重寫(xiě)vpApp::onKeyInput(vrWindow::Key key, int mod),編寫(xiě)鍵盤按鍵對(duì)應(yīng)的功能,通過(guò)switch(key)和case vrWindow::KEY_X實(shí)現(xiàn)天氣、視角快捷鍵選擇。設(shè)置界面見(jiàn)圖6。

7) 觀察視角切換

觀察視角有飛行儀表視角、跟隨視角、漫游視角。各視角的實(shí)現(xiàn)通過(guò)聯(lián)合設(shè)置vpObserver的setStrategy()、setLookAt()、setLookFrom()和vpTransform的setStrategy()實(shí)現(xiàn),飛行儀表視角用vpGLStudioComponent儀表類實(shí)例完成飛機(jī)姿態(tài)信息儀表顯示。

8) 記錄及回放

把vuFile的open()、writeString()、readString()等函數(shù)與定時(shí)器WM_TIMER()相結(jié)合,實(shí)現(xiàn)對(duì)飛行過(guò)程的記錄與控制回放??刂苹胤胚^(guò)程包括開(kāi)始播放、暫停播放、重新播放、快速與減速播放,并實(shí)時(shí)顯示考核過(guò)程中的失分因素。

圖6 視景場(chǎng)景初始設(shè)置

3 系統(tǒng)運(yùn)行測(cè)試

該系統(tǒng)運(yùn)行時(shí),通過(guò)配合操控盒轉(zhuǎn)換器的不同開(kāi)關(guān)可以進(jìn)行兩種環(huán)境的飛行模擬訓(xùn)練,即通用飛行訓(xùn)練和某型無(wú)人直升機(jī)飛行訓(xùn)練。某型無(wú)人直升機(jī)飛行訓(xùn)練運(yùn)行效果如圖7所示,系統(tǒng)可以接收操控盒的控制輸入,仿真模擬某型無(wú)人直升機(jī)的飛行狀態(tài),同步驅(qū)動(dòng)更新無(wú)人直升機(jī)模型的位置、姿態(tài)并完成三維場(chǎng)景的實(shí)時(shí)渲染。同時(shí),系統(tǒng)可以模擬無(wú)人直升機(jī)在不同飛行控制理論模式下的飛行,隨時(shí)接入常見(jiàn)傳感器故障模擬飛行,以提高無(wú)人直升機(jī)操縱水平并鍛煉突發(fā)事件的應(yīng)急處理能力。

圖7 某型無(wú)人直升機(jī)飛行訓(xùn)練過(guò)程

通過(guò)對(duì)系統(tǒng)的長(zhǎng)期使用和用戶測(cè)試評(píng)價(jià),證明該系統(tǒng)運(yùn)行可靠,且具有良好的真實(shí)感和較強(qiáng)的人機(jī)交互性,能夠滿足某型無(wú)人直升機(jī)飛行模擬訓(xùn)練系統(tǒng)建設(shè)的需求。

4 結(jié)論

該無(wú)人直升機(jī)飛行模擬訓(xùn)練系統(tǒng)是無(wú)人直升機(jī)領(lǐng)域針對(duì)飛行操作員開(kāi)發(fā)和使用的一套系統(tǒng)。它調(diào)用了先進(jìn)建模工具Terra Vista生成的地形數(shù)據(jù)庫(kù)文件和Multigen Creator構(gòu)建的三維可視化模型,使用了虛擬現(xiàn)實(shí)技術(shù)Vega Prime完成模擬系統(tǒng)視景場(chǎng)景的開(kāi)發(fā),視景模擬真實(shí)度大大提高,飛行操作員使用該系統(tǒng)的真實(shí)感大大增強(qiáng)。系統(tǒng)首次集成某型無(wú)人直升機(jī)飛行動(dòng)力學(xué)模型,實(shí)現(xiàn)了對(duì)無(wú)人直升機(jī)的飛行控制,使飛行操作員可以像對(duì)真實(shí)無(wú)人直升機(jī)一樣進(jìn)行操作和控制。

在該系統(tǒng)基礎(chǔ)上,可通過(guò)更換無(wú)人直升機(jī)飛行動(dòng)力學(xué)模型動(dòng)態(tài)鏈接庫(kù),來(lái)用于其他型號(hào)無(wú)人直升機(jī)的飛行操作員模擬訓(xùn)練。伴隨飛控模型的非線性化研究發(fā)展,可以進(jìn)行動(dòng)力學(xué)模型的仿真驗(yàn)證。經(jīng)過(guò)進(jìn)一步的席位擴(kuò)展有望實(shí)現(xiàn)多架無(wú)人直升機(jī)甚至與其他武器裝備的聯(lián)合作戰(zhàn)模擬。

猜你喜歡
操作員模擬訓(xùn)練視圖
美空軍特種戰(zhàn)術(shù)操作員正在進(jìn)行軍事自由落體跳傘
自動(dòng)控制邏輯對(duì)電廠運(yùn)行操作員的影響
淺談基于H3C云計(jì)算管理平臺(tái)的系統(tǒng)管理功能
模擬訓(xùn)練(二)
無(wú)人機(jī)操作員的選用機(jī)制研究
Y—20重型運(yùn)輸機(jī)多視圖
SA2型76毫米車載高炮多視圖
《投影與視圖》單元測(cè)試題
模擬訓(xùn)練(十一)
模擬訓(xùn)練(十)
五家渠市| 江永县| 南郑县| 思南县| 泽库县| 新兴县| 内黄县| 岢岚县| 钦州市| 宿州市| 突泉县| 略阳县| 瑞安市| 彝良县| 兴城市| 武陟县| 南岸区| 长治市| 镇宁| 巴马| 城固县| 海丰县| 开封县| 缙云县| 江达县| 莱州市| 交口县| 玉龙| 靖西县| 洪雅县| 额尔古纳市| 杭州市| 红桥区| 隆安县| 达拉特旗| 阜康市| 黄骅市| 定南县| 荣成市| 奉化市| 天镇县|