科學家們將每秒鐘振動的次數(shù)稱為聲音的頻率,,它的單位是赫茲。我們?nèi)祟惗淠苈牭降穆暡l率為20~20000Hz,。當聲波的振動頻率大于20KHz或小于20Hz時,,我們便聽不見了。因此,,我們把頻率高于20000赫茲的聲波稱為“超聲波”,。
1.超聲波測距原理
超聲波是指頻率高于20KHz 的機械波,。為了以超聲波作為檢測手段,必須產(chǎn)生超聲波和接收超聲波,,完成這種功能的裝置稱為超聲波傳感器,。超聲波傳感器有發(fā)送器和接收器,有的也可具有發(fā)送和接收聲波的雙重作用,。根據(jù)超聲波的產(chǎn)生方式,,超聲波傳感器可分為兩大類:一類是電氣式,如壓電式,、磁致伸縮式和電動式等,;一類是機械式,如加爾統(tǒng)笛,、液哨等,。目前常用的是壓電式超聲波傳感器。它利用壓電效應的原理將電能和超聲波相互轉(zhuǎn)化,,即發(fā)射超聲波時,,將電能轉(zhuǎn)換為超聲波發(fā)射出去;在收到回波時,,將超聲振動轉(zhuǎn)換成電信號,。
超聲波測距的原理一般采用時間差法,即測出超聲波從發(fā)射到遇到障礙物返回所經(jīng)歷的時間,,再乘以超聲波的速度就得到二倍的聲源與障礙物之間的距離,,即:
式中,D—傳感器與障礙物之間的距離,;c—聲波在介質(zhì)中的傳輸速度。
由于超聲波易于定向發(fā)射,、方向性好,、強度易控制、與被測物體不需直接接觸,,故超聲波傳感器廣泛地應用于液體高度測量,、汽車倒車等方面。為了提高測量精度,,減小誤差,,根據(jù)公式(1)可知,測距誤差由傳播速度誤差和傳播時間誤差引起,。
當傳播速度準確時,,傳播時間差值精度只要達到微秒級,就可保證測距誤差小于1mm,。設計中,,可采用12MHz 晶體作時鐘的基準,,單片機定時器的計數(shù)精度可達1us,從而保證測量精度,。
傳播速度受空氣密度的影響,,空氣密度越高,傳播速度越快,,而空氣密度與溫度有密切關系,。在理想氣體中聲波的傳播速度c 為:
式中,γ—氣體定壓比熱容與定容比熱容之比,;R—氣體常數(shù),;M—氣體分子量;T—絕對溫度,。
若溫度變化不大,,則可認為聲速基本不變,其值為340m/s,。若測距精度要求較高,,為減小溫度變化對聲速產(chǎn)生的影響,在設計中,,應增加溫度傳感器來監(jiān)測環(huán)境溫度,,進行實時溫度補償,近似公式為:
式中,,c0—零度時的聲波速度332m/s,; T—實際溫度(℃)。
2.測距報警系統(tǒng)設計
2.1 硬件設計
電路原理圖如圖1 所示,。采用PIC16F73 單片機作為主控制器,,實現(xiàn)對CX20106 紅外接收芯片(紅外常用的載波頻率38KHz 與測距超聲波頻率40KHz 較為接近) 和TCT40 系列超聲波轉(zhuǎn)換模塊的控制。單片機通過端口RB1 控制超聲波的發(fā)送,,然后單片機不停地檢測中斷端口RB0/INT,,當端口RB0/INT 的電平由高電平變?yōu)榈碗娖綍r,系統(tǒng)認為超聲波已返回,。計數(shù)器所計數(shù)據(jù)即為超聲波所經(jīng)歷的時間,,通過換算可得到傳感器與障礙物之間的距離。超聲信號的驅(qū)動由單片機定時器完成,,LED 數(shù)字顯示采用動靜態(tài)驅(qū)動相結(jié)合的方法實現(xiàn),,報警模塊采用簡單的聲光報警電路。
圖1 測距報警系統(tǒng)電路原理圖
系統(tǒng)利用單片機的定時器功能產(chǎn)生40KHz 脈沖信號,, 并通過端口RB1 輸出到超聲波發(fā)射部分,。超聲波發(fā)射電路中, 六反相緩沖器CD4049 包括6個非門,,現(xiàn)僅使用3 個,,為防止干擾或被靜電擊穿導致整個CD4049 損壞,,把未使用的3 個非門串起來做接地處理。當控制端輸出一系列固定頻率脈沖時,,在超聲波發(fā)射器TCT40-1F 上就以固定的頻率加正電壓和反電壓,,從而發(fā)出大功率的超聲波。這種以軟件方式產(chǎn)生的波形較用其他方式產(chǎn)生的效果更理想,。
3位LED數(shù)碼顯示采用顯示器動靜態(tài)驅(qū)動相結(jié)合的方法實現(xiàn),。采用單片機串行口通過74HC164 串入并出移位寄存器來輸出LED 的段驅(qū)動信號,每個LED 的段信號都連在一起,,并與74HC164 輸出的段驅(qū)動信號連接,。每個LED 的位驅(qū)動信號由單片機的端口RB5~RB7 通過ULN2004 驅(qū)動集成塊分別驅(qū)動,LED 需用共陰數(shù)碼管,。
報警模塊的功能是,, 當傳感器與障礙物的距離不小于設定值時,綠色指示燈閃亮,;反之,,紅色指示燈閃亮,蜂鳴器發(fā)聲,,提示人員注意安全距離,。
2.2 軟件設計
軟件分為兩部分:主程序和中斷服務程序,流程圖如圖2 所示,。主程序完成初始化工作及超聲波發(fā)射和接收控制,。中斷服務程序包括定時中斷服務子程序和外部中斷服務子程序,分別完成超聲波的發(fā)射,、距離計算及顯示報警等工作,。
圖2 測距報警系統(tǒng)程序流程圖
3.測試結(jié)果
當距離大于2m 時,綠燈閃亮,,顯示距離,;當距離小于1m 時,紅燈閃亮,,由端口RB2 驅(qū)動蜂鳴器報警,,顯示距離,;當距離介于2m 和1m之間時,,紅燈閃亮,顯示距離,。為提高抗干擾能力,,系統(tǒng)連續(xù)發(fā)射超聲波,測量三次,,從中剔除最大最小值,,取中間值計算出距離,。
4.結(jié)語
此系統(tǒng)較好地實現(xiàn)了測距及報警功能,可用于汽車倒車,、液位監(jiān)控等場合,,而且測量簡單、經(jīng)濟,、可靠,。