張廣祥
(蕪湖職業(yè)技術(shù)學(xué)院,安徽 蕪湖 241000)
隨著科技的發(fā)展和進(jìn)步,計算機(jī)虛擬仿真技術(shù)得到了飛躍的提升,成為剖析、探究和處理各種復(fù)雜系統(tǒng)的重要工具,將虛擬現(xiàn)實技術(shù)與仿真技術(shù)結(jié)合的課題也是近些年的研究熱點[1]。使新產(chǎn)品的開發(fā)向著數(shù)字化的方向發(fā)展,能縮短新產(chǎn)品開發(fā)的周期,且降低生產(chǎn)成本。隨著這種技術(shù)的完善與計算機(jī)的開發(fā),將會使得制造業(yè)產(chǎn)生巨大的變化[2]。在“中國制造2025”行動綱領(lǐng)的大背景下,對工業(yè)機(jī)器人的推廣應(yīng)用,對促進(jìn)我國制造業(yè)的發(fā)展有著非常重要的意義[3]。
由于在ROBOGUIDE 環(huán)境中只有準(zhǔn)確布局,才能正確地建立虛擬仿真環(huán)境,才可以作為離線編程的依據(jù),因此在進(jìn)行離線編程之前,先要將虛擬仿真環(huán)境中的布局規(guī)劃完成。
關(guān)于周邊設(shè)備的布局,數(shù)控機(jī)床、上料架、下料架都必須在工業(yè)機(jī)器人的工作范圍之內(nèi),而工業(yè)機(jī)器人的控制柜則要安放在工業(yè)機(jī)器人的工作范圍之外,保證工業(yè)機(jī)器人能夠準(zhǔn)確無誤地執(zhí)行抓取放置零件的程序,確保工業(yè)機(jī)器人在失控或者突發(fā)狀況時能夠及時關(guān)閉[4]。打開數(shù)控機(jī)床門放在工業(yè)機(jī)器人的正前方或其他方向,以這個方向為正方向,將上料架、下料架分別放在工業(yè)機(jī)器人的兩邊,確定工業(yè)機(jī)器人的右邊是上料架,左邊是下料架,放置完成之后,檢測工業(yè)機(jī)器人運(yùn)動范圍是否在工作范圍之內(nèi)。為了確保工業(yè)機(jī)器人運(yùn)行安全,在工業(yè)機(jī)器人、數(shù)控機(jī)床、上料架、下料架周圍,布置圍欄,僅在上料架、下料架的兩側(cè)各留一個空隙,方便上料和下料,若是后續(xù)還有工序則可以在兩側(cè)接入傳送帶以完成更多的功能,將控制柜放在圍欄的外面。
按照順序,工業(yè)機(jī)器人依次將毛坯件抓取放置、加工,再將成品件抓取放置,此時完成一次搬運(yùn)。由于在九宮格內(nèi)零件的位置各不相同,如果每一個點都要進(jìn)行一次記錄的話,就會占用大量的時間,為了抓取方便,規(guī)劃運(yùn)行軌跡時,分別在上料架、下料架設(shè)置3 個過渡點,每一行共用一個過渡點,工業(yè)機(jī)器人抓取下一個零件時,只要在y 軸方向上加100 mm 便可。
抓取的裝置是手爪而不是吸盤,盛放零件的裝置是一塊有孔的平面板。手爪抓取零件時必須從靠近它的這邊開始抓起。抓取零件時手爪水平抓取,零件在上料架上是呈九宮格狀擺放。手爪平行夾取毛坯件時會受到零件的阻礙,因此只能從最外側(cè)開始抓起。而放置成品件時則不同,一開始的下料架上是沒有零件的,放置零件時要放在遠(yuǎn)離工業(yè)機(jī)器人的那一邊,這樣在放置下一個成品件時才不會擋在它的運(yùn)行軌跡上。其中每一行重新設(shè)定一個過渡點,放置成品件完成之后不用回到成品件的零點,直接從相應(yīng)的每一行過渡點處直接回到數(shù)控機(jī)床零點即可。工業(yè)機(jī)器人運(yùn)行軌跡見圖1。
圖1 工業(yè)機(jī)器人運(yùn)行軌跡
毛坯件按照順序單層放置在九宮格內(nèi),可抓取毛坯件時,可直接調(diào)用系統(tǒng)內(nèi)置的碼垛和拆垛指令編程,進(jìn)行零件的抓取,同時優(yōu)化工業(yè)機(jī)器人移動的速度和手爪的位姿。并在示教器面板上根據(jù)實際需要設(shè)計工業(yè)機(jī)器人運(yùn)行速度,分別設(shè)置與數(shù)控機(jī)床、毛坯件、成品件3 個方向的零點。
工業(yè)機(jī)器人抓取毛坯件并送入數(shù)控機(jī)床加工的過程如下:工業(yè)機(jī)器人從零點出發(fā),經(jīng)過過渡點1,調(diào)整工業(yè)機(jī)器人手爪位姿,抓取零件1-1,將零件抓取到數(shù)控機(jī)床前。編程后在示教器上試運(yùn)行。
在已編寫的工業(yè)機(jī)器人運(yùn)行程序中沒有關(guān)于數(shù)控機(jī)床的自動加工程序,為了使程序更加完整,對輸入/輸出(I/O)端口的指令在示教器上進(jìn)行設(shè)定,即在示教器上進(jìn)行I/O 端口設(shè)置。其中設(shè)置了數(shù)控機(jī)床的自動開關(guān)門與自動工作,完成工作之后通過I/O 端口通信反饋給工業(yè)機(jī)器人,工業(yè)機(jī)器人繼續(xù)執(zhí)行程序。手爪的開合、夾取、放置由事先編輯好的子程序代替,根據(jù)要加工零件的自身特點,需要進(jìn)行兩次加工,可分為第一次加工和第二次加工。
工業(yè)機(jī)器人將毛坯件裝配到三爪卡盤,退出數(shù)控機(jī)床門外等待,第一次加工完成后,取出再裝入三爪卡盤進(jìn)行第二次加工,完成之后將成品件取出回到數(shù)控機(jī)床零點。
在數(shù)控機(jī)床工作完成之后,接下來就需要將成品件放置在下料架上,工業(yè)機(jī)器人手爪經(jīng)過放置過渡點,按照事先規(guī)劃好的運(yùn)行軌跡,成品件放置在下料架上的第一個位置,程序編輯為
J P[10]100% FINE 零點(成品件)
J P[11]100% FINE 成品件放置過渡點1
J P[12]1000mm/sec FINE 成品件放置接近點
J P[13]1000mm/sec FINE 成品件放置點
CALL PLACE 成1-1 調(diào)用放置成品件1-1的子程序
L P[12]1000mm/sec FINE 回到放置接近點
L P[11]1000mm/sec FINE 回到放置過渡點1
J P[1]100% FINE 零點(數(shù)控機(jī)床)
上述程序就是放置成品件的程序。數(shù)控機(jī)床加工完成之后,將成品件取出,回到數(shù)控機(jī)床零點過程同抓取毛坯件過程相似,唯一不同的是放置零件從遠(yuǎn)離工業(yè)機(jī)器人的那一邊開始放置,每一行設(shè)置一個過渡點,經(jīng)過過渡點進(jìn)行放置。
通過毛坯件加工完成并放置完成的實驗過程,便于進(jìn)行位置的修改,由于上料架和下料架的基本尺寸是一樣的,與此同時每一個零件的擺放間隙都是100 mm,因此這是需要注意并利用的。把抓取過渡點、抓取接近點、抓取點、放置過渡點、放置接近點、放置點進(jìn)行編輯[5],根據(jù)坐標(biāo)系的方向增加或減去100 mm,就完成了整個數(shù)控機(jī)床自動上料和下料的離線編程。
仿真要實現(xiàn)毛坯件抓取加工成為成品件,并能放置整齊的生產(chǎn)過程。工業(yè)機(jī)器人先從數(shù)控機(jī)床零點運(yùn)行到毛坯件零點,再到毛坯件第一列抓取過渡點,在抓取點抓取第一個工件,原路返回到達(dá)數(shù)控機(jī)床零點,等待2 s,數(shù)控機(jī)床門打開,將毛坯件送進(jìn)數(shù)控機(jī)床內(nèi)部,用三爪卡盤夾緊。工業(yè)機(jī)器人手爪退回到數(shù)控機(jī)床零點,關(guān)閉數(shù)控機(jī)床門。等待數(shù)控機(jī)床加工完成,數(shù)控機(jī)床門打開,將半成品件夾出,回到數(shù)控機(jī)床零點,調(diào)整工業(yè)機(jī)器人手爪六軸改變位姿,再次將零件裝夾,加工零件另一端,加工完成之后,數(shù)控機(jī)床門打開,手爪將成品件夾出,運(yùn)行到放置成品件零點,依次經(jīng)過過渡點、接近點,到達(dá)放置第一件成品件的位置,再返回到成品件零點。
工業(yè)機(jī)器人按照事先規(guī)劃好的運(yùn)行軌跡執(zhí)行?;氐矫骷泓c,經(jīng)過過渡點,依次將第一行的毛坯件抓取加工,再放置在下料架上,當(dāng)?shù)谝恍械拿骷ト⊥曛螅I(yè)機(jī)器人運(yùn)行到過渡點2,再依次抓取第二行的毛坯件,第三行的毛坯件同樣操作。將毛坯件送入數(shù)控機(jī)床加工完成之后,分別經(jīng)過放置成品件過渡點,每一行都有一個同樣的過渡點,每放置3 個就更換一個過渡點,直到上料架上所有的零件都加工完畢。
在ROBOGUIDE 軟件中要實現(xiàn)仿真,首先要將虛擬環(huán)境中所需要的模型正確導(dǎo)入,并且進(jìn)行準(zhǔn)確布局,規(guī)劃好程序的執(zhí)行內(nèi)容,并規(guī)劃好零件裝夾的順序。在示教器上對所有的零件都編輯程序完成之后,可以在示教器面板上移動光標(biāo),移動到操作者想要程序開始的地方,按照既定程序開始運(yùn)行。若是在運(yùn)行途中出現(xiàn)停止,或者位置找得不對,則可以立即停止,并在示教器面板上按照實際操作中運(yùn)行的步驟,進(jìn)行程序段的刪除修改,或者對位置點的數(shù)據(jù)重新進(jìn)行修改。這樣編寫一段程序,就可以快速地校驗該段程序。
在每一段程序編寫完成并校驗之后,還需要進(jìn)行整體程序的校驗,確保在程序的運(yùn)行過程中不會出現(xiàn)問題。在ROBOGUIDE 菜單欄中點擊“Test-Run”,在其中選擇“Run Panel”,在出現(xiàn)的運(yùn)行面板中,可以調(diào)整同步時間(synchronize time)和進(jìn)行AVI 設(shè)置,還可以設(shè)置畫面的大小,設(shè)置完成后,點擊“record”,整個程序開始運(yùn)作并記錄。在“Cell Browser”找到“Profiles”,其中可以看見該程序的所有配置文件。
嚴(yán)格按照上述步驟進(jìn)行系統(tǒng)設(shè)定,選擇正確的工業(yè)機(jī)器人,導(dǎo)入虛擬工廠中所需要的數(shù)控機(jī)床、控制柜、上料架、下料架、毛坯件、成品件、圍欄。通過位置修改或者直接拖動坐標(biāo)系進(jìn)行虛擬工廠中初步的布局,根據(jù)生產(chǎn)加工的需要,擬定加工順序,規(guī)劃運(yùn)行軌跡,準(zhǔn)確地進(jìn)行工廠的規(guī)劃布局。編輯整體的運(yùn)行程序,在程序編輯完成之后,進(jìn)行仿真。在ROBOGUIDE 虛擬環(huán)境中已經(jīng)布局完成的虛擬工廠,其中工業(yè)機(jī)器人編輯的程序能夠流暢地運(yùn)行,驗證了整體的規(guī)劃布局是合理可行的。圖2 為系統(tǒng)仿真運(yùn)行圖。
圖2 系統(tǒng)仿真運(yùn)行圖
建立數(shù)控機(jī)床自動上料和下料虛擬環(huán)境過程中,可以清楚地體現(xiàn)出虛擬仿真的便捷性和必要性,它使得生產(chǎn)制造變得更加高效。而虛擬仿真則有助于將問題表達(dá)清楚,通過建立模型再現(xiàn)當(dāng)時的環(huán)境,可以讓人更加直觀形象地了解問題的本質(zhì);在虛擬仿真環(huán)境中可以任意地拖動或修改模型,來豐富完善虛擬模型;當(dāng)模型建立完畢,則可以在虛擬仿真環(huán)境中規(guī)劃各種技術(shù)路線,得到最優(yōu)技術(shù)路線,避免在實際操作中出現(xiàn)無法攻克的技術(shù)難題。