劉瑞歌,宋 鋒
(濱州學(xué)院 機(jī)電工程學(xué)院,山東 濱州256603)
機(jī)械設(shè)計(jì)基礎(chǔ)在機(jī)械類(lèi)或近機(jī)械類(lèi)專(zhuān)業(yè)的課程體系中具有十分重要的作用,起著承上啟下的橋梁作用[1]。課程涉及大量的機(jī)械原理分析、運(yùn)動(dòng)分析、力學(xué)分析等,具有理論性強(qiáng)、知識(shí)點(diǎn)多的特點(diǎn)。設(shè)計(jì)理論和計(jì)算公式抽象繁雜,教者難教,學(xué)者難學(xué)。近年來(lái),隨著工程教育中“新工科”建設(shè)的快速開(kāi)展和工程教育專(zhuān)業(yè)認(rèn)證工作的不斷推進(jìn),國(guó)內(nèi)各高校在機(jī)械工程專(zhuān)業(yè)的教學(xué)中越來(lái)越強(qiáng)調(diào)對(duì)學(xué)生科技創(chuàng)新能力和解決復(fù)雜工程問(wèn)題能力的培養(yǎng)[2]。要培養(yǎng)上述能力,離不開(kāi)科學(xué)的實(shí)踐教學(xué)體系和完善的校內(nèi)外實(shí)驗(yàn)基地建設(shè)[3]。但目前許多高校的機(jī)械專(zhuān)業(yè)實(shí)踐教學(xué)存在以下問(wèn)題:(1)理論與實(shí)踐脫節(jié)。一般高校都是課程進(jìn)行到一定章節(jié)的時(shí)候,實(shí)驗(yàn)教學(xué)才開(kāi)始。又由于資金、場(chǎng)地和實(shí)驗(yàn)人員有限,學(xué)生需要分組進(jìn)行,造成學(xué)生在做實(shí)驗(yàn)時(shí),只是單純地做實(shí)驗(yàn),而非驗(yàn)證所學(xué)理論知識(shí),無(wú)法將實(shí)驗(yàn)與理論知識(shí)緊密結(jié)合[4-6]。(2)實(shí)踐不能有效地補(bǔ)充理論。傳統(tǒng)的課程教學(xué)中教師講述與多媒體演示并不能真實(shí)反映各構(gòu)件之間的運(yùn)動(dòng)關(guān)系,學(xué)生并不能理解機(jī)構(gòu)組成原理[7],而實(shí)驗(yàn)室由于受配套硬件設(shè)施等限制,又不能支持相應(yīng)的理論教學(xué)。針對(duì)以上問(wèn)題,構(gòu)建了機(jī)械設(shè)計(jì)基礎(chǔ)虛擬仿真實(shí)驗(yàn)教學(xué)平臺(tái),實(shí)現(xiàn)機(jī)械工程教學(xué)與虛擬現(xiàn)實(shí)(Virtual reality,VR)技術(shù)相結(jié)合[8],為機(jī)械工程學(xué)科的教與學(xué)帶來(lái)新教學(xué)模式。VR技術(shù)使抽象、模糊成為具體、直觀,將單調(diào)乏味變成豐富多變、極富趣味。虛擬實(shí)驗(yàn)與實(shí)踐讓學(xué)習(xí)者在創(chuàng)設(shè)的虛擬環(huán)境中,通過(guò)與虛擬對(duì)象的主動(dòng)交互,親身經(jīng)歷與感受機(jī)器拆解、裝配、驅(qū)動(dòng)與操控等,獲得現(xiàn)實(shí)般的實(shí)踐體驗(yàn),增加學(xué)習(xí)者的直接經(jīng)驗(yàn);有效地對(duì)理論知識(shí)進(jìn)行補(bǔ)充,隨用隨調(diào),方便靈活、交互性強(qiáng),解決了理論教學(xué)枯燥無(wú)味、晦澀難懂的問(wèn)題,實(shí)現(xiàn)了資源共享,具有一定的參考和應(yīng)用價(jià)值。
機(jī)械設(shè)計(jì)虛擬仿真實(shí)驗(yàn)平臺(tái)要根據(jù)機(jī)械設(shè)計(jì)課程內(nèi)容要求以及現(xiàn)實(shí)實(shí)驗(yàn)需求進(jìn)行開(kāi)發(fā),能夠用來(lái)展示實(shí)驗(yàn)室的教學(xué)內(nèi)容、傳遞教學(xué)知識(shí)、模擬實(shí)踐要求,實(shí)驗(yàn)者可以根據(jù)自身時(shí)間安排和需求,選擇性地開(kāi)展實(shí)驗(yàn)。因此,該實(shí)驗(yàn)平臺(tái)的搭建需要滿(mǎn)足以下要求:(1)確保平臺(tái)內(nèi)的理論知識(shí)以及實(shí)驗(yàn)內(nèi)容絕對(duì)正確,并且表達(dá)方式合理;(2)滿(mǎn)足實(shí)驗(yàn)者基本需求,開(kāi)發(fā)多項(xiàng)實(shí)驗(yàn)項(xiàng)目,反映實(shí)驗(yàn)過(guò)程和教學(xué)策略;(3)具有友好的人機(jī)交互界面,達(dá)到虛擬操作的目的。
機(jī)械設(shè)計(jì)虛擬實(shí)驗(yàn)平臺(tái)能模擬真實(shí)實(shí)驗(yàn)過(guò)程,既能實(shí)現(xiàn)真實(shí)實(shí)驗(yàn)?zāi)康?,又能將一些機(jī)構(gòu)的運(yùn)動(dòng)過(guò)程通過(guò)動(dòng)畫(huà)模擬出來(lái),更方便空間想象能力差的學(xué)生理解相應(yīng)的知識(shí)點(diǎn),以實(shí)驗(yàn)促進(jìn)理論知識(shí)的理解與應(yīng)用。為實(shí)現(xiàn)此功能,虛擬實(shí)驗(yàn)平臺(tái)包括以下部分:(1)控制面板——用戶(hù)通過(guò)鼠標(biāo)、鍵盤(pán)等發(fā)出操作指令,啟動(dòng)相應(yīng)程序,進(jìn)入相應(yīng)的實(shí)驗(yàn),實(shí)現(xiàn)友好交互;(2)場(chǎng)景顯示——利用可視化的操作場(chǎng)景,模擬真實(shí)的實(shí)驗(yàn)環(huán)境,有身臨其境的感覺(jué);(3)實(shí)驗(yàn)結(jié)果——完成實(shí)驗(yàn)后,要及時(shí)顯示實(shí)驗(yàn)結(jié)果,方便判斷實(shí)驗(yàn)結(jié)果的正確與否,確保實(shí)驗(yàn)效果;(4)自主性操作——用戶(hù)可以根據(jù)自身需求,選擇相應(yīng)的實(shí)驗(yàn),例如模擬裝配既可以自動(dòng)裝配,也可以通過(guò)鼠標(biāo)拖曳零件的方式進(jìn)行自主化裝配;(5)在線模擬測(cè)試——為檢查學(xué)生對(duì)相應(yīng)實(shí)驗(yàn)及理論的掌握情況,增加測(cè)試環(huán)節(jié),進(jìn)一步提高學(xué)習(xí)效果。目前機(jī)械設(shè)計(jì)基礎(chǔ)虛擬實(shí)驗(yàn)平臺(tái)包括機(jī)械設(shè)計(jì)認(rèn)知實(shí)驗(yàn)、減速器拆裝實(shí)驗(yàn)、機(jī)構(gòu)運(yùn)動(dòng)特性分析、機(jī)構(gòu)創(chuàng)新組合設(shè)計(jì)、滑動(dòng)軸承等實(shí)驗(yàn)項(xiàng)目,隨著后續(xù)實(shí)驗(yàn)項(xiàng)目的開(kāi)發(fā),基本能滿(mǎn)足機(jī)械相關(guān)專(zhuān)業(yè)的實(shí)驗(yàn)教學(xué)需求,具體實(shí)現(xiàn)功能見(jiàn)圖1。
圖1 機(jī)械設(shè)計(jì)基礎(chǔ)虛擬實(shí)驗(yàn)仿真平臺(tái)的功能框架
減速器是原動(dòng)機(jī)和工作機(jī)之間獨(dú)立的閉式傳動(dòng)裝置,主要由傳動(dòng)零件(齒輪或蝸輪)、軸、軸承、箱體和其附件等組成[9]。減速器拆裝實(shí)驗(yàn)中涉及零部件結(jié)構(gòu)分析、拆裝順序與方法等,對(duì)學(xué)生培養(yǎng)工程意識(shí),提高分析和解決問(wèn)題的能力等具有重要意義,同時(shí)也是啟迪學(xué)生創(chuàng)新思維的重要手段[10]。虛擬實(shí)驗(yàn)系統(tǒng)主要功能框架為實(shí)驗(yàn)準(zhǔn)備、減速器拆裝及運(yùn)行動(dòng)畫(huà)、拆裝仿真、齒輪傳動(dòng)與實(shí)驗(yàn)幫助,見(jiàn)圖2。
圖2 減速器拆裝虛擬仿真實(shí)驗(yàn)總體框架
以Unity 3D虛擬引擎為載體,利用UG、3dsMax、C#完成虛擬實(shí)驗(yàn)系統(tǒng)的開(kāi)發(fā)。通過(guò)Unity 3D打包發(fā)布,可以使虛擬實(shí)驗(yàn)系統(tǒng)成為獨(dú)立文件,從而可以脫離Unity 3D環(huán)境在其他電腦運(yùn)行和傳播。Unity 3D打包發(fā)布,可以直接在Unity界面的“File”目錄下點(diǎn)擊“Build Settings”,就可以發(fā)布到PC、iOS、Android等客戶(hù)端[11]。由于其數(shù)據(jù)化的便攜性,經(jīng)過(guò)適配,可在多種設(shè)備上隨時(shí)隨地進(jìn)行虛擬實(shí)驗(yàn)。
減速器拆裝實(shí)驗(yàn)系統(tǒng)以一級(jí)圓柱齒輪減速器和擺線針輪減速器為例進(jìn)行拆裝,包括手動(dòng)和自動(dòng)兩種方式,用戶(hù)可以通過(guò)點(diǎn)擊相應(yīng)的操作按鈕進(jìn)行選擇。操作方式簡(jiǎn)單,交互性好。拆裝之前,學(xué)生可觀看減速器的拆裝動(dòng)畫(huà),準(zhǔn)確把握減速器的結(jié)構(gòu)組成,理解軸上各零件的軸向定位、周向定位以及密封情況,認(rèn)識(shí)各零件的結(jié)構(gòu)。當(dāng)鼠標(biāo)點(diǎn)擊相應(yīng)的減速器時(shí),會(huì)了解該減速器的用途及適用場(chǎng)合。對(duì)于識(shí)圖能力較差的學(xué)生,平臺(tái)還提供了各零件的三視圖,使學(xué)生提高減速器各部分如何通過(guò)圖紙來(lái)表達(dá)的能力,為后續(xù)的機(jī)械設(shè)計(jì)課程打下基礎(chǔ)。
圖3 一級(jí)圓柱齒輪減速器拆裝
圖3為減速器拆裝的運(yùn)行界面,界面的左側(cè)為組成減速器的各種零件,右側(cè)為組裝的進(jìn)度情況。學(xué)生可以通過(guò)拖動(dòng)鼠標(biāo)進(jìn)行組裝和拆卸,若裝配正確可繼續(xù)進(jìn)行,否則不能進(jìn)行下一步。同時(shí),按住鼠標(biāo)可進(jìn)行零部件的360°旋轉(zhuǎn)和縮放,讓學(xué)生做到邊裝配、邊思考,這加深了學(xué)生對(duì)知識(shí)點(diǎn)的理解。通過(guò)對(duì)不同減速器的實(shí)驗(yàn)拆裝,比較異同之處,學(xué)生能進(jìn)一步理解所學(xué)知識(shí)。
點(diǎn)擊實(shí)驗(yàn)頁(yè)面內(nèi)的手動(dòng)拆卸按鈕,即進(jìn)入手動(dòng)拆卸過(guò)程。平臺(tái)中間為減速器的三維模型,利用鼠標(biāo)點(diǎn)擊后滑輪可以控制減速器模型的放大和縮小。通過(guò)鼠標(biāo)左鍵點(diǎn)擊減速器某部分,拖動(dòng)拆卸的零件到平臺(tái)兩側(cè),即可進(jìn)行手動(dòng)拆卸。如果零件拆卸順序錯(cuò)誤則不會(huì)被拖動(dòng),需要選擇正確的零件進(jìn)行手動(dòng)拆卸,完成手動(dòng)拆卸的擺線針輪減速器如圖4所示。
圖4 擺線針輪減速器拆卸
減速器手動(dòng)裝配是手動(dòng)拆卸的逆過(guò)程,操作步驟相反。當(dāng)完成減速器模擬拆裝實(shí)驗(yàn)后,點(diǎn)擊右上角的返回按鈕可以返回減速器拆裝界面,再點(diǎn)擊退出實(shí)驗(yàn)即可返回實(shí)驗(yàn)平臺(tái)主界面。
在線模擬測(cè)試是通過(guò)模仿考試系統(tǒng)搭建而成,幫助實(shí)驗(yàn)者檢驗(yàn)學(xué)習(xí)效果,增加知識(shí)儲(chǔ)備量。通過(guò)不斷完善測(cè)試題庫(kù),后期可抽取不同題目進(jìn)行在線測(cè)試。按照題目章節(jié)類(lèi)型不同,將題目測(cè)試區(qū)分為不同的入口,學(xué)生根據(jù)自身知識(shí)需求,可以選擇章節(jié)進(jìn)行測(cè)試。測(cè)試題目全部以選擇題的方式呈現(xiàn),設(shè)置4個(gè)選項(xiàng)備選,學(xué)生完成一道題目后,點(diǎn)擊右下角的下一題按鈕可進(jìn)入下一道題,如圖5所示。在完成所有測(cè)試題目后,點(diǎn)擊提交按鈕,所做題目將提交到平臺(tái)進(jìn)行批閱,平臺(tái)批閱完成后會(huì)將做對(duì)、做錯(cuò)題目的數(shù)量呈現(xiàn)給實(shí)驗(yàn)者,這樣實(shí)驗(yàn)者對(duì)于自身知識(shí)能夠有一個(gè)全面的了解,為下一步學(xué)習(xí)和開(kāi)展實(shí)驗(yàn)提供依據(jù)。點(diǎn)擊返回主頁(yè)面按鈕,即可返回主界面,選擇進(jìn)行其他實(shí)驗(yàn)。
由于鼠標(biāo)是虛擬拆裝實(shí)驗(yàn)的重要控制工具,因此在該實(shí)驗(yàn)平臺(tái)的設(shè)計(jì)過(guò)程中,需要充分考慮如何判別鼠標(biāo)是否觸碰到或選中場(chǎng)景中的零件。為實(shí)現(xiàn)該功能,需要給場(chǎng)景中的每一個(gè)零件設(shè)置一個(gè)碰撞器,依據(jù)給定的范圍進(jìn)行識(shí)別檢測(cè)。在虛擬開(kāi)發(fā)引擎Unity中,有很多可以選擇的碰撞器類(lèi)型。通過(guò)對(duì)比,網(wǎng)格碰撞器與零件的形狀最為適合,精細(xì)度最高,因此優(yōu)先選用網(wǎng)格碰撞器。為避免每個(gè)零件都添加網(wǎng)格碰撞器占用大量?jī)?nèi)存,可以依據(jù)零部件的具體形狀進(jìn)行選擇,例如軸承和端蓋部分可以選擇立方體碰撞器。在實(shí)驗(yàn)平臺(tái)中,只要鼠標(biāo)進(jìn)入碰撞器的范圍內(nèi),就代表鼠標(biāo)事件對(duì)碰撞器里的零件生效。
圖5 在線測(cè)試界面
在拆裝過(guò)程中,要實(shí)現(xiàn)鼠標(biāo)拖動(dòng)零件,即零件跟隨鼠標(biāo)移動(dòng)。這個(gè)過(guò)程是通過(guò)實(shí)例化實(shí)現(xiàn)的,當(dāng)主攝像機(jī)發(fā)出的射線與碰撞器接觸時(shí),即鼠標(biāo)點(diǎn)擊碰撞器時(shí),與其對(duì)應(yīng)的零件就會(huì)顯現(xiàn)出來(lái),跟隨鼠標(biāo)實(shí)例化的零件就會(huì)消失。 主攝像機(jī)發(fā)射射線到鼠標(biāo)觸碰位置的相關(guān)代碼為Ray ray=Camera.main.ScreenPointToRay(Input.mousePosition)。在平臺(tái)中,如果要保證實(shí)例化的零件能夠跟隨鼠標(biāo)在屏幕內(nèi)隨意移動(dòng),就需要轉(zhuǎn)換屏幕坐標(biāo),具體為在Sence視圖中設(shè)置一個(gè)Cube,將其放到坐標(biāo)為(0,0,0)的位置。相關(guān)的部分代碼如下:
ScreenSpace=Camera.main.WorldToScreenPoint(GameObject.transform.position);
CompPos=Camera.main.ScreenToWorldPoint(newVector3(Input.mousePosition.x,Input.mousePosition.y,ScreenSpace.z))。
鑒于高校機(jī)械設(shè)計(jì)實(shí)驗(yàn)存在教學(xué)實(shí)驗(yàn)設(shè)備不足、設(shè)備老舊磨損,以及受時(shí)間和場(chǎng)地的限制等問(wèn)題,線下實(shí)驗(yàn)室的使用有諸多不便。利用Unity作為開(kāi)發(fā)平臺(tái),通過(guò)使用Unity 3D開(kāi)發(fā)引擎,設(shè)計(jì)開(kāi)發(fā)了一款基于Unity 3D的機(jī)械設(shè)計(jì)虛擬仿真實(shí)驗(yàn)平臺(tái)。該平臺(tái)打破了傳統(tǒng)實(shí)驗(yàn)室的限制,不僅實(shí)現(xiàn)了預(yù)期的實(shí)驗(yàn)功能,還有效地對(duì)機(jī)械設(shè)計(jì)的理論知識(shí)點(diǎn)進(jìn)行了動(dòng)畫(huà)模擬,彌補(bǔ)了學(xué)生實(shí)踐操作少的缺點(diǎn),提高了學(xué)生的學(xué)習(xí)興趣,達(dá)到了理論與實(shí)踐結(jié)合的目的,大大提升了教學(xué)質(zhì)量,具有一定的應(yīng)用價(jià)值。