耿永秀,項余建,曹 偉,郭金山,陳 森,詹俊勇
(揚力集團股份有限公司,江蘇 揚州 225000)
隨著現代工業的不斷升級,自動化生產線已成為一種趨勢。自動化的發展不僅降低了勞動成本,提高工作效率,而且可以解決實際生產制造難點[1]。而RobotStudio 仿真軟件的應用,不僅在實踐中減少操作的風險,減少購買設備的成本,還能夠通過計算機進行現場模擬,降低了設備成本和安全風險[2]。
近幾年來機器視覺技術在工業生產中得到了廣泛應用。在工業機器人應用領域,機器視覺被廣泛應用于工件的特征檢測以及機器人的位姿引導,ABB機器人在控制器中開放了視覺集成接口,以便于機器人能夠直接與智能相機進行數據交互。除了現實的機器視覺應用以外,在機器人仿真過程中可以對機器視覺進行仿真。在仿真的過程中,能夠對機器人路徑進行優化,對現場調試具有指導意義,同時能夠避免企業對設備過度投入、縮短現場調試時間[3]。
在仿真工作站添加一臺IRB6700 機器人,導入機器人端拾器、上料皮帶、視覺支架、機器人底座等模型。同時使用“建?!辈藛沃械摹皥A錐體”建模工具創建一個圓錐體,并修改圓錐體透明度,作為相機光源。將端拾器安裝到機器人上,相機光源分別放置到合適位置處,并創建機器人控制系統,機器人與視覺系統創建完成后,如圖1 所示。

圖1 工作站布局
ABB IRB6700 型機器人一般運用于自動化搬運系統場合,由機器人按照一定的規律來運送板料,該仿真工作流程是機器人搬運至視覺皮帶線,傳送至視覺照相范圍內,相機拍照識別物料,機器人準確抓取放置下一臺沖床,重復完成這個動作。流程圖如圖2 所示。

圖2 流程圖
對于機器人位置與姿態的視覺引導,首先,創建工件坐標系、工具坐標系,在創建工件坐標中,用戶坐標框架下使用“三點”法,在視覺皮帶右側位置處,創建一個工件坐標系,坐標軸方向與大地坐標系保持一致。工件坐標系創建完成后,將仿真環境中創建的工件坐標系以及工具坐標系同步到機器人控制器中。
在“RAPID”程序下打開機器人程序模塊Module1,程序代碼如下。編輯窗口中聲明機器人在x、y軸上的位置偏移變量PosXY 以及在z 軸上的旋轉變量OrientRz。
PERS pos posXY:=[0,0,0];機器人在x、y 軸上位置偏移變量
PERS orient orientRz:=[0,0,0,0];機器人在z 軸上的旋轉變量
分別設置LogicGate_5、LogicGate_6 子對象組件“OR”與“NOT”操作。配置線性傳感器LineSensor_Front 屬性,面傳感器PlaneSensor 屬性,拾取機器人輸送帶開始平面上兩點作為傳感器起始位置與結束位置,設置傳感器半徑為10mm,拾取輸送線末端x 軸和z 軸兩個點。配置線性移動子對象組件LinearMover 屬性,設置移動速度為1000mm/s,其他屬性保持默認,皮帶輸送組件如圖3 所示。

圖3 皮帶輸送組件
創建的工件位置隨機生成仿真環境中的Smart組件中,添加2 個RapidVariable 控制子對象組件,其中一個用于向機器人發送視覺檢測到的工件位置偏移數據、另一個用于向機器人發送視覺檢測到的工件姿態偏移數據。對兩個RapidVariable 子對象組件進行屬性配置,以實現將視覺檢測到的工件偏移數據分別發送到在機器人程序中聲明的數據變量PosXY、OrientRz 中。對于相機的控制,這里使用2 個LogicGate 子對象組件、1 個Show 子對象組件、1 個Hide 子對象組件。使用Show與Hide 子對象組件對相機光源進行顯示/隱藏操作,實現相機光源的閃爍仿真效果。在Smart 組件中添加1 個脈沖信號輸出子對象組件LogicSplit。再分別創建1 個數字量輸入信號di1 與1 個數字量輸出信號do1,用來作為視覺引導Smart 組件的控制與反饋信號。對修改后的視覺引導Smart 組件屬性傳遞關系與信號控制邏輯分別進行設置,設置完成后,如圖4 所示。

圖4 視覺引導組件
在機器人控制器中分別創建輸入信號di1 與輸出信號do1,虛擬信號用于與Smart 組件中的控制、反饋信號進行連接。在RobotStudio 軟件的仿真環境中對機器人進行示教編程,機器人運行軌跡如圖5所示,示教編程過程中除了示教點以外,其他工作點全部使用創建的工件坐標系,工具全部使用端拾器工具。

圖5 機器人運行軌跡
將在仿真環境中示教點同步到機器人控制器中,在“RAPID”菜單欄中將其打開,部分程序如圖6所示。

圖6 程序
采用Robotstudio 仿真軟件搭建視覺生產線搬運工作站。根據ABB6700 機器人在實際工業視覺對中搬運,設計了生產線上自動抓取物料仿真工作站,該仿真工作站可以根據實際情況離線編程,縮短了機器人現場調試的周期,大大提高了效率,為工業機器人更好地完成生產線上各項任務提供了實驗數據和理論依據[1]。