欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于單目視覺的少自由度機器人運動學(xué)標定方法與流程

文檔序號:11880052閱讀:235來源:國知局
一種基于單目視覺的少自由度機器人運動學(xué)標定方法與流程

本發(fā)明涉及工業(yè)機器人標定領(lǐng)域,尤其是涉及一種基于單目視覺的少自由度機器人運動學(xué)標定方法。



背景技術(shù):

精確測量機器人工作末端位移是完成機器人標定的核心。通常借助外界傳感器測量其位姿。常用設(shè)備包括三坐標測量儀、經(jīng)緯儀等精密測量儀器。但這些方案的共同缺點在于設(shè)備價格昂貴(數(shù)十萬甚至上百萬),使用方法繁瑣復(fù)雜,往往需要專業(yè)人員現(xiàn)場校正操控,使用門檻較高;另一方面,此類設(shè)備通常需要占據(jù)較大的空間,難以滿足生產(chǎn)現(xiàn)場對于高效便捷的要求。

受制于上述設(shè)備,工業(yè)現(xiàn)場往往采用根據(jù)機器人工作實際位置誤差,手動擬合補償函數(shù),但這樣并沒有將模型中各個機械參數(shù)造成的誤差解耦,難以滿足精確度的要求。且標定結(jié)果適用范圍具有很大的局限性,往往僅適用于標定過的位置,而其他位置存在較大誤差。

基于攝像頭的運動學(xué)標定方案,以其經(jīng)濟、便捷的優(yōu)點,能夠很好的滿足現(xiàn)場標定的要求。測量時,將相機固定在機器人末端,標靶位置固定且已知(或反之)。其基本原理是利用相機相對于固定標靶的移動,得到末端的位移信息。然而,現(xiàn)有的方案往往需要保持整個標靶始終處于視野范圍內(nèi),利用標靶上所有的特征點,計算所需信息。這種方法很難利用普通相機做到高精度標定。主要原因是以下兩點:

1.機器人往往需要較大的工作空間,為了保持標靶始終處于視野范圍內(nèi),這就要求相機的視野范圍很大,相應(yīng)的每個像素對應(yīng)的尺寸就很大(很難控制在1mm2以內(nèi)),難以做到精確定位。

2.標靶會較多的出現(xiàn)在視野中圖片的邊緣區(qū)域。而該部分有很嚴重的徑向畸變。即使經(jīng)過攝像頭標定,其帶來的誤差也會使測量結(jié)果產(chǎn)生較大的波動,給結(jié)果的精準度造成干擾。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的是針對上述問題提供一種基于單目視覺的少自由度機器人運動學(xué)標定方法。

本發(fā)明的目的可以通過以下技術(shù)方案來實現(xiàn):

一種基于單目視覺的少自由度機器人運動學(xué)標定方法,所述方法包括下列步驟:

1)根據(jù)現(xiàn)有標定變量U,利用絕對值編碼棋盤對安裝于少自由度機器人上的單目視覺傳感器的多組位移Δ'進行分級測距并優(yōu)化,具體為:

11)對絕對值編碼棋盤的角點在像素坐標系下的位置坐標進行優(yōu)化;

12)利用優(yōu)化后的絕對值編碼棋盤對安裝于少自由度機器人上的單目視覺傳感器的位移進行分級測距,得到位移Δ',同時測量與位移對應(yīng)的電機角度Θ的變換值;

2)標定棋盤格坐標系與基坐標系的轉(zhuǎn)換角α,并根據(jù)轉(zhuǎn)換角α對位移Δ'進行坐標變換得到位移Δ,結(jié)合步驟12)測量的電機角度Θ的變換值得到多組觀測變量Vk

3)利用約束關(guān)系,結(jié)合步驟2)得到的多組觀測變量Vk對標定變量U進行優(yōu)化,判斷標定變量U是否達到定位精度,若是則完成少自由度機器人的運動學(xué)標定,若否則返回步驟1)。

所述位移Δ'為單目視覺傳感器在絕對值編碼棋盤下的中心柵格位置變化T與單目視覺傳感器在中心柵格內(nèi)部的相對位移T'之和。

所述單目視覺傳感器在絕對值編碼棋盤下的中心柵格位置變化T具體為:根據(jù)識別中心柵格陣列的編碼,確定單目視覺傳感器所在的中心柵格的位置,繼而確定單目視覺傳感器在絕對值編碼棋盤下的中心柵格位置變化T。

所述單目視覺傳感器在中心柵格內(nèi)部的相對位移T'具體為:

T'=t(i+1)k-tik

spik=A[Rik tik]Pik

