文懷興,岳瑞芳,杜晨振
(陜西科技大學(xué) 機(jī)電工程學(xué)院,西安 710021)
隨著現(xiàn)代工業(yè)的發(fā)展,工業(yè)機(jī)器人在工業(yè)生產(chǎn)中所占的比重越來越大。但由于我國工業(yè)機(jī)器人起步較晚,生產(chǎn)比較落后。傳統(tǒng)的裝配生產(chǎn)方式是將各個零部件加工出來以后進(jìn)行實(shí)體裝配,就有可能出現(xiàn)裝配尺寸不合適,裝配序列出錯等問題,不僅會延長生產(chǎn)周期,還會造成原材料的浪費(fèi)等諸多問題[1]。而虛擬裝配的出現(xiàn)在一定程度上彌補(bǔ)了傳統(tǒng)裝配方式的不足。目前國內(nèi)外關(guān)于虛擬裝配方面的研究比較多,但大多專業(yè)性比較強(qiáng),使用者不容易上手。本文在充分研究、比較國內(nèi)外虛擬裝配技術(shù)的研究現(xiàn)狀后,研發(fā)了以EON Studio為基礎(chǔ)的虛擬現(xiàn)實(shí)裝配系統(tǒng),不僅可以解決傳統(tǒng)裝配中遇到的問題,而且操作簡單易學(xué)。
虛擬現(xiàn)實(shí)技術(shù)是以計算機(jī)技術(shù)為基礎(chǔ)的一種新型的技術(shù),它通過計算機(jī)以及其相關(guān)的輔助設(shè)備鼠標(biāo)、鍵盤投影儀、數(shù)據(jù)手套、頭盔等讓使用者產(chǎn)生較高的真實(shí)感[2]。而虛擬裝配技術(shù)是虛擬現(xiàn)實(shí)技術(shù)的重要組成部分,主要包括面型裝配特征的建模技術(shù),裝配序列規(guī)劃,模型仿真技術(shù),碰撞檢測技術(shù)。虛擬裝配可以提前驗(yàn)證設(shè)計和裝配過程的合理性,以及記錄整個裝配路徑,生成裝配過程報告。
EON Studio是一個完全基于GUI的設(shè)計工具,可以輕松導(dǎo)入多種3D模型,模型導(dǎo)入后,可以通過EON直觀的圖形設(shè)計界面方便的為模型添加各種行為[3]。其應(yīng)用程序能夠以多種形式發(fā)布于網(wǎng)絡(luò),也可與其它支持微軟ActiveX控件的工具相結(jié)合。Solidworks具有強(qiáng)大的三維建模功能,易學(xué)易用,模型精確度高,本文通過三維建模軟件Solidworks對移動式四坐標(biāo)機(jī)器人進(jìn)行三維建模,然后將模型導(dǎo)入到虛擬現(xiàn)實(shí)軟件EON Studio中,對其進(jìn)行虛擬裝配、虛擬拆卸、碰撞檢測等研究,并通過Visual Basic完成系統(tǒng)界面的設(shè)置,完成虛擬裝配系統(tǒng)。本文主要技術(shù)路線如圖1所示。
圖1 技術(shù)路線圖
虛擬現(xiàn)實(shí)軟件EON Studio的三維建模功能不夠強(qiáng)大,所以需要先在三維建模軟件Solidworks中完成模型的建立?;邶堥T式機(jī)器人移動范圍小,和關(guān)節(jié)機(jī)器人承重能力小的缺點(diǎn),本文在三自由度直角坐標(biāo)機(jī)器人的基礎(chǔ)上,開發(fā)了移動式四坐標(biāo)直角機(jī)器人,然后在三維軟件Solidworks中完成建模,圖2是建立好的三維模型。
圖2 移動式四坐標(biāo)機(jī)器人的三維模型
由EON Studio直接導(dǎo)入Solidworks的裝配體會出現(xiàn)裝配關(guān)系混亂的問題,所以本文采用的是先將Solidworks中建立的三維模型導(dǎo)入到Deep Exploration中進(jìn)行文件格式的轉(zhuǎn)換,將文件保存成.wrl格式。然后再將文件導(dǎo)入到EON Studio中,首先在sence節(jié)點(diǎn)下添加Frame節(jié)點(diǎn),然后將模型導(dǎo)入到Frame節(jié)點(diǎn)下,選擇File菜單下的import下的VRML格式文件,圖3是導(dǎo)入后的模型界面。
圖3 EON Studio導(dǎo)入后的界面
通過拆裝過程,使用者通過人機(jī)交互的方式可以快速了解機(jī)器人的內(nèi)部結(jié)構(gòu)及其裝配關(guān)系。首先要進(jìn)行裝配的路徑規(guī)劃,裝配要根據(jù)其工業(yè)生產(chǎn)的實(shí)際裝配順序來進(jìn)行,不可出現(xiàn)碰撞、穿透等現(xiàn)象。本次裝配的順序是先將各功能組件進(jìn)行局部裝配,再將各個功能組件裝配成為整機(jī)。自動裝配模塊使用到的功能節(jié)點(diǎn)有2D Text節(jié)點(diǎn)、Place節(jié)點(diǎn)等。2D Text節(jié)點(diǎn)是文本控制節(jié)點(diǎn),通過編輯其屬性其右側(cè)的Property Bar可對其屬性進(jìn)行相關(guān)設(shè)置,編輯其文本內(nèi)容為“自動拆卸”,另外其還作為一個觸發(fā)節(jié)點(diǎn)。Place節(jié)點(diǎn)是移動節(jié)點(diǎn),其有6個方向的自由度,可分別繞X、Y、Z軸移動,繞H、P、R軸轉(zhuǎn)動,可根據(jù)實(shí)際需要設(shè)置其移動的距離、速度、轉(zhuǎn)動的角度等。設(shè)置好相關(guān)節(jié)點(diǎn)后,需要在Route:Simulation中進(jìn)行邏輯連接,將2D Text節(jié)點(diǎn)作為觸發(fā)節(jié)點(diǎn),按照零部件的裝配順序進(jìn)行邏輯連線。點(diǎn)擊自動裝配開始運(yùn)行,如圖4是電機(jī)的自動裝配過程的截圖。
圖4 電機(jī)自動裝配
手動裝配模塊可以快速讓使用者了解機(jī)器人的結(jié)構(gòu)和裝配過程,尤其對機(jī)械專業(yè)的學(xué)生來說,由于學(xué)生較多,實(shí)體設(shè)備又比較昂貴,手動裝配模塊可以有效解決這個問題,鍛煉學(xué)生的動手實(shí)踐能力。手動裝配模塊主要用到的功能節(jié)點(diǎn)有ClickSenser,用到的功能元件有DragSelecter、DragManager等。這些功能元件都是系統(tǒng)封裝好的一個個小程序,用戶可以直接使用。首先將DragSelecter節(jié)點(diǎn)放置在需要手動拆卸的零件節(jié)點(diǎn)下,再將需要拆卸的零件的節(jié)點(diǎn)關(guān)聯(lián)復(fù)制到DragSelecter下的DragNode文件夾下。然后將拖動管理元件DragManager放置在Camera節(jié)點(diǎn)下,再將DragManager關(guān)聯(lián)復(fù)制到DragSelecter下的DragManager文件夾下,最后需要一個傳感器節(jié)點(diǎn),將ClickSenser放在需要拖動的零件節(jié)點(diǎn)底下。最后需要進(jìn)行邏輯視窗的連接,將ClickSenser、DragSelecter拖動至邏輯視窗中進(jìn)行邏輯關(guān)系的連接。設(shè)置完成后,點(diǎn)擊運(yùn)行,當(dāng)鼠標(biāo)經(jīng)過需要手動拆卸的零件時,會變成小手的形狀,即可拖動零件進(jìn)行手動拆卸。如圖5是手動拆卸Z軸電機(jī)的過程圖。
圖5 手動裝配過程
為了避免零件在拆裝過程中出現(xiàn)碰撞及穿透現(xiàn)象,需要對零件裝配過程中可能出現(xiàn)碰撞的零件之間設(shè)置碰撞檢測功能。EON Studio的主要碰撞原理是包圍盒原理,其用到的主要功能節(jié)點(diǎn)是CollisionObeject。將CollisionObeject添加到需要碰撞檢測的零部件的節(jié)點(diǎn)下,并設(shè)置其屬性框,根據(jù)需要碰撞檢測的物體的形狀選擇相應(yīng)的包圍盒形狀。如圖6所示,是電機(jī)裝配過程的碰撞檢測。電機(jī)與電機(jī)支架被包圍盒包圍,當(dāng)兩個物體接觸之后,產(chǎn)生碰撞,零件就會停止運(yùn)動,不會出現(xiàn)穿透現(xiàn)象。
圖6 碰撞檢測
EON X是EON Studio自帶的一種控件,具有連接EON Studio與Visual Basic的橋梁功能[4]。通過Visual Basic中的“工程→部件→EON X”,將EON X加載到Visual Basic中。EON X加載完成后,需要將之前在EON Studio完成的虛擬拆裝文件添加到Visual Basic中,就完成了文件的加載。
為了保證系統(tǒng)的安全,以及用戶的隱私,防止不相關(guān)人員的錯誤操作導(dǎo)致系統(tǒng)出現(xiàn)故障,本文為虛擬拆裝系統(tǒng)設(shè)置了登錄界面,當(dāng)系統(tǒng)的使用中輸入正確的密碼,才可以登錄操作系統(tǒng),否則登錄失敗,如圖7所示。Visual Basic具有的編程功能可以實(shí)現(xiàn)登錄界面的設(shè)置,以下是設(shè)置登錄界面的部分代碼:
Private Sub Command1_Click()
If Text1(0) = "" And Text1(1) = "" Then
Form2.Hide
Form3.Show
Else
Form2.Hide
Form4.Show
End If
End Sub
圖7 系統(tǒng)登錄界面
登陸之后就進(jìn)入到系統(tǒng)的主界面,對系統(tǒng)的各項(xiàng)功能進(jìn)行操作。主界面的設(shè)置是整個系統(tǒng)的重要組成部分,主要用到VB應(yīng)用程序的控件、對話框、菜單,其中控件是構(gòu)成應(yīng)用程序窗體的最基本元素。控件是經(jīng)過封裝的特定程序單元,能簡化操作過程,實(shí)現(xiàn)特定的功能[5]。將控件添加至應(yīng)用窗口中,可以設(shè)置其大小、形狀、文本等屬性。主界面主要包括的操作功能有部件展示、操作說明、自動裝配、手動裝配、碰撞檢測五大部分。單擊各個按鈕就可以進(jìn)入各個模塊進(jìn)行操作。如圖8所示,是系統(tǒng)的主界面。
圖8 主界面
主登錄界面設(shè)置主要用到的部分編程代碼有:
Private Sub Command4_Click()
Form3.Hide
Form1.Show
End Sub
點(diǎn)擊主界面的各模塊按鈕,就會進(jìn)入各模塊的功能展示,在各功能的操作界面設(shè)置了模型加載、模型重載、返回等功能進(jìn)去后可點(diǎn)擊按鈕,進(jìn)行相關(guān)功能的展示,包括自動拆卸、手動裝配等功能。如圖9是操作界面的展示。操作界面需要用到的部分代碼有:
Private Sub Command1_Click()
Control21.Start
End Sub
Private Sub Command2_Click()
Form1.Hide
Form3.Show
Control21.Stop
End Sub
Private Sub Command3_Click()
Control21.Stop
Control21.Start
End Sub
圖9 功能操作界面
裝配技術(shù)是制造業(yè)的重要環(huán)節(jié)之一,虛擬裝配技術(shù)在制造業(yè)的應(yīng)用,給傳統(tǒng)制造業(yè)的發(fā)展提供一個新方向。研究發(fā)現(xiàn),EON Studio可以通過簡單的節(jié)點(diǎn)設(shè)置,進(jìn)行虛擬拆裝和碰撞檢測。通過VB集成EON Studio各功能模塊而研發(fā)的虛擬裝配系統(tǒng)可以有效解決目前工業(yè)生產(chǎn)中零件裝配不合理,裝配順序出錯等問題,極大地減少原材料的浪費(fèi),縮短生產(chǎn)周期,在產(chǎn)品裝配中有較大的應(yīng)用前景。