施新宇 邱峰 石承玉 施浩



摘要:本文采用將虛擬現實技術與航空發動機構造相結合,建立一款針對渦噴六航空發動機的虛擬實驗平臺,通過對真實的渦噴六航空發動機進行精密測繪,通過AutoCAD軟件繪制二維圖紙,使用3Dsmax軟件建立三維模型,在Unity3D中通過VisualC++語言編程,最終得以實現通過VR設備進行航空發動機可視化的人機交互。
關鍵詞:VR;渦噴六航空發動機;3Dsmax;unity3D;虛擬實驗
中圖分類號:TP393 文獻標識碼:A
文章編號:1009-3044(2020)01-0251-02
1概述
航空發動機是飛機飛行的關鍵部件,是航空器械維修的重點部件。虛擬現實技術,是一種能夠提供給使用者一個身臨其境的仿真體驗的計算機技術,這一技術憑借強大的沉浸式體驗功能,對模擬教學領域起著極大的促進作用,因而被廣泛運用于各類模擬教學領域,如:模擬醫學手術、模擬機械設備拆裝等,但目前鮮有針對航空發動機設計的模擬教學。
本文采用虛擬現實技術與航空發動機模型相結合的方法,建立起一個使用者可以觀察并親自動手進行發動機部件拆裝的虛擬實驗平臺,從而提升使用者對航空發動機的認識與了解。
2關鍵技術
2.1虛擬現實技術
虛擬現實技術即VR技術,是一種可以創建并體驗虛擬世界的計算機仿真技術。虛擬現實技術結合了計算機技術與仿真技術,從而提供給使用者更好的人機交互體驗。目前主要的虛擬現實仿真體驗是視覺體驗和聽覺體驗,一般是通過頭戴顯示設備和耳機獲得的。在一些仿真系統中,通過添加更高級的設備還能實現其他的感覺處理,例如:通過特殊的電子手套,使用者可以獲得觸覺上的仿真體驗。相較于設計實物模型進行實驗,通過虛擬現實技術搭建實驗平臺,不僅能使整個實驗過程更加真實,還能節省成本,降低風險。
2.2軟件平臺
本文選定渦噴六航空發動機作為建模原型,經過圖紙繪制、模型建立、渲染優化、程序編寫四個步驟,最終完成整個虛擬實驗平臺的建立。(如圖1)
圖紙繪制部分采用AutoCAD軟件實現。AutoCAD是由歐特克公司開發的自動計算機輔助設計軟件,這款軟件憑借強大的圖形編輯、圖形繪制功能,加上良好的兼容性,被廣泛應用在工程制圖,電子工業,土木建筑等多方面的領域。
模型建立部分則采用了Discreet公司開發的3Dsmax軟件實現。使用3Dsmax軟件進行三維建模,可以在占用計算機內存較低的情況下,完成復雜模型的建立,同時模型的精密度也完全可以得到保證。
渲染優化和程序編寫兩個部分均通過Unity3D軟件實現。Unity3D作為一款全面整合的游戲開發軟件,其包含了模型渲染,程序編寫等功能,并且可以通過添加插件的方法擴展軟件功能。本文采用添加Steam VR插件的方法,進行虛擬現實場景的建立。需要注意的是Unity3D與3Dsmax在建模規則上有細微差別,如果直接將使用3Dsmax完成的模型文件導入到Unity3D的場景中,可能會導致模型變形、錯位。本文采用額外分組與軸向固定的方法,來解決這一問題。
3實現過程
3.1實物測量
航空發動機作為航空器飛行的關鍵部件,對于精密度的要求是不言而喻的。為了使虛擬實驗更加貼合專業操作,首先要對實物模型進行精密測繪。測量主要使用卷尺、游標卡尺、螺旋測微器等工具。在測量過程中,由于測量設備本身的精準問題、測量方法的不完善或是其他因素,誤差難以避免。為了盡可能地提高虛擬模型的精確度,需要多次測量并進行分析,從而得到最精確的數值。接著使用AutoCAD軟件,根據測得的數據完成發動機圖紙的繪制。(如圖2所示渦噴六航空發動機燃燒室1
3.2模型的初步建立
根據已經繪制的圖紙,使用3Dsmax軟件進行虛擬模型的建立。首先通過軟件的可編輯多邊形功能與拓撲功能,刻畫出發動機各個零部件的基本輪廓,再使用渦輪平滑功能對模型進行細化,將模型調整到完全符合實物。考慮到工業誤差的存在,在部件組裝成整體模型的途中可能會出現嚙合問題,因此需要根據誤差對部件進行細微的調整,以此保證各部件在組裝時能正確嚙合。最后將各個部件進行組裝,完成整體模型的初步建立。(見圖3)
3.3模型的優化與渲染
考慮到后續建模的渲染工作與編程工作需要使用Unity3D軟件實現,而Unity3D與3Dsmax兩款軟件的基本運行規則有所不同,因此需要根據兩款軟件之間運算規則的不同,對已完成的模型進行額外分組與軸向固定,防止因為運算規則不同而導致的變形或錯位現象。
在Unity3D中建立場景,將已經完成的模型導入場景中,并根據虛擬實驗的需要添加光源,利用Unity3D的材質球功能,對模型進行渲染,為各部件添加色澤與材質(見圖4)。
為了提高計算機在加載模型時的效率,本文采用在材質球中添加法向貼圖代替細小紋路的方法,到達在保證視覺外觀不發生改變的情況下,降低計算機在同一時間所要處理的面的數量。最終使得整個虛擬實驗平臺能夠運行得更加平穩流暢、更加真實。
3.4程序編寫
Uniy3d作為一款全面整合的專業開發引擎,可以通過在軟件中添加VR程序插件,來開啟虛擬現實交互程序的編寫。
在場景中添加“第一人稱控制器”,調整視角與操作參數,并設立活動范圍,實現人物在虛擬世界中的簡單觀察功能。為物體添加碰撞體積、重力、彈性等參數,并根據不同操作需求添加代碼,使手柄在接觸模型、觸碰按鍵時,模型會根據添加的代碼實現相應的物理反饋,這樣使用者便可以在虛擬世界中與模型實現人機交互。再對人物抓取的手勢、物體之間的碰撞進行細化,使整個虛擬世界更加真實。本文使用的部分VisualC++交互代碼如下:
4技術指標
本文將虛擬現實技術與航空發動機相結合,建立基于VR的渦噴六航空發動機虛擬實驗平臺,旨在解決傳統實物教學中,發動機內部結構不易觀察,且批量學員難以同時進行操作的困難。為此,虛擬實驗平臺將達到以下技術指標:
1)真實還原渦噴六航空發動機模型,虛擬模型與實物模型間的誤差范圍在0.5mm之內;
2)使用者可以在虛擬實驗場景中進行流暢的觀察,且在部件拆裝過程不會出現卡頓現象;
3)所有發動機部件均可按照維修手冊進行正確的拆裝操作;
4)當拆裝操作出現錯誤時,系統將進行報錯提示;
5)教員可以通過網絡實時監督使用者的操作情況。
5總結
本文采用通過測量實物數據,使用3Dsmax建立虛擬模型,優化模型,接著導入Unity3D軟件進行整合并建立場景,最后使用VisualC++語言編寫合理的交互程序,這樣的一套流程,建立起一套高效且專業的虛擬實驗平臺。系統中可以真實還原航空發動機的拆裝流程,并可指出學員的錯誤操作,提示相關風險,進行正確的操作引導。學員能夠在虛擬實驗平臺中得到良好的學習體驗,更好地掌握航空發動機內部結構等相關知識。教員也可以通過網絡遠程監督指導學員的具體操作。
傳統的航空發動機維修教學有著不易于學員觀測內部結構,批量學員同時操作困難的缺點,構建一款針對航空發動機的虛擬實驗平臺,不僅可以有效地解決這些問題,還能夠減少誤操作造成人身、財產損失的風險,并提高整體授課效率,達到事半功倍的效果。