王連慶,錢 莉
(上海工程技術(shù)大學(xué) 機(jī)械與汽車工程學(xué)院,上海 201620)
隨著科技的進(jìn)步與發(fā)展,人們對自動化領(lǐng)域提出了無人工廠,高精度裝配等理念,這些理念的核心作用就是降低人工參與度。而工業(yè)機(jī)器人[1]的出現(xiàn),一定程度上滿足了人們對自動化行業(yè)提出的要求。如今越來越多的工業(yè)機(jī)器人系統(tǒng)集成了視覺接口,利用視覺技術(shù)配合機(jī)械手實(shí)現(xiàn)目標(biāo)物體的定位,分類,檢測。機(jī)器視覺的核心就是將相機(jī)采集的圖像進(jìn)行處理,提取圖像的特征信息[2],來判斷圖像上層語義,進(jìn)而替代人眼和人腦完成約定任務(wù),甚至可以完成特殊環(huán)境下人眼無法完成的任務(wù)。除此之外視覺技術(shù)還運(yùn)用在虛擬現(xiàn)實(shí)[3],汽車導(dǎo)航[4],瑕疵檢測等領(lǐng)域。本文運(yùn)用機(jī)械手與視覺技術(shù)的結(jié)合,將物料盒中的無序物料進(jìn)行識別,定位,并引導(dǎo)機(jī)械手進(jìn)行抓取,有序放入物料盒中。
1)CCD相機(jī):相機(jī)采用大華公司A3600MG18型號相機(jī),使用千兆網(wǎng)卡與工控機(jī)通訊,安裝在物料盒,來料盒上方,與機(jī)械人末端下方。
2)鏡頭:鏡頭采用日本COMPUTAR公司的25mm標(biāo)準(zhǔn)鏡頭。
3)計(jì)算機(jī):采用研華公司的工控計(jì)算機(jī),軟件運(yùn)行環(huán)境為Window10,Visual Studio 2017 C#,CPU:Intel i5-4800,RAM:12GB。
4)光源:光源采用上海愷威光電科技的LED環(huán)形光,此款源可以減少相機(jī)曝光時間,提高圖像質(zhì)量。
5)機(jī)器人:采用雅馬哈YK500-600XGL四軸機(jī)械手。該機(jī)械手末端重復(fù)精度可達(dá)到0.005mm,編程簡單,采用TCP/IP協(xié)議與工控機(jī)通訊。
機(jī)器人視覺引導(dǎo)無序抓取系統(tǒng)整體硬件的搭建如圖1所示。
圖1 機(jī)器人視覺引導(dǎo)無序抓取整體硬件的搭建
本系統(tǒng)中3只相機(jī)分別安裝在物料盒的上方,來料盒的上方,和機(jī)械手位置2的正下方,保持相機(jī)安裝與工作臺垂直。3只相機(jī)的目的是分別對物料盒放置物料的圓形凹槽,來料盒中的無序來料,和機(jī)械手末端圓形吸料吸嘴進(jìn)行定位。工作流程的第一步是將3只相機(jī)與機(jī)械手做一次聯(lián)合標(biāo)定,將3只相機(jī)與機(jī)械手標(biāo)定至同一坐標(biāo)系下即將圖像從像素坐標(biāo)系轉(zhuǎn)化到機(jī)械手基坐標(biāo)系下。第二步將機(jī)械手運(yùn)動至位置3,相機(jī)2采集圖像,對圖像進(jìn)行處理,定位物料中心在機(jī)械手基坐標(biāo)坐標(biāo)系下的坐標(biāo),同時相機(jī)3采集圖像,定位機(jī)械手圓形吸嘴中心在機(jī)械手基坐標(biāo)下的坐標(biāo)。將兩坐標(biāo)進(jìn)行解算,解算出機(jī)械手需要運(yùn)動的關(guān)節(jié)信息,通過網(wǎng)絡(luò)協(xié)議傳輸至機(jī)械手控制端,機(jī)械手運(yùn)動至位置2對物料進(jìn)行吸取。第三步相機(jī)1進(jìn)行拍照對物料盒放置物料的圓形凹槽中心進(jìn)行定位,同時將機(jī)械手移動至位置3,利用相機(jī)3對機(jī)械手已吸取物料中心進(jìn)行拍照定位,通過兩定位坐標(biāo)再次解算出機(jī)械手需要運(yùn)動的關(guān)節(jié)信息。操作機(jī)械手運(yùn)動至位置1圓形凹槽上方釋放物料,完成機(jī)械手的搬運(yùn)任務(wù),往復(fù)工作直到物料盒為空。從而實(shí)現(xiàn)機(jī)械手無序抓取物料并有序放置的任務(wù),具體工作流程如圖2所示。
圖2 視覺引導(dǎo)抓取系統(tǒng)工作流程
相機(jī)的針孔成像模型與小孔成像原理[5]類似,如圖3所示,成像平面所呈的像為實(shí)際物體倒立的像,相機(jī)內(nèi)部在做圖像處理的時候會將圖像進(jìn)行倒立,放縮,使圖像與實(shí)際物體一致。根據(jù)小孔成像原理我們可以把相機(jī)的成像效果等價與平面的成像效果。
圖3 針孔成像原理
根據(jù)小孔成像原理我們可以把相機(jī)模型分為相機(jī)坐標(biāo)系,圖像坐標(biāo)系,像素坐標(biāo)系,世界坐標(biāo)系,圖像坐標(biāo)系和像素坐標(biāo)系在平面π1上,將平面π1放大后如圖4所示,左上角O0定義為圖像的像素坐標(biāo)系原點(diǎn),u和v分別為X和Y軸。點(diǎn)O為圖像坐標(biāo)系的原點(diǎn),x和y分別為坐標(biāo)系的X,Y軸。我們假設(shè)相機(jī)成像形狀為矩形,每個像素在x軸與y軸的物理尺寸為dx與dy,單位為mm/px,假設(shè)在像素坐標(biāo)系下存在一點(diǎn)(u,v),在圖像坐標(biāo)系下為(x,y),則有以下對應(yīng)關(guān)系:
圖4 圖像坐標(biāo)系
我們將式(1)轉(zhuǎn)化為矩陣表達(dá)式有
相機(jī)坐標(biāo)系如圖3中OC-XCYCZC,其中XC,YC與圖像坐標(biāo)系中的X軸,Y軸同軸,ZC與成像平面垂直,OCC為光心到成像平面的距離即相機(jī)的焦距,假設(shè)距離為f,我們將相機(jī)坐標(biāo)系下的一點(diǎn)p1(X,Y,Z)投影到圖像坐標(biāo)系中得到p2(x,y),則有對應(yīng)關(guān)系
綜合考慮式(2)和式(3)可以推出像素坐標(biāo)系到相機(jī)坐標(biāo)系的關(guān)系
世界坐標(biāo)系如圖3中OW-XWYWZW,在世界坐標(biāo)系中有一點(diǎn)(XW,YW,ZW),在相機(jī)坐標(biāo)系下有一點(diǎn)(X,Y,Z),我們將兩坐標(biāo)轉(zhuǎn)化為齊次坐標(biāo)就有對如下應(yīng)關(guān)系:
MW為相機(jī)的外參,即相機(jī)坐標(biāo)系到世界坐標(biāo)系的轉(zhuǎn)化關(guān)系。綜合式(4)、式(5)我們可以得出以下公式,該公式表達(dá)了像素坐標(biāo)系到世界坐標(biāo)系的轉(zhuǎn)化關(guān)系。即可以將實(shí)物從外部的三維世界轉(zhuǎn)化為二維平面。
根據(jù)式(6)我們就可以通過相機(jī)拍攝不同位置的標(biāo)定板,求解出相機(jī)的內(nèi)參和外參。
在進(jìn)行相機(jī)標(biāo)定時,我們可以獲得相機(jī)的內(nèi)外參數(shù),但是在進(jìn)行視覺引導(dǎo)時已知這些參數(shù)是遠(yuǎn)遠(yuǎn)不夠的,需要對機(jī)械手和相機(jī)之間進(jìn)行標(biāo)定,獲得機(jī)械手基坐標(biāo)系和像素坐標(biāo)系之間的關(guān)系,才可進(jìn)行視覺引導(dǎo)。
在此套系統(tǒng)中采用的Eye-on-Hand[7,8]的標(biāo)定方式,Eye-on-Hand系統(tǒng)即眼在手外系統(tǒng),將相機(jī)固定在某一位置,標(biāo)定板固定在機(jī)械手末端,保持相機(jī)與標(biāo)定片平面處于垂直狀態(tài),如圖5所示。
圖5 固定相機(jī)手眼關(guān)系
從上述轉(zhuǎn)換關(guān)系我們可以得到以下等式
只要對該方程求解就可以獲得手眼標(biāo)定的結(jié)果。過于解上述方程需要足夠多的位置移動,考慮到過擬合問題和誤差較小兩個問題,我們需要保證一個足夠大的平面來進(jìn)行標(biāo)定。
圖像的提取特征[9]和模板匹配[10]是機(jī)械手對目標(biāo)物體定位最重要的步驟,對于目標(biāo)圖像我們可以提取它的幾何特征,直方圖信息[11],灰度信息等作為匹配的特征要素。成功提取特征后還需要利用搜索匹配算法來實(shí)現(xiàn)模板與目標(biāo)圖像之間的匹配。模板匹配的運(yùn)算時間直接決定整個系統(tǒng)的運(yùn)行時間,因此我們在考慮準(zhǔn)確性的同時還要盡量縮小算法的運(yùn)算時間。
常用的匹配算法有提取灰度信息和幾何特征?;趲缀翁卣鞯钠ヅ渌惴╗12]是提取目標(biāo)物體的外部輪廓,對輪廓進(jìn)行對比匹配。基于灰度信息的匹配算法[13]是比較相同位置灰度的差值,選取差值最小處或者達(dá)到最小閾值則為成功匹配?;诨叶忍卣鞯钠ヅ渌惴ㄔ砗唵?,也相對成熟。因此本系統(tǒng)優(yōu)先采用的基于灰度特征的模板匹配算法。
我們采用模板圖像與目標(biāo)圖像所有灰度值差值的平方和作為其相似性度量標(biāo)準(zhǔn)。設(shè)模板圖像為W×H個像素,模板與目標(biāo)圖像評價函數(shù)如下:
將上述式(9)歸一化后有:
T(m,n)和D(i+m,j+n)分別為模板圖像在(m,n)坐標(biāo)下的像素,目標(biāo)圖像在(i+m,i+n)坐標(biāo)下的像素值,通過為每一個位置像素之差求平方和來評價模板圖片與目標(biāo)圖片的相似度。評價函數(shù)的得分越低說明模板圖片和目標(biāo)圖片的匹配程度越高。該方法設(shè)置閾值后,可以在目標(biāo)圖像中找個多個與模板相似的圖片,符合本套系統(tǒng)的設(shè)計(jì)一致。
圖6為模板圖片,基于該模板特征提取灰度信息,在目標(biāo)圖片圖7中綠色框內(nèi)為目標(biāo)圖片與模板重合的區(qū)域,紅色部分表示匹配上但是得分較低的區(qū)域??梢钥闯銎ヅ錅?zhǔn)確性比較高,結(jié)果可以作為實(shí)際定位結(jié)果。
圖6 模板圖片
圖7 目標(biāo)圖片
我們利用雅馬哈YK500-600XGL四軸機(jī)械手,???00萬相機(jī),研華工控機(jī)對該系統(tǒng)進(jìn)行驗(yàn)證。實(shí)驗(yàn)圖如圖11所示。
圖11 實(shí)際驗(yàn)證硬件架設(shè)
首先確定機(jī)械手與上位機(jī)的通信方式,本次實(shí)驗(yàn)采取TCP/IP通訊方式,編寫該系統(tǒng)上位機(jī),上位機(jī)界面中包含了機(jī)器人標(biāo)定點(diǎn)位,機(jī)器人試教點(diǎn)位,匹配圖像顯示界面等。其次確定機(jī)械手末端采用氣動吸嘴,實(shí)現(xiàn)機(jī)械手對物料的抓取與釋放。
進(jìn)行實(shí)驗(yàn)前我們利用棋盤格對該系統(tǒng)進(jìn)行相機(jī)內(nèi)外參標(biāo)定,手眼標(biāo)定。在機(jī)械手進(jìn)行抓取之前我們機(jī)械手吸嘴進(jìn)行定位如圖10所示,并對來料盒中的物料進(jìn)行定位如圖7所示,根據(jù)兩定位結(jié)果反解出機(jī)械手運(yùn)動的關(guān)節(jié)信息,擺動機(jī)械手到物料位置吸取物料,吸取料后再次對來料進(jìn)行定位如圖9所示,同時對料盒進(jìn)行定位如圖8所示,根據(jù)兩定位信息解算出機(jī)械手應(yīng)走的位置,將物料至于料盒中。其中對機(jī)械手吸嘴定位與再次對吸取物料定位是為了防止吸取物料時產(chǎn)生偏差(如圖9所示)與放料誤差的疊加導(dǎo)致放料失敗,從而不能保證整個系統(tǒng)的穩(wěn)定性。
圖8 物料盒物料放置槽定位
圖9 機(jī)器人吸取物料定位
圖10 機(jī)器人吸嘴定位
我們用300片物料進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表1所示,由表可以看出該系統(tǒng)的準(zhǔn)確性和穩(wěn)定性可以達(dá)到98.6%,符合制定的要求。使用該套系統(tǒng)可以大大減少人力成本,提高產(chǎn)能,為企業(yè)減少成本。
本文完成了基于機(jī)器視覺引導(dǎo)機(jī)械手對無序物料進(jìn)行抓取系統(tǒng)的設(shè)計(jì),并且在實(shí)際的實(shí)驗(yàn)測試中取得了較高的成功率,從而驗(yàn)證了該套系統(tǒng)的可靠性,同時驗(yàn)證了標(biāo)定算法,定位算法的可靠性,引導(dǎo)抓取方案的實(shí)用性。機(jī)器視覺出現(xiàn)提高了自動化行業(yè)的效率和生產(chǎn)質(zhì)量,使得產(chǎn)品更加穩(wěn)定可靠,但是我國的視覺技術(shù)仍處于起步階段,需要大量的專業(yè)人才共同努力,才能縮小和自動化強(qiáng)國技術(shù)人的差距。