?

基于輕量級并行編程的微位移測量系統設計研究

2020-09-09 03:09閔帥博崔建軍嚴利平束紅林
計算機應用與軟件 2020年9期
關鍵詞:諧振腔干涉儀調頻

閔帥博 崔建軍 嚴利平 王 冬 束紅林 陳 愷

1(浙江理工大學納米測量技術實驗室 浙江 杭州 310018) 2(中國計量科學研究院 北京 100029) 3(天津大學精密儀器與光電子工程學院 天津 300072) 4(河南理工大學機械與動力工程學院 河南 焦作 454000)

0 引 言

在眾多微位移測量方法中,激光干涉測量以非接觸、分辨力高、測量速度快等優勢,廣泛應用于各類高精密位移傳感器、微位移測量裝置的標定校準工作中[1-2]。大多數商用的激光干涉儀都屬于邁克爾遜型激光干涉儀,其主要是基于激光功率信號進行測量的。在實際的微位移測量過程中,其光學器件的特性和安裝位置相對于最優位置的偏離都會引起額外的非線性誤差,而影響后期光強信號的計算準確度,一定程度上降低了邁克爾遜型激光干涉儀的測量精度[3]。

邁克爾遜型激光干涉儀的非線性誤差需要量值溯源到更高精度的計量標準上,才能用于常規的標定校準工作中。拍頻式法-珀激光干涉儀(Fabry-Perot Interferometer,簡稱F-P干涉儀)基于頻率信號測量,理論上不存在非線性誤差,可作為邁克爾遜型激光干涉儀非線性誤差量值溯源的上級計量標準。但是,F-P干涉儀由于自由光譜范圍的限制和周圍環境的干擾,在實際的計量過程中也存在測量范圍小,測量精度未達到理論效果的問題,國內外研究人員對F-P干涉儀存在的問題進行了諸多研究。

在擴展F-P干涉儀測量范圍方面:許婕等[4]提出了一種擴展F-P干涉儀測量范圍的方法——換模鎖定法,將F-P干涉儀的測量范圍擴大到1.1 μm,拓展了F-P干涉儀在大范圍進行納米位移測量的能力;崔建軍[5]綜合激光測頻、穩頻、鎖頻等多種頻率控制技術,提出了一種快速換模鎖相的測量方法,將F-P干涉儀的測量范圍擴展到36 μm,測量不確定度優于3.5 nm(k=2)。兩者的研究工作重點在于干涉儀的測量范圍的擴展,但是干涉儀自身測量精度并沒有得到顯著的提升。在提高F-P干涉儀測量精度方面,國外研究人員作出了突出貢獻。Lawall[6]在測量光路中加入聲光調制器件來改善F-P干涉儀中的頻率調諧性能,提高了F-P干涉儀的測量靈敏度,使得其測量不確定度達到10 pm;Joo等[7]使用角錐棱鏡對F-P諧振腔的機械結構進行有效改進,減小了F-P干涉儀自身裝調引入的誤差,提高了F-P干涉儀的測量精度。

現有的研究工作主要從光學原理和機械結構兩個方面著手,提升了F-P干涉儀的測量性能。但是,以F-P干涉儀為核心的微位移測量系統需要配合多種數據采集儀器才能得到有效的運作,各種儀器實時采集數據和過程同步控制的性能也決定了F-P干涉儀的實際測量精度。從系統控制和測控軟件設計方面對F-P干涉微位移測量系統進行優化,F-P干涉儀的測量精度可能有顯著提升。

在眾多計算機控制技術中,單片機控制技術在過程控制同步性要求高的場景下表現良好。FPGA控制技術常應用于并行算法實現和數字信號處理等系統實時性要求高的場景。當目標系統對控制同步性和采集實時性的要求都比較高時,傳統研究采取的解決方案主要是FPGA和單片機搭配使用。這種解決方案在實現基本的系統需求的同時,帶來了開發成本高,設計難度大等諸多問題。如果直接在上位機實現系統控制的同步性和數據采集的實時性,再結合上位機自身開發桌面應用程序的便利,則能夠在降低開發成本的同時,并保證系統各種需求的實現。

