周建國 彭志雄
摘 要:本設計是以單片機技術為基礎,實現對前方物體距離的測量。根據超聲波指向性強,能量消耗慢,在介質中傳播距離遠的特點,利用超生波傳感器對前方物體進行感應,經過STC89C52單片機中的程序對超聲波傳感器發射和接收的超聲波信號進行分析和計算處理,最后將處理結果在LCD1602上顯示,并設置若干功能按鍵。測量范圍為2cm到300cm。
關鍵詞:STC89C52;HC-SR04超聲波傳感器;LCD1602
DOI:10.16640/j.cnki.37-1222/t.2016.06.216
0 引言
由于超聲測距是一種非接觸檢測技術,具有不污染、高可靠、等特點。因此可廣泛應用于車輛自動導航、物體識別與定位、車輛安全行駛輔助系統乃至地形地貌探測等許多領域中。可在不同環境中進行距離準確度在線標定,可直接用于水、酒、飲料等液位控制,可進行差值設定,直接顯示各種液位罐的液位、料位高度。因此,超聲波測距技術在生產實踐中發揮著重要作用。
利用超聲波測量技術能夠比較快速、便捷,且易于做到實時控制,此外在測量精度上能達到工業級的指標要求。因此,超聲波測距在移動機器人的研究上得到了廣泛的應用。同時由于超聲波測距系統具有以上的這些優點,因此也廣泛應用在汽車倒車雷達等方面。
1 超聲波測距的原理
(1)超聲波的基本理論。超聲波技術是一門以機械、材料科學、信息科學以及半導體技術為基礎的、應用廣泛的綜合性學科。超聲波技術在生產實踐中能夠大幅度提高產品質量,保障生產過程的安全性和生產設備的安全運行、提高生產效率、降低生產成本。因此,人們對超聲波技術的應用進行了深入的研究。
超聲波技術包含了超聲波的產生、傳播以及接收這三個過程。超聲波的特性有聚束、反射、投射以及定向性。根據超聲波輻射功率的大小,大致可以分為兩種,一種是用超聲波使物體的物性變化的功率應用,稱為功率超聲;另一種是用超聲波獲取信息,稱為信息超聲。
(2)超聲波測距系統原理。在超聲波測距系統中,先有單片機產生一個40us的高電平觸發信號給超聲波產生模塊,發射探頭發出8個40kHz的脈沖,然后模塊產生一個脈沖信號,其寬度為發射與接收的時間間隔,被測物體距離越遠,所產生的脈沖寬度越大。超聲測距的方法大致有以下幾種:1)取輸出脈沖的平均值電壓,該電壓 (其幅值基本固定 )與距離成正比,測量電壓即可測出距離;2)測量輸出脈沖的寬度,即發射超聲波與接收超聲波的時間間隔t,因此被測距離為S=0.5×v×t。在本系統中采用第二種方案。在高精度的中長距離測量中,適合使用超聲波測距,由于超聲波在標準空氣中的傳播速度為331.45m/s,由單片機負責計時,單片機的晶振使用11.0592M,因此在理論上系統可以達到毫米級的測量精度。
超聲波測距的算法設計: 超聲波在空氣中傳播速度為340m/s(15℃時)。T2是接收到超聲波的時刻,T1是發射超聲波的時刻,T2—T1得出時間間隔的絕對值,假定T2—T1=0.05s,則有340m×0.05s=17m。超聲波測距系統的系統框圖如下圖所示:
2 系統主要硬件設計
(1)超聲波發射電路設計。超聲波發射電路是由超聲波發射探頭和超聲波運算放大器構成。超聲波發射探頭是將電信號轉換為機械振動波發射出去,而單片機所產生的8個40 kHz的方波需要進行放大后才能驅動超聲波發射探頭將超聲波發射出去,因此發射驅動實際上是一個信號調理電路,本設計中選用74LS04芯片進行信號的放大。
在發射電路正常工作時,由單片機產生40 kHz的脈沖從P3^1口向超聲波的發射電路部分發出指令信號,再經74LS04放大電路放大后,驅動超聲波發射探頭將超聲波發射出去。
(2)超聲波接收電路設計。超聲波在空氣中傳播會隨著距離的增加而減弱,如果測量距離較遠,則超聲波接收電路所接收到的超聲波信號就會比較微弱,因此需要對接收到的微弱信號進行放大。超聲波的接收電路是由集成芯片CX20106A為核心構成的,CX20106A芯片電路可以對接收到的超聲波信號進行放大、整形、帶通濾波、限幅、峰值檢波、比較等功能,之后超聲波接收電路會輸出一個低電平到單片機去請求中斷,同時單片機停止計數,并開始去進行數據處理。
CX20106A芯片中的前置放大器具有自動增益控制(AGC)功能,當測量距離較短時,放大器增益會自動減小,因而不會過載;而當測量距離較遠時,超聲波信號微弱,前置放大器就會自動增加增益值,從而得到合適的輸出信號。
3 系統軟件設計
(1)基于LCD1602的顯示模塊:分為等待子程序、寫入子程序、顯示子程序以及初始化子程序;
(2)距離計算程序:分為超聲波發送控制子程序和信號接收處理子程序;
(3)由于C語言有更大的優勢,因此本系統的程序設計語言使用C語言。編譯器使用KeiluVision4進行程序編譯與調試;
(4)主程序:可分為系統初始化子程序、顯示子程序、按鍵處理以及中斷處理子程序等部分。
4 結論
本設計利用超聲波傳感器實現無接觸式空氣測距,傳感器根據當前的環境溫度對初始的距離值進行校正,此時無需在程序中對超聲波聲速進行校正,即無論溫度多少,聲速選擇340m/s 即可。故本系統在常溫下具有測量精度高、抗干擾能力強等特點,可適用于各種障礙物的識別以及車輛自動導航等領域,因此具有廣闊的應用前景。
參考文獻:
[1]陳瑩.基于單片機的超聲測距系統[D].武漢:華中科技大學碩士論文,2004(04).
[2]胡萍.超聲波測距儀的研制[M].計算機與現代化,2003(10).
[3]楊姣秀,基于單片機的超聲波測距儀的設計[J].湖南工業大學,2008.
[4]張謙琳.超聲波檢測原理和方法[M].北京:中國科技大學出版社,1993(10).
作者簡介:周建國(1995-),男,在讀本科,研究方向:MCU應用系統設計。