堯 燕
(深圳職業技術學院 機電工程學院,廣東 深圳 518055)
虛擬裝配技術是虛擬現實技術在現代先進設計與制造領域的重要應用之一,它在縮短產品開發周期、降低設計成本等方面有著重要的意義.與傳統的裝配相比,虛擬裝配不需要生成出樣品,直接采用虛擬產品模型在虛擬的環境中通過數據手套或者計算機程序語言控制,在可視化的環境中完成裝配操作.
現代常用的 CAD軟件在提供了完美的設計平臺后也提供了較好的裝配平臺.但是其裝配平臺只局限于該設計平臺內可用,無法實現通用性,更無法生成網絡通用的格式,無法實現無界瀏覽和虛擬裝配操作.VRML技術是一種用于建立真實世界的場景模型或人們虛構的三維世界的場景建模語言,具有平臺無關性,它面向網絡,提供了較好的面向對象的編程技術,是一種較好的虛擬裝配解決方案[1].本研究基于VRML技術,建立了一個基于網絡的虛擬裝配仿真平臺.
VRML(Virtual Reality Modeling Language)是一種應用于互聯網、面向對象的解釋型三維造型語言.隨著硬件技術和 Internet技術的飛速發展,以及 3D技術的日益成熟,人們迫切需要通過網絡進行數據共享和數據發布[2].VRML描述的三維圖形能被標準瀏覽器接受,因而被廣泛的應用于網絡以及與平臺無關的虛擬現實中.VRML的訪問方式是基于客戶/服務器模式,其中服務器提供VRML文件及其他客戶希望通過網絡訪問的文件,客戶端瀏覽器負責解釋VRML文件并渲染生成可視化場景,大部分計算在客戶端實現,減少了服務器的壓力.
VRML把虛擬的世界看成一個場景,用節點(Node)描述構成場景的每一個對象,如幾何模型、光源、聲音等,節點的屬性用域來描述,用文本方式對每一個節點對象進行描述并通過節點間的層層嵌套就構成了一個VRML文件[3].同時,VRML支持Java和Java Applet擴展,利用其提供的Script腳本功能可以實現較強的功能和交互性,為虛擬裝配提供了較好的基礎.
基于VRML的虛擬裝配流程,一般為:①生成裝配用模型,可以采用VRML的節點編輯技術編輯生成;②對單個模型組裝結合成為大型場景.由于場景中模型較多,一般需要對其進行壓縮和優化;③對模型可能的運動進行分析,對每種可能的運動方式進行編程控制;④發布裝配平臺,進行虛擬裝配.如圖1所示.

圖1 VRML虛擬裝配的一般流程
用VRML編輯器如VrmlPad可以生成立體模型,但是對于較復雜的形體,這種方法效果不太理想.本研究采用由三維建模軟件建模后然后通過數據轉換,得到VRML格式的模型[4].圖2為本虛擬裝配系統采用SolidWorks軟件建模后,采用另存為VRML97格式后的齒輪泵泵體.

圖2 VRML格式的泵體
各個模型建立后,可以建立齒輪泵裝配的場景.但是由于齒輪泵各個模型間的位置關系是相對固定的,所以,建立場景之前最好在SolidWorks軟件中建立齒輪泵的裝配體,然后隱藏其它所有零件,先依次輸出單個零件的VRML模型,然后在編輯器VrmlPad中采用inline語句建立齒輪泵裝配場景.其部分代碼如下:

對于齒輪泵可以設泵體為不運動體,其它模型都相對于它運動.經過分析,裝配過程應該為左右2個方向可以同時拆裝.拆卸左側依次為:壓蓋螺母→填料壓蓋→填料;右側依次為:螺釘→泵蓋→紙墊圈→小齒輪→齒輪軸→平鍵.裝配順序反之.為了簡化控制,螺母螺釘等旋轉前進的模型簡化成為直線運動[5].為此,在 VrmlPad中添加動畫時鐘和平移路徑的控制代碼:

虛擬裝配平臺通過場景建立和運動控制編程后,可以網絡發布.由于采用的是B/S架構,只需要把設計好的平臺在服務器端配置好,用戶就可以在客戶端使用.用戶在瀏覽器中打開對應網頁,其相應模型數據和控制的Java代碼就傳送到客戶端,對用戶的仿真操作由客戶端程序控制.
對齒輪泵仿真平臺的運用,主要可以仿真其裝配過程和拆卸過程,同時可以仿真其工作時的動態過程.用鼠標,用戶可以在客戶端按照順序拖動模型,實現裝配或拆卸動作.拖動的順序不對即裝配順序不合理,就無法拖動模型,和實際相符合.也可以單擊模型,讓模型繞Z軸旋轉,充分觀察模型;雙擊模型,讓模型繞其工作軸或者工作孔旋轉,仿真其工作過程.圖3為發布后的齒輪泵仿真平臺拆卸操作后的效果.

圖3 虛擬裝配平臺虛擬拆卸后的齒輪泵
[1] 趙利清,王樹棟.基于VRML的虛擬園林設計要素構建[J].中國農學通報,2011(4):248-250.
[2] 謝杰,姬曉輝.VRML技術及應用[J].洛陽工業高等專科學校學報,2006(3):28-29.
[3] 孫俊峰,游運華,盧潔,等.基于VRML的心理學虛擬實驗設計與實現[J].計算機仿真,2006(4):283-285.
[4] 鄧新農.關于3Dmax中的VRML運用的探討[J].職業技術,2010(5):43-44.
[5] 袁鋒偉,李必文,何彬.基于SolidWorks-VRML實現虛擬現實的精確建模[J].機電工程,2007(10):103-105.