李慰萱, 李 凱, 邢志勇
(上海寶冶集團(tuán)有限公司,上海 201908)
隨著機(jī)器人技術(shù)的快速發(fā)展,工業(yè)機(jī)器人逐漸被應(yīng)用于航天工業(yè)、衛(wèi)星制造等高端制造領(lǐng)域[1-2]。“十三五”規(guī)劃期間的“智能機(jī)器人”重點專項指出,工業(yè)機(jī)器人應(yīng)用于高端制造領(lǐng)域時,其絕對定位精度應(yīng)優(yōu)于0.05 mm。目前工業(yè)機(jī)器人的絕對定位精度仍僅為毫米級,尚無法滿足高端制造領(lǐng)域的精度要求。
引起工業(yè)機(jī)器人定位誤差的因素較多,而運動學(xué)參數(shù)誤差是影響工業(yè)機(jī)器人定位精度的主要誤差源之一[3]。機(jī)器人運動學(xué)參數(shù)誤差的標(biāo)定步驟主要包含參數(shù)誤差模型建立、機(jī)器人誤差測量、誤差參數(shù)辨識和機(jī)器人誤差補(bǔ)償4個基本步驟。目前工業(yè)機(jī)器人廣泛使用DH模型、POE模型等,而在建立機(jī)器人運動學(xué)參數(shù)誤差模型時,還有ZRM模型、CPC模型等[4]。機(jī)器人誤差測量主要采用激光跟蹤儀、多拉線傳感器、立體視覺測量系統(tǒng)等。其中,激光跟蹤儀是目前機(jī)器人標(biāo)定過程中最常用的測量設(shè)備[5]。但根據(jù)測量靶標(biāo)的不同,能夠測量的機(jī)器人誤差數(shù)據(jù)分為位置誤差和姿態(tài)誤差。根據(jù)測量誤差數(shù)據(jù)的不同,可以建立位置誤差模型、距離誤差模型和位姿誤差模型[6]。由于當(dāng)前工業(yè)現(xiàn)場對于位置精度要求較高,因此目前機(jī)器人標(biāo)定技術(shù)中常用位置誤差模型除運動學(xué)參數(shù)誤差以外,還有柔性參數(shù)誤差和關(guān)節(jié)參數(shù)誤差等影響機(jī)器人精度性能的誤差[7]。在關(guān)節(jié)參數(shù)誤差中,減速比和耦合比參數(shù)誤差也會導(dǎo)致機(jī)器人精度的下降。
通過忽略高階項可以對誤差模型進(jìn)行線性化,但所得到的誤差模型仍然是一個多參數(shù)的優(yōu)化求解問題。傳統(tǒng)的最小二乘法、LM算法都受到目標(biāo)函數(shù)的雅可比矩陣奇異性的影響,從而導(dǎo)致算法優(yōu)化效果不穩(wěn)定。除了傳統(tǒng)的優(yōu)化算法以外,譬如粒子群優(yōu)化算法、遺傳算法等智能算法能夠很好地避免雅可比矩陣奇異性的問題。溫秀蘭等[8]利用改進(jìn)烏鴉優(yōu)化算法實現(xiàn)Staubli TX60機(jī)器人的運動學(xué)參數(shù)誤差辨識,將該機(jī)器人位姿精度提升了70%。房立金等[9]基于量子粒子群算法實現(xiàn)了并聯(lián)機(jī)器人的運動學(xué)參數(shù)標(biāo)定,將該并聯(lián)機(jī)器人的誤差從0.091 2 mm降低到0.010 8 mm。Liu[10]利用遺傳算法實現(xiàn)六自由度串聯(lián)機(jī)器人的運動學(xué)參數(shù)標(biāo)定,將該機(jī)器人的位置誤差從8.72 mm降低到0.427 mm。喬貴方等[11]基于 BAS-PSO優(yōu)化算法實現(xiàn)機(jī)器人的運動學(xué)參數(shù)辨識,將機(jī)器人的平均綜合位置誤差從0.312 0 mm降低為0.093 8 mm。以上文獻(xiàn)僅考慮了運動學(xué)參數(shù)誤差對機(jī)器人精度性能的影響,忽略了減速比參數(shù)等。為進(jìn)一步提高機(jī)器人的標(biāo)定效果,本文針對串聯(lián)機(jī)器人標(biāo)定技術(shù)開展研究。首先建立了運動學(xué)參數(shù)和減速比參數(shù)的統(tǒng)一誤差模型,其次提出了一種改進(jìn)布谷鳥搜索算法(Cuckoo Search Algorithm,CSA)以實現(xiàn)多參數(shù)的精確辨識,最后通過實驗驗證了該統(tǒng)一模型和改進(jìn)布谷鳥算法的有效性。
圖1 DH模型中的坐標(biāo)系轉(zhuǎn)換
(1)
式中:i=1,2,…,6為自由度,即關(guān)節(jié)點;n為該轉(zhuǎn)換矩陣代入名義運動學(xué)參數(shù)值,即模型基座到機(jī)械手的矩陣量作乘。
而當(dāng)相鄰兩軸平行或接近平行時,則存在奇異性問題。MDH模型在相鄰平行關(guān)節(jié)的描述參數(shù)上增加了角度參數(shù)βi[11],如式(2)所示。
(2)
減速比是指機(jī)器人關(guān)節(jié)減速機(jī)的傳動比值,一般關(guān)節(jié)編碼器安裝在伺服電機(jī)的末端,減速機(jī)安裝在伺服電機(jī)的輸出端,關(guān)節(jié)編碼器的值無法精確反饋機(jī)器人關(guān)節(jié)位置。因此,機(jī)器人關(guān)節(jié)每轉(zhuǎn)動一定角度都會造成一定比例的關(guān)節(jié)角度偏差,因此,本文在運動學(xué)模型的基礎(chǔ)上加入減速比ki和耦合比h兩個參數(shù),其中減速比ki與關(guān)節(jié)角度名義值θni、關(guān)節(jié)角度實際值θri之間的關(guān)系如式(3)所示。
θri=kiθni
(3)
耦合比h僅存在于關(guān)節(jié)6中,該參數(shù)表示關(guān)節(jié)5對關(guān)節(jié)6的影響,h與關(guān)節(jié)角度名義值θn5、θn6和減速比k5和k6之間的關(guān)系如式(4)所示。
θr6=k6θn6+hk5θn5
(4)
將式(3)和式(4)代入運動學(xué)模型矩陣(2)中可以得到包含運動學(xué)參數(shù)、減速比參數(shù)和耦合比參數(shù)的統(tǒng)一模型表達(dá)式。
機(jī)器人的名義末端位姿Tn矩陣可表示為
(5)
式中:Rn和Pn分別為名義旋轉(zhuǎn)矩陣和名義位置向量。
而實際情況中機(jī)器人的運動學(xué)模型參數(shù)ai、di、αi、θi、βi,減速比ki和耦合比h存在一定誤差Δai、Δdi、Δαi、Δθi、Δβi、Δki、Δh。因此,機(jī)器人實際末端位姿矩陣Tr可表示為
藜麥購買于沽源縣天然園農(nóng)場;辛/癸酸甘油酯(MCT),印度尼西亞Britz Networks Sdn. Bhd.;尼羅紅,阿拉丁試劑有限公司,其它化學(xué)試劑均為國產(chǎn)分析純,實驗所用水為二級蒸餾水。
(6)
式中:Rr和Pr分別為實際旋轉(zhuǎn)矩陣和實際位置向量。
本文所采用的測量設(shè)備在能夠測量機(jī)器人末端位置的情況下,通過對Pn的每一列運動學(xué)參數(shù)進(jìn)行微分,可以得到機(jī)器人的位姿誤差模型,如式(7)所示。
dP=Pr-Pn=HpΔη
(7)
CSA[12]是劍橋大學(xué)Yang教授提出的一種啟發(fā)算法。CSA是一種通過模擬布谷鳥的寄生育雛來求解最優(yōu)問題的算法,該算法采用Levy飛行搜索機(jī)制,有效地提升了CSA的效率。典型的CSA算法流程如下所示。
① 隨機(jī)產(chǎn)生初始化種群,n個鳥巢位置;
② 根據(jù)目標(biāo)函數(shù)計算適應(yīng)度,計算并保留最好的鳥巢位置;
③ 根據(jù)Levy飛行更新鳥巢位置;
④ 計算新位置的適應(yīng)度,并同原鳥巢的適應(yīng)度對比,擇優(yōu)保留;
⑤ 將發(fā)現(xiàn)概率Pc與代表外來鳥蛋被發(fā)現(xiàn)概率的隨機(jī)數(shù)作比較,若發(fā)現(xiàn)概率Pc較大,則重新隨機(jī)生成一個新鳥巢位置并計算適應(yīng)度;
⑥ 若滿足終止條件,輸出最好的鳥巢位置,否則回到步驟③。
CSA的尋優(yōu)效率受限于Levy搜索策略,Levy搜索步長和方向的隨機(jī)性很大,如圖2所示。基于Levy搜索的CSA收斂速度慢,求解精度低,易陷入局部最優(yōu)。為了提高算法求解效率和精度,本文引入對數(shù)調(diào)整系數(shù)修正Levy搜索步長,從而提高算法的全局收斂性和收斂速度。在迭代前期,對數(shù)調(diào)整的系數(shù)曲線下降更快,從而有利于全局探索、快速定位最優(yōu)解的大致范圍;在迭代后期,對數(shù)調(diào)整的系數(shù)曲線下降平緩,有利于局部精細(xì)搜索,進(jìn)而找到全局最優(yōu)解。因此,本文采用的對數(shù)調(diào)整系數(shù)如式(8)所示。
圖2 CSA中Levy維飛行軌跡
(8)
式中:Xi為第i維迭代參數(shù);t為當(dāng)前迭代次數(shù);κmax,κmin為κ的初值和終值;η為對數(shù)調(diào)整系數(shù);max_number為最大迭代次數(shù)。本文設(shè)定κmax=0.9,κmin=0.4,η=1,max_number=1 000。
采用改進(jìn)CSA優(yōu)化計算機(jī)器人誤差參數(shù)誤差時,其適應(yīng)度函數(shù)如式(9)所示。該適應(yīng)度函數(shù)是運動學(xué)參數(shù)、減速比參數(shù)和耦合比參數(shù)誤差集(Δai,Δdi,Δαi,Δθi,Δβi,Δki,Δh)的函數(shù),通過改進(jìn)CSA優(yōu)化算法搜索誤差參數(shù),使適應(yīng)度函數(shù)f為最小。在優(yōu)化過程中搜索誤差參數(shù)的取值范圍定為[-1,1]。
(9)
式中:N為標(biāo)定點數(shù)目,一般為50。
本文所搭建的機(jī)器人標(biāo)定試驗系統(tǒng)使用Leica AT930激光跟蹤儀和Staubli TX60工業(yè)機(jī)器人,如圖3所示。相關(guān)數(shù)據(jù)處理軟件是Spatial Analyzer和MATLAB。本文待標(biāo)定的Staubli TX60工業(yè)機(jī)器人的重復(fù)定位精度為±0.02 mm,額定負(fù)載為3 kg。所涉及的測量過程均符合GB/T 12642-2013《工業(yè)機(jī)器人 性能規(guī)范及其試驗方法》標(biāo)準(zhǔn)[13]。實驗中以機(jī)器人的基坐標(biāo)系為參考坐標(biāo)系,在Staubli TX60工業(yè)機(jī)器人前方的正方體空間內(nèi)隨機(jī)選擇160個測量點,并且保證測量點能夠盡可能地分布在立方體的空間內(nèi),其中110個測量點作為參數(shù)辨識數(shù)據(jù)集,50個點作為模型參數(shù)驗證數(shù)據(jù)集。為評價機(jī)器人精度性能參數(shù)的提升效果,本文定義了平均綜合位置誤差如式(10)所示。
圖3 工業(yè)機(jī)器人標(biāo)定實驗系統(tǒng)
(10)
式中:M為數(shù)據(jù)集中的測試點個數(shù)。
本文待標(biāo)定的機(jī)器人參數(shù)名義值如表1所示,利用改進(jìn)CSA優(yōu)化算法辨識機(jī)器人的運動學(xué)參數(shù)誤差如表2所示。具體辨識數(shù)據(jù)集和驗證數(shù)據(jù)集的處理結(jié)果如圖4所示。辨識點集中的Staubli TX60機(jī)器人的平均綜合位置誤差從0.648 5 mm降低為0.062 9 mm,機(jī)器人的位置精度性能提升了90.3%,驗證點集中的Staubli TX60機(jī)器人的平均綜合位置誤差從0.646 4 mm降低為0.085 9 mm,機(jī)器人的位置精度性能提升了86.7%。從而說明,經(jīng)過改進(jìn)CSA算法辨識得到的機(jī)器人運動學(xué)參數(shù)誤差、減速比參數(shù)誤差以及耦合比參數(shù)誤差值更符合機(jī)器人實際結(jié)構(gòu)參數(shù)。同時也驗證了本文提出的運動學(xué)參數(shù)、減速比參數(shù)和耦合比參數(shù)的統(tǒng)一建模,能夠有效地提升機(jī)器人的精度性能。
表1 Staubli TX60機(jī)器人的名義參數(shù)
表2 待標(biāo)定機(jī)器人的參數(shù)辨識誤差值
圖4 Staubli TX60機(jī)器人標(biāo)定前后的實驗結(jié)果對比
本文首先闡述了工業(yè)機(jī)器人關(guān)節(jié)誤差和運動學(xué)誤差的統(tǒng)一建模方法,將關(guān)節(jié)的減速比參數(shù)和耦合比參數(shù)與運動學(xué)參數(shù)進(jìn)行統(tǒng)一建模;其次提出了一種改進(jìn)CSA優(yōu)化算法的多參數(shù)辨識方法,采用對數(shù)調(diào)整系數(shù)修正Levy搜索步長,提升了算法的收斂性和精確性。為了驗證以上模型和辨識方法的有效性,本文構(gòu)建了串聯(lián)型工業(yè)機(jī)器人標(biāo)定實驗系統(tǒng)。通過在Staubli TX60機(jī)器人的運動空間內(nèi)測量160個測量點,分別構(gòu)成辨識點集和驗證點集。實驗結(jié)果表明,利用本文提出的誤差模型和辨識方法,能夠?qū)C(jī)器人位置誤差降低86.7%以上,能夠?qū)⒈孀R點集中的Staubli TX60機(jī)器人的平均綜合位置誤差從0.648 5 mm降低為0.062 9 mm,相較于優(yōu)化前機(jī)器人位置誤差降低為0.072 2 mm,模型定位誤差進(jìn)一步降低了12.9%;同樣,利用本文提出的誤差模型和辨識方法,驗證點集中的Staubli TX60機(jī)器人的平均綜合位置誤差從0.646 4 mm降低為0.085 9 mm,相較于優(yōu)化前機(jī)器人位置誤差降低為0.090 2 mm,模型定位誤差進(jìn)一步降低了4.77%。本文提出的改進(jìn)CSA優(yōu)化算法能夠較好地提升工業(yè)機(jī)器人的精度性能。