宋爽 鄒治嘉 馬宏強
摘?要:目前,由于市場上的導盲拐杖功能比較單一,無法滿足盲人的需要。針對這一問題,文中設計了一種基于STM32的智能導盲拐杖。此款拐杖為空心圓柱狀,選用stm32f103rct6為主控芯片,并且通過超聲波測距、語音合成、緊急按鍵物理裝置來實現(xiàn)給使用者的提醒、導盲功能,通過GPS定位成熟物聯(lián)網技術實現(xiàn)導航定位功能,幫助盲人更加智能方便的出行。
關鍵詞:MCU;智能導盲;單片機;超聲波測距;GPS定位
盲人外出時會遇到各種情況,如遇到障礙物,不清楚路況,或者因為監(jiān)護人不在而走丟等。因此,本文利用現(xiàn)代已有技術,研究出一種新型導盲系統(tǒng),通過軟硬件結合,以實現(xiàn)障礙物避障、語音與發(fā)光提示、角度測量防摔以及GPS定位功能,以幫助盲人解決出行時遇到的問題。
1?智能導盲拐杖的設計系統(tǒng)結構
圖1?原理框圖
選用stm32f103rct6為主控芯片,配合獨立的電源電路、光控發(fā)光電路、由SYN6288模塊構成的語音合成電路、由HCSR04模塊構成的超聲波測距電路、由壓力傳感器及壓力轉電壓模塊構成的壓力檢測電路和由SIM868模塊構成的定位電路,實現(xiàn)一款集測距避障、危險報警、緊急報警按鍵、實時定位和發(fā)送消息于一體的智能導盲拐杖。
2?硬件電路設計
2.1?主控芯片最小系統(tǒng)設計
圖2?stm32f103rct6最小系統(tǒng)
其中,包括stm32f103rct6最小系統(tǒng)、下載端口電路和變壓電路。在晶振電路中,8MHz晶振提供外部高速時鐘(HSE),用于提供更精確的系統(tǒng)時鐘;32.768KHz晶振提供外部低速時鐘(LSE),為精確定時服務,可用于RTC電路時鐘源,可為低功耗提供計時。
2.1.1?語音合成模塊電路設計
利于syn6288模塊,通過與主控芯片進行串口通信,達到語音合成的目的,如播報時間、危險警報等。
2.1.2?GPS定位模塊電路設計
通過串口與主控芯片進行通信、實現(xiàn)定位、發(fā)送信息的功能。
2.1.3?超聲波測距模塊電路設計
將HCSR04模塊安裝于拐杖底部前端,通過端口TRIG和ECHO給主控芯片傳輸信號,主控芯片根據(jù)所傳輸?shù)男盘栠M一步計算得出所測距離,當距離小于某一設定值則主控芯片控制語音合成模塊發(fā)出危險警報,達到避障的目的。
2.1.4?獨立電源模塊電路設計
其中,設計了利用太陽能板給蓄電池充電電路,TP4056模塊將太陽能板提供的電能充入蓄電池中,蓄電池則采用可充放電的鋰電池并配備充電口,電池容量大小可根據(jù)最終運行結果現(xiàn)在合適的容量。
圖3?電源模塊電路
2.1.5?光控發(fā)光電路設計
由于D5光敏電阻的靈敏度非常高,遠遠大于人眼對光強弱的判斷,故此電路不涉及主控芯片,在自然光較弱的情況下即可觸發(fā)此電路,自然光越弱光敏電阻阻值越大,三極管導通度越高,從而LED兩端電壓越大,即越亮,可以簡單有效地達到發(fā)光的作用。
圖4?光控發(fā)光電路
2.1.6?壓力傳感電路設計
其中,設計兩個薄膜壓力傳感器,一個在握手部,一個在拐杖底端觸地處,兩個傳感器壓力范圍根據(jù)實際情況具體設計。工作原理是將壓力信號通過壓轉電模塊轉換為需要的范圍電壓,再通過主控芯片實時監(jiān)測。
2.1.7?緊急按鍵電路設計
當按下按鈕時主控芯片PB12端口由高低配變化為低電平,從而實現(xiàn)是否按下按鈕地檢測。設置為長按一定的時間向手機發(fā)送使用者所在的位置,僅限突發(fā)情況使用,即報警按鍵,如使用者迷路、腿部受傷等類似情況。
2.2?原理圖
圖5?原理圖
2.3?PCB圖及PCB板
2.3.1?PCB圖的繪制
此PCB為雙層板,長約80mm,寬約60mm。其中5V電源線采用30mil線寬,3.3V電源線采用20mil線寬,地線采用30mil和20mil線寬,其余信號線均采用10mil線寬。
圖6?PCB圖
2.3.2?PCB板打樣
圖7?PCB板正面圖
3?軟件設計
該系統(tǒng)的軟件分為地理位置查詢及上報、語音提醒兩部分,地理位置的查詢及上報又分為:獲取GPS、GPS逆地理編碼得到地名、盲人當前位置上傳OneNet云平臺。語音提醒部分又分為:前方障礙物提醒、手杖長時間離手提醒、當前位置播報。以上功能全部基于STM32F103C8T6平臺采用C語言編程實現(xiàn)。
圖8
3.1?地理位置查詢及上報部分軟件設計
3.1.1?GPS定位
SIM868模塊具有GPS功能,軟件上通過串口對SIM868發(fā)送AT指令來控制芯片開啟GPS功能及接收GPS信號。程序中采用AT+CGPSOUT=2開啟GPS數(shù)據(jù)輸出,因此獲取的GPS數(shù)據(jù)格式為GPSGGA,獲取GPS數(shù)據(jù)的流程如圖9所示:
圖9
該語句以字符串的形式發(fā)送,因此程序中須對該字符串進行解析,獲取經度和緯度的角度格式,通過使用字符串處理將字符串格式的度分經緯度信息轉換為浮點型,并通過以下計算,將度分格式的經緯度轉換為角度格式的經緯度,經緯度處理程序如圖10: