孟凡良,余曉芬,黃開(kāi)輝,彭鵬
(合肥工業(yè)大學(xué)儀器科學(xué)與光電工程學(xué)院,安徽合肥 230009)
圓度誤差是指在回轉(zhuǎn)體同一橫截面內(nèi),被測(cè)圓輪廓相對(duì)于理想圓的最小變動(dòng)量,它是零件幾何精度的重要指標(biāo)。能否準(zhǔn)確評(píng)定圓度誤差對(duì)保證精密機(jī)械零件的質(zhì)量至關(guān)重要。GB/T 7235-2004規(guī)定了以下4種圓度誤差的評(píng)定方法:最小區(qū)域法、最小二乘法、最小外接圓法和最大內(nèi)切圓法。而其中最小區(qū)域法是仲裁方法,其他方法均為近似方法[1]。
正因?yàn)閳A度誤差最小區(qū)域評(píng)價(jià)的重要地位,一直以來(lái),國(guó)內(nèi)外學(xué)者在這一方面做了大量研究,各種圓度誤差最小區(qū)域評(píng)定算法也應(yīng)運(yùn)而生。目前比較具有代表性的算法有:移心法[2]、仿增量算法[3]、搜索法[4]、Voronoi圖形法[5]及遺傳算法[6]等。近年來(lái),基于CCD或CMOS的圖像測(cè)量方法在圓度誤差測(cè)量領(lǐng)域得到了廣泛應(yīng)用。但由于采樣點(diǎn)數(shù)很多,應(yīng)用上述算法均無(wú)法快速、準(zhǔn)確地得到最小區(qū)域圓度誤差值,因此現(xiàn)階段計(jì)算機(jī)一般只輸出最小二乘圓度誤差值。為了解決多采樣點(diǎn)下圓度誤差最小區(qū)域評(píng)價(jià)的問(wèn)題,文中提出一種新的算法,可以準(zhǔn)確、高效地獲得最小區(qū)域圓度誤差值。
圓度誤差的最小區(qū)域評(píng)價(jià)[1]指的是:用兩個(gè)同心圓去包容被測(cè)圓輪廓,其中半徑差最小的一對(duì)同心圓的圓心為最小區(qū)域法評(píng)定中心,半徑差就是最小區(qū)域法評(píng)定的圓度誤差值。而實(shí)際評(píng)定過(guò)程中要依據(jù)交叉準(zhǔn)則。如圖1所示,l為被測(cè)圓輪廓,C1和C2為兩同心包容圓,半徑分別為R1和R2,O為同心圓圓心,a、b、c、d 4個(gè)點(diǎn)內(nèi)外相間地分布于兩同心包容圓上滿足交叉準(zhǔn)則,此時(shí)最小區(qū)域法評(píng)定的圓度誤差為R1-R2。
由上述最小區(qū)域法判別準(zhǔn)則可知:要完成圓度誤差的最小區(qū)域評(píng)價(jià),只需找到被測(cè)圓輪廓上滿足交叉準(zhǔn)則的4點(diǎn)即可。下面將詳細(xì)介紹文中所提出的新算法是如何通過(guò)兩步來(lái)成功鎖定滿足交叉準(zhǔn)則的4點(diǎn)進(jìn)而得到最小區(qū)域法圓度誤差值。
圖1 最小區(qū)域法評(píng)定圓度誤差
若將被測(cè)圓輪廓看作是一個(gè)平面離散點(diǎn)集,則根據(jù)圓度誤差最小區(qū)域評(píng)價(jià)的定義可得到如下結(jié)論:圓輪廓內(nèi)部所有點(diǎn)中,最小區(qū)域圓心的半徑極差值(相對(duì)于圓輪廓上各采樣點(diǎn)距離中的最大值減去最小值)最小。進(jìn)而可以得到推論:越靠近最小區(qū)域圓心的點(diǎn),其半徑極差值越小。根據(jù)該推論可以設(shè)計(jì)算法通過(guò)比較半徑極差值逐步逼近最小區(qū)域圓心,作者通過(guò)大量的仿真證明這種逼近雖然有效但卻是模糊的,不具有嚴(yán)格的收斂性,尤其當(dāng)非常接近最小區(qū)域圓心時(shí)可能會(huì)出錯(cuò),而一旦出錯(cuò),之后的逼近過(guò)程都是無(wú)效的。因此提出一種模糊算法——“九點(diǎn)法”,來(lái)模糊高效地移心逼近最小區(qū)域圓心。
首先,利用最小二乘法算得最小二乘圓心坐標(biāo)O(x,y)及最小二乘圓度誤差值e;其次,以O(shè)為中心,以e為邊長(zhǎng)均布8個(gè)點(diǎn)(如圖2所示),認(rèn)為最小區(qū)域圓心一定在這8個(gè)點(diǎn)以內(nèi);再次,計(jì)算這9個(gè)點(diǎn)的半徑極差值f(1)~f(9)并進(jìn)行比較:
(1)若f(1)最小,則首先認(rèn)為最小區(qū)域圓心一定在1、2、4、5四點(diǎn)以內(nèi),再將f(1)與f(2)、f(4)、f(5)相比較,移心結(jié)果如表1。當(dāng)f(3)、f(7)或f(9)最小時(shí),采用“九點(diǎn)法”移心逼近最小區(qū)域圓心的過(guò)程類似于1點(diǎn)。
圖2 “九點(diǎn)法”移心
表1 f(1)最小時(shí)的移心結(jié)果
(2)若f(2)最小,則需要先考察1、3、4、6四個(gè)點(diǎn)的半徑極差值:若f(1)<f(3)且f(4)<f(6),則認(rèn)為最小區(qū)域圓心一定在1、2、4、5四點(diǎn)以內(nèi),之后再根據(jù)(1)中所述進(jìn)行移心逼近;若f(3)<f(1)且f(6)<f(4),則認(rèn)為最小區(qū)域圓心一定在2、3、5、6四點(diǎn)以內(nèi),再根據(jù)(1)中所述進(jìn)行移心逼近;其他情況時(shí),需要分別在以上兩個(gè)區(qū)域內(nèi)進(jìn)行移心逼近,再比較兩個(gè)區(qū)域內(nèi)移心終點(diǎn)的半徑極差值,取其中較小者作為此次移心的結(jié)果。當(dāng)f(4)、f(6)、f(8)最小時(shí),移心逼近的過(guò)程類似于2點(diǎn)。
(3)若f(5)最小,則需要先分別比較f(3)、f(6)、f(9)和f(1)、f(4)、f(7),若前一組中至少有兩個(gè)分別小于后一組,則認(rèn)為最小區(qū)域圓心一定在1、3、7、9方形區(qū)域的上一半,反之一定在下一半;之后再分別比較f(1)、f(2)、f(3)和f(7)、f(8)、f(9),若前一組中至少有兩個(gè)點(diǎn)的半徑極差值分別小于后一組,則認(rèn)為最小區(qū)域圓心一定在1、3、7、9方形區(qū)域的左一半,反之一定在右一半;這樣就確定了最小區(qū)域圓心所在的范圍,進(jìn)而再根據(jù)(1)中所述進(jìn)行移心逼近。其他情況時(shí),需要分別在4個(gè)區(qū)域
內(nèi)進(jìn)行移心逼近,再比較4個(gè)區(qū)域內(nèi)移心終點(diǎn)的半徑極差值,取其中最小者作為此次移心的結(jié)果。
1.1節(jié)中詳細(xì)介紹了逐步移心逼近最小區(qū)域圓心的模糊算法,但畢竟無(wú)法得到準(zhǔn)確的最小區(qū)域圓心,下面將介紹根據(jù)峰值點(diǎn)群求取準(zhǔn)確的圓度誤差的方法。如圖3所示,曲線上的各點(diǎn)表示圓輪廓上各采樣點(diǎn)與“九點(diǎn)法”移心終點(diǎn)之間的距離,直線l2為最小二乘圓。根據(jù)圓度誤差最小區(qū)域評(píng)價(jià)的定義,滿足交叉準(zhǔn)則的4個(gè)點(diǎn)只可能出現(xiàn)在曲線上下峰值處。因此考慮設(shè)定上下閾值l1、l3來(lái)初步劃定四點(diǎn)的可能分布區(qū)間(①-⑤5個(gè)峰值點(diǎn)群),再窮舉所有可能的組合(如①②③④),逐個(gè)驗(yàn)證交叉準(zhǔn)則,最終找到4個(gè)點(diǎn)并完成圓度誤差的最小區(qū)域評(píng)價(jià)。上下閾值l1、l3是根據(jù)移心次數(shù)在最遠(yuǎn)峰值點(diǎn)與最小二乘圓之間選擇的(如l1至上側(cè)最遠(yuǎn)峰值點(diǎn)與其至最小二乘圓的距離比為1∶9),移心次數(shù)越多,認(rèn)為逼近效果越好,閾值就可以越靠近最遠(yuǎn)峰值點(diǎn)。由于各峰值點(diǎn)群的采樣點(diǎn)數(shù)相當(dāng)有限,因此只需利用窮舉搜索的方法便能快速準(zhǔn)確地得到結(jié)果。
圖3 根據(jù)峰值點(diǎn)群求圓度誤差
圖4所示為算法的程序流程圖,其給出了算法的具體實(shí)現(xiàn)步驟,以下兩點(diǎn)需補(bǔ)充說(shuō)明:
(1)為簡(jiǎn)化算法,在評(píng)定之前需先根據(jù)采樣點(diǎn)的個(gè)數(shù)按照近似1/k比例將采樣點(diǎn)壓縮成100~200個(gè)特征點(diǎn),具體為:若連續(xù)k個(gè)采樣點(diǎn)與最小二乘圓心的距離都大于最小二乘半徑,則保留距離最大的采樣點(diǎn),舍去其它k-1個(gè)點(diǎn);若都小于最小二乘半徑,則保留距離最小的采樣點(diǎn),舍去其他k-1個(gè)點(diǎn);若既有大于最小二乘半徑的又有小于最小二乘半徑的,則保留距離最大和距離最小的兩個(gè)采樣點(diǎn),舍去其他k-2個(gè)采樣點(diǎn)。
(2)按照算法,在壓縮后的100~200個(gè)特征點(diǎn)中找到滿足交叉準(zhǔn)則的4點(diǎn)并獲得局點(diǎn)最小區(qū)域圓度誤差值及此時(shí)的評(píng)定中心O'。之后在原采樣點(diǎn)中鎖定這4個(gè)點(diǎn)(兩個(gè)內(nèi)圓上的點(diǎn),兩個(gè)外圓上的點(diǎn)),分別以該四點(diǎn)為中心取k鄰域,考察鄰域內(nèi)各點(diǎn)與圓心O'的距離:若以內(nèi)圓點(diǎn)為中心,則取距離最小者;若以外圓點(diǎn)為中心,則取距離最大者。依據(jù)重新確定的四點(diǎn)坐標(biāo),即可得到全點(diǎn)最小區(qū)域圓度誤差值。
圖4 算法程序流程圖
為驗(yàn)證算法的正確性、可靠性及快速性,作者借助Matlab進(jìn)行了一系列的仿真。根據(jù)傅里葉變換的理論,認(rèn)為實(shí)際圓輪廓為各階諧波疊加的結(jié)果[7],在極坐標(biāo)下構(gòu)建被測(cè)圓輪廓的數(shù)學(xué)模型:
式中:r0為圓半徑理論值(直流分量);
ai為第i次諧波分量幅值;
φi為第i次諧波分量相位;
random為隨機(jī)誤差值。
理論上,只要采樣點(diǎn)數(shù)足夠,測(cè)得的離散點(diǎn)坐標(biāo)數(shù)據(jù)就包含了實(shí)際圓的所有加工誤差特征(諧波特征),又在實(shí)際生產(chǎn)加工中一般不會(huì)出現(xiàn)高次諧波分量[8](ai≥0.05μm,則i≤6)?;谝陨戏治?,根據(jù)直流分量r0選取合適的ai及φi值,隨機(jī)誤差取值均為0~1/8 000 mm,可以構(gòu)建多組圓輪廓,保持1 500個(gè)采樣點(diǎn)及1/15的壓縮比例不變,代入程序進(jìn)行仿真,仿真的結(jié)果及程序運(yùn)行的時(shí)間如表2所示。經(jīng)驗(yàn)證,表2中全點(diǎn)最小區(qū)域圓度誤差值確為對(duì)圓輪廓上1 500個(gè)采樣點(diǎn)的最小區(qū)域評(píng)價(jià)真值;因?yàn)椴蓸狱c(diǎn)數(shù)很多,若采用已有的移心法或迭代法等,程序運(yùn)行效率將很低[9]。
表2 輸入?yún)?shù)及仿真結(jié)果
圖5所示為第一組仿真中三次移心的過(guò)程,易見(jiàn)移心距離逐次遞減且移心終點(diǎn)確與最小區(qū)域圓心非常接近。如1.2節(jié)中所述,根據(jù)移心次數(shù)(w=3)設(shè)定上下閾值(至最遠(yuǎn)峰值點(diǎn)與其至最小二乘圓的距離比均為1∶9),確定各峰值點(diǎn)群后找到滿足交叉準(zhǔn)則的四點(diǎn)并求取局點(diǎn)最小區(qū)域圓度誤差值。圖6給出特征點(diǎn)與各圓心的距離曲線,其中特征點(diǎn)與移心終點(diǎn)的距離曲線和特征點(diǎn)與最小區(qū)域圓心的距離曲線幾乎重合,再次證明了“九點(diǎn)法”移心的有效性。
圖5 “九點(diǎn)法”逐次移心
圖6 特征點(diǎn)與各圓心距離曲線(1)
為驗(yàn)證算法的高效性及實(shí)用性,作者采用自行研制的多功能非接觸式圓度儀(如圖7所示),利用基于CCD的圖像測(cè)量手段對(duì)一φ10 mm的無(wú)油滑動(dòng)軸承的外圓輪廓(Talyrond 365型圓度儀測(cè)得最小區(qū)域圓度誤差值為17.09μm)進(jìn)行了圓度誤差的測(cè)量。首先采用型號(hào)為Guppy Pro F-201B的工業(yè)相機(jī)對(duì)被測(cè)工件進(jìn)行圖像采集,如圖8所示:其次完成數(shù)字圖像的處理,提取外圓的邊緣輪廓并輸出圓輪廓上各采樣點(diǎn)的坐標(biāo)值(約2 200個(gè)采樣點(diǎn));最后將坐標(biāo)值帶入程序,運(yùn)行11.454 s后輸出結(jié)果如表3所示。圖9給出122個(gè)特征點(diǎn)相對(duì)于最小二乘圓心、移心終點(diǎn)及最小區(qū)域圓心距離的3條曲線。由3條曲線的重合度可見(jiàn)“九點(diǎn)法”移心逼近的效果是明顯的;而短時(shí)間內(nèi)在各峰值點(diǎn)群中鎖定滿足交叉準(zhǔn)則的4個(gè)點(diǎn)證明該算法可以實(shí)現(xiàn)多采樣點(diǎn)下圓度誤差的最小區(qū)域評(píng)價(jià),具有一定的實(shí)用性。
表3 實(shí)驗(yàn)結(jié)果
圖7 多功能非接觸式圓度儀
圖8 被測(cè)環(huán)形軸套零件
圖9 特征點(diǎn)與各圓心距離曲線(2)
提出了一種應(yīng)用于多采樣點(diǎn)下的圓度誤差最小區(qū)域評(píng)價(jià)算法,一定程度上填補(bǔ)了該領(lǐng)域的空白,為圓度誤差的精確評(píng)定提供了新的思路。對(duì)該算法進(jìn)行了詳細(xì)的介紹,并通過(guò)大量的仿真及實(shí)驗(yàn)驗(yàn)證了其正確性、可靠性和高效性。該算法的原理易于理解,便于實(shí)現(xiàn)計(jì)算機(jī)編程,具有極強(qiáng)的通用性,可廣泛地應(yīng)用于圓度儀、機(jī)器視覺(jué)測(cè)量等多采樣點(diǎn)的情況。
[1]徐志玲,劉宇,程琦.4種圓度誤差評(píng)定方法分析[J].計(jì)量學(xué)報(bào),2009,30(5A):38-41.
[2]方沁林.圓度誤差評(píng)定的算法研究與軟件設(shè)計(jì)[D].武漢:華中科技大學(xué),2007:29-37.
[3]岳武陵,吳勇.基于仿增量算法的圓度誤差快速準(zhǔn)確評(píng)定[J].機(jī)械工程學(xué)報(bào),2008,44(1):87-91.
[4]張春陽(yáng),雷賢卿.基于幾何優(yōu)化的圓度誤差評(píng)定算法[J].機(jī)械工程學(xué)報(bào),2010,46(12):8-12.
[5]張鐵英,來(lái)可偉.計(jì)算幾何評(píng)定圓度的方法研究[J].工程圖學(xué)學(xué)報(bào),2002(3):145-153.
[6]CUI Changcai,CHE Rensheng.Circularity Error Evaluation Using Genetic Algorithm[J].Optics And Precision Engineering,2001,9(6):499-505.
[7]黃富貴,董兆鵬,崔長(zhǎng)彩.用諧波分析方法識(shí)別零件的圓度誤差特征[J].實(shí)驗(yàn)室研究與探索,2011,30(8):8-14.
[8]蒲競(jìng)秋.基于諧波分析的誤差分析方法[C]//四川省電子學(xué)會(huì)電子測(cè)量與儀器專委會(huì)2005年學(xué)術(shù)年會(huì)論文集,2005:18-23.
[9]薛玉君,暢為航,雷賢卿,等.圓度誤差評(píng)定的研究與展望[J].機(jī)床與液壓,2008,36(12):183-185.