劉東來 崔亞飛 羅 輝 鄧子林
(永州職業技術學院智能制造與建筑工程學院,湖南 永州425100)
隨著“德國工業4.0”、“中國制造2025”等[1-4]戰略的出臺,傳統制造業正逐步進入智能制造時代,其中“中國制造2025”明確指出我國制造業要向智能化、自動化方向發展。焊接技術作為制造業中的重要一環,傳統的人工焊接方式已逐漸被焊接機器人所淘汰。目前的焊接機器人系統前期準備相當繁瑣,必須進行人工手動示教,然后再實現焊接機器人焊接作業。當焊接對象發生變化時,需要重新示教,對于日益復雜與多樣化的焊接需求,這種焊接方式無法感知外界環境的變化,自主適應變化能力不足,智能化和自動化水平不高,生產效率較低,其實現焊接過程智能化和自動化將成為必然趨勢[5-8]。近年來,機器視覺技術快速發展,已廣泛應用于各個領域,將機器視覺引入焊接機器人系統可以充當焊接機器人的眼睛,提高焊接機器人感知外界環境變化的能力[9]。焊接機器人有了感知能力后,需根據焊接對象的變化自主實現焊接路徑規劃,以滿足多樣化小批量生產的要求。
針對焊縫識別及軌跡規劃的問題,國內外學者開展了大量研究。Kiddee P等人[10]利用線激光和單目視覺,通過霍夫變換獲得激光條紋后,采用最遠點算法獲得焊縫中心坐標。Dinham M等人[11]通過相機獲取焊縫圖像,在圖像預處理后,采用Sobel算子實現焊縫的邊緣檢測,從而實現焊縫識別。Mulik P B等人[12]提出了一種基于進化算法的機器人最優軌跡規劃算法,該方法同時進行多準則優化,采用B樣條函數生成機器人運行軌跡。李宇鵬[13]等人提出采用馬鞍形曲線插補與示教相結合的方式實現軌跡規劃算法,該方法很好地實現了對焊槍運動軌跡的控制。陳子健等人[14]提出了一種三角網格特征提取算法實現對焊縫的識別,同時使用三次樣條曲線插值獲取機器人焊接軌跡。以上研究雖然解決了直線、圓等簡單焊縫的問題,但對于復雜的焊縫則有一定的局限性,自主路徑規劃能力有待提高。
針對復雜曲線焊縫的焊接作業問題,本文設計了一種基于機器視覺的弧焊機器人系統,該系統通過視覺采集焊縫圖像,之后進行圖像預處理、焊縫中心線識別、焊縫軌跡生成、坐標轉換等操作,實現復雜焊縫路徑自主規劃能力,提高弧焊機器人的智能化和自動化水平。
工業機器人焊接實驗系統如圖1所示,主要由工業相機、工控機以及工業機器人3部分組成。采用Cognex工業相機采集焊縫圖像,工控機用于實現焊縫識別以及路徑生成算法,六軸工業機器人用于執行焊接操作,通過以太網實現各部分間的信息傳遞。

本文所構建的工業機器人焊接系統本質上是一個運動控制系統,主要包括了控制器、執行器、被控對象以及檢測裝置4部分。被控對象為工業機器人末端安裝的焊槍,被控量是焊槍的位姿與速度,執行器為工業機器人,控制器即控制機器人運動的裝置,檢測裝置則由傳感器組成,用于焊縫的檢測識別,如圖2所示。

焊接機器人焊接的前提是通過雙目相機拍攝焊件圖像,提取出焊件的三維信息坐標,才能引導末端焊搶完成焊接任務。因此,首要任務是建立像素坐標、圖像坐標、相機坐標和世界坐標之間的坐標系轉換關系,4個坐標系的關系如圖3所示。

(1)像素坐標與圖像坐標。圖像坐標系u-v的原點為Op,橫坐標為u表示圖像所在行,縱坐標為v表示圖像所在列;圖像坐標系x-y的原點為Om,dx和dy分布表示每個像素在橫縱坐標軸的物理尺寸,如圖3所示像素點P坐標(u0,v0),則圖像坐標系與像素坐標系的關系為
(1)
(2)相機坐標與圖像坐標。設相機中的點P坐標為(Xc,Yc,Zc),則相機坐標與圖像坐標的關系為:
(2)
(3)世界坐標與相機坐標。設點P的世界坐標為(Xw,Yw,Zw),兩個坐標系轉換可以通過正交單位旋轉矩陣R和平移向量矩陣T得到,則世界坐標與相機坐標的關系為
(3)
式中:M1為相機的外部參數。
(4)像素坐標與世界坐標。由式(1)~(3)可得像素坐標與世界坐標轉換關系為
式中:M0是相機的內參數,其中kx=x/dx,ky=y/dy。
由式(4)可知,只需要知道內參數M0和外參數M1,就可以確定像素坐標與世界坐標映射關系,獲取內外參數的方法就是相機標定,將世界坐標系與機器人坐標系映射的關系是機器人標定。
(1)相機標定。本文搭建相機固定視覺系統,利用如圖4所示的棋盤格標定板,每個格子大小為20 mm,改變標定板姿態和角度,對左右相機采集18張標定圖像。

