杜太行,李亞杰,孫曙光,劉 輝,梁 杰,安春暉
(1.河北工業(yè)大學(xué)人工智能與數(shù)據(jù)科學(xué)學(xué)院,天津 300130;2.河北省工業(yè)機(jī)械手控制與可靠性技術(shù)創(chuàng)新中心(河北水利電力學(xué)院),河北滄州 061000;3.河北水利電力學(xué)院,河北滄州 061000)
自動(dòng)化生產(chǎn)是制造業(yè)長期發(fā)展的目標(biāo)之一[1],機(jī)械手采用自動(dòng)化技術(shù)代替人力,降低勞動(dòng)強(qiáng)度的同時(shí)保證抓取的穩(wěn)定程度,提升生產(chǎn)效率,有力地提高了企業(yè)市場(chǎng)競(jìng)爭(zhēng)力。中空玻璃上下片機(jī)械手主要用于鋼化玻璃貼合、磨砂以及鍛造等工序,生產(chǎn)過程中需要根據(jù)玻璃尺寸變化調(diào)整抓取結(jié)構(gòu);同時(shí)工件臺(tái)到機(jī)械手的距離并不固定,因此距離測(cè)量的快速與準(zhǔn)確性影響到機(jī)械手抓取的效率。為實(shí)現(xiàn)機(jī)械手的自動(dòng)生產(chǎn),文獻(xiàn)[2]采用光電傳感器作為控制開關(guān)實(shí)現(xiàn)機(jī)械手抓取,整體設(shè)計(jì)較為完整但對(duì)物料大小和玻璃機(jī)械手進(jìn)給距離仍需人工設(shè)定。周晶等[3]設(shè)計(jì)了氣動(dòng)回路和電氣控制系統(tǒng)實(shí)現(xiàn)玻璃貼標(biāo)機(jī)自動(dòng)上料,但是其測(cè)量效率低且在物料變換后不能自動(dòng)調(diào)整控制策略。潘寧等[4]設(shè)計(jì)了基于運(yùn)動(dòng)控制指令實(shí)現(xiàn)數(shù)控機(jī)床的自動(dòng)上下料,系統(tǒng)未對(duì)物料的尺寸信息、深度信息等進(jìn)行測(cè)量。
目前上下料機(jī)械手系統(tǒng)大多采用運(yùn)動(dòng)控制指令實(shí)現(xiàn)上下料操作,工作流程不能對(duì)物料尺寸和工件臺(tái)到機(jī)械手的距離變化進(jìn)行自動(dòng)測(cè)量與調(diào)整。因此為解決上述問題,引入視覺系統(tǒng)實(shí)現(xiàn)對(duì)玻璃尺寸和工件臺(tái)與機(jī)械手之間距離的測(cè)定,提升機(jī)械手工作效率與智能程度。
在機(jī)械手視覺系統(tǒng)方面,文獻(xiàn)[5]提出了基于多目立體視覺構(gòu)建機(jī)械臂智能控制系統(tǒng),實(shí)現(xiàn)對(duì)目標(biāo)物體的自動(dòng)識(shí)別與定位。文獻(xiàn)[6]基于樹莓派控制器配合高清攝像頭組成嵌入式機(jī)器視覺系統(tǒng),實(shí)現(xiàn)機(jī)械手對(duì)產(chǎn)品的精確定位和分類。文獻(xiàn)[7]利用攝像頭采集目標(biāo)圖像并傳輸?shù)缴衔粰C(jī),基于Opencv視覺庫對(duì)圖像進(jìn)行處理,確定目標(biāo)信息,實(shí)現(xiàn)機(jī)械手對(duì)目標(biāo)的控制。以上研究引入視覺系統(tǒng),使得機(jī)械手的生產(chǎn)效率與智能化水平顯著提升。
針對(duì)視覺系統(tǒng)中測(cè)距方法的設(shè)計(jì),目前多采用單目測(cè)距與雙目測(cè)距的方法,文獻(xiàn)[8]基于雙目視覺設(shè)計(jì)了電力巡線機(jī)器人障礙物定位測(cè)距系統(tǒng),實(shí)現(xiàn)對(duì)障礙物的定位測(cè)距。文獻(xiàn)[9]基于單目視覺,實(shí)現(xiàn)了與前方車距的測(cè)量。文獻(xiàn)[10]采用單目視覺,基于目標(biāo)物體成像尺寸的變化進(jìn)行距離測(cè)量,提高了單目視覺檢測(cè)精度。通過對(duì)比發(fā)現(xiàn)雙目視覺精度相對(duì)較高,但其配置時(shí)需要基線和攝像機(jī)光軸處于同一平面,操作復(fù)雜且造價(jià)高。單目視覺操作簡單且成本低,通過采用固定參照物可以實(shí)現(xiàn)中近距離的測(cè)量。
綜上所述,本文設(shè)計(jì)中空玻璃上下片機(jī)械手的視覺檢測(cè)系統(tǒng),基于玻璃邊緣與滾輪所獨(dú)有的顏色特征進(jìn)行識(shí)別,利用改進(jìn)骨架提取算法實(shí)現(xiàn)玻璃尺寸測(cè)量;采用單目視覺測(cè)量方法基于滾輪的長寬比與像素區(qū)域面積實(shí)現(xiàn)機(jī)械手進(jìn)給距離測(cè)量。該視覺系統(tǒng)可實(shí)現(xiàn)玻璃邊緣和滾輪多個(gè)目標(biāo)檢測(cè),且處理速度和精度滿足實(shí)際生產(chǎn)需要,提升了中空玻璃上下片機(jī)械手抓取效率。
中空玻璃上下片機(jī)械手整體結(jié)構(gòu)如圖1所示。機(jī)械手通過電機(jī)驅(qū)動(dòng)伸縮軸進(jìn)行前進(jìn)后退,通過調(diào)節(jié)翻轉(zhuǎn)角度,保證機(jī)械手末端與工件臺(tái)保持平行,之后吸盤進(jìn)行真空操作,實(shí)現(xiàn)對(duì)玻璃的抓取。引入視覺系統(tǒng)后,即通過相機(jī)采集圖像并處理得到機(jī)械手伸縮軸進(jìn)給距離和玻璃尺寸。
圖1 系統(tǒng)整體結(jié)構(gòu)
實(shí)際生產(chǎn)測(cè)量中,玻璃生產(chǎn)線上玻璃測(cè)量尺寸測(cè)量如圖2所示,允許誤差范圍值在2 cm以內(nèi),同時(shí)經(jīng)觀察發(fā)現(xiàn),由于玻璃本身透光性的影響導(dǎo)致圖形產(chǎn)生重影,玻璃檢測(cè)困難。
機(jī)械手進(jìn)給距離誤差在5 cm以內(nèi)不影響吸附強(qiáng)度,其抓取的工作效率為6~7片/min,針對(duì)單片抓取時(shí),測(cè)量與調(diào)整的時(shí)間允許范圍約為8 s,因此對(duì)視覺系統(tǒng)高效準(zhǔn)確測(cè)量提出了新要求。
基于機(jī)械手工作需求分析,測(cè)量的快速與準(zhǔn)確性是視覺測(cè)量系統(tǒng)設(shè)計(jì)的主要問題。針對(duì)測(cè)距問題,根據(jù)本文的需求與誤差分析,采用單目視覺測(cè)距。同時(shí)為提高處理的快速性,視覺測(cè)距的同時(shí)實(shí)現(xiàn)玻璃尺寸的檢測(cè),因此需要設(shè)計(jì)針對(duì)性的測(cè)量方法實(shí)現(xiàn)目標(biāo)檢測(cè)。
系統(tǒng)構(gòu)成包括視覺硬件和軟件系統(tǒng)。本設(shè)計(jì)檢驗(yàn)的玻璃目標(biāo)可達(dá)150 cm,按照每個(gè)像素最低1 mm的精度,最終選用GigE Vision V2.0協(xié)議的1 280 pixel×1 024 pixel CMOS相機(jī),鏡頭焦距為3.3 mm。采用LED燈為光源,垂直照射玻璃。軟件處理系統(tǒng)通過Windows系統(tǒng)下的QT開發(fā)環(huán)境進(jìn)行設(shè)計(jì)。
機(jī)械手整體系統(tǒng)由圖像采集與處理模塊和運(yùn)動(dòng)控制模塊組成,如圖3所示。圖像采集與處理模塊由相機(jī)、鏡頭、光源、計(jì)算機(jī)等組成,運(yùn)動(dòng)控制模塊通過PLC控制步進(jìn)電機(jī)和氣缸,得到參數(shù)后控制機(jī)械手運(yùn)動(dòng),實(shí)現(xiàn)機(jī)械手對(duì)玻璃的抓取。
圖3 系統(tǒng)總體結(jié)構(gòu)圖
為保證視覺測(cè)量系統(tǒng)的準(zhǔn)確與快速性,需要設(shè)計(jì)具有針對(duì)性的檢測(cè)方法對(duì)目標(biāo)進(jìn)行檢測(cè)獲取所需參數(shù)。采集玻璃圖像時(shí)由于玻璃的透光性導(dǎo)致檢測(cè)困難,采用單側(cè)垂直光源對(duì)玻璃進(jìn)行照射,由于不同介質(zhì)間的光傳播產(chǎn)生散射效應(yīng),玻璃邊緣部分產(chǎn)生綠色光條區(qū)域且無重影現(xiàn)象,如圖4所示。同時(shí)觀察發(fā)現(xiàn)工件臺(tái)上的滾輪位置固定且形狀顏色特征明顯,且光條部分與滾輪區(qū)域兩者之間存在明顯差異。
圖4 相機(jī)采集圖像
因此通過測(cè)量綠色邊緣部分即可獲取玻璃尺寸;進(jìn)給距離采用單目視覺成像幾何關(guān)系法測(cè)量,將滾輪作為目標(biāo)對(duì)象;對(duì)所采集圖像信息進(jìn)行圖像預(yù)處理,提取不同特征實(shí)現(xiàn)檢測(cè)。由于兩者目標(biāo)區(qū)域均由其顏色特征進(jìn)行提取,因此只需在圖像預(yù)處理過程中設(shè)置不同參數(shù)大小即可實(shí)現(xiàn)目標(biāo)區(qū)域提取。圖像預(yù)處理完成后分別設(shè)計(jì)了玻璃尺寸和距離測(cè)量算法。
玻璃邊緣光條部分與滾輪的顏色特征差異較大,RGB圖像轉(zhuǎn)化為HSV圖像可以減少干擾信息,突出目標(biāo)區(qū)域。并采用伽瑪變換對(duì)光照矯正,增強(qiáng)圖像效果,設(shè)f(i,j)為輸入的待處理圖像,fmax為圖像f的最大像素值,1-cf(i,j)整體為伽瑪參數(shù),cf(i,j)為與鄰域信息與直方圖相關(guān)的加權(quán)累計(jì)概率和,G(i,j)為伽瑪變換處理完成的圖像,從而可得:
(1)
為提取目標(biāo)區(qū)域采用基于HSV參數(shù)值方法對(duì)圖像進(jìn)行雙閾值分割,對(duì)HSV圖像色調(diào)、飽和度和亮度的值進(jìn)行選取,確定雙閾值分割的高閾值與低閾值。雙閾值分割過程可以用式(2)表示。
(2)
式中:I(i,j)為雙閾值分割后圖像;Tl、Th分別為雙閾值分割時(shí)的閾值下限與閾值上限。
整體代表意義為將參數(shù)值位于灰度值區(qū)間的區(qū)域賦值為0;低于低閾值與高于高閾值部分賦值為1,即可得到分割后區(qū)域。通過對(duì)玻璃邊緣光條部分和滾輪部分的閾值分別進(jìn)行篩選確定目標(biāo)區(qū)域,為后續(xù)的測(cè)量打下基礎(chǔ)。
雙閾值分割后獲取到玻璃邊緣部分圖像如圖5所示,測(cè)量玻璃的尺寸就是將獲取提取部分區(qū)域的長度。
圖5 玻璃邊緣綠色光條部分分割效果圖
觀察發(fā)現(xiàn)由于邊緣部分光散射效果的存在,導(dǎo)致圖像處理效果并不是平整的矩形區(qū)域,因此為了更準(zhǔn)確地測(cè)量長度值,需要實(shí)現(xiàn)邊緣部分的直線擬合誤差減小。因此對(duì)玻璃邊緣部分進(jìn)行細(xì)化處理,采用骨架提取算法獲得符合整體特征的直線特征。其原理為:對(duì)于一幅二值圖像的一個(gè)區(qū)域T,其邊界為F,對(duì)T中的點(diǎn)P,尋找P到F最接近的鄰點(diǎn)。如果P有多個(gè)最近鄰點(diǎn),則認(rèn)為點(diǎn)P屬于T的中軸。圖像內(nèi)每個(gè)像素點(diǎn)與其周圍的鄰域像素點(diǎn)組成3×3矩陣,各像素點(diǎn)位置及編號(hào)如圖6所示。
圖6 骨架提取細(xì)化算法的相鄰關(guān)系排列
P1為像素值為1的點(diǎn)。N(P1)為P1非零鄰點(diǎn)的個(gè)數(shù),S(P1)是P2~P9按序排列時(shí)點(diǎn)的值從0到1變化的次數(shù)。通過以下2個(gè)步驟實(shí)現(xiàn):
步驟1:循環(huán)遍歷所有前景像素點(diǎn),對(duì)同時(shí)滿足下列條件的邊界點(diǎn),進(jìn)行刪除處理(置 0),如下式所示。
2≤N(P1)≤6
(3)
S(P1)=1
(4)
P2·P4·P6=0
(5)
P4·P6·P8=0
(6)
步驟2:重復(fù)上述步驟,再次循環(huán)遍歷所有前景像素點(diǎn),進(jìn)行刪除處理。
由于步驟條件中的S(P1)=1阻止了多余像素點(diǎn)的刪除,為避免骨架提取后骨架中出現(xiàn)多余毛刺,影響整幅圖像的結(jié)構(gòu)。對(duì)算法進(jìn)行改進(jìn),增加2個(gè)對(duì)角方向的刪除模板,即圖像與刪除模板進(jìn)行與操作,即圖像內(nèi)的像素點(diǎn)需同時(shí)滿足如下要求:
(P2·P8=1)&P5=0
(7)
(P4·P6=1)&P9=0
(8)
(P8·P6=1)&P3=0
(9)
(P2·P4=1)&P7=0
(10)
單目視覺中心投影透視成像模型如圖7所示。
圖7 成像模型圖
根據(jù)成像模型可知,目標(biāo)到光軸的距離Z和像平面到光軸的距離D滿足幾何光學(xué)中相似三角形的線性關(guān)系,如式(11)所示:
(11)
式中:X為實(shí)際物體長度;x為圖像平面長度。
將滾輪的尺寸特征作為目標(biāo)進(jìn)行測(cè)量。同時(shí)由成像原理可知對(duì)于同一目標(biāo),距離與圖像中對(duì)象的像素大小成反比。因此引入像素區(qū)域進(jìn)行測(cè)距,從而提高測(cè)距的穩(wěn)定性。經(jīng)過檢測(cè)之后設(shè)定x為目標(biāo)像素寬度,y為目標(biāo)像素高度;X為目標(biāo)實(shí)際寬度,Y為目標(biāo)實(shí)際高度。fx為相機(jī)x方向焦距,fy為相機(jī)y方向焦距,因此可得:
(12)
引入像素面積s,其與距離d關(guān)系如下:
(13)
(14)
距離測(cè)量過程中,由于生產(chǎn)過程振動(dòng)對(duì)相機(jī)和工件臺(tái)的影響,在相同距離測(cè)量時(shí)所得的目標(biāo)像素寬度x,高度y存在誤差。為提高測(cè)量精度,采用卡爾曼濾波器對(duì)目標(biāo)像素寬度與高度進(jìn)行處理,得到優(yōu)化后的目標(biāo)像素寬度與高度,之后帶入距離測(cè)量公式(15)。
Xk=FkXk-1+wk
Zk=HkXk+νk
(15)
式中:Zk為系統(tǒng)k時(shí)刻的系統(tǒng)狀態(tài)觀察值;Xk、Xk-1為系統(tǒng)k、k-1時(shí)刻的測(cè)量值;Fk為狀態(tài)轉(zhuǎn)移矩陣;Hk為觀測(cè)矩陣;wk、νk分別為過程和測(cè)量噪聲,滿足正態(tài)分布。
卡爾曼濾波是一種遞歸的估計(jì),即只要獲知上一時(shí)刻狀態(tài)的估計(jì)值以及當(dāng)前狀態(tài)的觀測(cè)值就可以計(jì)算出當(dāng)前狀態(tài)的估計(jì)值,如下所示:
(16)
(17)
(18)
Pk|k=Pk|k-1-KkHkPk|k-1
(19)
設(shè)計(jì)開發(fā)的中空玻璃上下片機(jī)械手檢測(cè)系統(tǒng)主界面如圖8所示,系統(tǒng)包括結(jié)果視頻監(jiān)控、圖像采集與效果處理、測(cè)量結(jié)果顯示等功能。為驗(yàn)證系統(tǒng)有效性,對(duì)臥式中空玻璃上下片機(jī)械手測(cè)試,其進(jìn)給距離范圍為0~150 cm。將相機(jī)固定于機(jī)械手平臺(tái)側(cè)方,且與伸縮軸初始位置保持同一水平線。采用各型號(hào)玻璃共100片,進(jìn)行分析驗(yàn)證。
圖8 測(cè)量系統(tǒng)主界面
選用骨架算法和最小矩形框法依次對(duì)玻璃圖像進(jìn)行檢測(cè),測(cè)量效果如圖9所示。
(a)骨架算法
(b)最小外接矩形
(c)改進(jìn)骨架圖9 提取效果對(duì)比圖
通過對(duì)比圖9(c)與圖9(a)可知,改進(jìn)骨架算法實(shí)現(xiàn)了骨架毛刺的剔除,保證了所得骨架是單像素寬度,為長度測(cè)量減少干擾信息。對(duì)比圖9(c)與圖9(b)可知,改進(jìn)骨架提取得到邊緣提取效果更符合提取輪廓,對(duì)玻璃尺寸測(cè)量更準(zhǔn)確。
在此基礎(chǔ)上,基于改進(jìn)骨架提取方法,對(duì)不同尺寸的玻璃進(jìn)行測(cè)量,數(shù)據(jù)結(jié)果如表1所示。
表1 玻璃尺寸測(cè)量結(jié)果
通過表1可知,整體的測(cè)量時(shí)間在0.9 s左右,同人工測(cè)量相比大大縮短了檢測(cè)時(shí)間,系統(tǒng)的誤差范圍在5 cm左右,滿足抓取要求。
在實(shí)驗(yàn)過程中,采用相機(jī)幀率為30幀/s,焦距為固定值3.3 mm,為體現(xiàn)基于卡爾曼濾波的進(jìn)給距離實(shí)時(shí)測(cè)量效果,設(shè)定工件臺(tái)到機(jī)械手的距離勻速變化,對(duì)測(cè)距方法進(jìn)行測(cè)試,測(cè)距效果如圖10所示。
圖10 測(cè)距效果圖
通過圖10可以看出在測(cè)量過程中無濾波的測(cè)量值較實(shí)際位置差異明顯,對(duì)距離變化不能準(zhǔn)確跟隨,相比較之下經(jīng)卡爾曼濾波處理后可以使測(cè)量更加準(zhǔn)確和穩(wěn)定。
進(jìn)一步對(duì)部分特殊距離進(jìn)行多次測(cè)距取均值,結(jié)果如表2所示。系統(tǒng)可以實(shí)現(xiàn)距離測(cè)量的準(zhǔn)確實(shí)時(shí)測(cè)量,整體的測(cè)量時(shí)間在0.5 s以內(nèi),同人工測(cè)量相比大大縮短了檢測(cè)時(shí)間。并且通過觀測(cè)中間測(cè)量結(jié)果發(fā)現(xiàn),系統(tǒng)的誤差范圍在0.2 cm左右,滿足系統(tǒng)抓取要求。
表2 距離測(cè)量效果
本文設(shè)計(jì)了中空玻璃上下片機(jī)械手視覺檢測(cè)系統(tǒng),基于玻璃邊緣區(qū)域顏色特征和單目視覺測(cè)距的方法,采用改進(jìn)骨架化提取實(shí)現(xiàn)玻璃尺寸測(cè)量,測(cè)量時(shí)間在0.9 s內(nèi),平均誤差范圍在5 cm以內(nèi);基于卡爾曼濾波和滾輪尺寸特征實(shí)現(xiàn)進(jìn)給距離測(cè)量,測(cè)量時(shí)間在0.5 s以內(nèi),平均誤差范圍在2 cm以內(nèi);從整體的測(cè)量速度和精度來看,完全滿足系統(tǒng)的檢測(cè)需求。提高了機(jī)械手在生產(chǎn)線上的生產(chǎn)效率,與行業(yè)內(nèi)其他型號(hào)的機(jī)械手相比檢測(cè)更加智能化。