葛紹強,楊永輝,周自維
(遼寧科技大學 電子信息與工程學院,遼寧 鞍山 114051)
目前,視覺工業(yè)機器人在工業(yè)生產中有很多應用,比如機器人抓取、焊接、噴涂、搬運等各個方面。在工業(yè)機器人視覺領域中,手眼標定的主要目的是獲取相機到機器人末端法蘭盤的轉換關系,根據(jù)這種轉換關系將空間中點的坐標轉換到機器人基坐標系下,這樣才能更好地控制機器人的手臂去完成相應的任務,因此手眼標定的研究對于工業(yè)機器人視覺有著重大的意義。
對于手眼標定的研究,文獻[4]中敘述了手眼標定的定義;文獻[5]提出一種相機標定和四點位姿估計的手眼標定方法,但該方法需要進行相機標定獲取相機的外參,即需要獲取標定板到相機的轉換關系;文獻[6]提出一種高精度的手眼標定方法,對標定過程中采集的圖像進行校正,提高相機外參的精度,進而進行手眼標定。文獻[7]提出一種基于ROS 的機器人自動手眼標定方法,其中利用PnP 的方法求解標定板到相機的轉換關系。對于手眼標定復雜的問題,本文根據(jù)深度相機的原理和棋盤格上的參考點的幾何關系,求取參考點到相機的轉換關系,再結合機器人末端法蘭盤到機器人基坐標系的轉換關系,求解相機到機器人末端法蘭盤的轉換關系。
礦山爆破機器人視覺系統(tǒng),由六自由度工業(yè)機器人(KUKA R16?2F)、深度相機RealsenseD435、機器人抓取工具組成,采用眼在手上的方式,將深度相機固定在機器人末端處,深度相機隨著機器人的位姿變換而變化,這種類型的手眼標定,相機的視野更大。礦山爆破機器人視覺系統(tǒng)結構圖如圖1 所示。
圖1 視覺系統(tǒng)結構圖
首先,相機利用深度學習算法YOLOV3 識別出礦山中的孔洞,得出孔洞中心點的像素坐標;然后,結合深度相機原理計算出孔洞中心在相機坐標系下的空間坐標,隨后結合手眼標定關系,將孔洞中心的空間坐標轉換到機器人基坐標系下。
手眼標定分為兩種類型:一種是眼在手上的手眼標定(Eye?in?Hand);一種是眼在手外的手眼標定(Eye?to?Hand)。本文主要敘述眼在手上的手眼標定類型,首先對照下手眼標定的示意圖,如圖2 所示。Base 表示機器人的基坐標系,在機器人末端法蘭盤上安裝一個相機(圖中Center 表示法蘭盤的中心,Camera 表示的是相機),在機器人視野前面固定一個標定板(棋盤格,圖中用Checkerboard 表示),棋盤格上的某個參考點與機器人基坐標的關系是固定不變的,利用這個不變的關系進行機器人的手眼標定。
圖2 手眼標定示意圖
用示教器控制機器人移動,讓相機拍攝棋盤格標定板,把此時的機器人位姿定義為1,用T表示機器人末端法蘭中心到機器人基坐標系下的轉換關系,T表示相機坐標系到機器人末端法蘭中心的轉換關系(待求,這個關系是固定不變的),T表示參考點到相機的轉換關系。同樣控制機器人移動到另外一個位姿下,把此時的機器人位姿定義為2,用T表示機器人末端法蘭中心到機器人基坐標下的轉換關系,T仍然是相機坐標系到機器人法蘭中心的轉換關系,T表示此時參考點到相機的轉換關系。T表示位姿1 和位姿2 機器人末端法蘭中心坐標系之間的相對位置的齊次變換矩陣。T表示位姿1 和位姿2 下特征點到相機的轉換關系的齊次變換矩陣。根據(jù)標定板上棋盤格中的某參考點到機器人基坐標系下的轉換關系不變的原則有如下關系:
可以令T=,T=,T=,得:
式中,已知,那么手眼標定的問題轉換成求解=的問題,求解利用TSAI 兩步法求解。
根據(jù)參考點的像素值、深度值和深度相機RealsenseD435的SDK函數(shù)rs2_deproject_pixel_to_point(),獲取棋盤格上參考點的空間坐標,這里參考點選擇3個,且這3 個點構成一個直角三角形,利用直角三角形有兩個邊相互垂直的原理,可確定角度為90°的參考點姿態(tài)。具體原理如圖3 所示。
圖3 參考點姿態(tài)確定原理圖
圖4 棋盤格上參考點示意圖
已知點處的姿態(tài)的空間坐標(位置)和姿態(tài),就可確定點的位姿,或者說是參考點到相機的轉換關系矩陣。
根據(jù)第2 節(jié)手眼標定的敘述,畫出了整個手眼標定的流程圖,如圖5 所示。根據(jù)圖5 所示,首先操作機器人到位姿1 處,拍攝棋盤格圖片,根據(jù)特征點的幾何關系確定點的姿態(tài),姿態(tài)和位置已知,計算參考點到相機的轉換關系矩陣,同時計算機器人末端到機器人基坐標系的轉換關系矩陣。反復操作機器人到9 個不同的位姿處,可以獲得9 張棋盤格圖片、9 組參考點到相機的轉換關系和9 組機器人末端到機器人基坐標系下的變換矩陣,8 組T和8 組T。9 張圖片如圖6 所示。
圖5 手眼標定流程圖
圖6 拍攝的9 張棋盤格圖片
取8 組T和8 組T中的3 組 數(shù)據(jù)如表1 所示。
表1 Tgij和Tcij的數(shù)據(jù)
根據(jù)8 組T和8 組T數(shù)據(jù),再結合TSAI 兩步法,即可求得相機到機器人末端的轉換關系矩陣T,用Matlab 程序進行仿真,求T矩陣和在機器人基坐標系下,參考點與相機的相對位置的關系圖,T如下:
相對位置關系如圖7 所示。
圖7 參考點與相機的相對位置關系
圖7 中,分散的點表示相機的姿態(tài),密集的點表示參考點的姿態(tài)。
利用該標定關系,將棋盤格中參考點的像素坐標轉換到機器人基坐標系下,參考點坐標在機器人基坐標系下的,理論值和實際值如表2 所示。
表2 實際值和理論值 mm
其中,理論值是根據(jù)T*T*T關系求得的,因為機器人共移動9 個位姿,因此理論值有9 個,實際值是根據(jù)控制機器人末端的法蘭盤移動到參考點,根據(jù)示教器讀出的該參考點在機器人基坐標系下的坐標且都為(1 704.8,-252.5,1 030.1)。從表中可以看出,其理論值中3 個坐標值和實際值中3 個坐標值的誤差最大為5.7 mm,最小誤差為0 mm。隨后,搭建一個模擬礦井隧道,孔洞的半徑大約控制在50 mm 左右,控制機器人工具抓取注藥工具運動到炮孔中心測試,每次都能精準地抓取注藥管運送到孔洞中心處,其精度滿足礦山爆破的需求。測試過程中的實驗圖如圖8 所示。
圖8 實驗測試圖
本文提出一種基于深度相機的手眼標定方法,該標定平臺利用棋盤格上的特征點幾何關系,獲取棋盤格上參考點到相機的轉換關系矩陣,同時利用示教器讀取的機器人末端的位姿計算機器人末端到機器人基坐標系下的轉換矩陣,把這兩個關系矩陣與TSAI 兩步法結合,即可求得相機到機器人末端法蘭盤的轉換關系。此過程充分利用深度相機的原理,不需要對其求取相機的外參,過程簡便且精度滿足礦山爆破任務的要求。該標定平臺在其他應用工業(yè)機器人視覺領域中也有一定的借鑒意義。
注:本文通訊作者為楊永輝。