?
工業(yè)機(jī)器人視覺測量系統(tǒng)的在線校準(zhǔn)技術(shù)***
王一,劉常杰,楊學(xué)友,葉聲華
(天津大學(xué)精密測試技術(shù)及儀器國家重點實驗室,天津300072)
摘編自《機(jī)器人》2011年3期:299~302頁,圖、表、參考文獻(xiàn)已省略。
工業(yè)機(jī)器人視覺測量系統(tǒng)在汽車車身總成、分總成加工過程中對關(guān)鍵尺寸進(jìn)行在線實時監(jiān)測,發(fā)現(xiàn)質(zhì)量問題及時采取措施,可有效控制白車身焊接總成產(chǎn)品質(zhì)量的穩(wěn)定性[1-2]。由于結(jié)合了非接觸測量方式和機(jī)器人運動靈活的優(yōu)點,可以解決傳統(tǒng)三坐標(biāo)測量機(jī)對盲孔、深孔等的測量難題,也可以克服接觸式測量頭對復(fù)雜工件的干涉,其在國內(nèi)轎車制造業(yè)逐漸得到應(yīng)用推廣。工業(yè)現(xiàn)場環(huán)境復(fù)雜,多種因素導(dǎo)致系統(tǒng)在運行過程中測量精度降低,其中最不容忽視的就是溫度漂移——主要是由機(jī)器人運動導(dǎo)致桿件和關(guān)節(jié)熱膨脹變形引起的,它使模型參數(shù)改變從而導(dǎo)致定位誤差增大,既與機(jī)器人所處姿態(tài)有關(guān)又與溫度變化有關(guān)。溫度變化主要包括兩個方面:機(jī)器人自身的往復(fù)運動會主動發(fā)熱,如電機(jī)散熱、齒輪和驅(qū)動帶等機(jī)械構(gòu)件相對運動摩擦生熱;環(huán)境溫度的變化,如四季交替帶來的氣候溫差。溫度漂移誤差是動態(tài)誤差,與機(jī)器人自身的熱效應(yīng)有關(guān),在未到達(dá)熱平衡狀態(tài)之前是不斷變化的,因此必須在線補償[3]。
實時溫度誤差補償技術(shù)已經(jīng)成功應(yīng)用到了坐標(biāo)測量機(jī)和一些加工制造系統(tǒng)中,但工業(yè)機(jī)器人的熱效應(yīng)研究尚未廣泛展開。工業(yè)機(jī)器人視覺測量系統(tǒng)中,機(jī)器人的定位精度直接影響系統(tǒng)的測量精度,因此有必要對溫度誤差進(jìn)行補償。目前機(jī)器人溫度誤差補償主要采用基于溫度值觀測模型的補償方法,在機(jī)器臂及其所處環(huán)境設(shè)置多個溫度傳感器,采用某種建模技術(shù),如人工神經(jīng)網(wǎng)絡(luò)或者有限元分析等,建立補償模型[4-5]。這種方法可建立溫度與定位誤差之間的直接函數(shù)關(guān)系,但傳感器位置對于補償精度、效率和穩(wěn)健性具有至關(guān)重要的作用,且建模過程比較復(fù)雜。
本文對溫度誤差進(jìn)行了相關(guān)研究,建立了針對顯著變化參數(shù)的溫度誤差模型,并使用對溫度變化不敏感的材料作為測量基準(zhǔn)實現(xiàn)誤差補償。
圖l為測量系統(tǒng)工作原理示意圖。圖中共存在4個坐標(biāo)系,分別為機(jī)器人基礎(chǔ)坐標(biāo)系ORXRYRZR、機(jī)器人末端關(guān)節(jié)坐標(biāo)系OHXHYHZH、工件坐標(biāo)系OWXWYWZW和視覺傳感器坐標(biāo)系OCXCYCZC。測量結(jié)果為被測點P在工件坐標(biāo)系OWXWYWZW下的坐標(biāo)Pw,即
式中,Pc為被測點P在視覺傳感器測量坐標(biāo)系下的坐標(biāo)值;AEH為機(jī)器人手眼關(guān)系,即機(jī)器人末端關(guān)節(jié)坐標(biāo)系到視覺傳感器測量坐標(biāo)系的齊次坐標(biāo)變換關(guān)系,一旦傳感器安裝劍末端關(guān)節(jié)上就保持不變;ARW是為機(jī)器人基礎(chǔ)坐標(biāo)系到白車身坐標(biāo)系的齊次坐標(biāo)變換關(guān)系,工件安裝完成后同樣為定值;AHR為機(jī)器人末端關(guān)節(jié)坐標(biāo)系到機(jī)器人基礎(chǔ)坐標(biāo)系的齊次坐標(biāo)變換關(guān)系,即
式中的i1-iA表示i-1坐標(biāo)系到i坐標(biāo)系的齊次坐標(biāo)變換矩陣,在測量過程中會受到溫度變化的影響。
采用D-H模型[6]對機(jī)器人進(jìn)行分析,假設(shè)每個關(guān)節(jié)都存在連桿參數(shù)偏差,那么傳感器坐標(biāo)系相對于機(jī)器人基礎(chǔ)坐標(biāo)系的變換為
結(jié)合變換微分可以推導(dǎo)出末端關(guān)節(jié)相對于機(jī)器人基礎(chǔ)坐標(biāo)系的位置偏差為
其中qi表示第i個關(guān)節(jié)的連桿參數(shù)θi、αi、ai、d[i7],下角標(biāo)[1:3,4]表示取對應(yīng)矩陣第4列的l至3行。可以看出,對于6個自由度的機(jī)械臂,待補償參數(shù)總共有30個,因此要完全求解這些參數(shù)至少需要10個測量姿態(tài),如果考慮噪盧的存在而采用最小二乘法求解則需要建立更多方程。
4.1 軸動溫度誤差實驗
令A(yù)BB2400型機(jī)器人做足夠長時間的、不同關(guān)節(jié)組合的全速轉(zhuǎn)動,測量末端TCP(tool center point,工具中心點)在機(jī)器人運動前后的定位偏差。機(jī)械臂上的熱量分布不均勻,以電機(jī)散發(fā)的熱量最多,其次是轉(zhuǎn)動關(guān)節(jié)附近,此外鄰近電機(jī)和關(guān)節(jié)的連桿也有較為明顯的熱量變化。機(jī)器人的結(jié)構(gòu)如圖2所示。
關(guān)節(jié)1單獨轉(zhuǎn)動時,對機(jī)器人6個不同姿態(tài)的TCP進(jìn)行了測量,關(guān)節(jié)2、3單獨轉(zhuǎn)動時,各測量了5個不同姿態(tài)下的TCP坐標(biāo)值,關(guān)節(jié)4、5、6單獨轉(zhuǎn)動時,分別測量了9個、6個和10個不同姿態(tài)下的TCP坐標(biāo)值。另外,為了考察多軸同時轉(zhuǎn)動的溫度誤差規(guī)律,又令關(guān)節(jié)2、3和關(guān)節(jié)4、5、6同時轉(zhuǎn)動,分別對6個和7個不同姿態(tài)下的TCP進(jìn)行了測量。
實驗數(shù)據(jù)表明,相當(dāng)一部分的坐標(biāo)偏著處于0.1 mm到0.2 mm之間,少數(shù)偏差甚至達(dá)到了0.3 mm以上。其中,關(guān)節(jié)單獨轉(zhuǎn)動時,以關(guān)節(jié)2、3、4產(chǎn)生的偏差最明顯,然而,當(dāng)關(guān)節(jié)2、3同時轉(zhuǎn)動時,TCP在y方向的定位偏差反而減小,這說明關(guān)節(jié)2、3同時轉(zhuǎn)動對y軸方向的溫度誤著有抵消作用。
結(jié)合實驗數(shù)據(jù)進(jìn)一步分析,當(dāng)關(guān)節(jié)l轉(zhuǎn)動時,7個姿態(tài)中只有x方向的坐標(biāo)出現(xiàn)了較大偏差,若考慮測量噪聲的存在,其它方向的坐標(biāo)值可以認(rèn)為沒有變化,對照機(jī)器人運動學(xué)模型,可以確定此時桿件長度參數(shù)a1產(chǎn)生了較為明顯的變化。采用同樣的方法并結(jié)合發(fā)熱區(qū)域?qū)ζ溆喔麝P(guān)節(jié)組合轉(zhuǎn)動情況進(jìn)行分析,總結(jié)出有可能產(chǎn)生較大變化量的模型參數(shù)如表l所示。軸動溫度誤差實驗只能獲得溫度誤差數(shù)量級和模型參數(shù)變化定性規(guī)律,不能定量地得到隨溫度變化的模型參數(shù)的偏差值。
4.2 待補償模型參數(shù)的確定
受生產(chǎn)線節(jié)拍制約,測量系統(tǒng)用于誤差補償?shù)淖藨B(tài)不能多于12個,運用多元線性回歸方法確定變化最為顯著的連桿參數(shù),以達(dá)到減少求解方程規(guī)模的目的。為減少計算量,將軸動溫度誤差實驗中初步確定的、有可能解釋末端TCP產(chǎn)生位置偏差的連桿參數(shù)作為預(yù)測變量,只遍歷這些變量的子集。
最佳選擇需要通過檢查某個準(zhǔn)則來確定,可選擇馬羅(Mallow)的CP統(tǒng)計量[8]:
式中EP為包括常數(shù)項在內(nèi)的含p個參數(shù)的子模型的殘差的平方和,σ為全模型的殘差的方差,n為實測資料點的個數(shù)。
對每個預(yù)測子集作(p,CP)標(biāo)繪圖,此圖將顯示出能很好預(yù)測響應(yīng)觀測值的模型。典型的情況是好模型的(p,CP)坐標(biāo)在45°線附近。利用馬羅CP統(tǒng)計量確定最佳模型參數(shù)子集如圖3所示。
CP標(biāo)繪圖中共遍歷了25種參數(shù)的組合,正方形表示的是所有連桿長度參數(shù)形成的組合,該點與原點構(gòu)成的直線的斜率為0.7775336;最接近45°線的參數(shù)組合為(d1,α2,a2,β2,d4,a5,d6),即圖中圓圈表示的“最佳”預(yù)測變量子集,該點與原點構(gòu)成的直線的斜率為0.9883609,因此只針對(d1,α2,a2,β2,d4,a5,d6)這幾個連桿參數(shù)進(jìn)行溫度誤差修正。
使用碳化硅材料制作成的球體作為基準(zhǔn),用視覺傳感器測量球上的標(biāo)準(zhǔn)孔,用前后測量得到的坐標(biāo)偏差作為補償量修正連桿參數(shù)。設(shè)[xbybzb]T為基準(zhǔn)球上某個標(biāo)準(zhǔn)孔在傳感器坐標(biāo)系下的測量值,機(jī)器人不斷運動的過程中,標(biāo)準(zhǔn)孔相對機(jī)器人基礎(chǔ)坐標(biāo)系或者車身坐標(biāo)系的位置不發(fā)生改變,但機(jī)械臂的溫度變化會導(dǎo)致定位誤差增大,AHR變化為A′HR,傳感器對同一標(biāo)準(zhǔn)孔的測量結(jié)果變?yōu)閇x′by′bz′b]T,如果近似認(rèn)為該變化完全是由機(jī)器人的熱變形引起,就可以將標(biāo)準(zhǔn)孔坐標(biāo)偏差作為補償值對連桿參數(shù)進(jìn)行修正。圖4為基于基準(zhǔn)球的在線溫度誤差補償原理示意圖。
若檢測系統(tǒng)長時間沒有運行,啟動時首先對基準(zhǔn)孔測量一遍,進(jìn)行參數(shù)初始化,然后進(jìn)入車身測量階段,為了提高效率,并不是每次車身測量完成后都會進(jìn)行溫度誤差補償,而是先運行校準(zhǔn)判斷程序,只對球體上的3個標(biāo)準(zhǔn)孔進(jìn)行測量,根據(jù)接受準(zhǔn)則判斷是否需要進(jìn)行溫度誤差補償程序,最后經(jīng)過坐標(biāo)統(tǒng)一給出被測特征在車身坐標(biāo)系下的測量結(jié)果。
在現(xiàn)場對同一車身反復(fù)進(jìn)行測量,整個過程中車身保持不動,某檢測點的誤差曲線如圖5所示。圖中共劃分了A、B、C三個時間段,A段為機(jī)器人從室溫開始測量并且沒有進(jìn)行溫度誤差補償,B段記錄的測量結(jié)果進(jìn)行了補償運算,進(jìn)入C段后再次取消了補償。可以看出,x和y方向的坐標(biāo)測量值都產(chǎn)生了規(guī)律性的變化,且x方向的變化最為明顯,最后一次測量值較初始測量值偏離了0.146 mm,y方向的測量值也有0.057 mm的小幅度偏差,而z方向的測量值并沒有體現(xiàn)出明顯的漂移現(xiàn)象。補償階段石方向的測量誤差平均值與初始測量誤差之間的偏差僅為0.031 mm,獲得了比較理想的補償效果。