?

基于支持向量回歸模型的機器人誤差補償算法

2024-01-10 10:08肖文磊姚開然涂志健齊琦孫子惠于奚振張煌
機器人技術與應用 2023年6期
關鍵詞:點位閉環補償

肖文磊 姚開然 涂志健 齊琦 孫子惠 于奚振 張煌

(1北京航空航天大學機械工程及自動化學院,北京,100191;2蕪湖賽寶機器人產業技術研究院有限公司,安徽蕪湖,241000)

0 引言

隨著制造企業智能化發展,以及對智能化程度要求的不斷提升,工業機器人在數控加工中的應用也越來越普及。傳統的工業機器人一般采用人工示教的方法確定所處位置,這種方法高度依賴機器人的重復定位精度,應用場景多為簡單的工業應用,無法滿足復雜加工任務。主流的、基于CAD 軟件的機器人離線編程方式又需要很高的絕對定位精度,如果機器人末端位置偏差較大,會導致離線編程與實際加工現場不符合。為此,亟需開展工業機器人絕對定位精度的相關研究。

基于模型對機器人進行校準是提升工業機器人絕對定位精度的有效手段。ROTH[1]將機器人標定分為關節標定、運動學標定以及非運動學標定。機器人校準方法可以分為基于模型的校準和無模型校準?;谀P偷男适墙C器人的運動學模型,并對其中的運動學參數進行辨識。相關經典工作包括DANEVIT 和HARTENBERG[2]提出的DH 參數法,HAYATI[3]提出的MDH 法,STONE[4]、ZHUANG[5]等提出了連續參數模型等。由于DH 參數法及其衍生方法都是利用齊次矩陣對機器人各關節間位姿變換建模,隨著機器人關節增加,建模會相當復雜,不利于求解。近年來,基于李代數的指數積方法逐漸流行,代表性工作包括BROCKETT[6]的機械臂指數積運動學方程(POE),CHEN[7]提出的本地POE建模校準方法等。

上述基于模型的校準主要用于解決機器人幾何誤差問題,對于非幾何誤差,主流方法包括有限元法、虛擬關節法等。另外,對于復雜的非幾何誤差建模,主要采用真實數據集和神經網絡相結合的方式擬合非幾何誤差,包括深度神經網絡[8]、徑向基函數(RBF)神經網絡[9]等。但全空間采用神經網絡訓練較為復雜且精度不高,因此有學者提出直接對機器人工作空間誤差進行插值計算。周煒[10]提出了空間插值立方體劃分,MA[11]利用切比雪夫多項式對機器人的關節轉角誤差進行擬合,ALICI[12]利用傅里葉多項式直接對空間誤差進行擬合。

本文搭建了支持向量回歸(Support Vector Regression,SVR)模型,通過向模型輸入機器人末端的理論位置,從而預測機器人末端補償量;在模型訓練過程中,采用粒子群優化(Particle Swarm Optimization, PSO)算法對模型的部分參數進行了優化,提升了模型的預測精度。

1 PSO-SVR 預測模型

SVR 算法的數學形式可以表述為:

圖1 為特征量為1 時的SVR 算法示意圖。

圖1 SVR 算法示意圖

將式(7)—式(10)帶入式(6)的拉格朗日函數中,即可得到SVR 模型的對偶問題:

常用的核函數包括多項式核函數、徑向基核函數和sigmond 核函數。其中,徑向基核函數能夠較好地適應非線性問題,因此,本文選取徑向基核函數作為模型中的核函數。徑向基核函數的函數表達式為:

2 誤差補償算法

采用SVR 算法對機器人誤差進行預測分為三步:

1)獲取訓練集。

在機器人的工作空間內選擇多個隨機點位。對于每一個隨機點位,將該點位作為目標位置輸入至機器人控制器,待機器人行走完成后,由激光跟蹤儀測量出機器人末端實際位置與理論位置之差,驅動機器人對點位差值進行補償。待補償結束后,激光跟蹤儀再次測量末端實際位置與理論位置之差,迭代上述過程。如此反復,直到機器人末端實際位置與理論位置之差小于0.05mm。這一步被稱作迭代閉環補償。在針對每一個隨機點位的實驗過程中,記錄機器人的理論位置,并將其作為模型輸入,機器人實際補償指令的總和作為模型輸出,如此構成訓練集。

2)訓練模型。

將訓練集放入SVR 模型中進行訓練。在本研究中,優化過程采用PSO 算法實時優化調整SVR 模型中的參數和。

3)模型驗證。

類似于步驟1),重新在機器人的工作空間選取多個隨機點位。對于每一個隨機點位,將其作為目標位置驅動機器人行走,并對其進行精度小于0.05mm 的迭代誤差補償,記錄下迭代誤差補償指令的總和,作為真實補償量。而后,重新將點位作為目標位置驅動機器人行走,并以點位位置作為模型輸入,輸入至訓練出的SVR 模型,得到模型輸出,也就是SVR 模型計算所得的補償量,稱之為預測補償量。將該補償量與真實補償量進行對比,驗證模型有效性。

SVR 算法的流程圖如圖2 所示。

圖2 SVR 算法的流程圖

從模型,即式(11)可以看出,SVR 模型是一種多輸入單輸出模型。由于機器人末端點位存在3 個XYZ 自由度,因此需要訓練3 個SVR 模型,每個模型均以機器人的初始位置作為模型輸入,三個方向上的預測補償量作為模型的輸出。

3 模型訓練結果以及實驗驗證

3.1 實驗設備

為了提供模型訓練的數據集以及進行實驗驗證,本研究搭建了基于激光跟蹤儀的機器人位置測量系統,系統實驗現場如圖3 所示。該系統主要由工業機器人、TwinCAT 主站和激光跟蹤儀構成。系統拓撲與通訊協議如圖4 所示。

圖3 系統實驗現場

圖4 系統拓撲與通訊協議

工業機器人的型號為KUKA KR6 R700 sixx,其控制箱內部的Beckhoff 模塊EL6695 可作為網橋,可通過E-bus和EtherCAT 總線連接工業機器人控制器以及TwinCAT 主站,實現兩者之間的信息交互。KUKA 機器人控制箱內部搭載有MxAutomation 軟件模塊,該模塊為TwinCAT 主站提供了機器人監控接口。

激光跟蹤儀的型號為Leica AT901,通過TCP/IP 與TwinCAT 主站通訊,可實時測量機器人末端的位置。TwinCAT 主站在接收到激光跟蹤儀的數據包后,實時對數據包進行解析,從而得到機器人末端的位置數據。

3.2 PSO-SVR 模型訓練

在機器人空間中選取500mm×200mm×150mm 矩體范圍,在其中隨機采樣200 個點作為數據集。選取其中50 個點作為測試集,剩余150 個點作為訓練集。采樣點分布如圖5 所示。

圖5 采樣點分布

X、Y、Z 三個方向的PSO 優化結果如圖6 所示。

圖6 三個方向上PSO 算法的迭代效果

從圖6 中可以看出,隨著迭代次數的增加,SVR 的預測值和真實值之差的絕對平均值,即預測誤差絕對平均值逐漸減小,并最終逐步收斂到一個較低的值,這也意味著PSO 算法的適應度函數值逐漸增大且收斂。由PSO 算法優化三個SVR 模型的參數如表1 所示。

表1 PSO 優化的SVR 參數結果

圖7 為X、Y、Z 三個方向SVR 模型預測補償量與真實補償量的對比,其中的SVR 模型采用表1 的參數數據。

圖7 預測補償量與真實補償量

SVR 模型在X、Y、Z 三個方向上的預測補償量與真實補償量之差的絕對平均值分別為:0.0159mm、0.018mm和0.0538mm??紤]到工業機器人重復定位精度大致在0.01mm 這一量級,可以認為SVR 模型在補償量上的預測是準確的。同時,注意到SVR 模型在Z 方向上的預測誤差明顯高于X 方向和Y 方向。這是由于機器人自重對補償量的影響會因為定位位姿的變化而變化,相當于引入了新的非線性因素,進而使SVR 模型預測效果在這一方向上變差。對于X 方向和Y 方向,因為不存在重力這一干擾,所以SVR 模型具有相對于Z 方向上更佳的預測精度。

3.3 精度補償實驗

本實驗中,利用測試集的50 個點位進行離線編程,生成指令軌跡程序,并驅動機器人執行。之后直接利用SVR 模型計算出的預測補償量驅動機器人進行補償。此外,在PSO-SVR 模型訓練的過程中,驗證模型結果的測試集時還需要記錄下這50 個點位在進行迭代閉環補償前、后的誤差,作為判斷補償效果的依據。誤差補償效果如圖8 所示。

圖8 誤差補償效果

在迭代閉環補償前,機器人的平均定位誤差為0.9024mm;在迭代閉環補償后,機器人的平均定位誤差降低至0.03mm;利用SVR 計算預測補償量進行的補償,機器人平均定位誤差為0.0845mm。上述三種情況的定位誤差方差分別為:0.014812、0.000091022 和0.0010119。

從數據上看,基于SVR 模型的補償精度相對于機器人本身的定位精度,提高了一個數量級,且定位穩定性更佳。但相對于迭代閉環補償,基于SVR 模型的補償無論是從精度,還是從穩定性上來看,仍然存在一定的差距。這一差距是由SVR 模型本身的局限性所導致的,這種局限性包括模型容忍域引入的模糊性,核函數無法完美地將非線性樣本修正為高維的線性樣本,等等。盡管迭代閉環補償本身的補償過程就決定了其誤差在0.05mm以內,但這種補償過程極其費時,且在整個過程中都依賴于外部的測量設備(在本研究中即激光跟蹤儀)。因此從補償過程的快速性和便捷性來看,基于SVR 模型的補償相對于迭代閉環補償具有較大的優勢。

4 結論

本文介紹了一種基于PSO-SVR 方法的工業機器人誤差補償方法。該方法首先通過對機器人進行閉環迭代補償,獲取機器人理論點位和真實補償量所構成的訓練集;再對該訓練集進行訓練,建立了SVR 模型,用于表征理論位置與補償量之間的映射關系;在訓練過程中,采用PSO優化算法整定了SVR 模型所涉及的懲罰參數以及核函數系數,以期通過SVR 模型計算達到更好的預測效果。

本研究搭建了以KUKA KR6 R700 sixx 為執行機構的實驗平臺,在其上依據PSO-SVR 方法訓練了SVR 模型,并采用模型所預測的補償量對測試集進行了補償實驗。實驗結果表明,該方法能較準確地預測出工業機器人的誤差補償量,依據此補償量進行的補償能夠有效地提升機器人的定位精度。此外,該方法的補償過程相對于閉環迭代補償更為快捷,為實際應用中工業機器人的誤差補償提供了解決途徑。

猜你喜歡
點位閉環補償
機器人快速示教方法及示教點位姿變換的研究
無功補償電容器的應用
機器人點位控制速度規劃算法選擇策略
單周期控制下雙輸入Buck變換器閉環系統設計
解讀補償心理
雙閉環模糊控制在石化廢水處理中的研究
垂直面內建立基線的特殊點位高程測量法
最優價格與回收努力激勵的閉環供應鏈協調
植物補償和超補償作用
一種基于全閉環實時數字物理仿真的次同步振蕩阻尼控制
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合