激光測量機器人的手眼標定方法及系統的制作方法
【專利摘要】本發明提供一種激光測量機器人的手眼標定方法及系統,所述方法包括:接收激光器數據,獲取初始位置下,靶球的圓弧半徑R0;以及機器人分別沿X方向、Y方向、Z方向平移微小步長后靶球的圓弧半徑Rx,Ry,Rz;根據上述圓弧半徑確認本次搜索方向;以及確認圓弧半徑R的搜索區間;采用區間消去法逐漸減小搜索區間;在所述搜索區間內,判斷當前圓弧半徑R是否滿足如下關系:,若是,對應獲取圓弧半徑為R的圓弧圓心坐標,以及機器人的位置姿態信息;并將其形成一個共軛對,求取多個共軛對,并根據其求解變換矩陣,完成手眼標定。本發明使手眼標定結果更加準確,實現方法簡單,自動化程度高,同時,該系統實用性強,可廣泛應用于工業測量。
【專利說明】激光測量機器人的手眼標定方法及系統
【技術領域】
[0001]本發明涉及一種激光測量機器人的手眼標定方法及系統,主要應用于工業測量【技術領域】。
【背景技術】
[0002]激光測量機器人是指工業機器人搭載成品化的激光器組成的機器人視覺測量系統,該系統用于工業零部件的形位尺寸檢測。目前,最常見的機器人視覺測量系統的組成方式是六自由度工業機器人搭載2D激光器,其中2D激光器輸出的數據是光平面上的被測物體的二維數據,2D激光器有廠家內置的坐標系。當2D激光器固定到工業機器人末端手臂上之后,不考慮環境因素影響的話,激光器坐標系與工業機器人末端法蘭坐標系的相對變換矩陣就唯一確定,且激光器拆卸再安裝前不會改變。
[0003]手眼標定,即2D激光器坐標系與工業機器人末端法蘭坐標系的相對變換矩陣的確定,往往通過一個半徑已知的高精度靶球,理想情況下機器人以不同的位置姿態使激光器恰好輸出祀球球心所在的最大圓弧,通過圓擬合可求出最大圓弧的圓心,即球心,此時機器人位置姿態信息與靶球球心坐標即組成一個共軛對,然后建立多個共軛對,并以球心相對于機器人基坐標系位置不變作為約束,即可求解激光器坐標系與工業機器人末端法蘭坐標系的相對變換矩陣。
[0004]而實際標定中很難人為控制機器人使激光器恰好能輸出靶球球心所在的最大圓弧,目前做法通常是輸出靶球某一圓弧,該圓弧半徑與靶球半徑、該圓弧圓心與靶球球心距離構成直角三角形,通過計算該圓弧圓心與靶球球心距離得到靶球球心的坐標。然而,該方法不能準確建立機器人位置姿態信息與靶球球心坐標的對應關系,現有方法建立的對應關系并不是機器人位置姿態信息與靶球球心坐標對應關系的真實反映,進一步的,導致手眼標定結果不夠精準。
【發明內容】
[0005]為了解決上述問題,本發明的目的在于提供一種激光測量機器人的手眼標定方法及系統;該方法及系統可以控制機器人運動使激光器恰好輸出靶球球心所在的最大圓弧,進而準確建立機器人真實位置姿態與靶球球心坐標的對應關系,使手眼標定結果更加準確。
[0006]相應的,本發明一實施方式的激光測量機器人的手眼標定方法,所述方法包括以下步驟:
51、將激光投射到靶球表面形成激光數據;
52、接收所述激光器數據,獲取初始位置下,所述靶球的圓弧半徑RO;
53、基于機器人的基坐標系,以上述初始位置為基點,所述機器人分別沿X方向、Y方向、Z方向平移微小步長后,分別獲取并記錄X方向、Y方向、Z方向對應的靶球的圓弧半徑Rx, Ry, Rz ; 54、將Rx,Ry,Rz分別與RO進行大小比較,根據其比較結果,確認本次搜索方向,并沿著當前搜索方向,確認圓弧半徑R的搜索區間;
55、采用區間消去法逐漸減小搜索區間;
56、在所述搜索區間內,判斷當前圓弧半徑R是否滿足如下關系:
M ,其中,r為靶球半徑,R為實時獲取的圓弧半徑,ε為系統預設閾值;
T
若是,獲取當前狀態下,對應圓弧半徑為R的圓弧圓心坐標,以及機器人的位置姿態信息;記錄機器人的位置姿態信息和所獲取的圓弧圓心坐標,并將其形成一個共軛對;
若否,返回步驟S5 ;
57、根據所述共軛對信息,求解變換矩陣,完成手眼標定。
[0007]作為本發明的進一步改進,所述方法還包括以下步驟:接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑R0、Rx,Ry, Rz。
[0008]作為本發明的進一步改進,所述步驟S4具體包括:將圓弧半徑Rx,Ry, Rz分別與RO進行比較,選擇圓弧半徑變化最大的坐標軸方向作為本次搜索方向。
[0009]作為本發明的進一步改進,所述步驟S4具體包括:沿著當前搜索方向,通過外推法確認圓弧半徑R的搜索區間,所述搜索區間按照圓弧半徑小-大-小的位置關系確定。
[0010]作為本發明的進一步改進,所述步驟S7具體包括:調整機器人到不同的位置姿態,重復步驟SI至S6,得到N個所述共軛對;
判斷N是否大于第二系統閾值;
若是,求解變換矩陣,完成手眼標定;
若否,回到步驟SI。
[0011]相應地,本發明一實施方式的激光測量機器人的手眼標定方法系統,所述系統包括:激光發射單元,所述激光發射單元用于將激光投射到靶球表面形成激光數據;
數據處理單元,所述數據處理單元用于接收所述激光器數據,獲取初始位置下,所述靶球的圓弧半徑RO ;
基于機器人的基坐標系,以上述初始位置為基點,控制所述機器人分別沿X方向、Y方向、Z方向平移微小步長后,分別獲取并記錄X方向、Y方向、Z方向對應的靶球的圓弧半徑Rx, Ry, Rz ;
將Rx,Ry, Rz分別與RO進行大小比較,根據其比較結果,確認本次搜索方向,并沿著當前搜索方向,確認圓弧半徑R的搜索區間;
采用區間消去法逐漸減小搜索區間;
在所述搜索區間內,判斷當前圓弧半徑R是否滿足如下關系:
,其中,r為靶球半徑,R為實時獲取的圓弧半徑,ε為系統預設閾值;
T
若是,獲取當前狀態下,對應圓弧半徑為R的圓弧圓心坐標,以及機器人的位置姿態信息;記錄機器人的位置姿態信息和所獲取的圓弧圓心坐標,并將其形成一個共軛對;
若否,繼續沿著當前搜索方向,采用區間消去法逐漸減小搜索區間; 根據所述共軛對信息,求解變換矩陣,完成手眼標定。
[0012]作為本發明的進一步改進,所述數據處理單元還用于,接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑R0、Rx,Ry, Rz。
[0013]作為本發明的進一步改進,所述數據處理單元還用于,將圓弧半徑Rx,Ry, Rz分別與RO進行比較,選擇圓弧半徑變化最大的坐標軸方向作為本次搜索方向。
[0014]作為本發明的進一步改進,所述數據處理單元還用于,沿著當前搜索方向,通過外推法確認圓弧半徑R的搜索區間,所述搜索區間按照圓弧半徑小-大-小的位置關系確定。
[0015]作為本發明的進一步改進,所述數據處理單元還用于,調整機器人到不同的位置姿態,重復獲得N個所述共軛對;
判斷N是否大于第二系統閾值;
若是,求解變換矩陣,完成手眼標定;
若否,繼續調整機器人到不同的位置姿態,重復獲得下一個所述共軛對。
[0016]與現有技術相比,本發明的激光測量機器人的手眼標定方法及系統,該方法及系統可以控制機器人運動使激光器恰好輸出祀球球心所在的最大圓弧,進而準確建立機器人真實位置姿態與靶球球心坐標的對應關系,使手眼標定結果更加準確,實現方法簡單,自動化程度高,同時,該系統實用性強,可廣泛應用于工業測量。
【專利附圖】
【附圖說明】
[0017]圖1是本發明一實施方式中激光測量機器人的手眼標定方法的流程圖;
圖2是本發明一實施方式中確定圓弧半徑搜索區間過程示意圖;
圖3是本發明一實施方式中激光測量機器人的手眼標定系統的結構示意圖。
【具體實施方式】
[0018]以下將結合附圖所示的各實施方式對本發明進行詳細描述。但這些實施方式并不限制本發明,本領域的普通技術人員根據這些實施方式所做出的結構、方法、或功能上的變換均包含在本發明的保護范圍內。
[0019]如圖1所示,在本發明一實施方式中激光測量機器人的手眼標定方法,所述方法包括以下步驟:
S1、將激光投射到靶球表面形成激光數據。
[0020]相應的,借助人工,手動調整機器人的位置,進而使機器人帶動激光器運動將激光投射在靶球上。
[0021]優選的,在本發明的優選實施方式中,所述機器人為6自由度機器人,所述激光器為2D激光器。
[0022]優選的,激光投射到靶球上的位置沒有具體限定,然而,由于本發明最終所要獲取的結果與通過該圓心坐標的最大圓弧相關,相應的,為了縮短優化過程,以及提高收斂度,故,激光第一次投射到靶球上的位置,應盡可能的靠近通過所述靶球圓心坐標的最大圓弧處。
[0023]S2、接收所述激光器數據,獲取初始位置下,所述靶球的圓弧半徑R0。
[0024]具體的,接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑R0,并記錄所述圓弧半徑RO的數值。
[0025]所述初始位置為激光初次投射到靶球表面的位置。
[0026]S3、基于機器人的基坐標系,以上述初始位置為基點,所述機器人分別沿X方向、Y方向、Z方向平移微小步長后,分別獲取并記錄X方向、Y方向、Z方向對應的靶球的圓弧半徑 Rx, Ry, Rz。
[0027]具體的,沿著機器人基坐標系的X方向、Y方向、Z方向,分別平移數值相等的微小步長,并記錄平移微小步長后,X方向、Y方向、Z方向上分別對應的靶球圓弧半徑Rx,Ry,Rz。
[0028]進一步的,機器人每次沿X方向、Y方向、Z方向平移微小步長,獲取圓弧半徑Rx,Ry, Rz后,所述機器人均退回到初始位置;以優化計算過程,縮短計算時間。
[0029]相應的,按照獲取RO的數值的方法,接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑Rx,Ry7 Rz,并記錄所述圓弧半徑Rx, Ry, Rz的數值。
[0030]S4、將Rx,Ry,Rz分別RO的進行大小比較,根據其比較結果,確認本次搜索方向,并沿著當前搜索方向,確認圓弧半徑R的搜索區間。
[0031 ] 具體的,將圓弧半徑Rx,Ry, Rz分別與RO進行比較,選擇圓弧半徑變化最大的坐標軸方向作為本次搜索方向。
[0032]相應的,將Rx與RO的差值的絕對值、將Ry與RO的差值的絕對值、將Rz與RO的差值的絕對值進行大小比較,選擇相較于RO變化最大的圓弧半徑所在方向為本次搜索方向。
[0033]進一步,判斷本次搜索方向上的圓弧半徑是否大于初始位置的圓弧半徑;若是,沿著與機器人前次平移方向的同一方向確認圓弧半徑R的搜索區間;若否,沿著與機器人前次平移方向的相反方向確認圓弧半徑R的搜索區間。
[0034]為了更清楚的描述本發明的技術方案,以下將列舉一具體實施例描述步驟S4,需要說明的是,本具體實施例并不能用來限制本發明,在此不做詳細贅述。
[0035]具體的,在將Rx,Ry,Rz分別RO的進行大小比較后,假設,確認Rx與RO的差值絕對值最大,此時,確認當如的搜索方向為,相對于機器人基坐標系的X方向;進一步,判斷Rx是否大于R0,若是,確認搜索方向與獲取Rx時的平移方向相同,若否,確認搜索方向與獲取Rx時的平移方向相反。
[0036]具體的,沿著當前搜索方向,通過外推法確認圓弧半徑R的搜索區間,所述搜索區間按照圓弧半徑小-大-小的位置關系確定。
[0037]為了更清楚的描述本發明的技術方案,以下將列舉一具體實施例描述步驟S5,需要說明的是,本具體實施例并不能用來限制本發明,在此不做詳細贅述。
[0038]結合圖2所示,沿著當前搜索方向,假設獲得第一個位置下激光器輸出的圓弧半徑為^,第二個位置下圓弧半徑為r2,第三個位置下圓弧半徑為r3,則上述圓弧半徑滿足如下關系< r2 > r3,此時,確定靶球球心所在的圓弧在巧所在位置和1*3所在位置之間。上述搜索過程即為所述搜索區間按照圓弧半徑小-大-小的位置關系確定。需要說明的是,圖2中箭頭所示方向為當前搜索方向,該箭頭指示方向僅僅是示意性的標識,在實際應用中,所述搜索方向根據計算結果確定,在此不做詳細贅述。
[0039]S5、采用區間消去法逐漸減小搜索區間。
[0040]相應的,采用區間消去規則減小搜索區間;即在上一次的搜索方向上及搜索區間內,使機器人往復運動,減小搜索區間。
[0041]S6、在所述搜索區間內,判斷當前圓弧半徑R是否滿足如下關系:,其
r
中,r為靶球半徑,R為實時獲取的圓弧半徑,ε為系統預設閾值;
若是,獲取當前狀態下,對應圓弧半徑為R的圓弧圓心坐標,以及機器人的位置姿態信息;并記錄機器人的位置姿態信息和所獲取的圓弧圓心坐標,將其形成一個共軛對;以供后續計算使用。
[0042]若否,返回步驟S5;
相應的,ε的取值范圍并沒有具體限定,其取值標準可根據需要,具體設定,可以理解的是,ε取值越小,其計算結果更加精準,在此不做詳細贅述。
[0043]相應的,所述機器人的位置姿態信息也被稱為:所述機器人各關節的碼盤數,或所述機器人末端法蘭坐標系相對于基坐標系的變換關系。
[0044]S7、根據所述共軛對信息,求解變換矩陣,完成手眼標定。
[0045]相應的,在所述機器人形成當前共軛對的最終姿態的基礎上,人工控制機器人至下一個位置姿態,或機器人自動調整至下一個位置姿態,重復步驟SI至步驟S6的過程,并在不同的位置姿態上,形成后續所需要的多個共軛對,同時,對獲取的多個共軛對進行保存。
[0046]具體的,控制機器人至不同的位置姿態后,重復步驟SI至S6,得到N個所述共軛對;
判斷N是否大于第二系統閾值;
若是,求解變換矩陣,完成手眼標定;若否,控制機器人在形成前一個共軛對的最終位置姿態基礎上,控制機器人至下一個位置姿態,并重新開始進行步驟SI。
[0047]具體的,根據N個共軛對,計算出2D激光器坐標系與機器人位置姿態信息相對變換矩陣,完成手眼標定。
[0048]需要說明的是,所述第二系統閾值的數值沒有具體限定,一般情況下,所述第二系統閾值的數值越大,最終所要獲取的結果更加準確。
[0049]相應的,所述位置姿態的確定,盡可能的在不同的方向使激光投射到靶球上,進而計算出對應靶球各個方向上對應的多個所述共軛對的信息。
[0050]與現有技術相比,本發明的激光測量機器人的手眼標定方法,該方法及系統可以控制機器人運動使激光器恰好輸出靶球球心所在的最大圓弧,進而準確建立機器人真實位置姿態與靶球球心坐標的對應關系,使手眼標定結果更加準確,實現方法簡單,自動化程度高,同時,該系統實用性強,可廣泛應用于工業測量。
[0051]相應的,結合圖3所示,圖3是本發明一實施方式中激光測量機器人的手眼標定系統的結構示意圖。
[0052]相應的,所述系統包括:激光發射單元100,數據處理單元200。
[0053]激光發射單元100,激光發射單元100用于將激光投射到靶球表面形成激光數據; 相應的,借助人工,手動調整機器人的位置,進而使機器人帶動激光器運動,激光發射單元100將激光投射在靶球上。
[0054]優選的,在本發明的優選實施方式中,所述機器人為6自由度機器人,所述激光器為2D激光器。
[0055]優選的,激光發射單元100將激光投射到靶球上的位置沒有具體限定,然而,由于本發明最終所要獲取的結果與通過該圓心坐標的最大圓弧相關,相應的,為了縮短優化過程,以及提高收斂度,故,激光第一次投射到靶球上的位置,應盡可能的靠近通過所述靶球圓心坐標的最大圓弧處。
[0056]數據處理單元200,數據處理單元200用于接收所述激光器數據,獲取初始位置下,所述靶球的圓弧半徑R0;
具體的,數據處理單元200用于接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑R0,并記錄所述圓弧半徑RO的數值。
[0057]所述初始位置為激光初次投射到靶球表面的位置。
[0058]數據處理單元200用于基于機器人的基坐標系,以上述初始位置為基點,控制所述機器人分別沿X方向、Y方向、Z方向平移微小步長后,分別獲取并記錄X方向、Y方向、Z方向對應的祀球的圓弧半徑Rx,Ry,Rz。
[0059]具體的,數據處理單元200控制機器人沿其基坐標系的X方向、Y方向、Z方向,分別平移數值相等的微小步長,并記錄平移微小步長后,X方向、Y方向、Z方向上分別對應的革巴球圓弧半徑Rx,Ry, Rz。
[0060]進一步的,數據處理單元200控制機器人每次沿X方向、Y方向、Z方向平移微小步長,獲取圓弧半徑Rx,Ry,Rz后,均控制所述機器人均退回到初始位置;以優化計算過程,縮短計算時間。
[0061]相應的,數據處理單元200按照獲取RO的數值的方法,接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑Rx,Ry, Rz,并記錄所述圓弧半徑Rx,Ry,Rz的數值。
[0062]數據處理單元200將Rx,Ry, Rz分別RO的進行大小比較,根據其比較結果,確認本次搜索方向,并沿著當前搜索方向,確認圓弧半徑R的搜索區間。
[0063]具體的,數據處理單元200將圓弧半徑Rx,Ry,Rz分別與RO進行比較,選擇圓弧半徑變化最大的坐標軸方向作為本次搜索方向。
[0064]相應的,數據處理單元200將Rx與RO的差值的絕對值、將Ry與RO的差值的絕對值、將Rz與RO的差值的絕對值進行大小比較,選擇相較于RO變化最大的圓弧半徑所在方向為本次搜索方向。
[0065]進一步,數據處理單元200判斷本次搜索方向上的圓弧半徑是否大于初始位置的圓弧半徑;
若是,沿著與機器人前次平移方向的同一方向確認圓弧半徑R的搜索區間;
若否,沿著與機器人前次平移方向的相反方向確認圓弧半徑R的搜索區間。
[0066]為了更清楚的描述本發明的技術方案,以下將列舉一具體實施例描述步驟S4,需要說明的是,本具體實施例并不能用來限制本發明,在此不做詳細贅述。
[0067]具體的,數據處理單元200在將Rx,Ry, Rz分別RO的進行大小比較后,假設,確認Rx與RO的差值絕對值最大,此時,確認當前的搜索方向為,相對于機器人基坐標系的X方向;進一步,數據處理單元200判斷Rx是否大于R0,若是,確認搜索方向與獲取Rx時的平移方向相同,若否,確認搜索方向與獲取Rx時的平移方向相反。
[0068]數據處理單元200沿著當前搜索方向,確認圓弧半徑R的搜索區間。
[0069]具體的,數據處理單元200沿著當前搜索方向,通過外推法確認圓弧半徑R的搜索區間,所述搜索區間按照圓弧半徑小-大-小的位置關系確定。
[0070]為了更清楚的描述本發明的技術方案,以下將列舉一具體實施例詳細描述,需要說明的是,本具體實施例并不能用來限制本發明,在此不做詳細贅述。
[0071 ] 結合圖2所示,數據處理單元200沿著當前搜索方向,假設獲得第一個位置下激光器輸出的圓弧半徑為A,第二個位置下圓弧半徑為r2,第三個位置下圓弧半徑為r3,則上述圓弧半徑滿足如下關系< r2 > r3,此時,確定祀球球心所在的圓弧在!T1所在位置和r3所在位置之間。上述搜索過程即為所述搜索區間按照圓弧半徑小-大-小的位置關系確定。需要說明的是,圖2中箭頭所示方向為當前搜索方向,該箭頭指示方向僅僅是示意性的標識,在實際應用中,所述搜索方向根據計算結果確定,在此不做詳細贅述。
[0072]相應的,數據處理單元200采用區間消去規則減小搜索區間;即在上一次的搜索方向上及搜索區間內,使機器人往復運動,減小搜索區間。
[0073]數據處理單元200在所述搜索區間內,判斷當前圓弧半徑R是否滿足如下關系: <!,其中,r為靶球半徑,R為實時獲取的圓弧半徑,ε為系統預設閾值;
r
若是,數據處理單元200獲取當前狀態下,對應圓弧半徑為R的圓弧圓心坐標,以及機器人的位置姿態信息;記錄機器人的位置姿態信息和所獲取的圓弧圓心坐標,并將其形成一個共軛對;
若否,數據處理單元200繼續沿著當前搜索方向,進一步減小搜索區間。
[0074]相應的,ε的取值范圍并沒有具體限定,其取值標準可根據需要,具體設定,可以理解的是,ε取值越小,其計算結果更加精準,在此不做詳細贅述。
[0075]相應的,所述機器人的位置姿態信息也被稱為:所述機器人各關節的碼盤數,或所述機器人末端法蘭坐標系相對于基坐標系的變換關系。
[0076]數據處理單元200根據所述共軛對信息,求解變換矩陣,完成手眼標定。
[0077]相應的,數據處理單元200在所述機器人形成當前共軛對的最終姿態的基礎上,控制機器人至下一個位置姿態,并在不同的位置姿態上,形成后續所需要的多個共軛對,同時,對獲取的多個共軛對進行保存。當然,也可以通過人工控制所述機器人至下一位置姿態,在此不做詳細贅述。
[0078]具體的,數據處理單元200控制機器人至不同的位置姿態后,得到N個所述共軛對;
判斷N是否大于第二系統閾值;若是,求解變換矩陣,完成手眼標定;若否,數據處理單元200在形成前一個共軛對的最終位置姿態基礎上,控制機器人至下一個位置姿態,獲得當前位置姿態下的共軛對。
[0079]具體的,數據處理單元200根據N個共軛對,計算出2D激光器坐標系與機器人位置姿態信息相對變換矩陣,完成手眼標定。
[0080]需要說明的是,所述第二系統閾值的數值沒有具體限定,一般情況下,所述第二系統閾值的數值越大,最終所要獲取的結果更加準確。
[0081]相應的,所述位置姿態的確定,盡可能的在不同的方向使激光投射到靶球上,進而計算出對應靶球各個方向上對應的多個所述共軛對的信息。
[0082]與現有技術相比,本發明的激光測量機器人的手眼標定方法及系統,該方法及系統可以控制機器人運動使激光器恰好輸出祀球球心所在的最大圓弧,進而準確建立機器人真實位置姿態與靶球球心坐標的對應關系,使手眼標定結果更加準確,實現方法簡單,自動化程度高,同時,該系統實用性強,可廣泛應用于工業測量。
[0083]為了描述的方便,描述以上裝置時以功能分為各種模塊分別描述。當然,在實施本申請時可以把各模塊的功能在同一個或多個軟件和/或硬件中實現。
[0084]通過以上的實施方式的描述可知,本領域的技術人員可以清楚地了解到本申請可借助軟件加必需的通用硬件平臺的方式來實現?;谶@樣的理解,本申請的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該計算機軟件產品可以保存在保存介質中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,信息推送服務器,或者網絡設備等)執行本申請各個實施方式或者實施方式的某些部分所述的方法。
[0085]以上所描述的裝置實施方式僅僅是示意性的,其中所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個地方,或者也可以分布到多個網絡模塊上。可以根據實際的需要選擇其中的部分或者全部模塊來實現本實施方式方案的目的。本領域普通技術人員在不付出創造性勞動的情況下,即可以理解并實施。
[0086]本申請可用于眾多通用或專用的計算系統環境或配置中。例如:個人計算機、信息推送服務器計算機、手持設備或便攜式設備、平板型設備、多處理模塊系統、基于微處理模塊的系統、置頂盒、可編程的消費電子設備、網絡PC、小型計算機、大型計算機、包括以上任何系統或設備的分布式計算環境等等。
[0087]本申請可以在由計算機執行的計算機可執行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、對象、組件、數據結構等等。也可以在分布式計算環境中實踐本申請,在這些分布式計算環境中,由通過通信網絡而被連接的遠程處理設備來執行任務。在分布式計算環境中,程序模塊可以位于包括保存設備在內的本地和遠程計算機保存介質中。
[0088]應當理解,雖然本說明書按照實施方式加以描述,但并非每個實施方式僅包含一個獨立的技術方案,說明書的這種敘述方式僅僅是為清楚起見,本領域技術人員應當將說明書作為一個整體,各實施方式中的技術方案也可以經適當組合,形成本領域技術人員可以理解的其他實施方式。
[0089]上文所列出的一系列的詳細說明僅僅是針對本發明的可行性實施方式的具體說明,它們并非用以限制本發明的保護范圍,凡未脫離本發明技藝精神所作的等效實施方式或變更均應包含在本發明的保護范圍之內。
【權利要求】
1.一種激光測量機器人的手眼標定方法,其特征在于,所述方法包括以下步驟: 51、將激光投射到靶球表面形成激光數據; 52、接收所述激光器數據,獲取初始位置下,所述靶球的圓弧半徑RO; 53、基于機器人的基坐標系,以上述初始位置為基點,所述機器人分別沿X方向、Y方向、Z方向平移微小步長后,分別獲取并記錄X方向、Y方向、Z方向對應的靶球的圓弧半徑Rx, Ry, Rz ; 54、將Rx,Ry,Rz分別與RO進行大小比較,根據其比較結果,確認本次搜索方向,并沿著當前搜索方向,確認圓弧半徑R的搜索區間; 55、采用區間消去法逐漸減小搜索區間; 56、在所述搜索區間內,判斷當前圓弧半徑R是否滿足如下關系:
P — M ——< f,其中,r為靶球半徑,R為實時獲取的圓弧半徑,ε為系統預設閾值;
r 若是,獲取當前狀態下,對應圓弧半徑為R的圓弧圓心坐標,以及機器人的位置姿態信息;記錄機器人的位置姿態信息和所獲取的圓弧圓心坐標,將其形成一個共軛對; 若否,返回步驟S5 ; 57、根據所述共軛對信息,求解變換矩陣,完成手眼標定。
2.根據權利要求1所述的激光測量機器人的手眼標定方法,其特征在于,所述方法還包括以下步驟: 接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑R0、Rx,Ry, Rz0
3.根據權利要求1所述的激光測量機器人的手眼標定方法,其特征在于,所述步驟S4具體包括:將圓弧半徑Rx,Ry, Rz分別與RO進行比較,選擇圓弧半徑變化最大的坐標軸方向作為本次搜索方向。
4.根據權利要求3所述的激光測量機器人的手眼標定方法,其特征在于,所述步驟S4具體包括: 沿著當前搜索方向,通過外推法確認圓弧半徑R的搜索區間,所述搜索區間按照圓弧半徑小-大-小的位置關系確定。
5.根據權利要求1至4任一項所述的激光測量機器人的手眼標定方法,其特征在于,所述步驟S7具體包括: 調整機器人到不同的位置姿態,重復步驟SI至S6,得到N個所述共軛對; 判斷N是否大于第二系統閾值; 若是,求解變換矩陣,完成手眼標定; 若否,繼續調整機器人到不同的位置姿態,并回到步驟SI。
6.一種激光測量機器人的手眼標定系統,其特征在于,所述系統包括: 激光發射單元,所述激光發射單元用于將激光投射到靶球表面形成激光數據; 數據處理單元,所述數據處理單元用于接收所述激光器數據,獲取初始位置下,所述靶球的圓弧半徑RO ; 基于機器人的基坐標系,以上述初始位置為基點,控制所述機器人分別沿X方向、Y方向、Z方向平移微小步長后,分別獲取并記錄X方向、Y方向、Z方向對應的靶球的圓弧半徑Rx, Ry, Rz ; 將Rx,Ry, Rz分別與RO進行大小比較,根據其比較結果,確認本次搜索方向,并沿著當前搜索方向,確認圓弧半徑R的搜索區間; 采用區間消去法逐漸減小搜索區間; 在所述搜索區間內,判斷當前圓弧半徑R是否滿足如下關系: M ,其中,r為靶球半徑,R為實時獲取的圓弧半徑,ε為系統預設閾值;
r 若是,獲取當前狀態下,對應圓弧半徑為R的圓弧圓心坐標,以及機器人的位置姿態信息;記錄機器人的位置姿態信息和所獲取的圓弧圓心坐標,并將其形成一個共軛對; 若否,繼續沿著當前搜索方向,采用區間消去法逐漸減小搜索區間; 根據所述共軛對信息,求解變換矩陣,完成手眼標定。
7.根據權利要求1所述的激光測量機器人的手眼標定系統,其特征在于,所述數據處理單元還用于,接收激光投射到靶球表面的圓弧離散點數據,通過圓擬合計算所述圓弧半徑 R0、Rx, Ry, Rz。
8.根據權利要求1所述的激光測量機器人的手眼標定系統,其特征在于, 所述數據處理單元還用于,將圓弧半徑Rx,Ry, Rz分別與RO進行比較,選擇圓弧半徑變化最大的坐標軸方向作為本次搜索方向。
9.根據權利要求8所述的激光測量機器人的手眼標定系統,其特征在于, 所述數據處理單元還用于,沿著當前搜索方向,通過外推法確認圓弧半徑R的搜索區間,所述搜索區間按照圓弧半徑小-大-小的位置關系確定。
10.根據權利要求6至9任一項所述的激光測量機器人的手眼標定系統,其特征在于, 所述數據處理單元還用于,調整機器人到不同的位置姿態,重復獲得N個所述共軛對; 判斷N是否大于第二系統閾值; 若是,求解變換矩陣,完成手眼標定; 若否,繼續調整機器人到不同的位置姿態,重復獲得下一個所述共軛對。
【文檔編號】G01B11/00GK104132616SQ201410408307
【公開日】2014年11月5日 申請日期:2014年8月19日 優先權日:2014年8月19日
【發明者】王浩田, 卞大超, 劉鐸, 宋孚群, 王巖, 張一丁, 張敏, 張冬運 申請人:蘇州北碩檢測技術有限公司