李 靜,任天猛,晁艷艷,韓 慜
(長(zhǎng)春工業(yè)大學(xué) 機(jī)電工程學(xué)院,長(zhǎng)春 130012)
直列四缸發(fā)動(dòng)機(jī)的四個(gè)氣缸按照直線排列,是小排量汽車內(nèi)燃機(jī)的常見形式。發(fā)動(dòng)機(jī)是整個(gè)機(jī)械系統(tǒng)的動(dòng)力裝置,而氣缸是整個(gè)發(fā)動(dòng)機(jī)動(dòng)力的源頭。在設(shè)計(jì)和開發(fā)直列四缸發(fā)動(dòng)機(jī)過程中需要對(duì)其進(jìn)行裝配,但是傳統(tǒng)的裝配過程存在一些影響裝配效率的因素。運(yùn)用虛擬現(xiàn)實(shí)技術(shù)不但可以提供新的途徑,還可以提高裝配效率,減少不利因素的影響,
虛擬現(xiàn)實(shí)技術(shù)[1~4]的核心是計(jì)算機(jī)技術(shù),具有視覺、聽覺、觸覺的一體化虛擬環(huán)境并且用戶可以通過多種虛擬設(shè)備與虛擬環(huán)境中的物體進(jìn)行交互。目前,虛擬現(xiàn)實(shí)技術(shù)已經(jīng)被應(yīng)用于軍事、娛樂、醫(yī)學(xué)、建筑等領(lǐng)域。EON Studio是一種三維交互式虛擬現(xiàn)實(shí)軟件,具有良好的兼容性、智能的操作界面和豐富的功能節(jié)點(diǎn)等優(yōu)點(diǎn)。同時(shí)EON Studio程序還可以與ActiveX控件相結(jié)合建立虛擬現(xiàn)實(shí)裝配系統(tǒng)。
運(yùn)用虛擬現(xiàn)實(shí)軟件EON Studio從模型建立、模型導(dǎo)入、運(yùn)動(dòng)控制、碰撞檢測(cè)等多個(gè)方面對(duì)直列四缸發(fā)動(dòng)機(jī)的虛擬裝配過程進(jìn)行了研究,并以Visual Basic為集成工具開發(fā)了系統(tǒng)界面,實(shí)現(xiàn)了直列四缸發(fā)動(dòng)機(jī)的虛擬裝配。
在進(jìn)行直列四缸發(fā)動(dòng)機(jī)裝配時(shí),為了更好的規(guī)劃裝配路徑,先在EON Studio中對(duì)直列四缸發(fā)動(dòng)機(jī)模型的結(jié)構(gòu)進(jìn)行分析,進(jìn)而更好的對(duì)直列四缸發(fā)動(dòng)機(jī)的裝配系統(tǒng)進(jìn)行研究。直列四缸發(fā)動(dòng)機(jī)的結(jié)構(gòu),如圖1所示。
圖1 直列四缸發(fā)動(dòng)機(jī)結(jié)構(gòu)圖
EON Studio是虛擬現(xiàn)實(shí)軟件,不具有三維建模的能力。根據(jù)直列四缸發(fā)動(dòng)機(jī)的結(jié)構(gòu)及尺寸在CATIA中繪制直列四缸發(fā)動(dòng)機(jī)的三維模型。圖2為CATIA中的發(fā)動(dòng)機(jī)裝配體模型。
圖2 CATIA中的裝配體模型
將三維實(shí)體模型導(dǎo)入3ds Max中。由于在導(dǎo)入的過程中難以避免的出現(xiàn)丟面或者零件失真的現(xiàn)象,這時(shí)需要用3ds Max軟件對(duì)丟掉的面及其他元素進(jìn)行修補(bǔ),再進(jìn)行渲染、著色和調(diào)整燈光等措施使模型在虛擬環(huán)境中具有真實(shí)感。在3ds Max中利用EON Raptor輸出插件將模型保存為*.eoz格式的文件。用EON打開生成的文件,模擬樹視窗中將自動(dòng)生成一個(gè)默認(rèn)的模型層次數(shù)據(jù)結(jié)構(gòu)。為了便于對(duì)直列四缸發(fā)動(dòng)機(jī)模型進(jìn)行裝配,重新構(gòu)建一個(gè)清晰合理的直列四缸發(fā)動(dòng)機(jī)模型樹的層次結(jié)構(gòu),對(duì)結(jié)構(gòu)中的每個(gè)零件重新命名并對(duì)模擬樹中零件的父子關(guān)系進(jìn)行調(diào)整。模型樹結(jié)構(gòu)如圖3所示。
圖3 模型樹結(jié)構(gòu)
裝配的過程中通過設(shè)定初次裝配和二次裝配使裝配更加簡(jiǎn)捷。零件與零件之間的裝配被稱為初次裝配,這時(shí)一些零件組合在一起形成裝配體的一個(gè)部分,這個(gè)部分我們稱為子裝配體。初次裝配完成后生成一些子裝配體和零件。將這些零件和子裝配體裝配在一起形成完整的裝配體的過程就是二次裝配。二次裝配后零件之間都形成了應(yīng)有的配合,從而完成了裝配體的裝配過程。二次裝配的過程如圖4所示。
圖4 二次裝配的流程圖
按照上面的原理可以得到發(fā)動(dòng)機(jī)的簡(jiǎn)單裝配序列。對(duì)發(fā)動(dòng)機(jī)的裝配序列規(guī)劃如下:先將連桿體,連桿襯套,連桿軸瓦,活塞,活塞銷組成一個(gè)連桿子裝配體。然后再將這些子裝配體與曲軸、缸體、連桿蓋等零件組成一個(gè)完整的裝配體。圖5為發(fā)動(dòng)機(jī)的裝配序列規(guī)劃流程圖。
圖5 發(fā)動(dòng)機(jī)的裝配序列規(guī)劃流程圖
利用EON軟件連接方位跟蹤器及數(shù)據(jù)手套等虛擬外設(shè)裝備對(duì)直列四缸發(fā)動(dòng)機(jī)進(jìn)行虛擬裝配。其主要原理是利用數(shù)據(jù)手套感應(yīng)操作的數(shù)據(jù),將數(shù)據(jù)傳給EON的5DT Date Glove節(jié)點(diǎn),再將數(shù)據(jù)傳到方位跟蹤器節(jié)點(diǎn),方位跟蹤器節(jié)點(diǎn)記錄虛擬手模型當(dāng)前的坐標(biāo)數(shù)據(jù)并傳遞給虛擬手模型,使虛擬手模型的動(dòng)作和坐標(biāo)數(shù)據(jù)發(fā)生變化。讓虛擬手帶動(dòng)零件模型一起運(yùn)動(dòng),從而實(shí)現(xiàn)零件的抓取裝配過程。抓取過程的流程圖如圖6所示。
圖6 抓取過程流程圖
數(shù)據(jù)手套及方位跟蹤器是實(shí)現(xiàn)抓取功能的基本虛擬外設(shè)。數(shù)據(jù)手套的背部為每根手指都配備有一根柔性傳感器,用于測(cè)試力反饋的彎曲度變化,通過數(shù)據(jù)手套的USB接口將力反饋的數(shù)據(jù)傳送給工作站。工作站將數(shù)據(jù)映射到虛擬場(chǎng)景中,最后通過程序驅(qū)動(dòng)虛擬手的運(yùn)動(dòng),實(shí)現(xiàn)虛擬手與人手動(dòng)作的同步,并對(duì)物體進(jìn)行簡(jiǎn)單的抓取。圖7為5DT數(shù)據(jù)手套左手的基本結(jié)構(gòu)。
圖7 5DT數(shù)據(jù)手套的基本結(jié)構(gòu)
實(shí)現(xiàn)虛擬抓取等功能之前,必須先在EON中建立虛擬手模型。虛擬手是進(jìn)行虛擬裝配的執(zhí)行機(jī)構(gòu),可實(shí)現(xiàn)精細(xì)的抓取操作。模仿人手建立虛擬手模型,必須使其具有與人手相同的結(jié)構(gòu),這有利于實(shí)現(xiàn)抓取、移動(dòng)、釋放物體等操作。虛擬手模型的動(dòng)作將由數(shù)據(jù)手套的驅(qū)動(dòng)程序驅(qū)動(dòng),虛擬手模型的關(guān)節(jié)數(shù)應(yīng)該與所使用的數(shù)據(jù)手套的傳感器數(shù)對(duì)應(yīng)。本文中使用的是5DT數(shù)據(jù)手套的左手,將虛擬手模型的關(guān)節(jié)數(shù)設(shè)定為14個(gè)。在EON軟件中對(duì)虛擬手的模型進(jìn)行設(shè)置使得虛擬手模型與數(shù)據(jù)手套同步。導(dǎo)入到EON中的虛擬手模型如圖8所示。
圖8 Eon中的虛擬手模型
通過EON中的Script節(jié)點(diǎn)對(duì)方位跟蹤器節(jié)點(diǎn)進(jìn)行控制。同時(shí)添加5DT數(shù)據(jù)手套節(jié)點(diǎn)及其接收器,對(duì)其路由圖進(jìn)行連接,使虛擬手模型在數(shù)據(jù)手套和方位跟蹤器的作用下實(shí)現(xiàn)動(dòng)作。圖9為數(shù)據(jù)手套和方位跟蹤器的路由圖。
圖9 數(shù)據(jù)手套和方位跟蹤器的路由圖
在直列四缸發(fā)動(dòng)機(jī)的裝配過程中不可避免的發(fā)生碰撞。利用碰撞檢測(cè)技術(shù)[5,6]可以反饋虛擬手模型與待裝配零件、已拆裝零件之間的距離信息。這樣就可以實(shí)現(xiàn)零件隨虛擬手模型進(jìn)行同步運(yùn)動(dòng)。包圍盒式碰撞檢測(cè)是目前比較流行的碰撞檢測(cè)算法,EON中的碰撞檢測(cè)算法為零件外部添加包圍盒進(jìn)行碰撞檢測(cè),其主要功能是通過Collision節(jié)點(diǎn)來實(shí)現(xiàn)的。虛擬環(huán)境中的碰撞檢測(cè)是指兩個(gè)零件的包圍盒進(jìn)行碰撞檢測(cè),互相之間反饋力學(xué)信息。包圍盒主要有以下幾種方式:方形包圍盒(Box)、球形包圍盒(Sphere)、三角網(wǎng)格(Triangle mesh)、凸面體網(wǎng)格(Convex mesh)等。越是復(fù)雜的包圍盒移動(dòng)后更新需要的時(shí)間越長(zhǎng),通過對(duì)比選擇普通的方形包圍盒。對(duì)零件之間添加碰撞檢測(cè)節(jié)點(diǎn),同時(shí)為各零件建立相應(yīng)的方形包圍盒。圖10為曲軸添加了長(zhǎng)方體形包圍盒。
圖10 長(zhǎng)方體形包圍盒
數(shù)據(jù)手套不具備力反饋功能,所以在發(fā)生碰撞后輸出視覺反饋來通知操作者已經(jīng)發(fā)生碰撞,可以進(jìn)行下一步操作。視覺反饋可以通過改變待裝配零件的顏色的方式實(shí)現(xiàn)。當(dāng)虛擬手模型運(yùn)動(dòng)到待裝零件的一定范圍內(nèi)時(shí),待拆裝零件的顏色發(fā)生改變,這時(shí)利用數(shù)據(jù)手套控制的虛擬手模型可以實(shí)現(xiàn)零件的抓取。將待拆裝零件的坐標(biāo)與虛擬手的坐標(biāo)同步,隨著虛擬手一起運(yùn)動(dòng),把待拆裝零件移動(dòng)到目標(biāo)位置后,松開手指釋放零件,零件變回本來顏色,完成零件的虛擬裝配過程。圖11為碰撞檢測(cè)節(jié)點(diǎn)的路由圖。
圖11 碰撞檢測(cè)節(jié)點(diǎn)路由圖
數(shù)據(jù)手套[7,8]通過USB接口與計(jì)算機(jī)相連,每個(gè)手指上都有一個(gè)條狀傳感器,主要用于測(cè)量手指的彎曲度數(shù)據(jù)。數(shù)據(jù)手套與虛擬手的同步是通過EON中的5DT Date Glove節(jié)點(diǎn)實(shí)現(xiàn)的。這樣可以實(shí)現(xiàn)人手在虛擬環(huán)境中的抓取及釋放等動(dòng)作。方位跟蹤器固定在數(shù)據(jù)手套的腕部,用來獲取人手的空間位置的坐標(biāo)數(shù)據(jù)和方位數(shù)據(jù),并將其轉(zhuǎn)換為虛擬手在虛擬空間中的坐標(biāo)值和方位值,通過坐標(biāo)值的不斷改變使虛擬手帶動(dòng)零件在虛擬環(huán)境中實(shí)現(xiàn)各種空間的位姿變換。利用數(shù)據(jù)手套及方位跟蹤器將發(fā)動(dòng)機(jī)零件按照規(guī)劃完成裝配。利用數(shù)據(jù)手套裝配發(fā)動(dòng)機(jī)的過程如圖12所示。
圖12 基于數(shù)據(jù)手套的虛擬裝配
為了便于在機(jī)器上演示,利用鍵盤與路由機(jī)制之間的關(guān)系,將裝配的路徑和序列提前寫入到EON程序中。把Visual Basic作為二次開發(fā)工具,建立虛擬裝配人機(jī)交互系統(tǒng)。在Visual Basic程序中引入微軟的ActiveX控件,為裝配系統(tǒng)開發(fā)用戶界面,使其與EON內(nèi)部的路由圖之間進(jìn)行消息的相互傳遞。利用VB程序和EON模擬程序之間的信息傳遞控制虛擬場(chǎng)景內(nèi)虛擬對(duì)象的行為,以此來實(shí)現(xiàn)人機(jī)交互[9]的目的。圖13為Visual Basic系統(tǒng)人機(jī)交互界面。
圖13 發(fā)動(dòng)機(jī)人機(jī)交互系統(tǒng)
[1] 夏平均,陳朋,郎躍東,姚英學(xué),唐文彥.虛擬裝配技術(shù)的研究綜述[J].系統(tǒng)仿真學(xué)報(bào),2009,08:2267-2272.
[2] 劉誠(chéng),付宜利.基于EON的交互式虛擬裝配仿真系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].東北林業(yè)大學(xué)學(xué)報(bào),2009,08:109-111.
[3].VirtualSimulationSystemwithPath-followingControlforLu narRoversMovingonRoughTerrain[J].ChineseJournalofMech anicalEngineering,2012,01:38-46.
[4]李山山,宋正河,陳越洋,毛恩榮,朱忠祥,陳莉.農(nóng)業(yè)機(jī)械底盤機(jī)械式變速箱虛擬裝配[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2012,S1:318-322.
[5] 劉檢華,姚珺,寧汝新.基于虛擬裝配的碰撞檢測(cè)算法研究與實(shí)現(xiàn)[J].系統(tǒng)仿真學(xué)報(bào),2004,08:1775-1778.
[6] 周云波,閆清東,李宏才.虛擬環(huán)境中碰撞檢測(cè)算法分析[J].系統(tǒng)仿真學(xué)報(bào),2006,S1:103-107.
[7] 楊曦.基于EON的數(shù)據(jù)手套交互仿真系統(tǒng)的研究[J].電腦知識(shí)與技術(shù),2012,01:84-87.
[8] 安明,陳善廣,劉玉慶.基于數(shù)據(jù)手套的虛擬手精確建模的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)仿真,2010,01:241-244.
[9] 周曉晶,趙正旭,樓江.基于數(shù)據(jù)手套的虛擬手勢(shì)交互系統(tǒng)[J].儀表技術(shù)與傳感器,2007,10:65-66,70.