基于單片機(jī)的超聲波測距系統(tǒng)的設(shè)計(jì)
1 引言
超聲波測距作為一種典型的非接觸測量方法,與激光測距、紅外線測距相比,超聲波對外界光線、色彩和電磁場不敏感,更適于黑暗、電磁干擾強(qiáng)、有毒、灰塵或煙霧的惡劣環(huán)境,在識別透明及漫反射性差的物體上也更有優(yōu)勢。由于聲波在空氣中傳播速度遠(yuǎn)遠(yuǎn)小于光線和無線電波的傳播速度,對于時(shí)間測量精度的要求遠(yuǎn)小于激光測距、微波測距等系統(tǒng),因而超聲波測距系統(tǒng)電路易實(shí)現(xiàn)、結(jié)構(gòu)簡單和造價(jià)低,且超聲波在傳播過程中不受煙霧、空氣能見度等因素的影響,在各種場合均得到廣泛應(yīng)用,如倒車防撞雷達(dá)、海洋測量、物體識別、工業(yè)控制,建筑工程測量和機(jī)器人視覺識別。
2超聲波測距基本原理
超聲波測距的基本工作原理是測量超聲波在空氣中的傳播時(shí)間,由超聲波傳播時(shí)間和傳播速度來確定距離障礙物的距離,即脈沖--回波方式。該方式的基本電路框圖如圖1所示。由發(fā)射傳感器、發(fā)射電路、接收傳感器、接收放大電路、回波信號處理電路和單片機(jī)控制電路等幾部分組成。

發(fā)射電路是一個(gè)工作頻率為40khz的多諧振蕩器,多諧振蕩器受單片機(jī)控制,產(chǎn)生一定數(shù)量的發(fā)射脈沖,用于驅(qū)動(dòng)超聲波發(fā)射傳感器,并激勵(lì)出超聲波在空氣中傳播,遇障礙物反射而返回。超聲波接收傳感器通過壓電轉(zhuǎn)換的原理,將由障礙物返回的回波信號轉(zhuǎn)換成電信號,由于該信號幅度較小(幾到十幾毫伏),因此須由低噪聲放大、40khz帶通濾波電路將回波信號放大到一定幅度,且干擾成分較少,并由回波波號處理電路轉(zhuǎn)換成方波信號,送至單片機(jī)系統(tǒng)進(jìn)行時(shí)間測量和距離的顯示。
超聲波發(fā)射器向某一方向發(fā)射超聲波,在發(fā)射時(shí)刻的同時(shí)開始計(jì)時(shí),超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波就立即停止計(jì)時(shí)。超聲波在空氣中的傳播速度為340m/s,根據(jù)計(jì)時(shí)器記錄的時(shí)間t,就可以計(jì)算出發(fā)射點(diǎn)距障礙物的距離(s),即:s=ct/2。
在啟動(dòng)發(fā)射電路的同時(shí)啟動(dòng)單片機(jī)內(nèi)部的定時(shí)器t0,利用定時(shí)器的計(jì)數(shù)功能記錄超聲波發(fā)射的時(shí)間和收到反射波的時(shí)間。當(dāng)收到超聲波反射波時(shí),接收電路輸出端產(chǎn)生一個(gè)負(fù)跳變,在int0端產(chǎn)生一個(gè)中斷請求信號,單片機(jī)響應(yīng)外部中斷請求,執(zhí)行外部中斷服務(wù)子程序,讀取時(shí)間差,計(jì)算距離。
3 超聲波測距的誤差分析
3.1 環(huán)境溫度對測量精度的影響
利用超聲測距要考慮媒質(zhì)的彈性模量和密度對聲速的影響。在氣體中,壓強(qiáng)、溫度、濕度等因素會(huì)引起密度的變化,氣體中聲速主要受密度影響,超聲波在固體中傳播速度最快,氣體中傳播速度最慢。氣體中聲速受溫度影響最大,超聲波在空氣中傳播速度為

式中t為絕對溫度,c0=331.4m/s。
由于聲速與溫度有關(guān),為了提高測量精度,設(shè)置了溫度檢測電路,根據(jù)實(shí)際測量的溫度值利用公式計(jì)算超聲波速度,對最終測量結(jié)果進(jìn)行校正。
3.2 回波前沿檢測誤差對測量精度的影響
超聲波從超聲傳感器發(fā)出,在空氣中傳播,遇到被測物反射后,再傳回超聲傳感器。整個(gè)過程,由于吸收衰減和擴(kuò)散損失,聲強(qiáng)隨目標(biāo)距離增大而衰減;同時(shí)衰減系數(shù)還與超聲波的頻率有關(guān)。因此超聲波測距在實(shí)際應(yīng)用的局限性,影響了超聲波測距的精度。一是超聲波在空氣中衰減極大,由于測量距離的不同,造成回波信號的起伏,使回波到達(dá)時(shí)間的測量產(chǎn)生較大的誤差。二是超聲波脈沖在發(fā)射、空氣中傳播和接收過程中,其回波信號被展寬,影響了測距的分辨率,尤其是對近距離的測量造成較大的影響。由于超聲波收、發(fā)傳感器均由壓電陶瓷構(gòu)成,壓電陶瓷片在壓電的雙向轉(zhuǎn)換過程中,均存在慣性、滯后等現(xiàn)象,導(dǎo)致回波信號被展寬。這些因素造成了回波正確到達(dá)時(shí)間的不確定性,對測量精度造成較大的影響。正確檢測回波到達(dá)時(shí)間,能使超聲波測距精度獲得提高。
4系統(tǒng)組成結(jié)構(gòu)
4.1 硬件結(jié)構(gòu)
主要包括at89c51單片機(jī)、超聲波發(fā)射電路、超聲波接收電路、顯示電路、測溫電路等。
采用數(shù)字溫度計(jì)ds18b20來采集溫度信號,ds18b20是美國dalas公司推出的單線串行數(shù)字溫度計(jì),可直接與單片機(jī)連接,測量范圍從-55℃~125℃,-10℃~85℃時(shí)測量精度為0.5℃。
超聲波發(fā)射及驅(qū)動(dòng)電路由功率放大電路和超聲波發(fā)射傳感器組成,其原理電路如圖2所示。放大器輸人端獲得一個(gè)來自單片機(jī)送來工作頻率為40khz的脈沖信號。通過功率放大電路放大到足夠大的能量(增加超聲波的傳播距離),該能量加給超聲波發(fā)射傳感器,驅(qū)動(dòng)超聲波發(fā)射頭,并發(fā)射出40khz脈沖波,通過空間向外傳播出去。

