陳 琳,李權(quán)文,付 鈺,李松莛,潘海鴻,黃龍鵬
(1.廣西大學(xué)機械工程學(xué)院,南寧 530004;2.廣西工業(yè)技師學(xué)院機械系,南寧 530007)
相貫線工件是一種擁有復(fù)雜空間曲線的工件,廣泛應(yīng)用于石油、化工、供熱、消防等領(lǐng)域,相貫線人工示教焊接軌跡難度大,耗時耗力,同時人工示教的示教點往往不均勻,不利于機器人和變位機進行軌跡插補[1-2]。所以,相貫線工件坐標系的標定決定了離線編程時相貫線軌跡規(guī)劃的準確性。研究人員關(guān)于機器人與工件坐標系的標定方法進行了大量的研究工作,其主要方法可分為兩類:附加測量設(shè)備標定法和固定基準點標定法。
(1)附加測量設(shè)備標定法:周祥[3]采用了基于高精度位置傳感器(PSD)的工件坐標系標定方法。將PSD傳感器裝在2自由度云臺上進行了工件坐標系標定實驗,實際測試的標定精度較高。林巨廣等[4]提出一種利用百分表位移測量裝置對工件坐標系的標定方法。ZHANG等[5]提出一種使用氣壓傳感器和激光傳感器工件姿態(tài)估計的工業(yè)方法。(2)固定基準點標定法:田啟良等[6]提出了一種快速標定工件坐標系的方法。首先在工件上建立合適的工件坐標系用于標定,然后控制焊槍移動到工件上不共線的3個點,記錄焊槍的位姿信息,最后通過工具坐標系間接求出工件坐標系與機器人基坐標系之間的位姿變換矩陣。LU等[7]提出一種雙機器人系統(tǒng)中工件坐標系的自動同步方法,通過測量3個非共線標定點的坐標值來實現(xiàn)兩個機器人基坐標系之間的變換。LIU等[8]提出了一種利用雙機器人對工件坐標系進行標定的方法。通過測量工作空間中任意3個非共線點的坐標值,計算得到兩個機器人基坐標系之間的平移和旋轉(zhuǎn)矩陣。
針對以上研究中存在的標定步驟復(fù)雜,精度不高的問題,提出一種使用同軸度法標定相貫線工件坐標系,該方法建立相貫線工件坐標系模型;標定過程中均勻采集相貫線工件上的標定點,并考慮不同方位的誤差影響;使用遺傳算法[9]求解出最優(yōu)軸線方向向量,最后實現(xiàn)相貫線工件和機器人基座標系之間的位姿標定。
相貫線工件是由兩個獨立的圓柱管相交所組成的工件,一般將橫向放置的圓柱管稱為主管,將豎直放置的圓柱管稱為支管。對于一般形式的相貫線工件通常用主管半徑R、支管半徑r、偏心距σ和相貫角δ表示。由于兩個管軸線的公垂線與主管軸線和支管軸線分別交于一點(圖1),將這兩點分別定義為主管坐標系原點O1和支管坐標系原點O2。在主管坐標系{O1}中,將豎直向上的方向定義為主管坐標系Z軸正方向;水平向右定義為主管坐標系Y軸正方向;X軸方向可由右手螺旋定則判斷出。同理建立支管坐標系{O2}。
圖1 通用相貫線工件坐標系
建立相貫線工件坐標系前,需首先確定主管和支管坐標系,而主管和支管坐標系的建立首先需要確定主管和支管的軸線。通過機器人TCP點分別在主管和支管上各取3個標定點,根據(jù)3點確定一個圓,求解出空間圓的圓心,同時也可求解出空間平面的法向量;通過法向量與圓心即可求解出圓柱的軸線方程。但是在實際焊接加工過程中,會存在以下3個誤差:①主管和支管在加工過程中會存在加工誤差,使得主管和支管都不是標準的空心圓柱體;②在主管和支管上各取3個標定點時,存在測量誤差;③實際測量情況很難保證3個點所確定的平面和軸線垂直,此時以空間圓代替空間橢圓也會造成計算的誤差(圖2)。因此,提出一種基于同軸度法的機器人與相貫線工件坐標系標定方法。
圖2 測量點位置誤差
假設(shè)相貫線工件主管的軸線記為l1,且軸線的方向向量為(l,m,n),顯然方向向量應(yīng)滿足:
l2+m2+n2=1
(1)
假設(shè)軸線l1過點S0(x0,y0,z0),圓柱管上的標定點的位置坐標記為Si(xi,yi,zi),1≤i≤k。根據(jù)空間兩點的距離公式可知,S0和Si的距離di大小為:
(2)
S0和標定Si可確定空間向量S0Si,可表示為(xi-x0,yi-y0,zi-z0),1≤i≤k。
圖3為測量點距離計算模型,在圖3中空間向量S0Si與軸線l1在空間中存在夾角,假設(shè)夾角記為αi,1≤i≤k,夾角的余弦值大小為:
圖3 測量點距離計算
(3)
將式(1)代入式(3)中得到式(4):
(4)
標定點Si到圓柱管軸線l1的距離Di大小為:
(5)
將式(4)代入式(5)中得到式(6):
(6)
假設(shè)主管圓柱半徑為R,因誤差的不可避免,Di與R的值會存在偏差,需在空間中找出最優(yōu)軸線作為主管軸線(圖4)。在該軸線上,所有Di與R距離的和達到最小,即使得式(7)的值最小。
圖4 同軸度法擬合圓柱軸線
(7)
求解式(7)的最小值屬于非線性函數(shù)求最值問題,使用遺傳算法進行求解。
式(7)出現(xiàn)根號以及絕對值運算,計算的復(fù)雜性不適合作為適應(yīng)度函數(shù)??煽紤]用平方運算代替根號和絕對值運算,因此使用式(8)作為遺傳算法的適應(yīng)度函數(shù)。
(8)
使用遺傳算法可計算出最優(yōu)x0、y0、z0、l、m、n和R的值,此時軸線l1的方程為:
(9)
(10)
假設(shè)l1和l2的公垂線為l,其方向向量為(L,M,N),且過點S(X,Y,Z)(圖5)。方向向量(L,M,N)也為相貫線工件坐標系X軸的方向向量,(l,m,n)為相貫線工件坐標系Y軸的方向向量,根據(jù)右手螺旋定則可確定相貫線工件坐標系Z軸的方向向量。
圖5 通用相貫線工件坐標系方向向量求解
根據(jù)空間直線方程的定義,公垂線l的方程可表示為:
(11)
根據(jù)公垂線的定義,l1與l2均和l垂直,所以直線l的方向向量可由直線l1的方向向量與l2的方向向量叉乘算出。因此,直線l的方向向量為:
(L,M,N)=(mn′-nm′,nl′-ln′,lm′-ml′)
(12)
因為公垂線與其中任何一條軸線都是共面的,根據(jù)共同面內(nèi)三條直線行列式為零這一基本定理,可得式(13)和式(14):
(13)
(14)
點S(X,Y,Z)是直線上任意一點,取X=1,由式(13)和式(14)可求解出Z和Y的表達式為:
(15)
(16)
圖5中相貫線工件坐標系的原點O0為直線l和l1的交點,假設(shè)原點O0坐標為(O0x,O0y,O0z),由空間兩直線的交點公式,計算出O0x、O0y和O0z的表達式為:
(17)
支管坐標系原點O2為直線l和l2的交點,假設(shè)O2坐標為(O2x,O2y,O2z),根據(jù)空間兩直線的交點公式,可計算得出O2x、O2y和O2z為:
(18)
偏心距σ為原點O0和原點O2的距離為:
(19)
相貫角δ空間直線l1和l2的夾角為:
(20)
相貫線工件坐標系Z軸的方向向量可由(L,M,N)和(l,m,n)叉乘計算得出:
(Mn-Nm,Nl-Ln,Lm-Ml)
(21)
綜合式(12)、式(17)、式(21)和主管軸線方向向量(l,m,n),機器人與相貫線工件坐標系的位姿變換矩陣為:
(22)
自主搭建焊接實驗平臺(圖6)主要由機器人、雙軸變位機、機器人電氣控制柜、雙軸變位機電氣控制柜、相貫線工件、工控機、示教器和控制軟件組成。
圖6 焊接工作站硬件圖
工業(yè)中常用六點法標定圓柱管件的軸線(圖7),其是假設(shè)3個點在同一個圓面上,為標定的精確性,將相貫線工件豎直。在主管上取點時保持機器人末端焊槍TCP在Y方向上不發(fā)生移動,只通過移動X和Z在主管上得到3個標定點。
圖7 六點法標定工件坐標系
圖7a為標定主管軸線示意圖,在上位機中讀取主管上3個標定點坐標,如表1所示。
表1 主管上3個標定點位置 (mm)
三點確定主管上一個圓面,可計算出主管半徑為86.572 7 mm,所確定圓心為(1201.8440,48.3970,810.3428),平面方向向量為(0.0,-1.0,0.0)。
同理,如圖7b所示,得到支管上如表2所示的3個標定點坐標。
表2 支管上3個標定點位置 (mm)
計算得支管半徑為69.597 7 mm,所確定圓心為(1191.8777,-37.4868,942.9770),平面的方向向量為(0.0,0.0,1.0)。
根據(jù)主管和支管的參數(shù),由式(22)可得到相貫線工件坐標系的圓心坐標為(1201.8440,-37.4868,810.3428),相貫角δ=90.0°,偏心距σ=9.966 mm,相貫線工件坐標系相對于機器人基坐標系的位姿變換矩陣為:
采用同軸度法分別標定主管和支管時不需要考慮標定點是否在一個圓平面上,因此可隨意在工件表面上取點。保持變位機和相貫線工件均在初始位置,移動機器人的TCP點,使其可以觸碰到相貫線工件主管上的不同位置。
如圖8a所示標定相貫線主管,通過上位機軟件記錄10次不同的位置值,如表3所示。
圖8 同軸度法標定工件坐標系
表3 主管上標定點位置 (mm)
將數(shù)據(jù)代入式(8)中,使用遺傳算法求解,設(shè)x0、y0、z0、l、m、n和R的閾值為0.3,迭代收斂閾值為兩次迭代間差值小于0.01。得到主管半徑R=88.936 9 mm,其軸線的方向向量為(0.0219,-0.9997,0.0110),且過點(1194.54,-41.21,807.73)。
同理,如圖8b所示,標定相貫線支管記錄10次不同的位置值,并記錄在表4中。
表4 支管上標定點位置 (mm)
將主管和支管的參數(shù)代入式(17)、式(19)、式(20)和式(22)中計算得到相貫線工件坐標系的圓心坐標為(1191.3318,-38.4284,954.8868),相貫角δ=91.638 9°,偏心距σ=10.358 8 mm,相貫線工件坐標系相對于機器人基坐標系的位姿變換矩陣為:
在6R機器人末端焊槍上裝上焊縫跟蹤系統(tǒng)(圖9)對相貫線工件上的焊點進行掃描,得到焊點在機器人基座標系下的位姿,最終驗證標定得到的相貫線工件坐標系的精度。
圖9 焊縫跟蹤系統(tǒng)實物圖 圖10 焊縫跟蹤系統(tǒng)掃描焊縫
在相貫線工件上取φ∈[0,π/2]區(qū)間中的焊縫,圖10a為激光線掃射的起點,此時φ為0°;圖10b~圖10e為激光線掃射的中間點,焊縫跟蹤系統(tǒng)與焊縫的距離大致相同;圖10f為激光線掃射的終點,此時φ為90°。
表5為焊縫跟蹤系統(tǒng)的技術(shù)參數(shù)。
表5 焊縫跟蹤系統(tǒng)技術(shù)參數(shù)
使用焊縫跟蹤系統(tǒng)掃描相貫線工件上的焊點,與六點法和同軸度法計算得到的焊點位置進行比較,得到結(jié)果如表6所示。
表6 兩種標定方法下相貫線焊接路徑精度對比
從平均誤差和方差上看,基于同軸度法生成的焊接路徑在X、Y和Z方向上誤差均小于基于六點法生成的焊接路徑,基于同軸度法生成的路徑在X和Z方向上的平均誤差約為1 mm。這表明基于同軸度法生成的焊接路徑精度更高,數(shù)據(jù)波動也更小。
為解決相貫線工件標定復(fù)雜,精度不高的問題,提出使用同軸度法對相貫線工件坐標系進行標定。該方法建立了相貫線工件的一般數(shù)學(xué)模型;標定過程中在相貫線工件上取點較均勻,使用同軸度法擬合圓柱軸線方程,并使用遺傳算法求解出最優(yōu)軸線方向向量,從而得到最優(yōu)相貫線工件坐標系;在機器人與變位機實驗平臺進行標定實驗,并通過激光跟蹤系統(tǒng)識別的焊縫位置與同軸度法和六點法計算的焊縫位置進行對比,判定基于同軸度法生成的理論相貫線焊接路徑的精度較高,證明基于同軸度法的機器人與相貫線工件坐標系位姿標定的正確性。