黃光亮 秦樹人
(重慶大學(xué)測試中心,重慶 400030)
檢測是制造過程中極其重要的一個(gè)環(huán)節(jié),如何提高檢測效率、縮短檢測時(shí)間越來越成為制造業(yè)關(guān)注的焦點(diǎn)。傳統(tǒng)的檢測方法是離線檢測,將工件從機(jī)床上卸下,在測量設(shè)備上檢測完后裝回機(jī)床再加工。這樣需要耗費(fèi)大量的時(shí)間在工件裝卸和坐標(biāo)找正上,而且還會(huì)產(chǎn)生人為誤差。在線檢測是將測頭安裝在機(jī)床主軸上,由測量程序控制測頭自動(dòng)完成檢測。在線檢測能大幅度地減少測量時(shí)間,避免二次裝夾誤差并提高機(jī)床的精度保持性。
文獻(xiàn)[1-3]對在線檢測系統(tǒng)及其軟件進(jìn)行了研究,但或被測工件信息的獲取過于繁瑣或沒有考慮測量結(jié)果的誤差補(bǔ)償。文獻(xiàn)[4-5]開發(fā)了基于Auto-CAD的加工中心在線檢測系統(tǒng),用二次開發(fā)工具ObjectARX獲取被測工件信息,但各個(gè)功能模塊并沒有統(tǒng)一起來使其成為一個(gè)整體。文獻(xiàn)[6]將虛擬儀器技術(shù)用于尺寸測量,對虛擬式的工件檢測儀進(jìn)行了有益的探索,但采用的是離線測量的方式且檢測對象僅限于幾何尺寸。本文利用虛擬儀器技術(shù),整合各功能模塊,使在線檢測系統(tǒng)統(tǒng)一為儀器的形式,并對整個(gè)檢測系統(tǒng)產(chǎn)生的誤差進(jìn)行補(bǔ)償。
本文將虛擬式檢測儀與加工中心的在線檢測技術(shù)相結(jié)合,構(gòu)建一個(gè)完整的在線檢測系統(tǒng),結(jié)構(gòu)如圖1所示[7]。它由五部分組成:機(jī)床本體、CNC系統(tǒng)、伺服系統(tǒng)、測頭系統(tǒng)和檢測儀。
在線檢測系統(tǒng)的構(gòu)建主要是將測頭系統(tǒng)與加工中心的CNC系統(tǒng)相連接:先將測頭裝在刀柄上,再把測頭像刀具一樣置于刀庫中或安裝在主軸上,然后將測頭的數(shù)據(jù)線經(jīng)接收器連接到加工中心的數(shù)控系統(tǒng),對測頭進(jìn)行校正后即可進(jìn)行檢測。
系統(tǒng)主要用于實(shí)現(xiàn)工件序后的在線檢測。檢測儀首先從工件的CAD圖上讀取零件信息,選擇測量對象(圓孔、凸臺(tái)等)并自動(dòng)生成測量主宏程序。如果是序中檢測,測量的工件關(guān)鍵信息可以手動(dòng)輸入。檢測儀將測量程序由RS232串行通信接口上傳給數(shù)控系統(tǒng)。數(shù)控系統(tǒng)執(zhí)行測量程序,伺服系統(tǒng)驅(qū)動(dòng)運(yùn)動(dòng)部件帶動(dòng)測頭按規(guī)定的路徑向測量點(diǎn)運(yùn)動(dòng),當(dāng)測球接觸工件時(shí)發(fā)出觸發(fā)信號(hào)[7]。該信號(hào)通過測頭與數(shù)控系統(tǒng)的專用接口傳到接收器,轉(zhuǎn)換后傳給機(jī)床的控制系統(tǒng),機(jī)床停止運(yùn)動(dòng),接觸點(diǎn)的坐標(biāo)值被記錄下來,然后程序再控制測頭進(jìn)行下一個(gè)測量動(dòng)作。這些被記錄下來的數(shù)據(jù)可以通過RS232立刻回傳檢測儀,也可以先在數(shù)控系統(tǒng)中存儲(chǔ)起來,待全部測量點(diǎn)都檢測完成后一起回傳。檢測儀對測量結(jié)果修正后可進(jìn)行評定或可視化等數(shù)據(jù)處理工作。
系統(tǒng)軟件設(shè)計(jì)是檢測儀開發(fā)的關(guān)鍵。按照檢測儀的工作原理,把檢測儀的功能分為CAD圖形交換、宏程序生成、測量仿真、通信、數(shù)據(jù)分析、結(jié)果輸出和文件保存回放7個(gè)主要功能模塊,如圖2所示。
檢測儀選用集成開發(fā)環(huán)境VC++6.0開發(fā),圖3為開發(fā)完成的檢測儀主界面。下面對各主要功能模塊進(jìn)行介紹。
絕大多數(shù)的零件圖是用AutoCAD繪制的,從CAD圖中獲取工件的檢測信息,可以保證設(shè)計(jì)、加工、檢測的延續(xù)性。DXF(Drawing Exchange File)是一種圖形信息交換文件,以ASCII碼格式保存繪圖信息,通常作為高級(jí)語言編寫程序的接口。DXF文件由順序出現(xiàn)的七大段組成:標(biāo)題段、類段、表段、塊段、實(shí)體段、對象段和結(jié)束段[8]。與零件尺寸有關(guān)的信息只包含在實(shí)體段(ENTITIES)中,其他段可以忽略。
圖形交互模塊從實(shí)體段讀取直線、多段線、圓弧、圓等圖元信息,并提取繪圖邊界信息。從繪圖區(qū)大小和檢測儀屏幕區(qū)大小獲得一個(gè)比例,將各圖元按比例重繪于檢測儀。在檢測儀屏幕上選取測量信息(直徑、寬度、高度等)時(shí),通過比例可以得到較準(zhǔn)確的實(shí)際值。
宏程序生成模塊把從圖形交互模塊中獲得的零件信息作為變量生成檢測主宏程序,可以完成圓心直徑、寬度、平面位置、高度/深度、孔心距、直線度、平面度和圓度的檢測,如圖4所示。
宏程序編寫時(shí)應(yīng)規(guī)劃合理的測量路徑,避免測頭提前觸發(fā)影響測量結(jié)果。最典型的是圓心和直徑的測量,如果路徑規(guī)劃不合理很容易將弦長當(dāng)成直徑。同時(shí)測頭應(yīng)該與工件作兩次接觸,先高速與工件接觸以定位,退回一小段距離后以較低的速度接觸,取第二次接觸的主軸坐標(biāo)。
仿真模塊可以在檢測前對實(shí)際檢測中測頭的運(yùn)動(dòng)路徑進(jìn)行模擬,避免實(shí)際檢測過程中對測頭系統(tǒng)造成的破壞。仿真模塊以O(shè)penGL作為場景開發(fā)工具,以圖形化的方式再現(xiàn)加工中心的在線檢測過程。
檢測儀通過RS232串行接口與CNC系統(tǒng)通信,接口有9針-9針和9針-25針兩種,采用XON/XOFF通信協(xié)議,通信開始前應(yīng)使接收方處于準(zhǔn)備好狀態(tài)。通信模塊主要實(shí)現(xiàn)測量宏程序的上傳和檢測數(shù)據(jù)的回傳功能。
宏程序中只適合作簡單的尺寸運(yùn)算,如果將復(fù)雜的運(yùn)算放在宏程序中進(jìn)行,如平面度、圓度的計(jì)算,會(huì)占用工控機(jī)大量的處理時(shí)間,大大降低測量的效率,所以把數(shù)據(jù)處理作為一個(gè)模塊從宏程序中獨(dú)立出來,利用計(jì)算機(jī)強(qiáng)大的性能進(jìn)行計(jì)算。
數(shù)據(jù)處理模塊對從通信模塊獲得的數(shù)據(jù)進(jìn)行誤差補(bǔ)償后,用適當(dāng)?shù)乃惴▽z測數(shù)據(jù)進(jìn)行處理。直線度誤差的評定方法中,最小二乘法是比較通用的算法,易于轉(zhuǎn)換成計(jì)算機(jī)程序;最小區(qū)域法符合最小條件。直線度誤差同時(shí)采用最小二乘法和最小區(qū)域法評定[9-10],對評定結(jié)果取其小者。平面度誤差評定中,最小包容區(qū)域法符合最小條件,但難用解析法求出,最小二乘法便于采用計(jì)算機(jī)對數(shù)據(jù)進(jìn)行處理和計(jì)算,在測量數(shù)據(jù)比較多時(shí),更加方便和快捷。所以平面度誤差用最小二乘法評定[11]。圓度誤差也采用最小二乘法評定,因?yàn)闇y量圓度誤差時(shí)測量點(diǎn)在圓周均布,即角度增量相同,適合用最小二乘法進(jìn)行擬合,并且最小二乘法能確定唯一的圓心和半徑[12]。
結(jié)果輸出模塊對數(shù)據(jù)處理的結(jié)果與設(shè)計(jì)要求進(jìn)行對比評定,以表格的形式顯示及打印,形成檢測報(bào)告。
對于采集到的數(shù)據(jù)需要根據(jù)檢測任務(wù)的不同,按照不同的文件名加以區(qū)分保存,否則檢測的數(shù)據(jù)多了以后后續(xù)處理時(shí)難以區(qū)分?;胤殴δ苤饕菍Ρ4娴臄?shù)據(jù)讀取,以進(jìn)行后續(xù)分析處理。
如果直接對采集回來的數(shù)據(jù)進(jìn)行分析,得出的結(jié)果會(huì)產(chǎn)生較大的誤差。檢測儀的精度受加工中心固有誤差、測頭系統(tǒng)誤差和評定算法誤差三方面因素的影響。加工中心的誤差包括幾何誤差和熱誤差,其辨識(shí)和補(bǔ)償方法見文獻(xiàn)[13-14]。下面著重分析測頭誤差和評定算法誤差。
測頭誤差形成原因是測頭存在機(jī)械滯后和信號(hào)傳輸及電氣接口處理滯后,測頭在剛接觸工件時(shí)并不產(chǎn)生觸發(fā)信號(hào),而是在測頭偏移其“零位”自由狀態(tài)一段距離后才發(fā)出觸發(fā)信號(hào)。預(yù)行程誤差和測頭重復(fù)定位誤差稱為測頭靜態(tài)誤差,隨機(jī)動(dòng)態(tài)誤差和動(dòng)態(tài)誤差稱為測頭動(dòng)態(tài)誤差,其中對測量精度影響最大的是預(yù)行程誤差[15]。通過測頭的標(biāo)定可以對這些誤差項(xiàng)進(jìn)行補(bǔ)償。測頭標(biāo)定包括有效直徑、偏心量和測頭長度。
3.1.1 測頭有效直徑標(biāo)定
由于預(yù)行程誤差的存在,測球剛接觸工件時(shí)測頭并沒有被觸發(fā),而是測頭(或工作臺(tái))繼續(xù)產(chǎn)生一定位移量之后才會(huì)觸發(fā)。如圖5所示,A位置為“零位”自由狀態(tài),B位置為觸發(fā)狀態(tài),可以認(rèn)為距離d就是測頭的預(yù)行程誤差。
對測頭觸發(fā)時(shí)的力學(xué)模型進(jìn)行分析后可知預(yù)行程誤差與觸發(fā)方位角、測桿長度、測球直徑、測頭彈性模量等參數(shù)有關(guān)[16]??梢源_定各個(gè)參數(shù)后根據(jù)相關(guān)公式計(jì)算出預(yù)行程誤差,再在測量結(jié)果中補(bǔ)償。但是確定各個(gè)參數(shù)時(shí)也會(huì)產(chǎn)生誤差并且效率也不高。下面介紹一種可行的確定預(yù)行程誤差的新方法。
如圖5,當(dāng)測頭在B位置觸發(fā)時(shí),相當(dāng)于C位置點(diǎn)劃線所示的測頭與處于A位置的工件剛接觸時(shí)就產(chǎn)生觸發(fā)信號(hào),即C測頭處于“零位”自由狀態(tài)。此時(shí)C測球的直徑變?yōu)?d,它并不是測球的真實(shí)直徑,故稱其為有效直徑。只要標(biāo)定了有效直徑就可以對預(yù)行程誤差進(jìn)行補(bǔ)償。
有效直徑可以用環(huán)規(guī)來標(biāo)定。如圖6a所示,環(huán)規(guī)孔的準(zhǔn)確直徑為D,使測球位于環(huán)規(guī)孔的圓心,分別在Y方向的1和2位置觸發(fā),觸發(fā)時(shí)的坐標(biāo)值為Y1和Y2,則Y方向的有效直徑為D-|Y1-Y2|。有效直徑隨測頭方位角的不同會(huì)有所改變,可以在檢測前先對該方向上的有效直徑進(jìn)行標(biāo)定。
3.1.2 測頭偏心標(biāo)定
測頭安裝時(shí)很難保證測球中心與加工中心主軸的回轉(zhuǎn)中心完全一致,而測頭觸發(fā)時(shí)記錄的是主軸的位置坐標(biāo),所以需要標(biāo)定對測球中心與機(jī)床主軸中心的偏心量,用以對主軸坐標(biāo)進(jìn)行補(bǔ)償。如圖6b所示,環(huán)規(guī)孔中心坐標(biāo)為X0、Y0,加工中心X軸、Y軸準(zhǔn)確定位于孔心位置,測頭分別在Y方向1、2位置觸發(fā),X方向3、4位置觸發(fā),得到兩個(gè)方向的中點(diǎn)值X1、Y1,則偏心量 !x=|X0-X1|,!y=|Y0-Y1|。
3.1.3 測頭長度標(biāo)定
在進(jìn)行Z軸方向的測量時(shí),如果不知道準(zhǔn)確的測頭長度補(bǔ)償值,將無法得到準(zhǔn)確的測量結(jié)果,所以要對測頭長度進(jìn)行標(biāo)定。測頭長度可以用已知Z平面坐標(biāo)位置的工件來標(biāo)定:使測頭在Z方向觸發(fā),將觸發(fā)時(shí)Z軸坐標(biāo)值減去原刀具長度補(bǔ)償值和標(biāo)定用Z面的值便可獲得測頭長度。
檢測儀對直線度、平面度、圓度等形狀誤差的評定需要用到特定的算法,這些算法對檢測的數(shù)據(jù)有一定的要求,否則也會(huì)產(chǎn)生較大的誤差。
直線度可以用最小二乘法和最小包容區(qū)域法評定。最小區(qū)域法符合最小條件,但當(dāng)數(shù)據(jù)點(diǎn)不在某一軸的附近分布時(shí),會(huì)產(chǎn)生較大的誤差,不能作為評定的依據(jù)。如圖7所示,平行線a和b確定數(shù)據(jù)點(diǎn)最小包容區(qū)域,c是最小二乘擬合直線。由最小二乘法確定的直線度誤差為d1+d2,最小區(qū)域法確定的直線度誤差為d,很顯然d>d1+d2。
圓度誤差的評定是用測量數(shù)據(jù)點(diǎn)與最小二乘擬合圓在兩個(gè)方向上進(jìn)行比較,取與最小二乘圓距離最大的兩點(diǎn)之和。實(shí)際上是把雞心線的內(nèi)切圓當(dāng)作最小二乘圓[17]。因?yàn)閳A度測量時(shí)是等角間距采樣,所以當(dāng)采樣點(diǎn)數(shù)較少時(shí),雞心線形狀明顯,這種情況下所擬合的最小二乘圓誤差比較大。因此應(yīng)該增加采樣點(diǎn)數(shù)來減小用最小二乘法擬合圓帶來的誤差。
將檢測儀用于加工中心上進(jìn)行測量,檢測結(jié)果經(jīng)誤差補(bǔ)償后,與三坐標(biāo)測量機(jī)(CMM)測量結(jié)果和無誤差補(bǔ)償?shù)臏y量結(jié)果進(jìn)行比較,如表1所示。表明經(jīng)誤差補(bǔ)償后檢測儀的測量精度得到了提高。
表1 測量結(jié)果比較 mm
加工中心在線檢測儀繼承了虛擬儀器的優(yōu)點(diǎn),從工件CAD圖獲取測量信息,自動(dòng)生成測量宏程序,宏程序上傳機(jī)床后,機(jī)床帶動(dòng)測頭自動(dòng)完成測量。測量數(shù)據(jù)回傳檢測儀,分析后給出檢測結(jié)果,避免了二次裝夾誤差。對測頭系統(tǒng)和評定算法誤差進(jìn)行了分析,提出了誤差補(bǔ)償?shù)姆椒?。?yàn)證表明,虛擬式的在線檢測儀能夠完成較高精度的測量。
[1]陳明娟,章青,劉又午,等.加工中心在線檢測軟件開發(fā)[J].制造技術(shù)與機(jī)床,2000(4):52-53.
[2]劉戰(zhàn)強(qiáng),等.用于加工中心的在線工件自動(dòng)測量系統(tǒng)[J].工具技術(shù),2000,34(9):30-32.
[3]鄧三鵬.數(shù)控機(jī)床在線檢測軟件的開發(fā)[J].機(jī)械設(shè)計(jì)與制造,2006(1):153-155.
[4]桑宏強(qiáng),等.基于AutoCAD的加工中心在線工件自動(dòng)檢測系統(tǒng)[J].機(jī)床與液壓,2007,35(5):190-191.
[5]孫志海.基于CAD的加工中心在線檢測系統(tǒng)研究與開發(fā)[D].天津:河北工業(yè)大學(xué),2003.
[6]郭明清,等.虛擬式零件尺寸檢測儀的研制[J].振動(dòng)、測試與診斷,2008,28(4):334-337.
[7]張曉峰.數(shù)控機(jī)床在線檢測技術(shù)[J].CAD/CAM與制造業(yè)信息化.2005(12):69-71.
[8]李芳珍,等.DXF文件格式及其外部接口的研究[J].兵工自動(dòng)化,2008,27(7):83-85.
[9]姚廣曉,等.直線度誤差的計(jì)算機(jī)輔助算法[J].機(jī)械工程師,2003(10):42-43.
[10]岳武陵,等.精確求解平面內(nèi)直線度誤差的計(jì)算機(jī)算法[J].南通工學(xué)院學(xué)報(bào),2000,16(4):39-41.
[11]張昉.平面度誤差的最小二乘法分析[J].機(jī)械制造與研究,2002(3):17-19.
[12]劉玉梅,等.圓度誤差評定的計(jì)算機(jī)實(shí)現(xiàn)方法[J].沈陽工業(yè)學(xué)院學(xué)報(bào),1999,18(1):37-40.
[13]郭辰.多功能數(shù)控銑床幾何誤差補(bǔ)償技術(shù)的研究[D].沈陽:沈陽工業(yè)大學(xué),2005.
[14]郭前建,楊建國,王秀山,等.數(shù)控機(jī)床熱誤差的在線測量與補(bǔ)償加工[J].制造技術(shù)與機(jī)床,2007(4):32-34,37.
[15]孫芳芳.精密零件加工在線檢測系統(tǒng)關(guān)鍵技術(shù)實(shí)現(xiàn)[D].南京:南京航空航天大學(xué),2007:18-20.
[16]韓翠娥,等.接觸觸發(fā)式測頭觸發(fā)力的理論分析[J].軍械工程學(xué)院學(xué)報(bào),2005,17(5):75-78.
[17]顏景平.最小二乘圓參數(shù)的計(jì)算問題[J].計(jì)量學(xué)報(bào),1989,10(2):132-137.