高精度超聲波測(cè)距系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
利用超聲波測(cè)量距離的原理可簡(jiǎn)單描述為:超聲波定期發(fā)送超聲波,遭遇障礙物時(shí)發(fā)生反射,發(fā)射波經(jīng)由接收器接收并轉(zhuǎn)化為電信號(hào),這樣測(cè)距技術(shù)只要測(cè)出發(fā)送和接收的時(shí)間差,然后按照下式計(jì)算,即可求出距離:
由于超聲波指向性強(qiáng),能量消耗緩慢,在介質(zhì)中傳播的距離較遠(yuǎn),因而超聲波經(jīng)常用于距離的測(cè)量,如測(cè)距儀和物位測(cè)量?jī)x等都可以通過(guò)超聲波來(lái)實(shí)現(xiàn)。利用超聲波檢測(cè)往往比較迅速、方便、計(jì)算簡(jiǎn)單、易于做到實(shí)時(shí)控制,并且在測(cè)量精度方面能達(dá)到工業(yè)實(shí)用的要求,因此,廣泛應(yīng)用于倒車提醒、建筑工地、工業(yè)現(xiàn)場(chǎng)等的距離測(cè)量。目前的測(cè)距量程上能達(dá)到百米數(shù)量級(jí),測(cè)量的精度往往能達(dá)到厘米數(shù)量級(jí)。本文在分析現(xiàn)有超聲波測(cè)距技術(shù)基礎(chǔ)之上,給出了一種改進(jìn)方案,測(cè)量精度可達(dá)毫米級(jí)。
2 系統(tǒng)方案分析與論證
2.1 影響精度的因素分析
根據(jù)超聲波測(cè)距式(1)可知測(cè)距的誤差主要是由超聲波的傳播速度誤差和測(cè)量距離傳播的時(shí)間誤差引起的。
對(duì)于時(shí)間誤差主要由發(fā)送計(jì)時(shí)點(diǎn)和接收計(jì)時(shí)點(diǎn)準(zhǔn)確性確定,為了能夠提高計(jì)時(shí)點(diǎn)選擇的準(zhǔn)確性,本文提出了對(duì)發(fā)射信號(hào)和加收信號(hào)通過(guò)校正的方式來(lái)實(shí)現(xiàn)準(zhǔn)確計(jì)時(shí)。此外,當(dāng)要求測(cè)距誤差小于1 mm時(shí),假定超聲波速度C=344 m/s(20℃室溫),忽略聲速的傳播誤差。則測(cè)距誤差s△t<0.000 002 907 s,即2.907 ms。根據(jù)以上過(guò)計(jì)算可知,在超聲波的傳播速度是準(zhǔn)確的前提下,測(cè)量距離的傳播時(shí)間差值精度只要在達(dá)到微秒級(jí),就能保證測(cè)距誤差小于1 mm的誤差。使用的12 MHz晶體作時(shí)鐘基準(zhǔn)的89C51單片機(jī)定時(shí)器能方便的計(jì)數(shù)到1μs的精度,因此系統(tǒng)采用AT89S51的定一時(shí)器能保證時(shí)間誤差在1 mm的測(cè)量范圍內(nèi)。
超聲波的傳播速度主要受空氣密度所的影響,空氣的密度越高則超聲波的傳播速度就越快,而空氣的密度又與溫度有著密切的關(guān)系。溫度與超聲波的速度之間的近似公式為:
式中:C0為零度時(shí)的聲波速度332 m/s;T為實(shí)際溫度(℃)。由此可見(jiàn),測(cè)量精度與溫度有著直接的關(guān)系,本文采用DS18B20溫度傳感器,對(duì)外界溫度進(jìn)行測(cè)量,并在軟件中實(shí)現(xiàn)溫度補(bǔ)償。
2.2 整體方案設(shè)計(jì)
本文主要采用單片機(jī)控制技術(shù),實(shí)現(xiàn)精確的超聲波測(cè)距方案,整個(gè)系統(tǒng)由超聲波收發(fā)單元、波形校準(zhǔn)單元、溫度測(cè)量單元、顯示單元和控制單元5個(gè)單元組成。其中,超聲波收發(fā)單元主要實(shí)現(xiàn)超聲波的接發(fā)送和接收;信號(hào)處理單元主要實(shí)現(xiàn)去除干擾、波形整形、鎖相環(huán)等功能,便于實(shí)現(xiàn)準(zhǔn)確計(jì)時(shí);溫度測(cè)量單元主要測(cè)量外界溫度,實(shí)現(xiàn)溫度補(bǔ)償;顯示單元實(shí)現(xiàn)測(cè)量數(shù)據(jù)的顯示;單片機(jī)為控制單元,完成指令發(fā)送,接收數(shù)據(jù),進(jìn)行計(jì)算等任務(wù)。
3 系統(tǒng)硬件設(shè)計(jì)
3.1 超聲波發(fā)射部分
本文中脈沖發(fā)射采用軟件方式,利用AT89S51的P1.0口發(fā)射40 kHz的方波信號(hào),經(jīng)過(guò)74HC04放大后輸出到超聲波換能器,產(chǎn)生超聲波。74HC04是一個(gè)高速CMOS六反相器,具有放大作用,具有對(duì)稱的傳輸延遲和轉(zhuǎn)換時(shí)間,而相對(duì)于LSTTL邏輯IC,它的功耗減少很多。對(duì)于HC類型,其工作電壓為2~6 V,它具有高抗擾度,可以兼容直接輸入LSTTL邏輯信號(hào)和CMOS邏輯輸入等特點(diǎn)。
本系統(tǒng)將40 kHz方波信號(hào)分成兩路,分別由74HC04經(jīng)兩次和一次反向放大,從而構(gòu)成推拉式反向放大。電路圖如圖2所示。
3.2 超聲波接收部分
超聲波接收部分采用集成芯片CX20106A,這是一款紅外線檢波接收的專用芯片。內(nèi)部電路由前置放大器、自動(dòng)偏置電平控制電路、限幅放大器、帶通濾波器、峰值檢波器和整形輸出電路組成??梢岳盟鳛槌暡z測(cè)電路。
接收的回波信號(hào)先經(jīng)過(guò)前置放大器和限幅放大器,將信號(hào)調(diào)整到合適的幅值;再經(jīng)過(guò)帶通濾波器濾波得到有用信號(hào),濾除干擾信號(hào);最后由峰值檢波器和整形電路輸出到鎖相環(huán)路,實(shí)現(xiàn)準(zhǔn)確的計(jì)時(shí)。CX20106A的外部接線圖如圖3所示。
圖3中1腳是接收信號(hào)輸入端,2腳是調(diào)節(jié)接收信號(hào)靈敏度,電阻越小,靈敏度越高。電容越大,靈敏度越高。電容一般取1μF,電阻50~300 Ω的,在干擾較大的場(chǎng)合增加電阻阻值可將靈敏度調(diào)低,干擾小的場(chǎng)合減小阻值將靈敏度調(diào)高。5腳主要用來(lái)調(diào)節(jié)中心頻率,這里取200 kΩ,7腳接上拉電阻,這里取1 kΩ左右。
3.3 顯示部分
顯示部分采用共陰極數(shù)碼管,由單片機(jī)實(shí)現(xiàn)控制,單片機(jī)的P0口輸出段碼,P2口用作位碼,用PNP型三極管驅(qū)動(dòng)(本設(shè)計(jì)采用9018),由于單片機(jī)I/O口的驅(qū)動(dòng)能力非常小,P0口需外接上拉電阻來(lái)增加驅(qū)動(dòng)能力,應(yīng)用時(shí)要注意,在低電平時(shí),可能由于電流直接經(jīng)電阻流進(jìn)I/O的灌流太大而燒毀單片機(jī),所以提升電阻一般取600~1 000 Ω。實(shí)驗(yàn)證明,數(shù)碼管亮度合適。其原理圖如圖4所示。
3.4 溫度測(cè)量部分
DS18B20數(shù)字溫度計(jì)是DALLAS公司生產(chǎn)的1Wire,即單總線器件,具有線路簡(jiǎn)單,體積小的特點(diǎn)。因此用它來(lái)組成一個(gè)測(cè)溫系統(tǒng),具有線路簡(jiǎn)單,將其數(shù)據(jù)線與單片機(jī)的P1.3相連,就可以實(shí)現(xiàn)溫度測(cè)量。測(cè)量的溫度精度可以達(dá)到0.1℃,測(cè)量的溫度的范圍在-20~+100℃。電路如圖5所示。
4 系統(tǒng)軟件設(shè)計(jì)
測(cè)距系統(tǒng)軟件采用匯編語(yǔ)言,由發(fā)射脈沖子程序、用中斷實(shí)現(xiàn)回波接收子程序、計(jì)算距離子程序、數(shù)碼管顯示子程序和計(jì)時(shí)單元延時(shí)子程序幾部分組成,采用模塊化編程。其軟件流程圖如圖6所示。
程序首先初始化需要用到的寄存器,內(nèi)存單元,設(shè)置中斷觸發(fā)方式,并初始化DS18B20,然后控制P1.0口輸出12μs的高電平,再輸出13μs的低電平,循環(huán)10次便可發(fā)射10個(gè)頻率為40 kHz的脈沖信號(hào)。經(jīng)過(guò)一段延時(shí)后,CPU開(kāi)放中斷,開(kāi)始計(jì)數(shù),將計(jì)數(shù)器初值設(shè)為延時(shí)所經(jīng)過(guò)的距離,計(jì)數(shù)器每過(guò)一個(gè)計(jì)時(shí)單元加一。中斷產(chǎn)生,停止計(jì)數(shù),最后將計(jì)數(shù)器中的值數(shù)據(jù)處理后顯示到數(shù)碼管上。如果計(jì)數(shù)器中的值小于預(yù)定值就由軟件產(chǎn)生一定頻率的信號(hào)到蜂鳴器報(bào)警,并啟動(dòng)報(bào)警燈。當(dāng)需要所存數(shù)據(jù)時(shí),由外部中斷判斷鍵盤(pán)是否按下,通過(guò)不斷顯示上次測(cè)量數(shù)據(jù)來(lái)鎖定數(shù)據(jù)。當(dāng)檢測(cè)到鍵盤(pán)再一次按下時(shí),按取消鎖存,并繼續(xù)測(cè)量距離。
5 結(jié)語(yǔ)
應(yīng)用本系統(tǒng)3 mm~20 m內(nèi)的目標(biāo)做了多次測(cè)量,測(cè)量結(jié)果為,其最大誤差為1.5 mm,且重復(fù)性好。可見(jiàn)基于單片機(jī)設(shè)計(jì)的超聲波測(cè)距系統(tǒng)具有硬件結(jié)構(gòu)簡(jiǎn)單、工作可靠、測(cè)量誤差小等特點(diǎn)。因此,它可用于許多對(duì)測(cè)量要求精度高,測(cè)量范圍適當(dāng)?shù)脑O(shè)備和各種檢測(cè)系統(tǒng)中。