本文針對F-P干涉微位移測量系統中數據采集的實時性和過程控制的同步性需求,采用面向異構多核處理器的輕量級并行編程技術,在分析各種儀器的工作特性后,設計和實現頻率控制、微動臺控制、數據采集處理等多任務并行執行的測量控制軟件。在保證系統同步性的前提下,提升了F-P干涉測量速度,減少環境干擾對系統的作用時間。針對F-P干涉測量中光強峰值的穩定性要求,實現了一種有效的尋峰算法,提高了F-P干涉測量的精度。

1 微位移測量原理

F-P干涉儀主要是通過記錄鎖定在光強峰值上的頻率變化量來實現微位移的測量工作,在進行微位移測量系統設計前,需要對F-P干涉測量原理進行分析。

從氦氖氣體激光器中射出一束波長為λ的激光,經過平面反射鏡R1、R2兩次反射后,垂直入射到由平面玻璃板M1和角錐棱鏡M2組成的F-P諧振腔中,組成腔體的兩個平面需要保持嚴格平行,腔內側表面還鍍有反射率較大的薄膜。入射到F-P諧振腔的激光束,在F-P諧振腔中經過多次反射后產生多光束干涉效應。當相互干涉的激光之間積累的能量達到一定程度后,便可以從F-P諧振腔中再次透射出去,通過平面鏡R3反射后,垂直入射到光強探測器PD。理想情況下,在F-P諧振腔中的干涉激光束在同一個光學路徑上來回傳播。F-P干涉儀基本結構如圖1所示。

圖1 F-P干涉儀基本結構

當入射到F-P諧振腔中的激光波長λm與F-P諧振腔長度符合一定條件時,從F-P諧振腔中透射出的激光的功率強度可以達到極大值。透射激光的功率強度達到極大值的充分條件如下:

2nL=mλm

(1)

式中:n是空氣折射率;L是F-P諧振腔的幾何長度;m是很寬的光譜范圍內能使透射光強達到極大值的縱模序號;λm是真空中的激光波長。真空中激光的波長λ、頻率f和真空中光速c具有以下關系:

(2)

從F-P諧振腔透射出去的激光的功率強度達到極大值時對應的激光頻率,稱為F-P諧振腔的諧振頻率。由式(1)和式(2)推導出諧振頻率的計算公式為:

(3)

假設fm相鄰的能使透射光強達到極大值的激光頻率為fm+1,則這兩種激光的頻率差為:

(4)

當F-P諧振腔的長度確定時,相鄰兩個縱模頻率差值固定不變,該頻率差值就是F-P諧振腔對應的自由光譜范圍,后文用fFSR表示。

從式(4)可以看出,F-P諧振腔的單個自由光譜范圍fFSR對應一個法布里珀羅干涉整周期,利用這種特性可以使用F-P干涉儀來測量長度、位移、應變等物理量。

在使用F-P干涉儀測量位移量時,一般使用波長為633 nm的激光光源,并且F-P諧振腔長度可調。在本文中,F-P諧振腔采用折疊腔結構,平面板位置固定不變,角錐棱鏡位置可調。當角錐棱鏡移動ΔL時,F-P諧振腔的光學長度改變2ΔL,由式(1)-式(4)可以得出F-P干涉測量位移的計算公式:

(5)

式中:ΔL表示平面玻璃板移動過程中的透射光強峰值變化次數;k為諧振腔結構常數。本文采用折疊腔結構,結構常數k為2。

法-珀干涉微位移測量系統在實際測量過程中,只有透射激光功率強度穩定在峰值附近時,光強探測器收集的拍頻變化信號才能和待測位移量具有良好的對應關系。頻率的實時采集、激光功率強度的掃描和峰值識別工作在整個過程中變得十分關鍵,在測控軟件中對于這些工作的實現也變得很重要。

