卿笛
摘要:隨著科技的發(fā)展,工業(yè)機(jī)器人已廣泛應(yīng)用在搬運(yùn)、激光切割、裝配等領(lǐng)域,本文主要利用仿真軟件RoboDK,設(shè)計(jì)工業(yè)機(jī)器人復(fù)雜搬運(yùn)的仿真工作站,完成機(jī)器人工作站的離線編程和仿真,對(duì)搬運(yùn)機(jī)器人在工業(yè)自動(dòng)化生產(chǎn)線中提高生產(chǎn)效率提供理論依據(jù)。
關(guān)鍵詞:工業(yè)機(jī)器人;RoboDK;離線編程;搬運(yùn)工作站
0? 引言
在工業(yè)機(jī)器人應(yīng)用中,ABB工業(yè)機(jī)器人在搬運(yùn)應(yīng)用方面有諸多案例,在醫(yī)藥、食品、機(jī)械制造、化工等領(lǐng)域均有廣泛的應(yīng)用。采用機(jī)器人搬運(yùn)可以大幅度節(jié)省勞動(dòng)力成本、提高定位精度、降低搬運(yùn)過程中的產(chǎn)品損壞率、提高生產(chǎn)效率。
1? RoboDK離線編程與仿真
隨著機(jī)器人行業(yè)的發(fā)展,國(guó)內(nèi)也推出了具有自主知識(shí)產(chǎn)權(quán)的通用型離線編程軟件,RoboDK是江蘇匯博公司推出的自主品牌離線編程軟件,是一個(gè)多平臺(tái)的機(jī)器人離線編程軟件,同時(shí)也是一款機(jī)器人手操器對(duì)機(jī)器人本體進(jìn)行模擬操作的虛擬仿真軟件。RoboDK支持ABB、KUKA、FANUC、安川等多種品牌機(jī)器人的離線仿真,RoboDK具有可擴(kuò)展機(jī)器人關(guān)節(jié)的外部軸模型和不同品牌的機(jī)器人工具模型。它包含加載文件、開放的在線圖書館、保存的電臺(tái)、添加一個(gè)參考框架、添加機(jī)器人目標(biāo)、移動(dòng)幀/對(duì)象/工具、移動(dòng)框架,對(duì)象工具、轉(zhuǎn)開/關(guān)的碰撞檢查、碰撞映射設(shè)置、快速仿真、添加一個(gè)Python腳本(宏)、添加一個(gè)新的機(jī)器人程序、添加一個(gè)機(jī)器人運(yùn)動(dòng)、使站可分發(fā)各種文件等菜單項(xiàng),讓學(xué)生迅速掌握機(jī)器人的基本操作、機(jī)器人坐標(biāo)系轉(zhuǎn)換、機(jī)器人運(yùn)動(dòng)學(xué)、機(jī)器人的控制等基本操作知識(shí)。
RoboDK軟件的主要功能:
①RoboDK的機(jī)器人模型庫(kù);
②離線編程;
③逼真的仿真效果;
④導(dǎo)入導(dǎo)出機(jī)器人程序;
⑤Python API;
⑥支持多平臺(tái);
⑦支持多品牌機(jī)器人。
2? 創(chuàng)建機(jī)器人搬運(yùn)工作站
根據(jù)實(shí)際生產(chǎn)場(chǎng)景,在UG軟件中建立基礎(chǔ)模塊,導(dǎo)入RoboDK軟件中,導(dǎo)入工作站模型:工作臺(tái)stp.和搬運(yùn)模塊stp.,根據(jù)機(jī)器人載荷、工作環(huán)境、安全防護(hù)等方面的具體要求,選定機(jī)器人的型號(hào),本次項(xiàng)目任務(wù)使用的機(jī)器人為IRB120,導(dǎo)入機(jī)器人模型ABB-IRB-120-3-0-6.robot,并安裝在機(jī)器人底座上,導(dǎo)入工具模型(吸盤工具stp.),導(dǎo)入在UG軟件中建立的工件模塊(紅色工件、藍(lán)色工件、黃色工件、端蓋),并布局,布局位置如表1所示。創(chuàng)建完成機(jī)器人搬運(yùn)工作站。(圖 1)
3? 搬運(yùn)流程設(shè)計(jì)
整個(gè)搬運(yùn)流程如圖2和圖3所示,先將紅色工件從初始位置搬運(yùn)至搬運(yùn)位置,然后完成藍(lán)色工件和黃色工件的搬運(yùn),最后將端蓋蓋上,即完成搬運(yùn)流程。
在搬運(yùn)之前先對(duì)基本信息進(jìn)行設(shè)置:將機(jī)器人回到初始位置,設(shè)置為Phome點(diǎn),新建Program程序,命名“紅色工件搬運(yùn)程序”,依次建立“藍(lán)色工件搬運(yùn)程序”、“黃色工件搬運(yùn)程序”、“端蓋工件搬運(yùn)程序”,添加指令Simulation Event,同時(shí)選中四個(gè)工件,設(shè)置四個(gè)工件的初始位置-“替換物體”。添加設(shè)置工具與工件坐標(biāo)系的指令,工件坐標(biāo)系為機(jī)器人基坐標(biāo)系,工具坐標(biāo)系為吸盤工具。添加機(jī)器人速度指令,設(shè)置機(jī)器人搬運(yùn)速度,線性速度設(shè)置為20,關(guān)節(jié)速度設(shè)置為20。
基礎(chǔ)設(shè)置完成,進(jìn)行搬運(yùn)操作。示教紅色工件抓取上方的目標(biāo)點(diǎn)[153,-80,75,180,0,180],然后添加機(jī)器人移動(dòng)到該點(diǎn)的指令,示教紅色工件抓取目標(biāo)點(diǎn)[153,-80,25,180,
0,180],然后添加機(jī)器人移動(dòng)到該點(diǎn)的指令,當(dāng)機(jī)器人工具吸盤到達(dá)紅色工件抓取點(diǎn)時(shí),雙擊添加指令“附加到吸盤工具”,執(zhí)行該指令,機(jī)器人抓取工件,隨后機(jī)器人返回抓取點(diǎn)上方,添加機(jī)器人移動(dòng)到紅色工件放置上方點(diǎn)[97,-87,95,180,0,180]和放置點(diǎn)[97,-87,45,180,0,180]的指令,雙擊添加指令“分離與吸盤工具”,執(zhí)行該指令,機(jī)器人放置工件,機(jī)器人返回紅色放置點(diǎn)上方點(diǎn),至此完成紅色工件的搬運(yùn)過程。(圖4)
按照這種方法,依次搬運(yùn)藍(lán)色、黃色、端蓋工件。藍(lán)色工件抓取上方點(diǎn)[153,-132,75,180,0,180],藍(lán)色工件抓取點(diǎn)[153,-132,25,180,0,180],藍(lán)色工件放置上方點(diǎn)[97,-118,95,180,0,180],藍(lán)色工件放置點(diǎn)[97,-118,95,180,0,
180];黃色工件抓取上方點(diǎn)[153,-201.5,75,180,0,180],黃色工件抓取點(diǎn)[153,-201.5,25,180,0,180],黃色工件放置上方點(diǎn)[66,-101,95,180,0,180],黃色工件放置點(diǎn)[66,-101,
45,180,0,180];端蓋工件抓取上方點(diǎn)[82,-198,89,180,0,
180],端蓋工件抓取點(diǎn)[82,-198,39,180,0,180],端蓋工件放置上方點(diǎn)[82,-102,113,180,0,180],端蓋工件放置點(diǎn)[82,-102,63,180,0,180],參考坐標(biāo)系都為搬運(yùn)坐標(biāo)系。
4? 搬運(yùn)程序示教
①偏移量OFF:抓取上方點(diǎn)是相對(duì)于抓取點(diǎn)的Z軸方向的偏移點(diǎn),放置上方點(diǎn)是相對(duì)于放置點(diǎn)的上方Z軸方向偏移點(diǎn),固可以采用偏移OFF功能完成,其他數(shù)據(jù)不變,Z軸沿正方形偏移50的量。
②配置軸參數(shù)。目標(biāo)點(diǎn)路徑驗(yàn)證完成后,需要對(duì)關(guān)節(jié)軸的參數(shù)進(jìn)行配置,右擊路徑,選擇下拉菜單“配置參數(shù)”下的“自動(dòng)配置”,機(jī)器人會(huì)沿著創(chuàng)建的搬運(yùn)的路徑運(yùn)動(dòng)一個(gè)循環(huán)完成周參數(shù)的自動(dòng)配置。完成配置,使得搬運(yùn)過程中無(wú)機(jī)器人運(yùn)動(dòng)死點(diǎn)位置即可。
③指令添加。1)添加指令-運(yùn)動(dòng)指令。Move Joint Instruction(機(jī)器人關(guān)節(jié)運(yùn)動(dòng)指令Move J)和Move Linear Instruction(機(jī)器人直線運(yùn)動(dòng)指令Move L)。例如:搬運(yùn)一個(gè)紅色工件時(shí),添加4個(gè)目標(biāo)點(diǎn),分別設(shè)置為紅色工件的(預(yù))抓取點(diǎn)和(預(yù))放置點(diǎn),添加指令“move joint”,關(guān)聯(lián)至“red_pick_app”,添加指令“move linear”,關(guān)聯(lián)至“red_pick”;2)指令添加-抓取動(dòng)作。添加抓取工件動(dòng)作指令:“simulation event”,選擇“Attach object”;3)指令添加-等待。添加等待語(yǔ)句,等待0.2s指令:“pause”;4)指令添加-放置動(dòng)作。添加釋放工件動(dòng)作指令:“simulation event”,選擇“detach object”,選擇放置位置。
④完成搬運(yùn)-裝配流程,最后利用Python編寫仿真程序,生成機(jī)器人搬運(yùn)裝配程序。在該復(fù)雜搬運(yùn)工作站中,采用循環(huán)語(yǔ)句,由于抓取上方點(diǎn)、抓取點(diǎn)、放置上方點(diǎn),和放置點(diǎn)相的參考坐標(biāo)系都是一樣的,在利用Python進(jìn)行編程的過程,利用偏移量,只需讀取工件的抓取位置。
5? 程序后處理
①軌跡可達(dá)性檢測(cè)。右擊Training,選擇“Check path”,當(dāng)出現(xiàn)“No problems found for this path”,即可說明可達(dá)性完成。
②運(yùn)行程序,并進(jìn)行碰撞檢測(cè)。在單元格中雙擊,切換是否檢測(cè)該項(xiàng)兩物體間的碰撞,開啟碰撞檢測(cè),如有碰撞,兩個(gè)碰撞對(duì)象的顏色會(huì)變成深紅色。
③生產(chǎn)離線程序。右擊主程序,生成離線程序。在“RAPID”功能選項(xiàng)卡,單擊“程序”,選擇“新建模塊”,創(chuàng)建MainMoudle模塊,即可生成、創(chuàng)建搬運(yùn)仿真離線程序。
④生產(chǎn)仿真視頻。為了便于展示創(chuàng)建的工作站,RoboDK提供了仿真視頻和仿真視圖錄制功能,為確保錄制視頻的質(zhì)量,錄制前可以設(shè)置屏幕錄像的相關(guān)參數(shù)與保存路徑。在“仿真”功能選項(xiàng)卡中,可生成仿真視頻。
6? 結(jié)束語(yǔ)
利用RoboDK離線編程方法,建立復(fù)雜的搬運(yùn)仿真工作站,完成機(jī)器人工作站的離線編程和仿真,降低了重復(fù)性操作,充分體現(xiàn)了離線編程的優(yōu)勢(shì),對(duì)搬運(yùn)機(jī)器人在工業(yè)自動(dòng)化生產(chǎn)線中提高生產(chǎn)效率提供理論依據(jù)。
參考文獻(xiàn):
[1]李慧.基于RoboDK的工業(yè)機(jī)器人搬運(yùn)工作站仿真設(shè)計(jì)[J].自動(dòng)化應(yīng)用,2020(06):76-79.
[2]李慧.基于RoboDK的工業(yè)機(jī)器人搬運(yùn)工作站設(shè)計(jì)與仿真[J].工程機(jī)械文摘,2020(04):6-9.
[3]白蕾,侯偉,張小潔.基于RobotStudio的機(jī)器人搬運(yùn)工作站設(shè)計(jì)與仿真[J].國(guó)外電子測(cè)量技術(shù),2018,37(06):114-118.
[4]唐靜.基于Roboguide的搬運(yùn)機(jī)器人離線編程與運(yùn)動(dòng)仿真[J].常州信息職業(yè)技術(shù)學(xué)院學(xué)報(bào),2018,17(02):41-43.
[5]方偉.工業(yè)機(jī)器人離線編程與仿真軟件開發(fā)[D].武漢:華中科技大學(xué),2019.