王玉梅,于劍斌
(天津中德應(yīng)用技術(shù)大學(xué),天津300350)
逆向工程技術(shù)在工程實(shí)踐中的應(yīng)用越來越多,比如:損壞或磨損零件的還原、無設(shè)計(jì)圖紙的情況下對(duì)現(xiàn)有零件的復(fù)制、改進(jìn)和創(chuàng)新設(shè)計(jì)等。用一定的測量手段對(duì)實(shí)物或模型進(jìn)行測量,采集測量數(shù)據(jù)點(diǎn),通過計(jì)算機(jī)輔助設(shè)計(jì)的方法重構(gòu)實(shí)物CAD模型。在此過程中,有兩個(gè)關(guān)鍵問題需要解決,一是采用什么樣的測量方法,能夠得到準(zhǔn)確的測量數(shù)據(jù),二是如何對(duì)測量數(shù)據(jù)進(jìn)行處理,剔除影響測量精密度的異常點(diǎn)。
基于“裹圓”結(jié)構(gòu)的少半圓類零件進(jìn)行反求設(shè)計(jì),三點(diǎn)定圓法會(huì)使測量誤差放大,圓心角越小,放大系數(shù)增長越劇烈[1],需要在圓弧上密集采點(diǎn)[2];采集數(shù)據(jù)點(diǎn)后,常采用最小二乘法來評(píng)價(jià)圓或圓弧,當(dāng)圓弧段比較短時(shí),若用常規(guī)的最小二乘法來擬合,會(huì)產(chǎn)生較大的誤差。對(duì)于此方面的理論研究很多,文獻(xiàn)[1,3,5]均對(duì)常規(guī)的最小二乘法擬合短圓弧或少半圓做了分析。文獻(xiàn)[3,4]對(duì)圓心固定的最小二乘法做了理論分析。測量得到的數(shù)據(jù),往往存在影響測量精密度的異常點(diǎn),如何剔除這些異常點(diǎn),目前常用的方法為拉依達(dá)準(zhǔn)則[6,7],用該法則每剔除一個(gè)異常點(diǎn),就要重新計(jì)算一次n-1個(gè)數(shù)據(jù)的平均值,殘余誤差和標(biāo)準(zhǔn)偏差,若測量列中有幾個(gè)異常值需要剔除時(shí),這樣顯然是非常繁瑣的。
從實(shí)踐的角度出發(fā),將設(shè)計(jì)基準(zhǔn)、工藝基準(zhǔn)及檢測基準(zhǔn)統(tǒng)一,避免繁瑣的數(shù)據(jù)處理消除基準(zhǔn)不統(tǒng)一產(chǎn)生的誤差。本文提出一種新的逐步逼近算法剔除異常點(diǎn),假設(shè)每一個(gè)測量值均為測量真值,得到一個(gè)標(biāo)準(zhǔn)公差數(shù)列,根據(jù)剔除測量點(diǎn)前后的標(biāo)準(zhǔn)公差最大值的相對(duì)誤差判別該點(diǎn)是否剔除,逐步逼近設(shè)定的相對(duì)誤差值,直至剔除前后標(biāo)準(zhǔn)公差數(shù)列基本無變化。
對(duì)于曲線或曲面的測量,誤差產(chǎn)生的原因之一在于設(shè)計(jì)基準(zhǔn)和測量基準(zhǔn)不統(tǒng)一的問題,測量得到的數(shù)據(jù)還需進(jìn)行數(shù)據(jù)處理消除基準(zhǔn)不統(tǒng)一產(chǎn)生的誤差,數(shù)據(jù)處理過程復(fù)雜且工程應(yīng)用性較差。本文在檢測過程中,綜合考慮設(shè)計(jì)基準(zhǔn)、工藝基準(zhǔn)及檢測基準(zhǔn),將測量基準(zhǔn)建立在設(shè)計(jì)基準(zhǔn)上,從而消除了由于兩基準(zhǔn)不統(tǒng)一產(chǎn)生的誤差。
如圖1所示,大圓弧和中間孔同心,因此大圓弧的圓心通過中間孔的軸線確定,中間孔的軸線是設(shè)計(jì)基準(zhǔn),這樣就實(shí)現(xiàn)了設(shè)計(jì)基準(zhǔn)和測量基準(zhǔn)的統(tǒng)一,并將圓弧的圓心固定在測量基準(zhǔn)上,因此將工件坐標(biāo)系的原點(diǎn)定義在中間孔的軸線上。

