基于激光測距的機器人手眼標定方法
【專利說明】基于激光測距的機器人手眼標定方法 【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及一種基于激光測距的機器人手眼標定方法。 【【背景技術(shù)】】
[0002] 機器人技術(shù)在工業(yè)領(lǐng)域得到廣泛的應(yīng)用,例如自動裝配,自動抓取等,且對于機器 人手眼標定的精度要求越來越高,在傳統(tǒng)的機器人手眼標定系統(tǒng)中,機器人手眼標定采用 通過探針與物體表面接觸點的受力信息獲取物體上的點在工具坐標系中的坐標,進而通過 機器人運動學(xué)由坐標變換求得該點在機器人基坐標系中的坐標,然后通過傳感器的信息控 制機器人末端的運動,使探針與被測表面良好接觸并移動,測得物體表面一系列點的位置 坐標信息,一相機拍攝被測物體表面信息,確定物體在機器人基坐標系中的位姿或表面幾 何外形,進而實現(xiàn)標定過程。
[0003] 然而,由于探針末端與被測表面接觸時發(fā)生彈性變形,物體表面受力往往不均勻, 造成接觸點受力信息有誤差,探針末端容易因彈性變形過大而導(dǎo)致斷裂,進一步探針與被 測表面接觸并移動測得的一系列點位置坐標信息,累積誤差影響較大。
[0004] 因此,有必要設(shè)計一種新的標定方法,W克服上述問題。 【
【發(fā)明內(nèi)容】
】 陽〇化]本發(fā)明的創(chuàng)作目的在于提供一種操作簡單、快速,精確測量的一種基于激光測距 的機器人手眼標定方法。
[0006] 為了達到上述目的,本發(fā)明采用如下技術(shù)方案:
[0007] 提供一相機、一標定板,所述標定板設(shè)于所述相機視場內(nèi);設(shè)置一激光測距儀,發(fā) 射激光光斑至所述標定板,步驟如下:
[0008](1)、由激光光斑從所述標定板反射回的距離,計算激光光斑在所述激光測距儀坐 標系下的坐標,利用激光測距儀坐標系與機器人坐標系之間的映射關(guān)系,計算激光光斑在 機器人坐標系下的坐標;
[0009] (2)、所述標定板具有一像素坐標系,通過所述相機抓取激光光斑在所述標定板的 圖像,計算激光光斑在像素坐標系下的坐標;
[0010] (3)、根據(jù)計算得到的激光光斑在機器人坐標系下的坐標、激光光斑在像素坐標系 下的坐標,計算像素坐標系與機器人坐標系之間的映射關(guān)系;
[0011](4)、利用相機的參數(shù)得到相機坐標系與像素坐標系之間的映射關(guān)系;
[0012] 巧)、然后根據(jù)計算得到的像素坐標系與機器人坐標系之間的映射關(guān)系W及相機 坐標系與像素坐標系之間的映射關(guān)系,計算相機坐標系與機器人坐標系之間的映射關(guān)系。 進一步,一控制模塊,用于連接所述相機與所述機器人,并讀取所述機器人末端位姿,用齊 次變換計算激光光斑在機器人坐標系下的坐標;所述控制模塊在所述標定板范圍內(nèi)選取 一第一點,所選取點在所述相機的拍攝范圍內(nèi),所述激光測距儀發(fā)射激光光斑到第一點,所 述相機抓取在所述標定板上的第一點的激光光斑的圖像,利用Blob分析算法,對圖像進行 處理,得到第一點的激光光斑在像素坐標系下的坐標;所述控制模塊在所述標定板范圍內(nèi) 沿順時針或逆時針方向選取多個點,所述激光測距儀在選取的點上發(fā)射激光光斑,所述相 機依次抓取在所述標定板上的多個點的激光光斑圖像,利用Blob分析算法,對圖像進行處 理,得到各個點的激光光斑在像素坐標系下的坐標;所選取點的初始點至少為2個;所述激 光測距儀在所述標定板范圍內(nèi)選取點為4個;根據(jù)得到的激光光斑在機器人坐標系下的坐 標及激光光斑在像素坐標系下的坐標,利用旋轉(zhuǎn)矩陣R和平移矩陣T進行關(guān)聯(lián)計算,計算像 素坐標系與機器人坐標系之間的映射關(guān)系,利用相機的參數(shù)矩陣,計算相機坐標系到像素 坐標系之間的映射關(guān)系,根據(jù)計算得到的像素坐標系與機器人坐標系之間的映射關(guān)系與相 機坐標系到像素坐標系的映射關(guān)系,得到相機坐標系到機器人坐標系之間的映射關(guān)系;對 相機坐標系與機器人坐標系之間的映射關(guān)系進行標定測試,在所述標定板中選取多個點, 所述激光測距儀發(fā)射激光光斑至所述標定板的多個點上,通過比對發(fā)射得到的點與選取的 點是否重合,若不重合則返回重新進行標定。
[0013] 進一步,在對一工件進行抓取之前,利用形狀模板匹配的方法進行工件定位,得到 相機坐標系下的工件坐標;相機固定在所述標定板工作區(qū)域上方,對工件進行拍攝,得到相 機坐標系下的工件坐標;建立工件的形狀模板,所述形狀模板定義為點集與點集中每個點 對應(yīng)的方向向量;抓取過程中,捜索圖像中每個點,并計算出一個方向向量,在捜索圖像某 特定點處,進行形狀模板與捜索圖像之間相似度測量定義方向向量,進行工件捜索,進而實 現(xiàn)抓取工件動作。
[0014] 與現(xiàn)有技術(shù)相比,本發(fā)明具有W下有益效果:本發(fā)明的一種基于激光測距的機器 人手眼標定方法,激光測距儀發(fā)射一激光光斑至物體表面,相機抓取激光光斑并進行圖像 分析,激光測距儀獲取激光光斑返回距離,得到該點在激光測距儀坐標系下的坐標,并通過 齊次變換求得該點在機器人坐標系下的坐標并求解得到機器人位姿,且激光測距儀在靠近 工作區(qū)域邊緣沿多個點的位置發(fā)射激光光斑,得到多個點的位置坐標信息,本發(fā)明通過激 光測距儀發(fā)射激光光斑至物體表面進行,無需與物體接觸獲取測量點坐標信息,使得操作 誤差減小,操作更簡單,且利用激光測距儀進行物體表面標定時無需對點,可自動實現(xiàn)標 定,標定速度快,精度高,在標定過程中無需人工參與,實現(xiàn)自動化、智能化。 【【附圖說明】】
[0015] 圖1為工作流程圖;
[0016] 圖2為原理不意圖;
[0017] 圖3為硬件構(gòu)成示意圖。 【【具體實施方式】】
[0018] 為便于更好的理解本發(fā)明的目的、結(jié)構(gòu)、特征W及功效等,現(xiàn)結(jié)合附圖和具體實施 方式對本發(fā)明作進一步說明。
[0019] 如圖3所示,本發(fā)明提出一種基于激光測距的機器人手眼標定方法,它主要由一 相機、一機器人、一標定板與一激光測距儀構(gòu)成。
[0020] 所述標定板設(shè)于相機視場內(nèi),所述激光測距儀用于發(fā)射激光光斑至所述標定板, 所述相機固定在工作區(qū)域上方,主要用來感知外界環(huán)境,并將實時獲取的圖像數(shù)據(jù)傳送到 一控制模塊進行后期處理;所述機器人為主要執(zhí)行機構(gòu),用來實現(xiàn)對工件的抓取。
[0021] 由所述激光測距儀發(fā)射激光光斑到達所述標定板之間的距離,計算激光光斑在所 述激光測距儀坐標系下的坐標,利用激光測距儀坐標系與機器人坐標系之間的映射關(guān)系, 計算激光光斑在機器人坐標系下的坐標;所述標定板具有一像素坐標系,通過所述相機抓 取激光光斑在所述標定板的圖像,計算激光光斑在像素坐標系下的坐標;通過上述結(jié)果計 算像素坐標系與機器人坐標系之間的映射關(guān)系;利用相機的參數(shù)得到相機坐標系與像素坐 標系之間的映射關(guān)系;最后計算相機坐標系與機器人坐標系之間的映射關(guān)系。
[0022] 軟件部分主要包括圖像處理模塊和機器人運動控制模塊,二者運行在同一所述控 制模塊中,彼此通過消息隊列方式實現(xiàn)線程通信。所述圖像處理模塊將實時采集的圖像與 已進行注冊的模板進行基于形狀的模板匹配,判斷圖像中是否出現(xiàn)對應(yīng)工件圖像,當出現(xiàn) 已注冊的工件圖像時,根據(jù)進入相機視場范圍內(nèi)的工件在相機坐標系下的坐標。然后根據(jù) 得到的相機坐標系與機器人坐標系之間的映射關(guān)系得到其在機器人坐標系下的坐標,并通 過線程通信將工件在機器人坐標系下的坐標送到機器人運動控制模塊,運動控制模塊收到 坐標后,根據(jù)預(yù)定的操作指令,對工件進行抓取。
[0023] 手眼標定方法具體工作流程如下,如圖1和圖2 :
[0024] 首先,安裝所述相機、所述激光測距儀與所述機器人位置,調(diào)整所述相機及所述激 光測距儀參數(shù)并進行設(shè)定,通過點擊所述控制模塊上的所述標定板邊緣區(qū)域任一點,并確 保選取的位置在所述相機的拍攝范圍內(nèi),所述激光測距儀發(fā)射激光光斑在所述選取的點位 置上;
[00巧]由激光光斑從所述標定板返回距離,計算激光光斑在所述激光測距儀坐標系下的 坐標,所述激光測距儀與所述機器人末端精準定位夾緊,得到激光測距儀坐標系與機器人 坐標系之間的映射關(guān)系,進而計算激光光斑在機器人坐標系下的坐標,具體步驟包括:所述 激光測距儀測的激光光斑至所述標定板的距離為d,得到激光光斑在激光測距儀坐標系下 的坐標為p(〇,〇,d),激光測距儀坐標系與機器人坐標系之間的映射關(guān)系公式表示為:市= R"p+tpf。,tp代表激光光斑在機器人坐標系中的位置,tpf。代表激光測距儀坐標系相對機器 人坐標系的平移矢量,R"表示機器人坐標系相對激光測距儀坐標系的方位;所述控制模塊 用于連接所述相機與所述機器人,并讀取所述機器人末端位姿,計算激光光斑在機器人坐 標系下的坐標(X,Zf)。
[00%] 所述標定板具有一像素坐標系,通過所述相機抓取激光光斑在所述標定板的圖 像,計算激光光斑在像素坐標系下的坐標,所述激光測距儀在所述標定板范圍內(nèi)選取n個 位置,確保選取的位置在所述相機的拍攝范圍內(nèi),所述激光測距儀在選取的一點位置上發(fā) 射激光光斑,所述相機抓取激光光斑在所述標定板的圖像,利用Blob分析算法對圖像進行 處理,得到激光光斑在像素坐標系下的坐標(Xp,yp,Zp),具體步驟包括:進行圖像特征提取, 圖像識別,圖像先進行二值化處理,再用Blob算法將工件和背景進行分離,同時進行特征 提取,圖像定位,求取圖像中屯、的世界坐標(cent&rX,cent&rY)
[0027] cente;rX=X,radio
[0028] cente;rY=y'radio
[0029] Radio-經(jīng)過標定后,每個像素在世界坐標系中的實際長度;
[0030]再求取圖像某一斜邊與坐標系的夾角0,公式為
[0031] 0 =tan七化為斜邊的斜率);
[0032] 得到該點激光光斑在像素坐標系下的坐標與激光光斑在機器人坐標系下的坐標, 保存數(shù)據(jù),如若保存數(shù)據(jù)不成功,則返回重新取點,保存數(shù)據(jù)成功后,通過點擊控制模塊上 的所述標定板邊緣區(qū)域第二點,取點方向為為順時針或逆時針,激光測距儀再一次發(fā)射激 光光斑在所述選取的點位置上,并再一進行自動測量,保存激光光斑在機器人坐標系下與 激光光斑在像素坐標系下的坐標的數(shù)據(jù),同理,保存數(shù)據(jù)不成功重復(fù)之前動作,保存數(shù)據(jù)成 功后進行下一步,公式如下:設(shè)取點數(shù)為n(n的初始值為2),n=n+