劉東來(lái) 崔亞飛 羅 輝 鄧子林
(永州職業(yè)技術(shù)學(xué)院智能制造與建筑工程學(xué)院,湖南 永州425100)
隨著“德國(guó)工業(yè)4.0”、“中國(guó)制造2025”等[1-4]戰(zhàn)略的出臺(tái),傳統(tǒng)制造業(yè)正逐步進(jìn)入智能制造時(shí)代,其中“中國(guó)制造2025”明確指出我國(guó)制造業(yè)要向智能化、自動(dòng)化方向發(fā)展。焊接技術(shù)作為制造業(yè)中的重要一環(huán),傳統(tǒng)的人工焊接方式已逐漸被焊接機(jī)器人所淘汰。目前的焊接機(jī)器人系統(tǒng)前期準(zhǔn)備相當(dāng)繁瑣,必須進(jìn)行人工手動(dòng)示教,然后再實(shí)現(xiàn)焊接機(jī)器人焊接作業(yè)。當(dāng)焊接對(duì)象發(fā)生變化時(shí),需要重新示教,對(duì)于日益復(fù)雜與多樣化的焊接需求,這種焊接方式無(wú)法感知外界環(huán)境的變化,自主適應(yīng)變化能力不足,智能化和自動(dòng)化水平不高,生產(chǎn)效率較低,其實(shí)現(xiàn)焊接過(guò)程智能化和自動(dòng)化將成為必然趨勢(shì)[5-8]。近年來(lái),機(jī)器視覺(jué)技術(shù)快速發(fā)展,已廣泛應(yīng)用于各個(gè)領(lǐng)域,將機(jī)器視覺(jué)引入焊接機(jī)器人系統(tǒng)可以充當(dāng)焊接機(jī)器人的眼睛,提高焊接機(jī)器人感知外界環(huán)境變化的能力[9]。焊接機(jī)器人有了感知能力后,需根據(jù)焊接對(duì)象的變化自主實(shí)現(xiàn)焊接路徑規(guī)劃,以滿足多樣化小批量生產(chǎn)的要求。
針對(duì)焊縫識(shí)別及軌跡規(guī)劃的問(wèn)題,國(guó)內(nèi)外學(xué)者開(kāi)展了大量研究。Kiddee P等人[10]利用線激光和單目視覺(jué),通過(guò)霍夫變換獲得激光條紋后,采用最遠(yuǎn)點(diǎn)算法獲得焊縫中心坐標(biāo)。Dinham M等人[11]通過(guò)相機(jī)獲取焊縫圖像,在圖像預(yù)處理后,采用Sobel算子實(shí)現(xiàn)焊縫的邊緣檢測(cè),從而實(shí)現(xiàn)焊縫識(shí)別。Mulik P B等人[12]提出了一種基于進(jìn)化算法的機(jī)器人最優(yōu)軌跡規(guī)劃算法,該方法同時(shí)進(jìn)行多準(zhǔn)則優(yōu)化,采用B樣條函數(shù)生成機(jī)器人運(yùn)行軌跡。李宇鵬[13]等人提出采用馬鞍形曲線插補(bǔ)與示教相結(jié)合的方式實(shí)現(xiàn)軌跡規(guī)劃算法,該方法很好地實(shí)現(xiàn)了對(duì)焊槍運(yùn)動(dòng)軌跡的控制。陳子健等人[14]提出了一種三角網(wǎng)格特征提取算法實(shí)現(xiàn)對(duì)焊縫的識(shí)別,同時(shí)使用三次樣條曲線插值獲取機(jī)器人焊接軌跡。以上研究雖然解決了直線、圓等簡(jiǎn)單焊縫的問(wèn)題,但對(duì)于復(fù)雜的焊縫則有一定的局限性,自主路徑規(guī)劃能力有待提高。
針對(duì)復(fù)雜曲線焊縫的焊接作業(yè)問(wèn)題,本文設(shè)計(jì)了一種基于機(jī)器視覺(jué)的弧焊機(jī)器人系統(tǒng),該系統(tǒng)通過(guò)視覺(jué)采集焊縫圖像,之后進(jìn)行圖像預(yù)處理、焊縫中心線識(shí)別、焊縫軌跡生成、坐標(biāo)轉(zhuǎn)換等操作,實(shí)現(xiàn)復(fù)雜焊縫路徑自主規(guī)劃能力,提高弧焊機(jī)器人的智能化和自動(dòng)化水平。
工業(yè)機(jī)器人焊接實(shí)驗(yàn)系統(tǒng)如圖1所示,主要由工業(yè)相機(jī)、工控機(jī)以及工業(yè)機(jī)器人3部分組成。采用Cognex工業(yè)相機(jī)采集焊縫圖像,工控機(jī)用于實(shí)現(xiàn)焊縫識(shí)別以及路徑生成算法,六軸工業(yè)機(jī)器人用于執(zhí)行焊接操作,通過(guò)以太網(wǎng)實(shí)現(xiàn)各部分間的信息傳遞。
本文所構(gòu)建的工業(yè)機(jī)器人焊接系統(tǒng)本質(zhì)上是一個(gè)運(yùn)動(dòng)控制系統(tǒng),主要包括了控制器、執(zhí)行器、被控對(duì)象以及檢測(cè)裝置4部分。被控對(duì)象為工業(yè)機(jī)器人末端安裝的焊槍,被控量是焊槍的位姿與速度,執(zhí)行器為工業(yè)機(jī)器人,控制器即控制機(jī)器人運(yùn)動(dòng)的裝置,檢測(cè)裝置則由傳感器組成,用于焊縫的檢測(cè)識(shí)別,如圖2所示。
焊接機(jī)器人焊接的前提是通過(guò)雙目相機(jī)拍攝焊件圖像,提取出焊件的三維信息坐標(biāo),才能引導(dǎo)末端焊搶完成焊接任務(wù)。因此,首要任務(wù)是建立像素坐標(biāo)、圖像坐標(biāo)、相機(jī)坐標(biāo)和世界坐標(biāo)之間的坐標(biāo)系轉(zhuǎn)換關(guān)系,4個(gè)坐標(biāo)系的關(guān)系如圖3所示。
(1)像素坐標(biāo)與圖像坐標(biāo)。圖像坐標(biāo)系u-v的原點(diǎn)為Op,橫坐標(biāo)為u表示圖像所在行,縱坐標(biāo)為v表示圖像所在列;圖像坐標(biāo)系x-y的原點(diǎn)為Om,dx和dy分布表示每個(gè)像素在橫縱坐標(biāo)軸的物理尺寸,如圖3所示像素點(diǎn)P坐標(biāo)(u0,v0),則圖像坐標(biāo)系與像素坐標(biāo)系的關(guān)系為
(1)
(2)相機(jī)坐標(biāo)與圖像坐標(biāo)。設(shè)相機(jī)中的點(diǎn)P坐標(biāo)為(Xc,Yc,Zc),則相機(jī)坐標(biāo)與圖像坐標(biāo)的關(guān)系為:
(2)
(3)世界坐標(biāo)與相機(jī)坐標(biāo)。設(shè)點(diǎn)P的世界坐標(biāo)為(Xw,Yw,Zw),兩個(gè)坐標(biāo)系轉(zhuǎn)換可以通過(guò)正交單位旋轉(zhuǎn)矩陣R和平移向量矩陣T得到,則世界坐標(biāo)與相機(jī)坐標(biāo)的關(guān)系為
(3)
式中:M1為相機(jī)的外部參數(shù)。
(4)像素坐標(biāo)與世界坐標(biāo)。由式(1)~(3)可得像素坐標(biāo)與世界坐標(biāo)轉(zhuǎn)換關(guān)系為
式中:M0是相機(jī)的內(nèi)參數(shù),其中kx=x/dx,ky=y/dy。
由式(4)可知,只需要知道內(nèi)參數(shù)M0和外參數(shù)M1,就可以確定像素坐標(biāo)與世界坐標(biāo)映射關(guān)系,獲取內(nèi)外參數(shù)的方法就是相機(jī)標(biāo)定,將世界坐標(biāo)系與機(jī)器人坐標(biāo)系映射的關(guān)系是機(jī)器人標(biāo)定。
(1)相機(jī)標(biāo)定。本文搭建相機(jī)固定視覺(jué)系統(tǒng),利用如圖4所示的棋盤格標(biāo)定板,每個(gè)格子大小為20 mm,改變標(biāo)定板姿態(tài)和角度,對(duì)左右相機(jī)采集18張標(biāo)定圖像。
將采集的18張標(biāo)定圖像導(dǎo)入MATLAB的Stereo Camera Calibrator工具箱中,然后對(duì)標(biāo)定板進(jìn)行參數(shù)設(shè)定,通過(guò)圖像灰度化和二值化等預(yù)處理后進(jìn)行角點(diǎn)檢測(cè),最后通過(guò)角點(diǎn)的世界坐標(biāo)與像素坐標(biāo)以張正友標(biāo)定法[15]求解得到左右相機(jī)的內(nèi)參數(shù)矩陣。
左相機(jī)內(nèi)參數(shù)矩陣為:
(5)
右相機(jī)內(nèi)參數(shù)矩陣為:
(6)
每一張標(biāo)定圖對(duì)應(yīng)一組旋轉(zhuǎn)矢量和位移矢量的相機(jī)外部參數(shù),通過(guò)上述參數(shù)可計(jì)算得到右相機(jī)到左相機(jī)的旋轉(zhuǎn)矩陣:
(7)
右相機(jī)到左相機(jī)的位移矩陣:
(8)
由式(3)可得相機(jī)的外部參數(shù)M1為:
(9)
(2)機(jī)器人坐標(biāo)的標(biāo)定。機(jī)器人坐標(biāo)的標(biāo)定即是當(dāng)機(jī)器人末端執(zhí)行器焊槍移動(dòng)到標(biāo)定板左上內(nèi)角點(diǎn)時(shí),記錄此時(shí)機(jī)器人的3個(gè)方向的坐標(biāo),即可得到世界坐標(biāo)系原點(diǎn)。經(jīng)實(shí)驗(yàn)測(cè)得此時(shí)的機(jī)器人的坐標(biāo)為:
(10)
由式(1)~(10)可得像素坐標(biāo)(u,v)與機(jī)器人坐標(biāo)(Xr,Yr,Zr)的轉(zhuǎn)換關(guān)系為:
(11)
完成機(jī)器人和相機(jī)的坐標(biāo)系標(biāo)定以后,需要對(duì)相機(jī)采集的焊接件焊縫圖像進(jìn)行圖像預(yù)處理和焊縫中心線提取,這是機(jī)器人焊縫自主軌跡規(guī)劃的關(guān)鍵一步。
本文相機(jī)采集了2種類型的焊縫,如圖5所示,分別包括了直線型焊縫和曲線型焊縫,這2種焊縫能很好地模擬各種類型的焊縫。采集的圖像包含了各種額外信息,增大了計(jì)算量也增加了干擾信息,因此需要進(jìn)行圖像預(yù)處理,主要包括:圖像灰度化、ROI(提取感興趣區(qū)域)、直方圖均衡化、閾值分割、膨脹腐蝕及去干擾等操作,如圖6所示。
相機(jī)采集的圖像是由RGB三通道組成的彩色圖像,圖像灰度化是將三通道轉(zhuǎn)化為單通道,可以減少計(jì)算的工作量。相機(jī)和焊接區(qū)域是固定不變的,為了進(jìn)一步減少計(jì)算量,通過(guò)ROI提取感興趣的焊接件焊縫區(qū)域。直方圖均衡化可以增強(qiáng)圖像的對(duì)比度,突出焊接件的焊縫區(qū)域。閾值分割將焊接件焊縫的前景和背景二值化區(qū)分開(kāi),有利于后續(xù)焊縫特征的識(shí)別。通過(guò)圖6閾值分割結(jié)果可知,焊接件之間的有空隙且不連續(xù),因此需要通過(guò)形態(tài)學(xué)膨脹腐蝕操作使焊縫更加完整。膨脹腐蝕以后仍然有一些較小的干擾信息,通過(guò)計(jì)算各單獨(dú)的連通區(qū)域面積,對(duì)小于焊縫區(qū)域面積的區(qū)域進(jìn)行過(guò)濾。
經(jīng)過(guò)焊縫圖像預(yù)處理之后,需要對(duì)焊接件進(jìn)行特征識(shí)別,主要包括焊縫邊緣特征提取和焊縫中心線提取。
(1)焊縫邊緣特征提取。獲取焊縫邊緣特征是獲取焊縫中心線特征的基礎(chǔ)。經(jīng)過(guò)圖像預(yù)處理去干擾之后,圖像只剩焊縫特征區(qū)域信息,在獲取焊縫中心線特征之前,首先是獲取焊縫邊緣特征。常用的邊緣特征提取方法主要有Sobel、Roberts、Prewitt和Canny算子等,經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),Canny算子對(duì)焊縫的檢測(cè)效果較好,能克服一定噪聲影響,因此本文采用Canny算子對(duì)焊縫進(jìn)行邊緣特征提取,結(jié)果如圖7邊緣提取所示。
(2)焊縫中心線提取。經(jīng)過(guò)焊縫邊緣特征提取得到2條邊緣線,本文遍歷2條邊緣線所有像素,并記錄2條邊緣線像素的位置,通過(guò)同一行的所有像素的位置計(jì)算得到中心像素的坐標(biāo)值,即可得到焊縫中心線,效果如圖8所示。
經(jīng)過(guò)焊縫圖在識(shí)別焊縫中心線后可以得到數(shù)百個(gè)離散的像素坐標(biāo)點(diǎn),理論上可以把像素坐標(biāo)點(diǎn)直接轉(zhuǎn)換機(jī)器人坐標(biāo)并發(fā)給機(jī)器人,機(jī)器人根據(jù)焊接像素坐標(biāo)轉(zhuǎn)換的機(jī)器人坐標(biāo)進(jìn)行焊接作業(yè),焊接軌跡如圖9所示。
由圖9可知,機(jī)器人焊接運(yùn)行軌跡不夠光滑,這樣會(huì)導(dǎo)致機(jī)器人在焊接時(shí)產(chǎn)生抖動(dòng)的問(wèn)題,機(jī)器人會(huì)在過(guò)渡處出現(xiàn)劇烈的振動(dòng)和沖擊,影響焊槍的位移和速度的連續(xù)性,不符合焊接的連續(xù)性和穩(wěn)定性要求,降低了焊接的質(zhì)量。
為此,本文提出一種將離散的焊縫中心線像素坐標(biāo)點(diǎn)擬合為一種連續(xù)的多項(xiàng)式曲線函數(shù),以此作為機(jī)器人軌跡規(guī)劃的基礎(chǔ)。
本文多項(xiàng)式曲線擬合采用的線性最小二乘法求解,定義m次多項(xiàng)式擬合曲線函數(shù)為:
(14)
式中:r是未知系數(shù),x是自變量,若要求解該方程,需要求建立一個(gè)超定方程組,即方程的個(gè)數(shù)大于未知量個(gè)數(shù)的方程組為:
式(15)中,令
(16)
則式(15)可以簡(jiǎn)寫(xiě)為:
RX=Y
(17)
一般情況下,焊縫中心線點(diǎn)數(shù)遠(yuǎn)遠(yuǎn)大于未知量的個(gè)數(shù),所以式(17)一定存在解,但不是所有解都符合要求,只有使得n個(gè)點(diǎn)的(xi,yi)與曲線f(x)的距離達(dá)到殘差模最小時(shí),才滿足條件,如式(18):
(18)
即使R矩陣滿足式(18),使得ε的值達(dá)到最小,則該R矩陣就是超定方程的最小殘差模的解。
本文采用MATLAB對(duì)焊縫軌跡規(guī)劃進(jìn)行仿真,仿真數(shù)據(jù)采用實(shí)驗(yàn)獲取的真實(shí)數(shù)據(jù),包括兩條具有代表性的焊縫,分別是直線型和曲線型焊縫,其他各種復(fù)雜的焊縫可以由這兩種曲線組成,實(shí)驗(yàn)采集的原始焊縫如圖10所示的原始數(shù)據(jù)軌跡,分別是直線型和曲線型原始數(shù)據(jù)軌跡。
采用多項(xiàng)式擬合焊縫軌跡,多項(xiàng)式軌跡規(guī)劃可以提高機(jī)器人的運(yùn)行效率和平滑性,且次數(shù)越高,擬合精度越好。但是,次數(shù)高時(shí)軌跡容易出現(xiàn)龍格現(xiàn)象,在擬合軌跡的兩端出現(xiàn)較大波動(dòng)。故為平衡擬合精度和出現(xiàn)龍格現(xiàn)象,本文通過(guò)求解多項(xiàng)式擬合曲線型殘差模(擬合值和實(shí)際值差的絕對(duì)值)的最小值,選出擬合曲線最優(yōu)的次數(shù),實(shí)驗(yàn)結(jié)果如圖10所示。圖10a中,直線型焊縫殘差最優(yōu)次數(shù)出現(xiàn)在48次方,圖10b中,曲線型焊縫殘差最優(yōu)次數(shù)出現(xiàn)在27次方,程序可根據(jù)殘差的最小值,選出最優(yōu)的擬合曲線次數(shù)。
根據(jù)圖10選出的最優(yōu)擬合曲線次數(shù),本實(shí)驗(yàn)選取5階多項(xiàng)式作為和最優(yōu)擬合曲線次數(shù)的對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如圖11所示。通過(guò)實(shí)驗(yàn)可以發(fā)現(xiàn),圖11a直線型5次和48次擬合曲線軌跡大致相同,但是48次擬合曲線更符合波動(dòng)的焊縫軌跡,并且殘差模小于5次的擬合曲線殘差模;圖11b曲線型擬合曲線,27次多項(xiàng)式擬合曲線軌跡明顯比5次的要好,基本符合焊縫軌跡,并且兩者殘差模相差較大,說(shuō)明27次擬合曲線更符合曲線焊縫軌跡。
為驗(yàn)證算法的正確性,選取圖5所示的Q35不銹鋼板曲線焊接件作為焊接實(shí)驗(yàn)對(duì)象,其尺寸為20 cm×20 cm,厚2 mm,其焊接面寬約8 mm。焊接技術(shù)采用氬弧焊,主要工藝參數(shù)如表1所示。
表1 焊接技術(shù)參數(shù)
工控機(jī)通過(guò)相機(jī)采集圖像,使用OpenCV和VC++實(shí)現(xiàn)焊縫圖像預(yù)處理、焊縫中心線提取及焊接路徑規(guī)劃,通過(guò)式(4)將軌跡規(guī)劃所得路徑點(diǎn)的像素坐標(biāo)轉(zhuǎn)換為機(jī)器人坐標(biāo),并通過(guò)以太網(wǎng)發(fā)送至機(jī)器人,引導(dǎo)弧焊機(jī)器人完成焊接任務(wù),焊接效果如圖12所示。
為驗(yàn)證焊接的精度,在進(jìn)行焊接實(shí)驗(yàn)之前,等間距選取待焊接的6個(gè)測(cè)量坐標(biāo)點(diǎn),測(cè)得其實(shí)際物理坐標(biāo)值,稱為實(shí)測(cè)坐標(biāo)。同時(shí),測(cè)量焊槍經(jīng)過(guò)6個(gè)點(diǎn)坐標(biāo)值,稱為計(jì)算坐標(biāo)。最后,將實(shí)測(cè)坐標(biāo)值減去計(jì)算坐標(biāo)值,得到弧焊機(jī)器人在焊接過(guò)程中偏離實(shí)際焊接點(diǎn)的誤差,稱為焊接誤差?;『笝C(jī)器人的焊接誤差實(shí)驗(yàn)結(jié)果如表2所示。
從表2可以看出,通過(guò)本文設(shè)計(jì)的焊縫軌跡識(shí)別及路徑生成系統(tǒng)得到的計(jì)算坐標(biāo)值與實(shí)測(cè)坐標(biāo)值,在X、Y、Z方向上的最大焊接誤差值分別是0.30 mm、0.28 mm、0.21 mm,3個(gè)方向上的平均絕對(duì)值誤差分別是0.247 mm、0.210 mm、0.143 mm。誤差數(shù)據(jù)表明,弧焊機(jī)器人焊槍在3個(gè)方向上的最大誤差值不超過(guò)0.30 mm,本文設(shè)計(jì)的焊縫軌跡識(shí)別及路徑生成系統(tǒng)滿足焊接精度要求。
表2 焊接誤差
本文在傳統(tǒng)弧焊機(jī)器人的基礎(chǔ)上,提出一種焊縫軌跡識(shí)別及路徑生成系統(tǒng)。經(jīng)過(guò)實(shí)驗(yàn)驗(yàn)證可以得出,該算法主要有以下優(yōu)點(diǎn):
(1)本文設(shè)計(jì)的焊縫中心線提取的算法,可以實(shí)現(xiàn)復(fù)雜曲線焊縫軌跡識(shí)別。
(2)根據(jù)焊縫曲線的復(fù)雜度,本文設(shè)計(jì)了自適應(yīng)多項(xiàng)式擬合函數(shù),可根據(jù)殘差模的最小值,選出最優(yōu)的多項(xiàng)式次數(shù)。
(3)通過(guò)坐標(biāo)轉(zhuǎn)換模型把擬合曲線的像素坐標(biāo)轉(zhuǎn)換成機(jī)器人坐標(biāo),引導(dǎo)機(jī)器完成焊接作業(yè)。本文提出焊縫軌跡識(shí)別及路徑生成系統(tǒng)最大誤差不超過(guò)0.30 mm,滿足焊接精度要求,為類似軌跡識(shí)別及路徑生成領(lǐng)域提供了技術(shù)參考。