其中,i=1,2,...表示單目視覺傳感器的不同位置,k表示角點的編號,pik和Pik分別表示角點在像素坐標系與棋盤格坐標系下的坐標,s表示尺度參數(shù),A表示單目視覺傳感器內(nèi)部參數(shù),Rik和tik分別表示單目視覺傳感器當前位姿在棋盤格坐標系下單旋轉(zhuǎn)和平移。

所述絕對值編碼棋盤的具體構(gòu)造過程為:根據(jù)棋盤大小構(gòu)造n階偽隨機序列,并將該偽隨機序列進行二維延拓,得到與棋盤對應(yīng)的二維陣列作為棋盤的絕對值編碼。

所述對絕對值編碼棋盤的角點在像素坐標系下的位置坐標進行優(yōu)化具體為:

111)根據(jù)絕對值編碼棋盤的局部特征對角點在像素坐標系下的位置坐標進行優(yōu)化;

112)根據(jù)絕對值編碼棋盤的整體屬性,對優(yōu)化后的角點在像素坐標系下的位置坐標進行進一步優(yōu)化。

所述步驟111)具體為:

1111)根據(jù)公式對角點在像素坐標系下的位置坐標進行優(yōu)化:

其中,p為角點,qj為角點鄰域內(nèi)的點,DI為梯度。

1112)求取步驟1111)優(yōu)化后的角點誤差值判斷誤差值是否小于誤差閾值,若是則得到優(yōu)化后的位置坐標,若否則返回步驟1111),所述角點誤差值具體為:

所述根據(jù)絕對值編碼棋盤的整體屬性進行優(yōu)化具體為:

1121)根據(jù)步驟111)優(yōu)化后得到的角點在像素坐標系下的位置坐標計算理想角點的坐標集合;

1122)計算步驟121)得到的理想角點的坐標集合內(nèi)每對相鄰點距離與標準尺寸之間的差的平方和作為當前誤差;

1123)判斷當前誤差是否小于最優(yōu)誤差,若是則將得到的理想角點的坐標集合作為最優(yōu)的角點坐標集合,并將當前誤差作為最優(yōu)誤差,并進入步驟124),若否則直接進入步驟124);

1124)判斷最優(yōu)誤差是否達到給定閾值或迭代次數(shù)是否達到迭代閾值,若是則輸出最優(yōu)的角點坐標集合,若否則返回步驟121)。

所述標定棋盤格坐標系與基坐標系的轉(zhuǎn)換角α具體為:

21)控制棋盤格坐標系與基坐標系的Z軸平行,并控制機器人沿X軸方向移動;

22)測量機器人移動方向與棋盤格坐標系X軸的夾角,得到棋盤格坐標系與基坐標系的轉(zhuǎn)換角α。

所述對標定變量U進行優(yōu)化具體為:

Un+1=Un-J(Un,V)+E(Un,V)

E(U,V)=[Γ1...Γt]

Γk=f(Vk,U)

Vk=[Θ1...ΘmΔxΔyΔz]

其中,E(Un,V)為測量值的誤差矩陣,J(Un,V)為誤差矩陣的雅可比矩陣,Γk為約束條件。

與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:

(1)利用絕對值編碼棋盤,實現(xiàn)單目視覺傳感器的分級測距,保證了單目視覺傳感器始終工作在較小的視野范圍內(nèi),且圖片有效信息集中在圖像中央畸變較小的部分,提高單目視覺傳感器的測距精度,進而提高了標定的準確性。

(2)分別根據(jù)絕對值編碼棋盤的局部特征和整體屬性對角點的位置坐標進行了優(yōu)化,使角點的精度達到了亞像素的級別,進一步提高了單目視覺傳感器的測距準確度,提高了標定的準確性。

(3)根據(jù)絕對值編碼棋盤的整體屬性對棋盤的角點進行迭代優(yōu)化,繼而優(yōu)化了機械參數(shù)和棋盤格位置參數(shù),排數(shù)了人為引入的干擾。

(4)利用單目視覺傳感器進行標定,一方面節(jié)省成本,另一方面也便于現(xiàn)場安裝,實用性強。

附圖說明

圖1為本發(fā)明的方法流程圖;

圖2為分級測距的示意圖,其中(2a)為中心柵格的位置變化示意圖,(2b)為光心相對位移示意圖;

圖3為8階反饋移位寄存器的示意圖;

圖4為對偽隨機序列進行二維延擴的示意圖;

圖5為角點位置優(yōu)化的示意圖,其中(5a)為利用棋盤格的局部特征進行角點位置優(yōu)化,(5b)為利用棋盤格的整體屬性進行角點位置優(yōu)化。

具體實施方式

下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細說明。本實施例以本發(fā)明技術(shù)方案為前提進行實施,給出了詳細的實施方式和具體的操作過程,但本發(fā)明的保護范圍不限于下述的實施例。

