雷文禮+任新成+邵婷婷



摘 要: 隨著計算機技術的飛速發展,芯片價格日益降低,可靠性穩步提升,用智能技術為人們的生產和生活提供便利成為一種迫切的需求。超聲波測距作為一種便捷的無線測距手段,有效避免了測距人員與危險環境的接觸,可以很好地滿足無線測距的現實需求。這里設計一種可以實時測量的便捷式測距系統,該系統可對障礙物實時測量,具有操作簡單,可靠性高的特點。
關鍵詞: 超聲波; STC89C52; 無線測距; 實時性
中圖分類號: TN912.203.1?34; TP273.5 文獻標識碼: A 文章編號: 1004?373X(2015)15?0012?03
Design and implementation of ultrasonic range?finding system based on
single chip microcomputer
LEI Wenli, REN Xincheng, SHAO Tingting
(College of Physics and Electronic Information, Yanan University, Yanan 716000, China)
Abstract: With the rapid development of computer technology, it leads to chip prices reduction increasingly and reliability promotion steadily. It′s an urgent demand to provide convenience for people′s life and industrial production by using intelligent technology services. As a convenient wireless range?finding means, ultrasonic range?finding avoids the range?finding staff′s contact with dangerous environment effectively, and can better realize the demand of wireless range?finding. A portable range?finding system which can measure in real?time was design. The system can measure barrier in real?time, and has the advantages of simple operation and high reliability.
Keywords: ultrasonic; STC89C52; wireless range?finding; real?time performance
在人們的日常生活和工業生產現場中,經常會碰到一些需要非接觸測距的場合,如帶腐蝕的液體,強電磁干擾,有毒等惡劣條件下,測量距離存在不可克服的缺陷。超聲波測距作為一種便捷的無線測距手段,有效避免了測距人員與危險環境的接觸,可以很好地滿足無線測距的現實需求,獲得了廣泛的應用[1]。本文設計一種可以實時測量的便捷式測距系統,該系統可對障礙物實時測量,具有操作簡單,可靠性高的特點。
1 超聲波測距原理
超聲波發射器向某一方向發射超聲波,同時開始計時[2],當超聲波接收器收到超聲碰到障礙物后的反射波時,立即停止計時,記錄時間[t。]根據超聲波在空氣中的傳播速度和計時器記錄的時間[t,]用速度距離公式,可以計算出發射點距障礙物的距離[S,]即:[S=340t2。]
在測距時,當傳播介質溫度變化不大時,近似認為超聲波速度在傳播的過程中是不變的,只要測得超聲波往返的時間,即可求得距離,如圖1所示。
圖1 超聲波的測距原理
[H=Scosθ] (1)
[θ=arctanLH] (2)
式中[L]表示兩探頭之間中心距離的一半。
超聲波的傳播距離為:
[2S=vt] (3)
式中:[v]為超聲波的傳播速度;[t]為從發射到接收所用的時間。
將式(2),式(3)代入式(1)中,得:
[H=12vtcosarctanLH] (4)
當需要測量的距離[H?L]時,則式(4)變為:
[H=12vt] (5)
所以,這里需要精確測量出超聲波傳播的時間[t,]就可以根據上述公式,計算出需要測量的距離[H。]
2 系統設計
本系統按模塊劃分為測距模塊、控制模塊、顯示模塊、報警模塊[3],如圖2所示。電路結構可劃分為超聲波傳感器電路、報警電路、單片機控制電路。就此設計的核心模塊來說,單片機就是該設計的中心單元。系統采用STC89C52單片機作為核心控制單元,當測得的距離小于設定距離時,主控芯片將測得的數值與設定值進行比較處理,然后控制蜂鳴器報警[4]。
2.1 硬件電路設計
硬件電路總設計如圖3所示,該設計中要用到如下器件:STC89C52、超聲波傳感器、按鍵、四位數碼管、蜂鳴器等一些單片機外圍應用電路[5]。其中,D1為電源工作指示燈,電路中用到3個按鍵,一個是設定鍵, 一個加鍵,一個減鍵。
圖2 系統組成圖
超聲波模塊采用HC?SR04超聲波模塊,該模塊包括超聲波發射器、接收器與控制電路,具有2~400 cm的非接觸測距功能,精度可達3 mm,模塊采用I/O口TRIG觸發測距,可自動發送8個40 kHz的方波,并檢測是否有信號返回。若有信號返回,則通過I/O口ECHO輸出一個高電平,該高電平的持續時間即為超聲波從發射到返回[6]的時間t。
[測試距離=(高電平時間×340)2]
超聲波模塊如圖4所示,供電電壓[VCC]為5 V,TRIG為觸發控制信號輸入,ECHO為回響信號輸出線。
圖4 超聲波模塊實物圖
本文設計采用定時器0進行時間測量,設置TCNTT0為預設值0XCE,8分頻,當定時器0溢出中斷發生2 500次時為125 ms,計算公式如下(單位:ms):
[T=(定時器0溢出次數×(0XFF?0XCE))1 000]
式中定時器0初值計算依據分頻不同而有差異。
顯示模塊采用LCD1602字符型液晶顯示電路,顯示接口電路如圖5所示。
圖5 LCD1602顯示電路
聲音報警電路采用三極管、電阻和一個揚聲器連接到主控制器的P13引腳上,構成一個聲音報警電路,如圖6所示。
本設計中復位電路采用在RESET端持續給出2個機器周期的高電平,復位電路如圖7所示。
圖6 聲音報警電路圖 圖7 復位電路圖
電源部分的設計采用3節5號干電池4.5 V供電。
2.2 軟件設計
系統主程序工作流程如圖8所示。
圖8 主程序工作流程圖
系統啟動后,首先自動進行初始化,然后用測定距離和設定值進行比較,如果大于設定值則返回初始化,如果小于設定距離便啟動報警器,然后進行距離比較,如果依然大于設定值便結束報警。
3 結 語
本文設計了一種基于單片機的超聲波測距系統,并對系統的軟硬件實現和電路連接圖進行了詳細描述,該系統能對中近距離障礙物進行實時測量,具有操作簡單,可靠性高的特點。該系統可廣泛應用于汽車倒車雷達等現實應用中,并為其他無線測距方案提供了借鑒。
參考文獻
[1] 吳政江.單片機控制紅外線防盜報警器[J].實用電子制作,2006(12):26?28.
[2] 宋文緒.傳感器與檢測技術[M].北京:高等教育出版社,2004.
[3] 余錫存.單片機原理及接口技術[M].西安:西安電子科技大學出版社,2000.
[4] 唐桃波,陳玉林.基于AT89C51的智能無線安防報警器[J].電子設計應用,2003(6):49?51.
[5] 李全利.單片機原理及接口技術[M].北京:北京航空航天大學出版社,2004.
[6] 薛均義,張彥斌.MCS?51系列單片微型計算機及其應用[M].西安:西安交通大學出版社,2005.