張晨凱
摘要: 本文利用超聲波測距原理,以AT89S52單片機為主控核心,設計了一種導盲裝置,該裝置可以對盲人前進的道路上的障礙物進行距離探測并把障礙物的距離信息轉換成聲音和振動提示,從而起到導盲作用。
關鍵詞: 單片機;超聲波;導盲
0 引言
盲人作為特殊的群體,其借助的輔助工具主要有手杖和導盲犬,其中使用手杖最為普遍。傳統(tǒng)的盲人拐杖是一根長桿,存在一系列的不足。例如:探測的距離受限于拐杖的長度;難于探測懸掛的障礙物;無法對快速接近的障礙物發(fā)出預先報警;公共場合不利于收藏等。本文構思設計一種能輔助盲人安全行動的智能拐杖,該拐杖可以對前方一定距離的障礙物進行探測,并給出警報提示,從而對視力存在缺陷者提供較好的輔助行走功能。該設計采用基于超聲波傳感器,以單片機為主控芯片,利用超聲波測距原理輔助盲人行走,使用簡單方便,具有方向性強、能量易于集中、傳播距離較遠,以及對障礙物定位具有一定的精確性,體積相對較小、方便攜帶、價格低廉等特點。
1 系統(tǒng)的硬件結構及基本功能
本設計主要分為主控模塊、超聲波測距模塊和報警模塊三個部分。首先由超聲波傳感器發(fā)射端產生一個高頻的超聲波,然后接收端接收到這個回波,通過計算傳感器發(fā)送信號和接收信號的時間間隔來確定對象的距離,最后通過對距離的判斷發(fā)出警報信號,實現(xiàn)智能導盲的作用。
本設計中的測距模塊采用收發(fā)分體式,由一對超聲傳感器組成,超聲波發(fā)射電路主要由反相器74LS04和超聲波發(fā)射換能器T構成,由主控模塊向超聲波的發(fā)射端送出固定頻率(40kHz)的脈沖信號,在發(fā)射端經一級反向器后送到超聲波換能器的一個電極,將電脈沖信號轉成超聲波發(fā)射出去,若前方有障礙物存在,超聲波接收端將收到的一部分反射回波轉為電信號,該信號經放大后送至主控模塊的另一路,被主控模塊接收后計算回波時間,從而計算出障礙物的距離。
1.2 主控模塊
本設計采用的主控芯片是AT89S52,它是一種低功耗、高性能的CMOS 8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器,使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產品指令和引腳完全兼容。片上Flash允許程序存儲器在線可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52在眾多嵌入式控制應用系統(tǒng)中得到廣泛應用。
在本設計中,該芯片主要完成把各個模塊之間的數(shù)據(jù)信號進行分析處理后給出相應的指示,利用內部的定時器/計數(shù)器控制超聲波發(fā)射接收并計算超聲波的時間,通過時差算出距離,最終通過軟件實現(xiàn)障礙物的識別,輸出結果。
1.3 報警提示模塊
由于導盲杖被廣泛用于室外的嘈雜環(huán)境中,本設計采用了蜂鳴器和振動雙重報警,當通過超聲波的發(fā)射和接收電路以及軟件結合判斷出前方有障礙物時,系統(tǒng)將發(fā)出報警信號。
聲音報警電路通過一個簡單的三極管驅動蜂鳴器報警,振動報警則是利用小型電機偏心軸原理實現(xiàn)導盲杖振動,可用于安靜環(huán)境或嘈雜環(huán)境中聽不見語音提示的情況。
2 系統(tǒng)軟件模塊組成及基本功能
系統(tǒng)的軟件設計采用C語言,可以大大提高程序編寫時的效率,設計的關鍵是超聲的發(fā)射和接收,障礙物距離的計算和語音報警。主程序首先對系統(tǒng)初始化,然后循環(huán)調用超聲波發(fā)射子程序,延時程序,超聲波測距子程序,報警子程序等。其中,超聲波發(fā)射子程序的主要功能是利用單片機的P1.0口產生一個頻率為40KHz、占空比為40%的方波??紤]到前方可能一直沒有障礙物的特殊情況,并為了使定時器便于計時,以及距離范圍在3米內的具體要求,發(fā)射子程序采用先連續(xù)發(fā)射40個周期的方波(時長為1ms),然后延時20ms(用于等待接收端應答)的方式,保證每次收到的回波都是最近一次發(fā)射的脈沖反射回來的。
測距子程序包括回波時間計算和距離計算兩部分:回波時間計算由單片機的的P1.1口控制,一旦查詢到該引腳由高到低,則表明接收到了本次發(fā)射返回的超聲回波;而距離的計算則通過定時器中存儲的數(shù)據(jù)進行簡單運算得出。
報警子程序分為振動報警和蜂鳴器報警,之所以采用振動報警是由于考慮到嘈雜環(huán)境下蜂鳴器音量有限而設置的
3 結論
本設計利用基于單片機的超聲波測距原理完成了智能導盲杖的設計,可以探測到0到3米的障礙物,同時發(fā)出蜂鳴和振動提示,實現(xiàn)了探測一定范圍內障礙物的功能,制作出的實物還在調試測試階段,功能穩(wěn)定性還有待于后期調試和檢驗。
此外,本設計目前只能暫時測試出前方的障礙物,對于左右方向的障礙物尚在設想中,考慮可在不同的方向各配備一個超聲波探頭,軟件設計的時候設置三個方向的數(shù)據(jù)分析,這樣就可以增加障礙物識別的范圍。
參考文獻
[1]胡偉,季曉衡.單片機C語言程序設計及應用實例.北京:人民郵電出版社,2003:269-395.
[2]楊西明,朱騏.單片機編程與入門.北京:機械工業(yè)出版社,2004:206-212.
[3]薛曉書.單片微機原理及接口技術[M].西安:西安石油大學,2002:18-25.
[4]夏路易,石宗義.電路原理圖與電路板設計教程Protel 99SE.北京:北京希望電子出版社,2006:69-189.
[5]鄭冬青.用PROTEL99 SE布線的基本流程.http://www.protel.myrice.com/.2001-10-10.
[6]Kim Hyoung-Tae.How to use KEIL 8051 C Compiler.Yangseogak publish Company,2001:1-19.
[7]S.moue,S.Konomi,H.Yasuura.Privacy in the Digitally Named World with RFID Tags. Workshop on Socially-informed Design of Privacy-enhancing Solutions in Ubiquitous Computing,2002:1001-1004.
[8]R.Want,K.Fishkin,A.Gujar,B.Harrison.Bridging Physical and Virtual Worlds with Electronic Tags. ACM CHI,1999:193-196.
注:本論文為2020 年度浙江省大學生科技創(chuàng)新活動計劃暨新苗人才計劃項目(2020R443003)研究成果