超聲波導盲器的設計
1 引言
盲人在獨自行走時主要依靠導盲裝置。最簡單常用的裝置是普通的手杖,用它在地面上敲擊,可幫助盲人發現0.5米以內的障礙物。它的主要缺點是不能發現較遠一點的障礙物以及空中突出的障礙物。例如,在相當于頭部、胸的位置懸掛或突出的物體。另外,盲人還可以利用導盲犬帶路,但是不易訓練且成本較高。為了更好的幫助盲人行走, 許多國家都研究和生產了各種電子導盲裝置,但大多成本較高,如各類導盲機器人及其它電子裝置。本文提出了一種用單片機開發的超聲波導盲裝置的設計方案,它具有低成本、實用和精確的特點。
2 導盲裝置的功能設計及系統組成
導盲裝置主要由超聲波探頭、單片機以及測控及處理電路、按鍵、蜂鳴器等組成,可以放在包中,或安裝在帽子上、手杖中。導盲裝置有三個按鈕,分別是電源開關、遠距、近距控制按鈕,還有一個音量調節旋紐。該裝置使用電池,電源開關可控制系統通、斷電,不用的時候關掉電源,節省電能。使用時,超聲波探頭方向指向探測方向,當前方有障礙物時,在一定距離內喇叭會發出報警聲并隨著向障礙物的接近頻率逐漸升高,起到提示作用。遠距、近距、控制按鈕可用來控制報警的距離,通電時初始報警距離為2米,按遠距控制按鈕可將初始報警距離設為5米,按近距控制按鈕可將初始報警距離設為1米,報警聲音音量可用音量調節旋紐調節,有耳機插孔,可以接耳機。
該裝置是以AT89C51單片機作為控制器,利用超聲波回聲測距的原理測距,用蜂鳴器進行聲音報警。系統的硬件結構框圖如圖1所示。該系統主要由單片機控制系統、超聲波發射電路、接收放大電路、按鍵控制和聲音報警電路。AT89C51單片機是整個系統的核心部件,用來控制、協調各部件的工作。工作時先由單片機控制的振蕩源產生40K Hz頻率的信號以驅動超聲波傳感器,使它發射脈沖。當第一個超聲波脈沖發射后,計數器開始計數,在檢測到第一個回波脈沖的瞬間,計數器停止計數,計算出從發射到接收的時間差Δt,最終利用單片機計算出距障礙物的距離,并根據遠距、近距控制按鈕設定的測距值進行報警指示。
圖1超聲波導盲系統的硬件結構框圖
3. 超聲波測距原理
超聲波測距采用的方法是時間差測距法,在超聲波發生器發射出超聲波的同時開始計時,超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波就立即停止計時,測出發射和接收到回波的時間差Δt。由下式可以求出超聲波發射地與目標之間的距離S
S=vΔt/2 (1)
式中v為超聲波的傳播速度,超聲波常溫下在空氣中的傳播速度是340米/秒,傳播速度與空氣的溫度、濕度等因素的有關,這里由于測量距離不長,測量精度要求不高,不考慮其他影響,只要測得超聲波發射和接收回波的時間差Δt,按(1)式計算即可。
4 控制系統硬件電路設計
4.1 超聲波的發射電路
超聲波的發射電路主要由高頻三極管及超聲波發生器組成,如圖2所示,超聲波收發傳感器采用壓電陶瓷傳感器UCM40,由于頻率為40kHz左右的超聲波在空氣中傳播的效率最佳,因此通過執行程序由單片機P1.0產生40KHz的振蕩信號,經過高頻三極管放大, 驅動超聲波發生傳感器UCM40T發出40KHz的超聲波脈沖。
圖2 超聲波發射電路
4.2 超聲波的接收電路
超聲波的接收傳感器采用與發射傳感器配對的UCM40R,將由發射傳感器發出的經反射后的超聲波脈沖轉變為微弱的交流信號,經過運算放大器 LM358的兩級放大后,送至音頻譯碼集成模塊LM567的3腳。LM567是帶鎖相環的音頻譯碼器,具有選頻功能,LM567內部的壓控振蕩器的中心頻率f=1/1.1RC,當LM567輸入信號大于25mV時,輸出端8腳由高電平跳變為低電平,將其作為單片機的中斷請求信號,送至單片機INT0端,以啟動中斷服務子程序。接收電路如圖3所示。
圖3超聲波接收電路
4.3按鍵及蜂鳴器驅動電路
開關控制電源的通斷,遠距、近距控制按鈕一端接高電平,另一端分別接單片機P1.2、P1.3,并同時經與門接入單片機INT1端,當其中任意按鍵按下時會產生一個中斷請求信號送入INT1,同時,從P1口讀數判斷按鍵的狀態并調用相應的子程序進行處理。遠距、近距控制按鈕同時只有一個有效,由軟件控制,都按下時為近距控制按鈕有效。蜂鳴器由三極管驅動,接P1.4,由報警程序控制,對應不同的按鍵及距離,發出不同頻率的聲音。
5 系統的軟件設計
本系統軟件采用模塊化設計,超聲波測距導盲器的超聲波測距、按鍵控制、報警提示都由AT89C51單片機控制,主程序流程圖如圖4所示。
圖4 主程序流程圖
上電后主程序無限循環,初始化后系統設置一系列初始值,包括超聲波發射間隔數、定時器定時初值、報警門限值等,然后讀取按鍵的狀態,再根據按鍵狀態對初始設定值進行修改,初始值報警距離設定為2米,即2米內有障礙物時即驅動蜂鳴器發出聲音,并且隨著距離的接近,不斷調整參數,使得聲音的頻率不斷提高。遠距、近距控制按鈕分別對應不同的超聲波發射間隔和報警門限、頻率等;程序控制發送0.2毫秒寬度的超聲波,同時啟動定時器T0計時;為避免接收傳感器直接接收到發射的超聲波,在發射超聲波之后插入一段延時,由于設置超聲波頻率為40KHz , 超聲波常溫下在空氣中的傳播速度是340米/秒,計算可知延時6個脈沖就可以了。延時后啟動接收回波程序,等待接收回波,超時(即在設定距離內無障礙物) 即返回前面,若有回波則停止計時,讀取時間差,利用公式(1)計算出距離,然后執行報警程序,根據計算距離結果及設定值比較選擇不同參數,驅動蜂鳴器發出不同頻率的聲音,距離越近頻率越高。最后返回重新開始。
6 誤差分析
對系統進行實驗測試,結果發現在5米范圍內,最大誤差在5cm以內,且距離越近,誤差越小,完全滿足導盲的需要。分析誤差主要有幾個原因:一是空氣溫度變化等引起的聲速變化造成的誤差,由于超聲波在空氣中的傳播速度為V=331.5+0.607t,t為現場環境溫度,溫度在-30℃--40℃范圍變化時,傳播速度V的變化范圍為313米/秒--356米/秒,對利用公式(1)計算出的距離值有一定影響,采用聲速預置和傳播介質溫度測量結合的方法對聲速進行修正,可有效地降低溫度變化產生的誤差。二是發射與脈沖計數由于響應快慢差異開啟不同步引起的誤差,對此在調試中通過脈沖計數值補償進行修正。三是超聲波在傳播過程由于受衍射、散射和吸收等影響衰減導致的誤差,近距離誤差不明顯,距離越遠產生的誤差越大,可適當增大超聲波的發射功率等來改善。四是發射和接受前置電路延遲的時間誤差等,而發射前置電路和接收前置電路中采用集成芯片都有時間延遲,而計數器則一直是在工作,直到回波經過LM567處理后變成負跳變電信號產生外部INTO中斷,在整個計數過程中,多了延遲時間中的計數次數,導致測距數據的誤差。對此采取時間增益控制,來減少誤差,由于本裝置對于厘米級的精度已經足夠,電路延遲都是納秒數量級,記數頻率是40KHz,所以減少一個記數單位完全可以矯正。針對誤差原因在程序設計及系統調試中做了相應處理后,收到一定的效果,精度得到一定的提高。
7 結束語
由于考慮到體積、成本等因素,本裝置在性能上、功能上還存在不足,有待于進一步提高:
(1)增加幾路不同方向的超聲波探測或紅外探測器以及溫度補償電路等,可以提高裝置的靈敏度和精度,同時提高可靠性。
(2)可在裝置中增加一個語音芯片,將蜂鳴報警改為語音說明指示,根據探測結果直接報出距離、方位,更便于使用。
(3)由于受發射功率及回波檢測靈敏度的限制,探測范圍較小,可增加發射功率調節等電路,以便增大探測范圍,可用于夜間探路、井下探索等。
本文創新點:
(1)從測試結果分析可知,本裝置采用較低成本的器件設計制作,且誤差較小,完全滿足盲人行走的指引作用,具有較高的性價比。
(2)本裝置結構簡單、體積小、性能穩定,操作容易、使用方便,可以安裝在不同的載體上,制作成不同的用具,如手杖、導盲眼鏡、導盲背心等,盲人很容易學會使用,具有一定推廣應用價值。
參考文獻
[1]何道清.傳感器與傳感器技術[M].科學出版社,2003.10
[2]趙 珂.時差法超聲測距儀的研制[J].國外電子元器件,2005.1
[3]何立民.MCS-51系列單片機應用系統設計[M].北京航空航天大學出版社,1990
[4]路錦正.超聲波測距儀的設計[J].傳感器技術,2002.8
[5]趙宏剛,黃席樾.基于AT89C2051的超聲波泊車防撞系統設計[J].自動化與儀器儀表,2005.4
[6]宋建國.AVR單片機原理及應用[M].北京航空航天大學出版社,1998
[7]張健,李剛.超聲波系統的研究與設計[J].合肥工業大學學報,2004.6
[8]王俊英. 基于AT89S51單片機的PWM專用信號發生器的設計[J]。微計算機信息,2005,12-2,p102-104
蜂鳴器相關文章:蜂鳴器原理
評論