2 系統設計

2.1 系統結構分析

法-珀干涉微位移測量系統主要包括光學機械模塊、硬件模塊,軟件模塊三部分。其中:硬件模塊主要負責光學物理信號的感知和系統控制的底層支持工作;軟件模塊負責硬件通信、機械控制和測量數據的處理分析等工作。法-珀干涉測量系統的總體結構如圖2所示。

圖2 法-珀干涉測量系統的總體結構

該系統中測量硬件是測量軟件實現復雜功能的底層基礎。測量硬件向下負責光學系統的信息采集和機械系統的過程控制,其組成部分如表1所示。

表1 測量硬件工作描述

測量硬件向上和測量軟件進行測量數據的交互工作。測量硬件設備具有多種數據通信總線,包括常見的串口通信(RS232)、USB、GPIB等,每種硬件設備和計算機通信時都有自己特定的控制模式。法-珀干涉測量系統中的測控軟件按照系統功能需求劃分的模塊如表2所示。

表2 測量軟件功能描述

在微位移測控系統中,測量硬件的多樣性和測量原理的專用性也對測量軟件的設計提出了高要求。在數據采集上,透射光強尋峰操作需要連續記錄頻率值和光強信號等多種流數據,要求測控系統具有良好的實時性。在過程控制上,微動臺需要進行多種模式的移動操作,并在微動臺每次完成移動并穩定停止后,才能進行有效的數據采集處理和數據分析,要求測控系統在兼顧實時性的前提下,也要保證系統在測量過程中的同步性。

2.2 測量軟件設計

法-珀干涉測量系統的測控軟件主要在Windows XP系統上運行,考慮到開發功能的多樣性和軟件的兼容性等多種因素,采用成熟的Visual Studio 2010作為開發工具,選用穩定的.NET Framework 4.0作為基礎開發框架。

2.2.1測量硬件通信

測量軟件需要針對測量系統中不同的測量硬件進行合適的通信實現。頻率計和微動臺控制器是獨立于計算機之外的硬件,有自己專用的通信協議和通信指令,具有一定的運算能力,而電壓輸出模塊和數據采集卡則是屬于功能擴展型硬件,不能獨立于計算機使用。C#語言開發的應用程序是基于.NET Frameworks運行的,與測量硬件通信的基本流程邏輯如圖3所示。

圖3 軟硬件通信活動圖

由圖3可知,測量系統軟硬件之間的每次通信都需要經歷.NET Freamworks平臺、操作系統,最終到達硬件設備。硬件設備識別儀器命令后,做出相應操作,并將反饋信息再發送回應用程序。如果使用單線程串行的方式和儀器進行通信,在同一時刻只能通信一個儀器。在同時通信多個儀器的情況下,會出現同一時刻采集的不同信號對應時間延遲太大。在之后的光強尋峰操作過程中,這種時間延遲會大大影響尋峰效果。輕量級并行技術則是基于任務編程模型的線程池技術進行程序的并行化設計,能使多種任務并行執行,充分發揮多核CPU的性能。將 F-P測控系統和輕量級并行技術進行結合可以解決系統中多種儀器的并行采集問題。

2.2.2多任務并行化設計

.NET Framework 4.0針對多核異構微處理器設計了全新的輕量級并行技術,相對于傳統的面向線程的重量級并行模型,這種面向任務的輕量級并行技術減少了對線程的管理和調度成本,使開發人員更加關注于程序中各種任務的調度分配[8]。

法-珀干涉測量系統中多種任務之間的合理調度是影響程序實際運行性能的關鍵因素,也是多任務并行設計中主要考慮的問題。多任務調度問題一般使用任務模型和處理器模型來進行描述[9-10]。

