紀(jì)慧君 苗鴻賓② 李孟虔 雙 立 賈 磊
(①中北大學(xué)機械工程學(xué)院,山西 太原 030051;②山西省深孔加工工程技術(shù)研究中心,山西 太原 030051)
雙機器人坐標(biāo)系標(biāo)定,包含機器人自身參數(shù)的標(biāo)定和雙機器人協(xié)調(diào)運動系統(tǒng)的標(biāo)定。前者主要指單個機器人工具坐標(biāo)系的標(biāo)定,后者指兩個機器人基坐標(biāo)系的標(biāo)定。由于機器人運動學(xué)建模中其基坐標(biāo)系位于機器人內(nèi)部,無法通過直接的手段測量兩個機器人基坐標(biāo)系之間的關(guān)系。與單機器人標(biāo)定相比,雙機器人標(biāo)定指通過特定方法得到兩個機器人基坐標(biāo)系之間的位姿變換矩陣。由于非接觸式標(biāo)定過程復(fù)雜、設(shè)備昂貴,接觸式標(biāo)定的定位精度不夠,目前還沒有大范圍使用的雙機器人標(biāo)定算法。
為了解決多工作任務(wù)下頻繁更換末端執(zhí)行器帶來的精度問題,需要對工具坐標(biāo)系進行標(biāo)定,其實質(zhì)就是確定機器人末端法蘭坐標(biāo)系與機器人工具坐標(biāo)系二者之間的關(guān)系[1]。一般通過使用標(biāo)定針與標(biāo)定臺的組合可以滿足高精度要求,使用標(biāo)定針當(dāng)作機器人的末端執(zhí)行器,把標(biāo)定針在笛卡爾坐標(biāo)系中固連的坐標(biāo)系作為工具坐標(biāo)系(tool coordinate system,TCS),這個工具坐標(biāo)系的原點叫做工具中心點(tool center poin,TCP)。為了方便計算,把 TCP固定在標(biāo)定針的尖端,TCS中Z軸沿著標(biāo)定針指向的方向,可以做橫滾運動;Y方向沿著機器人末端側(cè)面的方向,可以做俯仰運動;X軸根據(jù)右手定則確定,如圖1所示。
單機器人標(biāo)定原理已經(jīng)相對成熟。常用的有三點標(biāo)定法、四點標(biāo)定法和五點標(biāo)定法[2-3],主要原理是操縱機器人使其末端執(zhí)行器以不同的姿態(tài)接觸空間中的多個標(biāo)定點,讀取此刻的機器人參數(shù),采用四點標(biāo)定法必須規(guī)定工具坐標(biāo)系的中心位置。為了便于操作,故將其定義在標(biāo)定針尖端,通過移動機器人標(biāo)定針尖端以不同的姿態(tài)到達標(biāo)定臺中心4次。然后定義工具坐標(biāo)系XYZ軸方向以及工具坐標(biāo)系的XOY平面,4種位姿方向加上一次X軸平移和XOY面移動共同約束了工具坐標(biāo)系的姿態(tài)以及原點的位置。四點標(biāo)定如圖2所示。
雙機器人標(biāo)定的核心是通過矩陣變換確定兩個機器人的位置關(guān)系[4]。由于非接觸式標(biāo)定操作過程復(fù)雜、容易引入新的誤差且成本較高故不予考慮。在接觸式標(biāo)定中學(xué)者們普遍采用的是三點“握手”標(biāo)定法或者空間投影法[5-7],這些方法雖然可以得到相對準(zhǔn)確的雙機器人基坐標(biāo)系之間的關(guān)系,但是三點“握手”標(biāo)定法的操作過程相較復(fù)雜,需要變換機器人各個關(guān)節(jié)角度進行標(biāo)定,空間投影法計算過程繁瑣,計算量大?;谝陨蠁栴}提出了一種操作簡單、計算量少且滿足精度的雙機器人基坐標(biāo)系標(biāo)定方法。
雙機器人基坐標(biāo)系標(biāo)定的前提是完成單機器人自身的建模與標(biāo)定。首先在兩個機器人末端分別安裝標(biāo)定針和標(biāo)定臺,規(guī)定主機器人安裝標(biāo)定臺,從機器人安裝標(biāo)定針。然后按照第1節(jié)中的描述完成每一個機器人自標(biāo)定。主從機器人標(biāo)定針和標(biāo)定臺按圖3所示相互配合。
為了簡化計算,規(guī)定從機器人除關(guān)節(jié)1外,其余關(guān)節(jié)不動。通過移動從機器人關(guān)節(jié)1旋轉(zhuǎn)3次,得到其末端TCP的3個位姿點,記為:
R2Pi=(R2xi,R2yi,R2zi),i=1,2,3
同時分別示教主機器人末端TCP到達R2Pi點,得到在主機器人基坐標(biāo)系下的3個對應(yīng)的位姿點,記為:
R1Pi=(R1xi,R1yi,R1zi),i=1,2,3
根據(jù)三點定圓原則確定P1、P2、P3三點的圓心R1O3(xO3,yO3,zO3)定義為坐標(biāo)系{R3}的原點,R1O3為從機器人基坐標(biāo)系軸上平移點,故可得其位置:
其中:
kR1PIR1PJ為直線R1PIR1PJ之間的斜率:
圓的半徑為:
r=|R1O3R1P1|
(3)
由于P1、P2、P3均由變化從機器人的第一個關(guān)節(jié)得到,因此{R2}坐標(biāo)系的x、y、z軸方向與{R3}坐標(biāo)系u、v、w一致,{R2}坐標(biāo)系原點O2與{R3}坐標(biāo)系原點R1O3豎直方向的距離為:
(4)
式中:R1xO2、R1yO2、R1zO2分別代表坐標(biāo)系{R2}的原點O2相對于坐標(biāo)系{R1}的空間位置;Δz為O2與R1O3豎直方向上的距離,并且有Δz=R2z1。
(5)
在實際操作過程中,使用上述方法對雙機器人基坐標(biāo)系標(biāo)定時難免會產(chǎn)生誤差。機器人自身機械加工制造和裝配存在一定的誤差且不可避免;機器人電機編碼器在工作中受到噪聲影響,從而產(chǎn)生不可避免的誤差;人的操作誤差也同樣會導(dǎo)致一定的標(biāo)定誤差。
雙機器人基坐標(biāo)系標(biāo)定方法理論上能夠準(zhǔn)確地進行標(biāo)定,引入電機編碼器噪聲的干擾和人眼觀測誤差的干擾,驗證提出的標(biāo)定方法抗誤差干擾性能。已知人眼能識別的最短距離為0.1~0.2 mm,使用以下公式模擬此誤差:
m=n+0.2×rand(1,1)
(6)
其中:n代表理論數(shù)據(jù),rand(1,1)表示在0~1隨機產(chǎn)生一個數(shù),m為模擬誤差后的數(shù)據(jù)。根據(jù)標(biāo)定方法,主機器人在讀取P1、P2、P3點的位置時就會引入此誤差,本文也在獲取3個點的位置中添加誤差。
電機編碼器主要的噪聲源是熱噪聲。典型的是高斯白噪聲。將其造成的干擾引入理論中編碼器測量的數(shù)據(jù),這里采用1%幅度的高斯白噪聲,加入方法是:
a=b+0.01×b×(rand(1,1)-0.5)
(7)
其中:功率譜密度服從μ=0的均勻分布,振幅為0.01,b為理論數(shù)據(jù),a表為受干擾數(shù)據(jù)。
基于上述誤差模型和標(biāo)定方法,加入高斯白噪聲后的關(guān)節(jié)角如下:
引入高斯白噪聲與觀測誤差后的坐標(biāo)系{R1}相對于{R3}變換矩陣:
Frobenius范數(shù)用于衡量實際矩陣與理論矩陣相似性,2-范數(shù)是衡量空間中兩點之間的距離的向量范數(shù),它們的值越小,說明兩個矩陣之間的誤差越小,分別將理論矩陣與實際矩陣中的旋轉(zhuǎn)矩陣和位置向量相減得到:
由上式得出旋轉(zhuǎn)矩陣的Frobenius范數(shù)為0.004 4,
表3 加入誤差后的機器人數(shù)據(jù)
位置向量的2-范數(shù)為3.290 5 mm,兩個范數(shù)的值都較小,說明在受到電機編碼器噪聲干擾和人為操作干擾的情況下,產(chǎn)生的誤差小,驗證了本文提出的標(biāo)定方法精度較高,具有一定的應(yīng)用價值。
為了驗證改進算法的可行性與正確性,針對實驗室現(xiàn)有JLRB8-600型機械臂,首先按照1節(jié)中四點法進行試驗研究。本實驗室六自由度機械臂默認世界坐標(biāo)系原點為第二軸線中心,為了便于操作,故手動設(shè)定世界坐標(biāo)系為第四軸z軸方向和第一軸x軸線重合點為世界坐標(biāo)系原心。故末端標(biāo)定針理論TCP值為[293,0,370]。在滿足法蘭盤位置偏距和姿態(tài)[2]的情況下進行兩組實驗。
表4 單機器人標(biāo)定實驗
根據(jù)上述實驗結(jié)果可以看出即使?jié)M足法蘭盤位置偏距和姿態(tài)的前提下,由于人眼、算法、操作誤差以及機械臂出廠坐標(biāo)系設(shè)定誤差等,實際結(jié)果與理論值有較大偏差。
雙機器人基坐標(biāo)系標(biāo)定試驗采用Matlab聯(lián)合Coppeliasim仿真實驗平臺,結(jié)合上述實驗方法,在滿足運動空間的前提下將雙機器人基坐標(biāo)系復(fù)雜化,同時改變它們之間的相對位姿。
通過V-REP讀取中實際兩臺機器人基坐標(biāo)系之間的位姿矩陣:
(11)
按照設(shè)計的基坐標(biāo)系標(biāo)定方法進行操作與記錄。為了方便進行標(biāo)定工作,這里設(shè)定從機器人初始關(guān)節(jié)角度為[0,-90,0,0,0,0]。然后以任意角度轉(zhuǎn)動從機器人第1軸,這里分別轉(zhuǎn)動0°、15°、35°。記錄下此位置相對主機器人與從機器人的空間位置以及各自關(guān)節(jié)轉(zhuǎn)動的角度,圖4為每一個點中兩個機器人各自的標(biāo)定情況。
表5 記錄主機器人信息
表6 記錄從機器人信息
根據(jù)標(biāo)定算法計算得:
(12)
由此得出由基于“三點定圓”的改進雙機器人基坐標(biāo)系標(biāo)定方法計算的值與在 Coppeliasim 仿真中得出的值完全一致,由此證明此算法的可行性與正確性。
針對現(xiàn)階段雙機器人基坐標(biāo)系技術(shù)操作繁瑣,過程復(fù)雜與輔助設(shè)備昂貴等問題,提出基于“三點定圓”的改進雙機器人基坐標(biāo)系標(biāo)定方法,通過引入誤差,對比實驗室單機器人四點標(biāo)定法,改進后的雙機器人基坐標(biāo)系標(biāo)定方法在理論和引入誤差的實驗情況下均能滿足精度要求,具有實際意義。