王瑞榮
(太原工業(yè)學(xué)院電子工程系,山西太原,030008)
超聲波的傳播介質(zhì)非常廣泛,在氣體、液體和固體中都可以傳播,并且傳播距離較遠,傳播速度恒定,能量消耗緩慢,不受電磁、光線、煙霧等的影響,有一定的環(huán)境適應(yīng)能力,所以超聲波常用來定位以及距離測量[1]。
像物位測量儀和測距儀等儀器一樣,通過利用超聲波來實現(xiàn)距離測算的機器還有很多。超聲波檢測快速、方便、操作簡單是超聲波檢測的一般優(yōu)點,并且易于實時控制,在測量精度方面能達到工業(yè)實用的要求,性價比較高[2]。超聲波具有很好的指向性,同時可以在一定程度上避免對人體的危害,因此超聲測距廣泛應(yīng)用于避障,倒車雷達,移動機器人定位,建筑施工工地等工業(yè)領(lǐng)域。
本文設(shè)計的超聲波測距儀使用的核心微處理器是STC89C52,超聲波在超聲波trig端生成,為記錄超聲波發(fā)送到返回的時間,啟動單片機的定時器。遇到障礙物后,在介質(zhì)中傳輸?shù)某暡⒖陶刍?,并?jīng)過回波超聲波echo端接收,并立即停止計時。經(jīng)過計算芯片計算出障礙物與發(fā)射器之間的間隔,并通過液晶屏顯示,在小于或超出設(shè)定范圍時,由蜂鳴器報警。系統(tǒng)采用單片機控制輸入單片機的外部中斷源,從超聲波器件輸出。在通過發(fā)射超聲波的觸發(fā)端定時系統(tǒng)后,定時器在STC89C52里面立刻開啟,超聲波傳輸電路開始工作,為了記錄超聲波發(fā)射到返回的時間,利用定時器來計算,得到這個時間差后,通過公式計算出儀器到障礙物的距離,結(jié)果輸入到液晶屏顯示。
當(dāng)物體振動,它們都會發(fā)出聲響。在物理學(xué)上,頻率的定義為物體每一秒振動的次數(shù),單位為赫茲。超聲波是高于兩萬赫茲的聲波。它可用于測量、清潔、電焊、礫石[4]。據(jù)長久以來的研討可看出,超聲波在傳播的途徑中,被介質(zhì)所包圍,它振動的頻率很大,超聲波每一小部分包含的能量也很大[5,6]。
超聲波測距儀測量距離依照的是超聲阻礙的特點。超聲波從超聲發(fā)射器的發(fā)射端發(fā)射后,在空氣中傳播,而超聲波在遇到障礙物后返回輸入到接收端,并且定時器停止計時。超聲波從發(fā)射到返回接受這個階段的連續(xù)檢測后,可以算出發(fā)射出波和接收回波的時間差△t,聲速已知為常數(shù)C,即可算出L。
基本的測距公式如式(1)所示:
式中:L為要測的距離;
△t為超聲波發(fā)射和反射回接收的超聲波這一階段的時間差;
C為超聲波在空氣中傳播的速度,常溫下取為344m/s。
經(jīng)過多方考量,本設(shè)計選取了已經(jīng)集成好了發(fā)射電路和接收電路的HC-SR04超聲波傳感器來構(gòu)成作為本設(shè)計的超聲波測距模塊,這樣在電路和程序的設(shè)計上都可以節(jié)省很多精力。性能穩(wěn)定,測度距離精確,模塊高精度,盲區(qū)小是它的主要特點。在測量時,接收端‘ECHO’會在一個大于15us寬度的高電平由控制端‘TRIG’發(fā)送后收到高電平輸出然后定時器開始計時。當(dāng)該端口進入低功率狀態(tài)時,停止計時并讀出計時器的值,這個值就是超聲波往返的時間,再根據(jù)傳播速度可以計算出障礙物的距離。
本次超聲波測距儀的設(shè)計由單片機處理器、超聲波發(fā)射探頭、超聲波接收探頭、液晶顯示模塊、蜂鳴報警模塊、溫度補償模塊、按鍵控制模塊組成。超聲波測距儀由最小單芯片系統(tǒng)控制,超聲波自超聲波發(fā)射探頭發(fā)射,接收探頭接收遇到阻礙后反射回的超聲波。該硬件分為七部分:最小單芯片系統(tǒng)、超聲波傳輸和接收電路、按鍵控制電路、蜂鳴報警電路、數(shù)字顯示電路和溫度補償電路。本設(shè)計選擇用STC89C52即51單片機作為核心處理器,得到的距離數(shù)值將通過LCD1602所顯示,在測得的距離超出程序中所指定的范圍時,蜂鳴器發(fā)聲。超聲波信號通過52單片機P0.1端口發(fā)送到超聲波發(fā)射電路。
超聲波測距儀整體系統(tǒng)圖如圖1所示。
圖1 整體系統(tǒng)圖
硬件部分的設(shè)計主要包括最小系統(tǒng),其又包含含時鐘電路、復(fù)位電路、供電電源和接地端等電路;顯示電路與超聲波電路等。超聲波電路里包括超聲波發(fā)射電路與超聲波檢測接收電路。根據(jù)設(shè)計要求選擇合適的硬件進行焊接與測試。
測距儀的重要之處在于對距離的精準(zhǔn)測量,然后再經(jīng)過單片機來解決測量的數(shù)據(jù)。在距離上,包含溫度等多樣的信號都對速度存在一定的影響。超聲波的超聲信號接收電路的兩個階段:第一波信號傳輸探頭時注入信號后,超聲波接收端收到超聲信號,其實就是超聲發(fā)射信號。另一波信號的有效信號,在碰到阻礙之后立刻反射回來。由單片機計數(shù)功能完成對發(fā)射時間和接收時間的記錄,接著利用數(shù)據(jù)來算出距離。有效信號需要檢測回聲反射對象,因此要防止檢測到其他響應(yīng)。超聲發(fā)射超聲信號直接對信號接收探頭的影響,主要原因是同時測量測量盲區(qū)超聲波信號的發(fā)生。
超聲波接收電路接收到超聲回波后送到HC-SR04集成電路模塊對超聲波檢測塑造,并將一個有效的信號發(fā)送給單片機。單片機利用變更內(nèi)部響應(yīng)來將回波信號到達時間進行記錄。端口接收到返回響應(yīng)后,停止時鐘運行,讀取數(shù)值。主程序設(shè)計如圖2所示。
圖2 主程序流程圖
超聲波在生活中用處很大,聲吶探測、倒車雷達等等,無一不體現(xiàn)出它的不可缺少性。因此值得去多多研究與了解。本設(shè)計是建立在超聲波測距的原理上以STC89C52單片機作為核心,包含顯示模塊、報警模塊、測溫模塊等的一個儀器。超聲波模塊的發(fā)射端向障礙物發(fā)射超聲波,與此同時,STC89C52單片機中的定時器開始定時計數(shù)功能。在檢測到超聲波模塊接收到回波信號后,STC89C52單片機停止定時計數(shù)。之后將STC89C52單片機記錄的兩個數(shù)值進行計算,算出時間差,再與聲速相乘,得到的數(shù)值就是超聲波模塊與障礙物之間的距離本次采用的超聲波模塊的測量范圍為0.2厘米到500厘米,測量精度為毫米級別。此外,本設(shè)計在超聲波測距的基礎(chǔ)上加了一個報警模塊,安全范圍可通過按鍵設(shè)定。在安全范圍內(nèi)蜂鳴器物反應(yīng),當(dāng)距離超出安全范圍時,蜂鳴器報警。
本文設(shè)計的超聲波測距儀在測量時對障礙物表面有所要求,為保證能夠成功接收到反射回的超聲波,需要被測量物體的表面光滑平整。經(jīng)檢測,此測距系統(tǒng)的測量范圍在0.2 ~5米左右,最小顯示單位為0.01米,并且其線性度、重復(fù)性和穩(wěn)定性都很好,一般常用的測距需求均可以得到滿足。