超聲波接收電路由高速運(yùn)算放大電路和超聲波接收傳感器組成,其原理電路如圖3所示。超聲波在空氣中傳播時(shí),其能量衰減程度與傳播距離成正比,所以超聲波傳感器接收信號一般在1mv-iv之間。接收電路采用由lm318高速運(yùn)算放大器組成兩級信號放大電路對其進(jìn)行放大,以滿足增益帶寬和轉(zhuǎn)換速率的要求。當(dāng)超聲波接收傳感器接收到返回的超聲波信號,接收傳感器將超聲波脈沖變?yōu)榻蛔冸娦盘?,?jīng)放大器放大后進(jìn)行處理。
測距電路的輸入端接單片機(jī)p1.0端口,單片機(jī)執(zhí)行程序時(shí),在p1.0端口輸出一個(gè)40khz的脈沖信號,通過超聲波發(fā)射電路發(fā)射出去,同時(shí)啟動(dòng)單片機(jī)內(nèi)部的定時(shí)器t0,定時(shí)器開始計(jì)數(shù)。當(dāng)反射物將超聲波反射回來,超聲波接收電路接受處理,輸出端產(chǎn)生一個(gè)負(fù)跳變,在into端產(chǎn)生一個(gè)中斷請求信號,定時(shí)器停止計(jì)數(shù)。單片機(jī)響應(yīng)外部中斷請求,執(zhí)行外部中斷子程序,讀取超聲波從發(fā)射到接收的時(shí)間差,最后經(jīng)過換算得出超聲波傳感器與反射物之間的距離。
4.2 系統(tǒng)軟件
系統(tǒng)軟件包括主程序、溫度采集子程序、發(fā)射子程序、計(jì)算子程序、數(shù)碼顯示子程序、外部中斷子程序和定時(shí)器中斷子程序。主程序完成初始化后調(diào)用發(fā)射子程序,由p1.0口發(fā)射脈沖,驅(qū)動(dòng)超聲波傳感器發(fā)射超聲波,并關(guān)外部中斷,計(jì)數(shù)器t0開始計(jì)時(shí);為防止虛假回波的干擾,在延時(shí)一段時(shí)間后,開中斷。當(dāng)有外部中斷信號時(shí),單片機(jī)就停止t0的計(jì)時(shí),計(jì)算出渡越時(shí)間t并存儲(chǔ)到e2prom中;然后調(diào)用測溫子程序,采集超聲波測距時(shí)的環(huán)境溫度,并換算出準(zhǔn)確的聲速c,存儲(chǔ)到e2prom;單片機(jī)再調(diào)用計(jì)算子程序,計(jì)算出傳感器到目標(biāo)物體之間的距離,最后把測量結(jié)果存儲(chǔ)并通過數(shù)碼管電路顯示出來,完成一次測量。
設(shè)計(jì)中,超聲波發(fā)射極和接收極距離較近,當(dāng)發(fā)射極發(fā)射超聲波后,有部分超聲波沒經(jīng)過障礙物反射就直接繞射到接收極上,這部分信號是無用的,會(huì)引起系統(tǒng)誤測。設(shè)計(jì)中采用延時(shí)技術(shù)來解決這個(gè)問題,并設(shè)定延時(shí)時(shí)間為1ms,即在發(fā)射極發(fā)射超聲波1ms內(nèi),通過軟件關(guān)閉所有中斷,接收電路對此期間接收到的任何信號不予理睬,1ms后立即啟動(dòng)t0,這時(shí)接收到的信號才有效,并在接收到回波信號的同時(shí),t0停。此時(shí)t0所記錄的cpu發(fā)送脈沖信號的前沿到回波脈沖信號之間的時(shí)間才是需要的。因此系統(tǒng)存在測量盲區(qū)。主程序流程圖如圖4所示。

本文所設(shè)計(jì)的超聲波測距系統(tǒng),其結(jié)構(gòu)簡單、體積小、抗干擾性能好,若要滿足更高的精度要求,還須進(jìn)行適當(dāng)改進(jìn)。在某些特殊場合的應(yīng)用中,還要考慮超聲波的人射角、反射角以及超聲波傳播介質(zhì)的密度、表面光滑度等因素。本系統(tǒng)不僅適用于距離的測量,還適用于水文液位測量和汽車間間距的測量,應(yīng)用范圍較廣。
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。
你可能感興趣的文章