周 祥,杜姍姍
(南京理工大學計算機科學與工程學院,南京210094)
工業(yè)機器人的應用越來越廣泛。然而現(xiàn)今的機器人的重復定位精度高而絕對定位精度低,為了滿足更多復雜任務的工作需求,標定機器人的準確參數(shù)變得尤為重要[1]。
機器人標定就是采用測量手段或者基于運動學模型的參數(shù)識別方法辨識出機器人模型的準確參數(shù),從而提高機器人絕對精度的過程[2]。標定可以細分為參數(shù)標定、自標定以及正標定和逆標定等關鍵標定技術(shù)[3]。參數(shù)標定是獲得運動學模型的一種相對有效且經(jīng)濟的標定方法[4-6]。其中零位標定屬于參數(shù)的一種,是提高機器人定位精度最重要的一種標定方法[7]。
本文研究基于點約束的標定方法。在機器末端固定激光器,在機器人工作空間內(nèi)放置一個位置傳感器位置敏感檢測器(Position Sensitive Detector,PSD),使激光以多個位姿定位到位置傳感器的中心,實現(xiàn)點約束。單點約束要求激光線以多個姿態(tài)近似垂直投射在PSD表面,激光線的傾斜照射可能帶來一定誤差。另一方面機器人的標定系統(tǒng)中,可能存在其他系統(tǒng)誤差,如桿件參數(shù)誤差?;邳c約束,本文提出多點約束進行標定,將PSD裝置放置在機器人可達空間的多個位置,在每一位置上進行少量次數(shù)的激光定位,實現(xiàn)多點約束。通過仿真和實驗,對比空間PSD多點分布與PSD單點約束的標定效果。
為了對機器人進行標定,首先要建立機器人的運動學模型,DH模型是應用最廣泛的一種機器人建模模型,DH模型可以唯一地描述機器人運動鏈的結(jié)構(gòu)[8]。DH 模型用αi,θi,ai,di這4個參數(shù)來描述機器人的連桿坐標系,對于旋轉(zhuǎn)關節(jié),θi是關節(jié)變量,其余3個參數(shù)是機器人連桿機構(gòu)固有幾何參數(shù)。其他3個參數(shù)分別為桿件長度ai、桿件扭角αi以及關節(jié)平移量di。利用DH模型進行機器人建模。建立軸i-1與軸i之間的齊次變換矩陣如下:
則六自由度工業(yè)機器人從機器人基坐標到機器人末端坐標系的變換矩陣可得如下:
用δi表示第i個關節(jié)的零位誤差值,軸與軸之間的變換關系建立之后,結(jié)合零位誤差值,重新建立帶誤差的DH模型,相應的齊次變換矩陣如下:
在之前的研究中,主要采用單點約束模型[9-10]。機器人末端執(zhí)行器上固定激光器,當PSD位置固定不變時控制機器人使激光線近似垂直投射到PSD中心點。多次調(diào)整機器人位姿,進行激光定位,使多條激光線交于同一點,即PSD中心點,實現(xiàn)單點約束,單點約束的原理如圖1所示。
圖1 單點約束標定原理
機器人標定系統(tǒng)中可能存在其他系統(tǒng)誤差,如DH模型的誤差以及激光定位時的定位誤差等,本文提出用多點約束進行標定的方法,主要思想是在機器人的工作空間內(nèi),多個位置內(nèi)放置PSD,每個位置上進行少量激光定位,最終多個位置上均實現(xiàn)點約束,標定原理如圖2所示。
圖2 多點約束標定原理
實驗中用到的PSD是高精度的位置傳感器,可以實現(xiàn)高精度定位,可以認為PSD在每一個位置上的多條激光線準確交于同一個點,即PSD的中心點。由于機器人系統(tǒng)中存在零位誤差,通過運動學正解求出末端姿態(tài),進而得到每個位置上的多條激光線在機器人坐標系下的直線方程,這些直線方程存在誤差,從而多條直線方程兩兩之間求得的交點并不是同一個點。因此,單點約束的標定過程就是通過迭代計算使得標定后兩兩之間的交點收斂為同一點,即PSD中心點,而多點約束就是在每一位置上的交點分別收斂至各位置上PSD的中心點。
在標定系統(tǒng)中激光器在末端執(zhí)行器上的位置是固定的,則激光線在機器人末端坐標系下的直線表示為:
其中,(xOE,yOE,zOE)是激光線通過的某一固定點在機器人末端坐標系下的坐標;(mOE,nOE,pOE)是該激光線在機器人末端坐標系下的單位方向向量;激光線在機器人坐標系下的直線方程為:
任意一條激光線方程記為L(mi,ni,pi,xi,yi,zi),從而可以求出任意兩條激光線的交點或者兩條激光線之間公垂線的中點。
單點約束模型中,機器人末端限制最終激光束交于PSD的中心點,求出每2條激光線之間的交點,當交點不存在時用這2條激光線公垂線的中心點代替交點,以每一交點到所有交點平均值之間的距離作為優(yōu)化目標函數(shù):
多點約束中將PSD放置在機器人可達空間的多個位置,在每一個位置上進行較少次數(shù)的激光定位,以每一個位置上的交點到其交點平均值之間的距離作為優(yōu)化目標函數(shù):
其中,n表示PSD放置的位置個數(shù);為每一位置上,激光定位的次數(shù)。
本文用LM[11]算法對零位角進行迭代補償,使得單點約束和多點約束下的交點均能收斂,標定出機器人的零位誤差。
本文中標定系統(tǒng)的結(jié)構(gòu)如圖3所示,主要包括工業(yè)機器人ABB IRB120,固定在末端執(zhí)行器上的激光器,采集卡以及PSD(位置敏感器件)。
圖3 標定系統(tǒng)結(jié)構(gòu)
標定步驟如下:
(1)將PSD裝置放在工業(yè)機器人有效工作空間內(nèi),控制機器人,使得激光束近似垂直投射到PSD表面,并精確定位到PSD的表面中心點,記錄該位置的關節(jié)角[12]。
(2)在此位置的基礎上,調(diào)整機器人的位姿進行相同的M-1次定位,則PSD在該處共進行了M次定位,M條激光線投射到相同的點,即PSD在當前位置下的中心點,實現(xiàn)了單點約束數(shù)據(jù)采集。
(3)移動PSD,重復步驟(1)和步驟(2),在該位置進行K(K<M)次定位。
(4)移動PSD至其他N-1個位置,重復步驟(3),實現(xiàn)N個位位置上較少次數(shù)的激光定位,記錄N×K組關節(jié)角,完成多點約束的數(shù)據(jù)采集。
(5)根據(jù)優(yōu)化模型,分別計算單點約束和多點約束的標定結(jié)果。
本文主要研究點約束中約束點的分布對零位標定結(jié)果的影響,分別進行單點約束與多點約束下的仿真與實驗。實驗平臺是ABB IRB120工業(yè)機器人,圖4為實驗系統(tǒng)圖。
圖4 實驗系統(tǒng)
仿真1在仿真的機器人系統(tǒng)中,只含有零位誤差,不含其他系統(tǒng)噪聲,設定同樣的零位誤差值,分別對單點約束以及多點約束進行仿真。
單點約束仿真數(shù)據(jù)為7組點,即將PSD在某一位置上進行7組定位,仿真結(jié)果如圖5所示。
圖5 單點約束仿真結(jié)果
在多點約束仿真中,將PSD放置于3個位置,在每一個位置上進行4次激光定位,仿真結(jié)果如圖6所示。
圖6 多點約束仿真結(jié)果
仿真2向仿真機器人系統(tǒng)中添加噪聲,本文的仿真過程中向機器人DH模型中第4個關節(jié)的桿件長度a以及關節(jié)平移量d加上隨機誤差。針對相同的零位誤差,多次改變系統(tǒng)的隨機誤差,保證單點約束和多點約束具有相同的誤差源。系統(tǒng)噪聲如下:
仿真中,給d和a隨機加上一個(0,1)之間的值,進行多次系統(tǒng)誤差的添加,單點約束和多點約束的標定結(jié)果如表1所示,其實際值為-2.000。當給定不同系統(tǒng)誤差時,針對相同的零位誤差,多點約束的結(jié)果更加接近實際誤差值,即多點約束在存在系統(tǒng)誤差情況下,標定結(jié)果與實際值之間的平均誤差比單點約束低。
表1 單點約束與多點約束標定結(jié)果對比
實驗基于ABB IRB120工業(yè)機器人,分別對單點約束以及多點約束進行標定實驗,單點約束中將PSD放置在機器人工作空間的任一位置進行6次定位。多點約束將PSD分別放置于機器人工作空間中相隔比較大的3個位置,每個位置上進行3次定位。實驗結(jié)果如表2所示。
表2 IRB120單點約束與多點約束對比
因為機器人存在系統(tǒng)誤差,以及定位過程中存在的誤差,所以單點約束和多點約束的標定結(jié)果有一定偏差。多次實驗中,多點約束的標定結(jié)果比單點約束更穩(wěn)定。
本文主要研究點約束進行零位標定時,約束點空間分布對標定結(jié)果的影響,分別進行了單點約束和多點約束在無系統(tǒng)誤差和有系統(tǒng)誤差下的零位標定的仿真,并基于ABB IRB120對機器人零位進行標定。仿真結(jié)果表明,在無系統(tǒng)誤差的情況下,單點約束和多點約束均能快速準確地標定機器人的零位誤差,在存在其他系統(tǒng)誤差的情況下,多點約束有更好的標定結(jié)果。下一步將研究不同的系統(tǒng)誤差對零位標定結(jié)果產(chǎn)生的影響是否存在聯(lián)系。
[1]龔星如,沈建新,田 威.工業(yè)機器人的絕對定位誤差模型及其補償算法[J].南京航空航天大學學報,2012,44(1):60-64.
[2]劉振宇,陳英林,曲道奎,等.工業(yè)機器人標定技術(shù)研究[J].機器人,2002,5(1):447-450.
[3]王東署,遲健男.機器人運動學標定綜述[J].計算機應用研究,2007,24(9):8-11.
[4]任永杰,邾繼貴,楊學友.利用激光跟蹤儀對機器人進行標定 的 方 法 [J].機 械 工 程 學 報,2007,43(9):195-200.
[5]李定坤,葉聲華,任永杰.機器人定位精度標定技術(shù)研究[J].計量學報,2007,28(3):195-200.
[6]葉聲華,王 一,任永杰.基于激光跟蹤儀對機器人運動學參數(shù)標定方法標定的方法[J].天津大學學報,2007,40(2):195-200.
[7]Chen Heping,F(xiàn)uhlbrigge T,Choi S.Practical Industrial Robot Zero Offset Calibration [C]//Proceedings of IEEE Conference on Automation Science and Engineer-ing.Washington D.C.,USA:IEEE Press,2008:516-521.
[8]張建忠.機器人連桿參數(shù)的視覺標定[J].制造業(yè)自動化,2004,26(11):32-34.
[9]Liu Yong,Xi Ning,Chen Heping,et al.An Automated Method to Calibrate Industrial Robot Joint Offset Using Virtual Line-based Single-point Constraint Approach[C]//Proceedings of IEEE Conference on Intelligent Robots and Systems.Washington D.C.,USA:IEEE Press,2009:715-720.
[10]Liu Yong,Xi Ning,Zhao Jianguo,et al.Development and Sensitivity Analysis of a Portable Calibration System for Joint Offset of Industrial Robot[C]//Proceedings of IEEE Conference on Intelligent Robots and Systems.Washington D.C.,USA:IEEE Press,2009:3838-3843.
[11]Levenberg K.A Method for the Solution of Certain Non-linear Problems in Least Squares [J].The Quarterly of Applied Mathematics,1944,2(1):164-168.
[12]Liu Yong,Xi Ning,Yan Shentao,et al.High-accuracy Visual/PSD Hybrid Servoing of Robotic Manipulator[C]//Proceedings of International Conference on Advanced Intelligent Mechatronics.Washington D.C.,USA:IEEE Press,2008:217-222.