鐘曉谷,蘇凡囤,王海濤,王小飛
(解放軍理工大學工程兵工程學院,江蘇南京 210007)
輪式推土機由于其機動性強、工作效率高等優勢被廣泛用于國防工程建設、民用建筑、修建道路、修建機場中。但因其工作環境惡劣,施工難度大,導致該機械故障率高,保障難度大。因此,迫切需要訓練有素的保障人員。傳統的訓練方法由于其訓練周期長、訓練效益低且受到場地和成本的限制已經無法滿足目前的訓練要求。因此,在對該推土機的保障人員培訓過程中,急需一種現代高效的訓練手段來解決上述問題。
虛擬現實技術[1]以其良好的沉浸性、交互性等優點,被廣泛應用于航空航天、核能、軍事等領域;虛擬訓練作為虛擬現實技術的重要分支能夠提供具有良好沉浸感、交互性和啟發性的虛擬環境,使設計者能更早地“看到、修到和用到”未來的產品,并通過虛擬操作和過程仿真進行分析評估[2];目前主要應用于裝備的保障訓練、維修性設計以及保障性設計等三個方面的研究;虛擬訓練不受時空限制,仿真度高、擴展性強,特別適合于專業保障訓練,是保障訓練現代化的重要標志。

圖1 虛擬訓練系統框架
在虛擬環境下,模型的建立和維修過程的實現有其特殊性,根據現實情況下的維修保養要求,將系統主要劃分為4個模塊:工作原理、保養訓練、拆裝訓練、故障排除。訓練過程中,用戶可以通過訓練漸進式的了解裝備的構造、性能、原理、維修保養方法等知識。系統框架規劃如圖1所示。
推土機結構復雜,組成零部件多,為真實再現其結構及組成,分三步實現其零部件建模:先選擇AutoCAD按實際尺寸構建模型外形,然后將模型導入到3DS MAX中進行紋理、材質、顏色、燈光等處理,并對其進行填充,隨后將其導入至EON Studio中賦予各種交互式的動作。圖2為EON中推土機的實裝模型。

圖2 推土機實裝模型
本文論述的虛擬維修是建立在整機模型的基礎上的,如果不考慮優化而直接導入模型,會嚴重降低系統運行的實時性。為了提高系統運行效率,利用LOD技術,將除需要操作的零部件以外的所有部件進行優化,隱藏了被遮擋零件,整機模型以空殼狀導入虛擬維修場景。
構建虛擬維修場景之前,首先要將通過外部建模工具創建的模型導入到虛擬開發平臺EON Studio中。EON Studio支持多種格式的3D數據導入。其中包括常用的3DS,obj,wrl等格式文件的導入[3]。
模型導入場景之后還需要對場景進行觀察點、燈光、材質的調整。首先新建Frame節點并取名為Camera,將其關聯復制到ViewPoint節點的擴展域中;然后在Camera節點下添加light節點并選擇燈光類型為Ambient(環境光),調整環境光的顏色;最后刪除零件重復的Material(材質)節點,為每個零件建立單獨的Material材質。
由于采用的導入方式不同或導入過程中部分信息丟失,會有部分的部件沒有材質或貼圖,或者貼圖不正確。這時需要對這部分模型進行材質和貼圖的添加或調整,首先給Texture節點指定貼圖,然后將Texture節點的快捷方式復制到Material節點的DiffuseTexture文件夾下,最后將Material節點的快捷方式復制到部件所在文件夾的Material中,完成貼圖的添加。如圖3所示。


圖3 貼圖添加的實現過程
虛擬訓練過程中,不僅涉及對象的幾何模型,同時要考慮其在虛擬場景中的位移、碰撞、變形等動態的變化。這些問題同樣是目前虛擬訓練系統中的難點問題。合理的建立對象的層次結構模型、配合約束關系模型,并引入了與結構關系對應的鄰接矩陣。有效地規劃虛擬拆裝序列,是實現虛擬維修交互控制技術的基礎。
以虛擬拆卸轉向系統為例。首先確定裝配體的層次關系模型和約束關系模型。裝配體層次結構模型是將一個產品分為不同層次的字裝配體和零件在一定程度上能夠反映裝配體的拆裝序列[4],然后建立矩陣,生成并優化拆卸序列,圖4為轉向系統的層次結構模型在虛擬平臺中的樹形表式形式,這種樹形表示可以通過逐層打開節點方式來查看零件歸屬[5]。

