摘要:為了克服一些傳統(tǒng)距離測量方式在某些特殊場合無法測量的缺陷,設(shè)計以P89LPC932為核心,利用超聲波傳感器實現(xiàn)了無接觸式空氣測距的方法,充分考慮聲速與溫度的密切關(guān)系,進(jìn)行溫度補償,進(jìn)一步獲得測距最遠(yuǎn)700 cm左右,精度最優(yōu)達(dá)到1%。該設(shè)計具有較強的抗干擾能力,安裝簡單,體積小,功耗低,便于嵌入其他系統(tǒng)的特點。
關(guān)鍵詞:P89LPC932;超聲波;測距儀;無接觸式空氣測距
0 引言
一些傳統(tǒng)的距離測量方式在某些特殊場合存在不可克服的缺陷。例如,液面測量就是一種距離測量,傳統(tǒng)的電極法是采用差位分布電極,通過給電或脈沖來檢測液面,電極長時間浸泡于水中或其他液體中,極易被腐蝕、電解,失去靈敏性。利用超聲波測量距離可以解決這些問題,因此超聲波測量距離技術(shù)在工業(yè)控制、勘探測量、機器人定位和安全防范等領(lǐng)域得到了廣泛應(yīng)用。所謂超聲波是指頻率高于20 kHz的機械波,具有強度大、方向性好等特點。其一般由壓電效應(yīng)或磁致伸縮效應(yīng)產(chǎn)生。
本文設(shè)計的超聲波測距儀用三種測距模式選擇跳線J1(短距、中距、可調(diào)距)。其整體方案為當(dāng)按下測量鍵,探頭就發(fā)送超聲波,當(dāng)超聲波遇到障礙物時將產(chǎn)生回波信號;系統(tǒng)將探頭接收到的回波信號放大送入控制器;溫度測量電路測出溫度,通過計算得到所測距離,顯示在數(shù)碼顯示器上,后4位顯示距離,前2位顯示溫度。
1 超聲波測距儀基本原理
利用超聲波測量距離的原理如圖1示所示,簡單描述為:定期發(fā)送的超聲波遭遇到障礙物時發(fā)生反射,反射波經(jīng)由接收器接收并轉(zhuǎn)化為電信號,這樣只要測出發(fā)送和接收的時間差△t,然后按照式(1)即可求出距離:
式中:C為超聲波在空氣中的傳播速度,0℃時C為331 m/s,25℃時C為347 m/s,其與環(huán)境溫度T(單位:℃)的關(guān)系如式(2):
由此可見,聲速與溫度有密切關(guān)系。在應(yīng)用中,如果溫度變化不大,并且無特殊精度要求,可認(rèn)為聲速是基本不變的,否則,必須進(jìn)行溫度補償。溫度補償方法為每次先按照式(2)計算當(dāng)時聲速C,然后再按照式(1)計算距離。
另外,從圖1還可以看出,由于超聲波利用接收反射波來進(jìn)行距離的計算,因而不可避免地存在發(fā)射與反射之間的夾角,其大小為2a。當(dāng)a很小時,可直接按式(1)進(jìn)行計算得到距離;當(dāng)a較大時,則必須進(jìn)行距離修正,修正公式如式(3):
2 系統(tǒng)硬件
超聲波測距儀主要包括:溫度檢測電路,超聲波發(fā)射及控制電路,超聲波接收及信號處理電路,顯示電路,微處理和其輔助電路以及RS 232通信接口電路,其結(jié)構(gòu)框圖如圖2所示。
2.1 超聲波發(fā)射及控制電路
超聲波探頭的型號選用CSB40T,利用軟件產(chǎn)生40 kHz的超聲波信號,通過輸出引腳輸入至驅(qū)動器,經(jīng)驅(qū)動器驅(qū)動后推動探頭產(chǎn)生超聲波,如圖3所示。從圖中可看出,40 kHz超聲波信號是利用555時基電路震蕩產(chǎn)生的。震蕩頻率計算式如下:
將R10設(shè)計為可調(diào)電阻的目的是為了調(diào)節(jié)信號頻率,使之與換能器的40 kHz固有頻率一致。為保證555時基具有足夠的驅(qū)動能力,宜采用+12 V電源。CNT為超聲波發(fā)射控制信號,由微處理器進(jìn)行控制。
2.2 超聲波接收器的設(shè)計
超聲波接收器包括超聲波接收探頭、信號放大電路及波形變換電路三部分。超聲波探頭必須采用與發(fā)射探頭對應(yīng)的型號,這里采用CSB 40R。由于經(jīng)探頭變換后的正弦波電信號非常弱,因此必須經(jīng)放大電路放大。正弦波信號不能直接被微處理器接收,因此必須進(jìn)行波形變化。如圖4所示,前級采用NE5532構(gòu)成10 000倍放大器,對接收信號進(jìn)行放大;后級采用LM311比較器對接收信號進(jìn)行調(diào)整,LM311的3管腳的輸入為比較電壓,可由J1跳線選擇不同的比較電壓以選擇不同的測距模式,如圖5所示。
模組提供了測距模式選擇跳線J1,可以選擇短距測量模式、中距測量模式或距離可調(diào)模式。跳線選擇LOW時為近距測量模式,選擇HIGH時為中距測量模式;選擇SET時為距離可調(diào)模式。
2.3 溫度測量電路
當(dāng)環(huán)境溫度變化時,超聲波波速會隨之變化,所以要進(jìn)行修正。因而系統(tǒng)中設(shè)置了一個溫度檢測電路,實時采集溫度,對波速進(jìn)行修正。測溫電路使用的傳感器為DS1820,如圖6所示。具有9,10,11,12位轉(zhuǎn)換精度,未編程時默認(rèn)精度為12位,測量誤差一般為0.5℃,軟件處理后可達(dá)0.1℃。
3 系統(tǒng)軟件
系統(tǒng)流程圖如圖7所示。
微處理器P89LPC932先把P1.6置0,啟動超聲波探頭發(fā)射超聲波,同時啟動內(nèi)部定時器T0開始計時。然后檢測溫度并進(jìn)行溫度補償,當(dāng)超聲波信號遇到障礙物時信號立刻返回,微處理器不停掃描P2.7引腳,如果P2.7接收的信號由高電平變?yōu)榈碗娖剑砻餍盘栆呀?jīng)返回,微處理器進(jìn)入中斷關(guān)閉定時器。再把定時器中的數(shù)據(jù)經(jīng)過換算就可以得出所測距離。
4 結(jié)語
本系統(tǒng)利用超聲波傳感器實現(xiàn)無接觸式空氣測距,并充分考慮到測量環(huán)境溫度對超聲波傳遞速度的影響,通過溫度補償的方法對速度予以校正,并具有三種模式跳線選擇,因此具有測量準(zhǔn)確度較高、抗干擾能力強、反應(yīng)速度快等特點。實驗表明,本測距儀實測精度最優(yōu)達(dá)到1%,最遠(yuǎn)測距為700 cm左右。