1 引言
“虛擬裝配”(Virtual Assembly)是產(chǎn)品數(shù)字化定義中的一個重要環(huán)節(jié),在虛擬現(xiàn)實領(lǐng)域中得到了廣泛的應(yīng)用研究。通常有兩種定義:一是虛擬裝配是一種零件模型按約束關(guān)系進(jìn)行重新定位的過程, 是有效分析產(chǎn)品設(shè)計合理性的一種手段。該定義強(qiáng)調(diào)虛擬裝配技術(shù)是一種模型重新進(jìn)在裝配過程中人的裝配知識無法運(yùn)用等缺點。
2 設(shè)計思想
復(fù)雜機(jī)械設(shè)備的虛擬裝配設(shè)計與實現(xiàn)為設(shè)計者提供了視、聽、觸覺一體化的設(shè)計環(huán)境,也為產(chǎn)品裝配性分析提供了新的手段,虛擬裝配已成為虛擬設(shè)計領(lǐng)域中的重要研究方向。虛擬裝配一方面可以避免傳統(tǒng)人工裝配中對實際產(chǎn)品操作的弊端,同時又可以避免自動裝配中操作困難以及作業(yè)時的交互等。
虛擬裝配, 由于時空觀念的超越,會出現(xiàn)一些新的特點,要解決的技術(shù)問題,主要有如下幾點。
2.1 虛擬裝配環(huán)境的構(gòu)筑
虛擬環(huán)境的描述與管理,動作檢測子系統(tǒng)和感覺信息合成子系統(tǒng)的因果關(guān)系處理,虛擬世界的事件控制,感覺信息的綜合以及輸入、輸出驅(qū)動規(guī)則等。
2.2 裝配過程的力作用機(jī)理分析
裝配過程實質(zhì)上是用力學(xué)方法不斷地變化、調(diào)整由于多個物體的接觸而引起的約束關(guān)系的過程。由于這一過程呈現(xiàn)出很強(qiáng)的非線性和瞬態(tài)性,因此分析難度很大。在虛擬環(huán)境中,把微觀接觸狀態(tài)展現(xiàn)到宏觀世界,把瞬態(tài)接觸延續(xù)為虛擬空間中的“慢動作”,在賦予裝配零件機(jī)械物理特性的條件下進(jìn)行裝配過程力作用機(jī)理分析。為了直觀形象,可以對分析數(shù)據(jù)進(jìn)行可視化處理。
2.3 自動裝配規(guī)劃的生成
裝配規(guī)劃就是以某種評價標(biāo)準(zhǔn),按照一定的算法,尋求一條最優(yōu)的零件裝配順序序列,實際上是最優(yōu)化問題。在虛擬環(huán)境下,應(yīng)該重點解決:如何更形象地表現(xiàn)裝配規(guī)劃過程中信息流的動態(tài)流動和可視化;如何在搜索過程中加入啟發(fā)性知識和進(jìn)行人的智能參與。
2.4 虛擬環(huán)境中人的自身投射性
需要研究人的動作檢測及其信號處理,人手模型在虛擬環(huán)境中的映射,人和虛擬環(huán)境在裝配行定位、分析過程;另一個定義是虛擬裝配是根據(jù)產(chǎn)品設(shè)計的形狀特性、精度特性,真實地模擬產(chǎn)品三維裝配過程,并允許用戶以交互方式控制產(chǎn)品的三維真實模擬裝配過程,以檢驗產(chǎn)品的可裝配性。基于VIRTOOLS的復(fù)雜機(jī)械設(shè)備虛擬裝配技術(shù)是在虛擬現(xiàn)實環(huán)境下完成的,它把人、現(xiàn)實世界以及虛擬環(huán)境結(jié)合起來,融為一體,實現(xiàn)信息的交流和反饋。人可以在虛擬環(huán)境中以最自然的形態(tài)實時地進(jìn)行操作和行動,猶如在自身所處現(xiàn)實環(huán)境中同樣的感受,能訓(xùn)練人們對復(fù)雜機(jī)械設(shè)備的裝配、操作,避免對機(jī)械設(shè)備的損害,這對節(jié)約成本和提供方便的訓(xùn)練等方面都具有重要的意義。
3 實現(xiàn)方法
以下將以飛機(jī)發(fā)動機(jī)裝配為例, 介紹基于VirtooLS的復(fù)雜機(jī)械設(shè)備虛擬裝配方法。
(1).由于VIRTOOLS本身不能創(chuàng)建模型,需要在三維建模軟件中創(chuàng)建三維發(fā)動機(jī)的模型,常用的建模軟件有3DS MAX、MAYA、PRO/E、SOLIDWORKS 、 CAT 等, 本例采用SOLIDWORKS建模。
(2). 由于VIRTOOLS無法讀取SOLIDWORKS的零件模型或裝配體模型, 因此需將SOLIDwORKS的裝配體導(dǎo)出為3DXML模型。
(3).在VIRTOoLS中導(dǎo)入3D)【ML模型,并對其進(jìn)行動態(tài)抗鋸齒處理,如圖l所示。
圖1 動態(tài)抗鋸齒
(4).在Level Manager的3D Object中選擇發(fā)動機(jī)所有零部件, 并添加到群組‘‘ObjectsRename”。
(5).動態(tài)復(fù)制“Objects ”群組中的零部_ Rename件,將其重命名并隱藏顯示,主要用于對裝配過程中的零部件進(jìn)行定位,如圖2所示。
圖2 動態(tài)復(fù)制零部件
(6). 編輯鼠標(biāo)動作,該部分為程序的核心內(nèi)容,主要解決鼠標(biāo)三維空間的拾取和定位,其中鼠標(biāo)在三維空間中的定位是難點,需要解決鼠標(biāo)在拖動零部件時物體的位置和朝向。程序模塊如圖3所示。
圖3 鼠標(biāo)動作檢測
其中2D Picking一直處于開啟狀態(tài),用于檢測鼠標(biāo)的狀態(tài),當(dāng)鼠標(biāo)拾取的物體為群組中的零部件物體時(Test輸出值為True),觸發(fā)MouseWaiter模塊,Left Button Down Received(鼠標(biāo)左鍵按下狀態(tài))連接Keep Active的in端口,表示當(dāng)鼠標(biāo)按下時觸發(fā)Keep Active模塊,使得KeepActive后面的模塊一直處于運(yùn)行狀態(tài),Left ButonUp Received(鼠標(biāo)左鍵彈起狀態(tài))連接Keep Ac.tive的Reset端口,表示當(dāng)鼠標(biāo)左鍵彈起的時候,關(guān)閉KeepActive后面的程序。
圖4 鼠標(biāo)拾取與定位
鼠標(biāo)拾取零部件物體在三維空間的定位程序如圖4所示,其中主要運(yùn)用了Get Mouse Dis.placement程序模塊,該模塊主要用于獲取鼠標(biāo)相對運(yùn)動的位移屬性,其中X和Y的兩個參數(shù)輸出表示鼠標(biāo)在x軸向和Y軸向的相對位移值,由于X、Y的輸出值為整型(Integer),精度不夠且數(shù)值的大小也不符合要求, 因此需要對其進(jìn)行實時數(shù)值轉(zhuǎn)換,運(yùn)算方法為將其除以“.100”并轉(zhuǎn)換為浮點型(float)。
在場景中創(chuàng)建一虛擬體用于輔助定位零部件的空間位置和朝向,將Get Mouse Displacement的X、Y 值除以“一100”得到的浮點數(shù)值實時賦給虛擬體的x軸和Y軸,然后將虛擬體的位移信息傳遞給拾取(2D Picking)的零部件物體。
最后為了使虛擬體永遠(yuǎn)朝向攝像機(jī)方向,在虛擬體物體上創(chuàng)建腳本,并添加Billboard程序模塊,將模塊的輸出端口out接入輸入端口iIl,使其一直處于開啟狀態(tài)。
(7).用tese模塊檢測兩零部件之間的距離,若“A”零件與‘‘A Rename”零件之間的距離小于某一固定值(如20), 即將‘‘A”零件move to 至“A Renam e”零件,這樣便完成了“A”零件的裝配設(shè)計,同理對其他零部件進(jìn)行相同的設(shè)置,這其中可以通過群組(Group Iterator)來進(jìn)行批量處理。
(8).將以上環(huán)境移植到CAVE洞穴式虛擬現(xiàn)實環(huán)境中,配上力反饋裝置和數(shù)據(jù)手套,可實現(xiàn)具有自主性、沉浸感、交互性、身臨其境的裝配體驗,如圖5、圖6所示。
圖5 操作演示1
圖6 操作演示2
4 結(jié)束語
虛擬現(xiàn)實技術(shù)是充分發(fā)揮創(chuàng)造力的科學(xué),為人類的智能擴(kuò)展提供了強(qiáng)有力的手段 對生產(chǎn)方式和社會生活將產(chǎn)生巨大的影響。虛擬制造是虛擬現(xiàn)實技術(shù)在制造領(lǐng)域的重要應(yīng)用,是一種超越時空觀念的新的制造哲理和模式。產(chǎn)品的虛擬裝配仿真是虛擬制造研究的重要內(nèi)容。
參考文獻(xiàn)
[1] 廣瀨通孝.假想工場一, 一于 JL,·7 7.夕IJ,計測己制御,1995年第7號
[2] 廣瀨通孝., 一手 L,·IJ 7-lJ于 應(yīng)用戰(zhàn)略,才一厶社,1992
[3] J.R.Ggalvao,etc.Production and Teaching by Vir—tual Environment,Proc.Of ICAT’97,Dec.,1 997
[4] N.Abe,etc.Verification of Assemblability of江EC}L NICAL Parts and Visualization of Machin.ery of Assembly in Virtual Space, Proc. ofICAT’97,Dec.,1 997
[5] N.Abe,etc.,A Training SYSTEM Detecting Novice’SE~oneous Operation in Repairing Virtual Machines,Proc.of ICAT’97,Dec.,1997