王鑫彤
遼寧錦州渤海大學(xué)工學(xué)院
?
基于單片機的超聲測距系統(tǒng)
王鑫彤
遼寧錦州渤海大學(xué)工學(xué)院
本文設(shè)計了基于單片機的超聲波測距系統(tǒng),通過該系統(tǒng)可以說明單片機的應(yīng)用廣泛,而且還可以進一步了解,掌握單片機的開發(fā)方法。本文主要是圍繞著超聲測距系統(tǒng)的實現(xiàn)原理,硬件設(shè)計電路以及軟件程序設(shè)計方面進行論述的,并且在軟件程序?qū)崿F(xiàn)部分給出了部分的流程圖。超聲測距系統(tǒng)在很多領(lǐng)域中有著重要的意義。
單片機 超聲 測距
傳統(tǒng)的測距儀器一般選擇的是超聲波,雷達以及激光等,然而由于如果采用雷達和激光進行測距的話就會增加成本的預(yù)算,因此這兩種儀器的使用并沒有得到廣泛的推廣與運用,除此之外,雷達和激光對一些領(lǐng)域是存在著限制性的,主要是用在軍事方面比較多。在這種情況下,超聲波的測距系統(tǒng)應(yīng)運而生,這種系統(tǒng)的成本投入比較多,而且容易實現(xiàn),另外系統(tǒng)的結(jié)構(gòu)在設(shè)計方面相對其他儀器而言比較簡單,此外考慮到超聲波可以在傳播的期間實現(xiàn)不受煙霧等因素的影響,而且由于對待電磁場以及光線方面不是很敏感,因而用在黑暗的環(huán)境以及灰塵比較多的環(huán)境中比較適合,超聲波測距系統(tǒng)的實現(xiàn)在很多的領(lǐng)域中都可以發(fā)揮很大的實力,應(yīng)用的場合其中就包括了海洋測量以及工業(yè),建筑領(lǐng)域方面。
超聲測距的原理涉及到了脈沖回波,脈沖回波的這一個概念誕生于1964年,主要的原理是通過用超聲的脈沖去激勵超聲的探頭,從而會發(fā)生向外輻射的現(xiàn)象,然后經(jīng)過反射后接收到的信號就是超聲波,也可以稱為是回波。記下超聲波出發(fā)的初始時間到接收到的時間這個過程的時間段設(shè)置為ToF。關(guān)于這個距離測量會受到很多因素的影響,比如傳輸過程中的溫度,壓強以及空氣中的密度等等。
時間的測量是否精確這對于系統(tǒng)而言是很重要的一部分,也是值得深究的一個問題。要計算出時間就需要先對距離進行計算,本文討論了兩種計算距離的方法。脈沖回波法與相位差法這兩者在處理回波方面有不同的方式,相位差計算距離的原理是首先超聲波的接收端接收到經(jīng)過調(diào)制后的回波信號,然后將信號放入到放大器中進行轉(zhuǎn)換生成的信號是和相位的信號幾乎是一模一樣的,然后將這個產(chǎn)生的電信號的電壓與驅(qū)動電壓兩者進行相互的比較,從而得出電壓的相位差,接著就根據(jù)這個相位差能夠進一步地求出需要的距離。這種方法的優(yōu)點是測得的距離精確度很高,缺點是求出的解存在著不確定的因素。所以相比較于脈沖回波的方法采用的比較多。本文的距離測量用的就是這個方法。
本論文中的系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 超聲波系統(tǒng)的硬件電路圖
通常情況下選擇的超聲探頭的頻率是40KHz,當要用到的頻率要求很高的情況下只能定做了,本文中的超聲波測距選擇的超聲波傳感器的頻率是40KHz,傳感器的特性參數(shù)如表1所示。
表1 傳感器特性參數(shù)
4.1發(fā)射電路
發(fā)射電路使用到調(diào)諧式與非調(diào)諧式,通常情況下調(diào)諧式組成元件有線圈,而其中的頻率的決定因素有電容和電感。相比于調(diào)諧,非調(diào)諧的元件中不包含調(diào)諧的器件,而且超聲的頻率的決定因素是跟晶片中的相關(guān)參數(shù)有關(guān)系的。電路中的傳感器的頻率選擇的是40KHz,從而可以發(fā)揮特性到最佳。發(fā)射的電壓盡量取得最大值,由于發(fā)射電壓和發(fā)射的頻率是成正比的,另外發(fā)射電壓增加,回波的頻率也會增加。發(fā)射電路的設(shè)計結(jié)構(gòu)相比較于接收電路而言要簡潔。其中發(fā)射傳感器中的電壓是有一定值的限制的,這個值的最大值取值是在滿足傳感器的內(nèi)部不會被損壞的情況下決定的。發(fā)射電路中的發(fā)射強度與電阻有關(guān)系,增加電阻,相對地發(fā)射強度也會增大,而且分辨率會降低。
發(fā)射電路實現(xiàn)的作用是增加發(fā)射探頭處的電壓值以及增高電路中的功率。本文中的發(fā)射電路的脈沖信號是由單片機發(fā)出的,脈沖信號很穩(wěn)定發(fā)射電路設(shè)計如圖2所示。
圖2 發(fā)射電路
超聲測距的系統(tǒng)中的組成部分主要有單片機發(fā)射電路,接收電路以及數(shù)碼管等。本文的主控制器單片機的型號選擇的是AT89S52。
4.2接收電路
接收電路的組成部分主要包括了帶通的濾波電路,前置放大電路以及積分器和自增益電路。接收電路的最前端放置的是放大電路。而且信噪比也高,同時動態(tài)變化的范圍可以是100dB以上。屏蔽盒中放著放大器,而且換能器也放在旁邊,另外前置的放大器中還包括了反向的二極管以及隔離所需的電阻。
目的是阻止脈沖比較大的信號發(fā)送到放大極。在回波接收的這個過程中,當超聲波發(fā)送到表面的時候,回波信號反射回來的會比較微弱,而且電壓也比較小。
4.3檢測電路
當信號進過放大濾波這些操作后下一步就是檢測信號,檢測的目的是將接收到的信號從出發(fā)到接收的這個過程所需要的時間確認下來,這個時間的確定可以說是一個很難把握的,由于這個時間跟系統(tǒng)中的儀器的質(zhì)量有關(guān)系,與儀器的測量是否精確有關(guān)另外電路的檢測對系統(tǒng)的工作也是有著很大的影響。在檢測電路中信號接收時要保證一定的精確度,這是十分重要的,一般情況下需要把具有固定值的電平和輸入的信號做一個對比分析,上升和下降沿的觸發(fā)的生成通過電平的輸出來決定,最終形成數(shù)字脈沖,從而將外中斷的引腳觸發(fā)。
當硬件部分的功能差不多實現(xiàn)后,就需要進行軟件設(shè)計,其中的軟件設(shè)計的目的是為了處理數(shù)據(jù)和實現(xiàn)應(yīng)用。軟件設(shè)計主要完成的功能包括:
①對信號的發(fā)射進行控制,在軟件設(shè)計的過程中要確保可以輸出脈沖串;
②對數(shù)據(jù)進行存儲處理;
③顯示輸出是將測得的距離通過LED進行顯示。
5.1主程序結(jié)構(gòu)
本系統(tǒng)中采用的編程語言是匯編,軟件設(shè)計主要包括了主程序,子程序以及中斷服務(wù)的子程序等等。具體的流程圖如下所示。首先是中定時器打開之前需要對脈沖串的子程序進行初始化,接著啟動中斷服務(wù)。在初始化中重要的部分是關(guān)于定時器是如何工作的和初始化的初始值該如何設(shè)置。下面圖3-5為程序流程圖。
圖3 主程序流程圖
圖4 外部中斷子程序流程圖
圖5 定時中斷子程序流程圖
①考慮到探頭的功率畢竟是具有一定的限制性的,所以適用的范圍是室內(nèi),范圍比較小,所以需要 把功率換成大些的,這樣的話測得的距離的范圍就會大大地增大,此外超聲傳感器的中心頻率也需要進行調(diào)整更換,單片機的程序需要進一步地優(yōu)化,以便可以測得更遠;
②考慮到在超聲波進行傳輸?shù)恼麄€過程中,由于一些空氣的流動以及灰塵的影響從而很容易會影響到傳播距離的測量,可以將探頭的功率進行改變也可以將被測的表面的一些條件進行改進,最后將集成的芯片也應(yīng)用到里面去,從而進行改進。
本文主要是圍繞著單片機的超聲測距系統(tǒng)進行論述,其中的涉及到的有硬件方面的設(shè)計以及軟件方面的設(shè)計。單片機作為主控制器。本文主要介紹了超聲測距系統(tǒng)的實現(xiàn)原理,通過軟件進行控制,從而增強測量過程中的精確度。
[1] 孫育才.MCS-51系列單片微型計算機及其應(yīng)用[M].南京:東南大學(xué)出版社,1997
[2] 隋衛(wèi)平.高精度實時超聲測距技術(shù)研究[D].北京:國防科學(xué)技術(shù)大學(xué),2003
[3] 孟立凡,鄭賓.傳感器原理與技術(shù)[M].北京:國防工業(yè)出版社,2005
[4] 康華光.電子技術(shù)基礎(chǔ)(模擬部分)[M].北京:高等教育出版社,1999