齊立哲 陳 磊 王 偉 余蕾斌 贠 超
(①北京航空航天大學機器人研究所,北京 100083;②上海飛機制造有限公司,上海 200436)
一般工業(yè)機器人重復定位精度很高,但絕對定位精度很差。為了提高機器人的性能及拓展工業(yè)機器人的應用范圍,需要對機器人運動學模型的參數(shù)進行標定來降低它的絕對定位誤差。機器人標定一般分4個步驟進行:建模、測量、辨識與補償[1]。為了測量出機器人在其工作空間內(nèi)的各個測量點的定位誤差,需要對測量靶標中心在機器人末端的位置(工具坐標系)及機器人基坐標系與測量設備坐標系之間的轉(zhuǎn)換矩陣(基坐標系)進行標定,以將直接從機器人中獲取的末端法蘭盤中心測量數(shù)據(jù)與測量設備測得的靶標中心的數(shù)據(jù)統(tǒng)一到一個坐標系下。因此在工業(yè)機器人定位誤差測量過程中涉及到機器人工具坐標系及基坐標系標定的問題。
針對機器人工具坐標系的標定,李瑞峰等人給出了標準試件標定法、固定基準測試點法及變姿態(tài)直接標定法等方法,實現(xiàn)了工具坐標系位置的標定[2],牛雪娟等人提出三點五步法并采用奇異值分解的方法實現(xiàn)了工具坐標系的位姿標定[3],Juhaa等人實現(xiàn)了工具坐標系位姿的標定[4],湯青等人提出了一個通用的工具坐標系標定公式[5];同時目前商用工業(yè)機器人都給出了工程化的工具坐標系標定方法,如Fanuc機器人采用“三點法”及“六點法”實現(xiàn)了工具坐標系位置及位姿的標定。
這些方法的核心思想是采用了一個約束點,增加一個輔助工具,同時需要人工手動示教機器人以不同的姿態(tài)使待標定的工具點接近約束點,而且標定精度除了受機器人定位誤差的影響外,還受示教精度的影響。本文根據(jù)工業(yè)機器人定位誤差測量系統(tǒng)的特點,采用基于距離約束的方法實現(xiàn)了工具坐標系的自動化標定過程;分步實現(xiàn)了機器人基坐標系的自動化標定過程。同時建立了基于激光跟蹤儀的工業(yè)機器人定位誤差測量系統(tǒng),并根據(jù)測量數(shù)據(jù)具體標定出了涉及到的各個坐標系,驗證了算法的有效性,為工業(yè)機器人定位誤差測量及補償打下了基礎(chǔ)。涉及到的坐標系的標定過程,無需輔助工具。不僅操作簡單,而且還可以排除人為操作因素的影響。
如圖1所示,工業(yè)機器人定位誤差測量系統(tǒng)由測量設備、測量靶標及工業(yè)機器人組成。圖中P表示待測量的靶標中心,Base為機器人基坐標系,Tool0為機器人法蘭盤坐標系,Measure為測量設備坐標系。
在此工業(yè)機器人定位誤差測量系統(tǒng)中,測量設備可以直接測量出靶標中心P在Measure坐標系下的坐標,同時機器人本身也可以作為測量裝置獲得被機器人抓著的靶標中心P在機器人Base坐標系下的坐標,兩者進行坐標變換便可以統(tǒng)一到同一個坐標系下,進而進行比較獲得工業(yè)機器人在其工作空間內(nèi)各個測量點的位置誤差。因此工業(yè)機器人的定位誤差測量系統(tǒng)的測量過程數(shù)學模型可表示為
其中:ΔP為工業(yè)機器人測量點P的位置誤差;PM為測量點P在Measure坐標系下的坐標(由測量設備直接讀取);BTM為機器人Base坐標系與Measure坐標系下的轉(zhuǎn)換矩陣(未知量);T0TB為工業(yè)機器人Tool0坐標系在機器人Base坐標系下的轉(zhuǎn)換矩陣(可通過機器人示教器直接讀取);PT0為P點為Tool0坐標系下的坐標(未知量)。
由此可知,為了獲得工業(yè)機器人在其工作空間內(nèi)各個測量點的定位誤差,需要對BTM及PT0進行預先標定。
在機器人誤差測量系統(tǒng)中,測量靶標中心P在機器人Base坐標系下的坐標可表示為:
其中,N為在機器人工作空間內(nèi)的測量位置數(shù)。任取機器人兩個不同測量位置m、n,測量坐標偏差為
同時,靶標中心P在Measure坐標下的坐標偏差為
從而有:
由于T0、T0可以從機器人示教器中直接讀取到,、可以由從測量設備中測量獲得,通過上式便可以計算出靶標中心P在機器人Tool0坐標系下的坐標,即可標定出靶標中心P在機器人末端的位置,從而可實現(xiàn)工業(yè)機器人定位誤差測量系統(tǒng)中的工具坐標系的標定。
工業(yè)機器人Base坐標系在測量設備Measure坐標系下的轉(zhuǎn)換矩陣可表示為:
眾所周知,對于機器人在空間中任意兩個不同位置,雖然它們在機器人坐標系和測量坐標系中的坐標值是不同的,但是這兩位置在兩坐標中的距離長度是相同的[6],即:
考慮到工業(yè)機器人定位誤差測量系統(tǒng)的特殊性,可將機器人基坐標系的標定分步進行,即方向向量及位置向量分別標定。
(1)機器人基坐標系的方向向量標定:控制機器人抓著測量靶標,沿自身Base坐標系各個軸運動,并記錄測量設備的數(shù)據(jù)便可得到Base坐標系的各個坐標軸在Measure坐標系下的方向向量,如下:
(2)機器人基坐標系的位置標定:在工業(yè)機器人定位誤差測量系統(tǒng)中,測量靶標中心的坐標滿足以下關(guān)系:
式(9)變形可得式(10):
其中,pM可由激光跟蹤儀測得;經(jīng)過測量靶標中心p位置的標定后,pB也可知道。因此通過上式便可計算出Base坐標系原點在Measure坐標系下的坐標值BpM。
機器人基坐標系的X、Y及Z軸在測量設備坐標系的方向向量及原點標定出來后,便實現(xiàn)了測量系統(tǒng)中基坐標系的標定,即有:
激光跟蹤儀作為標定環(huán)節(jié)中的測量工具,因其具有配置簡單,適合應用于工業(yè)現(xiàn)場標定場合等優(yōu)勢,越來越受到機器人廠家及研究學者的青睞[7]。因此,在工業(yè)機器人定位誤差測量系統(tǒng)中的測量設備選擇了激光跟蹤儀來進行標定研究。
建立的工業(yè)機器人定位誤差測量系統(tǒng)如圖2所示,它包含被標定工業(yè)機器人、激光跟蹤儀及跟蹤靶標。工業(yè)機器人采用ABB IRB 4400機器人,此機器人是一種機身緊湊的機器人,承受載荷最高可達60 kg,具有較高的重復定位精度,可廣泛應用于切割、去毛刺、清洗、噴涂、研磨、拋光和物料搬運等場合,通過對其絕對定位誤差進行標定后,可以大大拓展其應用領(lǐng)域。誤差測量設備采用FARO ION型激光跟蹤儀,該測量設備具有測量精度高、操作簡單等優(yōu)點,可以直接測得機器人手臂上靶標在其坐標系下的坐標。
由式(6)可知,為了標定出測量靶標工具坐標系,至少需要測量機器人工作空間內(nèi)的3個點;由式(8)和(9)可知,為了標定出機器人基坐標系在激光跟蹤儀坐標系下的坐標,至少需要在機器人每個坐標軸上采集2個點,即總計至少需要采集6個測量點。為了充分表現(xiàn)機器人的特性,對于工具坐標系標定試驗過程采集了12個測量點(在機器人工作空間內(nèi)均勻采集);對于基坐標系標定試驗過程采集了30個測量點(每個坐標軸上取了10個點),數(shù)據(jù)采集的測量點的分布情況如圖3所示。
雖然采集了12個測量點作為工具坐標系標定的輸入數(shù)據(jù),但實際標定可選取其中的部分數(shù)據(jù)使用,這樣就可以標定多次,然后對多次標定的結(jié)果進行比較分析,可以相互驗證標定效果。
根據(jù)公式(5)建立的非線性方程為
其中假設每次用來標定工具坐標系的測量點的個數(shù)為N。求解工具坐標系時可建立的非線性方程的個數(shù)M為
綜合式(12)及(13)便可列出M維的非線性方程組,然后通過最小二乘法求解出工具坐標系(x,y,z)。
將采集到的12個測量點數(shù)據(jù)分成10組分別標定,即首先選擇3個不同測量點作為一組,可有4組標定數(shù)據(jù)來進行標定;然后選擇4個不同測量點作為一組,可有3組標定數(shù)據(jù)來進行標定;接著選擇6個不同測量點作為一組,可有2組標定數(shù)據(jù)來進行標定;最后用12個測量點作為一組來進行標定。從而可標定出10個工具坐標系,標定結(jié)果如表1所示。
表1 工具坐標系標定結(jié)果
從標定結(jié)果看,雖然求解的非線性方程組中只有3個未知數(shù),但由于機器人定位誤差的存在,導致非線性方程組的系數(shù)誤差較大。因此,非線性方程組的維數(shù)越小,求解的結(jié)果越不穩(wěn)定;同時,穩(wěn)定的標定結(jié)果也因為采集數(shù)據(jù)時機器人的位置不同,而標定結(jié)果也有微小差別。
(1)基坐標系方向向量的求解
通過數(shù)據(jù)采集環(huán)節(jié),在機器人每個坐標軸上都選取了10個測量點。根據(jù)公式(8)求解基坐標系方向向量的思想,可以轉(zhuǎn)換成根據(jù)多個空間點擬合空間直線后,求解直線的方向向量的問題。擬合出的3條直線的方向向量就是機器人基坐標系3個坐標軸在測量設備坐標系下的方向向量。為了簡化空間直線的擬合過程,這里可采用分步最小二乘法求解,首先擬合空間直線在XOZ及YOZ平面投影的直線方程,這兩條直線方程在O-XYZ中又是兩個特殊的平面方程,然后求解兩個平面的交線就是我們要求的空間直線[8]。求解出了直線方程,便可以求解出坐標軸的方向向量。根據(jù)這種思想擬合出來的一個軸的直線方程為
(2)基坐標系位置的求解
求解出來了基坐標系的方向向量后,根據(jù)公式(10)便可以由每個測量點計算出一個基坐標系的位置,綜合多個測量數(shù)據(jù),將多個位置量的均值作為最后基坐標系的位置值,即:
(3)基坐標系標定結(jié)果
通過上述公式,根據(jù)采集的30組數(shù)據(jù),標定出的基坐標系見表2。
表2 基坐標系標定結(jié)果 mm
從標定結(jié)果看,由于機器人定位誤差的存在,導致基坐標系位置標定誤差較大。
根據(jù)工業(yè)機器人定位誤差測量系統(tǒng)的特點,推導了工業(yè)機器人定位誤差測量系統(tǒng)中涉及到的工具坐標系及基坐標系的自動化標定公式,建立了基于激光跟蹤儀的工業(yè)機器人定位誤差測量系統(tǒng),并根據(jù)測量數(shù)據(jù)具體標定出了涉及到的各個坐標系,驗證了算法的有效性,為工業(yè)機器人定位誤差測量及補償打下了基礎(chǔ)。
[1]ROTH Z S,MOORING B W,BAHRAM R.An overview of robot calibration[J].IEEE Journal of Robotics and Automation,1987,3(5):377-385.
[2]李瑞峰,侯琳琪,陶謙.機器人末端工具參數(shù)自動標定方法[J].哈爾濱工業(yè)大學學報,1998,30(3):74-76.
[3]牛雪娟,劉景泰.基于奇異值分解的機器人工具坐標系標定[J].自動化與儀表,2008(3):1-4.
[4]RONING Juhaa,KORMD Alexander.Method for industrial robot calibrafion[C]//Prceedings - IEEE International on Robotics and Automation.Institute of Electrical and Electronics Engineers,Albuquerque,New Mexico,Apr 20- 25,1997.3184- 3190.
[5]GAN Zhongxue,TANG Qing.Visual Sensing and its applications:Integration of laser sensors to industrial robots[M].Hangzhou:Zhejiang U-niversity Press,2011.
[6]周學才,張啟先,鄭時雄.一種新的機器人機構(gòu)距離誤差模型及補償算法[J].機器人,1991,13(1):44-49.
[7]葉聲華,王一,任永杰,等.基于激光跟蹤儀的機器人運動學參數(shù)標定方法[J].天津大學學報,2007,40(2):202-205.
[8]霍曉程.空間直線方程的擬合[J].懷化學院學報,2009,28(2):16-19.