柳 松,張德權(quán),吳錦輝,張 寧,劉海濤
(河北工業(yè)大學(xué) 機(jī)械工程學(xué)院,天津 300401)
隨著工業(yè)自動(dòng)化水平的提高,工業(yè)機(jī)器人逐漸成為自動(dòng)化生產(chǎn)領(lǐng)域的核心裝備[1]。定位精度是影響工業(yè)機(jī)器人性能的重要指標(biāo)之一,包括重復(fù)定位精度和絕對(duì)定位精度。與重復(fù)定位精度相比,工業(yè)機(jī)器人的絕對(duì)定位精度更低,因此其更能反映機(jī)器人性能的好壞。影響工業(yè)機(jī)器人重復(fù)定位精度的因素有很多,如加工制造精度不足、工作環(huán)境溫度、負(fù)載變化以及運(yùn)動(dòng)學(xué)參數(shù)誤差等等。工業(yè)機(jī)器人在運(yùn)行過程中的結(jié)構(gòu)磨損、材料老化、齒輪齒隙變大等也會(huì)造成工業(yè)機(jī)器人的絕對(duì)定位精度會(huì)逐漸降低,從而影響產(chǎn)品的加工制造精度,而采用誤差補(bǔ)償方法提高工業(yè)機(jī)器人的絕對(duì)定位精度是一種行之有效的方法[2]。
在工業(yè)機(jī)器人末端的定位誤差來源中,80%~90%是機(jī)器人運(yùn)動(dòng)學(xué)參數(shù)誤差所引起的定位誤差[3]。因此在對(duì)工業(yè)機(jī)器人進(jìn)行誤差補(bǔ)償時(shí),主要通過對(duì)運(yùn)動(dòng)學(xué)參數(shù)的補(bǔ)償來提高機(jī)器人的絕對(duì)定位精度。針對(duì)工業(yè)機(jī)器人的精度補(bǔ)償,已有不少學(xué)者開展了相關(guān)研究。王一等[4]以修正的D-H模型(即MD-H模型[5])為基礎(chǔ),提出一種基于相對(duì)定位誤差的工業(yè)機(jī)器人誤差補(bǔ)償模型,并考慮機(jī)器人負(fù)載和自重造成柔度誤差的影響,對(duì)工業(yè)機(jī)器人進(jìn)行誤差補(bǔ)償。周煒等[6]在傳統(tǒng)機(jī)器人參數(shù)標(biāo)定方法的基礎(chǔ)上,提出一種基于空間插值的工業(yè)機(jī)器人精度補(bǔ)償方法,并利用試驗(yàn)對(duì)方法的正確性進(jìn)行了驗(yàn)證。該方法通過對(duì)工業(yè)機(jī)器人的工作空間進(jìn)行網(wǎng)格劃分,并根據(jù)定位誤差相似度,實(shí)現(xiàn)對(duì)工業(yè)機(jī)器人的精度補(bǔ)償,但當(dāng)立方體網(wǎng)格太大時(shí),該方法的補(bǔ)償精度有所下降。洪鵬等[7]提出一種基于空間網(wǎng)格化的工業(yè)機(jī)器人變參數(shù)誤差模型,并利用激光跟蹤儀對(duì)KUKA機(jī)器人進(jìn)行運(yùn)動(dòng)學(xué)標(biāo)定,驗(yàn)證了方法的補(bǔ)償效果。該方法考慮了工業(yè)機(jī)器人的定位誤差在空間分布不均勻以及連桿柔度誤差,但網(wǎng)格劃分的數(shù)量極大地影響了該方法的補(bǔ)償效果。齊飛等[8]基于工業(yè)機(jī)器人的位姿誤差模型,通過冗余參數(shù)分析和最小二乘法修正了機(jī)器人的幾何參數(shù),并通過迭代補(bǔ)償提高工業(yè)機(jī)器人的定位精度。該方法增加了機(jī)器人幾何參數(shù)辨識(shí)的魯棒性和準(zhǔn)確性,但其在x坐標(biāo)方向和y坐標(biāo)方向的補(bǔ)償精度較低。Wang等[9]利用神經(jīng)網(wǎng)絡(luò)的自學(xué)習(xí)能力和容錯(cuò)性好的特點(diǎn),提出一種基于神經(jīng)網(wǎng)絡(luò)的工業(yè)機(jī)器人定位誤差估計(jì)方法,并進(jìn)行仿真驗(yàn)證。神經(jīng)網(wǎng)絡(luò)模型能夠有效地提高工業(yè)機(jī)器人的定位精度,并具有實(shí)時(shí)性,但神經(jīng)網(wǎng)路的訓(xùn)練需要大量的數(shù)據(jù),在進(jìn)行實(shí)際應(yīng)用時(shí)增加了測(cè)量工作。Chen等[10]考慮到工業(yè)機(jī)器人的絕對(duì)定位誤差與x,y,z軸上的定位誤差具有空間相似性,提出一種基于co-Kriging的精度補(bǔ)償方法,并以航空鉆孔機(jī)器人為研究對(duì)象進(jìn)行了實(shí)際補(bǔ)償試驗(yàn)。Zeng等[11]提出一種基于誤差相似度的機(jī)器人誤差補(bǔ)償方法,利用半方差函數(shù)對(duì)工業(yè)機(jī)器人定位誤差進(jìn)行量化,并結(jié)合激光跟蹤儀進(jìn)行了試驗(yàn)驗(yàn)證。該方法在一定程度上提高了工業(yè)機(jī)器人的絕對(duì)定位誤差,但該方法的補(bǔ)償效果受到半方差函數(shù)類型的影響。
針對(duì)上述問題,本文提出一種基于Kriging模型的工業(yè)機(jī)器人定位精度補(bǔ)償方法。該方法根據(jù)工業(yè)機(jī)器人的名義位置及對(duì)應(yīng)的定位誤差,建立兩者之間的Kriging模型,進(jìn)而預(yù)測(cè)工業(yè)機(jī)器人在工作空間任意位置的定位誤差。將預(yù)測(cè)的定位誤差逆補(bǔ)償至名義位置上,從而對(duì)工業(yè)機(jī)器人進(jìn)行精度補(bǔ)償,提高工業(yè)機(jī)器人的絕對(duì)定位精度。該方法可全面考慮各種影響工業(yè)機(jī)器人定位精度的因素,建模過程簡(jiǎn)單,補(bǔ)償精度高,適用廣泛。
D-H模型[12]常用來對(duì)工業(yè)機(jī)器人進(jìn)行運(yùn)動(dòng)學(xué)分析。設(shè)ai表示連桿i的長度,di表示連桿i-1到連桿i的偏置距離,αi表示連桿i的扭角,θi表示關(guān)節(jié)i的轉(zhuǎn)角,則連桿i-1到連桿i的齊次變換矩陣Ai可描述為
引入姿態(tài)矢量和位置矢量,式(1)可轉(zhuǎn)變?yōu)?/p>
式中:ni,oi,ai為3個(gè)姿態(tài)矢量,表示連桿i的坐標(biāo)系相對(duì)于連桿i-1坐標(biāo)系的方向余弦;Pi為連桿i相對(duì)于連桿i-1的位置矢量。
對(duì)于n自由度的工業(yè)機(jī)器人,機(jī)器人末端坐標(biāo)系相對(duì)于機(jī)器人基坐標(biāo)系的變換矩陣為
由1.1節(jié)描述可知,齊次變換矩陣Ai依賴于它的4個(gè)參數(shù)ai、di、αi和θi。當(dāng)工業(yè)機(jī)器人運(yùn)動(dòng)時(shí),根據(jù)微分理論,對(duì)式(1)兩邊取微分,可得
由式(1)和式(4)可得,Qa,Qα,Qd和Qθ分別可表示為
式(4)也可表示為dAi=Ai·δAi,δAi為Ai的誤差矩陣,其表達(dá)式為
將式(5)代入式(6)可得
式中:cαi、sαi分別為cosαi、sinαi的縮寫;δxiA、δyiA和δziA表示相對(duì)于i關(guān)節(jié)坐標(biāo)系各坐標(biāo)軸的旋轉(zhuǎn)誤差;dxiA、dyiA和dziA表示相對(duì)于i關(guān)節(jié)坐標(biāo)系各坐標(biāo)軸的位置誤差。
根據(jù)式(7)可得,相對(duì)于i關(guān)節(jié)坐標(biāo)系各坐標(biāo)軸的位置誤差矢量和旋轉(zhuǎn)誤差矢量分別為
參照式(4),相對(duì)于i關(guān)節(jié)坐標(biāo)系的位置誤差可用位置矢量Pi的微分形式表達(dá),即
對(duì)于六軸工業(yè)機(jī)器人,Δθ、Δa、Δα和Δd均由6個(gè)元素組成的矢量,當(dāng)工業(yè)機(jī)器人轉(zhuǎn)動(dòng)時(shí),a、α和d中的元素均為常數(shù),只有關(guān)節(jié)轉(zhuǎn)角θ為變量。因此,機(jī)器人末端的位置誤差ΔP可表示為關(guān)于θ的函數(shù),即
Kriging模型是以變異函數(shù)理論為基礎(chǔ),并基于協(xié)方差函數(shù)對(duì)隨機(jī)場(chǎng)進(jìn)行建模和預(yù)測(cè)的回歸算法[13]。其表達(dá)式為
式中:g(x)為實(shí)際函數(shù)值;f(x)為回歸函數(shù),表示模型的全局近似;β為回歸系數(shù);z(x)為服從正態(tài)分布N(0,σ2)的平穩(wěn)高斯過程,表示對(duì)回歸模型的偏差。z(x)的協(xié)方差為
式中,Rθ(xi,xj)為樣本點(diǎn)xi與xj的相關(guān)函數(shù),最常用的形式是高斯相關(guān)函數(shù)[14],其表達(dá)式為
式中:n為設(shè)計(jì)樣本空間的維數(shù);m表示θ、xi和xj的第m個(gè)元素。
給定n維訓(xùn)練樣本集x1,x2,…,xn及對(duì)應(yīng)的實(shí)際響應(yīng)值g,其中g(shù)=[g1,g2,…,gn]T,則對(duì)于待測(cè)點(diǎn)x,其Kriging預(yù)測(cè)值為
式中:β?為β的廣義最小二乘解,如式(15)所示;r(x)表示待測(cè)點(diǎn)x與其他訓(xùn)練點(diǎn)xi(i=1,2,…,n)之間的相關(guān)函數(shù)向量,可由式(16)表示。
考慮到Kriging模型可以給出空間最佳線性無偏估計(jì)[13],本文采用Kriging模型建立工業(yè)機(jī)器人的名義位置與對(duì)應(yīng)的定位誤差之間的映射關(guān)系,從而預(yù)測(cè)工業(yè)機(jī)器人在工作空間任意點(diǎn)的定位誤差。
由于工業(yè)機(jī)器人零部件的加工制造誤差,齒輪尺側(cè)的間隙,機(jī)械臂與關(guān)節(jié)的柔性及結(jié)構(gòu)部件的磨損等因素,造成工業(yè)機(jī)器人末端執(zhí)行器實(shí)際位置與名義位置之間產(chǎn)生誤差,從而使工業(yè)機(jī)器人產(chǎn)生定位誤差。設(shè)機(jī)器人末端執(zhí)行器在點(diǎn)P的定位誤差為e(P),其表達(dá)式為
式中:ex(P),ey(P)和ez(P)分別為P點(diǎn)定位誤差在x,y,z3個(gè)方向的誤差分量;ed(P)為P點(diǎn)的絕對(duì)定位誤差,其表達(dá)式為
由式(18)可知,P點(diǎn)的絕對(duì)定位誤差ed(P)是關(guān)于ex(P),ey(P)和ez(P)的函數(shù),因此,確定P點(diǎn)各坐標(biāo)方向的誤差之后,P點(diǎn)的絕對(duì)定位誤差即可求得。
根據(jù)已測(cè)得的工業(yè)機(jī)器人的名義位置Pt及對(duì)應(yīng)的定位誤差e(P),并以名義位置Pt為輸入,定位誤差e(P)為輸出,建立Kriging模型,則工業(yè)機(jī)器人在工作空間的任意位置的定位誤差均可由已建立的Kriging模型進(jìn)行預(yù)測(cè)。將工業(yè)機(jī)器人擬到達(dá)的名義位置輸入Kriging模型中,即可得到定位誤差的預(yù)測(cè)值e?(P)。根據(jù)得到的e?(P)對(duì)工業(yè)機(jī)器人進(jìn)行誤差補(bǔ)償,補(bǔ)償后機(jī)器人所要到達(dá)的名義位置如式(19)所示。補(bǔ)償后的名義位置為工業(yè)機(jī)器人的實(shí)際到達(dá)點(diǎn)位,從而提高了工業(yè)機(jī)器人的絕對(duì)定位精度。
對(duì)該方法進(jìn)行仿真驗(yàn)證時(shí),主要考慮運(yùn)動(dòng)學(xué)參數(shù)誤差對(duì)工業(yè)機(jī)器人定位精度的影響。以KUKA KR150-2型工業(yè)機(jī)器人為研究對(duì)象,如圖1所示,采用基于Kriging的誤差補(bǔ)償方法對(duì)其進(jìn)行定位精度補(bǔ)償,從而驗(yàn)證本文所提方法的有效性。其D-H參數(shù)如表1所示。
采用KUKA KR150-2型工業(yè)機(jī)器人對(duì)本方法進(jìn)驗(yàn)證時(shí),采用以下步驟。
第1步,給定工業(yè)機(jī)器人運(yùn)動(dòng)學(xué)參數(shù)的幾何誤差值。參考文獻(xiàn)[15]給定的工業(yè)機(jī)器人幾何參數(shù)誤差值,如表2所示,建立該型號(hào)工業(yè)機(jī)器人運(yùn)動(dòng)學(xué)誤差模型。
第2步,在工業(yè)機(jī)器人工作空間中隨機(jī)選定若干個(gè)定位點(diǎn),記為工業(yè)機(jī)器人的名義位置Pt。應(yīng)用表1中工業(yè)機(jī)器人的名義D-H參數(shù)進(jìn)行運(yùn)動(dòng)學(xué)逆解,得到對(duì)應(yīng)的名義關(guān)節(jié)轉(zhuǎn)角θt。
圖1 KUKA KR150-2型工業(yè)機(jī)器人結(jié)構(gòu)示意圖[2]Fig.1 The structural diagram of KUKA KR150-2
第3步,將名義關(guān)節(jié)轉(zhuǎn)角θt輸入含誤差的D-H模型中,即表1和表2對(duì)應(yīng)參數(shù)值相加,然后進(jìn)行運(yùn)動(dòng)學(xué)正解,從而得到工業(yè)機(jī)器人實(shí)際到達(dá)點(diǎn)Pa。此時(shí),工業(yè)機(jī)器人的定位誤差為e(P)=Pa-Pt。
第4步,以工業(yè)機(jī)器人的名義位置Pt為輸入,定位誤差的各坐標(biāo)方向分量ex(P)、ey(P)、ez(P)分別為輸出,建立Kriging模型。
第5步,采用其他定位點(diǎn)對(duì)模型進(jìn)行驗(yàn)證。將待測(cè)點(diǎn)的名義位置P′輸入第4步建立的Kriging模型中,得到對(duì)應(yīng)的定位誤差補(bǔ)償預(yù)測(cè)值e?(P′),比較e(P′)與e?(P′),從而判斷基于Kriging模型的誤差補(bǔ)償方法的有效性。
為驗(yàn)證方法的正確性,對(duì)該方法進(jìn)行舉例說明。采用拉丁超立方抽樣在工業(yè)機(jī)器人工作空間中隨機(jī)抽取150個(gè)定位點(diǎn),然后根據(jù)上述步驟采用任意50個(gè)點(diǎn)的名義位置和對(duì)應(yīng)的定位誤差建立Kriging模型,并以剩余100個(gè)點(diǎn)作為待測(cè)點(diǎn),用來檢驗(yàn)?zāi)P偷恼_性。結(jié)果如圖2所示。對(duì)比圖2a)~2c)可發(fā)現(xiàn),對(duì)于含誤差的D-H模型,工業(yè)機(jī)器人在y方向的定位誤差預(yù)測(cè)值最大,最大值為1.879 3 mm,平均誤差預(yù)測(cè)值為1.574 5 mm,z方向的平均誤差預(yù)測(cè)值最小,僅為0.267 4 mm,預(yù)測(cè)結(jié)果如表3所示。由表3可知,該型號(hào)工業(yè)機(jī)器人在y方向的定位精度最差,而z方向的定位精度最好,波動(dòng)范圍最小,由Kriging模型預(yù)測(cè)的單點(diǎn)定位誤差平均值為1.677 8 mm。Kriging模型預(yù)測(cè)的精度補(bǔ)償值與實(shí)際精度補(bǔ)償值的對(duì)比如圖2中紅線和黑線所示。從圖2中可以看出,實(shí)際的精度補(bǔ)償值和預(yù)測(cè)的精度補(bǔ)償值基本相同,且對(duì)比結(jié)果在表4有所體現(xiàn)。由表4可知,采用Kriging模型的精度補(bǔ)償方法所預(yù)測(cè)的精度補(bǔ)償值與工業(yè)機(jī)器人的實(shí)際精度補(bǔ)償值相比,單坐標(biāo)方向和單點(diǎn)的對(duì)比誤差均小于0.01 mm,最小值均為0 mm。圖2中的藍(lán)線為采用預(yù)測(cè)的補(bǔ)償值對(duì)工業(yè)機(jī)器人末端位置進(jìn)行補(bǔ)償后的結(jié)果。經(jīng)過精度補(bǔ)償后,KUKA KR150-2型工業(yè)機(jī)器人的末端實(shí)際位置與名義位置基本重合,單坐標(biāo)方向的最大誤差僅為0.008 2 mm,單點(diǎn)最大補(bǔ)償后誤差為0.008 4 mm。經(jīng)過仿真驗(yàn)證,基于Kriging模型的定位精度補(bǔ)償方法在工程上是可行的,經(jīng)過補(bǔ)償后工業(yè)機(jī)器人的實(shí)際位置與名義位置基本重合,有效地提高了工業(yè)機(jī)器人的絕對(duì)定位精度水平。
表1 KUKA KR150-2型工業(yè)機(jī)器人D-H參數(shù)表Tab.1 D-H parameters of KUKA KR150-2
表2 KUKA KR150-2型工業(yè)機(jī)器人幾何參數(shù)誤差Tab.2 Geometric parameters error of KUKA KR150-2
圖2 定位精度補(bǔ)償仿真結(jié)果Fig.2 Simulation results of positioning accuracy compensation
表3 模型預(yù)測(cè)精度補(bǔ)償值Tab.3 The value of model predicted accuracy compensation
表4 預(yù)測(cè)補(bǔ)償值與實(shí)際補(bǔ)償值的對(duì)比Tab.4 Comparison of predicted compensation and actual compensation
本文針對(duì)工業(yè)機(jī)器人絕對(duì)定位精度低的特點(diǎn),提出一種基于Kriging模型的定位精度補(bǔ)償方法。根據(jù)工業(yè)機(jī)器人所要到達(dá)的名義位置及對(duì)應(yīng)的定位誤差建立Kriging模型,從而對(duì)工業(yè)機(jī)器人的定位誤差進(jìn)行預(yù)測(cè),進(jìn)而根據(jù)預(yù)測(cè)的定位誤差對(duì)工業(yè)機(jī)器人進(jìn)行精度補(bǔ)償。
1)與傳統(tǒng)的精度補(bǔ)償方法不同,本方法根據(jù)建立的Kriging模型預(yù)測(cè)任意位置的定位誤差,將預(yù)測(cè)值逆補(bǔ)償至名義位置上。根據(jù)補(bǔ)償后的名義位置進(jìn)行運(yùn)動(dòng)學(xué)逆解求得對(duì)應(yīng)關(guān)節(jié)轉(zhuǎn)角,使工業(yè)機(jī)器人進(jìn)行運(yùn)動(dòng),從而提高其絕對(duì)定位精度。
2)以KUKA KR150-2工業(yè)機(jī)器人為研究對(duì)象,對(duì)本方法進(jìn)行了仿真驗(yàn)證。由結(jié)果可知,工業(yè)機(jī)器人在任意點(diǎn)的定位誤差預(yù)測(cè)值與實(shí)際定位誤差基本相同,最大偏差僅為0.005 5 mm。經(jīng)過補(bǔ)償后,工業(yè)機(jī)器人的絕對(duì)定位精度在單坐標(biāo)方向的最大值為0.008 2 mm,單點(diǎn)絕對(duì)定位精度最大值為0.008 4 mm,平均值為0.001 8 mm。
3)仿真驗(yàn)證時(shí)主要考慮了運(yùn)動(dòng)學(xué)參數(shù)誤差對(duì)定位精度的影響,在實(shí)際工作過程中,工業(yè)機(jī)器人定位精度還會(huì)受到其他因素影響,如負(fù)載變化、環(huán)境溫度和零部件磨損等,在后續(xù)工作中會(huì)進(jìn)一步研究。
表5 補(bǔ)償后機(jī)器人實(shí)際位置與名義位置的誤差Tab.5 The error of actual position and nominal position after compensation