系統中任務的特性和任務之間的約束依賴關系一般使用任務模型來描述。任務模型主要采用圖論中的有向無環圖(DAG)模型進行分析。在有向無環圖模型中,一個元組G={T,E}表示一個有向無環圖。其中:T={t1,t2,…,ti,…,tn},ti表示編號為i的任務。若ti和tj之間存在有向邊,則該有向邊的數學表示為(ti,tj)∈E。該有向邊說明ti和tj之間存在先后的約束關系,設ei=(ti,tj),則E={e1,e2,…,ei,…,em}。

微處理器核的處理能力和核間關系一般使用處理器模型表示。處理器核能夠使用多種方式進行互聯通信[11-14],任意兩個核可直接通信,屬于完全圖的拓撲結構。設第j個處理器核為pj,則設處理器核的集合為P={p1,p2,…,pj,…,pk},其通信速率矩陣可表示為:

(6)

Vij(1≤i≤k,1≤j≤k)為第i個處理器核與第j個處理器核之間的通信效率。當Vii→∞,即同一個處理器核之間通信速率視為無窮大。在計算調度時,通常認為通信開銷等于通信量與響應通信速率之間的比值。

法-珀干涉測量系統按功能需求劃分了12個調度任務,假設調度平臺上有3個異構核(p1,p2,p3),由于相同任務在不同核處理時間不同,產生了任務節點計算開銷矩陣,如表3所示。

表3 任務節點計算開銷矩陣

有向無環圖表示多任務之間的關系,如圖4所示。

圖4 多任務有向無環圖

每個節點代表一個待執行的任務,箭頭則表示任務間的約束及依賴關系,箭頭上的數字則代表了任務切換的通信開銷。其中:導軌控制任務t2必須要先于拍頻信號采集任務t3、光強信號采集任務t4、導軌位置采集任務t5,t2執行,這樣才不會采集到無用數據。若任務t1由異構處理器p1切換到t6,其通信開銷則為8。

由于(t1,t2)、(t3,t4)、(t4,t5)、(t5,t6)、(t7,t8)、(t9,t10)、(t10,t11)、(t11,t12)之間不存在依賴或者約束關系,在測控軟件中可以將所有任務劃分為4個并行任務組,分別是、、、。同一并行任務組內的任務可以并行執行。相鄰并行任務組之間的任務具有一定的依賴和約束關系,在測控軟件中需要同步執行?;谝陨戏治?,在測控軟件使用輕量級并行技術進行了相應的實現。

2.2.3尋峰算法設計

在法布里珀羅干涉測量系統中,對透射光強峰值的尋找工作是后續位移解調操作的關鍵。光強尋峰工作比測量系統中的其他操作都要耗時,很容易造成程序卡頓甚至崩潰?;谳p量級并行技術實現的尋峰算法可以在保證前端UI界面運行流暢的前提下,又能在后端進行高速運算。在應用輕量級并行技術后,光強尋峰操作的數據采集任務被分離成獨立的并行任務,現有的尋峰算法主要負責峰值鑒別和回峰調頻補償工作。

針對光強尋峰問題進行合理的描述如下。法-珀干涉透射光的強度信號為IT,其經驗公式為:

(7)

式中:I0為諧振腔中反射光和透射光的強度之和;δ為位相差;R為諧振腔內側的反射率。透射光強IT和位相差δ之間存在以下關系:

(8)

測量系統產生的拍頻信號為β,用于頻率掃描的調頻電壓為γ。當調頻電壓變化Δγ時,拍頻信號變化為Δβ,透射光強信號變化一個完整的周期,此時對應的位移量為ΔL。在保證導軌靜止不動的前提下,通過調頻的方式使得光強始終保持在峰值附近。尋峰算法的步驟如下:

(1) 數據預采集。從電壓輸出模塊中輸出的調頻電壓初始化為0 mV,預采集m個光強電壓值和DA調頻電壓值,記錄在數據隊列中,作為后續尋峰操作的初始數據。

(2) 調頻掃描。設當前透射光強為Ii,當前調頻電壓為γi,對調頻電壓的輸出規則服從以下關系:

