現有生產線工業抓取點固定,工件只能以固定的姿態提前擺放在固定的位置,這種裝配模式很難滿足復雜的工業生產要求且效率低下。設計了基于視覺引導的機械手裝配系統改進原有系統。設計了機器視覺系統,實現了工件的快速識別、定位以及姿態確定功能;設計了抓放系統,實現了工件的精確抓取和安裝功能;采用Visual Studio的MFC開發,實現圖像處理算法,并利用Socket通信將坐標和姿態數據發送給機械手。通過實驗驗證本系統具有良好的穩定性和快速性,可以滿足生產的要求,大幅提高生產效率。
中文引用格式:黨宏社,候金良,強華,等。 基于視覺引導的SCARA機械手自動裝配系統[J]。電子技術應用,2017,43(5):21-24.英文引用格式:Dang Hongshe,Hou Jinliang,Qiang Hua,et al. SCARA automatic assembly system based on vision guided[J].Application of Electronic Technique,2017,43(5):21-24.
引言工業機械手是機電一體化高度集成的產物,作為《中國制造2025》重點發展的十大領域之一,是工業自動化水平和工業4.0的重要標志[1]。工業機械手具有重復精度高、可靠性好、適用性強等優點,廣泛應用于汽車、機械、電子、物流等行業,已被證明是當前最高效的生產工具,需求量不斷攀升[2]。自上世紀60年代初以來,工業機械手經歷了三個階段的發展[3]。第一代是示教再現型工業機械手,只能將操作者告訴它的軌跡、順序、要求等把知識記憶下來,然后根據再現指令讀取這些知識,完成規定任務。第二代工業機械手是感知型工業機械手,通過給工業機械手安裝相關傳感器使其有所感知,對外部信息能進行反饋。第三代工業機械手是智能工業機械手,可對周圍環境、作業條件等做出判斷然后再執行任務。一般由機器視覺作為反饋,通過圖像處理信息引導工業機械手執行任務。機器視覺是工業機械手的重要研究領域,而目前生產線上多數工業機械手都通過預先示教或者離線編程的方式來控制機械手執行預定的指令動作,一旦工作環境或目標對象發生變化,機械手不能及時適應這些變化,從而導致任務失敗,而且這種工作方式在很大程度上限制了工業機械手的靈活性和工作效率。
1 裝配系統的組成
本文設計并實現了基于機器視覺的機械手裝配系統,可在線完成對不同型號和任意擺放工件的裝配任務。系統主要由機器視覺系統和機械手裝配系統組成。機器視覺系統包括圖像獲取、相機標定、模板匹配,可對不同工件進行識別、定位以及旋轉角度的確定。機械手裝配系統包括工件的抓取和安裝,在視覺的引導下完成工件的裝配。PC利用Socket通信把坐標和姿態數據發送給機械手,機械手根據位置數據抓取工件,然后放到裝配位置。
2 視覺系統的設計
2.1 圖像獲取采用韓國IMI tech Amazon2系列工業相機,它是數字逐行掃描相機,采用千兆以太網GigE協議標準,采用Sony逐行掃描CCD芯片,具有非常高的圖像質量。通過以太網與PC連接,且采集頻率可調。首先通過安裝IMI相機的驅動軟件獲得相機的C++接口,然后將接口函數移植到Visual Studio2015中進行二次開發。在包含相機類庫的情況下,通過實例化相機句柄類來讀取相機的數據。通過OneFrameGrab來獲取相機的一幀圖像,并將數據保存在固定的位置,實現實時讀取IMI相機的功能。
2.2 相機標定在機器視覺應用中,相機參數的標定是非常關鍵的環節,其標定結果的精度及算法的穩定性直接影響相機工作產生結果的準確性[6]。由于機械手抓取的工件位于同一平面,所以只對標定板圖像采集一次就可以得到相機的外參。得到相機的外參后,即可以得到圖像坐標上每個像素在世界坐標系下對應的實際距離。然后通過坐標系的變換公式即可得到圖像坐標系與機械手世界坐標系的轉換關系。
2.3 標準模板的建立在進行模板匹配之前需要制作不同工件的標準形狀模板。將標準的工件放在相機的視野下,獲取圖像,對圖像提取ROI區域,然后進行輪廓提取,得到模板的標準輪廓。首先獲取標準工件圖像,利用矩形截取函數來截取矩形的ROI區;然后對圖像進行增強;最后通過模板創建函數來創建模板,得到模板二值化后的標準輪廓。創建模板的算法思路如下:(1)尋找ROI區域圖像的灰度梯度,使用Sobel算子對圖像進行處理可以返回X方向的像素灰度值(Gx)和T方向的像素灰度值(Gy)。用下面的公式計算當前像素點的灰度值和梯度方向。
(2)利用非極大值抑制算法(NMS)來搜索梯度方向的局部極大值,抑制非極大值元素,可以細化邊緣。非最大抑制算法跟蹤邊緣方向的左右像素,如果當前像素的灰度值小于左、右像素灰度值,則抑制當前像素灰度。(3)采用雙閾值算法提取和連接邊緣。非極大值抑制算法處理后可能會有少量的非邊緣像素被包含到結果中,所以要通過選取閾值進行取舍。雙閾值選擇與邊緣連接方法通過假設兩個閾值其中一個為高閾值TH,另外一個為低閾值TL,則有:對于任意邊緣像素低于TL的,則丟棄;對于任意邊緣像素高于TH的,則保留;任意邊緣像素值在TL與TH之間的,如果能通過邊緣連接到一個像素大于TH而且邊緣所有像素大于最小閾值TL的,則保留,否則丟棄。最終對邊緣圖像進行保存,圖1是工件A的模板創建過程。
2.4 模板匹配對相機采集的工作區域實時圖像搜索模板圖像,得到工件的像素坐標和旋轉角度。模板匹配的流程如圖2所示。
其中相似性度量用到了歸一化處理,圖像中包含與模板越相似的圖像輸出的數值越接近1,公式如下:
其中代表模板圖像X和Y方向的梯度,代表待匹配圖像的X和Y方向的梯度。歸一化相似性度量會得到當前圖像與模板的相似度Score,Score的閾值MinScore設定為0.75。可以設定圖像的最大匹配個數,如果匹配時的質量系數大于MinScore的目標個數多于最大匹配個數,僅僅返回質量系數最好的目標位置。如果找的匹配目標不夠,那么就只返回已找到的目標。輸出的匹配角度Angle為弧度值0~2π,對應模板圖像逆時針旋轉0~360°。最終根據相機標定的結果將工件圖像坐標轉化為機器人的世界坐標。經過多次匹配實驗得出匹配的準確率為98%,匹配的最大絕對誤差為5個像素,匹配平均時間為60 ms。
3 機械手裝配系統設計
SCARA(Selectively Compliance Assembly Robot Arm)機械手是一種平面關節型工業機械手,具有4個關節,3個旋轉關節軸線相互平行,實現平面內定位和定向;1個移動關節,實現末端件升降運動,廣泛應用于塑料工業、汽車工業、電子產品工業、藥品工業和食品工業等領域。本次設計中機械手要與PC通信接收工件的坐標信息和角度,然后抓取工件以固定的姿態放到指定的位置。
3.1 SCARA機械手通信程序設計機械手控制器的IP1端口作為客戶端連接到運行在PC上的服務器,利用無線通信完成數據的收發。使用機械手語言的PRINT和INPUT命令,與機械手語言程序進行數據通信。通過使用PRINT命令,可以從控制器發送任意的字符串,控制器發送以PRINT命令指定的字符串及變量值。接收數據使用INPUT命令,控制器能接收的僅是實數或整數??刂破饕呀邮盏臄祿淮霝橛肐NPUT命令指定的變量。在機械手語言的程序中,可以通過參照該變量,使用已接收的數據。在Visual Studio中利用C++開發了基于Socket通信的服務器,將模板匹配得到的工件坐標發送給機器人客戶端。PC與機械手通信程序流程圖如圖3所示。
3.2 SCARA機械手抓放程序設計機械手程序在TSPC軟件中完成,主要功能是根據接收到的工件坐標和角度數據,移動機械手將工件以固定的姿態放到裝配位置。由于抓取的工作區域比較大,因此要將工作區域分開抓取。通過對機械手的軌跡范圍的研究,確定將工作區域分為兩個部分,分別以不同的姿態抓取工件。以機械手世界坐標X=331.6為分界,對上半部分采用C=-254.380 基準對工件進行抓取,下半部分采用C=-74.306基準對工件進行抓取。由于工件在工作區域有0~360°的旋轉角度,所以要在基準的基礎上對機械手的旋轉角度進行調整,使得每次機械手的末端執行器都與工件平行。機械手末端執行器根據工件角度旋轉的原理。由于模板匹配返回工件中心的坐標點,當角度發生變化時,相應的機械手的坐標也要變化,才能保證以與工件平行的姿態抓取工件。其原理如圖4所示。
如果工件A的旋轉角度為零,那么末端執行器以工件中心點(X0,Y0)到(X1,Y1)的直線抓取工件。當工件A旋轉θ角度時,末端執行器以工件中心點(X0,Y0)到(X2,Y2)的直線抓取工件。機械手的坐標偏移量用下面的公式計算,其中θ為工件的旋轉角度,L為末端執行器的長度7.564 cm。
然后用MOVE SAFEPLAY,將不同旋轉角度的工件都以固定的角度移動到放置安全點,最后完成放置。機械手的抓放程序流程圖如圖5所示。
4 實驗驗證在Visual Studio中采用MFC開發實現上述圖像處理算法,并建立Socket服務器與SCARA通信。在MFC程序中采用多線程的方法實時顯示機械手工作區域的圖像,采用中斷的方式定時對圖像進行模板匹配。當匹配到工件,利用Socket通信將工件坐標發送給機器人完成裝配。MFC程序界面及裝配實驗系統如圖6所示。
系統誤差的主要來源為相機標定、光照的變化、坐標變換以及機器人末端執行器的精度等。利用本系統對任意擺放的工件進行識別和抓取,對連續50次的裝配點誤差進行統計,如圖7所示。通過以上實驗測試,本系統可以對任意擺放的工件進行識別,并可以精確地放到裝配位置,工件裝配的最大絕對誤差為0.2 mm,平均絕對誤差為0.15 mm,可以滿足生產的要求,證明系統的準確性良好。實驗測試時間超過100 min且系統仍然穩定運行,證明系統的穩定性良好。
5 結束語為了使現有生產線工業機器人能更好地適應抓取環境,設計了基于視覺引導的機器人抓放系統。通過對工作區域圖像實時采集和模板匹配得到工件的坐標和姿態,由機器人完成抓放。通過對生產線的改進,工件可以任意放入工作區域,也可根據生產需要改變抓取策略,提高機器人對環境的適應性,大大提高生產效率。通過多次測試實驗,本系統可以完成上述所有功能,滿足工業生產的要求。
作者信息:黨宏社,候金良,強 華,張 超
評論
查看更多