機器人標定的通常步驟是根據(jù)機器人的結(jié)構(gòu)特征,構(gòu)建運動學(xué)模型。并利用模型特性建立觀測變量與待標定變量的約束關(guān)系;通過外部傳感器,高精度地測量所需觀測變量;利用約束關(guān)系與多組實測值,通過相關(guān)數(shù)學(xué)優(yōu)化方法,實現(xiàn)對待標定變量的優(yōu)化;以此修正模型中的機械參數(shù)或進行末端的誤差補償,獲得高精度的空間定位。

如圖1所示,本實施例提供的是一種基于單目視覺的少自由度機器人運動學(xué)標定方法,針對的是空間少自由度機器人的標定,即機器人末端存在空間上的位移,沒有姿態(tài)上的旋轉(zhuǎn),具體的標定步驟如下:

1)根據(jù)現(xiàn)有標定變量U,利用絕對值編碼棋盤對安裝于少自由度機器人上的單目視覺傳感器的多組位移Δ'進行分級測距并優(yōu)化;

2)標定棋盤格坐標系與基坐標系的轉(zhuǎn)換角α,并根據(jù)轉(zhuǎn)換角α對位移Δ'進行坐標變換得到位移Δ,結(jié)合測量的電機角度Θ的變換值得到多組觀測變量Vk;

3)利用約束關(guān)系,結(jié)合步驟2)得到的多組觀測變量Vk對標定變量U進行優(yōu)化,判斷標定變量U是否達到定位精度,若是則完成少自由度機器人的運動學(xué)標定,若否則返回步驟1)。

下面對上述步驟進行具體的闡述:

11)對絕對值編碼棋盤的角點在像素坐標系下的位置坐標進行優(yōu)化:

提高角點識別的精度有利于提高求算的平移向量精度。利用棋盤格的局部特征與整體屬性,可以進行兩個方面的優(yōu)化。

如圖5(a)所示,考慮到角點應(yīng)滿足性質(zhì):在p的圖像鄰域內(nèi)的一點qj處,其梯度與向量p-qj垂直,即:

但由于存在誤差,記為εj,具體為:

因此總誤差為:

根據(jù)上述性質(zhì),可知步驟111)的具體過程為:

1111)根據(jù)公式對角點在像素坐標系下的位置坐標進行優(yōu)化:

其中,p為角點,qj為角點鄰域內(nèi)的點,DI為梯度。

1112)求取步驟1111)優(yōu)化后的角點誤差值判斷誤差值是否小于誤差閾值,若是則得到優(yōu)化后的位置坐標,若否則返回步驟1111)。

另一方面,棋盤格打印的尺寸精度可以到0.01mm的數(shù)量級。利用尺寸信息(如圖5(b)所示)可以在整體布局上對角點進行約束。下述為基于RANSAC對角點布局優(yōu)化的算法:

1121)根據(jù)步驟111)優(yōu)化后得到的角點在像素坐標系下的位置坐標計算理想角點的坐標集合;

1122)計算步驟121)得到的理想角點的坐標集合內(nèi)每對相鄰點距離與標準尺寸之間的差的平方和作為當前誤差;

1123)判斷當前誤差是否小于最優(yōu)誤差,若是則將得到的理想角點的坐標集合作為最優(yōu)的角點坐標集合,并將當前誤差作為最優(yōu)誤差,并進入步驟124),若否則直接進入步驟124);

1124)判斷最優(yōu)誤差是否達到給定閾值或迭代次數(shù)是否達到迭代閾值,若是則輸出最優(yōu)的角點坐標集合,若否則返回步驟121)。

12)利用優(yōu)化后的絕對值編碼棋盤對安裝于少自由度機器人上的單目視覺傳感器的位移進行分級測距,得到位移Δ',同時測量與位移對應(yīng)的電機角度Θ的變換值:

視覺測量系統(tǒng)由單目視覺傳感器(即相機)及絕對值編碼棋盤組成。由于相機光心C與末端P之間剛性連接,在同一坐標系下,二者的位移相等。定義相機的光心所對應(yīng)的棋盤格,即圖2中心點所在柵格為中心柵格G。如圖2所示,相機的位移可以分成兩級:中心柵格的位置變化T與光心相對于中心柵格的位置變化T'??梢哉J為圖2中光心先在同一柵格內(nèi)部平移T',然后移動了兩個中心柵格的距離T。

選取中心柵格周圍n*n(本實施例中n=8)的棋盤格陣列,那么T可以通過陣列本身的特定標示確定,T'可以利用陣列求算相機外部參數(shù)解算。這樣的劃分能夠保證相機工作在足夠小的視野范圍,從而獲得更加精準且魯邦的測量值。確定中心柵格的在棋盤上的絕對位置需要每個柵格具有獨特的標示。可以對其周圍n*n的棋盤格陣列進行二進制編碼,使每個柵格對應(yīng)的陣列具有唯一的標示。通過擴展偽隨機序列到二維,可以實現(xiàn)柵格的絕對編碼。構(gòu)造一個長度為m=2n-1的偽隨機序列需要n階多項式h(x)。本實施例中以n=8為例,反饋移位寄存器如圖3所示。即在給定ai...ai+7后,以此類推。