(9)

對當前透射光強進行強度評測,設置合理的調頻電壓增量來進行后續的頻率掃描動作,并采集掃描過程中的透射光強,將最新的光強值放進數據隊列的隊頭,舍棄數據隊列的隊尾數據。

(3) 透射光強數據預處理。設采集到的透射光強值數據集合為{I1,I2,…,In},遍歷數據集合找出最大光強值Imax,再對采集到的光強數據進行一階前向差分運算,運算公式如下:

ΔIi=Ii-Ii-1i=1,2,…,n

(10)

(4) 透射光強峰值鑒別。由于環境的干擾,光強值為Imax的數據點可能有n個。設置一個大小為ω的檢測窗口,ω=m/5,分別將每個光強值為Imax的數據點放置在檢測窗口中心位置,作為參考數據點,將窗口內的其他數據點和該數據點進行比較,當所有數據點都小于該點,則視該點為光強峰值點Ipeak。光強峰值鑒別規則如下:

(11)

式中:i

(5) 回峰調頻補償。由于光強峰值的尋找一般是在光強經過峰值后才能鑒別。在找到光強峰值后,需要調節激光頻率,使得透射回退到最近的峰值位置。在回峰調頻補償過程中,考慮到回峰的準確度,一般采用小步進調頻電壓將光強調回峰值附近。

根據尋峰算法思想在測量軟件中對其進行了實現,主要應用在每次微動臺完成指定位移后,開啟尋峰任務,進行頻率掃描操作,尋找到光強峰值,并將透射光強值重新恢復到峰值狀態。在光強峰值鑒別過程中,需要根據實際情況調整光強峰值的檢測窗口大小,從而在準確找到光強峰值的前提下,盡量減小運算工作量。經過多次測試后,分析窗口大小為數據序列的十分之一時,能夠較好地滿足要求。

3 實驗驗證和分析

為了測試使用輕量級并行任務設計后測控程序的性能,本文對基于輕量級并行任務的尋峰算法進行評估,并與采用串行技術、常規并行技術實現的測控程序進行對比來評估程序實際的優化效果。

3.1 并行性能分析

測控軟件想要充分發揮異構多核處理器的優勢,在更短時間內運行更多的指令,就需要將代碼分解為并行的序列[15-16]。但是,完全的并行化設計是不存在的,對于程序的并行化優化性能需要通過加速比(多處理系統的最大理論性能提升)來進行有效的評估。

在F-P干涉測量軟件設計中,使用工作單元來衡量任務的大小,每個工作單元耗時10 ms。頻率控制任務和導軌移動控制任務使用的工作單元數分別是10個、20個;拍頻信號、光強信號、導軌位置和調頻電壓采集任務分別使用10個、5個、10個、10個;拍頻信號去噪、光強信號去噪任務分別使用20個工作單元;光強尋峰任務單次使用200個工作單元;位移解調任務單次使用70個工作單元;數據顯示任務單次使用10個工作單元;數據存儲單次任務使用30個工作單元。當所有任務都是串行執行時,理論上單次執行用時4 150 ms。F-P干涉測量軟件對任務進行并行化設計后的理論耗時為200+100+200+2 000=2 500 ms。

為了評測改進后的計算系統能夠提升的最大性能,著名計算機架構師Gene Amdahl提出一種性能評測公式——Amdahl公式。該公式可以應用于運行在異構多核微處理器上的并行算法性能評估[17]。Amdahl公式的數學表達式如下:

(12)

式中:η表示能夠完全并行運行的代碼比例;N表示可用的計算單元數(處理器或者物理內核數),本文使用了2核處理器。在F-P干涉測量軟件設計的任務中,有290個工作單元能夠完全并行運行,總工作單元個數為415,則η約為69%。F-P干涉測量并行化任務設計的加速比為1.52。

3.2 并行性能測試

