王龍飛,張麗艷,葉南
南京航空航天大學(xué) 機電學(xué)院,南京 210016
飛機零部件裝配是飛機產(chǎn)品生產(chǎn)中非常重要的一個環(huán)節(jié),隨著對生產(chǎn)效率和質(zhì)量要求的不斷提高,采用工業(yè)機器人進行飛機零部件自動制孔的方法正在不斷推廣。采用機器人進行自動制孔時通常存在機器人絕對定位誤差、零部件與機器人位置關(guān)系找正誤差、零部件外形誤差等因素,各種誤差累積會影響制孔精度。因此,補償綜合誤差以提升機器人在零部件表面的定位精度是機器人自動制孔技術(shù)的一個重要前提。
國外對機器人自動制孔的研究起步較早,許多研究成果已在生產(chǎn)中投入使用[1],如波音、空客等部分飛機機翼、襟翼等已采用機器人自動制孔技術(shù)[2-3];Devlieg和Szallay[4]提出在機器人各軸上集成編碼器進行軸位置反饋,通過優(yōu)化運動模型并最終形成一個高精度的運動平臺,其精度提升效果通過機器人在上下表面分別制孔得到了驗證。國內(nèi)學(xué)者針對機器人自動制孔技術(shù)也進行了大量的研究。朱偉東等[5]通過分析冗余度,提出了一種利用參照孔進行線性或雙線性插值的補償方法,但該方法更適用于外形較為平坦的零部件;董輝躍等[6]從線性插值出發(fā),通過分析誤差來源和曲面構(gòu)造原理,提出了構(gòu)造誤差Coons曲面進行曲面插值的補償方法,該方法針對不同外形工件需要進行不同的誤差曲面函數(shù)構(gòu)造,計算量大且較為復(fù)雜;田威等[7-8]基于空間誤差相似性提出了反距離加權(quán)和關(guān)節(jié)空間誤差建模的離線補償方法,但該方法難以補償自動制孔中的除機器人自身定位誤差外的其他誤差?;谝曈X反饋的機器人制孔誤差補償方法中,高效率和高精度的手-眼關(guān)系標定是非常重要的一步。Zhan 和 Wang[9]等提出在場景坐標系下計算刀具中心點與相機圖像的轉(zhuǎn)換關(guān)系間接完成手眼標定的方法,但該標定方法的完成需要驅(qū)動機器人帶動刀具中心點移動且僅適用于平坦結(jié)構(gòu)制孔;朱偉東等[10-11]提出了一種通過計算標定板圓孔實際尺寸與圖像中像素尺寸線性關(guān)系及圖像中圓孔的整體偏轉(zhuǎn)角等,以同時完成相機內(nèi)參計算和手-眼關(guān)系建立的方法,該標定方法在一定程度上降低了標定計算的復(fù)雜度,但相機實際測量時孔位并非刀軸直接對準的位置,測量后還需根據(jù)相機與刀具之間位置關(guān)系移動機器人位置。文獻[12-14]利用激光跟蹤儀建立各坐標之間位置關(guān)系,并通過激光跟蹤儀實時監(jiān)測機器人末端位姿,修正末端姿態(tài),以提升制孔精度,但這種方法相比于在線視覺反饋方法而言集成度和自動化程度較低。此外,孔位垂直度也是衡量制孔質(zhì)量的一個重要標準,文獻[15]采用壓腳進行鉆孔法向測量,但接觸式測量存在損傷工件表面的可能;文獻[16-17]中采用激光傳感器反饋方法對待鉆孔局部法向進行修正,有效地提升了制孔垂直度,但制孔垂直度需要預(yù)先定位到精確的制孔位置,從而在待鉆位置局部進行法向修正,因此準確地定位待鉆孔位置是自動制孔的前提。
針對機器人自動制孔過程中的定位誤差在線補償問題,本文提出以固聯(lián)于機器人末端的相機成像平面和制孔工作平面之間的單應(yīng)關(guān)系作為手-眼關(guān)系進行標定;在實際制孔過程中,機器人帶動相機及激光測距傳感器依次在確定的工作高度對基準孔進行拍攝,通過標定出的手-眼單應(yīng)關(guān)系對基準孔孔心相對于刀具的三維偏差進行測量,并反饋驅(qū)動機器人進行末端姿態(tài)調(diào)整,直至到達基準孔上方理想位置,根據(jù)一組基準孔對應(yīng)的機器人理論驅(qū)動坐標及實際驅(qū)動坐標(機器人驅(qū)動坐標即機器人要達到某一位置時所需要的坐標,等同于機器人示教器中的讀數(shù))計算出基準孔對應(yīng)的機器人驅(qū)動坐標三維誤差變換矩陣,據(jù)此獲得這組基準孔鄰域范圍內(nèi)各待鉆孔的機器人驅(qū)動坐標補償量,從而實現(xiàn)待鉆孔制孔位置誤差補償。該方法易于實現(xiàn),且適用于曲面結(jié)構(gòu)上的孔位誤差補償。
法蘭坐標系OF和工作平面坐標系OP的z軸方向相同,且均與刀具軸線(即刀具坐標系z軸)重合,刀具坐標系OT原點與工作平面坐標系OP的原點重合,取在刀尖點下一定的安全距離處,以免機器人到達指定位置拍照時發(fā)生刀具與工件碰撞,OP坐標系的xy平面本文稱為制孔工作平面(機器人按照刀具坐標系到達指定位置時,制孔工作面與指定位置的局部平面重合);相機坐標系記為OC;激光測距傳感器通常安裝3~4個傳感器在刀具周圍,共同確定測距傳感器坐標系OS;坐標系OM是用于自動制孔之前建立各坐標系關(guān)系的外部測量系統(tǒng)坐標系。本文所有坐標及向量均為列向量。
圖1 各坐標系關(guān)系
由本文所使用的6自由度串聯(lián)工業(yè)機器人設(shè)計特點可知,其基坐標系OR的x軸和z軸分別與其A6軸和A1軸的軸線平行,因此可通過測量設(shè)備,測量分別轉(zhuǎn)動A6軸和A1軸時法蘭盤上標記點在測量系統(tǒng)坐標系OM下的位置變動,通過擬合標記點的圓形運動軌跡,獲得坐標系OR的x和z軸在測量系統(tǒng)坐標系OM下的位置[18]。
設(shè)在OM坐標系下OR坐標系的x軸、z軸分別為MxR、MzR,則OM坐標系下OR坐標系的y軸可表示為
MyR=MzR×MxR
機器人基坐標系OR向測量坐標系OM變換的旋轉(zhuǎn)矩陣則為
(1)
(2)
通過OR坐標系與OM坐標系之間的變換關(guān)系式(1)和式(2)可將后續(xù)外部測量設(shè)備測量到的坐標轉(zhuǎn)換至OR坐標系下。
法蘭盤在制孔工作中起到固連刀具及測量反饋裝置的作用。本節(jié)在1.1節(jié)的基礎(chǔ)上闡述建立坐標系OS、OC、OT及OP之間相互關(guān)系的方法。圖2所示為系統(tǒng)中各組件位置示意。
圖2 其他坐標系位置關(guān)系
為了建立工作平面坐標系,進而建立以像平面與制孔工作面之間單應(yīng)關(guān)系所表達的機器人制孔系統(tǒng)手-眼關(guān)系,本文采用一塊特制標定板(參照文獻[10]),由4個定位孔、一個9孔陣列以及1個連接軸安裝孔組成。本文進行相機標定時,機器人處于HOME位置,標定板通過一根剛性連接軸安裝在法蘭盤末端,連接軸平行于刀具安裝在夾具上,安裝后標定板工作面與法蘭盤平面平行(機加工可保證工作面與法蘭盤的平行度誤差遠小于制孔位置誤差要求),距離法蘭坐標系xy平面的距離為h(由刀具的長度及預(yù)留的制孔安全距離等決定);法蘭坐標系OF的z軸穿過9孔陣列區(qū)域,其與9孔陣列交點記為工作平面坐標系OP原點;相機傾斜安裝在夾具側(cè)邊,與標定板之間的相對位置由傾斜角度和相機物距等決定,安裝好能清楚拍攝到9孔陣列位于圖像中心區(qū)域;刀具坐標系OT位置由測量系統(tǒng)獲得;激光測距傳感器在本文方法中一方面輔助相機進行位置測量,另一方面可對制孔法向進行測量調(diào)整。激光測距傳感器和相機固連于法蘭盤上,連接軸和標定板均可拆卸。
目前的常見的機器人在線定位誤差補償方法中,相機通常是平行于刀軸安裝,這種方法需要相機正對于孔位上方拍攝,本文的相機安裝方式,可保證刀具坐標系原點位于圖像中心區(qū)域,進行實際制孔工作時,機器人帶動刀具到達指定位置后即可直接采用相機進行孔位位置測量,這樣測量后無需再次根據(jù)相機與刀具之間關(guān)系移動機器人,可直接進行制孔工作,實時性更高。
1.2.1 激光測距傳感器坐標系建立
激光測距傳感器坐標系OS與法蘭坐標系OF的關(guān)系建立有平面標定法和球面標定法[19],兩種標定方法又可分別分為:機器人靜止、面移動和機器人移動、面靜止兩種標定方式。采用機器人移動、面靜止的方式進行傳感器手眼標定時,由于機器人運動誤差的存在,需要精確測量機器人法蘭坐標系的實時位姿,過程較為繁瑣;采用機器人靜止,面移動的方式時,實時測量球面的位置較為困難,因此本文采用平面標定法,以機器人不動,調(diào)整并實時測量平面位置的方式對激光測距傳感器進行手眼關(guān)系標定。以其中一個傳感器為例,具體為:
Π:Ax+By+Cz+D=0
(3)
同時測量傳感器的測量距離,記為ds。
2) 改變平面Π的位姿,重復(fù)1),直至測量次數(shù)n≥6。
圖3 傳感器坐標系建立
獲得OF坐標系下n個平面Πi(i=1:n)方程和對應(yīng)測量距離dsi(i=1:n)。則傳感器在OF坐標系下的坐標原點(xs,ys,zs)和方向(nx,ny,nz)滿足
(4)
1.2.2 工作平面坐標系建立
首先將機器人置于HOME位置,然后通過外部測量系統(tǒng)獲得OF坐標系原點距標定板工作面的距離h(即OP與OF坐標系原點之間的距離),以及標定板工作面上4個定位孔孔心在OM坐標系下的位置坐標,記為MpL,i(i=1:4)。則4個定位孔在機器人基坐標系下的坐標RpL,i(i=1:4)為
1.2.3 手-眼關(guān)系建立
采用視覺反饋方法時,高效且精確的手-眼標定是關(guān)鍵一步。本文提出一種基于單目視覺圖像與制孔工作面之間單應(yīng)變換的手-眼關(guān)系表征和標定方法。
記機器人處于HOME位置時相機拍攝到的9孔陣列第i個孔的孔心在圖像中的坐標為(ui,vi)(i=1:9)。標定板上9孔陣列與4個定位孔相對位置已知,記OP坐標系下9孔陣列坐標為PpN,i(i=1:9),下標N表示9孔陣列,則9孔陣列在OF坐標系下的位置FpN,i(i=1:9)為
需要指出的是,通過計算OF坐標系下9孔陣列的z坐標值的平均值可獲得h的計算值,通過與h的測量值進行比較,可計算坐標轉(zhuǎn)換偏差;此外計算9孔陣列的z坐標值的波動范圍可獲得標定板工作面與法蘭盤的平行度誤差情況。由于本文手眼標定方法均在機器人HOME位置下進行,標定板與剛性連接軸僅在相機標定時安裝,且標定耗時短,因此連接軸撓曲變形對法蘭盤和標定板之間平行度的影響可忽略,相關(guān)實驗結(jié)果將包含在本文第3.1節(jié)。
完成9孔陣列在OF坐標系下的坐標轉(zhuǎn)換之后,利用9孔中心坐標的x、y坐標值與相機標定圖像中對應(yīng)的9孔陣列的坐標(ui,vi)(i=1:9)進行標定板平面與相機成像平面之間映射關(guān)系f的計算。
理論上f應(yīng)包含笛卡爾坐標到圖像坐標之間的線性映射關(guān)系和由于成像系統(tǒng)畸變引起的非線性映射關(guān)系,但由于標定時9孔陣列位于標定圖像中心區(qū)域,且實際制孔中的基準孔尺寸較小,映射關(guān)系f中的非線性畸變可以忽略(詳細實驗驗證方法及實驗數(shù)據(jù)見第3.1節(jié))。因此,本文將f簡化為工作平面與相機圖像之間的線性單應(yīng)關(guān)系H,H為3×3矩陣,且滿足
(5)
式中:FpN,i(x)、FpN,i(y)分別表示OF坐標系下9孔陣列第i(i=1:9)個孔的x、y坐標值。將9孔中心坐標在OF坐標系下的x、y坐標值與相機標定圖像中對應(yīng)的9孔陣列的坐標(ui,vi)(i=1:9)代入式(5)即可獲得單應(yīng)關(guān)系H。圖4為上述映射關(guān)系建立的基本流程。
在機器人實際制孔定位工作時,只要保證每次相機拍攝高度與標定時的拍攝高度一致、基準孔平面相對于法蘭盤的位置與標定時工作面相對于法蘭盤的位置相同,則根據(jù)標定板平面建立的映射關(guān)系f(即單應(yīng)矩陣H)就可以用于表達基準孔平面與相機成像平面之間的映射關(guān)系。由第1節(jié)可知,刀具坐標系OT與工作平面坐標系OP的原點及z軸均重合,因此單應(yīng)矩陣H即可表示相機與刀具坐標系xy平面之間的映射關(guān)系。本文以單應(yīng)矩陣作為手眼關(guān)系,可省略相機內(nèi)參求解,此外單應(yīng)方法不需要像平面與待拍攝平面平行,相機以傾斜角度安裝更具靈活性。
圖4 手-眼關(guān)系建立流程
機器人進行制孔工作之前,需要進行零部件找正,即通過外部測量方法找到零部件相對于機器人基坐標系的位置,從而將工件坐標系下的所有理論孔位(包括基準孔和待鉆孔)的坐標值和孔方向向量轉(zhuǎn)換到機器人基坐標系OR下。本節(jié)闡述工件找正后孔位誤差的在線補償方法。
設(shè)零部件上的1個基準孔在OR坐標下的理論坐標為Rpt,孔方向垂直于零部件表面向內(nèi),記為Rvt,要使機器人帶著刀具沿孔方向運動至基準孔正上方需要計算法蘭盤末端歐拉角,歐拉角值的確定由旋轉(zhuǎn)矩陣變換得到。對零部件上每個基準孔所對應(yīng)的歐拉角本文通過預(yù)先設(shè)定孔心坐標系OH來求解。
圖5所示為孔心坐標系OH示意圖,紅色圓點表示孔心,紅色射線表示孔方向的單位向量,藍色射線表示與孔方向正交的兩個單位向量。
圖5 孔心坐標系
設(shè)孔方向為孔心坐標系OH的z軸,記z軸為
z,有
z=Rvt
(6)
設(shè)對應(yīng)的OH坐標系的x軸為x,本文方法中機器人到達指定位置時法蘭坐標系OF無特殊方向要求,故本文取
(7)
式中:z(1)和z(2)分別表示z的第1和第2個坐標值。則OH坐標系的y軸y為
y=z×x
(8)
孔心坐標系OH在OR坐標系下的旋轉(zhuǎn)矩陣R可表示為
(9)
此時坐標系OF、OT與OH方向相同,因此旋轉(zhuǎn)矩陣R也是OF和OT向OR變換的矩陣。通過旋轉(zhuǎn)矩陣與歐拉角的轉(zhuǎn)換[20]可求出機器人運動至指定孔位時所對應(yīng)的法蘭盤末端的歐拉角。
由第1節(jié)可知,OP坐標系與OF坐標系z軸方向相同,因此,當(dāng)不存在零部件找正誤差及機器人定位誤差等因素時,通過基準孔對應(yīng)的機器人驅(qū)動坐標(即基準孔理論坐標)按孔心坐標系的定義規(guī)則式(6)~式(9)求解出的歐拉角,使機器人移動至某個基準孔上方h距離后,OP與OH兩坐標系的原點及z軸重合,即孔心位于制孔工作平面上,并且機器人自身運動可保證OF坐標系與OH坐標系方向相同,如圖6中理論姿態(tài)(紅色坐標系)所示。但由于工件找正誤差、機器人運動誤差等因素存在,工件的實際位置與機器人按基準孔理論驅(qū)動坐標到達的實際位置如圖6中實際姿態(tài)(藍色坐標系)所示。
圖6 機器人制孔狀態(tài)示意圖
定義基準孔的機器人驅(qū)動誤差為
e=Rdp-Rdt
(10)
式中:誤差值e=|e|;Rdp、Rdt分別表示機器人理論驅(qū)動坐標和實際驅(qū)動坐標。易知Rdt滿足
Rdt=Rpt
(11)
通過標定后的相機及激光測距傳感器測量反饋,可驅(qū)動機器人進行姿態(tài)變動,直至到達精度控制范圍內(nèi)的理想姿態(tài)(本文以傳感器測量獲得的局部法向與刀軸偏差角θ<0.35°、圓孔局部平面距OF坐標系的距離h′與坐標系OF和OP之間距離h偏差eh=h′-h<0.5 mm且相機測量到的圓孔中心點在OF坐標系xy平面上的偏差e2D<0.2 mm時認為到達理論姿態(tài)。為方便說明,本文稱e2D為相機檢測偏差)。具體姿態(tài)調(diào)整步驟為(前三步順序可調(diào)換):
1) 利用激光測距傳感器測量刀具軸線與基準孔平面法線的夾角,根據(jù)夾角的測量反饋進行機器人末端姿態(tài)調(diào)整,直至基準孔局部平面法向與刀具軸線之間的偏角達到精度控制范圍內(nèi)。
2) 利用激光測距傳感器測量基準孔局部平面至法蘭盤坐標系xy平面的距離h′,根據(jù)距離的測量反饋進行機器人末端相對于基準孔局部平面的高度調(diào)整,直至h′與h的偏差值達到精度控制范圍內(nèi)。
3) 根據(jù)相機檢測偏差反饋進行機器人末端位置調(diào)整,直至刀具軸線與基準孔平面交點至基準孔孔心之間的偏差達到精度控制范圍內(nèi)。
4) 重復(fù)步驟1)~3)至3個偏差值同時達到精度可控范圍內(nèi),此時,基準孔孔心在OF坐標系下的坐標為
(12)
式中:x′、y′由相機測量到圓孔中心在OF坐標系下的坐標由式(5)計算獲得,滿足
(13)
記此時所對應(yīng)的機器人驅(qū)動坐標為p,末端方向的單位向量為v,則按照2.1節(jié)設(shè)定的孔心坐標系定義規(guī)則,即式(6)~式(9),可實現(xiàn)v向旋轉(zhuǎn)矩陣的計算,記此時OP坐標系向OR坐標系變換的旋轉(zhuǎn)矩陣為R′,則基準孔孔心實際位置所對應(yīng)的機器人驅(qū)動坐標為
(14)
將式(11)和式(14)代入式(10)可計算得基準孔對應(yīng)的機器人驅(qū)動誤差。
上述方法中,根據(jù)相機和激光傳感器的實時測量反饋,控制相機到達基準孔精度控制范圍內(nèi)的理想姿態(tài),再確定基準孔對應(yīng)的實際機器人驅(qū)動坐標,可以有效避免采用相機在機器人理論驅(qū)動坐標下(此時機器人末端姿態(tài)為圖6中實際姿態(tài))直接測量基準孔相對于刀具坐標系原點之間的偏差時,由于拍攝高度偏差及孔位局部法向誤差較大引起的較大相機測量偏差,對于保證基準孔對應(yīng)的機器人三維驅(qū)動偏差的測量精度十分重要。
本節(jié)提出一種根據(jù)3個或以上基準孔的驅(qū)動坐標偏差向量,對該組基準孔鄰近范圍內(nèi)的待鉆孔進行定位誤差補償?shù)姆椒ā?/p>
圖7所示為基于4個基準孔補償待鉆孔的示意圖。下面以其中1組孔為例進行補償說明,每組補償方法相同。
圖7 基準孔與待鉆孔
記4個基準孔理論驅(qū)動坐標分別為Rdt,k,k=1:4。由2.2節(jié)的方法計算得到基準孔對應(yīng)的實際驅(qū)動坐標為Rdp,k,k=1:4,則可通過奇異值分解求解理論驅(qū)動坐標與實際驅(qū)動坐標之間的轉(zhuǎn)換關(guān)系。具體步驟如下:
1) 求解坐標平均值
2) 構(gòu)造分解矩陣A
3) 對矩陣A進行奇異值分解
記該組中1個待鉆孔的理論坐標為Rrt,本文根據(jù)基準孔理論與實際驅(qū)動坐標之間的關(guān)系對待鉆孔實際驅(qū)動坐標進行重新計算,記計算后的待鉆孔驅(qū)動坐標為Rra,則
驅(qū)動機器人達到補償后的位置Rra,而不是待鉆孔的理論驅(qū)動位置Rrt,從而完成對待鉆孔位置誤差的補償,對于待鉆孔局部的法向誤差可以在刀具實際達到待鉆孔表面后再次進行法向調(diào)節(jié),以確保制孔垂直度精度。
對上述視覺輔助下的機器人制孔定位誤差補償方法進行了驗證實驗。實驗使用的是德國KUKA公司生產(chǎn)的KR30-3型6自由度工業(yè)機器人;相機為德國AVT公司生產(chǎn)的GC2450M型號相機與施耐德公司生產(chǎn)的KREUZNACH APO- XENOPLAN 1.4/23-0903型號鏡頭,圖像分辨率為2 448×2 050;激光測距傳感器為德國Baumer公司生產(chǎn)的OADM 12I6460/S35A型號傳感器,測量范圍為16~120 mm,線性誤差為±0.015~±0.35 mm,為抑制隨機誤差,實驗中每次法向測量均取15次測量結(jié)果的平均值;外部測量設(shè)備使用的是德國GOM公司生產(chǎn)的三維光學(xué)測量儀(簡稱ATOS);實驗對象為中航工業(yè)哈爾濱飛機工業(yè)集團有限責(zé)任公司提供的飛機結(jié)構(gòu)實驗件;所有通信控制程序采用C++語言在Qt平臺編寫。圖8為實驗現(xiàn)場圖。在安裝相機夾具與標定板之前,已由ATOS對機器人基坐標系OR及法蘭中心點等進行了測量,具體方法見文獻[17]。刀軸以精加工圓桿替代,刀軸實測直徑dT為4.69 mm,安裝情況見圖2。安裝后測得刀尖部分距離OP坐標系原點77.84 mm,刀軸在OF坐標系下的方向經(jīng)測量為(0.000 23,-0.001 1,1.000 0),可見通過機加工能夠保證刀軸與OF坐標系z軸重合。
圖8 實驗現(xiàn)場
在機器人HOMO位置進行相機標定時(見圖2),獲得標定圖像如圖9所示。在該時刻由測量系統(tǒng)測得h的值為186.60 mm。
圖9中按編號對應(yīng)的9孔陣列在OF坐標系下的坐標可由第2節(jié)方法首先測量標定板定位孔,然后根據(jù)坐標系關(guān)系進行坐標轉(zhuǎn)換得到,轉(zhuǎn)換結(jié)果如表1所示。由表1可得9孔陣列z坐標值分布在186.50~186.73 mm,平均值(h的計算值)為186.61 mm,即標定板工作面與法蘭盤平面之間的平行度偏差僅為0.11 mm,h計算值與測量值偏差為0.01 mm,符合坐標轉(zhuǎn)換精度要求。本文最終設(shè)定OF坐標系原點至標定板工作面的距離h為186.61 mm。
圖9 相機標定圖像
表1 9孔陣列在法蘭坐標系下的坐標
按式(5)進行單應(yīng)矩陣H的計算,為驗證此時單應(yīng)關(guān)系H的準確性,本文通過9孔陣列中任意8個孔的中心點坐標與其對應(yīng)的笛卡爾坐標進行單應(yīng)關(guān)系H計算,即
然后以剩余的1組圓孔中心點作為驗證,通過H計算出(u9,v9)對應(yīng)的笛卡爾坐標與實際笛卡爾坐標FpN,9進行比較,表2所示單應(yīng)關(guān)系H的驗證結(jié)果。
由表2可見,采用本文所提出的單應(yīng)方法對9孔陣列區(qū)域內(nèi)的圓孔中心點進行坐標測量是可行的。因此,最終以9個孔心坐標進行單應(yīng)H計算,得
表2 單應(yīng)矩陣精度驗證
3.2.1 實驗件說明
飛機結(jié)構(gòu)實驗件實物如圖8所示。為了方便模擬制孔誤差補償效果的實驗驗證,實驗件上所有待鉆孔已經(jīng)根據(jù)理論位置預(yù)先完成了加工,并在實驗前采用ATOS測量系統(tǒng)對實物進行了測量,得到的數(shù)模如圖10所示。待鉆孔孔徑的實際測量值如表3所示。為方便說明,對于圖10中已經(jīng)加工出的綠色圓孔,以下仍稱為待鉆孔。
選取實驗件中6個基準孔和8個待鉆孔進行孔位誤差補償測試,圖10中紅色圓孔(標號101~106)表示基準孔位置,綠色圓孔(標號1001~1008)表示待鉆孔位置,根據(jù)位置關(guān)系,將補償對象分為兩組,記為組1和組2:
圖10 實驗對象數(shù)模
表3 待鉆孔孔徑
組1基準孔為101,102,105,106;待鉆孔為1001,1006,1007,1008。
組2基準孔為102,103,104,105;待鉆孔為1002,1003,1004,1005。
實驗中以圖10所示的實測數(shù)模作為實驗件的理論數(shù)模,以消除待鉆孔加工誤差對精度評估結(jié)果的影響。該實驗中制孔定位的綜合誤差來源主要含工件找正誤差和機器人自身的運動誤差。
3.2.2 補償前待鉆孔定位誤差評估
首先對誤差補償前待鉆孔的系統(tǒng)綜合定位誤差進行了評估。驅(qū)動機器人按待鉆孔孔心在OR坐標系下的理論坐標運動至孔位上方處,進行誤差測量,以待鉆孔1001為例進行說明,如圖11所示。
本文設(shè)計的安裝結(jié)構(gòu)保證了刀具軸線方向穿過激光傳感器的激光點所圍成的四邊形的中心區(qū)域,因此在圖11所示的機器人姿態(tài)下,通過激光測距傳感器測量得到的4個激光點在OF坐標系下的z坐標值的平均值即可表示拍攝高度h′,定義拍攝高度方向上的偏差eh=h′-h,在圖11所示姿態(tài)下,測得測量高度偏差為eh=1.73 mm,由4個激光點坐標擬合平面獲得平面法向在OF坐標系下的方向,通過與刀具軸線方向,進行夾角計算可獲得偏差角度θ=3.93°,通過對圖11進行圖像處理并由式(13)可計算的孔心的相機測量偏差為e2D=2.00 mm,則此時孔心與OP坐標系原點之間的偏差可表示為
其他待鉆孔補償前測量結(jié)果如表4所示。
圖11 待鉆孔1001補償前定位誤差評估
表4 待鉆孔補償前定位誤差
由表4可見,補償前待鉆孔3D定位誤差范圍為2.28~2.85 mm,平均為2.55 mm,法向誤差范圍為2.09°~3.93°,平均為3.30°,2D誤差范圍為0.61~2.00 mm,平均為1.32 mm。
3.2.3 基準孔驅(qū)動誤差測量
完成待鉆孔誤差檢測之后,按照2.2節(jié)的方法分別驅(qū)動機器人對組1和組2的基準孔所對應(yīng)的機器人三維驅(qū)動誤差進行測量,以孔101為例進行說明。
圖12為孔101坐標測量計算過程,機器人按理論坐標首先到達指定位置(圖6中所示的機器人實際到達姿態(tài)),獲得如圖12(a)所示相機圖像,可見激光點中心與孔心之間存在明顯偏差,對圓孔中心進行提取并以計算獲得的手-眼關(guān)系進行計算偏差計算,所有測量結(jié)果已顯示在圖12(a)中;然后根據(jù)激光測距傳感器及圖像反饋進行閉環(huán)伺服控制,調(diào)整機器人末端姿態(tài)直至滿足要求(圖6中所示的機器人理想到達姿態(tài)),測量結(jié)果如圖12(c)所示,可見通過本文所提出的手眼關(guān)系可以有效地對機器人制孔位置誤差進行反饋,圖12(d)為最終圓孔中心提取結(jié)果,其中(u,v)表示圓孔中心的像素坐標值?;鶞士渍`差情況如表5所示。
圖12 基準孔101實際驅(qū)動坐標測量
表5 基準孔對應(yīng)的機器人驅(qū)動坐標情況
3.2.4 待鉆孔定位誤差補償
將表5所對應(yīng)的坐標數(shù)據(jù)代入2.3節(jié)進行機器人理論驅(qū)動坐標與實際驅(qū)動坐標的旋轉(zhuǎn)平移變換計算,以獲得的式(15)和式(16)對待鉆孔1001~1008的方向和位置Rra進行計算并作為待鉆孔新的方向和位置,驅(qū)動機器人按照新的位置行駛至指定位置進行測量。
圖13所示為待鉆孔1001補償后測量結(jié)果,可見補償后拍攝高度偏差eh= 0.11 mm,相機測量偏差e2D=0.09 mm;調(diào)整法向后θ=0.31°,eh=0.07 mm,e2D=0.06 mm。其他待鉆孔測量結(jié)果如表6所示,表中加粗字體表示補償后的誤差情況。
可見補償后相機測得的孔位位置誤差范圍為0.03~0.15 mm,平均值為0.08 mm,相比于補償前相機測量到的2D誤差范圍為0.61~2.00 mm,平均為1.32 mm,補償后的二維誤差大大減小。因此,通過本文手-眼標定方法對基準孔對應(yīng)機器人驅(qū)動坐標誤差計算后獲得的三維誤差變換矩陣可高效地完成基準孔鄰域范圍內(nèi)的待鉆孔定位誤差補償。
圖13 待鉆孔1001補償后定位誤差
3.2.5 模擬制孔
為進一步驗證補償方法的有效性,按照機器人在待鉆孔處的最終姿態(tài),帶動刀軸進行模擬制孔工作。如圖14所示,為實驗中模擬制孔圖像。
根據(jù)刀尖點與OP坐標系原點之間的距離和本文設(shè)定的h值,實驗中設(shè)定法蘭盤沿孔方向的進給量為87 mm,此時刀軸進入每個待鉆孔孔位的深度為87 mm-77.84 mm=9.16 mm。
圖14 模擬制孔
圖15 模擬制孔效果圖
圖15所示為刀軸進入待鉆孔之后,從孔位另一側(cè)拍攝到的效果圖。由圖可見,對所有待鉆孔,刀軸進給87 mm均可準確進入,其中僅待鉆孔1006的邊緣與刀軸貼合,其余孔均與刀軸之間存有一定縫隙,說明:
1) 制孔位置誤差小于各孔直徑與刀軸直徑下限的差值的1/2。
2) 制孔位置誤差小于模擬制孔前最終姿態(tài)的法向偏差在進給87 mm后的位置偏差加上最終姿態(tài)時的位置偏差。
以待鉆孔1006為例,對于上述說明1),位置誤差具體計算為
對于說明2),位置誤差具體計算為
因此在待鉆孔1006處制孔,位置誤差不超過0.21 mm。
對于制孔垂直度精度的驗證,由于法蘭盤沿孔方向進給87 mm仍可使刀軸被準確放入待鉆孔中,因此模擬制孔的偏差角度應(yīng)小于最大位置誤差與軸向進給量的比值。以待鉆孔1006為例,具體計算為
按上述計算方法,對所有待鉆孔進行制孔后姿態(tài)誤差計算,匯總結(jié)果如表7所示,表中加粗字體表示計算后的模擬制孔的姿態(tài)誤差。
由表7可見,模擬制孔的制孔最大及平均位置誤差分別減小至0.32 mm和0.28 mm以內(nèi),最大和平均法向誤差分別減小至0.21°和0.17°以內(nèi)。由于上述誤差值為各孔位的最大誤差估計值,且由圖15可見,本文模擬制孔后除孔1006外,其余各孔均與刀軸之間存有一定縫隙,因此本文模擬制孔的誤差可確定為0.30 mm、0.21°以內(nèi),能夠滿足航空制孔的制孔精度要求。
表7 模擬制孔姿態(tài)誤差
1) 提出了一種機器人制孔孔位誤差在線視覺補償方法,利用相機圖像平面與制孔工作平面之間的單應(yīng)矩陣表征手-眼關(guān)系,并提出了簡便易行的手-眼標定方法。
2) 利用相機以一定傾斜角度安裝,可實現(xiàn)機器人直接帶動刀軸到達指定基準孔位置狀態(tài)下進行誤差快速實時測量,自動化和集成化程度更高。
3) 由于誤差的測量和變換均建立在三維空間,因此該方法適用于對曲面結(jié)構(gòu)上的制孔定位。
4) 在對飛機結(jié)構(gòu)實驗件的8個待鉆孔的模擬鉆孔實驗中,位置和法向誤差范圍補償前為2.28~2.85 mm和2.09°~3.93°,平均為2.55 mm和3.30°,補償后減小到最大誤差分別不超過0.30 mm 和0.21°,驗證了采用本文方法提高機器人制孔定位精度的有效性。