,
(貴州理工學院電氣與信息工程學院,貴州 貴陽 550003)
超聲波是一種在彈性的媒質中傳播的縱波,其頻率范圍則在20 kHz和大約1 GHz之間。超聲波頻率高,易匯聚成束定向傳播,具有較強的貫穿能力。市場上已有成熟的超聲波換能器產品。因為超聲波在介質中的傳播的速度與介質的特性和狀態等因素有關,接收到的超聲信號便攜帶了介質中待測參量的信息,所以可通過介質中的聲速測定了解媒質的特性或狀態變化[1]。比如可利用聲速測量氣體濃度[2-4]和地外空間探測[5]。
傳統的聲速測量方法有:共振干涉法、相位比較法等。這些方法所需要的儀器復雜,且實驗過程有人為誤差,往往不能滿足工程成本、便攜性和精度需求。所以,根據時差法[6]給出一種聲速測量的軟硬件實現方法。該方法利用了HC-SR04模塊的測距功能,測量空氣中固定距離的超聲波傳播時間,并通過測溫模塊獲得當前環境溫度,進而可實時精確獲取不同溫度下空氣中超聲傳播速度。
本文方法與傳統的共振干涉法、相位比較法等測量方法相比,具有結構簡單、方便攜帶、成本低、精度高等優勢。基于本方法設計的實驗裝置測量結果與6組不同溫度下空氣中聲速理論計算值[1]相比,相對誤差低于0.6%。
一般使用HC-SR04如圖1所示。作為超聲測量距離的模塊。HC-SR04的工作原理是,EM78P153單片機作為處理核心的觸發信號輸入端收到從C51單片機發出一個最小10 μs的高電平信號后,EM78P153發出40 kHz的方波,經過LMC6034IM運算放大,由超聲波探頭轉化為40 kHz聲波;聲波經過物體反射后被接收探頭接收,再由EM78P153處理后由回響信號輸出端發出一個高電平信號反饋給C51單片機,C51單片機就從發出高電平信號時開始計時,在收到高電平信號后結束計時,兩個信號之間的時間間隔就是超聲波的傳播時間。

圖1 HC-SR04測距模塊實物
HC-SR04測距模塊使用時差法測量出超聲波從發出到接收之間的傳播時間,然后再根據空氣中已知的聲速,通過計算得出障礙物與超聲波探頭的距離。
本文則通過程序修改,利用HC-SR04測距模塊,采用時差法實現不同溫度下的聲速測量。時差法測量聲速[6]的基本原理是通過測量已知距離的超聲傳播時間,計算得到超聲傳播速度。時差法的單片機實現思路是,在確定的距離之間,由控制電路定時發出一個聲脈沖波,經過一段距離的傳播后并且反射后到達超聲波接收換能器;接收到的信號經放大與濾波后由高精度計數器得出聲波從發出到接收這個在介質傳播中經過的時間,在根據程序算法從而計算出在某一介質中的傳播速度。因為時差法是基于儀器本身測量進行計算,避免了共振干涉法、相位比較法等需要人工目測所帶來的誤差,保證了其較高的測量精度。
時差法聲速測量的硬件設計主要包含AT89S52單片機、顯示模塊、溫度模塊、基于HC-SR04的超聲波收發模塊,如圖2所示。
AT89S52是ATMEL公司生產的一種低功耗、高性能CMOS 8位微控制器,內部具有8 k的系統可編程Flash存儲器。存儲器使用了Atmel 公司的高密度非易失性存儲器技術制造,保證了在斷電后芯片仍然能夠保持數據,具有高速、高密度、低功耗和抗輻射等優點,并且與MCU-51單片機產品指令與引腳完全兼容。顯示模塊選用了LCD1602,能夠同時顯示16×02即32個字符。溫度模塊選用了DALLAS公司推出的一線式數字溫度傳感器DS18B20。它將地址線、數據線、控制線合為一根雙向串行傳輸數據的信號線,具有體積小、硬件開銷低、抗干擾能力強、精度高等特點。

