韓 華
(開封大學(xué) 機械與汽車工程學(xué)院,河南 開封 475004)
RobotStudio是ABB公司專門開發(fā)的一款工業(yè)機器人仿真軟件.在規(guī)劃與定義階段,即在實際構(gòu)建機器人系統(tǒng)之前,RobotStudio可實現(xiàn)機器人系統(tǒng)的設(shè)計和試運行[1].人們還可以利用該軟件,來確認機器人是否能到達所有編程位置,并計算解決方案的工作周期.通過必要的仿真進行論證,可優(yōu)化機器人工作站系統(tǒng)集成項目的設(shè)計[2].
本文利用RobotStudio這一仿真軟件來創(chuàng)建動畫效果,與機器人的動作配合,實現(xiàn)動態(tài)傳輸鏈及工業(yè)機器人碼垛工作站的仿真設(shè)計[3].即模擬企業(yè)生產(chǎn)中的這樣一個工作過程:由生產(chǎn)線上的傳送帶傳輸物料,物料到達指定位置后,傳送帶停止運行,機器人檢測到物料到達的信息后,進行物料的搬運和碼垛,完成工作.
動態(tài)傳送鏈的動畫仿真設(shè)計是利用RobotStudio中的Smart組件來實現(xiàn)的,利用Smart組件可以創(chuàng)建大量實用的動畫效果,如輸送鏈的運行,物料的拾取、放置,機械裝置的動作等.我們要展示的工作過程是:輸送鏈前端自動生成物料,生成的物料朝著傳送鏈傳輸?shù)姆较蜻\行,物料到達傳送鏈的末端后自動停止,并且發(fā)出產(chǎn)品到位信號.機器人拾取物料以后,傳送鏈前端自動生成下一個物料,開始下一次循環(huán)[4].
建立Smart組件,并創(chuàng)建子組件Source用于設(shè)定產(chǎn)品源.把需要碼垛的產(chǎn)品設(shè)置成產(chǎn)品源,每觸發(fā)Source執(zhí)行一次,就會生成一個碼垛產(chǎn)品的復(fù)制品.
建立子組件Queue,使新生成的物料加入隊伍.建立子組件LinearMover,設(shè)定運動屬性,如運動物體、運動方向、運動速度、參考坐標系等.選擇Queue為運動物體,運動方向為傳送帶運行方向.
在傳輸鏈末端,需要設(shè)置用于檢測物料是否到位的限位傳感器.可以設(shè)置在輸送鏈末端的擋板位置,將傳感器設(shè)定為面型傳感器(見圖1)。當(dāng)面?zhèn)鞲衅鳈z測到前方到位的產(chǎn)品時,會自動輸出一個信號,用于邏輯控制。此虛擬傳感器不能與周邊設(shè)備接觸,并且一次只能檢測一個物體??梢詫⑴c此面?zhèn)鞲衅鹘佑|的周邊設(shè)備的屬性設(shè)置為“不可由傳感器檢測”。
圖1 設(shè)置面?zhèn)鞲衅?/p>
建立屬性與連結(jié)是為了實現(xiàn)Smart各個子組件的某項屬性之間的連接.例如,在物料的到位信號與機器人拾取信號之間建立屬性鏈接,當(dāng)有到位信號輸出時,機器人拾取信號會立即被觸發(fā),機器人開始拾取工作.
這里,在子組件Source的Copy屬性與子組件Queue的Back屬性之間建立連結(jié),這樣,產(chǎn)品源每產(chǎn)生一個復(fù)制品,就會自動加入隊列Queue中,跟隨隊伍一起執(zhí)行線性運動.若執(zhí)行“退出隊列”操作,復(fù)制品就會退出隊列.退出隊列之后,該復(fù)制品就停止線性運動了.
建立IO信號即創(chuàng)建數(shù)字信號.要實現(xiàn)IO信號與各個Smart組件信息的交互.建立IO信號后,再設(shè)定IO信號與Smart子組件信號的連接關(guān)系、與各Smart子組件信號的連接關(guān)系.
添加一個數(shù)字信號diStart,用于啟動Smart輸送鏈;添加輸出信號doBox,用作產(chǎn)品到位輸出信號.建立連接時,用diStart去觸發(fā)Source執(zhí)行動作.當(dāng)輸送鏈啟動時,產(chǎn)品源會自動生成一個碼垛產(chǎn)品的復(fù)制品,并讓復(fù)制品加入隊列.當(dāng)復(fù)制品運動到傳送鏈的末端,與面?zhèn)鞲衅鱌laneSensor接觸時,面?zhèn)鞲衅鬏敵霎a(chǎn)品到位信號,同時把物料的復(fù)制品從隊列中移除,使物料停留在輸送鏈的末端.將doBox設(shè)置為1,表示產(chǎn)品已經(jīng)到位.面?zhèn)鞲衅鱌laneSensor只有一個輸出信號.通過添加非門,增加輸出的另一種狀態(tài),去觸發(fā)Source的執(zhí)行,即當(dāng)傳感器的輸出信號由1變?yōu)?時,觸發(fā)源Source會產(chǎn)生一個復(fù)制品.各個IO連接中源對象、源信號、目標對象、目標信號的設(shè)定如圖2所示.
圖2 各個IO連接中源對象、源信號、目標對象、目標信號的設(shè)定
使用一個海綿式真空吸盤來進行產(chǎn)品的拾取和釋放.圍繞該吸盤,打造一個具有Smart組件特性的夾具.夾具的動態(tài)效果包含:在輸送鏈末端拾取產(chǎn)品,在放置位置釋放產(chǎn)品,自動置位復(fù)位真空反饋信號.
選取機器人末端六軸法蘭盤的位置安裝夾具吸盤,建立夾具的Smart子組件tGripper,設(shè)定屬性為Role,讓Smart組件獲得Role的屬性.可以將SC-Gripper當(dāng)做機器人的工具來處理.
機器人每次拾取安裝的子對象和拆除安裝的子對象,都不是唯一的.我們可以借助一個針對物料的檢測傳感器來解決這個問題.選擇在夾具的下底面安裝線形傳感器LineSensor(見圖3),用此傳感器去檢測物料,判斷物料是否被吸取.每當(dāng)傳感器檢測到物料時,都是既作為夾具安裝的子對象,也作為拆除的子對象來看待.
圖3 在夾具底板上創(chuàng)建線傳感器
在建立傳感器時,需要指定線傳感器的起點和終點.為了便于觀察,可以對線傳感器進行加粗處理,如將其設(shè)置成半徑為3mm的圓柱形傳感器.
在使用虛擬傳感器時,為了確保檢測的準確性,需要調(diào)整線傳感器的長短.要保證傳感器在和物料接觸時,一部分在物料的內(nèi)部,一部分在物料外部,這樣才能夠準確地檢測到該物料.為了避免在吸盤拾取產(chǎn)品時,該線傳感器完全侵入產(chǎn)品內(nèi)部,需要將起點Start的Z值加大.要保證在吸盤拾取時,該線性傳感器一部分在產(chǎn)品內(nèi)部,一部分在產(chǎn)品外部.
設(shè)置拾取對象,添加子組件Attacher,設(shè)定安裝的父對象為Smart工具的SC-Gripper,設(shè)置釋放動作,添加子組件Detacher.
設(shè)置拆除對象,添加子組件Detacher,由于子對象不是特定的一個物體,故暫不設(shè)置.注意,KeepPosition需要勾選,它表明,釋放后,子對象保持當(dāng)前的空間位置.
拾取動作Attacher和釋放動作Detacher中,關(guān)于對象Child,暫時都未作設(shè)定,這是因為在本任務(wù)中,每次處理的工件都不是同一個產(chǎn)品,而是由產(chǎn)品源生成的各個碼垛產(chǎn)品的復(fù)制品.我們無法在此處直接指定子對象,而會在屬性連結(jié)里面設(shè)置此項屬性.
這里需要添加兩個屬性鏈接.LineSensor的屬性SensedPart指的是線傳感器檢測到的與其發(fā)生接觸的物體.此處建立連結(jié)是指將線傳感器所檢測到的物體作為拾取的子對象.將Attacher和Detacher的子對象設(shè)置為一致,也就是說,將拾取的子對象作為釋放的子對象.創(chuàng)建夾具的屬性與連結(jié)如圖4所示.
圖4 創(chuàng)建夾具的屬性與連結(jié)
創(chuàng)建一個數(shù)字輸入信號diGripper,用于控制夾具拾取、釋放動作,置1為打開真空拾取,置0為關(guān)閉真空釋放.創(chuàng)建一個數(shù)字輸出信號doOK,用于真空反饋信號,置1為真空已建立,置0為真空已消失.如圖5所示.
圖5 創(chuàng)建夾具的信號與連接
依次添加輸入信號,過程如下:機器人夾具運動到拾取位置,打開真空以后,線傳感器開始檢測,如果檢測到產(chǎn)品A與其發(fā)生接觸,則執(zhí)行拾取動作,夾具將產(chǎn)品A拾取,并將真空反饋信號置為1.接著,機器人夾具運動到放置位置,關(guān)閉真空以后,執(zhí)行釋放動作,產(chǎn)品A被夾具放下,同時將真空反饋信號置為0.機器人夾具再次運動到拾取位置,去拾取下一個產(chǎn)品,進入下一個循環(huán).
當(dāng)模擬產(chǎn)品Product_Teach到達傳送帶的面?zhèn)鞲衅魑恢脮r,在將diGripper置為1的情況下,夾具將產(chǎn)品拾取(見圖6),同時真空反饋信號doOK自動置為1.
圖6 夾具將產(chǎn)品拾取
當(dāng)機械臂移動到垛板放置位置時,在將diGripper置為0的情況下,夾具將搬運對象釋放(見圖7),同時真空反饋信號自動置為0.
圖7 夾具釋放產(chǎn)品
設(shè)定Smart組件與機器人端的信號通聯(lián),從而完成整個工作站的仿真動畫設(shè)計.工作站邏輯的設(shè)定為:將Smart組件的輸入/輸出信號與機器人端的輸入/輸出信號關(guān)聯(lián).將Smart組件的輸出信號作為機器人端的輸入信號,機器人端的輸出信號作為Smart組件的輸入信號.這里,將Smart組件當(dāng)作一個與機器人進行I/O通信的PLC來看待.
建立三個I/O信號:diBoxInPos數(shù)字輸入信號,用做產(chǎn)品到位信號;diVacuumOK數(shù)字輸入信號,用做真空反饋信號;doGripperdiBoxInPos數(shù)字輸出信號,用做控制真空吸盤動作的信號.如圖8所示.
圖8 建立三個I/O信號
在“仿真”功能選項卡中設(shè)定“工作站邏輯”,利用機器人的輸出信號去控制夾具系統(tǒng)拾取物料,用機器人輸出鏈的啟動輸出信號去控制輸出鏈系統(tǒng)的啟動,利用工具系統(tǒng)的拾取檢測信號去控制機器人的真空檢測輸入信號,用輸送鏈系統(tǒng)的產(chǎn)品到位輸出信號去控制機器人系統(tǒng)的產(chǎn)品到位輸入信號.
用Rapid語言編寫機器人運動程序,以實現(xiàn)機器人拾取和碼垛動作的展開.機器人在輸送鏈末端等待,產(chǎn)品到位后,將其拾取,放置在右側(cè)托盤上面.跺型為常見的“3+2”,即豎著放2個產(chǎn)品,橫著放3個產(chǎn)品,第二層,位置交錯.以機器人只進行右側(cè)碼垛為例,編寫程序.碼垛10個即滿載,機器人回到等待位繼續(xù)等待,仿真結(jié)束.
具體程序編寫如下:
設(shè)定工作站邏輯,利用機器人系統(tǒng)System24的輸出信號doGripper去控制工具系統(tǒng)的拾取信號diGripper,用輸送鏈的產(chǎn)品到位信號去關(guān)聯(lián)機器人系統(tǒng)的產(chǎn)品到位信號,利用工具系統(tǒng)的拾取檢測信號去控制機器人的真空檢測輸入信號.如圖9所示.
圖9 設(shè)定工作站的信號與連接
選擇“仿真”功能選項卡中的I/O仿真器,“選擇系統(tǒng)”為SC_InFeeder,點擊開始后,輸送鏈前端生成產(chǎn)品源的復(fù)制品,并且該復(fù)制品隨著輸送鏈運動.如圖10所示.
圖10 傳輸鏈動態(tài)仿真
復(fù)制品到達輸送鏈末端后,機器人接收到產(chǎn)品到位信號,將其拾取并放置到垛板指定位置.依此循環(huán),碼垛10個產(chǎn)品后,機器人回到等待位置.如圖11所示.
圖11 工業(yè)機器人碼垛仿真
仿真運行可以驗證碼垛工作站的程序是否正確.在此,可勾選Source組件的Transient屬性,這樣,當(dāng)結(jié)束仿真時,復(fù)制的物料模型會自動消失,不用再進行手動刪除的操作.
貨物的傳輸和碼垛是工業(yè)生產(chǎn)中的典型任務(wù).輸送鏈的傳輸和搬運碼垛機器人的應(yīng)用,將勞動者從繁重的體力勞動中解放出來,既提高了企業(yè)的生產(chǎn)效率,也保證了產(chǎn)品的質(zhì)量.
RobotStudio軟件中的Smart組件能模擬出機器人搬運物料的場景,能打造出動畫效果,是工業(yè)機器人工作站仿真設(shè)計的實用工具[5].仿真技術(shù)為機器人工作站系統(tǒng)集成項目前期方案的可行性論證提供了有效的途徑,通過前期的仿真,生產(chǎn)線項目的設(shè)計和調(diào)試時間可大大縮短,這樣可為企業(yè)節(jié)約成本,增加企業(yè)的經(jīng)濟效益[6].