董慧穎 李文廣
1.沈陽理工大學(xué),沈陽,110159 2.山東省機器人與制造自動化技術(shù)重點實驗室,濟南,250014
在進行離線編程時,需要標定仿真機器人模型與實際機器人本體間的誤差,機器人一般有較好的重復(fù)定位特性,但是其絕對定位精度并不高。因此,很長一段時間以來人們一直采用“錄播”的方式來讓機器人工作,忽略了它的絕對定位精度。標定的目的就是要調(diào)整機器人關(guān)節(jié)零位偏差與末端位姿間的關(guān)系,提高其絕對定位精度。一個機器人的標定任務(wù)分為運動學(xué)模型建立、位姿測量、參數(shù)辨識和誤差補償4個基本步驟。
運動學(xué)模型是決定機器人精度的一個很重要因素,它必須能夠描述所有影響機器人末端位姿的因素。目前,應(yīng)用最為廣泛的機器人運動學(xué)模型是D-H模型。對任意兩鄰接連桿,該模型有圖1所示坐標關(guān)系,圖中4個D-H參數(shù)分別是連桿長度ai、連桿偏轉(zhuǎn)?i、連桿偏移di、關(guān)節(jié)角度θi。劉宇等[1]在對空間機器人位姿精度的研究中采用了D-H建模方法,并采用極大似然算法對機器人的連桿參數(shù)進行了辨識,實驗結(jié)果表明,位姿精度提高了3倍多。
圖1 D-H模型
Lim等[2]提出了一種能同時標定機器人運動學(xué)參數(shù)誤差及彈性形變誤差的算法,并針對實時應(yīng)用編寫了相應(yīng)的Windows應(yīng)用程序,模型描述的誤差因子越全面,則機器人控制驅(qū)動器的位姿就越接近實際的機器人位姿,末端誤差可以減小到1mm以內(nèi)。Radkhah等[3]提出了一種新穎的問題建模方法,并用于自標定,該方法基于正向運動學(xué)方法,整合了幾何與非幾何誤差參數(shù),最終將機器人末端精度從7×10-3~2×10-2mm提高到了1×10-9~1×10-4mm。馮濤等[4]對穿刺機器人采用指數(shù)積方法建立機器人運動學(xué)模型,然后導(dǎo)出只需位置量的線性誤差模型,并設(shè)計了簡便有效的末端位置標定方案,從而避免了D-H建模方式的奇異問題,將誤差量減小了50%。Lou等[5]解釋了原始指數(shù)積標定因關(guān)節(jié)偏移而總失敗的原因,并提出了一種修正的指數(shù)積建模方法,設(shè)計了更為簡易實用的末端單點測量法。
測量是機器人標定過程的關(guān)鍵步驟。最初的機器人標定都是基于開環(huán)機器人運動學(xué)鏈的?;陂_環(huán)運動學(xué)鏈的機器人在標定過程中,位姿測量是必不可少的步驟,測量結(jié)果的精度直接關(guān)系到標定精度。然而,機器人末端位姿的高精度測量是比較困難的,尤其是姿態(tài)的測量,因此,目前很多的標定方法都是基于位置精度的。葉聲華等[6]采用激光跟蹤儀作為測量工具,對機器人運動學(xué)參數(shù)進行標定,通過建立工業(yè)機器人模型,測量獲取關(guān)節(jié)變量與末端法蘭盤中心位置在基坐標系下的準確映射關(guān)系,共標定25個幾何參數(shù),標定后的平均誤差和均方根誤差改善40%以上。Ji等[7]采用三坐標測量儀作為測量工具,提出了一種對操作機進行標定的位姿測量方法,并將該方法用于并聯(lián)機器人,經(jīng)試驗,標定后精度有了明顯的提高。Lee等[8]采用室內(nèi)全局定位系統(tǒng)(IGPS)作為測量手段,對工業(yè)六自由度弧焊操作機完成了運動學(xué)參數(shù)標定,標定后,機器人位置精度提高至0.2mm。為解決機器人位姿難以測量的問題,Bennett等[9]提出了機器人閉環(huán)運動學(xué)鏈自動標定方法,指出對閉環(huán)機構(gòu)機器人的標定無須測量機器人末端位姿,僅從關(guān)節(jié)角度值就可以完成。
本文所采用的基于平面精度的標定方法同樣屬于閉環(huán)標定范疇,以末端限位的方式隱含了閉環(huán)條件,同時也繼承了部分開環(huán)標定方式下的測量成分。
使用平面精度標定方法的前提是機器人各關(guān)節(jié)是可以獨立控制的,實際應(yīng)用中可以通過使用機器人示教盒實現(xiàn)控制。圖2中的理想平面是機器人空間一已知法向量的平面,通過示教盒控制機器人各關(guān)節(jié),讓其在工作空間的平面內(nèi)運動。
圖2 平面誤差示意圖
在實際的測量過程中,為保證機器人末端手爪位于所選限位平面內(nèi),可通過在機器人手爪位置安裝探針裝置,在機器人運動的過程中,控制機器人手爪與限位平面始終保持同等間距。如果不能完全保證機器人末端的平面運動,在測量數(shù)據(jù)充足的條件下,個別測量失誤對誤差的辨識影響不大。
在控制機器人平面運動的同時,通過關(guān)節(jié)驅(qū)動控制器記錄平面上每點處的關(guān)節(jié)角度值。由所記錄的關(guān)節(jié)角度數(shù)據(jù)經(jīng)各關(guān)節(jié)連桿傳遞后得到理想機器人坐標系下的實際平面,也就是圖2中傾斜的平面,則評價方程如下:
其中,ri是所測量平面上的第i個點的位置量,m是所測量的點的個數(shù),n是平面的單位法向量,d是原點到所測量平面的距離,ρ是包含所有需要標定的參數(shù)的向量,θ是所測量的關(guān)節(jié)角向量。不同于其他使用外部測量工具的測量方法,這里ri是通過正向運動學(xué)基于參數(shù)ρ計算出來的位置量。
基于上述分析,將標定問題簡化為評價方程式(1)最小的優(yōu)化問題。
使用該方法的幾個前提假設(shè):機器人末端能夠在空間平面內(nèi)運動;關(guān)節(jié)驅(qū)動器能夠記錄對應(yīng)平面上每點處機器人的關(guān)節(jié)角度值;整個系統(tǒng)的測量點數(shù)要足夠求解出所有的誤差參數(shù)。
假定參考坐標空間一已知位姿的平面,讓機器人末端在該平面運動,對應(yīng)平面上的每點,測量方程滿足:
其中,ρ0=[ρ′ α P],ρ0是機器人擴展參數(shù)向量,P和α表示機器人基坐標系的位姿向量,ρ′是機器人的運動學(xué)參數(shù)向量。由于ρ′存在誤差量,但該誤差量相對于機器人的名義參數(shù)值來說是十分微小的,故可將式(2)泰勒展開,只保留一階項得
其中,J(ρ0,θi)為該系統(tǒng)的雅可比矩陣,該雅可比矩陣是對應(yīng)機器人末端位置的分量矩陣,即機器人末端位置量對各個誤差量的微分。
根據(jù)式(3),將該平面上的m個點描述成:
然后就可以應(yīng)用最小二乘法求解誤差量dρ′:
將式(7)所求得的誤差參數(shù)dρ′用于更新機器人的名義參數(shù)值,并將該值作為修正后的機器人參數(shù)。
線性誤差可以通過迭代參數(shù)辨識算法使得誤差dρ′變得足夠小或小于某一預(yù)先定義的參數(shù)。算法每次迭代后的參數(shù)值可表示如下:
雅可比矩陣是從關(guān)節(jié)速度到笛卡爾速度的轉(zhuǎn)換矩陣。雅可比矩陣中又包括位置速度雅可比和姿態(tài)速度雅可比項,本文使用位置速度雅可比項來描述機器人末端在相應(yīng)關(guān)節(jié)角度下的速度矩陣。
旋轉(zhuǎn)關(guān)節(jié)對末端的影響如圖3所示,由于關(guān)節(jié)轉(zhuǎn)動而在末端產(chǎn)生的位移速度為
式中,Zi-1為索引i-1的Z軸方向向量為操作機末端在i-1坐標系下的位置向量。
圖3 旋轉(zhuǎn)關(guān)節(jié)對末端的影響
沿X、Z方向的平移誤差量在操作機末端產(chǎn)生的位移速度分別是各軸坐標系在基坐標系下的旋轉(zhuǎn)矩陣[n′ o a]對應(yīng)的n′、a向量。
因此對應(yīng)線性獨立的誤差分量,可以得到其雅可比矩陣:
式中,d為原點到末端的矢量。
實驗中使用Peter Corke的機器人工具箱建立兩連桿機器人模型,如圖4所示,其連桿參數(shù)如表1所示。
圖4 兩連桿機器人模型
表1 機器人D-H參數(shù)
由于單個平面標定出的數(shù)據(jù)可能會導(dǎo)致所標定的數(shù)據(jù)僅在某個平面內(nèi)有效,同時由于機器人的工作空間是某一有限空間,故我們在限定機器人的平面運動時,給出表2所示的有效約束平面。
表2 標定平面
由于光電編碼器具有很高的精度,因此關(guān)節(jié)編碼器的讀數(shù)一般認為是精確的。任何的關(guān)節(jié)角度值誤差只可能來自于關(guān)節(jié)偏移,因此,關(guān)節(jié)偏移被考慮到誤差參數(shù)中。每個關(guān)節(jié)連桿的誤差參數(shù)由θ1、d1、α1、a1、θ2、d2、α2、a2構(gòu)成。要求解所有誤差參數(shù),至少需要測量8組數(shù)據(jù)。在每個限位平面上選取40個點的數(shù)據(jù)作為標定數(shù)據(jù),這些點隨機分布在各個平面上的(0.5×0.4)m2區(qū)域內(nèi)。將測得的數(shù)據(jù)應(yīng)用到式(7),便可得出對應(yīng)各誤差的實際值,如表3所示。
表3 誤差參數(shù)辨識
將表3所示的參數(shù)誤差附加至機器人的名義參數(shù)值中,可得到經(jīng)誤差矯正后的位置值,對比矯正前后的位置,便可評價該算法的有效性。表4所示為標定前后原點到面的距離的均方根誤差。
表4 標定前后點到面的距離的均方根誤差對比
上述仿真實驗表明,基于平面精度的標定方法能夠?qū)C器人的絕對定位精度提高50倍。
本文將一種新穎的機器人標定方法用于提高機器人的絕對精度。該方法測量過程簡單,標定數(shù)據(jù)獲取容易,有利于普及化。從標定原理可看出,機器人基坐標的校準工作可以省去,簡化了標定過程,因而可以縮短機器人線下標定時間。
[1]劉宇,梁斌,強文義,等.基于運動學(xué)標定的空間機器人位姿精度的研究[J].機械設(shè)計,2007,4(24):8-12.
[2]Lim Hyun-Kyn,Kim Dong-Hyeok,Kim Sung-Rak,et al.A Practical Approach to Enhance Positioning Accuracy for Industrial Robots [C]//ICROS-SICE International Joint Conference 2009.Fukuoka,Japan,2009:2268-2274.
[3]Radkhah K,Hemker T,von Stryk I.A Novel Selfcalibration Method for Industrial Robots Incorporating Geometric and Nongeometric Effects[C]//Proceeding of 2008IEEE International Conference on Mechatronics and Automation.Takamatsu,Japan,2008:864-870.
[4]馮濤,楊向東,熊璟,等.穿刺機器人本體標定試驗研究[J].機械設(shè)計與制造,2010,2(2):155-158.
[5]Lou Yunjiang,Chen Tieniu,Wu Yuanqing,et al.Improved and Modified Geometric Formulation of POE Based Kinematic Calibration of Serial Robots[C]//The 2009IEEE/RSJ International Conference on Intelligent Robots and Systems.St.Louis,MD,2009:5261-5267.
[6]葉聲華,王一,任永杰,等.基于激光跟蹤儀的機器人運動學(xué)參數(shù)標定方法[J].天津大學(xué)學(xué)報,2007,40(2):202-206.
[7]Ji Junhong,Sun Lining,Yu Lingtao.A New Pose Measuring and Kinematics Calibrating Method for Manipulators[C]//2007IEEE International Conference on Robotics and Automation.Roma,2007:4925-4931.
[8]Lee Min-su,Kang Dong-soo,Cho Young-suk,et al.The Effective Kinematic Calibration Method of Industrial Manipulators Using IGPS [C]//ICROS-SICE International Joint Conference 2009.Fukuoka,Japan,2009:5059-5063.
[9]Bennett D J,Hollerbach J M.Autonomous Calibration of Single-loop Closed Kinematic Chains Formed by Manipulators with Passive Joints[J].IEEE Transactions on Robotics & Automation,1991,7(5):597-606.