上述的構(gòu)造方式可以證明得到寄存器的循環(huán)周期為255=28-1。下面將其延擴為50*50的二維陣列。若棋盤格邊長為2cm,則會構(gòu)成1m*1m棋盤,滿足使用要求。如圖4所示,取前215組編碼,分為模塊1~5,每個模塊43組,每組長度為50。第一行用模塊1偽隨機編碼即43組不同的編碼(長度為50),使得在序列中任取8個數(shù)都有唯一的一組8位二進制編碼與其對應(yīng)。將1*8的標識延拓為8*8的方陣,后7行與第1行相同,得到8*50的矩陣。其余4個8*50的矩陣可以用類似的方法得到,組合后得到40*50的矩陣,最后10*50的矩陣可由兩個5*50的矩陣組合得到,分別采用模塊1、2的編碼數(shù)據(jù)延拓。這樣,通過圖像識別柵格陣列的編碼,就能夠唯一的確定相機光心所在的柵格位置,從而完成T的測量。

在圖2的位移模型中,T'的求算等價于利用給定大小的棋盤對相機外部參數(shù)進行標定:

spik=A[Rik tik]Pik

其中i表示相機不同的位置,k表示不同的角點編號,p,P分別為某角點的像素坐標與棋盤格坐標系下的坐標。A為相機內(nèi)部參數(shù),R,t分別為相機當前位姿在棋盤坐標系下的旋轉(zhuǎn)和平移,s為尺度參數(shù)。不同位置之間的相對位移即為:T'=t2-t1

2)標定棋盤格坐標系與基坐標系的轉(zhuǎn)換角α,并根據(jù)轉(zhuǎn)換角α對位移Δ'進行坐標變換得到位移Δ,結(jié)合步驟12)測量的電機角度Θ的變換值得到多組觀測變量Vk

借助現(xiàn)場環(huán)境(如物料傳送帶等)或水平儀等工具,可以保證兩坐標系Z軸平行,待標定的參數(shù)僅為二者X軸夾角α。標定前,控制機器人沿X軸方向移動,測量其移動方向與棋盤格X軸夾角即為α;利用α值標定機器人參數(shù)后,重新測量α。不斷重復(fù)上述過程以迭代優(yōu)化。實驗證明,該迭代過程重復(fù)2-3次既能達到較高的精確度。

3)利用約束關(guān)系,結(jié)合步驟2)得到的多組觀測變量Vk對標定變量U進行優(yōu)化,判斷標定變量U是否達到定位精度,若是則完成少自由度機器人的運動學(xué)標定,若否則返回步驟1):

通過上述步驟,可以得到多組觀測變量Vk,在上述測距過程完成后,則可以進行機器人的運動學(xué)標定:

觀測變量V具體如下所示:

Vk=[Θ1...ΘmΔxΔyΔz]

上式表示第k組觀測變量,其中Θ表示m個電機角度,Δ表示末端在空間坐標系x,y,z三個方向上的位移。而標定變量U由機器人的需要標定的機械參數(shù)組成。這是結(jié)合機器人模型與使用需求確定的。約束條件可以表征為:

Γk=f(Vk,U)

測得V后即可獲得多組約束條件。在理想的U下,Γ為零。可以選用適合的數(shù)學(xué)優(yōu)化方法最小化Γ,以獲得U的最佳值。

高斯牛頓法是常用的解決非線性回歸問題的手段??梢詫組測量值表達成誤差矩陣的形式:

E(U,V)=[Γ1...Γt]

記誤差矩陣的雅克比矩陣為J(U,V),則可逐步優(yōu)化待標定向量:

Un+1=Un-J(Un,V)+E(Un,V)

通過上述步驟,最終可以完成少自由度機器人的運動學(xué)標定。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
临海市| 铅山县| 抚州市| 宣城市| 灌阳县| 简阳市| 合川市| 太保市| 宁河县| 延长县| 寿光市| 麻栗坡县| 博爱县| 云南省| 齐齐哈尔市| 土默特右旗| 河曲县| 武功县| 林芝县| 彝良县| 巴林右旗| 木里| 巨鹿县| 南安市| 蒙城县| 淅川县| 连平县| 潞城市| 铜梁县| 黄浦区| 鄢陵县| 潼南县| 石泉县| 万宁市| 丽水市| 渭南市| 项城市| 鹰潭市| 从江县| 福安市| 磐石市|