江北大 劉治宏 蔡曉紅
機(jī)械裝配技術(shù)是士官職業(yè)技術(shù)教育機(jī)電類專業(yè)的一門專業(yè)基礎(chǔ)必修課,通過本課程的學(xué)習(xí),為學(xué)生學(xué)習(xí)專業(yè)課和從事軍械維修工作打下堅實(shí)基礎(chǔ)。減速機(jī)的結(jié)構(gòu)認(rèn)識和裝配訓(xùn)練是該課程的重點(diǎn)內(nèi)容之一。學(xué)生普遍反饋減速機(jī)零部件眾多,直接上手拆裝難度較大。運(yùn)用Matlab中的Simulink 3D Animation虛擬現(xiàn)實(shí)工具箱,結(jié)合VRML技術(shù),制作出可交互減速機(jī)的虛擬裝配場景,不僅能夠?qū)p速機(jī)的結(jié)構(gòu)、原理、運(yùn)動方式講解得更清楚,還能夠極大地激發(fā)學(xué)生的學(xué)習(xí)興趣,促進(jìn)學(xué)生的訓(xùn)練積極性。
1 Matlab虛擬現(xiàn)實(shí)工具箱簡介
Matlab是MathWorks公司出品的一款商業(yè)軟件,主要用于數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算等用途,具有功能強(qiáng)大、容易調(diào)試、交互性好等特點(diǎn)。在機(jī)電類課程教學(xué)中,機(jī)構(gòu)的運(yùn)動仿真和虛擬裝配對于幫助學(xué)生理解機(jī)構(gòu)的結(jié)構(gòu)原理和運(yùn)動特性至關(guān)重要。在Matlab中實(shí)現(xiàn)機(jī)構(gòu)運(yùn)動仿真的方法主要有三種,第一種是基于模型解算,首先列出機(jī)構(gòu)的運(yùn)動方程,然后通過編程進(jìn)行數(shù)值計算得到機(jī)構(gòu)中各構(gòu)件的運(yùn)動軌跡、速度、加速度等參數(shù),缺點(diǎn)是結(jié)果大多通過大量的數(shù)據(jù)來顯示,不夠直觀。第二種是通過SimMechanics工具對機(jī)械系統(tǒng)進(jìn)行建模和仿真,優(yōu)點(diǎn)是編程工作量少,缺點(diǎn)是仿真結(jié)果難以通過三維模型形象地展示。最后一種則是運(yùn)用Matlab提供的Simulink 3D Animation虛擬現(xiàn)實(shí)工具箱結(jié)合VRML語言編寫的三維模型來實(shí)現(xiàn)。VRML全稱為虛擬現(xiàn)實(shí)建模語言,已經(jīng)通過ISO組織認(rèn)證為國際標(biāo)準(zhǔn),被各大主流建模軟件支持。Matlab從6.1版本增加了Simulink 3D Animation虛擬現(xiàn)實(shí)工具箱,提供了實(shí)現(xiàn)VRML格式三維模型對象交互的途徑。第三種方法結(jié)合了前面兩種方法的優(yōu)點(diǎn),不僅實(shí)現(xiàn)難度低而且仿真結(jié)果更加形象逼真。
2減速機(jī)虛擬裝配設(shè)計
2.1 總體思路
減速機(jī)是一種由齒輪傳動、蝸桿傳動所組成的傳動裝置,在原動機(jī)和工作機(jī)之間起匹配轉(zhuǎn)速和傳遞轉(zhuǎn)矩的作用,應(yīng)用非常廣泛。
減速機(jī)的虛擬裝配設(shè)計涉及各零部件的平移和旋轉(zhuǎn)等運(yùn)動形式。比如,通過向下平移箱蓋實(shí)現(xiàn)將其安裝到箱座上,螺釘?shù)难b配則要求螺釘做旋轉(zhuǎn)和平移運(yùn)動。在VRML語言中,驅(qū)動減速機(jī)各零部件的運(yùn)動,主要用到ROUTE節(jié)點(diǎn)和TimeSensor、OrientationInterpolator、translationInterpolator等傳感器節(jié)點(diǎn),在Matlab虛擬現(xiàn)實(shí)工具箱中,則是通過改變各零部件Transform節(jié)點(diǎn)的translation域和rotation域的域值來更加簡便地實(shí)現(xiàn)。
減速機(jī)虛擬裝配設(shè)計的基本思路是首先需要建立減速機(jī)的三維模型并轉(zhuǎn)換為wrl格式,然后進(jìn)入Simulink中的VRSink模塊,根據(jù)減速機(jī)拆裝時各零部件的運(yùn)動規(guī)律,編寫控制框圖。
2.2 減速機(jī)零部件建模
VRML語言支持使用基本幾何節(jié)點(diǎn)創(chuàng)建簡單的三維模型,比如使用Box節(jié)點(diǎn)創(chuàng)建一個長方體,但對于復(fù)雜的模型,使用專業(yè)的三維建模軟件UGNX建立零部件的模型再導(dǎo)出為wrl格式更為簡便。方法如下:
1)使用UGNX軟件建立減速機(jī)各零部件模型并裝配;
2)將裝配體導(dǎo)出為wrl格式,選擇輸出類型為VRML 2.0(動畫);
3)使用Matlab軟件中的3D World Editor應(yīng)用程序打開減速機(jī)wrl文件,將UGNX自動生成的數(shù)字形式的各零部件Transform名稱改為便于識別的英文名稱,以便在Simulink中區(qū)分。
2.3 減速機(jī)虛擬裝配的實(shí)現(xiàn)
在Simulink中新建一個空白Model,將VR Sink模塊添加到Model中,然后將Source file設(shè)置為減速機(jī)的wrl文件,并在Virtual World Tree中勾選減速機(jī)虛擬裝配中做平移運(yùn)動的各零部件(箱蓋、軸、螺紋緊固件等)Transform節(jié)點(diǎn)的translation域,以及做旋轉(zhuǎn)運(yùn)動的各零部件(螺紋緊固件等)Transform節(jié)點(diǎn)的rotation域。
以端蓋螺釘?shù)奶摂M裝配為例。首先添加一個VR Signal Expander模塊作為螺釘Transform節(jié)點(diǎn)的translation域的域值,Output width設(shè)置為3表示translation域的三個坐標(biāo)軸變量,Output signal indices設(shè)置為[2]表示translation域的第二個坐標(biāo)軸變量,然后添加一個Repeating table模塊作為VR Signal Expander的輸入值,根據(jù)端蓋螺釘裝配時間,Time values參數(shù)設(shè)置為[0 10 11],Output values參數(shù)設(shè)置為[ 0 400 400]表示螺釘從初始位置沿旋入方向做勻速直線運(yùn)動到螺紋孔然后停止。螺釘旋轉(zhuǎn)的實(shí)現(xiàn)相對于平移較為復(fù)雜,方法是通過Constant、Repeating table和Mux等模塊設(shè)置螺釘?shù)墓潭ㄐD(zhuǎn)坐標(biāo)軸和遞增的角位移。螺釘?shù)奶摂M裝配仿真模型如圖1所示。
3結(jié)論
VRML格式作為國際標(biāo)準(zhǔn),被主流三維建模軟件支持,非常適合作為機(jī)構(gòu)運(yùn)動仿真和虛擬拆裝的素材。運(yùn)用Simulink 3D Animation虛擬現(xiàn)實(shí)工具箱和VRML技術(shù)實(shí)現(xiàn)常用減速機(jī)的虛擬拆裝,使機(jī)械裝配技術(shù)課程能夠更加形象直觀、充滿趣味,從而顯著提升教學(xué)效果。
(作者單位:陸軍工程大學(xué)軍械士官學(xué)校基礎(chǔ)部機(jī)械基礎(chǔ)教研室)