圖1 測量基準(zhǔn)位置標(biāo)識(shí)
基準(zhǔn)確定后,使用的是蔡司MC550型號(hào)的三坐標(biāo)測量機(jī),此機(jī)器通過探針的紅寶石和工件進(jìn)行接觸得到接觸點(diǎn)在探測方向上的矢量坐標(biāo),要想求出探針的紅寶石與測量面的實(shí)際接觸點(diǎn)三個(gè)方向的坐標(biāo)是極其復(fù)雜的,但是求取紅寶石球心的位置相對(duì)比較簡單,即得到紅寶石球心在測量過程中的軌跡,從而可以間接得到紅寶石與測量面實(shí)際接觸點(diǎn)的軌跡。
在探測點(diǎn)的過程中,為了保證紅寶石球心通過圓弧的圓心,避免出現(xiàn)測頭半徑補(bǔ)償誤差,在獲取紅寶石球心點(diǎn)的坐標(biāo)時(shí),要盡量保證探測方向沿圓弧的法線方向。
在測量過程中,經(jīng)常會(huì)存在異常點(diǎn),異常點(diǎn)是不可取的。最常用的異常點(diǎn)判別法則為拉依達(dá)準(zhǔn)則[7],應(yīng)用此準(zhǔn)則應(yīng)先算出等精度獨(dú)立測量列Li(i=1,2,…,n)的平均值lˉ及殘余誤差vi=li-lˉ,并按貝塞爾公式算出該測量列的標(biāo)準(zhǔn)偏差σb.

式中,σb為賽貝爾公式計(jì)算的標(biāo)準(zhǔn)差估算值;為測量數(shù)據(jù)的平均值;n為測量次數(shù)。
如果某測量值ld的殘余誤差vd=ld-滿足下式則認(rèn)為ld為異常值,需要剔除。用拉依達(dá)準(zhǔn)則每剔除一個(gè)異常點(diǎn),就要重新計(jì)算一次n-1個(gè)數(shù)據(jù)的平均值,殘余誤差vi和標(biāo)準(zhǔn)偏差σb,若測量列中有幾個(gè)異常值需要剔除時(shí),這樣顯然是非常繁瑣的。
針對(duì)拉依達(dá)準(zhǔn)則的缺陷,提出一種新的算法,該算法假設(shè)測量列中每一個(gè)測量值為真值,根據(jù)標(biāo)準(zhǔn)公差的計(jì)算公式(2)計(jì)算出標(biāo)準(zhǔn)偏差數(shù)列,標(biāo)準(zhǔn)偏差值越大,說明該點(diǎn)偏離整體樣本的距離,超出精密度要求的測量點(diǎn)即被剔除,剔除標(biāo)準(zhǔn)偏差最大的測量點(diǎn)后,剩余的測量點(diǎn)再計(jì)算標(biāo)準(zhǔn)偏差數(shù)列,如此循環(huán)逼近,最后使標(biāo)準(zhǔn)偏差最大值的相對(duì)誤差控制在一定的范圍內(nèi),即完成異常點(diǎn)的剔除。
2.2.1 計(jì)算標(biāo)準(zhǔn)偏差數(shù)列
根據(jù)標(biāo)準(zhǔn)差計(jì)算公式計(jì)算標(biāo)準(zhǔn)公差數(shù)列

其中,ld為第d次測量得到的測量數(shù)據(jù);σd為假設(shè)第d個(gè)測量數(shù)據(jù)ld為真值時(shí)的標(biāo)準(zhǔn)偏差;li為第i次測量得到的數(shù)值;n為測量次數(shù)。

σ1為假設(shè)第1個(gè)測量數(shù)據(jù)l1為真值時(shí)的標(biāo)準(zhǔn)偏差;σn為假設(shè)第n個(gè)測量數(shù)據(jù)ln為真值時(shí)的標(biāo)準(zhǔn)偏差。
2.2.2 尋找標(biāo)準(zhǔn)偏差數(shù)列中的極值
首先,將第一個(gè)點(diǎn)的值作為標(biāo)準(zhǔn)公差值中的極值σmax,第二點(diǎn)和第一點(diǎn)的標(biāo)準(zhǔn)公差值進(jìn)行比較,較大者作為標(biāo)準(zhǔn)公差值的極值σmax,依次后一個(gè)和前一個(gè)公差值的大小,最終輸出整個(gè)數(shù)列中標(biāo)準(zhǔn)公差值中的極值σmax,尋求極值的流程圖如圖2所示。

