薛志奇,牛雪娟,王 添
(天津工業(yè)大學 機械工程學院,天津 300387)
現(xiàn)代制造業(yè)對工業(yè)機器人性能的要求不斷提高,尤其是高精度的工業(yè)機器人。評價工業(yè)機器人性能指標主要有2個,重復(fù)定位精度和絕對定位精度。機器人的重復(fù)精度一般較高,可達0.1 mm,而絕對定位精度卻較低,一般是厘米級[1]。影響機器人絕對定位精度的誤差的主要因素包括幾何誤差和非幾何誤差,幾何誤差主要是由機器人連桿參數(shù)的不準確引起的,約占總誤差的80%;非幾何誤差主要由環(huán)境因素、機械熱變形等引起,約占總誤差的20%[2]。提高機器人絕對定位精度主要有2個途徑,其一是減少誤差源,最大限度地提高機器人零部件的設(shè)計、加工和裝配精度。由于目前數(shù)控機床大的加工精度已經(jīng)很高,這種方法實現(xiàn)起來比較難,而且成本高。其二是用標定技術(shù)修正誤差,這種方法能使機器人的絕對精度大幅提高,運用比較廣泛。
機器人標定是運用適當?shù)臏y量手段和參數(shù)求解方法求出機器人模型的參數(shù),以提高機器人絕對精度的過程。文獻[3]將機器人的標定劃分為關(guān)節(jié)級標定、機器人運動學標定、動力學標定。其中,連桿參數(shù)的運動學標定與測量工具的選用以及測量方法有很大的關(guān)系。隨著測量技術(shù)的不斷提高,國內(nèi)外學者采用了各種新興的測量工具和測量方法對機器人進行參數(shù)標定[4-7]。既有標定方法的精度都不高,尤其是采用的測量方法,實用性不是很強,而且過程比較復(fù)雜。在此,通過建立運動學誤差模型,創(chuàng)新地采用拉繩編碼器對機器人進行距離測量,提出基于線誤差的機器人運動學參數(shù)標定方法,并通過試驗驗證該方法能提高機器人的絕對定位精度。
如圖1所示為基于線誤差的標定平臺構(gòu)成。將拉繩編碼器的位姿標記為{U},機器人底座標記為{B},工具坐標系標記為{T}。 其中,{U}為用戶坐標系,{B}為基礎(chǔ)坐標系,且{U}與{B}的方向平行,{T}與法蘭坐標系的方向平行。
圖1 基于線誤差標定平臺Fig.1 Calibration platform based on linear error
機器人末端被測點Pi在機器人用戶坐標系{U}中的實際位置其距用戶坐標系原點Pu的距離為PuPi,而拉繩編碼器實際測得的拉繩長度為PuPi′。在此把機器人被測點到用戶坐標系原點的實際距離和指令距離之間的誤差稱為線誤差,可表示為
DH[8]模型描述工業(yè)機器人連桿坐標系采用αi,θi,ai,di4個獨立的參數(shù)。其不足之處是當2個相鄰的關(guān)節(jié)的軸線平行時,平行度的輕微偏差,會導(dǎo)致實際的公法線的位置與理論的公法線的位置有一個很大的偏差。故在此選用MDH[9]模型建立運動學模型,它的特點是在DH模型的基礎(chǔ)上增加了一個繞Y軸旋轉(zhuǎn)的角度βi,當實際幾何參數(shù)存在微小變化時,這一附加項能夠表達出系統(tǒng)的模型特征,當相鄰關(guān)節(jié)軸線不平行時,轉(zhuǎn)角βi值定義為零。按照MDH運動學模型,建立機器人各連桿空間坐標系,如圖2所示。
圖2 連桿坐標系示意Fig.2 Schematic diagram of coordinates
機器人各連桿變換矩陣為
式中:連桿編號 i=1,2,…,6;c=cos;s=sin。
機器人末端法蘭坐標系相對基礎(chǔ)坐標系的變換矩陣為
為簡化算法,將工具坐標系{T}的坐標軸指向設(shè)置為法蘭坐標系的坐標軸指向;用戶坐標系{U}的坐標軸指向設(shè)置為基礎(chǔ)坐標系 {B}的坐標軸指向。則機器人的工具坐標系到法蘭坐標系和基礎(chǔ)坐標系到用戶坐標系的齊次變換矩陣分別為
式中:xt,yt,zt分別為工具坐標系原點在法蘭坐標系中的坐標值。
式中:xu,yu,zu分別為機器人基礎(chǔ)坐標系原點在用戶坐標中的坐標值。
由式(3)、式(4)、式(5)可知機器人工具坐標系原點在機器人用戶坐標系中的位姿為
由式(2)可知,串聯(lián)機器人的每個連桿參數(shù)的名義值和真實值之間是有微小差別的,用δαi,δai,δdi,δθi,δβi分別表示 2 個相鄰連桿間的扭角偏差、連桿長度偏差、連桿偏置偏差、關(guān)節(jié)角偏差和連桿轉(zhuǎn)角偏差?;谶@些偏差都是比較小的事實,可以用微分偏差來表示。用AiN和AiR分別表示連桿i的名義變換和實際變換,Δi表示相對于當前連桿i坐標系的微分變換,則連桿i的誤差為所有幾何參數(shù)的誤差的疊加[10]為
式中:AiN為式(2)所表示的第i個連桿的MDH連桿模型。dAiN可以由變換矩陣Ai求得
由式(8)知:
因為機器人用戶坐標系和基礎(chǔ)坐標系的方向是平行的,所以用戶坐標系到基礎(chǔ)坐標系的變換矩陣的誤差矩陣為
同理,因為工具坐標系和法蘭坐標系方向平行,所以機器人法蘭坐標系到工具坐標系的變換矩陣的誤差矩陣為
串聯(lián)機器人每一關(guān)節(jié)均有參數(shù)誤差存在,各關(guān)節(jié)參數(shù)誤差傳遞到機器人的工具末端點,對于機器人每個連桿,由式(3)和式(9)可以得到機器人末端法蘭坐標系相對基礎(chǔ)坐標系的實際坐標變換為
將該式展開略去所有高階微分項可得到:
將式(2)、式(3)、式(9)帶入式(13)并且經(jīng)過大量的化簡可以得到如下形式[11]:
式(10)左上角的3×3矩陣為姿態(tài)微動量,第4列的前3行的3個元素為位置微動量。即:
令
為各個連桿參數(shù)誤差的系數(shù)誤差矩陣
為機器人所有連桿參數(shù)的固有誤差向量。因為建立的用戶坐標系和機器人基礎(chǔ)坐標平行,所以基礎(chǔ)坐標系相對與用戶坐標系中的位置誤差矩陣為
誤差向量為
工具坐標系相對法蘭坐標系的位置誤差矩陣為
誤差向量為
綜上所述,由式(17)、式(19)、式(21)可以得到所有要標定的參數(shù)誤差矩陣為
由式(18)、式(20)、式(22)可以得到所有的固有向量為
式中:用戶坐標系待標定參數(shù)為 δxu,δyu,δzu。 因為用戶坐標系和基礎(chǔ)坐標系平行,相關(guān)參數(shù)的誤差之間存在耦合,這樣連桿 1待標定的參數(shù)只有δα1,δa1。因為坐標系只有連桿2和連桿3之間存在軸線平行,所以只有連桿轉(zhuǎn)角偏差δβ2。這樣,連桿2需要標定的參數(shù)有 δα2,δa2,δθ2,δβ2;連桿 3 待標定的參數(shù)都為δα3,δa3,δθ3,δd3;連桿 4 待標定的參數(shù)為 δα4,δa4,δθ4,δd4;連桿 5 待標定的參數(shù)為 δα5,δa5,δθ5,δd5。 對于連桿6,因為法蘭坐標系和工具坐標系平行,所以工具坐標系的待標參數(shù)和6桿的待標參數(shù)耦合工具坐標系的待標定參數(shù)為 δxt,δyt,δzt。這樣 Δ 中總共就有24個需要標定的參數(shù)。
假設(shè)機器人工具末端在機器人用戶坐標系{U}中的理論位置為而實際的指令位置為則整體的機器人線誤差標定模型可以用圖3來表示。
圖3 線誤差標定模型簡圖Fig.3 Linear error calibration model diagram
這是一個含有24個未知數(shù)的方程。
由式(26)可知,用于標定機器人參數(shù)的線性方程組中包含24個參數(shù)。至少需要24個方程才能求出方程的最小二乘解。由于該方程的條件數(shù)很大,可以采用奇異值分解 (SVD)的方法求得最小二乘解。為了盡可能減小SVD誤差,實驗中采樣點應(yīng)盡可能涵蓋機器人的工作空間。
使用拉繩編碼器對課題研究的某型六自由度工業(yè)機器人進行運動學標定。試驗選用的是美國西克公司BCG-E1BM0399型拉伸編碼器,其拉繩長度3 m,精度0.015 mm。這是一種帶有Ethercat接口的拉繩編碼器,可以直接連接到計算機上,工作時計算機能實時讀取機器人的每個連桿的關(guān)節(jié)值和拉繩長度。試驗時,手動控制機器人的每個關(guān)節(jié)運動,操作機器人以不同的姿態(tài)在機器人的工作空間運動,并且使機器人在工作空間盡可能大范圍地獲取采樣點。這樣獲得的每一個采樣點都包含有機器人的每一個連桿的關(guān)節(jié)角 θi(i=1,2,…,6)及拉繩的長度Li,如此至少獲得50個采樣點,然后按照上面參數(shù)求解方法求得最小二乘解即為連桿的幾何參數(shù)補償量。
標定前、后的參數(shù)如表1所示,經(jīng)過參數(shù)求解可以很好地得到機器人的補償后的連桿參數(shù),如表1最后一列所示。
該算法標定實驗過程中,標定儀的擺放位置是任意的,且拉繩末端在法蘭盤上的位置也是任意的。整個標定過程方便簡單。經(jīng)過反復(fù)試驗,該算法零點誤差精度為0.1°,連桿幾何參數(shù)誤差精度可精確到3.15 mm以下,線誤差平均縮小了75%。機器人絕對定位精度由厘米級提高到毫米級。
表1 標定前和標定后連桿幾何參數(shù)Tab.1 Geometrical parameter of links before and after calibration
采用高精度拉繩編碼器對某型六自由度工業(yè)機器人進行測量,并對其運動學參數(shù)進行標定。研究過程中,基于機器人的MDH運動學模型,建立了機器人各坐標系間的平行關(guān)節(jié)的齊次變換誤差模型;在此基礎(chǔ)上,推導(dǎo)了基于線誤差的運動學標定模型;經(jīng)過SVD分解后得到補償量,對關(guān)節(jié)參數(shù)進行補償。線誤差的引入,避免了傳統(tǒng)測量儀器成本高,操作難度大,測量誤差大等缺點。試驗結(jié)果表明,基于線誤差的機器人運動學標定可以明顯地提高機器人的絕對精度。其中,線誤差平均縮小75%,機器人的絕對精度由原來的厘米級提高到毫米級。
[1]周翔,杜姍姍.工業(yè)機器人零位標定點約束分布研究[J].計算機工程,2015,41(12):265-274.
[2]齊飛,平雪良,劉潔.關(guān)于工業(yè)機器人標定方法的研究[J].機床與液壓,2015,43(21):32-36.
[3]Roth Z,Benjamin W,Mooring,Bahram R.An overview of robot calibration[J].IEEE Journal of Robotics and Automation,1987,3:377-385.
[4]楊麗紅,秦緒祥,蔡錦達,等.工業(yè)機器人定位精度標定技術(shù)的研究[J].控制工程,2013,20(4):785-788.
[5]H Wang,M Jiang,W Chen.Visual servoing of robots with uncalibrated robot and camera parameters[J].Mechatronics,2012,22(6):661-668.
[6]許輝,王振華,陳國棟,等.基于距離精度的工業(yè)機器人標定模型[J].制造業(yè)自動化,2013,35(6):1-4.
[7]龔星如.六自由度工業(yè)機器人運動學標定研究[D].南京:南京航空航天大學,2013.
[8]Mahmoud Tarokh,Huy Dang Ho,Antonios Bouloubasis.Systematic kinematics analysis and balance control of high mobility rovers over rough terrain[J].Robotics and Autonomous Systems,2013,61(1):13-24.
[9]J Armstrong Piepmeier,P A Morgan.Uncalibrated vision-based mobile robot control[J].Space&Robotics,2014,21(5):388-395.
[10]陳鋼,賈慶軒,李彤.基于誤差模型的機器人運動學參數(shù)標定方法與實驗[J].機器人,2012,34(6):680-688.
[11]任永杰,邾繼貴,楊學友.基于距離精度的測量機器人標定模型及算法[J].計量學報,2008,3(29):198-202.