檀世博,黃繼承,童 陽,歐藝文
(湖北工業(yè)大學(xué) 理學(xué)院,湖北 武漢 430068)
超聲波是一種頻率大于20 kHz的縱波型聲波,可在固、液、氣三態(tài)中傳播,具有波長短、方向性強(qiáng)、能量集中、反射能力強(qiáng)等優(yōu)點(diǎn)。超聲波傳播速度的測量在超聲波測距、液體液位測量、氣體溫度傳感以及流量監(jiān)測等方面發(fā)揮著愈來愈重要的作用,已成為主要檢測技術(shù)之一。通常測量超聲波聲速的方法有兩種,即駐波法和相位比較法[1-3]。這兩種方法相比于干涉和衍射法,具有操作簡單、易于實(shí)現(xiàn)的優(yōu)點(diǎn)。駐波法和相位比較法的原理在于利用壓電晶體的壓電效應(yīng)產(chǎn)生超聲波,通過控制超聲波在空氣中的傳播距離,分別觀察駐波波形和李薩如圖形,由其距離測得超聲波的聲速。因此,傳統(tǒng)的超聲波聲速測量的實(shí)驗(yàn)需要購置函數(shù)信號發(fā)生器、示波器以及聲速測量儀等硬件設(shè)備,使用成本高,參數(shù)的設(shè)置范圍受限于儀器本身,需要占用專門場地或?qū)嶒?yàn)室。此外,傳統(tǒng)實(shí)驗(yàn)法還存在易受環(huán)境噪聲和壓電晶體焦耳熱的干擾、實(shí)驗(yàn)數(shù)據(jù)需手動(dòng)記錄處理和測量速度慢等不足。
Matalb圖形用戶界面(GUI)是一種由窗口、按鍵、菜單、光標(biāo)和文字說明等組成的可視化計(jì)算機(jī)操作用戶界面,集數(shù)值分析和圖形顯示功能于一體。用戶編寫程序時(shí)只需編寫回調(diào)函數(shù),操作時(shí)不需要瀏覽煩冗的代碼,因此,Matlab GUI比C語言更簡單實(shí)用。采用Matlab GUI編寫實(shí)驗(yàn)所需的模擬軟件,使用成本低,依靠計(jì)算機(jī)等智能設(shè)備便可以實(shí)現(xiàn)。實(shí)驗(yàn)仿真軟件不僅直觀形象,可以幫助實(shí)驗(yàn)者更好地理解實(shí)驗(yàn)原理與實(shí)驗(yàn)內(nèi)容,而且可以使實(shí)驗(yàn)者不受實(shí)際條件限制,靈活修改實(shí)驗(yàn)參數(shù),隨時(shí)隨地做實(shí)驗(yàn),處理數(shù)據(jù)快捷精準(zhǔn),大大提高實(shí)驗(yàn)效率。MATLAB GUI還有一大優(yōu)點(diǎn)就是能編譯生成獨(dú)立的.exe應(yīng)用文件,用戶不需要安裝內(nèi)存龐大的MATLAB軟件就可以運(yùn)行程序。Matlab GUI已經(jīng)廣泛應(yīng)用于數(shù)字濾波器設(shè)計(jì)、圖像處理、光學(xué)系統(tǒng)設(shè)計(jì)和物理實(shí)驗(yàn)演示等方面[4-6]。
本文提出采用Matlab GUI實(shí)現(xiàn)超聲波聲速的仿真測量,為超聲波的聲速測量領(lǐng)域提供了一種使用成本低、簡便可行的方法。
由于超聲波的波長短,易于定向發(fā)射,所以用駐波法和相位比較法測量超聲波在空氣中的傳播速度比較方便。超聲波的產(chǎn)生與發(fā)射均由壓電晶體S1(超聲波發(fā)射器)的逆壓效應(yīng)(電致伸縮)來產(chǎn)生,而接收則由壓電晶體S2(超聲波接收器)的壓電效應(yīng)來實(shí)現(xiàn),如圖1所示。由波動(dòng)理論可知,聲波的傳播速度v與聲波頻率f和波長之間的關(guān)系為
v=fλ
(1)
因此只要測出聲波的頻率和波長,就可以求出聲速。其中聲波頻率可由產(chǎn)生聲波的信號發(fā)射器的頻率讀出,波長則可用駐波法和相位比較法進(jìn)行測量[7]。
駐波法又稱共振干涉法,其原理圖如圖1所示。
圖1 超聲波聲速測量實(shí)驗(yàn)原理圖
將低頻信號發(fā)生器輸出的正弦交變電信號加到壓電晶體S1上,S1將按正弦規(guī)律發(fā)生縱向伸縮,產(chǎn)生超聲波,并向周圍空氣定向發(fā)射近似平面波。壓電晶體S2作為超聲波接收器,在接收聲波信號的同時(shí)反射部分超聲波信號。如果接收面(S2)與發(fā)射面(S1)嚴(yán)格平行,入射波即在接收面上垂直反射。若不考慮超聲波在空氣中傳播的能量損失,則入射波與反射波分別可以表示為:
(2)
(3)
式(2)和(3)中,y1、y2為質(zhì)點(diǎn)振動(dòng)位移,T為振動(dòng)周期,A為振幅,λ為聲波波長。入射波和反射波相互干涉,當(dāng)發(fā)射面和發(fā)射面之間的距離正好等于半波長的整數(shù)倍時(shí),形成駐波,其表達(dá)式為:
(4)
由于壓電效應(yīng),接收器S2產(chǎn)生一個(gè)電信號。將此電信號輸入示波器y軸,可以觀察到駐波的波形。對于駐波而言,振幅極小的地方稱為波節(jié),振幅極大的地方稱為波腹。相鄰兩個(gè)極大值之間的距離始終為λ/2。S2的反射面處是位移的波節(jié)、聲壓的波腹。改變發(fā)射面和發(fā)射面之間的距離,在一系列特定的距離上,空氣中出現(xiàn)穩(wěn)定的駐波現(xiàn)象。此時(shí)距離等于半波長的整數(shù)倍,即
(5)
駐波的幅度達(dá)到極大。同時(shí)在接收面上的聲壓波腹也相應(yīng)地達(dá)到極大值,通過壓電轉(zhuǎn)換,產(chǎn)生的電信號的電壓值也最大(示波器顯示波形的幅值最大)。因此,若保持頻率不變,通過測量相鄰兩次接收信號達(dá)到極大值時(shí)接收面之間的距離,即可得到該波的波長,再用式(1)計(jì)算出聲速[7]。
波的傳播是振動(dòng)狀態(tài)的傳播,亦即相位的傳播。在波的傳播方向上,相位隨著傳播距離L不斷變化,但任意兩點(diǎn)間的相位差Δφ僅與距離有關(guān),滿足Δφ=2πL/λ。當(dāng)傳播距離是波長的整數(shù)倍時(shí),相位差恰好是2π的整數(shù)倍。也就是說,相位每變化2π一個(gè)周期,傳播距離正好變化一個(gè)波長λ。利用這個(gè)原理,可以精確地測量波長。相位比較法是通過觀察發(fā)射波和接收波的相位差測出傳播距離變化而獲得超聲波聲速的一種方法。超聲波發(fā)射器S1的發(fā)射波(入射波)輸入示波器的x軸,超聲波接收器S2的接收波(反射波)輸入示波器的y軸。入射波和反射波的頻率相同、振動(dòng)方向相互垂直,它們分別在示波器x軸和y軸偏轉(zhuǎn)極板處引起的振動(dòng)為
x=A1cos(ωt+φ1)
(6)
y=A2cos(ωt+φ2)
(7)
聯(lián)立式(6)和(7),消去時(shí)間t,便可得合振動(dòng)的軌跡方程
(8)
此即示波器上觀察到的李薩如圖形的表達(dá)式,可見一般情況下李薩如圖形是一個(gè)穩(wěn)定的橢圓。式(8)中φ2-φ1為入射波和反射波引起振動(dòng)之間的位相差Δφ,由S1和S2之間的距離決定,即Δφ=2πL/λ。當(dāng)兩者的相位差Δφ=2nπ (n=1,2,3,…),即兩個(gè)分振動(dòng)同相,由式(8)可得
(9)
這表明李薩如圖形為一斜率為正的直線,其斜率為兩個(gè)分振動(dòng)振幅之比。當(dāng)兩者的相位差Δφ=(2n+1)π(n=1,2,3,…)時(shí),即兩個(gè)分振動(dòng)反相,由式(8)可得
(10)
這表明李薩如圖形為一斜率為負(fù)的直線。顯然,當(dāng)連續(xù)出現(xiàn)斜率為正與斜率為負(fù)的直線時(shí),對應(yīng)的發(fā)射器與接收器之間距離的變化為半個(gè)波長,由此可以求得超聲波波長,從而可以求出聲速v=fλ,其中f為信號發(fā)射器的頻率。
超聲波聲速測量實(shí)驗(yàn)仿真軟件的登錄界面主要由兩個(gè)可編輯文本框“用戶名”“密碼”和“登錄”及“退出”兩個(gè)按鈕組成,如圖2所示?!坝脩裘焙汀懊艽a”的默認(rèn)設(shè)置分別為shiyan和123456。實(shí)驗(yàn)者將它們輸入對應(yīng)文本框,點(diǎn)擊“登錄”即可進(jìn)入實(shí)驗(yàn)主界面,點(diǎn)擊“退出”則退出主界面。另外,注意在“密碼”輸入框后面設(shè)有“顯示密碼”按鈕,方便實(shí)驗(yàn)者在無法正常登錄的情況下檢查輸入的密碼是否正確。
圖2 實(shí)驗(yàn)仿真軟件的登錄界面
超聲波聲速測量實(shí)驗(yàn)仿真軟件的實(shí)驗(yàn)主界面包含三個(gè)菜單選項(xiàng),即歡迎界面、實(shí)驗(yàn)內(nèi)容界面和實(shí)驗(yàn)小結(jié)界面。
2.2.1 歡迎界面制作
“歡迎界面”由五個(gè)靜態(tài)文本框構(gòu)成,用于展示實(shí)驗(yàn)名稱、制作團(tuán)隊(duì)成員和指導(dǎo)老師。
2.2.2 實(shí)驗(yàn)內(nèi)容界面的設(shè)計(jì)
實(shí)驗(yàn)內(nèi)容界面分為實(shí)驗(yàn)原理、視頻講解、駐波法測量實(shí)驗(yàn)和相位比較法測試實(shí)驗(yàn)四個(gè)模塊,如圖3所示。界面簡潔,清晰明了,實(shí)驗(yàn)者按順序操作后可了解實(shí)驗(yàn)的全部過程。
圖3 實(shí)驗(yàn)內(nèi)容界面
2.2.3 實(shí)驗(yàn)小結(jié)界面的設(shè)計(jì)
實(shí)驗(yàn)小結(jié)界面用于實(shí)驗(yàn)者記錄實(shí)驗(yàn)所得的結(jié)論,包括駐波法測量實(shí)驗(yàn)結(jié)果的總結(jié)和相位比較法測量的結(jié)論。另外,該界面也可以讓實(shí)驗(yàn)者進(jìn)行擴(kuò)展性實(shí)驗(yàn),研究系統(tǒng)測量誤差與信號發(fā)射器頻率和環(huán)境溫度的關(guān)系。
實(shí)驗(yàn)原理界面用于介紹駐波法和相位比較法測量超聲波聲速的原理,采用菜單編輯器制作成兩個(gè)菜單而成。分別點(diǎn)擊菜單選項(xiàng),便可以查閱聲速測量的原理,其主要內(nèi)容與文中第1部分的相似。
駐波法測量實(shí)驗(yàn)界面如圖4所示,分為圖形顯示、參數(shù)設(shè)置、數(shù)據(jù)記錄、數(shù)據(jù)處理和誤差分析五個(gè)模塊[1,2]。
界面左側(cè)為圖形顯示模塊,包含上下兩個(gè)圖形窗口和幫助“Help”按鈕。上面窗口用于顯示入射波與反射波的波形,下面窗口則用于顯示駐波圖像。實(shí)驗(yàn)界面的設(shè)計(jì)思路和步驟是:
(1)建立2個(gè)坐標(biāo)軸(Axes),分別用于顯示入射波、反射波波形和駐波圖像。
(2)添加1個(gè)按鈕(Push button)HELP,點(diǎn)擊“Help”按鈕可彈出一個(gè)文本框,內(nèi)有實(shí)驗(yàn)步驟和注意事項(xiàng)的簡單說明,幫助實(shí)驗(yàn)者正確操作和完成實(shí)驗(yàn)。
(3)建立4個(gè)面板(Panel),分別用作參數(shù)設(shè)置、數(shù)據(jù)處理、數(shù)據(jù)記錄和誤差分析模塊。
(4)參數(shù)設(shè)置模塊中建立8個(gè)靜態(tài)文本(Static Text),分別是信號發(fā)射頻率、發(fā)射器與接收器之間距離L、起止范圍、溫度、溫度單位℃;建立兩個(gè)滑條(Slider),用于改變信號發(fā)射頻率和距離L;建立1個(gè)可編輯編輯文本(Edit Text),用于輸入溫度。
(5)數(shù)據(jù)記錄模塊中建立一個(gè)列表框(listbox),用于存儲(chǔ)出現(xiàn)駐波時(shí)L的值;2個(gè)按鈕(Push button)分別是記錄和清零表格數(shù)據(jù)功能;
(6)數(shù)據(jù)處理模塊中建立1個(gè)按鈕(Push button)用于運(yùn)算;建立6個(gè)靜態(tài)文本(Static Text),分別是逐差法求波長λ、波長單位mm、波速v、速度單位m/s、“=”;建立2個(gè)坐標(biāo)軸(Axes)顯示計(jì)算公式;建立2個(gè)可編輯文本(Edit Text)顯示波長和波速。
(7)誤差分析模塊中建立1個(gè)按鈕(Push button),用于計(jì)算波速理論值和誤差百分比;建立6個(gè)靜態(tài)文本(Static Text),分別是波速理論值、速度單位m/s、誤差百分比、“%”“=”;2個(gè)可編輯文本(Edit Text),顯示理論波速和誤差百分比;建立2個(gè)坐標(biāo)軸(Axes)顯示計(jì)算公式。
相位比較法測量實(shí)驗(yàn)界面和駐波法的類似,也含有圖像顯示、參數(shù)設(shè)置和數(shù)據(jù)記錄五個(gè)部分,如圖5所示。
上面兩個(gè)圖形窗口顯示入射波與反射波,下面的圖形窗口顯示李薩如圖形,同樣可以設(shè)置發(fā)射頻率,更改發(fā)射接收距離,可以計(jì)算出波長和波速,還可以計(jì)算出理論波速和誤差百分比。
當(dāng)信號發(fā)射器的頻率為34.6 kHZ、室溫為25 ℃時(shí),調(diào)整超聲波發(fā)射器和接收器之間的距離L,可以觀察到入射波、反射波和駐波的圖像顯示窗口的一系列變化。當(dāng)L恰好為超聲波半波長的整數(shù)倍時(shí),反射波與入射波的波形完全重合,兩者相位相同,疊加發(fā)生相干干涉,形成如圖6所示的駐波??梢婑v波的極大值(波腹)是反射波與入射波幅值的兩倍。連續(xù)拖動(dòng)滑條,記錄出現(xiàn)12個(gè)連續(xù)駐波極大值所對應(yīng)的發(fā)射器和接收器之間距離。
圖6 形成的駐波波形
根據(jù)所得的數(shù)據(jù)計(jì)算出該條件下超聲波波長為10 mm,波速為波速346 m/s。由公式ν=fλ可知,當(dāng)室溫為25 ℃時(shí),理論波速為理論波速346.285 9 m/s,由此得到的實(shí)驗(yàn)誤差為0.082 56%。這說明駐波法測得的超聲波聲速的誤差很小,符合理論預(yù)期,實(shí)驗(yàn)軟件可靠性強(qiáng)。
設(shè)置實(shí)驗(yàn)信號發(fā)射器頻率為34.6 KHz、室溫為25 ℃。拖動(dòng)滑條改變超聲波發(fā)射器和接收器之間的距離L。當(dāng)調(diào)節(jié)L使得反射波與入射波對應(yīng)振動(dòng)的相位相同時(shí)(見圖7),說明兩振動(dòng)的相位差為2π的整數(shù)倍,合成后所得的李薩如圖形為一斜率為正的直線,如圖8所示。記錄此時(shí)的發(fā)射接收距離。繼續(xù)拖動(dòng)滑條,連續(xù)11次出現(xiàn)斜率為正與斜率為負(fù)的直線時(shí),記錄對應(yīng)的發(fā)射器與接收器之間的距離。根據(jù)所得的數(shù)據(jù)計(jì)算出該條件下超聲波的波長為10 mm,波速為346 m/s。由公式可知,當(dāng)室溫為25 ℃時(shí),理論波速為346.285 9 m/s,由此得到的實(shí)驗(yàn)誤差為0.082 566%??梢姴捎孟辔槐容^法測得的超聲波聲速與理論值吻合良好,測量精度高。
圖7 入射波和反射波引起的振動(dòng)
圖8 形成的李薩如圖像
在實(shí)驗(yàn)小結(jié)界面,當(dāng)設(shè)置環(huán)境溫度不變(如保持為20 ℃)時(shí),采用駐波法可獲得超聲波聲速誤差與信號發(fā)射頻率之間的關(guān)系曲線??芍`差隨著頻率的增大呈現(xiàn)出先減小后增大的變化趨勢;當(dāng)頻率為21.5 kHz時(shí),誤差為0。而當(dāng)使信號發(fā)射器的頻率一定時(shí),采用駐波法又可獲得超聲波聲速的誤差與溫度的關(guān)系曲線。實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),當(dāng)頻率設(shè)定為32~33.7 kHz范圍內(nèi)的某個(gè)頻率時(shí),誤差隨著溫度的增大而增大;當(dāng)頻率設(shè)定在33.8~35.4 kHz內(nèi)時(shí),誤差隨著溫度的增加先減小后增大;當(dāng)頻率在35.5~37.0 kHz區(qū)間內(nèi)時(shí),誤差隨著溫度的增加而減小。
本文采用Matlab GUI制作了一種用于超聲波聲速測量的實(shí)驗(yàn)仿真軟件。該軟件由登錄、歡迎、實(shí)驗(yàn)內(nèi)容和實(shí)驗(yàn)小結(jié)四個(gè)界面組成。仿真軟件分別運(yùn)用駐波法和相位比較法測量了超聲波在空氣中的傳播速度,對比理論計(jì)算值,獲得的相對誤差小于0.1%。此外,采用該軟件還研究了誤差與信號發(fā)射頻率和環(huán)境溫度之間的關(guān)系,獲得了一些可擴(kuò)展性的結(jié)論。實(shí)驗(yàn)結(jié)果表明,該仿真軟件不但功能齊全、使用成本低、占用內(nèi)存小、參數(shù)設(shè)置靈活可控和數(shù)據(jù)處理快捷精準(zhǔn),而且測量結(jié)果符合理論預(yù)期、可靠性強(qiáng)、直觀形象、界面友好、操作簡單,提高了實(shí)驗(yàn)者的實(shí)驗(yàn)興趣,加深了其對實(shí)驗(yàn)原理的理解。因此該仿真軟件為超聲波聲速測量提供了一種行之有效的技術(shù)與手段。