圖4 層次結構模型在Eon中的樹形表示
a)拆卸過程仿真
在 Eon 中綜合使用 Frame,ClickSensor,Place,Task 和DragSelect節點根據零件之間的層次結構關系以及約束關系就可以實現拆卸過程,如圖5所示,其具體設置如下:
Step1:首先依據零件之間的層次結構為具有約束關系的零件添加一個Frame框架;
Step2:在框架中選擇需要拆卸的零部件添加2個ClickS-ensor節點以及一個Place節點和一個DragSelect節點;

圖5 交互過程Routes視窗展示
Step3:將其中一個ClickSensor節點的觸發方式設置為Right并通過OnButtonDowntrue和DragSelect下的Select相連接;
Step4:將另外一個ClickSensor節點的觸發方式設置為Left并通過OnButtonDowntrue和Place節點下的SetRun相連接,Place節點通過OnRunfalse與Task節點下的RequestCompleted相連。
當點擊開始拆卸后,點擊鼠標左鍵即可拖拽需要拆卸的零件,當點擊右鍵時,可以快捷的將零件放置到桌面上。如圖6所示。

圖6 轉向器虛擬拆卸過程
當遇到幾個零件位置相似時,可以讓他們同步地拆卸或裝配。只要讓用于觸發的信號同時接到這幾個零件所具有的移動功能節點place和方位節點position節點,讓它們的相對位移相同、時間相同即可。通過以上步驟就可以實現拆卸過程的人機交互,如圖7所示。
b)故障排除過程仿真

圖7 零件拆卸時人機交互過程
虛擬故障排除模塊中挑選了比較有代表性的主液壓系統壓力偏低這個模塊來進行講解。這個模塊中運用虛擬的壓力表來對系統壓力進行測量,因為應用到各種工具和儀表,如果在測量位置和工具擺放位置間進行視角的切換話,切換的次數較多,容易造成操作者視覺的疲勞,所以設置一個小視窗正對著操作臺,用到的各種工具、儀器等整齊的擺放在操作臺上,可以通過小視窗來實現工具的拾取和放置,避免了視角的頻繁切換。首先講解一下小視窗的設置方法:添加一個Viewport節點到Viewports文件夾中,雙擊添加的Viewport節點設置其起始位置、視窗的大小以及可視范圍等參數;添加一個攝像機Camera,并把它的快捷方式放入添加的Viewport節點的Camera文件夾內;通過調整添加的Camera觀察位置就可以實現主窗口和小窗口分別顯示,如圖8所示。

圖8 小窗口拾取工具示意圖
通過分析壓力測量的實際流程,結合系統實現的具體要求,設計虛擬現實中壓力測量的實現流程如圖9。

圖9 壓力測量實現流程圖
系統數據庫維護模塊采用Delphi軟件設計開發。Delphi是著名的Borland公司開發的可視化軟件開發工具,被稱為第四代編程語言,它具有簡單、高效、功能強大和簡單易學的特點。其主界面如圖10。

圖10 訓練系統主界面
通過Delphi調用EONX控件的接口函數實現二者之間的數據傳遞[6],使系統的仿真程序能夠嵌入到Delphi開發的應用程序中,EONX作為一種在其他軟件或程序中展示和控制EON虛擬程序的ActiveX控件,通過它可以對EON開發出來的模擬場景進行控制,在EON的事件驅動模型中,節點和節點之間相連接的屬性域(EventIn/EventOut)類型必須一致或相互兼容,其數據傳遞過程如下:
Step1:在邏輯關系設定視窗中創建Scrpit節點與其他相關節點的EventIn節點和EventOut節點的連接,并對EventIn節點收到的數據處理后由EventOut節點輸出;
Step2:在Delphi中創建OnEvent消息響應函數On-EventEonx()對Eventout事件進行響應,同時利用SendEvent函數將Delphi處理后的數據輸出到InEvent節點。
本文結合EON Studio虛擬交互平臺,研究解決了某型輪式推土機虛擬訓練系統設計中的部分關鍵性技術問題,所開發的系統可以使受訓人員充分掌握輪式推土機保障訓練的過程、特點、手段和方法。具有較高的應用價值。
[1]A dam J A.virtual reality is for real.IEEE spectrum[J].1993,31(10):22-29.
[2]劉佳,劉毅.虛擬維修技術發展綜述[J].計算機輔助設計與圖形學學報,2009,21(11):1520-1534.
[3]余輝,等.EON入門與高級應用技巧[M].北京:國防工業出版社,2008.
[4]張斌.基于虛擬現實技術的印刷機拆裝訓練系統[D].北京:北京印刷學院,2010,12.
[5]徐鴻翔.面向拆卸和回收設計關鍵技術的研究[D].南京:南京理工大學,2001,12.
[6]劉誠,付宜利.基于EON的交互式虛擬裝配仿真系統的設計與實現[J].東北林業大學學報,2009,37(8):109-111.