摘 要: 以固高GRB-400機(jī)器人和攝像機(jī)組成手眼系統(tǒng),在手眼關(guān)系旋轉(zhuǎn)矩陣的標(biāo)定方面,分析了基于主動(dòng)視覺的標(biāo)定方法。為實(shí)現(xiàn)手眼關(guān)系平移向量的標(biāo)定,提出以固定于機(jī)械臂末端的激光筆來獲取工件平臺(tái)上特征點(diǎn)的基坐標(biāo),并結(jié)合已標(biāo)定的旋轉(zhuǎn)矩陣來標(biāo)定平移向量。最后,從圖像求取多個(gè)特征點(diǎn)之間的距離并與實(shí)際值進(jìn)行誤差比較,平面特征點(diǎn)間的長(zhǎng)度測(cè)量誤差在±0.8 mm之間,表明手眼標(biāo)定精度較高,可滿足機(jī)器人進(jìn)行工件定位與自動(dòng)抓取的要求。
關(guān)鍵詞: 機(jī)器人;手眼系統(tǒng);主動(dòng)視覺;激光筆;標(biāo)定
0 引言
當(dāng)今,機(jī)器人視覺系統(tǒng)以其精度高、成本效率高、連續(xù)性、靈活性等特點(diǎn)被廣泛應(yīng)用于電子原件裝配、焊接工程、零配件尺寸檢查等領(lǐng)域。手眼標(biāo)定是機(jī)器視覺系統(tǒng)中的關(guān)鍵技術(shù),手眼標(biāo)定的精度將直接影響系統(tǒng)的定位精度。因此,為提高系統(tǒng)的定位精度,需要大量的實(shí)驗(yàn)來實(shí)現(xiàn)手眼標(biāo)定,以減小最終誤差。在手眼標(biāo)定方面許多學(xué)者做了努力,并取得了一定的成果,如Ma[1]提出了主動(dòng)視覺的方法,通過攝像機(jī)的正交平移運(yùn)動(dòng),利用極點(diǎn)建立約束方程組,求解攝像機(jī)內(nèi)參數(shù)及手眼關(guān)系;楊廣林[2]等給出一種手眼標(biāo)定方法,僅需場(chǎng)景中的兩個(gè)特征點(diǎn),通過控制攝像機(jī)做兩次平移運(yùn)動(dòng)和一次旋轉(zhuǎn)運(yùn)動(dòng)即可實(shí)現(xiàn)手眼標(biāo)定。此外,針對(duì)一些機(jī)器人如SCARA機(jī)器人,其在做旋轉(zhuǎn)運(yùn)動(dòng)時(shí)僅能繞z軸旋轉(zhuǎn),對(duì)于一些手眼標(biāo)定方法該類機(jī)器人無法實(shí)現(xiàn),如Shiu[3]和Tsai[4]的手眼標(biāo)定方法均要求至少需要旋轉(zhuǎn)軸不平行的兩組運(yùn)動(dòng),才能唯一確定手眼矩陣的各分量。本文以固高GRB-400機(jī)器人和攝像機(jī)組成的手眼系統(tǒng)為研究對(duì)象,采用基于主動(dòng)視覺的手眼標(biāo)定方法對(duì)手眼關(guān)系的旋轉(zhuǎn)矩陣進(jìn)行標(biāo)定,借助于激光筆來獲取工件平臺(tái)上特征點(diǎn)的世界坐標(biāo),然后根據(jù)特征點(diǎn)的世界坐標(biāo)和已標(biāo)定的旋轉(zhuǎn)矩陣來求取手眼關(guān)系的平移向量。
1 固高GRB-400機(jī)器人
四自由度GRB-400機(jī)器人是典型的SCARA機(jī)器人,具有3個(gè)旋轉(zhuǎn)關(guān)節(jié)和1個(gè)移動(dòng)關(guān)節(jié),采用D-H法建立坐標(biāo)系,如圖1所示。從控制器中獲取關(guān)節(jié)變量?茲1、?茲2、?茲4、d3,由圖1可求得各連桿的變換矩陣,從而得到機(jī)械臂末端的位姿參數(shù):
其中,分別表示基坐標(biāo)系與機(jī)械臂末端坐標(biāo)系之間的旋轉(zhuǎn)矩陣和平移向量。
易知其中的旋轉(zhuǎn)矩陣具有如下形式:
2 手眼關(guān)系的標(biāo)定
2.1 手眼系統(tǒng)中的坐標(biāo)變換
手眼關(guān)系示意圖如圖2所示,Qw-xyz、Qh-xyz和Qc-xyz分別表示機(jī)器人基坐標(biāo)系、機(jī)械臂末端坐標(biāo)系和攝像機(jī)坐標(biāo)系,分別表示基坐標(biāo)系與機(jī)械臂末端坐標(biāo)系之間的旋轉(zhuǎn)矩陣和平移向量,Rhc和Thc分別表示機(jī)械臂末端坐標(biāo)系與攝像機(jī)坐標(biāo)系之間的旋轉(zhuǎn)矩陣和平移向量。設(shè)P為空間中的一點(diǎn),Pw、Ph和Pc分別為點(diǎn)P在坐標(biāo)系Qw-xyz、Qh-xyz和Qc-xyz中的坐標(biāo),則P在手眼系統(tǒng)中各坐標(biāo)系之間的關(guān)系如下:
2.2 手眼關(guān)系中旋轉(zhuǎn)矩陣的標(biāo)定
在手眼系統(tǒng)中,當(dāng)控制機(jī)械手做平移運(yùn)動(dòng)時(shí),攝像機(jī)也隨著機(jī)械手做平移運(yùn)動(dòng)。參考文獻(xiàn)[1]給出了確定攝像機(jī)坐標(biāo)系平移方向的方法。
當(dāng)控制機(jī)械手做一次平移運(yùn)動(dòng)時(shí),設(shè)其平移向量為 k1,相應(yīng)的攝像機(jī)平移向量為k1(1、1均為單位向量),設(shè)P點(diǎn)在機(jī)械臂坐標(biāo)系平移前后的坐標(biāo)分別為Ph和Ph+k1,在攝像機(jī)坐標(biāo)系平移前后的坐標(biāo)分別為Pc和Pc+k1,根據(jù)式(3)可得:
類似地,控制機(jī)械手沿不同方向做兩次平移運(yùn)動(dòng),設(shè)其平移向量分別為k2、k3,相應(yīng)的攝像機(jī)平移向量分別為k2、k3(i、i均為單位向量,i=2,3),同樣可推得:
將式(6)~(8)合成矩陣形式有:
由此可得手眼關(guān)系的旋轉(zhuǎn)矩陣:
在實(shí)際標(biāo)定過程中,可以只通過控制機(jī)械手沿相互正交的兩個(gè)方向平移,然后采用施密特正交化方法對(duì)得到的兩個(gè)攝像機(jī)平移向量進(jìn)行正交化,第三個(gè)平移向量3、3由前兩項(xiàng)叉乘得出,即3=1×2,3=1×2,由此可求得正交的旋轉(zhuǎn)矩陣。
2.3 手眼關(guān)系中平移向量的標(biāo)定
手眼關(guān)系的平移向量是通過以固定于機(jī)械臂末端的激光筆來獲取工件平臺(tái)上特征點(diǎn)的基坐標(biāo),并結(jié)合已標(biāo)定的旋轉(zhuǎn)矩陣來標(biāo)定的。
2.3.1 基于激光筆求工件平臺(tái)上特征點(diǎn)的基坐標(biāo)
基于激光筆求特征點(diǎn)基坐標(biāo)的示意圖如圖3所示,工件平臺(tái)與基坐標(biāo)的z軸垂直(設(shè)工件平臺(tái)在z軸的坐標(biāo)位置已知),P為工件平臺(tái)上位置固定的特征點(diǎn),設(shè)其基坐標(biāo)表示為(wxp,wyp,wzp)T,激光筆安裝于機(jī)械臂末端,即Qh-xyz坐標(biāo)系的A處,且使激光射線平行于Qh-xyz的z軸。可通過控制機(jī)械手上下移動(dòng)觀察激光射線是否打在工件平臺(tái)上的同一點(diǎn)來判斷激光射線是否平行于Qh-xyz的z軸,若不是則調(diào)整激光筆直到激光射線與Qh-xyz的z軸相平行。易知當(dāng)激光射線與Qh-xyz的z軸相互平行時(shí),激光射線上的點(diǎn)在Qh-xyz上具有相同的x、y軸坐標(biāo)值且不隨機(jī)械手的移動(dòng)而改變,設(shè)分別為hxp、hyp。
首先,通過調(diào)整機(jī)器人的四個(gè)關(guān)節(jié)狀態(tài)使激光射線打在P點(diǎn)上(如圖3(a)所示),設(shè)此時(shí)P點(diǎn)在Qh-xyz中的坐標(biāo)為(wxp,wyp,wzp)T,從控制器中獲取當(dāng)前機(jī)器人的關(guān)節(jié)變量分別為,根據(jù)D-H法可求得機(jī)械臂末端的位姿參數(shù),易知旋轉(zhuǎn)矩陣具有如式(2)的形式,設(shè)為:
接著,保持機(jī)械臂末端與工件平臺(tái)的距離不變,即機(jī)器人的移動(dòng)關(guān)節(jié)參數(shù)值仍為d3,改變機(jī)器人的其他三個(gè)旋轉(zhuǎn)關(guān)節(jié),且仍使激光射線打在P點(diǎn)上(如圖3(b)所示),顯然此時(shí)的P點(diǎn)在Qh-xyz中的坐標(biāo)仍為(wxp,wyp,wzp)T,從控制器中獲取當(dāng)前機(jī)器人的關(guān)節(jié)變量分別為,同理可求得,且旋轉(zhuǎn)矩陣具有式(2)的形式:
由式(12)、(13)可解得:
在基坐標(biāo)系下,對(duì)于工件平臺(tái)上的特征點(diǎn)的z軸坐標(biāo)值相等且為已知,因此只需求取x、y軸的坐標(biāo)值。將求得的(hxp,hyp)T帶入式(12)即可求得P點(diǎn)在基坐標(biāo)系下的x、y軸的坐標(biāo)值。為減小(hxp,hyp)T的誤差,可采用對(duì)不同特征點(diǎn)重復(fù)多次實(shí)驗(yàn)求平均的方法。
2.3.2 平移向量的標(biāo)定
根據(jù)手眼系統(tǒng)中的坐標(biāo)變換關(guān)系,由式(3)、(4)可得:
標(biāo)定過程:控制機(jī)械手使工件平臺(tái)上已知基坐標(biāo)的特征點(diǎn)置于場(chǎng)景中,從控制器中獲取當(dāng)前機(jī)器人的關(guān)節(jié)變量求得,從圖像上獲取特征點(diǎn)的圖像像素坐標(biāo)(u,v),zc可由參考文獻(xiàn)[2]給出的方法求得,、M均已標(biāo)定求出,則由式(19)即可求得手眼關(guān)系的平移向量。通過重復(fù)多次實(shí)驗(yàn)求平均,可減少誤差。
3 實(shí)驗(yàn)結(jié)果及分析
本文的手眼系統(tǒng)的硬件部分主要有:四自由度GRB-400機(jī)器人、機(jī)器人控制柜、控制計(jì)算機(jī)、CCD攝像頭、圖像采集卡及其他輔助設(shè)備。攝像機(jī)安置于機(jī)械臂手爪的旋轉(zhuǎn)關(guān)節(jié)上,其采集的圖像尺寸為2 048× 1 536。
3.1 手眼關(guān)系旋轉(zhuǎn)矩陣的標(biāo)定實(shí)驗(yàn)
控制機(jī)械手沿機(jī)械臂末端坐標(biāo)系的Zh+(“+”表示坐標(biāo)軸的正方向,“-”表示坐標(biāo)軸的負(fù)方向)方向移動(dòng) 10 mm,根據(jù)移動(dòng)前后圖像特征對(duì)應(yīng)點(diǎn)求取攝像機(jī)的平移向量k1,再控制機(jī)械手沿機(jī)械臂末端坐標(biāo)系的Yh+方向移動(dòng)10 mm,同樣可求得攝像機(jī)的平移向量k2,利用Schmidt正交化,令3=1×2,同時(shí)利用機(jī)械手平移的方向向量由式(10)求得手眼關(guān)系的旋轉(zhuǎn)矩陣。同理控制機(jī)械手沿機(jī)械臂末端坐標(biāo)系的Zh-、Yh+、Zh+、Yh-、Zh-、Yh-方向移動(dòng)10 mm,每?jī)纱我苿?dòng)就可確定一個(gè)。旋轉(zhuǎn)矩陣的多次實(shí)驗(yàn)結(jié)果數(shù)據(jù)如表1所示,其中最大偏差為旋轉(zhuǎn)矩陣的計(jì)算值與平均值之間的偏差矩陣中的最大值。從表1可看出旋轉(zhuǎn)矩陣的偏差是穩(wěn)定的,取平均值作為的標(biāo)定結(jié)果。即:
3.2 手眼關(guān)系平移向量的標(biāo)定實(shí)驗(yàn)
在求平移向量之前,需通過激光筆來獲取工件平臺(tái)上特征點(diǎn)的基坐標(biāo),因此先對(duì)激光筆在機(jī)械臂末端坐標(biāo)系x、y軸的坐標(biāo)位置hxp、hyp進(jìn)行標(biāo)定。通過多次標(biāo)定得到的數(shù)據(jù)結(jié)果如表2所示,其中偏差為(hxp,hyp)T的實(shí)驗(yàn)計(jì)算值與平均值之間的差值。
由表2可以看出,實(shí)驗(yàn)得出的hxp、hyp比較穩(wěn)定,取平均值作為hxp、hyp的標(biāo)定結(jié)果。即:
hxphyp=-6.950 2-46.765 7
在求得hxp、hyp后,控制機(jī)器人使激光射線打在工件平臺(tái)上基坐標(biāo)待求的特征點(diǎn)P上,從控制器中獲取當(dāng)前機(jī)器人的關(guān)節(jié)變量求得機(jī)械臂末端的位姿參數(shù),由式(12)即可求得P點(diǎn)的基坐標(biāo)。
接著對(duì)手眼關(guān)系平移向量進(jìn)行標(biāo)定:控制機(jī)械手使工件平臺(tái)上基坐標(biāo)已知的4個(gè)特征點(diǎn)置于場(chǎng)景中,從控制器中獲取當(dāng)前機(jī)器人的關(guān)節(jié)變量求得,從圖像上獲取這些特征點(diǎn)的圖像像素坐標(biāo),這些特征點(diǎn)的zc值按參考文獻(xiàn)[2]的方法另外求取,、M均已知,由式(19)即可求得手眼關(guān)系的平移向量。平移向量的標(biāo)定結(jié)果數(shù)據(jù)如表3所示,其中最大偏差為平移向量的計(jì)算值與平均值之間的偏差向量中的最大值。
由表3可看出,平移向量的最大偏差小于0.5 mm,取平均值為其標(biāo)定結(jié)果。即:
3.3 標(biāo)定結(jié)果測(cè)試
選取工件平臺(tái)上的4個(gè)點(diǎn)作為測(cè)試點(diǎn),且將特征點(diǎn)置于不同的場(chǎng)景中,如圖4所示,通過求取特征點(diǎn)的基坐標(biāo)以求得這4個(gè)特征點(diǎn)兩兩之間的距離,實(shí)驗(yàn)結(jié)果數(shù)據(jù)如表4所示,其中實(shí)際值為由游標(biāo)卡尺直接測(cè)量所得特征點(diǎn)之間的間距。
由表4可得不同場(chǎng)景中特征點(diǎn)間距計(jì)算值與實(shí)際值的誤差曲線,如圖5所示。從圖5可以看出,特征點(diǎn)間距計(jì)算值與實(shí)際值的誤差在±0.8 mm之間,說明所標(biāo)定的手眼關(guān)系的旋轉(zhuǎn)矩陣和平移向量精度較高,可滿足機(jī)器人的工件定位與自動(dòng)抓取的要求。
表5列出了本文方法和其他文獻(xiàn)方法的手眼標(biāo)定精度。從表5可以看出,參考文獻(xiàn)[5]的標(biāo)定精度最高,達(dá)到了0.5 mm,但其標(biāo)定過程要求機(jī)器人的外臂坐標(biāo)系到機(jī)器人基坐標(biāo)系的旋轉(zhuǎn)矩陣以及末端執(zhí)行器的高度保持不變,具有一定的局限性。而參考文獻(xiàn)[1]和參考文獻(xiàn)[6]的手眼標(biāo)定方法在求解平移向量時(shí)均需要機(jī)器人做旋轉(zhuǎn)運(yùn)動(dòng),并且不能僅僅只繞某一軸旋轉(zhuǎn),若僅繞某一軸旋轉(zhuǎn)將無法求出平移向量。在標(biāo)定精度方面,參考文獻(xiàn)[6]的標(biāo)定精度與本文方法相當(dāng),而參考文獻(xiàn)[1]和參考文獻(xiàn)[5]的標(biāo)定精度均低于本文方法。
4 結(jié)論
本文提出了通過固定在機(jī)械臂末端的激光筆來獲取工件平臺(tái)上特征點(diǎn)的基坐標(biāo),以此來標(biāo)定手眼關(guān)系的平移向量;通過場(chǎng)景中的兩個(gè)特征點(diǎn),通過精確控制機(jī)械臂做2次特定的平移運(yùn)動(dòng)即可標(biāo)定出手眼關(guān)系的旋轉(zhuǎn)矩陣。實(shí)驗(yàn)結(jié)果表明,本文方法的標(biāo)定精度較高(±0.8 mm),可滿足一般機(jī)器人工件自動(dòng)抓取、跟蹤控制等作業(yè)的使用要求。此外,本文提出的方法對(duì)于平移向量的標(biāo)定,只需要求機(jī)器人末端手臂垂直于工件平臺(tái),并使固定在該臂上的激光筆的射線平行于該臂坐標(biāo)系的z軸,這對(duì)于大多數(shù)的機(jī)器人都是易于實(shí)現(xiàn)的,因此本文的方法精度高,適用范圍廣。
參考文獻(xiàn)
[1] MA S D. A self-calibration technique for active vision systems [J]. IEEE Transactionsons on Robotics and Automation,1996,12(1):114-120.
[2] 楊廣林,孔令富,王潔.一種新的機(jī)器人手眼關(guān)系標(biāo)定方法[J].機(jī)器人,2006,28(4):400-405.
[3] SHIU Y C, AHMAD S. Calibration of wrist-mounted robotic sensors by solving homogeneous transform equations of the form AX=XB[J]. IEEEE Transactions on Robotics & Automation, 1989,5(1):16-29.
[4] TSAI R Y, LENZ R K. A new technique for fully autonomous and efficient 3D robotics hand/eye calibration[J]. IEEEE Transactions on Robotics & Automation, 1989,5(3):345-358.
[5] 戚芳,席鋒.簡(jiǎn)便高精度的機(jī)器人手眼視覺標(biāo)定方法[J].傳感器與微系統(tǒng),2006,25(1):27-29.
[6] 張黎爍,趙志梅.基于主動(dòng)視覺的結(jié)構(gòu)光手眼系統(tǒng)自標(biāo)定方法[J].科學(xué)技術(shù)與工程,2014,14(9):202-206.