朱鑫 黃艷 高飛躍 徐玉琴 陳云梅
摘要:針對盲人數量龐大,本文設計了盲人導航系統。該系統以STM32單片機為核心控制器,結合超聲波測距、圖像采集及處理、GPS導航和雙向語音播報四個模塊,可以達到探測障礙物,識別特定物體,導航去特定地點以及對特定語句的錄入、傳遞、播報等功能。
關鍵詞:STM32;圖像采集;超聲波測距;GPS導航;語音播報;導盲系統
中圖分類號:TP391.4 文獻標識碼:A 文章編號:1007-9416(2019)11-0122-02
0 引言
盲人群體是社會中需要關心的弱勢群體, 全世界每5秒鐘就有一個人失明,90%的盲人在發展中國家。根據調查顯示,中國是世界上盲人數量最多的國家之一,平均每年會有40萬人失明,盲人問題已經是我國嚴重的社會問題之一。出行一直是盲人較為關心的問題,市面上現有的導盲設施大多功能單一、操作困難、價格昂貴,經常為盲人帶來使用上的不便,為此設計了一款功能多樣的導盲系統,幫助解決廣大盲人群體的出行問題,緩解社會壓力、提高社會服務。
1 系統組成及原理分析
系統總體框圖如圖1所示,該導航系統以STM32 微處理器為控制核心。系統由以下模塊,組成:主控制器;超聲波探測模塊實現障礙物的探測;語音播報模塊實現語音提示和語音控制;圖像識別模塊識別紅綠燈;GPS模塊實現導航;電源模塊[1]。
2 系統硬件設計
系統硬件設計包括控制器選用、超聲波模塊設計、圖像識別模塊設計、GPS導航模塊設計、電源電路。
2.1 控制器設計
本導盲系統選用STM32F103RCT6作為控制核心器件,該控制器是一種嵌入式-微控制器,也是32位的基于ARM核心的微處理器,集成了ARM32位CortexTM-M3 內核。該芯片低電壓性能強、耗能低、性價比高、穩定性好、程序都是模塊化,接口相對簡單些 。在該系統設計中主要用來進行數據處理及控制[2]。
2.2 超聲波模塊設計
該模塊由超聲波發射電路、超聲波接收電路以及報警提示電路組成。在此模塊中,單片機STM32控制超聲波發射電路發射出特定頻率的方波,經障礙物反射由超聲波接收電路接收信號并將信號處理,經過計算得出前方障礙物距測距點的距離,當距離小于安全距離,報警提示開始工作[3]。
(1)超聲波發射電路。單片機利用壓電式超聲波換能器的壓電晶片共振產生超聲波,實時檢測前方和左右兩側是否有障礙物,同時單片機開始計時,實現超聲波的發射。采用的超聲波傳感器是一種固有頻率為40KHz,開放型的HC-SR04超聲波傳感器,該傳感器采用IO口TRIG觸發測距。(2)超聲波接收電路。超聲波接收電路將接收到的反射波轉化成為電信號,然后將其放大到一定幅值,同時抑制噪聲和干擾以利用后續單元進行進一步的處理,接收回路為諧振回路,能夠將微弱的回波信號檢出,送到信號放大電路放大。當超聲波接收電路中的共振板接收到超聲波時,將壓迫壓電晶片作振動,將機械能轉換為電信號。對接收到的信號進行濾波和放大,處理成電路可以接收的電平信號。(3)報警提示。超聲波接收電路接收到的回波信號經過濾波電路和放大電路進行處理后,通過單片機的IO接口對處理結果進行檢測。當接收傳感器的全部信號后,系統通過特定的算法可以得到障礙物的最近距離,同時驅動蜂鳴器進行工作,該系統可以通過單片機控制蜂鳴器發出不同頻率的聲音,以提醒盲人最近的障礙物方位及其距離。
2.3 雙向語音播報模塊
雙向語音播報模塊選用科大訊飛的XF-S4240中文語音合成板卡與高效開關型低頻功率放大器LM4665MM,通過麥克風陣列獲取用戶命令,省去D類放大器特有的LC濾波器直接接揚聲器作為輸出將信息傳遞給用戶。使用麥克風將用戶指令通過語音文字轉換器發送到主控制器,由主控制器分析指令,然后含文本信息的指令通過SPI接口發送到語音合成板卡,再由語音合成板卡將文本信息轉換為語音信息,最后送往低頻功率放大電路[4]。
2.4 圖像識別模塊
圖像識別模塊由攝像頭,舵機、數據存儲器、圖像數據處理器組成,本模塊首先通過主控制器STM32驅動OV7670攝像機采集圖像數據,通過數據存儲器存儲圖像數據,圖像數據處理器進行圖像數據處理。同時電源電路還可以為整個采集模塊各個部分提供工作電壓,主控器STM32可以通過PWM控制舵機的旋轉攝像頭,拍攝不同的角度[5]。
攝像頭選用OV7670,其圖像傳感器陣列為640×480,VGA圖像可以達到30幀/秒。該導盲系統中0V7670設計為一個獨立模塊,其中留出一組接口與STM32控制器相連,STM32控制器通過該接口進行讀取數據,接口電路如圖2所示。
該系統設計了兩個舵機,一個用于水平方向的轉動,一個用于垂直方向的轉動。首先利用STM32控制器的定時器使舵機控制信號工作在PWM模式,產生周期為20ms、脈寬時間變化范圍為0.5ms~2.5ms的PWM信號,控制舵機運動到固定的角度。
數據存儲模塊采用數據存儲芯片AT25DF021來實現,該儲存模塊為帶有SPI接口的FLASH型數據存儲器,最大操作頻率為66MHz,容量為2MB。由于該數據存儲器使用串行接口按照順序訪問其內部的數據。因此可以使硬件布局簡化,減小引腳數目以及封裝尺寸,最大限度地減少開關噪聲,從而提高系統的可靠性。圖像數據處理包括RGB轉換為灰度色、中值濾波、閾值分割、提取骨架四個部分。
2.5 電源電路
為了給采集系統各部分提供工作電壓,本系統設計了電源電路。由于考慮到降低采集系統功耗,系統所有芯片選用了低電壓工作芯片,電源電路采用電壓為+3.3V可充電鋰電池SPX1117-3.3進行供電,電源電路如圖3所示。
2.6 GPS導航模塊
GPS導航模塊選用GPS25-LVS接收模塊,該模塊定位速度快,工作穩定,耐電壓沖擊,具有很好的抗干擾性,是目前應用最廣泛的GPS接收處理板。該模塊主要由天線、變頻器、信號通道、數字信號處理、儲存器、串口通信接口和電源組成。由它接收來自天線的信號,經調制后,實現對GPS衛星信號的跟蹤、鎖定、測量,從而計算導航數據信息。由于GPS25-LVS數據輸出格式是標準的串行RS232電平,與STM32單片機邏輯電平不同,因此采用MAX232芯片實現電平轉換,使得RS232電平與TTL電平連接[6]。
3 系統軟件設計
本系統軟件以STM32為信息處理核控制核心,采用進行模塊化設計,系統主程序主要由系統初始化、障礙物判定、雙向語音播報、圖像識別、GPS定位等子程序構成。系統初始化主要完成對STM32端口、圖像識別模塊、GPS定位模塊和語音播報模塊等進行初始化,使它們處于待機工作狀態[7]。
4 結語
總之,該導盲系統以STM32單片機為控制主板,實現高性能、低成本、低功耗的嵌入式應用設計,搭載了傳統的超聲波導盲模塊和語音播報模塊,同時又使用了圖像識別模塊和GPS導航模塊。幫助盲人實現道路障礙的規避,路口紅綠燈的識別,固定路線的導航以及語音控制導盲系統,保護了盲人的出行安全,方便盲人獨立出行,有利于盲人活動和生活。
參考文獻
[1] 李筱雅,高寒,張璐璐,等.基于單片機的超聲波導盲系統[J].2016(7):123-124.
[2] 賈丹平,王巖,王陽,等.多功能盲人智能拐杖的設計[J].電子設計工程,2016,24(14):136-138+142.
[3] 羅鳳,徐觀亞,汪衡,等.基于STM 32的盲人避障儀設計[J].2016(01):72.
[4] 王虎升,李金環,袁憲鋒,等.基于STM32的嵌入式語音播報系統的設計[J].北京聯合大學學報(自然科學版),2011(03):11-15.
[5] 郝雯,沈金,鑫梅成.基于STM32單片機的存儲式數據采集系統設計[J].2013(17):80-82.
[6] 曾勝艷,王善偉.基于stm32的無線圖像采集器[J].福建電腦,2018(11):110-111.
[7] 方仁杰,朱維兵.基于GPS定位與超聲波導盲拐杖的設計[J].計算機測量與控制,2011(05):1154-1157.