為了評估F-P測控軟件在應用任務化設計和輕量級并行編程技術之后的工作性能,分別從程序界面流暢性和單次尋峰運行時間兩個方面進行性能測試。

界面的流暢性能夠反映程序各任務之間的協調同步設計的實際效果,主要通過與單線程、傳統多線程技術實現的測控程序進行對比,對比結果如表4所示。

表4 界面流暢性能對比

尋峰算法的運行時間反映出使用并行化任務設計后系統的運行效率,這里同樣和單線程、傳統多線程技術實現的尋峰算法進行對比,對比結果如表5所示。

表5 運行性能對比

3.3 尋峰算法性能測試

在F-P干涉測量中,透射光強峰值的尋找和穩定是進行后續測量的先提條件。從上文的并行性能測試中可以看出,在使用輕量級并行任務技術之前,程序在運行尋峰算法后會變得界面卡頓,運行時間過長,導致尋峰的效果并不理想。在將程序進行并行化優化后,加入尋峰算法并沒有影響界面的流暢性,并大大降低了尋峰時間,提高尋峰操作的效果。

尋峰算法性能評估的兩個重要的指標分別是尋峰準確度和穩定性。在對頻率掃描功能進行多周期測試時,使用測控軟件產生20 mV增量的三角波進行連續的掃頻操作。圖5為軟件采集到的光強信號和調頻電壓信號。經過必要的數據分析后,可以得出從F-P諧振腔中透射出的激光強度變化一個干涉整周期時對應的DA調頻電壓約為2 200 mV。

圖5 三角波掃頻時的光強信號

在對測控軟件進行有效的頻率掃描功能測試后,可以看出頻率掃描的效果比較理想,初步得到了調頻電壓的工作范圍。

光強尋峰功能涉及對透射光強信號的分析,該功能的測試重點在于光強信號的識別準確性。使用測控軟件中實現的尋峰算法來對透射光強信號進行分析,識別出光強峰值,并自動移至光強峰值處。圖6為單次光強尋峰過程的跟蹤數據。

圖6 單次光強尋峰過程圖

可以看出,測控程序能夠在透射光強從峰值越過后,有效地識別出光強峰值,并自動回調激光強度到峰值附近。

為了測試尋峰算法的穩定性,使用測控軟件進行50次連續的尋峰操作,通過均值濾波操作得到參考光強峰值。圖7為50次連續尋峰操作的數據。

圖7 尋峰效果穩定性測試

可以看出,尋峰算法在50次測試中的全局誤差保持在6 mV左右,而局部誤差保持在2~3 mV之間,能夠滿足自動光強尋峰的功能需求。通過連續的尋峰操作,將光強始終保持在峰值附近,軟件記錄此時的拍頻信號變化值,從而解調出對應的位移變化值。

4 結 語

本文從系統控制和測控軟件設計著手,對拍頻式F-P激光干涉儀的測量性能和穩定性進行研究。通過對系統中各種儀器特性的分析和任務調度的合理設計,在輕量級并行技術的基礎上對測控軟件進行了優化。優化后的測控系統軟件比傳統單線程和多線程技術在運行效率和數據采集速度得到顯著提升,尋峰算法在50次尋峰過程中的全局誤差保持在6 mV左右,局部誤差保持在2~3 mV,該算法可以為后續位移解調的光強峰值提供良好的穩定性能。

猜你喜歡
諧振腔干涉儀調頻
用于微波干燥的矩形和圓柱形諧振腔仿真分析
離子注入機直線加速器原理
基于改進的邁克爾遜干涉儀對熱變形特性的研究
考慮頻率二次跌落抑制的風火聯合一次調頻控制
異地調頻主備發射自動切換的思考與實踐
非對稱干涉儀技術及工程實現
大光程差高魯棒性擺臂角鏡干涉儀設計與實現
調頻發射機常見問題與對策研究
基于最優模糊的均勻圓陣干涉儀測向算法
LTCC多級結構實現高性能微型帶通濾波器的研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合