朱靖,丁斌,毛敏,張翔,陳旭雯,祖洪飛
(1. 浙江理工大學(xué)機(jī)械工程學(xué)院,浙江杭州 310018;2.南通市計量檢定測試所,江蘇南通 226001;3.浙江譜麥科技有限公司,浙江寧波 315048;4.浙江龍宇智能科技有限公司,浙江海寧 314419)
白光干涉測量技術(shù)是一種利用低相干干涉原理測量物體表面輪廓的先進(jìn)方法,它通過參考臂中精密位移臺的移動來匹配被測物體表面微小的形貌變化,形成干涉條紋,進(jìn)而精確解算出物體表面的輪廓信息。基于白光干涉技術(shù)的測量儀器具有非接觸、大量程、高精度等特點(diǎn),廣泛應(yīng)用于精密裝配、納米新材料、集成電路和光學(xué)表面加工等領(lǐng)域[1-4],是獲取元件表面幾何尺寸和紋理的重要手段。
白光干涉測量系統(tǒng)復(fù)雜,不僅包含光源、耦合器等光學(xué)器件,還包括運(yùn)動位移臺、數(shù)據(jù)采集與分析儀等機(jī)電部件。這要求系統(tǒng)的控制軟件不僅要能獨(dú)立操作各模塊,還要能協(xié)調(diào)配合各部分工作以順利完成多變的測試任務(wù)??紤]到各部件廠家及規(guī)格各異、開發(fā)接口眾多等問題以及增強(qiáng)軟件靈活性與擴(kuò)展性的需求,本文作者選用圖形化操作的編程語言LabVIEW[5]來進(jìn)行軟件系統(tǒng)的開發(fā)。
該系統(tǒng)軟件主要包括運(yùn)動控制、信號采集以及數(shù)據(jù)處理和顯示等核心部分。其中,數(shù)據(jù)處理部分包含干涉信號包絡(luò)的峰值提取算法[6],也稱為等光程點(diǎn)判讀法,該算法很大程度上決定了系統(tǒng)的測量精度和上位機(jī)軟件的運(yùn)行效率。主要的峰值提取算法有傅里葉變換法[7]、希爾伯特變換法[8]、小波變換法[9]、包絡(luò)平方估計法[10]、空間頻域法[11]等,綜合考慮系統(tǒng)測量效率及測量精度,本文作者選用希爾伯特變換法。
首先設(shè)計并搭建測量系統(tǒng)的運(yùn)動裝置(參考臂S1、S2,測量臂R、Z、X);其次,開發(fā)上位機(jī)軟件系統(tǒng)及數(shù)據(jù)處理算法,不僅能控制運(yùn)動軸運(yùn)動以及高采樣率數(shù)據(jù)采集卡同步采集運(yùn)動軸位置和干涉信號,還能夠?qū)崟r進(jìn)行數(shù)據(jù)處理,得到三維點(diǎn)云,并調(diào)用PolyWorks等第三方軟件重建被測物體表面形貌以及進(jìn)行尺寸測量;最后,對整個系統(tǒng)功能進(jìn)行測試驗(yàn)證。
白光干涉測量系統(tǒng)主要包含光源、耦合器、參考臂、樣品臂、探測器、數(shù)據(jù)采集儀及上位機(jī)等部分,如圖1所示。該系統(tǒng)利用白光光譜中不同頻率的光波在樣品表面發(fā)生干涉,提取干涉后的合成光強(qiáng),經(jīng)過解析獲得樣品表面高度信息[12]。當(dāng)參考臂與樣品臂的光程差在相干長度內(nèi),兩束光就會發(fā)生干涉,形成如圖2所示的干涉包絡(luò)。
圖1 白光干涉測量系統(tǒng)結(jié)構(gòu)示意
圖2 白光干涉的理論干涉信號
一般情況下,R軸為主旋轉(zhuǎn)軸,Z軸為探針移動軸,X軸為被測件平移軸,通過R、Z、X三軸復(fù)合運(yùn)動實(shí)現(xiàn)對被測對象的連續(xù)測量。上位機(jī)軟件控制系統(tǒng)采集干涉信號,再通過解調(diào)濾波、包絡(luò)等光程點(diǎn)判讀等工作,可以準(zhǔn)確得到探針到樣品表面的距離L。檢測過程中,參考臂S1內(nèi)的PZT進(jìn)行往復(fù)掃描,探測器將探測到的包絡(luò)峰值的光信號轉(zhuǎn)化為電信號。最后由數(shù)據(jù)采集儀將以上信號傳給上位機(jī),如圖3所示,并對信號進(jìn)行運(yùn)算處理、峰值提取、點(diǎn)云生成及物體三維形貌表征[13]。
圖3 干涉信號尋址測量原理法
如圖4所示,白光干涉測量系統(tǒng)通常可分解為干涉儀主體和測量采集控制系統(tǒng)兩大模塊[14]。其中干涉儀主體由光學(xué)干涉模塊和光電傳感器組成,用以產(chǎn)生干涉條紋并獲取干涉信號。測量采集控制系統(tǒng)由數(shù)據(jù)采集模塊和運(yùn)動控制模塊構(gòu)成,其中運(yùn)動控制模塊用來控制參考臂S1、S2和樣品臂R、Z、X軸共5個軸的運(yùn)動。數(shù)據(jù)采集模塊對干涉信號、運(yùn)動位置進(jìn)行同步采集,并與上位機(jī)進(jìn)行通信。
圖4 白光干涉測量系統(tǒng)硬件布置
LabVIEW是一種運(yùn)用圖形化編程的程序開發(fā)語言,它具有智能化程度高、可操作性強(qiáng)、處理能力強(qiáng)等優(yōu)點(diǎn),并提供了針對多種應(yīng)用的數(shù)據(jù)采集(DAQ)、GPIB、串口、數(shù)據(jù)分析顯示以及Internet網(wǎng)絡(luò)通信的函數(shù)庫,而且方便調(diào)用Window以及用戶自定義的動態(tài)鏈接庫中的函數(shù)[15]。
此系統(tǒng)軟件是在LabVIEW community Edition 20.0.1 (32bit) 開發(fā)環(huán)境下進(jìn)行編寫的,在其基礎(chǔ)上利用Windows 提供的API函數(shù)、XPS控制器中.Net 控件、數(shù)據(jù)采集模塊SDK軟件二開發(fā)包Windows標(biāo)準(zhǔn)ActiveX接口、OpenCV計算機(jī)視覺庫以及OpenGL圖形工具庫完成了基于對話框交互式窗口上位機(jī)軟件的編寫。文中上位機(jī)軟件的開發(fā)采用面向?qū)ο蟮哪K化程序設(shè)計方法,如圖5所示。該軟件主要分為運(yùn)動控制模塊、掃描采樣及數(shù)據(jù)采集模塊和數(shù)據(jù)處理及結(jié)果顯示模塊三部分,每個子模塊可獨(dú)立運(yùn)行,各模塊也可以協(xié)同工作完成整個測試,具有關(guān)系獨(dú)立性好、數(shù)據(jù)安全性高等優(yōu)點(diǎn)。
圖5 系統(tǒng)軟件功能模塊組成
系統(tǒng)上位機(jī)軟件工作流程如圖6所示,它由系統(tǒng)初始化、硬件連接、運(yùn)動控制、數(shù)據(jù)采集分析、自動掃描、配置測試參數(shù)、顯示點(diǎn)云、輸出點(diǎn)云、斷開連接等步驟構(gòu)成。圖7展示了軟件測量界面(圖中為捕獲的干涉包絡(luò)),軟件前控制面板主要包括輸入和輸出功能,后程序面板主要為程序組成的連接模塊。
圖7 軟件測量界面
運(yùn)動控制是指將預(yù)定的控制方案和控制指令轉(zhuǎn)變?yōu)閷?yīng)位移臺運(yùn)動的功能,用來實(shí)現(xiàn)執(zhí)行機(jī)構(gòu)的精確位置、速度、加速度等參數(shù)的控制[16]。此系統(tǒng)含5個獨(dú)立運(yùn)動軸,軟件需要能夠?qū)崿F(xiàn)5個軸不同方位和不同速度的運(yùn)動以及同時控制多軸聯(lián)動的功能。
運(yùn)動控制模塊分為參考臂運(yùn)動控制與樣品臂運(yùn)動控制兩部分,參考臂部分所使用的控制器為Newport的XPS-D6型集成運(yùn)動控制器,最多可以同時實(shí)現(xiàn)6軸電機(jī)控制。插入對應(yīng)的兼容驅(qū)動程序卡,并通過.Net控件進(jìn)行二次開發(fā)。該模組內(nèi)置了串口通信與控制功能,在LabVIEW開發(fā)平臺上加載配置調(diào)用該控件的dll鏈接庫,并添加調(diào)用相應(yīng)的函數(shù)及屬性,即可靈活自主地完成參考臂運(yùn)動控制模塊的開發(fā)。樣品臂3個位移臺使用的是elmo系列的db36、gold dc bell兩類伺服驅(qū)動器,同時通過CAT5e網(wǎng)線以及交換機(jī)的實(shí)時以太網(wǎng)絡(luò)Ethercat通信協(xié)議連接至上位機(jī)上,以實(shí)現(xiàn)高效的實(shí)時控制。
本文作者開發(fā)的運(yùn)動控制模塊用到的主要命令有:(1) 串口通信類,用于控制器與上位機(jī)之間的通信連接;(2) 參數(shù)設(shè)置類,用于電機(jī)工作模式、使能狀態(tài)、導(dǎo)程、每轉(zhuǎn)脈沖數(shù)、加速度、急停減速度、速度等參數(shù)的設(shè)置;(3) 運(yùn)行指令類,用于控制工作軸的運(yùn)行、歸零、停止、插補(bǔ)點(diǎn)動、長動等動作;(4) 參數(shù)查詢類,用于速度、加速度、實(shí)時位置、電機(jī)使能狀態(tài)等參數(shù)的查詢。運(yùn)動控制模塊的操作界面如圖8、9所示。
圖8 參考臂運(yùn)動控制界面
圖9 樣品臂運(yùn)動控制界面
掃描采樣及數(shù)據(jù)采集模塊是白光干涉系統(tǒng)測量軟件中最核心的部分,其主要功能是上位機(jī)軟件控制數(shù)據(jù)采集儀(ECON億恒,MI-7008)以及運(yùn)動驅(qū)動器給下位機(jī)下達(dá)指令,實(shí)現(xiàn)多運(yùn)動軸的復(fù)合運(yùn)動,并且實(shí)時采集運(yùn)動中的干涉信號。
該模塊主要分為三部分:PZT運(yùn)動參數(shù)設(shè)置、垂直掃描控制、數(shù)據(jù)采集。軟件一方面監(jiān)測參考臂中PZT的運(yùn)動狀態(tài),保證其處于垂直掃描過程且測量不丟光,同時控制PZT運(yùn)動的速度及加速度來調(diào)節(jié)掃描速率;另一方面,完成對數(shù)據(jù)采集儀的初始化和參數(shù)設(shè)置,并實(shí)現(xiàn)對5路運(yùn)動軸的軌跡數(shù)據(jù)和干涉信號的同步采集。
根據(jù)雙光束干涉理論[17],滿足相干條件的兩束光可以形成穩(wěn)定的干涉條紋,對應(yīng)的光強(qiáng)值表示為
(1)
式中:I1和I2分別為參考光和測量光光強(qiáng);Rr(τd)為光源自相干函數(shù)的實(shí)部;τd為兩束干涉光間的時間延遲,由兩束光之間的光程差2z決定,τd=2z/c,其中c為光速。
光源的光譜強(qiáng)度分布可以表示為
(2)
其中:v為光頻率;v0為光源中心頻率;Δv為光譜半高全寬。由于光源自相干函數(shù)是光源光譜強(qiáng)度的傅里葉變換,所以光源自相干函數(shù)可以表示為
(3)
(4)
其中:g(z)為白光干涉信號的包絡(luò),包絡(luò)為高斯型。最后代入式(1)可得到寬譜光源干涉信號的簡化形式為
I(z)=Ibg[1+rg(z)cos(2πτdv0)]
(5)
(6)
進(jìn)一步可得s(t)的解析信號g(t)為
g(t)=s(t)+js′(t)
(7)
干涉信號經(jīng)希爾伯特變換后,在頻域各分量的幅度保持不變,但將出現(xiàn)90°相移。即對正頻率滯后π/2,對負(fù)頻率超前π/2。對上式取模長A(t)即可得到干涉包絡(luò)。
g(t)的幅值為
(8)
該相干峰解調(diào)算法直接進(jìn)行離散的卷積運(yùn)算,較使用傅里葉正反變換、小波變換等方法效率更高。圖10所示分別為此系統(tǒng)實(shí)測干涉包絡(luò)信號及通過相干峰值提取算法處理后的結(jié)果,可以發(fā)現(xiàn):希爾伯特變換后的波包存在噪聲、輪廓不清晰。因此本文作者進(jìn)一步設(shè)計了IIR低通濾波器[18]對信號進(jìn)行處理。濾波后曲線最大值對應(yīng)位置xv,去除濾波群時延后可得到實(shí)際等光程點(diǎn)位置xr。
圖10 干涉信號處理結(jié)果
以上經(jīng)掃描采樣及數(shù)據(jù)采集模塊獲取的干涉信號將傳輸給數(shù)據(jù)處理及顯示模塊,首先經(jīng)數(shù)據(jù)處理得到等光程點(diǎn),然后顯示測得的三維坐標(biāo)信息。圖11所示為上位機(jī)軟件對一個環(huán)規(guī)內(nèi)壁5個不同位置測量的顯示結(jié)果。
圖11 上位機(jī)軟件中測量點(diǎn)云散點(diǎn)圖
為驗(yàn)證文中白光干涉測量系統(tǒng)上位機(jī)軟件功能是否滿足設(shè)計要求,對一個標(biāo)稱內(nèi)徑為50.002 3 mm的環(huán)規(guī)進(jìn)行了測試。首先,打開上位機(jī)軟件并連接各運(yùn)動軸及數(shù)據(jù)采集儀;其次,復(fù)位所有運(yùn)動軸并進(jìn)行校準(zhǔn)零位;然后,微調(diào)X軸,將被測件移動至焦距附近;隨后,在軟件中設(shè)置掃描區(qū)域、采樣速率等測試參數(shù)并開始測量;最后,得到點(diǎn)云數(shù)據(jù),并調(diào)用PolyWorks擬合環(huán)規(guī)內(nèi)徑。擬合結(jié)果如圖12所示,此系統(tǒng)對該環(huán)規(guī)的測量直徑為50.006 2 mm,與標(biāo)稱值相比,誤差僅為3.9 μm,這證明了文中所開發(fā)的軟件及算法的有效性及精確性。另外,通過此系統(tǒng)測得的點(diǎn)云數(shù)據(jù),還可以得到環(huán)規(guī)內(nèi)表面的圓柱度等形位公差信息。
圖12 環(huán)規(guī)測量及擬合結(jié)果
基于白光干涉測量技術(shù),搭建了控制系統(tǒng)硬件結(jié)構(gòu),并基于LabVIEW開發(fā)了包含運(yùn)動控制模塊、掃描采樣及數(shù)據(jù)采集模塊和數(shù)據(jù)處理及結(jié)果顯示模塊的上位機(jī)軟件;通過對一個標(biāo)稱內(nèi)徑為50.002 3 mm環(huán)規(guī)的測試,驗(yàn)證了文中所開發(fā)的軟件及算法的有效性及精確性。