楊慧敏
(菏澤學院物理系 山東 菏澤 274015)
超聲波測距在很多距離探測應用中具有重要的用途[1,2],特別是在空氣測距方面的用于尤為突出。由于信息在空氣中的傳播速度較慢,其回撥信號中所包含的沿傳播方向的信息很容易被檢測出來,因而具有很高的分辨能力,而且其準確度也比其他方法高;此外,超聲波傳感器由于體積小、結構簡單、信號處理可靠等特點受到了越來越廣泛的應用。目前,基于超聲波精確測距的需求也越來越大,如油庫和水箱液面,機械內部損傷的檢測和物體內氣孔大小的檢測等,都會用到超聲波對其進行測試[3,4]。文章介紹了用AT89S52單片機設計實現超聲波測距儀的原理和思路。
圖1是系統設計的總體的結構框圖,圖2是系統設計的軟件流程圖。

圖1 系統結構框圖

圖2 系統軟件流程圖
超聲波傳感器在40kHz時其聲壓能級、靈敏度最大,所以本設計所采用的超超聲波傳感器的頻率為40kHz。本設計測量距離的方法為采用電平觸發方式,其具體工作原理如下:工作時單片機輸出口向超聲波測距模塊發射出脈寬至少為10us的高電平信號,以便使超聲波發射模塊發射超聲波,同時由單片機中的定時器模塊開始計時,超聲波在空氣中進行傳播,當碰到目的障礙物時,超聲波發生反射并由超聲波接收模塊接收回波,當有信號返回時,單片機通過輸出口輸出一高電平脈沖,高電平持續的時間就是超聲波從發射到返回所用的時間[2]。假設超聲波往返的時間為t,根據L=vt/2便可以計算出超聲波收發器與障礙物之間的具體距離,這種方法就是通常所說的的時間差測距法。其中v為超聲波的在空氣中的傳播速度,其具體值與環境溫度有關,在測量精度要求比較高的場合中要考慮到溫度的影響,可由軟件進行相應的調整補償;在測量精度要求不是很嚴格的情況下,可以忽略溫度對測量的影響,認為v為常數,并取v=340m/s。由此可得:

式中TH0、TL0—計數器T0的計數開始和終點時間值。L為測距儀和障礙物之間的距離。
測距儀測量出的結果將以十進制形式傳送到系統的顯示模塊中顯示出來,然后再由測距儀發射超聲波脈沖重復測量。
按照以上步驟完成超聲波測距儀的安裝和調試后,對所設計的具體的測距儀進行實際的數據測量。為了使測量結果可靠,并且考慮測量過程中存在著的許多外界因素的干擾,測量多次數據,并將數據整理如下。

表1 第一次測試數據

表2 第二次測試數據

表3 第三次測試數據
為了保證測量結果的準確性,對每一組數據進行3次測量,對所測的每組數據去掉一個最大值和最小值,然后再求其平均值,用來作為最終的測量結果數據,最后將結果進行比較分析,這樣處理數據也具有一定的科學性和合理性。從表中的數據可以看出,測量結果一般都比實際值要大,總體上看測試結果的準確性還是比較高的,誤差比較小。
超聲波測距在很多距離探測應用中具有重要的用途,本系統介紹了AT89S52單片機設計實現便攜式超聲波測距儀的原理和思路,由于采用時間差法測距,系統在近距和遠距都可以實現精確測量,所以系統的測量應用范圍更廣。
[1]沈紅衛.基于單片機的智能系統的設計與實現[M].北京:電子工業出版社,2005:205-244.
[2]管連俊,李威.智能超聲波測距傳感器在測井儀中的應用[J].煤礦機電,2005(3):45-48.
[3]吳慎山,聶惠娟,吳東芳,付會凱.智能超聲波測距系統的設計[J].河南師范大學學報:自然科學版,2007,35(2):86-88.
[4]劉成安,孫濤.智能超聲波測距儀的研制[J].微計算機信息,2007,23(17):101-102,107.