將采集的18張標定圖像導入MATLAB的Stereo Camera Calibrator工具箱中,然后對標定板進行參數設定,通過圖像灰度化和二值化等預處理后進行角點檢測,最后通過角點的世界坐標與像素坐標以張正友標定法[15]求解得到左右相機的內參數矩陣。
左相機內參數矩陣為:
(5)
右相機內參數矩陣為:
(6)
每一張標定圖對應一組旋轉矢量和位移矢量的相機外部參數,通過上述參數可計算得到右相機到左相機的旋轉矩陣:
(7)
右相機到左相機的位移矩陣:
(8)
由式(3)可得相機的外部參數M1為:

(9)
(2)機器人坐標的標定。機器人坐標的標定即是當機器人末端執行器焊槍移動到標定板左上內角點時,記錄此時機器人的3個方向的坐標,即可得到世界坐標系原點。經實驗測得此時的機器人的坐標為:

(10)
由式(1)~(10)可得像素坐標(u,v)與機器人坐標(Xr,Yr,Zr)的轉換關系為:
(11)
完成機器人和相機的坐標系標定以后,需要對相機采集的焊接件焊縫圖像進行圖像預處理和焊縫中心線提取,這是機器人焊縫自主軌跡規劃的關鍵一步。
本文相機采集了2種類型的焊縫,如圖5所示,分別包括了直線型焊縫和曲線型焊縫,這2種焊縫能很好地模擬各種類型的焊縫。采集的圖像包含了各種額外信息,增大了計算量也增加了干擾信息,因此需要進行圖像預處理,主要包括:圖像灰度化、ROI(提取感興趣區域)、直方圖均衡化、閾值分割、膨脹腐蝕及去干擾等操作,如圖6所示。

相機采集的圖像是由RGB三通道組成的彩色圖像,圖像灰度化是將三通道轉化為單通道,可以減少計算的工作量。相機和焊接區域是固定不變的,為了進一步減少計算量,通過ROI提取感興趣的焊接件焊縫區域。直方圖均衡化可以增強圖像的對比度,突出焊接件的焊縫區域。閾值分割將焊接件焊縫的前景和背景二值化區分開,有利于后續焊縫特征的識別。通過圖6閾值分割結果可知,焊接件之間的有空隙且不連續,因此需要通過形態學膨脹腐蝕操作使焊縫更加完整。膨脹腐蝕以后仍然有一些較小的干擾信息,通過計算各單獨的連通區域面積,對小于焊縫區域面積的區域進行過濾。

經過焊縫圖像預處理之后,需要對焊接件進行特征識別,主要包括焊縫邊緣特征提取和焊縫中心線提取。
(1)焊縫邊緣特征提取。獲取焊縫邊緣特征是獲取焊縫中心線特征的基礎。經過圖像預處理去干擾之后,圖像只剩焊縫特征區域信息,在獲取焊縫中心線特征之前,首先是獲取焊縫邊緣特征。常用的邊緣特征提取方法主要有Sobel、Roberts、Prewitt和Canny算子等,經實驗發現,Canny算子對焊縫的檢測效果較好,能克服一定噪聲影響,因此本文采用Canny算子對焊縫進行邊緣特征提取,結果如圖7邊緣提取所示。
(2)焊縫中心線提取。經過焊縫邊緣特征提取得到2條邊緣線,本文遍歷2條邊緣線所有像素,并記錄2條邊緣線像素的位置,通過同一行的所有像素的位置計算得到中心像素的坐標值,即可得到焊縫中心線,效果如圖8所示。

經過焊縫圖在識別焊縫中心線后可以得到數百個離散的像素坐標點,理論上可以把像素坐標點直接轉換機器人坐標并發給機器人,機器人根據焊接像素坐標轉換的機器人坐標進行焊接作業,焊接軌跡如圖9所示。

