新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于單片機的超聲波測距系統(tǒng)設計及實現(xiàn)

基于單片機的超聲波測距系統(tǒng)設計及實現(xiàn)

作者: 時間:2013-02-07 來源:網(wǎng)絡 收藏
  頻率較高而波長短,因而具有束射特性,可沿直線傳播、方向性好、繞射小、穿透力強、傳播速度慢,而且遇到雜質(zhì)或分界面時會產(chǎn)生反射波。正由于具有以上特點,所以在測量領域,他的應用范圍越來越廣泛。

  1 測距原理

  超聲波傳感器分機械方式和電氣方式兩類,它實際上是一種換能器,在發(fā)射端它把電能或機械能轉(zhuǎn)換成聲能,接收端則反之。本次設計超聲波傳感器采用電氣方式中的壓電式超聲波換能器,它是利用壓電晶體的諧振來工作的。它有兩個壓電晶片和一個共振板。當它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片將會發(fā)生共振,并帶動共振板振動,產(chǎn)生超聲波。反之,如果兩電極間未外加電壓,當共振板接收到超聲波時,將壓迫壓電晶片作振動,將機械能轉(zhuǎn)換為電信號,就成為超聲波接收器。在超聲波電路中,發(fā)射端輸出一系列脈沖方波,脈沖寬度越大,輸出的個數(shù)越多,能量越大,所能測的距離也越遠。超聲波發(fā)射換能器與接收換能器其結構上稍有不同,使用時應分清器件上的標志。

  Pellarn和Galt于1946年提出了脈沖回波法,其工作原理是:用超聲脈沖激勵超聲探頭向外輻射超聲波,同時接收從被測物體反射回來的超聲波(簡稱回波),通過檢測或估計從發(fā)射超聲波至接收回波所經(jīng)歷的射程時間ToF(Time of Flight),按下式計算超聲波探頭與被測物體之間的距離d,即:

  其中c為聲波在空氣介質(zhì)中的傳播速度。

  2 系統(tǒng)構成

  本系統(tǒng)硬件電路由、超聲波發(fā)射電路、超聲波接收電路、測溫電路、顯示電路、報警電路等構成,如圖1所示。

  3 系統(tǒng)程序設計

  3.1 主程序

  主程序首先對系統(tǒng)環(huán)境初始化,設置定時器TO工作模式為16位定時/計數(shù)器模式,總中斷允許位置1并給顯示端口清0;然后調(diào)用超聲波發(fā)生子程序送出若干個超聲波脈沖,為了避免超聲波從發(fā)射器直接傳送到接收器引起直射渡觸發(fā),從發(fā)射開始一直到"虛假反射波"結束這段時間內(nèi),不開放外部中斷(INTO)申請,便可有效躲避干擾,但同時也會造成測試"盲區(qū)".假設延時約0.1 ms后,才打開外部中斷接收返回的超聲波信號,當溫度為20℃,測量盲區(qū)為d=1×10-2×344=1.72 cm.

  3.2 超聲波發(fā)生子程序和接收子程序

  超聲波發(fā)生子程序的作用是通過P1.0端口發(fā)送超聲波換能器所需的40kHz的方波信號(脈沖寬度為12μs左右),同時把計數(shù)器TO打開進行計時。超聲波發(fā)生子程序較簡單,但要求程序運行準確,所以采用匯編語言編程。

  超聲波接收子程序利用外部中斷O檢測返回超聲波,一旦接收到返回超聲波信號(即INT0引腳出現(xiàn)低電平),立即進入中斷服務子程序,關閉定時器TO停止計時,并將測距成功標志位賦值1.如果當計時器溢出時還未檢測到超聲波返回信號,則說明障礙物過遠,超出量程,將關閉外部中斷,并標志此次測距不成功。

  最大測試距離將取決于:兩次脈沖群發(fā)送之間的最小時間間隔和脈沖的能量。一般來說,發(fā)射端脈沖個數(shù)越多,能量越大,所能測量的距離也越遠。但也不是無限制的,本方案是讀取定時器TO的計數(shù)值,最大能測試的距離是TO尚未溢出時檢測到超聲波回波信號,故在溫度20℃下,最大測試距離為。在一些周期性發(fā)射超聲波設備中,如果要測試的最大距離是10 m,則兩次脈沖群之間的最小時間為。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