陳誠, 戴爾晗
(南京郵電大學 自動化學院,江蘇 南京 210023)
摘要:設計了一種以AT89S52單片機為主控件的超聲波測距報警系統。系統主要由超聲波發射、接收檢測電路和報警電路組成。利用最近反射物的判別原則比較測量距離與設定距離,將測量結果以蜂鳴器報警和LED閃爍形式呈現出來。該系統測量精度較高、反應靈敏,可以對車后多方位障礙物的距離遠近進行報警。
關鍵詞:單片機;超聲波;多方位
0引言
現有汽車的倒車雷達、倒車視頻影像測距報警系統主要的功能都是用于倒車時水平方向的防撞。對于汽車倒車時背后有深坑、懸崖或水塘的情況,現有的汽車倒車報警系統不提供報警,從而導致人、車出現險情,汽車的保護系統出現漏洞。近年來,一些高檔車可以選擇配置泊車雷達(車前)、自動泊車入位、并線輔助裝置,其原理也與人們常見的倒車雷達類似。但是,對于汽車在倒車時遇到司機沒有發現的深坑、懸崖或水塘的情況,目前尚無此類報警系統。為了減少汽車在山區或旅游景點地區的盤山道路上彎多路窄、懸崖陡坡以及停車場的墜落事故,本文設計一種汽車倒車多方位測距報警系統,用以提高汽車的行車安全保障系數。
1準備知識
1.1超聲測距原理
系統示意圖如圖1所示。
利用超聲波在空氣中的傳播速度(340 m/s)為已知,測量超聲波在發射后遇到障礙物再反射回來的時間,根據發射和接收的時間差就可以計算出超聲波發射點到障礙物的實際距離。這就是所謂的時間差測距法。
當超聲發射探頭發出的超聲波遇到反射物反射,被超聲接收探頭接收,如果超聲探頭與障礙物之間的距離為L,定時器記錄超聲波折返所用的時間為Δt,V為超聲波的波速(超聲波在空氣中的傳播速度約為340 m/s),那么就可以計算出超聲波的發射點距障礙物之間的距離為:
L=(V×Δt)/2(1)
超聲波距離測量原理圖[1]如圖2所示。
圖2超聲波距離測量原理圖原則上反射的超聲波應遵循反射定律,但一般物體的表面都不是很光滑的,所以在粗糙的路面反射的超聲波實際上會以漫反射的形式向各個方向反射。其中必然有一部分超聲波會反射回原超聲波的發射點位置。如果在原超聲發射點處又設置有一個超聲接收探頭,就能探測到超聲波從反射物直接反射回來的回波。
1.2最近反射物的判別原則[23]
如果從超聲波發射探頭僅發出一個脈沖波,經過一段時間后,超聲波接收探頭實際上會依次接收到多個反射的脈沖信號。這是因為接收到的超聲波信號中不僅有直接反射信號,還有在不同的反射物之間經多次反射后再到達接收探頭的信號。但只要超聲波是從其他物體上進行了兩次以上的反射,波到達接收探頭時所經過的路程必然會大于從目標物直接反射到接收探頭的路程,所以兩次以上的反射波到達接收探頭的時間會比直接反射波有滯后。根據這一原理,超聲接收探頭所接收到的第一個脈沖信號就只能是從最近的反射物直接反射回來的波。當汽車倒車時,如果后面是一片平地,向后下方的超聲探頭的發射方向又保持不變,那么最近反射物的距離將基本保持不變,即超聲回波的第一個脈沖與發射信號的時差應保持大體不變。但當汽車的后下方出現一個深坑、懸崖時,第一個反射脈沖的時差就會異常地增大或者消失(反射物太遠以致反射波測不到),根據這一情況就可判斷在汽車的背后出現了深坑或懸崖。
2硬件電路設計[45]
控制系統[6]在單片機內部程序的控制下,超聲波發射探頭發射超聲波,在超聲波遇到障礙物后,部分超聲波反射回來被超聲波接收探頭接收,信號輸入到單片機,由單片機進行中斷和數據的處理,計算出發射探頭到障礙物距離并與設定值進行比較,再由蜂鳴器報警提示,以達到安全倒車的目的。控制系統流程圖如圖3所示。
2.1超聲波的發射電路[7]
超聲波發射電路由超聲波發射探頭和放大電路組成。超聲波發射探頭將電信號轉換為機械波發射出去,單片機自發產生的40 kHz的方波脈沖需要放大才能驅動超聲波發射探頭將超聲波發射出去,本設計選用74HC04芯片進行信號放大,74HC04內含6組反相器,低電平輸入則高電平輸出,超聲波發射電路如圖4所示。
2.2超聲波的接收電路[7]
超聲波在空氣中傳播,遇到障礙物后其中一部分超聲波會返回,也就是說超聲波在傳播過程中會有衰減。如果傳播距離較遠,那么超聲波接收電路就會接收到比較微弱的超聲波返回信號,因此需要放大接收到的返回信號,放大的倍數也要比較大。水平方向超聲波接收電路主要是由CX20106A紅外遙控接收器集成芯片及外接電路構成的,比較完之后超聲波接收電路會輸出一個低電平到單片機去請求中斷,單片機立即停止計時,同時進行數據的處理。水平方向超聲波接收電路如圖5所示。
豎直接收電路比水平接收電路多一個比較電路部分,輸入兩個電壓,以低電平有效輸出,如圖6所示。
23報警裝置與鍵盤控制
報警模塊通過單片機給定不同頻率利用蜂鳴器發出不同聲音,另一個就是通過發光二極管不同的顏色來定義不同的意義,如圖7所示。
鍵盤主要用于水平回波時間的設定以及豎直方向距離調整,如圖8所示。
3系統軟件設計[8]
本設計采用模塊化[9]的思路來設計和編寫程序,程序主要由系統主程序、子程序和中斷服務程序構成。主程序完成單片機的初始化、超聲波的發射和接收、計算超聲波發射點與障礙物之間的距離、蜂鳴器報警和LED的閃爍等。主程序如圖9所示。
圖8鍵盤控制圖9主程序超聲波接收電路在接收到超聲波回波后向單片機發出有效信號,單片機通過外部中斷的改變記錄回波信號到達的時間,中斷發生之后就表示已經接收到了回波信號,這時停止計時,并且讀取計數器中的數值,這個數值就是需要進行測量的時間差的數據。
3.1中斷處理程序
計算水平方向的車尾與障礙物之間的距離是INT0的中斷程序,豎直方向的距離是INT1的中斷程序。根據前面對超聲接收電路的分析,在超聲波接收探頭接收到超聲波回波信號后,超聲波接收電路就會產生一個低電平送至單圖10中斷子程序片機的P32引腳使系統中斷,則系統轉入中斷處理程序。進入中斷處理后,定時器time1和外部中斷0就立即被關閉,同時讀取時間值,并給回波接收標志位清零即成功接收到回波信號。中斷子程序流程圖如圖10所示。
3.2蜂鳴器報警程序
主程序根據距離計算公式計算數據即距離結果的遠近,通過蜂鳴器的鳴叫的頻率來分辨。在本設計中,利用單片機P37引腳來產生不同頻率的方波來控制蜂鳴器產生不同頻率的“滴滴”聲,且距離障礙物越近鳴叫頻率越高。
當倒車距離大于30 cm時,語音提示為“倒車安全”;當倒車距離在15~30 cm之間時,語音提示為“倒車”;當倒車距離在10~15 cm時,語音提示為“倒車小心”;當倒車距離在5~10 cm時, 語音提示為“倒車危險”;當倒車距離小于5 cm 時,語音提示為“非常危險,緊急停車”。
4結論
本文設計了以89S52單片機為核心,同時以超聲波測距為主的顯示報警系統,通過超聲波傳感器采集數據,由單片機控制核心快速地計算出發射探頭到障礙物的距離并通過LED的閃爍同時利用蜂鳴器鳴叫進行聲音報警提示,在實物模擬過程中測距精度達到5 cm高精度,測距盲區大約10 cm,小車模型超聲波模塊測距時存在的死區大約為10 cm,而實際應用中的測量距離范圍要遠大于10 cm,測量的誤差比較小,滿足設計要求。本系統對汽車倒車雷達的市場具有一定的理論和研究價值。
參考文獻
[1] 張珂,俞國華,劉剛海.超聲波測距回波信號處理方法的研究[J].測控技術,2008,27(1):4850.
[2] 趙海鳴, 卜英勇, 王紀嬋,一種高精度超聲波測距方法的研究[J]. 湖南科技大學學報(自然科學版),2006,21(3):3538.
[3] 張珂,俞國華,劉剛海.超聲波測距回波信號處理方法的研究[J].測控技術,2008,27(1):4850.
[4] 彭翠云,趙廣耀,戎海龍.汽車倒車系統中超聲波測距模塊的設計[J].壓電與聲光,2008,30(2):251254.
[5] 周鵬.基于STC12C5A60S2單片機的測障系統設計[J].微型機與應用,2013,32(12):1719,23.
[6] 袁天夫.單片機控制遠程告警系統的研究[J].微型機與應用,2013,32(23):2426.
[7] 姜興,劉濤.24 GHz車載防撞雷達及中頻信號處理電路設計[J].微型機與應用,2014,33(1):5659.
[8] 謝維成,楊家國.單片機原理與應用及C51程序設計[M].北京:清華大學出版社,2009
[9] NAGAMACHI M.Kansei engineering as a powerful consumeroriented technology for product development [J].Applied Eronomics,2002,33(3):289294.