目前超聲波測距已得到廣泛應用,國內一般使用專用集成電路根據超聲波測距原理設計各種測距儀器,但是專用集成電路的成本較高、功能單一。而以單片機為核心的測距儀器可以實現預置、多端口檢測、顯示、報警等多種功能,并且成本低、精度高、操作簡單、工作穩定可靠。本文簡要介紹了利用51單片機實現超聲波測距的原理以及實現的方法。
1 51系列單片機的功能特點
5l系列單片機中典型芯片(女[1AT89C51)采用40引腳雙列直插封裝(DIP)形式,內部由CPU,4kB的ROM,256 B的RAM,2個16b的定時/計數器TO和T1,4個8 b的工/O端I:IP0,P1,P2,P3,一個全雙功串行通信口等組成。特別是該系列單片機片內的Flash可編程、可擦除只讀存儲器(E~PROM),使其在實際中有著十分廣泛的用途,在便攜式、省電及特殊信息保存的儀器和系統中更為有用。
5l系列單片機提供以下功能:4 kB存儲器;256 BRAM;32條工/O線;2個16b定時/計數器;5個2級中斷源;1個全雙向的串行口以及時鐘電路。
空閑方式:CPU停止工作,而讓RAM、定時/計數器、串行口和中斷系統繼續工作。
掉電方式:保存RAM的內容,振蕩器停振,禁止芯片所有的其他功能直到下一次硬件復位。
5l系列單片機為許多控制提供了高度靈活和低成本的解決辦法。充分利用他的片內資源,即可在較少外圍電路的情況下構成功能完善的超聲波測距系統。
2 單片機實現測距原理
單片機發出超聲波測距是通過不斷檢測超聲波發射后遇到障礙物所反射的回波,從而測出發射和接收回波的時間差tr,然后求出距離S=Ct/2,式中的C為超聲波波速。
限制該系統的最大可測距離存在4個因素:超聲波的幅度、反射的質地、反射和入射聲波之間的夾角以及接收換能器的靈敏度。接收換能器對聲波脈沖的直接接收能力將決定最小的可測距離。為了增加所測量的覆蓋范圍、減小測量誤差,可采用多個超聲波換能器分別作為多路超聲波發射/接收的設計方法。由于超聲波屬于聲波范圍,其波速C與溫度有關,表1。列出了幾種不同溫度下的波速。
在測距時由于溫度變化,可通過溫度傳感器自動探測環境溫度、確定計算距離時的波速C,較精確地得出該環境下超聲波經過的路程,提高了測量精確度。波速確定后,只要測得超聲波往返的時間r,即可求得距離5。
單片機(AT89C51)發出短暫的40kHz信號,經放大后通過超聲波換能器輸出;反射后的超聲波經超聲波換能器作為系統的輸入,鎖相環對此信號鎖定,產生鎖定信號啟動單片機中斷程序,得出時間t,再由系統軟件對其進行計算、判別后,相應的計算結果被送至LED顯示電路進行顯示,若測得的距離超出設定范圍系統將提示聲音報警電路報警。