陳 丹,白 軍,石國良
(福州大學 電氣工程與自動化學院,福建 福州 350108)
工業(yè)機器人以其精度高、穩(wěn)定可靠、效率高等特點在工業(yè)上應用廣泛,然而智能化、柔性化是制約其發(fā)展的瓶頸,機器人視覺系統(tǒng)的應用能夠解決這些問題。機器人視覺系統(tǒng)分為Eye-in-hand和Eye-to-hand。Eye-in-hand視覺系統(tǒng)指相機固定在機器人關節(jié)上,隨機器人一起運動的視覺系統(tǒng)。當機器人執(zhí)行任務時,機器人關節(jié)上的相機采集工作視場信息,然后由計算機提取、轉換為末端執(zhí)行器和工作對象的相對距離,通過反饋距離信息,完成執(zhí)行任務。若要視覺系統(tǒng)工作正常,需要知道相機坐標系與機器人坐標系之間的相對關系,即手眼關系。手眼關系標定是一項關鍵技術,標定精度直接影響到系統(tǒng)執(zhí)行任務是否成功。許多學者在這方面做過很多研究,并取得成果,如Ma S D[1]提出了主動視覺的方法,利用消影點和平移向量之間的關系,只需3次平移就可以計算旋轉矩陣,2次旋轉和1次平移就可以計算平移矩陣; Ulrich M[2]引入螺旋理論代表空間任意運動,采用雙四元數表示螺旋簡化數學運算,通過標定板上特征點之間的約束和機器人運動規(guī)律同時求解旋轉矩陣及平移矩陣;楊廣林等人[3]通過對攝像機坐標系進行虛設旋轉變換使旋轉變換轉化為平移問題,只需要2次平移運動和1次旋轉運動就可以計算手眼關系;黃朝興等人[4]利用主動視覺的方法標定旋轉矩陣,結合激光筆確定特征點的世界坐標,標定平移矩陣。
然而,像SCARA有3個平行的旋轉軸的機器人,許多要求做幾組旋轉軸不平行的旋轉運動的方法并不適用,如Henrik Malm[5]和Shiu Y C[6]的方法要求做至少2組不同軸的旋轉運動。本文以固高GRB—400四自由度SCARA機器人為研究對象,搭建機器人視覺系統(tǒng),采用亞像素角點檢測確定精確的特征點像素坐標,利用主動視覺的方法標定旋轉矩陣,通過一個精加工的標準件—標定塊,易準確地確定特征點的世界坐標,完成平移矩陣的標定。
固高GRB—400機器人是典型的SCARA機器人,有3個旋轉關節(jié),其軸線(z軸)相互平行,另1個關節(jié)是移動關節(jié),可以在平面內進行定位和定向,用于裝配、抓取工作。機器人手眼系統(tǒng)結構如圖1所示,采用D—H法建立機器人坐標系,得到末端執(zhí)行器的位姿關系。
圖1 手眼視覺系統(tǒng)結構示意圖
如圖1所示,X為空間中的任意一點,R為旋轉矩陣,T為平移矩陣,通常用角標來區(qū)分不同的坐標系,角標W表示世界坐標系,H表示機器人末端執(zhí)行器坐標系,C表示相機坐標系。坐標系之間的關系可以用式(1)、式(2)表示。式(2)是根據小孔成像模型得到
(1)
XC=zCM-1[uv1]T
(2)
(3)
式中αx,αy分別為u軸和v軸上的尺度因子;(u0,v0)為圖像中心;矩陣M通過MATLAB工具箱對相機進行標定得到;(u,v)為特征點X在圖像上的像素坐標;zC為相機坐標系中特征點XC在光軸z上的投影,即深度信息;zC可由參考文獻[3]給出的方法計算。
工作平臺上貼有一打印的方格紙,取方格紙上的任意一交點X1,設其在執(zhí)行器坐標系下的坐標為X1H,在相機坐標系下的坐標X1C,于是有
(4)
(5)
將式(4)代入式(5),化簡得
(6)
同理,做二次不同方向的運動,可得
(7)
(8)
寫成矩陣形式有
(9)
(10)
取末端執(zhí)行器在工作平臺可達范圍內的任意一點X2,其世界坐標記為X2W,代入式(1),得
(11)
將式(2)代入,得
(12)
2.3.1 特征點世界坐標確定
特征點X2的世界坐標通過一個精加工的標定塊來確定,標定塊的示意圖和機器人末端執(zhí)行器示意圖如圖2所示,確定特征點X2的世界坐標原理如下:標定塊兩邊槽的尺寸等于末端執(zhí)行器的尺寸,并放置在貼有白紙的工作平臺上,控制執(zhí)行器將標定塊夾住,然后控制執(zhí)行器分別進行4次90°的旋轉運動,每一次運動后將標定塊的同一邊緣用鉛筆描在紙上,最后得到一個矩形,將矩形的對角線相連,交點即為特征點 ,即末端第三連桿軸中心在工作平臺上的投影點,采取多次畫矩陣,取多個中心點的中間點,以減少誤差。第三連桿軸中心的坐標(x,y)可以從控制器中讀出,已知平臺高度,故可知特征點的世界坐標。
圖2 標定塊與末端執(zhí)行器示意
2.3.2 特征點的圖像像素坐標
圖3 亞像素角點檢測原理
實驗采用的硬件主要有固高GRB—400機器人,USB2.0 CMOS 300萬像素彩色數字相機,采集的圖像大小為2 048×1 536,機器人控制柜,普通臺式計算機,標定塊。相機固定在機器人末端的執(zhí)行器上,搭建的實驗平臺如圖4所示。
圖4 機器人手眼視覺系統(tǒng)
圖5 檢測到的亞像素角點
圖6 控制臺輸出的實數坐標點
實驗控制機器人完成4組運動,兩兩一組,如表1所示。實驗結果如表2所示,誤差由旋轉矩陣與平均值作差所得,可以看到標定的旋轉矩陣比較穩(wěn)定,最大誤差均小于0.004。旋轉矩陣取平均值為
表1 4組平移運動次序
表2 旋轉矩陣標定結果
由于相機的光軸垂直于工作平臺,工作平面上的特征點在相機坐標系下的深度值相等,所以沿用旋轉矩陣標定實驗中已計算出的深值,最后通過式(12)計算平移矩陣。同理,另外任取4個點作為特征點,利用上述方法多次求解,減少偶然誤差,實驗結果如表3所示,看到:實驗結果比較穩(wěn)定,最大誤差均小于0.21。平移矩陣平均值為
繪制測試用的方格紙,如圖8所示,將紙貼在一個硬板上,呈任意角放在工作平臺上,取4個特征點作為測試點,計算兩點之間的距離,并與實際距離比較。最終的實驗結果見表4。由表4可知:誤差小于0.5 mm,精度較高,能滿足工業(yè)應用需要。
圖8 繪制的方格紙
表4 不同特征點之間的計算距離與實際距離
對文獻[4]提出的方法進行了實驗,該方法利用主動視覺的方法標定旋轉矩陣,用激光筆輔助找世界坐標點,然后標定平移矩陣,實驗場景如圖9所示,選取工件平臺上的4個點,用該方法標定的數據計算特征點之間的距離,實驗結果如表5所示,可以看出誤差小于0.7 mm。對比表4、表5知,本文方法精度高于文獻[4],文獻[4]需先標定激光筆在末端執(zhí)行器坐標系下的坐標,并要求激光筆垂直工作平面,增加了誤差,降低了標定的精度。本文借助于標定塊,利用幾何知識,直接確定特征點世界坐標,簡捷、易實現。
圖9 對比實驗場景
表5 文獻[4]實驗結果
表6列出了幾種文獻標定的精度,文獻[1]的方法要求有二個不同的旋轉軸,文獻[2]標定精度較高,但是需借助于雙四元數理論以及非線性優(yōu)化,實現算法和具體步驟比較復雜,文獻[4]標定精度高于文獻[1]的精度,本文方法實現簡單,精度較高。
表6 幾種文獻標定精度
利用精加工的標準件—標定塊,通過幾何作圖的方法,精確快捷地確定末端執(zhí)行器中心在工作平臺上的投影點所對應的世界坐標,簡化了求解世界坐標的過程,提高了平移矩陣的標定精度,采用亞像素角點提取算法,提取特征點的世界坐標,結合機械手平移規(guī)則,進一步提高了旋轉矩陣的標定精度。實驗結果表明:本文方法標定精度較高,可滿足工業(yè)機器人的精確定位、普通抓取等作業(yè)。
[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] Ulrich M,Steger C.Hand-eye calibration of SCARA robots using dual quaternions[J].Pattern Recognition and Image Analysis,2016,26(1):231-239.
[3] 楊廣林,孔令富,王 潔.一種新的機器人手眼關系標定方法[J].機器人,2006,28(4):400-405.
[4] 黃朝興,陳 丹,唐旭晟.帶激光筆的機器人主動視覺的手眼標定[J].微型機與應用,2015,34(17):70-74.
[5] Henrik Malm,Anders Heyden.A new approach to hand-eye calibration[C]∥Proceedings of the 15th International Conference on Pattern Recognition,2000:525-529.
[6] Shiu Y C,Ahmad S.Calibration of wrist-mounted robotic sensors by solving homogeneous transform equations of the Form AX=XB[J].IEEE Transactions on Robotics & Automation,1989,5(1):16-29.
[7] 陳 丹,石國良.基于視覺幾何的傳送帶測速方法研究[J].儀器儀表學報,2016,37(10):2307-2315.