張彬 王石 蔡程飛 李心語 尹衍玉



關鍵詞: 超聲波傳感器;導盲杖;OneNET;語音合成;微信小程序
中圖分類號:TP368.1 文獻標識碼:A
文章編號:1009-3044(2023)20-0132-03
0 引言
視覺障礙使盲人的活動受到很大的限制,導盲產品作為能夠便利出行的重要工具,能夠協助視障人士安全出行,更好地融入社會[1]。本文設計的智能導盲杖,通過STM32主控,采用溫度傳感器測量溫度、超聲波傳感器監測是否存在路障,通過蜂鳴器和語音播報模塊語音播報,采用光敏傳感器檢測光照強度,采用GPS模塊定位并通過ESP8266上傳數據至OneNET云平臺,方便第三方查看位置。
1 系統總體設計
本設計的智能導盲杖系統中主要由STM32主控部分、超聲波測距模塊、測溫模塊、語音播報模塊、光敏模塊、蜂鳴器模塊、GPS模塊、Wi-Fi模塊、OneNET 云平臺和小程序模塊組成。導盲杖以STM32單片機為核心控制各個模塊[2]。超聲波模塊用于檢測是否有障礙物,語音播報模塊用于語言播報當前環境溫度和提示障礙物,測溫模塊用于測量環境溫度,蜂鳴器模塊用于障礙物報警,光敏模塊用于測量當前光照強度,判斷當前是否處于黑夜,黑夜亮LED燈,GPS用于定位當前位置,Wi-Fi模塊用于將數據上傳至OneNET 云平臺。小程序模塊用于第三方位置查看。系統整體組成結構如圖1所示。
2 系統硬件設計
系統主要由STM32主控部分、超聲波測距模塊、語音播報模塊、光敏模塊等部分組成。硬件設計中最為重要的是超聲波傳感器和光敏傳感器。
2.1 超聲波傳感器
本設計需要傳感器去測量障礙物,測距是本次設計的重要組成部分。從最大探測距離、方向性、響應時間、環境適應性各方面綜合考慮,在精度要求不高的條件下,選用成本較低、適用于短程測量的超聲波測距模塊較為合適。HC-SR04超聲波傳感器可提供2~400cm 非接觸式距離傳感功能,測距精度可達3mm。HC-SR04超聲波傳感器包括控制電路、超聲波發射器和接收器。原理圖如圖2所示。
2.2 光敏傳感器
對外界光亮強度的檢測需要用到光敏傳感器。光敏傳感器是一種感光器件,它把光信號轉換成電信號。它的靈敏度與可見光相近,包含了紅外和紫外線兩種波長。光刻膠是對外界光線最敏感的部件,一般用于檢測周圍的光,可觸發單片機或繼電器。該模塊可以與單片機直接連接,通過單片機來檢測高電平,以探測環境光的亮度變化。原理圖如圖3所示:
3 終端應用設計
整體設計上,首先進行設備初始化,測量當前溫度并語音播報當前溫度,進行超聲波測距,當距離小于設定的值時,蜂鳴器響起并語音播報,其中測距的優先級高于測溫。測量光照強度,判斷測量值是否為1,為1時燈泡亮藍光,否則燈泡滅。配置Wi-Fi模塊,進行ESP8266初始化,連接熱點,接入云平臺服務器,進行GPS數據獲取經緯度,將獲取的數據通過EDP協議上傳至OneNET,可在云平臺查看數據流。掃碼進入小程序,登錄OneNET賬號,查看位置顯示。主程序流程圖如圖4所示。
終端應用主要包括以下功能模塊:
超聲波測距模塊、光敏模塊、測溫模塊與語音播報模塊和GPS模塊。各模塊實現的功能如下:超聲波測距模塊:實現路障檢測,和語音模塊結合可提醒盲人。
光敏模塊:實現導盲杖在昏暗環境下燈光提示,提醒車輛行人避讓。
測溫模塊與語音播報模塊:通過語音播報更好地為盲人提供溫度信息和路障信息等。
GPS模塊:實現盲人實時定位。
3.1 超聲波測距模塊程序設計
傳感器通過超聲波來計時,超聲波探頭向外發送超聲波,開始計時,等待檢測到物體后反射回來,另一個超聲波接收器探頭接收返回的高電平信號,停止計時獲取信號傳輸時間[3]。如圖4流程圖所示,首先進行硬件初始化,超聲波開始測距,通過獲取到的時間(往返距離需除以2) 利用距離=速度×時間,計算出當前距離障礙物的距離,其中超聲波的傳輸速度約為340m/s。如果測得障礙物距離少于設定的1m,蜂鳴器響并語音播報“前方有障礙物請注意”提醒盲人注意障礙物[4]。超聲波測距流程圖如圖5所示:
3.2 光敏模塊程序設計
要實現導盲杖在昏暗環境下亮燈提醒車輛行人避讓,首先進行系統初始化,模塊對周邊環境的光照強度進行探測,當環境光照強度低于設置閾值時輸出高電平,LED檢測到光敏模塊輸出的高電平,LED燈亮用于警示他人;光照強度大于設置閾值時輸出低電壓,LED會探測到光敏模塊的輸出信號,LED燈熄滅。光敏模塊流程圖如圖6所示。
3.3 測溫模塊與語音播報模塊程序設計
測溫模塊中,首先進行系統初始化,然后將器件放置在周圍的環境中,通過測量周圍的溫度來進行溫度轉換。分辨率為0.062 5,轉換后所得的信息需要變換成電信號或其他形式的信息輸出,通過語音模塊轉換成語音播報當前環境溫度。測溫的流程圖如圖7 所示。
語音播報模塊中,首先將系統初始化,測量當前環境溫度,語音播報出來,當檢測到前方有障礙物時,語音播報提示[5]。當檢測到障礙物和測量溫度二者同時出現時,障礙物的優先級高于溫度。語音播報模塊流程圖如圖8所示。
3.4 GPS 模塊設計
為獲取盲人定位,需進行GPS模塊設計[6]。設備上電初始化,通過模塊獲取衛星數據,進而獲取時間經緯度信息,處理經緯度信息,判斷數據是不是有用數據,若為有用數據修改GPS數據,若不是有用數據則繼續獲取GPS數據,將獲取的GPS經緯度信息轉化成地圖上的經緯度信息顯示[7]。GPS模塊設計流程圖如圖9所示:
4 系統功能測試
完成系統硬件和軟件的設計后,本章將對測距模塊和光敏模塊進行功能測試,檢測設計的智能導盲杖能否實現預期功能。
4.1 測距測試
供電開機后等候,當前方障礙物距離小于設定的距離時,蜂鳴器響并且語音模塊語音播報前方有障礙物,障礙物播報的優先級高于測溫。打開串口助手,選擇串口,波特率改為9 600,打開串口,會看到串口顯示測量到的障礙物距離以及當前環境溫度的具體數值[8]。數據顯示如圖10所示:
從表1中的測量數據中可以看出,測得的實際距離與標記距離誤差不大,在規定范圍內。
因為盲人屬于特殊人群,報警距離也需要盡量設置得符合盲人使用,既不能太近也不能太遠,要給盲人充足的時間躲避障礙物。表2通過幾組距離數據分析對比挑選出了最適合的距離為1m。
4.2 光敏測試
供電開機,將器件放置在光線較暗處,傳感器檢測到環境光線達不到設置的閾值時LED燈亮藍光,如圖11所示。將器件放置在光線較亮的地方,LED燈不亮,如圖12所示。
5 結束語
本次設計的智能導盲杖實現了基本的功能需求,設計可以幫助盲人獲取環境溫度檢測障礙物,語音播報溫度以及障礙物提示,同時若是夜晚出行,LED燈亮提醒車輛行人注意避讓。GPS可以定位顯示,數據可上傳至OneNET云平臺,第三方監護人可以通過微信小程序查詢具體定位顯示。