圖2 標(biāo)準(zhǔn)公差極值計(jì)算流程圖
2.2.3 剔除使標(biāo)準(zhǔn)公差最大的測量值
剔除使標(biāo)準(zhǔn)公差最大的測量值后,重復(fù)2.2.1和
2.2.2 得到剔除后的標(biāo)準(zhǔn)公差的最大值σ剔max.
2.2.4 判別剔除點(diǎn)是否為異常點(diǎn)
此算法通過計(jì)算剔除前后標(biāo)準(zhǔn)差最大值的相對(duì)誤差來判別異常點(diǎn),如果相對(duì)誤差小于β,說明剔除該點(diǎn)前后對(duì)精密度的影響不大,判別該點(diǎn)為正常測量點(diǎn),不予剔除。如果相對(duì)誤差大于β,則應(yīng)剔除該點(diǎn),然后重復(fù)步驟一至四,循環(huán)逼近,直到剔除前后標(biāo)準(zhǔn)差最大值的相對(duì)誤差小于β為止。

其中σmax為未剔除異常點(diǎn)時(shí)的標(biāo)準(zhǔn)公差最大值;σ剔max為剔除異常點(diǎn)后的標(biāo)準(zhǔn)公差的最大值;β為定義為剔除系數(shù)。
下面通過測量實(shí)例來說明上述方法的應(yīng)用,使用蔡司MC550型號(hào)的三坐標(biāo)測量機(jī),此機(jī)器通過探針的紅寶石和工件進(jìn)行接觸得到接觸點(diǎn)在探測方向上的矢量坐標(biāo),可以很方便的得到探針紅寶石球心在測量過程中的軌跡,從而可以間接得到紅寶石與測量面實(shí)際接觸點(diǎn)的軌跡。表1為探針紅寶石球心的坐標(biāo)值。由于測量數(shù)據(jù)較多,計(jì)算量比較大,應(yīng)用MATLAB數(shù)學(xué)軟件進(jìn)行編程計(jì)算。

表1 三坐標(biāo)探針紅寶石球心坐標(biāo)值
本次測量采集60組數(shù)據(jù)點(diǎn),通過每一個(gè)紅寶石球心點(diǎn)的X坐標(biāo)和Y坐標(biāo)可以得到紅寶石球心點(diǎn)到基準(zhǔn)原點(diǎn)的距離值,此距離值減去紅寶石的半徑即為少半圓上該點(diǎn)的半徑值(n=1,2,3….60)。對(duì)此 60個(gè)半徑值應(yīng)用此循環(huán)逼近算法進(jìn)行異常點(diǎn)的剔除。
首先計(jì)算標(biāo)準(zhǔn)偏差數(shù)列,由探測到的60組測量數(shù)據(jù),對(duì)于一個(gè)測量數(shù)據(jù)均對(duì)應(yīng)一個(gè)標(biāo)準(zhǔn)差,60個(gè)標(biāo)準(zhǔn)差的數(shù)值如圖所示,由圖3剔除異常點(diǎn)前曲線可知,少數(shù)標(biāo)準(zhǔn)差數(shù)值與平均標(biāo)準(zhǔn)差的偏離比較大,影響測量的精密度,需要判別是否為異常點(diǎn),采用循環(huán)逼近的算法,剔除使標(biāo)準(zhǔn)公差最大的測量值,反復(fù)多次后,直至標(biāo)準(zhǔn)差最大值的相對(duì)誤差控制在合理的范圍內(nèi)。

圖3 剔除前后標(biāo)準(zhǔn)差變化示意圖
通過圖3可知,剔除最后兩個(gè)點(diǎn)前后,標(biāo)準(zhǔn)公差幾乎沒有太大變化,說明標(biāo)準(zhǔn)差趨于穩(wěn)定,異常點(diǎn)剔除算法結(jié)束。
1)很多相關(guān)分析表明,針對(duì)具有少半圓零件進(jìn)行數(shù)據(jù)采集時(shí),三點(diǎn)定圓法誤差會(huì)放大,因此,本文采用密集采點(diǎn)法,并采用圓心固定的最小二乘法提高擬合精度,減少測量誤差。
2)綜合考慮設(shè)計(jì)基準(zhǔn)、加工工藝基準(zhǔn)和檢測基準(zhǔn),為了減少測量誤差和繁瑣的數(shù)據(jù)處理,將檢測基準(zhǔn)和設(shè)計(jì)基準(zhǔn)重合,即使工件坐標(biāo)系和測量坐標(biāo)系重合。
3)提出一種新的、適合工程應(yīng)用的異常點(diǎn)剔除算法,假設(shè)每一個(gè)測量數(shù)據(jù)均是測量真值,得到標(biāo)準(zhǔn)差數(shù)列,尋求標(biāo)準(zhǔn)差最大值對(duì)應(yīng)的測量點(diǎn)予以剔除,然后計(jì)算剔除前后的標(biāo)準(zhǔn)差最大值的相對(duì)誤差,控制在一定范圍內(nèi)則保留該點(diǎn),否則剔除。該方法計(jì)算簡單,只須反復(fù)調(diào)用標(biāo)準(zhǔn)公差計(jì)算公式即可,實(shí)時(shí)性好。