周杰



摘 要:為提高某型魚雷的訓練效率,降低訓練成本,保障訓練安全,文中采用虛擬現實技術構建了某型魚雷模擬訓練系統。文中給出了該系統的功能設計和實現方法。系統利用桌面虛擬現實技術實現了某型魚雷火工品裝配和魚雷發射準備、發射過程操作訓練,首次實現了面向魚雷武器發射準備全過程的虛擬訓練。實際應用表明,該系統穩定可靠,具有較強的實用性。
關鍵詞:虛擬現實;系統設計;Virtools;魚雷
中圖分類號:TP317 文獻標識碼:A 文章編號:2095-1302(2017)06-00-04
0 引 言
虛擬現實技術(VR)通過綜合利用視頻、三維動畫和聲音等多媒體素材,營造出具有沉浸性、交互性、構想性的軟件操作環境[1]。虛擬現實技術已廣泛應用于設計測試、模擬訓練、游戲娛樂和教學科研等多個領域,隨著VR頭戴設備、應力反饋設備等各種終端設備的大量使用,VR技術的應用廣度和深度也逐年提升。某型魚雷武器由于造價高昂,加之武器系統壽命維護的限制,導致魚雷武器準備操作訓練的代價過高。為降低訓練成本,提高訓練效益,利用虛擬現實技術開發魚雷模擬訓練系統可節省訓練經費,且所有訓練過程部件動作均對學習者可見,比實裝更適合專業理論學習和培訓操作人員。本文論述了基于VR技術的某型魚雷模擬訓練系統的設計與實現。
1 虛擬現實技術
虛擬現實技術通過構建三維模型營造了多種視角,提供了具有沉浸性和交互性的操作環境,操作者可以親身漫游虛擬世界,多角度觀察操作方法,參與交互,給操作者強烈的臨場感和逼真感,這種深層的自然的人機交互,可使操作人員將以往被動的知識接受模式變為主動探究,積極尋求新知識,形成潛在技能,為實際操作技能的最終形成奠定堅實的基礎[2]。
虛擬現實的最終實現效果與硬件設備有直接關系,為利用通用設備實現虛擬現實效果,可采用桌面虛擬現實,也稱為窗口VR,成本低,是本文主要使用的VR技術。
將虛擬現實技術融合到模擬訓練系統中,解決傳統模擬操作中臨場感弱,操作訓練不充分,難以形成有效技能的問題,通過逼真的武器、工具模型和高度還原的操作過程調動操作者的主動性,提升知識技能構建的效率,在保證設備和人員安全的前提下實踐所學知識,加速知識到技能的轉換過程。
2 系統設計
2.1 硬件結構
硬件系統主要由主控臺、綜合訓練控制臺Ⅰ~Ⅴ、網絡與接口系統、投影儀組成,基本構成如圖1所示。
主控臺不僅可以進行系統數據庫的后臺管理,虛擬操作考試監控,還可以進行投影演示。綜合訓練臺Ⅰ~Ⅴ主要完成魚雷武器系統結構原理理論知識學習、魚雷準備和發射相關虛擬操作和考核功能。控制臺依次安裝魚雷發射電控系統對應操作臺的虛擬操作模塊,完成魚雷發射過程的系統聯調和操作。系統各計算機之間的信息通過網絡交換機傳輸。
2.2 軟件設計
本訓練系統在技術實現上采用Visual C++作為系統框架主開發平臺,VC兼容性好,具有多種控件,可以高效完成數據庫管理和網絡通訊,并整合Flash、Authorware及Virtools等軟件,形成兼容、健壯的系統軟件。
訓練系統多媒體資料采用Authorware軟件開發,具有交互性,可提高學習主動性。虛擬操作使用Virtools軟件實現對武器操作流程和專用控制設備的虛擬操作,操作中可進行視角變換、專用工具使用、魚雷雷體操作、面板按鈕操作和指示燈、數據顯示等。Vritools利用圖形化編程,設計思路形象直接,能夠高效完成三維虛擬操作編程[3]。魚雷武器準備過程中部分步驟局部細節操作較多,視角相對固定,為避免三維視角變化繁瑣的操作步驟,提高操作效率,將3DSMAX和Flash相結合開發軟件模塊完成虛擬操作,利用3DSMAX輸出多層次、多視角和多種表現形式的三維動畫,以動畫為基礎利用Flash良好的交互性和平臺移植性開發出具有三維浸入感和良好交互性,且對硬件要求低的軟件模塊。系統軟件結構如圖2所示。各模塊功能如下:
(1)講解操作模塊:通過技術檢查和準備過程后,演示三維動畫操作步驟,并通過Authorware互動演示教材,講授演示武器原理。
(2)資料查詢模塊:利用數據庫存放視頻和文檔資料,通過SQL語言編程實現對數據庫資料的查詢與更新,提高受訓人員數據檢索效率。針對不同資料的檢索結果分別顯示,調用Mediaplayer控件播放視頻資料;使用COM組件調用WORD控件瀏覽和修改文檔資料。
(3)自我考核模塊:通過題庫自動出題,完成理論考核,利用隨機算法從題庫中隨機抽取選擇、判斷和填空三種題型,試卷顯示利用EDITBOX控件,答案輸入使用LISTBOX控件,試卷成績自動評定并存入檔案數據庫。通過考核專用虛擬操作模塊完成操作考試,主控臺通過對其他控制臺進行監控,實現操作考核成績實時評估。
(4)模擬操作模塊:分析魚雷準備過程和發射流程的所有操作步驟,對于視角相對固定,裝備動作細節展示要求較高的步驟,可通過Virtools編程對三維模型進行虛擬操作,增加硬件設備操作的臨場感和浸入感。對于使用工具種類繁雜,需要與視角進行精確配合的精細操作,則利用3DMAX輸出詳細的三維動畫,結合Flash創建虛擬仿真環境,兼顧硬件要求和三維顯示效果。
(5)檔案管理模塊:查詢用戶的考試成績、考試時間、姓名和學號。為保證數據庫安全,對各控制臺設定不同的權限,僅主控臺可對檔案數據庫信息進行修改,對其他控制臺僅開放查詢瀏覽功能。
(6)網絡通信模塊:通過套接字編程和開發專用通訊模塊完成數據的封裝、解析、發送與接受,實現不同軟件平臺開發的軟件模塊之間的數據交互。
(7)電控系統操作模塊:模擬艇上指控系統和發射裝置電控系統的各控制臺,完成發射魚雷全過程的虛擬操作。
3 關鍵技術
3.1 魚雷武器最后準備虛擬操作
在某型魚雷武器的最后準備過程中,最為重要和最具危險性的工作是火工品的安裝,使用虛擬裝配完成該項操作可以降低訓練風險,提升訓練效率。虛擬裝配在計算機環境中進行,通過可視化的模型和數據交互,輔助完成與裝配有關的工程決策[4]?;赩irtools構建火工品虛擬裝配模塊的流程如圖3所示。
(1)通過烘焙處理將3DSMAX軟件中建立的火工品模型和操作場景的材質、紋理、燈光等輸出成為貼圖文件,模型的文件以NMO文件格式輸出。其中靜態模型設定為對象輸出,動態模型設定為虛擬角色輸出。
(2)把NMO文件導入Virtools軟件,選擇對應材質紋理貼圖,調整參數,取得最佳視覺效果。
(3)使用Building Blocks行為模塊(BB模塊)完成模型交互動作的編程,按照操作步驟實現預定操作。部分模型、材質、攝像機可使用腳本語言編程。
(4)對象資源整合,交互界面設計,完成虛擬裝配軟件模塊。
操作過程中利用鼠標或觸摸屏選取裝配體,進行位置移動、視角旋轉,將部件移動到指定位置附近完成裝配。部件裝配序列和裝配過程路徑規劃,從裝配數據庫中根據部件名稱實時讀取。為協助受訓人員完成裝配,可首先進行虛擬裝配動畫演示,操作過程中配合單步裝配提示。部件裝配過程中的碰撞檢測和裝配體位置距離判斷使用專用BB模塊完成。虛擬裝配操作流程如圖4所示。
3.2 VC與Virtools通訊
Virtools的網絡通訊模塊必須在VirtoolsDev軟件平臺下調用這些功能模塊才能構建通信網絡。即所有網絡通信節點都要用Virtools來開發,才能構建通訊體系[5]。當需要Virtools軟件平臺和其它軟件平臺之間進行通訊時,Virtools通訊的局限性就凸顯出來。
在虛擬訓練系統開發中利用Virtools陣列輸出機制完成Virtools與VC之間的信息交互。Virtools陣列用于建立數據、時間變量控制等,它由Column(列)和Row(行)組成,在Virtools程序運行時,通過Test和2D Picking行為交互模塊判斷此時被用戶操作的虛擬物體,并將虛擬物體的參數變化通過SetCell行為交互模塊對陣列的每一個元素及相應參數進行設置。然后利用Array Save行為交互模塊將數組數據儲存成指定路徑下的文件檔案[6]。完成存儲后利用Windows API 函數ReadDirectoryChangesW()實現對指定目錄中文件的監控[7],ReadDirectoryChangesW()函數使用CreateFile()獲取要監控目錄的句柄,然后循環調用ReadDirectoryChangesW()判斷文件是否改變,并分配內存以存放目錄變化通知并傳給該函數。一旦發現文件改變,函數便把目錄變化通知存放在指定內存區域,并立即讀取文件內容進行相應處理,處理完成后結果可再次寫入數組文件。
Virtools利用Array Load模塊讀取指定路徑的數組文件,并利用數組元素完成虛擬物體的控制[8]。陣列輸出機制流程如圖5所示。
3.3 Flash與3DSMAX結合創建虛擬操作環境
魚雷武器在發射準備過程中,操作步驟必須跟隨魚雷武器裝管的過程,操作步驟固定,涉及諸多細微部件的操作。單純使用Virtools建立虛擬環境,視角變換將消耗大量的系統資源和操作時間,降低操作效率。對于此部分操作,采用Flash軟件與3DSMAX結合創建虛擬操作環境。使用3DSMAX為武器各部件和工具建立三維模型,為武器準備過程建立三維動畫,然后將三維動畫導入Flash為FLV文件。使用Flash的Action Scrip函數來控制動畫的播放順序和播放過程,實現交互操作。利用onEnterFrame函數對導入的FLV文件進行幀控制[9],在指定幀暫停視頻,根據提示信息,使用者從控件工具箱中選擇工具或部件,利用onRelease函數響應鼠標單擊選擇的工具和部件的正確位置,工具和位置選擇正確則視頻繼續播放,錯誤則顯示提示信息,重新操作。兩種軟件的結合使用在降低硬件要求的同時,保證虛擬軟件具有三維空間感,操作過程逼真。軟件流程如圖6所示。
4 結 語
VR技術已經在軍事領域展示了其顯著的應用價值,發展潛力巨大[10]。本文結合具體項目,提出了硬件要求低,訓練費效比高、功能齊全的某型魚雷虛擬訓練系統的設計方案。利用VR技術實現模擬實裝訓練,降低了訓練成本和訓練風險,提高了訓練效率,增強了教學效果,減少了教學設施的建設投入,極大地提高了參訓人員對裝備的駕馭能力。
參考文獻
[1]于修洪,項輝宇,牛凱.虛擬現實技術在機械產品裝配中的應用[J].現代制造工程,2011(5):39-42.
[2]李姝博.虛擬現實技術在職業教育中應用的理論研究[J].遼寧高職學報,2013(7):13-15.
[3]牛彥,張爍男.基于Virtools技術的產品虛擬交互式操作指導系統構建[J].沈陽建筑大學學報,2012(5):569-572.
[4]劉航,王春水,王積忠.基于視景仿真技術的某型裝備虛擬操作訓練系統[J].指揮控制與仿真,2007,29(2):79-82.
[5]于修洪,項輝宇,牛凱.虛擬現實技術在機械產品裝配中的應用[J].現代制造工程,2011(5):39-42.
[6]于丹東,徐英新,胥林.三維游戲設計師寶典一Virtools行為模塊詞典大全[M].北京:電腦報電子音像出版社,2009.
[7]楊芳,馬君顯.用VC++6.0開發服務器網絡日志程序[J].計算機應用,2003(6):136-138.
[8]牛彥,張爍男.基于Virtools技術的產品虛擬交互式操作指導系統構建[J].沈陽建筑大學學報,2012 (5):569-572.
[9]董明,劉加,劉潤生.適宜于嵌入式多媒體應用的FLASH文件系統[J].電子技術應用,2002(9):24-27.
[10]劉航,王春水,王積忠.基于視景仿真技術的某型裝備虛擬操作訓練系統[J].指揮控制與仿真,2007,29(2):79-82.