圖2 時差法聲速測量的硬件結構
時差法聲速測量的程序設計主要有主程序、單片機初始化子程序、顯示子程序、溫度子程序、中斷子程序、聲速計算函數子程序、超聲波發射子程序、超聲波接收子程序等構成。
主程序先對單片機系統初始化,設置計數器T0工作方式為方式1,然后發出溫度指令,控制DS18B20溫度傳感器,再由AT89S52單片機向HC-SR04模塊發出一個高電平信號,控制HC-SR04中的單片機發出40 kHz的信號,經過運算放大器放大后由超聲波探頭發出40 kHz的超聲波,在經過物體反射后由另一個超聲波探頭接收到超聲波信號。
超聲波信號被接收到后,HC-SR04內的單片機向AT89S52主控制器發出一個高電平信號,AT89S52主控制器在接收到高電平信號后,系統進入中斷,計數器T0停止計數,最后由計數器中的數據得出傳播時間。由于本設計是測量聲速,所以設置超聲波經過的距離是已知的,再按照公式c=S/T計算得到超聲波在空氣中的傳播速度。由于超聲波傳播速度中會因環境溫度的變化而發生改變,所以需要一個溫度傳感器,測量在當前時刻的溫度。LCD1602則將測量得到的聲速與環境溫度同時用顯示出來。
圖3是時差法聲速測量的程序設計流程圖,其中HC-SR04模塊信號流程圖如圖4所示。在整個程序設計中AT89S52單片機不僅負責對整個程序的控制,還控制HC-SR04模塊發出與接收超聲波,最后還要計算聲速與顯示聲速結果與溫度。HC-SR04模塊則在整個時差法測量聲速的模塊中起數據采集的作用。

圖3 超聲波測量聲速主程序

圖4 HC-SR04模塊信號流程
本次實驗采用的天祥電子出產的產品[7]:C51系列單片機實驗板、HC-SR04模塊和DS18B20溫度傳感器如圖5所示。

圖5 時差法聲速測量實驗裝置
在實驗中,測量了不同溫度下,障礙物與探頭之間不同距離時超聲波在空氣中的傳播速度,并與測量結果與理論計算值進行了比較。
理想氣體中聲傳播速度的理論計算公式為[1]:
(1)
對于空氣中的熱容比γ=1.402,標準大氣壓P0=1.013×105Pa。當溫度為0 ℃時,空氣密度ρ0=1.293 kg/m3,可根據(1)式計算得到溫度為0 ℃時,聲速c0(0 ℃)=331.6 m/s。
由于超聲波在空氣中傳播時受到環境溫度的影響, 當溫度為t℃時空氣中的理論聲速為[1]:

(2)
μ為氣體摩爾量,對于空氣μ=29×10-3kg/mol;R=8.31 J/K mol為氣體數。將c0(0 ℃)=331.6 m/s代入(2)式可得溫度為t℃時的理論聲速為:
c0(t℃)=331.6+0.6t(m/s)
(3)
表1記錄了當障礙物與超聲波探頭之間為6組不同距離時,不同溫度下實測得到的聲速與利用公式(3)計算得到的理論聲速的對比情況。圖5則展示了當環境溫度為25.1 ℃,障礙物與超聲波探頭之間的距離為10 cm時,所采用的實驗裝置實時測得的空氣中聲速為346.6 m/s。從表1中可以看到實測的聲速與理論聲速的最大相對誤差僅為0.6%,說明本文給出的時差法聲速測量的硬軟件設計是合理的。

表1 聲速測量實驗值與理論值[1]的對比
基于時差法原理,給出了一種基于HC-SR04測距模塊的聲速測量的實現硬件和程序設計。介紹了所包含的硬件模塊、HC-SR04模塊的信號處理流程、聲速測量的程序實現流程。通過所設計的實驗裝置,測量了不同已知距離下的超聲波傳播時間以及環境溫度,并通過LCD顯示屏實時展示所測得的聲速和對應的環境溫度。當障礙物與超聲波探頭之間距離分布在5 ~30 cm的6組不同時,實測得到的聲速與理論計算值的最大相對誤差僅為0.6%,從而證明了可利用本文方法精確獲得不同溫度時空氣中的超聲波傳播速度。本文方法不僅避免了實驗過程的人為誤差,還具有結構簡單、方便攜帶、成本低、精度高和實時顯示測量聲速等優勢。
[1] 杜功煥, 朱哲民, 龔秀芬. 聲學基礎[M]. 南京: 南京大學出版社, 2012.
[2] 張克聲, 陳劉奎, 歐衛華,等. 基于聲吸收譜峰值點的天然氣燃燒特性檢測理論[J]. 物理學報, 2015, 64(5):1-8.
[3] 朱明, 王殊, 王菽韜, 等. 基于混合氣體分子復合弛豫模型的一氧化碳氣體濃度檢測算法[J]. 物理學報, 2008, 57(9): 5749-5755.
[4] 單鳴雷, 王月慶, 朱昌平,等. 微量濃度二元混合氣體的超聲檢測研究[J]. 壓電與聲光, 2009(01): 129-131.
[5] ZARNECKI J C, LEESE M R, HATHI B, et. al. A soft solid surface on titan as revealed by the huygens surface science package[J]. Nature, 2005, 438(7069): 792-795.
[6] 徐磊, 王艷艷. 應用時差法測量聲速[J]. 大學物理實驗, 2006, 19(2): 48-50.
[7] 郭天祥. 51單片機C語言教程[M]. 北京:電子工業出版社, 2015.