由圖9可知,機器人焊接運行軌跡不夠光滑,這樣會導致機器人在焊接時產生抖動的問題,機器人會在過渡處出現劇烈的振動和沖擊,影響焊槍的位移和速度的連續性,不符合焊接的連續性和穩定性要求,降低了焊接的質量。
為此,本文提出一種將離散的焊縫中心線像素坐標點擬合為一種連續的多項式曲線函數,以此作為機器人軌跡規劃的基礎。
本文多項式曲線擬合采用的線性最小二乘法求解,定義m次多項式擬合曲線函數為:
(14)
式中:r是未知系數,x是自變量,若要求解該方程,需要求建立一個超定方程組,即方程的個數大于未知量個數的方程組為:
式(15)中,令
(16)
則式(15)可以簡寫為:
RX=Y
(17)
一般情況下,焊縫中心線點數遠遠大于未知量的個數,所以式(17)一定存在解,但不是所有解都符合要求,只有使得n個點的(xi,yi)與曲線f(x)的距離達到殘差模最小時,才滿足條件,如式(18):
(18)
即使R矩陣滿足式(18),使得ε的值達到最小,則該R矩陣就是超定方程的最小殘差模的解。
本文采用MATLAB對焊縫軌跡規劃進行仿真,仿真數據采用實驗獲取的真實數據,包括兩條具有代表性的焊縫,分別是直線型和曲線型焊縫,其他各種復雜的焊縫可以由這兩種曲線組成,實驗采集的原始焊縫如圖10所示的原始數據軌跡,分別是直線型和曲線型原始數據軌跡。
采用多項式擬合焊縫軌跡,多項式軌跡規劃可以提高機器人的運行效率和平滑性,且次數越高,擬合精度越好。但是,次數高時軌跡容易出現龍格現象,在擬合軌跡的兩端出現較大波動。故為平衡擬合精度和出現龍格現象,本文通過求解多項式擬合曲線型殘差模(擬合值和實際值差的絕對值)的最小值,選出擬合曲線最優的次數,實驗結果如圖10所示。圖10a中,直線型焊縫殘差最優次數出現在48次方,圖10b中,曲線型焊縫殘差最優次數出現在27次方,程序可根據殘差的最小值,選出最優的擬合曲線次數。

根據圖10選出的最優擬合曲線次數,本實驗選取5階多項式作為和最優擬合曲線次數的對比實驗,實驗結果如圖11所示。通過實驗可以發現,圖11a直線型5次和48次擬合曲線軌跡大致相同,但是48次擬合曲線更符合波動的焊縫軌跡,并且殘差模小于5次的擬合曲線殘差模;圖11b曲線型擬合曲線,27次多項式擬合曲線軌跡明顯比5次的要好,基本符合焊縫軌跡,并且兩者殘差模相差較大,說明27次擬合曲線更符合曲線焊縫軌跡。

為驗證算法的正確性,選取圖5所示的Q35不銹鋼板曲線焊接件作為焊接實驗對象,其尺寸為20 cm×20 cm,厚2 mm,其焊接面寬約8 mm。焊接技術采用氬弧焊,主要工藝參數如表1所示。

表1 焊接技術參數
工控機通過相機采集圖像,使用OpenCV和VC++實現焊縫圖像預處理、焊縫中心線提取及焊接路徑規劃,通過式(4)將軌跡規劃所得路徑點的像素坐標轉換為機器人坐標,并通過以太網發送至機器人,引導弧焊機器人完成焊接任務,焊接效果如圖12所示。

為驗證焊接的精度,在進行焊接實驗之前,等間距選取待焊接的6個測量坐標點,測得其實際物理坐標值,稱為實測坐標。同時,測量焊槍經過6個點坐標值,稱為計算坐標。最后,將實測坐標值減去計算坐標值,得到弧焊機器人在焊接過程中偏離實際焊接點的誤差,稱為焊接誤差。弧焊機器人的焊接誤差實驗結果如表2所示。
從表2可以看出,通過本文設計的焊縫軌跡識別及路徑生成系統得到的計算坐標值與實測坐標值,在X、Y、Z方向上的最大焊接誤差值分別是0.30 mm、0.28 mm、0.21 mm,3個方向上的平均絕對值誤差分別是0.247 mm、0.210 mm、0.143 mm。誤差數據表明,弧焊機器人焊槍在3個方向上的最大誤差值不超過0.30 mm,本文設計的焊縫軌跡識別及路徑生成系統滿足焊接精度要求。

表2 焊接誤差
本文在傳統弧焊機器人的基礎上,提出一種焊縫軌跡識別及路徑生成系統。經過實驗驗證可以得出,該算法主要有以下優點:
(1)本文設計的焊縫中心線提取的算法,可以實現復雜曲線焊縫軌跡識別。
(2)根據焊縫曲線的復雜度,本文設計了自適應多項式擬合函數,可根據殘差模的最小值,選出最優的多項式次數。
(3)通過坐標轉換模型把擬合曲線的像素坐標轉換成機器人坐標,引導機器完成焊接作業。本文提出焊縫軌跡識別及路徑生成系統最大誤差不超過0.30 mm,滿足焊接精度要求,為類似軌跡識別及路徑生成領域提供了技術參考。