王建華, 劉茂淳, 翁敬怡, 麥棹銘, 溫文昊
(吉林大學(xué) 汽車工程學(xué)院,長春 130000)
為培養(yǎng)高素質(zhì)的工程人才,強化其工程實踐能力和工程設(shè)計能力,應(yīng)充分發(fā)揮實訓(xùn)教學(xué)在整個工程教育中的重要作用。在汽車工程院校中,汽車拆裝實訓(xùn)作為重要的教學(xué)組成部分,涉及工程力學(xué)、機械設(shè)計等基礎(chǔ)學(xué)科的學(xué)習(xí)和利用,并通過實訓(xùn)教學(xué)及對拆裝與調(diào)試等專項技能的運用的教學(xué)模式,將理論知識和實踐能力有機結(jié)合,有利于人才素質(zhì)的培養(yǎng)[1-4]。然而,目前的汽車零部件拆裝實訓(xùn)課程還廣泛采用傳統(tǒng)的教學(xué)方法,在拆裝實訓(xùn)的便利性、效率等方面存在以下問題:
(1) 在實訓(xùn)過程中,操作不當(dāng)易導(dǎo)致教學(xué)用具的損耗,長時間的使用可能導(dǎo)致部分教具零件的丟失、受損,影響學(xué)生的正常使用。
(2) 汽車技術(shù)發(fā)展速度快、汽車零部件類型多樣化,難以保證有足夠的新式教具供拆裝實訓(xùn)使用,易造成學(xué)校教學(xué)與時代脫節(jié),不利于學(xué)生了解最新的前沿技術(shù)。
(3) 現(xiàn)有的拆裝教學(xué)方式不利于學(xué)生自學(xué)。由于實驗室開放時間的限制,學(xué)生個性化的學(xué)習(xí)需求無法滿足。
(4) 傳統(tǒng)教學(xué)不夠生動形象,不利于提高學(xué)生積極性。學(xué)生在課堂上接觸到的零部件均為靜態(tài)展示,不利于其對工作原理的理解和學(xué)習(xí)。
由于以上問題的存在,本研究致力于將虛擬現(xiàn)實技術(shù)與傳統(tǒng)實訓(xùn)課程有機的結(jié)合起來,以解決上述問題[5-6]。
虛擬現(xiàn)實技術(shù)是仿真技術(shù)的一個重要方向,是仿真技術(shù)與計算機圖形學(xué)、人機接口技術(shù)、多媒體技術(shù)、傳感技術(shù)以及網(wǎng)絡(luò)技術(shù)等多種技術(shù)的集合[7-8]。虛擬現(xiàn)實技術(shù)主要包括模擬環(huán)境、感知、自然技能和傳感設(shè)備等方面[9]。模擬環(huán)境是由計算機生成的、實時動態(tài)的三維立體逼真圖像[10-11]。感知是指理想的虛擬現(xiàn)實應(yīng)該具有一切人所具有的感知。除計算機圖形技術(shù)所生成的視覺感知外,還有觸覺、力覺、聽覺、運動等感知,甚至還包括味覺和嗅覺等,也稱為多感知[12-13]。自然技能是指人的頭部轉(zhuǎn)動,眼睛、手勢、或其他人體行為動作,由計算機來處理與參與者的動作相適應(yīng)的數(shù)據(jù),并對用戶的輸入作出實時響應(yīng),分別反饋到用戶的五官。
本研究將傳統(tǒng)實訓(xùn)課程的全部教學(xué)內(nèi)容虛擬化,以虛擬現(xiàn)實的效果呈現(xiàn)出來。課前學(xué)生可以將平臺作為預(yù)習(xí)或正式拆裝前演練工具;授課過程中可以作為課上內(nèi)容的補充,增強趣味性;課后可為學(xué)生自由復(fù)習(xí)所用;以此來豐富傳統(tǒng)的實訓(xùn)課程[14-15]。
該汽車零部件虛擬拆裝教學(xué)平臺是基于虛擬現(xiàn)實技術(shù)(見圖1)進行設(shè)計的,用于輔助傳統(tǒng)的拆裝實訓(xùn)教學(xué),將理論知識和拆裝實訓(xùn)結(jié)合為一個有機系統(tǒng),通過軟、硬件實現(xiàn)人機交互的效果,最終通過本虛擬平臺呈現(xiàn)。平臺包括對軟件操作和開發(fā)背景及功能的軟件簡介部分;對拆裝要點、拆裝工具和零部件結(jié)構(gòu)功能的理論學(xué)習(xí)部分;提供不同型號的發(fā)動機、變速箱、底盤、車身的零部件庫,以及設(shè)置“拆”或“裝”選項和最終對拆裝過程中要點的總結(jié)、拆裝操作評分的拆裝實習(xí)部分(見圖2)。
圖1 虛擬現(xiàn)實技術(shù)框架圖
圖2 汽車零部件虛擬拆裝教學(xué)平臺主要功能
平臺由軟件與硬件兩部分組成,軟件部分包括拆裝教學(xué)平臺、軟件腳本及零部件模型庫3大模塊;硬件部分包括虛擬現(xiàn)實頭戴設(shè)備、操作手柄以及系統(tǒng)的啟動按鈕(見圖3)。
圖3 汽車零部件虛擬拆裝教學(xué)平臺設(shè)計框架
虛擬拆裝教學(xué)平臺由拆裝場景、拆裝工具及用戶界面構(gòu)成,作為平臺的底層基礎(chǔ)模塊,該部分向使用者提供了舒適的用戶體驗感。軟件腳本包括拆裝控制腳本和用戶界面控制腳本(見圖4),用于整個拆裝過程的流程設(shè)計和動作規(guī)劃及界面設(shè)計。
圖4 用戶界面控制腳本
基于實際汽車構(gòu)造,零部件模型庫模塊分為發(fā)動機、變速箱、底盤及車身4部分,其中,發(fā)動機又分為直列式、V型、水平對置、W型等類型;變速箱分為手動和自動兩種,自動變速箱又細分為傳統(tǒng)自動變速箱、無極變速箱和雙離合器變速箱;底盤具體細化為傳動系、行駛系、轉(zhuǎn)向系和制動系;車身分為承載式車身和非承載式車身兩種。
硬件部分包括虛擬現(xiàn)實頭戴設(shè)備、操作手柄和啟動按鈕。通過對硬件的進一步改造,使其和軟件部分相適應(yīng)并形成一個有機的整體,在將拆裝教學(xué)過程虛擬化的同時實現(xiàn)人機交互,增強用戶體驗感,并最終通過虛擬拆裝教學(xué)平臺將整個過程展現(xiàn)出來。
虛擬現(xiàn)實拆裝平臺開發(fā)引擎,也就是為搭建這個拆裝教學(xué)平臺提供解決方法(如渲染、物理狀態(tài)、碰撞檢測、音效、腳本動畫等)的軟件。如今市場上常見的虛擬現(xiàn)實開發(fā)引擎有:Virtools、Unity 3D、EON Studio、Quest-3D等。而選擇Unity 3D作為本拆裝教學(xué)平臺的開發(fā)引擎的原因如下:
(1) Unity 3D 是最佳游戲開發(fā)軟件之一,可以實時處理大量的三維模型,畫質(zhì)強,互動性良好,有很多由其開發(fā)的互動性游戲足以說明Unity 3D是一款具有很強的互動性的軟件。Unity 3D的開發(fā)界面友好,層次分明,適合初學(xué)者使用。為了優(yōu)化渲染效果,Unity 3D支持凹凸貼圖、反射貼圖、環(huán)境剔除、陰影貼圖等技術(shù)來對其中的對象進行渲染。
(2) Unity 3D支持JavaScript和C #兩種語言作為程序腳本。C#是微軟公司發(fā)布的一種面向?qū)ο蟮母呒壋绦蛟O(shè)計語言。具有語法相對簡潔、與Web緊密結(jié)合、完整的安全性與錯誤處理等特點,但它也存在著如下一些缺點:不允許程序出現(xiàn)任何錯誤,加大了編寫程序的難度;不考慮代碼量,很多常用的工具有局限性。因此會耗費程序員大量的時間。但其完整度較高,可保證程序的完善性,學(xué)習(xí)資源豐富。因此選擇C#作為本文的腳本語言。
(3) 更重要的是,Unity 3D能夠跨平臺開發(fā)游戲,可以通過發(fā)布設(shè)置將游戲發(fā)布到Windows、Mac、Ios、Android等操作系統(tǒng)。這樣就方便本文的拆裝教學(xué)平臺在不同的系統(tǒng)中使用,有利于該拆裝教學(xué)平臺的普及。
綜上所述,選擇Unity 3D作為本拆裝教學(xué)平臺的開發(fā)引擎。
汽車由多種零部件構(gòu)成,以其中最復(fù)雜、最核心的汽車部件——發(fā)動機為例描述建模過程。
本平臺通過CATIA V5R21進行發(fā)動機模型的構(gòu)建以及虛擬裝配,然后將建好的模型整體導(dǎo)入3Ds Max進行格式轉(zhuǎn)換,再導(dǎo)入虛擬現(xiàn)實制作軟件中。
(1) 分別列出所要拆裝的發(fā)動機包含的各個總成,并按機構(gòu)或系統(tǒng)進行整理。
(2) 對各個總成進行進一步拆解成零部件,并分為標準件和非標準件兩大類,以便建模時能在零件庫中調(diào)用。以機構(gòu)或系統(tǒng)為單位,用CATIA V5R21對其中的各個零件進行建模。由于發(fā)動機零部件的數(shù)量較為龐大,分組建模有助于對各零件的管理,以防丟失或混亂。像活塞、連桿、曲軸等非標準件,可以通過CATIA V5R21中如零件設(shè)計、創(chuàng)成式外形設(shè)計等不同模塊進行建模。而對于螺栓、螺釘、螺母、齒輪等標準件則可以直接使用CATIA V5R21自帶的標準零件,也可以從外部調(diào)入標準零件庫來使用標準件,這樣便極大提高了工作效率。
(3) 完成各零件建模后,先將各零部件進行初步裝配,形成模塊化的總成。然后,根據(jù)各總成之間的裝配關(guān)系,在CATIA V5R21的裝配設(shè)計中對各個總成進行虛擬裝配。
由于所選擇的虛擬現(xiàn)實軟件Unity 3D不支持CATIA V5R21現(xiàn)有的格式的模型導(dǎo)入,因此選擇3Ds Max作為中轉(zhuǎn)平臺,使模型能夠順利導(dǎo)入虛擬現(xiàn)實軟件中。此外,若直接通過3Ds Max將模型整體(見圖5)導(dǎo)入Unity3D,模型會以相互關(guān)聯(lián)的整體形式呈現(xiàn),不便于后續(xù)操作。因此將發(fā)動機模型導(dǎo)入3Ds Max后,應(yīng)有序的將發(fā)動機拆分成零件,然后保存為Unity 3D能接收的.fbx格式。完成格式轉(zhuǎn)換后,導(dǎo)入Unity 3D中。
為了便于對各零部件的識別,增強用戶的視覺體驗,通過Unity 3D對零件進行貼圖處理(見圖6),使關(guān)鍵的零部件能夠被突出體現(xiàn)。此外為了方便零部件的管理,減少對內(nèi)存空間及圖像處理器線程的占用,本平臺在層次面板按照實際拆裝要求對零件以總成形式建立父子關(guān)系,并且將各總成制作成相應(yīng)的預(yù)制體。
圖5 3DMax軟件中的發(fā)動機模型
圖6 Unity 3D開發(fā)界面
至此,完成了模型的構(gòu)建。
通過軟件開發(fā)工具包,即一種用C#語言編寫的Unity插件來進行用戶界面系統(tǒng)設(shè)計,使系統(tǒng)具有符合用戶需求的交互界面。其中包含了:主界面、軟件簡介及軟件操作說明、設(shè)有包含不同型號的汽車各部件的零部件模型庫、拆裝前的要點介紹和注意事項,并設(shè)有拆裝工具的介紹及使用說明、拆裝過程中的步驟提示、拆裝后整個操作過程的要點總結(jié)和評分以給予用戶實時反饋。平臺實現(xiàn)了將理論知識教學(xué)和實際拆裝有機結(jié)合成一套完備的虛擬現(xiàn)實教學(xué)體系的設(shè)計初衷。簡便、自然、友好的交互界面讓用戶能方便地了解該平臺的作用以及拆裝順序和部件名稱。虛擬現(xiàn)實眼鏡的呈現(xiàn)方式使模型立體化,讓用戶能夠從不同視角進行觀察和拆裝,極大的提高了人機交互體驗。此外,以發(fā)動機為例,其模型較為完整,包含有曲柄連桿機構(gòu)、配氣機構(gòu)、供給系統(tǒng)、點火系統(tǒng)、冷卻系統(tǒng)、潤滑系統(tǒng)和起動系統(tǒng)及各類附件,這能讓模型更接近于真實拆裝的發(fā)動機。拆裝的每一步驟都有相應(yīng)的指示與引導(dǎo),并且通過C#語句對拆裝順序進行了嚴格的規(guī)定,保證了拆裝的過程盡可能的嚴謹科學(xué),以達到讓用戶掌握拆裝知識這一根本的教學(xué)目的。因此,本虛擬拆裝教學(xué)平臺(見圖7、8)能夠很好地應(yīng)用于面向汽車構(gòu)造的拆裝教學(xué)實訓(xùn)中。
圖7 教學(xué)平臺開始界面
圖8 在Unity 3D中進行軟件運行調(diào)試
虛擬現(xiàn)實技術(shù)擁有多感知性、交互性強、使用方便靈活等優(yōu)點,在教學(xué)領(lǐng)域可以得到諸多應(yīng)用。而目前的拆裝實訓(xùn)又存在設(shè)備數(shù)量有限、易損壞、教學(xué)用具更新速度有限等限制,所以開發(fā)一套汽車零部件虛擬拆裝教學(xué)平臺對拆裝實習(xí)教學(xué)有很大幫助。該教學(xué)平臺能將抽象的講述變成具體的操作,使教師的教學(xué)過程更加生動,讓學(xué)生學(xué)習(xí)拆裝的過程變得輕松、便捷、安全、深刻。學(xué)生可以隨時隨地進行考察與訓(xùn)練,不再受場地和設(shè)備的制約,真正讓教學(xué)走出教室,這對現(xiàn)代化教育的建設(shè)具有積極意義。
為適應(yīng)未來虛擬現(xiàn)實技術(shù)不斷與現(xiàn)代工業(yè)生產(chǎn)和現(xiàn)代教育緊密結(jié)合的這一發(fā)展潮流,應(yīng)對現(xiàn)有的虛擬拆裝教學(xué)平臺進行完善。例如,對該發(fā)動機虛擬拆裝平臺的拆裝資源庫進行進一步擴充,加入各種不同汽車零部件,將它擴展為汽車零部件拆裝教學(xué)平臺,乃至成為一個綜合的機械零部件拆裝平臺。同時,加入如實時反饋、機器運行展示以滿足現(xiàn)代化教學(xué)的需求,實現(xiàn)虛擬現(xiàn)實技術(shù)與現(xiàn)代化教學(xué)的融合。