鄺愛華 李平
【摘要】 以STC89C52單片機作為核心控制電路,采用模塊化的設(shè)計方案,以超聲波傳感器為檢測功能部件,利用在空氣中傳播的超聲波反射原理,結(jié)合單片機控制技術(shù)和超聲波在空氣中傳播的時間差原理來測量距離。系統(tǒng)主要包括單片機控制模塊、超聲波測距模塊以及距離顯示模塊。首先由超聲波測距模塊給單片機控制模塊發(fā)送超聲波并計時,然后由單片機控制模塊統(tǒng)計數(shù)據(jù)并計算距離,最后由數(shù)碼管顯示模塊顯示出來測試的距離,完成測距。本設(shè)計測距精度可以達(dá)到3mm,并且能夠提供2cm-400cm的非接觸式距離感測功能。
【關(guān)鍵詞】 超聲波 傳感器 距離測量
隨著科學(xué)技術(shù)的飛速發(fā)展,在人們的日常生活當(dāng)中,越來越多的科學(xué)技術(shù)成果得到了廣泛的運用,也給人們的生活帶來了諸多方便。超聲波測距系統(tǒng)的研制,給很多領(lǐng)域帶來了方便。比如可以應(yīng)用于井深、液位和管道長度的測量等場合,也可用于建筑施工工地、汽車倒車系統(tǒng)以及一些工業(yè)現(xiàn)場的位置監(jiān)控。展望未來,超聲波測距系統(tǒng)作為一種非常重要的測量工具在各個領(lǐng)域都將有很大的發(fā)展空間,為了滿足日益發(fā)展的社會需求,它將朝著測量精度更高的方向發(fā)展。
一、系統(tǒng)工作原理及總體方案設(shè)計
1.1 測距原理
通過超聲波發(fā)射器向某一方向發(fā)射超聲波,在發(fā)射的過程中計時,因為超聲波在空氣中傳播,當(dāng)在途中碰到障礙物時就會被立即立即反射回來,超聲波接收器收到反射波后立即停止計時。由于在空氣中超聲波的傳播速度為340m/s,根據(jù)計時器記錄的時間t,可以很容易地計算出從發(fā)射點到障礙物的距離S為:
在設(shè)計中按式S=170×N×T=170×N÷1000000計算距離。
1.2 系統(tǒng)的設(shè)計思路
本系統(tǒng)的設(shè)計主要分為系統(tǒng)硬件電路的設(shè)計和系統(tǒng)軟件程序的設(shè)計兩部分。系統(tǒng)硬件電路主要由單片機控制系統(tǒng)模塊、超聲波測距模塊和數(shù)碼管顯示模塊構(gòu)成。系統(tǒng)主控芯片選取STC89C52單片機,測量器件選取超聲波傳感器。通過對單片機進(jìn)行相應(yīng)的編程,讓其接收信號、處理信號和發(fā)送命令,最后通過數(shù)碼管顯示模塊顯示出測量得到的距離值。因此,完整的超聲波測距系統(tǒng)主要包括單片機控制系統(tǒng)、超聲波的發(fā)射與接收系統(tǒng)和距離顯示系統(tǒng)。
在必要的時候,超聲波測距系統(tǒng)能夠通過單片機控制發(fā)射電路發(fā)射超聲波,超聲波在空氣中向前傳播。在傳播的過程中,當(dāng)超聲波遇到障礙物時就會被會反射回來,由接收電路接收。接收電路會把信號傳送到單片機中,由單片機進(jìn)行相關(guān)的數(shù)據(jù)處理。所得到的結(jié)果會通過LED數(shù)碼管顯示出來。在此過程中,如果發(fā)射裝置與障礙物之間有相對運動,那么 LED數(shù)碼管會不斷地顯示兩者之間最新的距離。而當(dāng)超出超聲波測距的范圍時,單片機便會發(fā)出一個指令,讓數(shù)碼管顯示不同的符號以便給出提示。
二、系統(tǒng)硬件設(shè)計
本設(shè)計主要由單片機控制系統(tǒng)模塊、超聲波測距模塊和數(shù)碼管顯示模塊三個模塊組成,通過對三個模塊的分析與設(shè)計,再結(jié)合單片機的引腳功能,從而得到系統(tǒng)整體電路圖。
2.1 單片機控制系統(tǒng)
單片機控制系統(tǒng)主要由單片機最小系統(tǒng)構(gòu)成。STC89C52最小應(yīng)用系統(tǒng)電路。單片機最小系統(tǒng)有三個主要部分:
(1)時鐘電路:STC89C52單片機外接晶振及電容的引腳是引腳18和引腳19,工作頻率取決于晶振XT的頻率,芯片的工作頻率可在2~33MHz范圍之間選。在本設(shè)計中,為了保證振蕩器電路的穩(wěn)定性及快速性,兩個小電容C1和C2都取值30pF,頻率選用11.0592MHz晶振。
(2)電源電路:單片機系統(tǒng)能正常工作時,芯片引腳VCC接+5V直流穩(wěn)壓電源,引腳GND接電源+5V的負(fù)極,電源電壓范圍在4~5.5V之間。為了確定單片機是否供上電,在VCC和地之間連接了一個發(fā)光二極管和1K的電阻。
(3)復(fù)位電路:單片機在引腳RST上保持24個工作主頻周期的高電平,就可以完成復(fù)位。但復(fù)位電路應(yīng)使引腳RST保持10ms以上的高電平,才能保證系統(tǒng)可靠的復(fù)位。
2.2 數(shù)碼管顯示電路設(shè)計
本設(shè)計采用四位七段數(shù)碼管作為顯示的器件,其中6、8、9、12引腳是數(shù)碼管的位選信號端,1、2、3、4、5、7、10、11引腳控制數(shù)碼管的位選,四位數(shù)碼管分別用一個S9015三極管進(jìn)行驅(qū)動。距離顯示電路如圖3所示。
2.3 超聲波模塊設(shè)計
超聲波換能器是一種能量轉(zhuǎn)換器件,它的功能是將輸入的電功率轉(zhuǎn)換成機械功率(即超聲波)再傳遞出去,而自身消耗很少的一部分功率,電源輸出到超聲波發(fā)生器,再到超聲波換能器,一般還要經(jīng)過超聲波導(dǎo)出裝置就可以產(chǎn)生超聲波了。本設(shè)計采用HC-SR04集成模塊作為系統(tǒng)的超聲波模塊,其內(nèi)部主要由超聲波發(fā)射電路和接收電路和控制電路三部分組成,HC-SR04是利用超聲波換能器來產(chǎn)生超聲波的器件。
三、系統(tǒng)軟件設(shè)計
本設(shè)計采用的是模塊化的思路來進(jìn)行設(shè)計和編寫程序,程序主要由系統(tǒng)主程序和中斷程序構(gòu)成。主程序的功能是完成單片機的初始化,超聲波信號的發(fā)射和接收、計算超聲波發(fā)射點與障礙物之間的距離和數(shù)碼管顯示等。中斷程序完成系統(tǒng)各種中斷服務(wù)。系統(tǒng)程序設(shè)計的主要的功能是發(fā)射超聲波、接受超聲波、計算測量距離和數(shù)碼管顯示。
3.1主程序設(shè)計設(shè)計
主程序?qū)φ麄€測距系統(tǒng)初始化后,先將定時器T0啟動,同時對超聲波的回波接收標(biāo)志位置位并且由單片機P1.1端口給發(fā)出一個低電平命令用來啟動超聲波發(fā)射電路,然后調(diào)用計算距離的子程序,再結(jié)合定時器T0記錄的時間結(jié)果計算出被測距離,再將被測結(jié)果通過調(diào)用顯示子程序,以十進(jìn)制的形式在數(shù)碼管上顯示,最后主程序通過對回波信號的接收,完成后續(xù)的工作。在整個過程中,如果標(biāo)志位清零則說明接收到了回波信號,那么主程序就返回到初始端重新將回波接收標(biāo)志位置位并且在單片機的P1.1端口上發(fā)送低電平到超聲波發(fā)射電路,如此往復(fù),系統(tǒng)連續(xù)不斷地運行,循環(huán)不斷地工作來實現(xiàn)實時測距的功能。
3.2 數(shù)碼管顯示模塊設(shè)計
本設(shè)計采用4位共陽極數(shù)碼管來顯示距離,進(jìn)行動態(tài)掃描時是與單片機P0口相連接。因為所測的距離是不斷變化的,所以數(shù)碼管是在外部中斷0發(fā)生后才進(jìn)行顯示的。
當(dāng)主程序給超聲波發(fā)生器發(fā)送了信號后,此時中斷和定時器0便會被打開,并開始計時,當(dāng)超聲波接收電路接收到了回波信號的時,系統(tǒng)便會在單片機的P1.0端口產(chǎn)生一個低電平信號,在單片機檢測到該信號后,定時器停止計時,同時定時器的計數(shù)的次數(shù)將被送至單片機進(jìn)行數(shù)據(jù)的計算,最后得出以cm為單位的測量的距離。
四、系統(tǒng)調(diào)試結(jié)果
理論上來講,本設(shè)計系統(tǒng)采用的超聲波模塊測距時存在的盲區(qū)大約為2cm左右,而且本設(shè)計理論上的測量距離范圍為2cm~5m,測量的誤差比較小,測量顯示值穩(wěn)定,可以精確到0.3cm,能滿足設(shè)計要求。
經(jīng)尺子測量一頁打印紙的長度為25.6cm,然后利用超聲波測距儀測量精確度。首先將紙分別平放在桌面,然后用一個表面平整的障礙物立起來放在紙張的邊緣,讓測距儀的超聲波探頭對準(zhǔn)障礙物,經(jīng)測量之后結(jié)果顯示為25.5cm,誤差0.1cm,測量較為準(zhǔn)確;拿著超聲波測距儀站在離墻面2米的地方,測量結(jié)果為199.8cm,誤差0.2cm。
參 考 文 獻(xiàn)
[1] 盛春明.超聲波測距儀[J].電子制作,2010,(5):31-42
[2]陳正軍,鄔華,方愛華.基于凌陽61系列單片機的超聲波測距系統(tǒng)[J].科技傳播,2010,(6):126-127
[3]李長陽.超聲波測距系統(tǒng)的電路設(shè)計[J].黑龍江科技信息,2010,(33):77,83
[4]張凱瑞,吳軍,鄭小軍.超聲波測距技術(shù)的研究[J].科技信息,2013,(10):172
[5]孫新.基于超聲波的盲人避障眼鏡的設(shè)計[J].電子技術(shù)與軟件工程,2014,(12)
[6]曹月真.基于51單片機的超聲波測距系統(tǒng)的設(shè)計[J].電子世界,2011,(10):55-56
[7]任艷斐等.基于嵌入式技術(shù)的汽車防撞報警系統(tǒng)的設(shè)計與應(yīng)用[J].計算機測量與控制,2014,(2)
[8]荊紅莉,王晶,王濤.超聲波測距系統(tǒng)設(shè)計[J].數(shù)字技術(shù)與應(yīng)用,2010,(8):92
[9]鄢晗菡,孫華.基于多普勒效應(yīng)的汽車剎車預(yù)警系統(tǒng)研究[J].機械,2010(11):56-58