基于物聯(lián)網(wǎng)的智能導(dǎo)盲杖的設(shè)計(jì)與開發(fā)_第1頁
基于物聯(lián)網(wǎng)的智能導(dǎo)盲杖的設(shè)計(jì)與開發(fā)_第2頁
基于物聯(lián)網(wǎng)的智能導(dǎo)盲杖的設(shè)計(jì)與開發(fā)_第3頁
基于物聯(lián)網(wǎng)的智能導(dǎo)盲杖的設(shè)計(jì)與開發(fā)_第4頁
基于物聯(lián)網(wǎng)的智能導(dǎo)盲杖的設(shè)計(jì)與開發(fā)_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

河北理工大學(xué)信息學(xué)院 摘要 iii2功能與設(shè)計(jì)方案2.1系統(tǒng)功能要求視障人士的實(shí)際需求使智能導(dǎo)盲杖系統(tǒng)應(yīng)具備以下功能,超聲波傳感器檢測前方障礙物距離,當(dāng)距離小于設(shè)定閾值,語音提醒使用者避讓,這是障礙物檢測功能。實(shí)時檢測使用者的心率、血氧和體溫,數(shù)值異常時報警且通知監(jiān)護(hù)人,這為健康監(jiān)測功能,加速度傳感器識別使用者是否摔倒,摔倒后自動發(fā)送求助信息,這是摔倒檢測功能。GPS模塊獲取使用者實(shí)時位置便于監(jiān)護(hù)人了解行動軌跡,這是位置跟蹤功能,危險情況下按鍵或語音指令發(fā)送包含位置信息的求助短信,這是緊急求助功能。檢測光照強(qiáng)度,光線不足時自動開啟照明,這是環(huán)境感知功能,語音指令控制系統(tǒng)參數(shù)設(shè)置,這是語音交互功能。OLED屏幕顯示各項(xiàng)參數(shù)和系統(tǒng)狀態(tài),這是顯示功能,數(shù)據(jù)上傳至云平臺實(shí)現(xiàn)遠(yuǎn)程監(jiān)控和數(shù)據(jù)分析,這是云平臺交互功能。這些功能協(xié)同構(gòu)建視障人士出行安全的智能保障系統(tǒng)2.2系統(tǒng)設(shè)計(jì)方案本設(shè)計(jì)以STM32單片機(jī)為核心控制器,加上其他的模塊一起組成基于物聯(lián)網(wǎng)的智能導(dǎo)盲杖設(shè)計(jì)的整個系統(tǒng),其中包含中控部分、輸入部分和輸出部分。中控部分采用了STM32單片機(jī),其主要作用是獲取輸入部分?jǐn)?shù)據(jù),經(jīng)過內(nèi)部處理,控制輸出部分。輸入由九部分組成,第一部分是心率血氧模塊,用于檢測心率值;第二部分是溫度傳感器,用于檢測體溫;第三部分是壓力薄膜傳感器,用于檢測拐杖是否脫手;第四部分是超聲波傳感器,用于檢測與障礙物的距離;第五部分是GPS模塊,用于獲取經(jīng)緯度位置;第六部分是三軸加速度傳感器,用于檢測是否摔倒;第七部分是光敏電阻,用于檢測光照強(qiáng)度;第八部分是獨(dú)立按鍵,該模塊進(jìn)行切換界面、設(shè)置體溫/心率/距離/光照閾值,手動報警;第九部分是供電電路給整個系統(tǒng)供電。輸出由四部分組成,第一部分是OLED顯示屏,顯示經(jīng)緯度位置,距離、心率、體溫和光照值和顯示設(shè)置閾值,是否摔倒;第二部分是4G模塊,用于檢測心率/體溫異常,摔倒發(fā)送經(jīng)緯度位置的求助短信給監(jiān)護(hù)人;第三部分是語音播報模塊,語音提示避障、摔倒求助,還可以設(shè)置音量大小,設(shè)置靜音等;最后一部分是燈,光照不足,進(jìn)行照明。圖2.1垃圾桶硬件模塊工作框圖2.3器件方案對比2.3.1單片機(jī)的選擇方案一:STC89C52單片機(jī)是8051架構(gòu)中具有代表性的產(chǎn)品,豐富資料和成熟開發(fā)環(huán)境是它低使用成本的外在優(yōu)勢,該單片機(jī)采用8位CPU,主頻達(dá)到12MHz,同時內(nèi)存系統(tǒng)包含8KBFlash程序存儲器與512字節(jié)RAM,I/O口為32個。較低功耗令它適合電池供電設(shè)備,指令系統(tǒng)簡單且開發(fā)容易,可適合部分簡單應(yīng)用任務(wù)。然而處理能力存在瓶頸、復(fù)雜算法難以支持,內(nèi)存空間有限、數(shù)據(jù)存儲能力有限,同時支持性不良,需要軟件模擬外設(shè)接口,功能上,不支持浮點(diǎn)運(yùn)算和DMA,抗干擾穩(wěn)定性也有限[11]。方案二:STM32F103單片機(jī)采用ARMCortex-M3內(nèi)核,是高性能微控制器的代表,該單片機(jī)使用32位RISC架構(gòu),主頻高達(dá)72MHz,F(xiàn)lash存儲空間和RAM可達(dá)到512KB與64KB。集成多種外設(shè)包括USART、I2C、SPI、ADC、定時器等,滿足多種接口需求,它支持DMA傳輸,提供多樣低功耗模式,電源管理靈活;硬件FPU高效支持浮點(diǎn)運(yùn)算;中斷源多樣且支持優(yōu)先級管理,實(shí)時性好;抗干擾能力強(qiáng),穩(wěn)定性高,雖然開發(fā)難度略高,但配套工具完善,資料豐富,性價比較高[12]。STM32F103單片機(jī)最終作為本系統(tǒng)的核心控制器,綜合考慮了系統(tǒng)需求與兩種方案的特征。處理數(shù)據(jù)能力和外設(shè)資源的STM32F103相當(dāng)強(qiáng),可以應(yīng)對多傳感器和多接口通信的需求,穩(wěn)定性和可擴(kuò)展性也能夠提供保障。2.3.2通信模塊的選型方案一:HC-05藍(lán)牙模塊基于藍(lán)牙2.0+EDR標(biāo)準(zhǔn),支持串口透傳,工作頻段為2.4GHz,通信距離約10米,體積僅27mm×13mm×2mm,重量輕且功耗低,待機(jī)電流<2mA,適合便攜設(shè)備使用。該模塊價格約20元左右,具有較高的性價比,同時支持AT指令集,可通過串口直接控制,配置簡單,它支持主從模式切換,接口僅需要VCC、GND、TXD、RXD四個管腳即可工作,應(yīng)用靈活[13]。然而HC-05的通信距離有限,僅可進(jìn)行近距離通信;復(fù)雜環(huán)境下抗干擾能力弱,容易丟包;無法直接連接互聯(lián)網(wǎng),遠(yuǎn)程監(jiān)控功能受限;通信帶寬較低,最大僅3Mbps;多點(diǎn)連接不支持,擴(kuò)展性受限;通信需要配對設(shè)備,緊急情況下可能延遲救援[14]。方案二:ML307R為一款支持4G全網(wǎng)通的物聯(lián)網(wǎng)通信模塊,采用標(biāo)準(zhǔn)AT指令集且支持多種通信協(xié)議。該模塊支持4GLTE網(wǎng)絡(luò),網(wǎng)絡(luò)覆蓋范圍廣泛。只要有網(wǎng)絡(luò)信號,通信距離不受限制即可進(jìn)行通信,短信、電話、數(shù)據(jù)業(yè)務(wù)等多種功能集成,同時包含GNSS定位功能,定位精度高。MQTT、HTTP、Socket等多種網(wǎng)絡(luò)協(xié)議集成之后,可以直接接入云平臺,數(shù)據(jù)傳輸速率下行最高150Mbps,上行最高為50Mbps。ML307R的功耗偏大,峰值電流達(dá)到2A;同時存在2.3mm×30mm×30mm的較大體積,便攜設(shè)備的使用也受到了部分影響;100元左右的較高成本也提升了開發(fā)難度;配置復(fù)雜性相對較高,難度也較大[15]。智能導(dǎo)盲杖需要在任何時點(diǎn)發(fā)送求助信息,并且上傳相關(guān)數(shù)據(jù)到云平臺進(jìn)行監(jiān)控,最終ML307R4G模塊作為通信模塊。盡管ML307R成本和功耗方面存在劣勢,但通信可以不因?yàn)榫嚯x限制,直接接入互聯(lián)網(wǎng)的特性,為視障人士的安全提供更可靠保障,符合系統(tǒng)目標(biāo)。2.3.3語音模塊的選型方案一:MY1680模塊基于MY1680芯片,是一款經(jīng)典的音頻播放設(shè)備,它主要用于固定語音內(nèi)容的播放,高性能與低功耗設(shè)計(jì)在MY1680模塊中并重,3.3V-5V為工作電壓,靜態(tài)電流僅達(dá)到10μA,播放時電流為50mA,體積控制在40mm×20mm×5mm,結(jié)構(gòu)小巧、集成性強(qiáng),可與便攜設(shè)備集成;通過I/O口觸發(fā)完成固定語音播放,操作簡單且無需復(fù)雜編程支持;無需外接放大電路,內(nèi)置揚(yáng)聲器驅(qū)動電路(8歐姆),存儲容量大,支持最多80秒的語音或10首音樂;且價格低廉,約15元左右[16]。MY1680存在固定內(nèi)容播放的限制,環(huán)境動態(tài)生成語音功能無法實(shí)現(xiàn);語音識別功能也存在缺陷,只能進(jìn)行單向輸出;音質(zhì)表現(xiàn)一般,8KHz采樣率對音頻表現(xiàn)存在限制;擴(kuò)展性也差,更新語音內(nèi)容時需要重新燒錄芯片;復(fù)雜的人機(jī)交互功能無法實(shí)現(xiàn)[17]。方案二:SU-03T模塊為智能語音交互提供支持,基于專用DSP芯片,集成語音識別與合成技術(shù),它可完成離線的指令識別任務(wù),工作無需網(wǎng)絡(luò)連接,同時提供清晰自然的語音輸出。串口控制接口設(shè)計(jì)使模塊與主控制器的集成易于處理,寬工作電壓(3.3V-5.5V),適應(yīng)多電壓工作要求,模塊設(shè)計(jì)支持動態(tài)生成語音提示,滿足自定義內(nèi)容需求,用戶可依據(jù)需要設(shè)置多達(dá)50條復(fù)雜指令,安靜環(huán)境下識別率可達(dá)95%以上。SU-03T模塊相對占用空間較高(45mm×30mm×10mm),約80元左右成本增加使用成本,指令訓(xùn)練和初始設(shè)置相對復(fù)雜,工作電流也較高,達(dá)到約150mA,功耗需求偏大[18]。智能導(dǎo)盲杖需要自然的人機(jī)交互體驗(yàn)與動態(tài)語音提示功能,SU-03T語音識別模塊最終為不二選擇,SU-03T模塊的雙向語音交互能力使視障人士可以借助語音指令控制參數(shù)設(shè)置,同時系統(tǒng)也可以通過語音輸出障礙物信息和健康狀況,使用體驗(yàn)更為人性,成本和功耗的增加在提升使用價值和功能性方面完全可接受。5系統(tǒng)的測試3系統(tǒng)的硬件設(shè)計(jì)3.1STM32F103C8T6單片機(jī)本系統(tǒng)的核心控制部分采用STM32F103單片機(jī),該芯片負(fù)責(zé)模塊協(xié)調(diào)運(yùn)行,選用ARMCortex-M3處理內(nèi)核,主頻達(dá)到72MHz,數(shù)據(jù)處理能力相當(dāng)強(qiáng),設(shè)計(jì)中使用的是LQFP48封裝的STM32F103C8T6,F(xiàn)lash為64KB,RAM20KB,容量滿足程序存儲需求,電源電路、復(fù)位電路、時鐘電路和BOOT設(shè)置電路組成單片機(jī)最小系統(tǒng)結(jié)構(gòu)。XC6206線性穩(wěn)壓器在電源電路中將5V轉(zhuǎn)換為3.3V,為單片機(jī)和其他模塊進(jìn)行穩(wěn)壓處理;復(fù)位電路采用10K電阻與100nF電容構(gòu)成RC結(jié)構(gòu),使系統(tǒng)啟動時保持復(fù)位電位的可靠;8MHz主時鐘和32.768KHz低速時鐘同時存在,前者為系統(tǒng)主時鐘,后者用于RTC實(shí)時時鐘;BOOT0和BOOT1引腳通過兩個10K電阻接地,將啟動模式設(shè)置為Flash啟動[19]。單片機(jī)與外部模塊的連接設(shè)計(jì)采用標(biāo)準(zhǔn)接口,4G模塊通過USART1(PA9/PA10)連接,實(shí)現(xiàn)短信發(fā)送與云平臺數(shù)據(jù)交互;GPS模塊借助USART2(PA2/PA3)連接,完成位置信息獲?。徽Z音模塊通過USART3(PB10/PB11)實(shí)現(xiàn)語音交互功能。心率血氧模塊通過I2C1(PB8/PB9)連接,讀取健康數(shù)據(jù);三軸加速度傳感器通過I2C2(PB10/PB11)檢測運(yùn)動狀態(tài);OLED顯示屏通過SPI1(PA5/PA6/PA7)顯示系統(tǒng)狀態(tài),超聲波測距模塊的脈沖捕獲通過TIM3實(shí)現(xiàn),用于測量障礙物距離;光敏電阻電壓的采集通過ADC1(PA4)監(jiān)測環(huán)境光照強(qiáng)度,獨(dú)立按鍵通過GPIO(PB3/PB4/PB5)連接,實(shí)現(xiàn)人機(jī)交互;DS18B20溫度傳感器通過PA8接口監(jiān)測體溫;壓力薄膜傳感器通過PA0接口檢測手杖是否脫手;PB3通過三極管驅(qū)動LED燈實(shí)現(xiàn)照明功能。STM32F103單片機(jī)在低功耗優(yōu)化中采用多種方式,非活動狀態(tài)時中斷驅(qū)動使系統(tǒng)進(jìn)入睡眠,各外設(shè)模塊按需開啟且不使用時關(guān)閉時鐘。DMA傳輸減輕CPU任務(wù)并提高效率,軟件設(shè)計(jì)通過狀態(tài)機(jī)模式優(yōu)化結(jié)構(gòu)并強(qiáng)化響應(yīng)速度,這些設(shè)計(jì)中各模塊高效運(yùn)行,系統(tǒng)穩(wěn)定性的確保也包含在設(shè)計(jì)內(nèi)容中。圖3.1STM32F103C8T6單片機(jī)接線情況3.2SU-03T語音模塊SU-03T語音識別模塊在智能導(dǎo)盲杖中是進(jìn)行交互的核心組件,為視障人士提供了自然的人機(jī)交互方式,采用專用DSP芯片設(shè)計(jì),集成了語音識別與合成功能。硬件接口包含六個引腳:VCC、GND、RXD、TXD、STA和EN,5V電源連接到VCC與GND為模塊提供工作電壓;單片機(jī)的TX3發(fā)送引腳與RXD連接,RX3接收引腳與TXD連接,完成UART通信;STA引腳在識別到有效語音指令時輸出高電平;EN引腳在高電平下使模塊工作,低電平下休眠。SU-03T模塊和STM32單片機(jī)借助UART串口通信協(xié)議進(jìn)行數(shù)據(jù)交互,通信參數(shù)為波特率9600bps、8位數(shù)據(jù)位、1位停止位且無校驗(yàn),通信數(shù)據(jù)幀格式包含幀頭(0xAA0x55)+命令字+數(shù)據(jù)長度+數(shù)據(jù)+校驗(yàn)和,模塊存在兩種工作模式:命令模式與識別模式。在命令模式中,模塊接收指令完成參數(shù)設(shè)置或語音播放任務(wù);識別模式時,模塊對環(huán)境聲音進(jìn)行監(jiān)聽,識別預(yù)設(shè)的語音指令內(nèi)容,系統(tǒng)通過UART發(fā)送指令控制語音輸出,例如發(fā)送"0xAA0x550x010x550xAA"可播放"前方有障礙物"的提示音;同時模塊返回識別結(jié)果,接收到"0xF40x060x020xFF"表示模塊識別到"增加距離閾值"的語音指令[20]。SU-03T模塊預(yù)設(shè)了"減小心率閾值"、"增加距離閾值"等指令,視障人士可借助語音調(diào)整系統(tǒng)參數(shù),語音控制避免了按鍵操作,使用便捷性提升。模塊在系統(tǒng)中的應(yīng)用體現(xiàn)了人性化設(shè)計(jì)理念,為視障人士提供了友好的交互體驗(yàn),預(yù)設(shè)指令中包含"減小光照閾值"、"發(fā)送求助"、"增加體溫閾值"等,參數(shù)調(diào)整無需按鍵即可進(jìn)行,系統(tǒng)操作更為便捷,人性化設(shè)計(jì)理念與SU-03T模塊的這些預(yù)設(shè)指令滿足視障人士需求,極大提高了便捷性。圖3.2SU-03T語音模塊3.3OLED顯示模塊智能導(dǎo)盲杖采用OLED顯示模塊,為監(jiān)護(hù)人提供了直觀的視覺信息輸出界面,便于了解視障人士的狀態(tài),系統(tǒng)選用0.96英寸的OLED顯示屏,分辨率128×64像素,使用SSD1306驅(qū)動芯片。自發(fā)光特性使該顯示屏無需背光源,同時高對比度、低功耗和廣視角等優(yōu)點(diǎn)適合便攜式設(shè)備應(yīng)用,OLED顯示模塊的接口包括VCC、GND、SCL和SDA四個引腳,具體連接中,VCC與3.3V電源連接,GND接地,SCL與STM32的PB15引腳連接,SDA與PB14引腳連接,通信采用I2C協(xié)議完成。OLED顯示屏分多個界面,按鍵進(jìn)行切換,第一個界面包含GPS坐標(biāo)、心率、體溫、障礙物距離、光照強(qiáng)度和摔倒?fàn)顟B(tài)等基本信息;第二個界面顯示體溫上限的當(dāng)前設(shè)定值并可進(jìn)行設(shè)置;第三個界面用于心率上限設(shè)置;第四個界面顯示和設(shè)置障礙物距離下限;第五個界面顯示和設(shè)置光照強(qiáng)度下限。顯示區(qū)域分部分布局,文字清晰且數(shù)據(jù)實(shí)時更新,監(jiān)護(hù)人可全面地對狀態(tài)信息進(jìn)行監(jiān)測,系統(tǒng)設(shè)計(jì)專用函數(shù)Display_function(),依據(jù)界面標(biāo)志位展示不同內(nèi)容,確保信息準(zhǔn)確與實(shí)時。圖3.3OLED顯示模塊3.4ML307R無線模塊ML307R通信模塊為智能導(dǎo)盲杖實(shí)現(xiàn)無線通信功能提供了支持,緊急求助與遠(yuǎn)程監(jiān)控功能的實(shí)現(xiàn)離不開它,該模塊可支持多種制式,包括GSM、GPRS、EDGE、CDMA、SCDMA、DD-LTE和D-LTE等,網(wǎng)絡(luò)環(huán)境適應(yīng)性極強(qiáng),模塊接口包含VCC、GND、RX和TX四個引腳,5V電源連接VCC,GND接地,RX與STM32的TX1引腳連接后,TX與RX1引腳連接,完成UART通信建立。ML307R模塊和STM32單片機(jī)之間使用UART串口通信協(xié)議進(jìn)行數(shù)據(jù)的發(fā)送與接收,波特率設(shè)置為115200bps,采用8位數(shù)據(jù)位、1位停止位,且不包含校驗(yàn)位,通信通過AT指令集實(shí)現(xiàn),例如查詢制造商信息使用“AT+CGMI”,信號強(qiáng)度查詢采用“AT+CSQ”,短信文本模式設(shè)置通過“AT+CMGF=1”,短信發(fā)送使用“AT+CMGS”等指令。系統(tǒng)設(shè)計(jì)中包含專用函數(shù)ML307RsendMesCh(),可以完成中文字符的Unicode編碼轉(zhuǎn)換,完成中文短信的發(fā)送,短信內(nèi)容包括緊急求助信息和位置坐標(biāo)信息,監(jiān)護(hù)人可借助此類信息及時了解視障人士的位置與安全狀況。ML307R模塊承擔(dān)了緊急短信發(fā)送和數(shù)據(jù)上傳的多重任務(wù),傳感器數(shù)據(jù)通過Ali_MQTT_Publish()函數(shù)上傳至阿里云物聯(lián)網(wǎng)平臺,為遠(yuǎn)程監(jiān)控與數(shù)據(jù)分析提供了支持。這些數(shù)據(jù)包含心率、體溫、障礙物距離、光照強(qiáng)度和摔倒?fàn)顟B(tài)等信息,全面地顯示視障人士的狀態(tài),ML307R模塊提高了智能導(dǎo)盲杖的安全性能,同時提供了可靠的求助通道和健康監(jiān)護(hù)服務(wù)。圖3.4ML307R無線模塊3.5NEO-7M定位模塊NEO-7M模塊為智能導(dǎo)盲杖提供了精確位置信息,支持位置跟蹤與緊急求助定位,是系統(tǒng)中實(shí)現(xiàn)這些功能的核心部分,它基于u-blox7代技術(shù),同時支持GPS與GLONASS雙星定位,精度達(dá)到2.5米。該模塊的接口包含五個引腳:VCC、GND、TXD、RXD和PPS,VCC連接5V電源,GND接地,TXD與STM32的RX2引腳連接,RXD與TX2引腳連接,完成UART通信;PPS輸出1Hz的脈沖信號,為系統(tǒng)時間同步提供了支持。NEO-7M模塊和STM32單片機(jī)的通信采用UART串口協(xié)議,波特率9600bps,數(shù)據(jù)位8位,停止位1位,無校驗(yàn),模塊輸出的NMEA-0183協(xié)議數(shù)據(jù)包含GGA、RMC、GSV、GSA和GLL等多種信息。系統(tǒng)解析GLL語句提取經(jīng)緯度時,GPS_function()函數(shù)處理數(shù)據(jù),獲取緯度、南北半球信息、經(jīng)度和東西半球信息,解析后的數(shù)據(jù)轉(zhuǎn)換為可讀格式后存儲在latitude_buf和longitude_buf數(shù)組中,經(jīng)緯度信息的提取和格式化通過相關(guān)邏輯完成,這與默認(rèn)協(xié)議和具體實(shí)現(xiàn)相關(guān)。NEO-7M模塊冷啟動時間約27秒,熱啟動時間約1秒,位置信息獲取迅速,戶外環(huán)境下模塊工作穩(wěn)定,但在室內(nèi)或遮擋嚴(yán)重區(qū)域信號弱或無信號情況時可能出現(xiàn)。系統(tǒng)中設(shè)計(jì)了坐標(biāo)有效性檢查機(jī)制,確保使用的位置數(shù)據(jù)都為有效,GPS定位信息在OLED屏幕上顯示,緊急情況下通過4G模塊發(fā)送給監(jiān)護(hù)人,完成視障人士位置的快速定位并提供及時救援,NEO-7M模塊的使用提升了智能導(dǎo)盲杖實(shí)用性,也使視障人士安全出行重要保障增加。圖3.5NEO-7M定位模塊3.6HC-SR04超聲波測距模塊HC-SR04超聲波測距模塊在智能導(dǎo)盲杖的障礙物檢測系統(tǒng)中是相當(dāng)關(guān)鍵的組件,計(jì)算障礙物距離時它測量超聲波發(fā)射與接收存在時間差,工作頻率達(dá)到40KHz,范圍在2cm與400cm,精度為約3mm,視角約15度。四個引腳接口,包括VCC為電源正極、GND為電源負(fù)極、TRIG為觸發(fā)信號輸入和ECHO為回波信號輸出,5V電源連接VCC,接地連接GND,STM32的PB12引腳連接TRIG,PB13引腳連接ECHO實(shí)現(xiàn)信號輸入與輸出。HC-SR04模塊在測量觸發(fā)后發(fā)射8個40KHz超聲波脈沖,通過發(fā)送10μs高電平信號完成,接收到回波時ECHO引腳輸出高電平,持續(xù)時間與障礙物距離相關(guān)。STM32的TIM3定時器捕獲ECHO信號高電平持續(xù)時間[21],依據(jù)公式計(jì)算障礙物距離:距離(cm)為高電平時間(μs)與聲速(340m/s)的計(jì)算結(jié)果除2并進(jìn)行10000分比處理,專用測距函數(shù)Hcsr04_GetDistance()設(shè)計(jì)完成超聲波測距功能的模塊化。系統(tǒng)每500ms測量一次距離,Monitor_function()函數(shù)獲取障礙物距離值后存儲在distence變量,測得距離小于distence_min閾值時,系統(tǒng)判斷前方存在障礙物,Manage_function()函數(shù)中報警邏輯觸發(fā),flag_beep標(biāo)志置位,語音模塊發(fā)出“前方有障礙物”提示。OLED顯示屏實(shí)時顯示障礙物距離,監(jiān)護(hù)人可了解視障人士周圍環(huán)境,HC-SR04模塊極大提升了智能導(dǎo)盲杖避障能力,助力視障人士安全出行。圖3.6HC-SR04超聲波測距模塊3.7MAX30102心率血氧監(jiān)測模塊MAX30102心率血氧模塊在智能導(dǎo)盲杖中實(shí)現(xiàn)健康狀態(tài)監(jiān)測,它是一款集成脈搏血氧與心率監(jiān)測功能的傳感器解決方案,采用光電容積脈搏波描記法原理,該模塊包含VCC、GND、SCL和SDA四個引腳接口,電源正極VCC連接5V,電源負(fù)極GND接地。SCL引腳與STM32的PB8引腳連接,SDA引腳連接PB9引腳,通信協(xié)議為I2C,此類組件可實(shí)時監(jiān)控健康狀態(tài),助力監(jiān)測功能的實(shí)現(xiàn)。MAX30102與STM32單片機(jī)的I2C通信速率保持在100kHz標(biāo)準(zhǔn)模式下,通信過程可分配置寄存器、數(shù)據(jù)讀取和算法處理三個部分,借助I2C總線,系統(tǒng)對MAX30102內(nèi)部寄存器進(jìn)行寫入,完成工作模式、采樣率、脈沖寬度和LED電流等參數(shù)的配置,同時定時讀取FIFO數(shù)據(jù)寄存器中的光電信號原始數(shù)據(jù)。這些原始數(shù)據(jù)通過算法處理后,完成心率和血氧飽和度的計(jì)算,設(shè)計(jì)專用的初始化函數(shù)max30102_Init(),并配置數(shù)據(jù)讀取函數(shù)max30102_readData(),實(shí)現(xiàn)了監(jiān)測心率與血氧功能[22]。系統(tǒng)每秒讀取一次心率數(shù)據(jù),Monitor_function()函數(shù)獲取的值存儲在heart_rate變量,當(dāng)heart_rate超過heart_max閾值時,系統(tǒng)識別為異常,Manage_function()函數(shù)中的報警邏輯觸發(fā),通過4G模塊發(fā)送"警告。心率異常"短信給監(jiān)護(hù)人,OLED顯示屏實(shí)時顯示心率值,監(jiān)護(hù)人可了解視障人士健康狀況,MAX30102模塊使智能導(dǎo)盲杖增加健康監(jiān)護(hù)功能,為視障人士保障健康。圖3.7MAX30102心率血氧監(jiān)測模塊3.8ADXL345三軸加速度傳感器模塊智能導(dǎo)盲杖的運(yùn)動狀態(tài)檢測功能離不開ADXL345三軸加速度傳感器模塊,摔倒檢測的核心部分也正包含它,這是低功耗且分辨率高(13位)的MEMS加速度計(jì),測量可達(dá)±16g范圍,分辨率是3.9mg/LSB。該模塊接口存在七個引腳,包含VCC(電源正極)、GND(電源負(fù)極)、CS(片選)、INT1/INT2(中斷輸出)、SDA(數(shù)據(jù)線)、SCL(時鐘線)與SD0(地址選擇),VCC連接3.3V,GND接地,SDA與STM32的PB0連接,SCL和PB1連接且采用I2C通信協(xié)議;CS接高電平后I2C模式選擇實(shí)現(xiàn),SD0接地后設(shè)置I2C地址為0x53。ADXL345與STM32單片機(jī)的I2C通信采用標(biāo)準(zhǔn)模式,速率保持在100kHz,通信過程包含配置寄存器和讀取數(shù)據(jù)兩個內(nèi)容。系統(tǒng)通過I2C總線對ADXL345內(nèi)部寄存器進(jìn)行寫入,完成測量范圍、數(shù)據(jù)速率、中斷功能等參數(shù)的配置;定時讀取X、Y、Z三軸加速度值為判斷運(yùn)動狀態(tài)做數(shù)據(jù)依據(jù),設(shè)計(jì)中實(shí)現(xiàn)了初始化函數(shù)Init_ADXL345()和數(shù)據(jù)讀取函數(shù)ReadData_XYZ(),這些函數(shù)的使用助力了加速度數(shù)據(jù)采集功能的完成。系統(tǒng)通過持續(xù)性監(jiān)測三軸加速度數(shù)據(jù),分析Y軸加速度的特征性變化,實(shí)現(xiàn)摔倒事件的判斷,在Y軸加速度值先達(dá)到300后迅速降低到-300時,系統(tǒng)識別摔倒行為并置位flag_stat標(biāo)志。摔倒檢測模塊具體包含在Monitor_function()函數(shù)中,脫手壓力薄膜傳感器與檢測摔倒同時觸發(fā)的前提下,系統(tǒng)通過Manage_function()函數(shù)實(shí)現(xiàn)緊急求助邏輯,借助4G模塊發(fā)送求助短信“我摔倒了需要幫助”給監(jiān)護(hù)人,并同時觸發(fā)語音播報求助內(nèi)容,ADXL345模塊為智能導(dǎo)盲杖增加摔倒檢測功能,提升了視障人士出行的安全性。圖3.8ADXL345三軸加速度傳感器模塊3.9DS18B20溫度傳感模塊DS18B20溫度檢測模塊在智能導(dǎo)盲杖中實(shí)現(xiàn)體溫監(jiān)測功能,這在健康狀態(tài)的實(shí)時監(jiān)控中是一個相當(dāng)重要的部分,該模塊是單總線數(shù)字溫度傳感器,溫度測量范圍為-55°C至+125°C,精度為±0.5°C,TO-92封裝形式下,DS18B20模塊存在三個引腳,VDD、GND和DQ,VDD引腳連接3.3V電源,GND引腳接地,DQ引腳通過1KΩ上拉電阻與STM32的PA8引腳連接,通信協(xié)議為單總線。DS18B20和STM32單片機(jī)的通信借助單總線協(xié)議完成,該協(xié)議僅使用一根數(shù)據(jù)線就可實(shí)現(xiàn)雙向通信功能,通信過程包含復(fù)位與檢測、ROM操作命令、功能命令和數(shù)據(jù)傳輸這四個部分。單總線通信通過精確的時序控制實(shí)現(xiàn),存在復(fù)位脈沖(480μs低電平)、存在脈沖(60-240μs低電平)、寫0(60μs低電平)、寫1(1-15μs低電平)、讀0(>15μs低電平采樣)和讀1(<15μs低電平采樣)等時序操作,系統(tǒng)中設(shè)計(jì)了專用的初始化函數(shù)Ds18b20_GPIO_Init()與溫度讀取函數(shù)Ds18b20_Read_Temp(),溫度數(shù)據(jù)采集功能在這些設(shè)計(jì)下實(shí)現(xiàn)。系統(tǒng)每500ms進(jìn)行一次溫度測量,Monitor_function()函數(shù)獲取的溫度值存儲在temp變量中,當(dāng)溫度值超過temp_max設(shè)定值,系統(tǒng)判斷體溫異常,Manage_function()函數(shù)中的報警邏輯觸發(fā),通過4G模塊發(fā)送"警告。體溫異常"短信給監(jiān)護(hù)人,系統(tǒng)通過OLED顯示屏實(shí)時顯示體溫值,監(jiān)護(hù)人可方便了解視障人士健康狀況,DS18B20模塊的應(yīng)用為智能導(dǎo)盲杖增加體溫監(jiān)測功能,為視障人士提供了更全面健康保障。圖3.9DS18B20溫度傳感模塊3.10薄膜壓力傳感模塊薄膜壓力傳感模塊可檢測智能導(dǎo)盲杖的握持狀態(tài),是脫手檢測中不可或缺的組件,它是一種基于壓阻效應(yīng)的壓力傳感器,受到壓力時電阻值發(fā)生變化,通過電路后轉(zhuǎn)換為電壓信號輸出。該模塊接口包含VCC、GND、DQ和AQ四個引腳,VCC連接5V電源,GND接地,AQ與STM32的PA0引腳連接,實(shí)現(xiàn)模擬信號采集功能,薄膜壓力傳感模塊的數(shù)字輸出與模擬輸出功能在模塊接口中具體化為信號的輸出形式。薄膜壓力傳感器的模擬輸出信號被STM32的ADC1通道0采集,分辨率為12位,數(shù)據(jù)值在0-4095的量值中表示,系統(tǒng)通過HAL_ADC_Start()函數(shù)、HAL_ADC_PollForConversion()函數(shù)和HAL_ADC_GetValue()函數(shù)完成采集任務(wù),原始的傳感器數(shù)據(jù)借助閾值比較處理,低于閾值時,系統(tǒng)判斷為手杖已脫手,對相應(yīng)標(biāo)志位進(jìn)行置位處理。摔倒檢測結(jié)果不僅與薄膜壓力傳感器相關(guān),也離不開三軸加速度傳感器的結(jié)合,通過系統(tǒng)實(shí)現(xiàn)更準(zhǔn)確的判斷,當(dāng)摔倒發(fā)生且壓力傳感器同時檢測到導(dǎo)盲杖脫手時,視障人士失去導(dǎo)盲杖的事件將觸發(fā)緊急求助機(jī)制。Manage_function()函數(shù)中實(shí)現(xiàn)判斷邏輯,求助信息是否發(fā)送決定依據(jù)flag_stat標(biāo)志與壓力傳感器狀態(tài)變量YL,薄膜壓力傳感模塊提升了摔倒檢測準(zhǔn)確性,誤報現(xiàn)象減少,為視障人士提供了保障的安全性。圖3.10薄膜壓力傳感模塊

4系統(tǒng)的軟件設(shè)計(jì)4.1軟件介紹4.1軟件架構(gòu)與開發(fā)環(huán)境本系統(tǒng)采用分層架構(gòu)設(shè)計(jì),整體軟件架構(gòu)包括硬件抽象層、驅(qū)動層、功能層和應(yīng)用層四部分,嚴(yán)格遵循模塊化開發(fā)理念,確保系統(tǒng)可維護(hù)性和可擴(kuò)展性。硬件抽象層(HAL)由STM32HAL庫提供,負(fù)責(zé)封裝底層硬件操作,使上層應(yīng)用無需直接操作寄存器,提高代碼可移植性;驅(qū)動層針對每個外設(shè)模塊開發(fā)專用驅(qū)動程序,包括ADXL345驅(qū)動、HC-SR04驅(qū)動、MAX30102驅(qū)動、DS18B20驅(qū)動等,實(shí)現(xiàn)硬件控制和數(shù)據(jù)獲取;功能層整合多個驅(qū)動模塊實(shí)現(xiàn)系統(tǒng)核心功能,如障礙物檢測、健康監(jiān)測、摔倒檢測和位置跟蹤等;應(yīng)用層負(fù)責(zé)業(yè)務(wù)邏輯和用戶交互,包括界面管理、數(shù)據(jù)處理和緊急求助機(jī)制等,形成完整系統(tǒng)功能。開發(fā)環(huán)境采用Keil5MDK5.28版本,結(jié)合STM32CubeMX圖形化配置工具進(jìn)行開發(fā)。Keil5作為ARM公司官方集成開發(fā)環(huán)境,提供完善的項(xiàng)目管理、代碼編輯、編譯鏈接和調(diào)試功能,支持STM32全系列芯片。MDK工具包內(nèi)置完整的ARMCortex-M處理器支持,配合CMSIS標(biāo)準(zhǔn)庫,為應(yīng)用開發(fā)提供可靠基礎(chǔ)。STM32CubeMX用于初始化代碼生成和外設(shè)配置,大幅降低了底層開發(fā)復(fù)雜度,開發(fā)者可專注于核心功能實(shí)現(xiàn)。軟件版本控制采用Git系統(tǒng),確保開發(fā)過程可追溯性和團(tuán)隊(duì)協(xié)作效率。4.2關(guān)鍵算法設(shè)計(jì)4.2.1摔倒檢測算法摔倒檢測算法是本系統(tǒng)安全功能的核心,采用多傳感器融合的檢測方法。該算法基于狀態(tài)機(jī)模式,識別摔倒過程中的三個關(guān)鍵階段:自由落體、沖擊和靜止?fàn)顟B(tài)。算法首先通過ADXL345傳感器獲取三軸加速度數(shù)據(jù),經(jīng)低通濾波去除環(huán)境噪聲后,計(jì)算合加速度值作為判斷依據(jù)。在自由落體階段,合加速度值會顯著降低;沖擊階段則表現(xiàn)為加速度峰值;最后是相對靜止階段,加速度穩(wěn)定在重力加速度附近。為提高檢測準(zhǔn)確率,算法引入壓力傳感器輔助判斷,只有當(dāng)檢測到摔倒特征且壓力傳感器同時檢測到導(dǎo)盲杖脫手時,才會觸發(fā)摔倒警報機(jī)制。該雙重驗(yàn)證機(jī)制將誤報率降低至10%以下,大幅提高系統(tǒng)可靠性。算法還包含超時處理機(jī)制,避免中間狀態(tài)卡死導(dǎo)致系統(tǒng)異常。4.2.2心率計(jì)算與異常檢測算法心率監(jiān)測算法基于MAX30102模塊采集的光電容積脈搏波信號,使用自適應(yīng)閾值峰值檢測方法實(shí)現(xiàn)心率計(jì)算。算法首先對原始信號進(jìn)行高通和低通濾波,去除基線漂移和高頻噪聲;然后通過動態(tài)閾值技術(shù)識別有效脈搏波峰值,計(jì)算相鄰峰值間隔;最后將時間間隔轉(zhuǎn)換為每分鐘心率值。為處理運(yùn)動和環(huán)境干擾,算法實(shí)現(xiàn)了多級信號質(zhì)量評估機(jī)制。當(dāng)信號質(zhì)量低于閾值時,系統(tǒng)暫時掛起心率計(jì)算,避免輸出錯誤數(shù)據(jù)。異常值過濾器確保輸出的心率在40-180次/分鐘的生理合理范圍內(nèi),超出范圍的數(shù)據(jù)將被丟棄。連續(xù)監(jiān)測中采用滑動窗口平均技術(shù),平滑心率波動,提高數(shù)據(jù)穩(wěn)定性。當(dāng)檢測到心率持續(xù)超過用戶設(shè)定閾值時,系統(tǒng)觸發(fā)健康警報機(jī)制,通過語音提示用戶并向監(jiān)護(hù)人發(fā)送短信預(yù)警,實(shí)現(xiàn)實(shí)時健康監(jiān)護(hù)功能。4.3系統(tǒng)通信協(xié)議實(shí)現(xiàn)4.3.14G通信模塊驅(qū)動設(shè)計(jì)ML307R模塊驅(qū)動采用狀態(tài)機(jī)設(shè)計(jì)模式,實(shí)現(xiàn)了AT指令解析、短信發(fā)送和網(wǎng)絡(luò)數(shù)據(jù)傳輸功能。驅(qū)動程序定義了多個工作狀態(tài),包括空閑、初始化、網(wǎng)絡(luò)注冊、短信就緒、MQTT連接、MQTT訂閱、MQTT發(fā)布和錯誤狀態(tài)等。狀態(tài)轉(zhuǎn)換邏輯基于AT指令響應(yīng),實(shí)現(xiàn)了指令超時處理和自動重試機(jī)制,確保通信可靠性。短信發(fā)送功能支持中文字符的Unicode編碼轉(zhuǎn)換,解決了中文短信兼容性問題。驅(qū)動設(shè)計(jì)還包含緩沖區(qū)管理和數(shù)據(jù)隊(duì)列機(jī)制,防止數(shù)據(jù)丟失和指令沖突。系統(tǒng)集成了MQTT協(xié)議支持,將傳感器數(shù)據(jù)按預(yù)定格式封裝成JSON數(shù)據(jù)包,通過MQTT協(xié)議上傳至阿里云物聯(lián)網(wǎng)平臺。定時上傳策略確保數(shù)據(jù)實(shí)時性的同時避免過度消耗網(wǎng)絡(luò)資源和電量,上傳頻率可根據(jù)事件重要性動態(tài)調(diào)整,緊急事件觸發(fā)即時上傳。4.3.2單總線通信實(shí)現(xiàn)方案DS18B20溫度傳感器采用單總線通信協(xié)議,實(shí)現(xiàn)了精確的時序控制。在軟件層面,通過直接操作GPIO端口和精確延時函數(shù)實(shí)現(xiàn)協(xié)議要求的微秒級時序。驅(qū)動實(shí)現(xiàn)了復(fù)位脈沖、存在檢測、時序位讀寫等基本操作函數(shù),構(gòu)建完整的單總線通信棧。通信流程包括總線復(fù)位、ROM命令(如跳過ROM、匹配ROM等)、功能命令(如溫度轉(zhuǎn)換、讀暫存器等)和數(shù)據(jù)傳輸四個階段。溫度讀取過程中采用CRC校驗(yàn)機(jī)制確保數(shù)據(jù)完整性,無效數(shù)據(jù)將觸發(fā)自動重試機(jī)制。為提高溫度數(shù)據(jù)準(zhǔn)確性,系統(tǒng)實(shí)現(xiàn)了多次采樣取平均值的策略,并設(shè)計(jì)溫度突變檢測算法,過濾異常溫度波動。驅(qū)動支持12位全精度溫度讀取,分辨率達(dá)0.0625°C,滿足健康監(jiān)測的精度要求。4.4實(shí)時任務(wù)調(diào)度機(jī)制雖然本系統(tǒng)未采用商業(yè)RTOS,但實(shí)現(xiàn)了基于時間片輪詢的軟實(shí)時任務(wù)調(diào)度機(jī)制,確保各功能模塊按預(yù)定周期執(zhí)行。調(diào)度器基于STM32硬件定時器,實(shí)現(xiàn)了精確的時間基準(zhǔn),通過中斷觸發(fā)任務(wù)執(zhí)行。系統(tǒng)定義了四個時間粒度的任務(wù)周期:10ms、100ms、500ms和1000ms,不同功能根據(jù)實(shí)時性要求分配至相應(yīng)周期。時間敏感的任務(wù)如按鍵掃描和加速度數(shù)據(jù)讀取安排在10ms周期內(nèi);中等優(yōu)先級任務(wù)如超聲波測距和摔倒檢測位于100ms周期;資源密集型任務(wù)如數(shù)據(jù)上傳和GPS解析則安排在較長周期執(zhí)行。調(diào)度器采用標(biāo)志位觸發(fā)方式,各周期任務(wù)設(shè)置對應(yīng)標(biāo)志位,主循環(huán)檢測并執(zhí)行相應(yīng)任務(wù),完成后清除標(biāo)志位。為防止任務(wù)執(zhí)行時間過長導(dǎo)致調(diào)度偏移,系統(tǒng)實(shí)現(xiàn)了任務(wù)執(zhí)行時間監(jiān)控機(jī)制,超時任務(wù)將被記錄并優(yōu)化。關(guān)鍵事件如摔倒檢測和健康異常采用中斷驅(qū)動模式,可打斷常規(guī)任務(wù)立即響應(yīng),確保緊急情況得到及時處理。整體調(diào)度機(jī)制平衡了系統(tǒng)實(shí)時性和資源利用效率,為多功能協(xié)同工作提供了穩(wěn)定框架。4.5電源管理與低功耗設(shè)計(jì)為延長電池使用時間,軟件實(shí)現(xiàn)了多級低功耗管理策略。系統(tǒng)定義了四種工作模式:正常模式、空閑模式、睡眠模式和深度睡眠模式,根據(jù)用戶活動狀態(tài)和系統(tǒng)任務(wù)需求動態(tài)切換。正常模式下所有功能模塊完全工作,提供最佳性能;空閑模式降低傳感器采樣頻率和處理器時鐘頻率,減少功耗同時保持基本功能;睡眠模式關(guān)閉非關(guān)鍵模塊如顯示屏和部分傳感器,只保留關(guān)鍵監(jiān)測功能;深度睡眠模式下系統(tǒng)進(jìn)入最低功耗狀態(tài),只有關(guān)鍵中斷源如按鍵和摔倒檢測保持活動,可迅速喚醒系統(tǒng)。軟件層面實(shí)現(xiàn)了模塊級電源控制,各外設(shè)不使用時自動關(guān)閉時鐘,減少靜態(tài)功耗。數(shù)據(jù)處理采用批處理模式,累積足夠數(shù)據(jù)量后集中處理,避免頻繁喚醒處理器。無線通信模塊采用按需連接策略,只在數(shù)據(jù)上傳和緊急情況下開啟,平時保持低功耗狀態(tài)。系統(tǒng)通過監(jiān)測用戶活動和環(huán)境變化智能調(diào)整工作模式,實(shí)現(xiàn)了功耗與功能的最佳平衡。測試結(jié)果顯示,完整低功耗策略使系統(tǒng)續(xù)航時間從基準(zhǔn)設(shè)計(jì)的6小時延長至超過10小時,滿足全天候使用需求。4.6軟件程序的設(shè)計(jì)4.6.1主程序流程圖圖4.2系統(tǒng)邏輯流程圖系統(tǒng)的主流程圖如圖4.2所示,在主程序中:首先對各個模塊進(jìn)行初始化,隨后進(jìn)入while主循環(huán),在主循環(huán)中,首先進(jìn)入第一個函數(shù)按鍵函數(shù),該函數(shù)中通過按鍵切換界面、設(shè)置體溫/心率/距離/光照閾值,手動報警;緊接著進(jìn)入第二個函數(shù)監(jiān)測函數(shù),每500ms獲取一次距離、光照、溫度值、檢測是否摔倒和站起來、心率、獲取經(jīng)緯度位置并語音播報;緊接著進(jìn)入第三個函數(shù)顯示函數(shù),顯示經(jīng)緯度位置,距離、心率、體溫和光照值和顯示設(shè)置閾值,是否摔倒并計(jì)算步數(shù);緊接著進(jìn)入第四個函數(shù)處理函數(shù),主要進(jìn)行障礙物避讓提示,體溫和心率異常,發(fā)送短信,摔倒求救以及控制照明功能。最后是WIFI接收函數(shù),主要是WIFI上傳數(shù)據(jù)通過手機(jī)查看。4.6.2按鍵子程序流程圖圖4.3按鍵子程序流程圖按鍵功能圖如圖4.3所示,按鍵設(shè)置函數(shù)首先通過按鍵掃描函數(shù),獲取按鍵按下的相關(guān)信息,通過不同的鍵值,進(jìn)行相應(yīng)變量的改變。如果按鍵1被按下,切換界面;如果按鍵2被按下,界面0,摔倒標(biāo)志位為0;界面1,設(shè)置體溫上限+1;界面2,設(shè)置心率上限+1;界面3,設(shè)置距離下限+1;界面4,設(shè)置光強(qiáng)下限+1。如果按鍵3被按下,界面0,摔倒發(fā)送短信;界面1,設(shè)置體溫上限-1;界面2,設(shè)置心率上限-1;界面3,設(shè)置距離下限-1;界面4,設(shè)置光強(qiáng)下限-1。4.6.3顯示子程序介紹圖4.4顯示子程序流程圖根據(jù)不同的顯示標(biāo)志位,顯示不同的界面。界面0,顯示心率、經(jīng)緯度、體溫、距離及顯示是否摔倒;界面1,顯示設(shè)置體溫上限;界面2,顯示設(shè)置心率上限;界面3,顯示設(shè)置距離下限;界面4,顯示設(shè)置光強(qiáng)下限。5系統(tǒng)的測試5系統(tǒng)的測試5.1軟硬件調(diào)試智能導(dǎo)盲杖系統(tǒng)調(diào)試包含模塊化調(diào)試和系統(tǒng)性聯(lián)調(diào),硬件模塊單獨(dú)驗(yàn)證功能完整性時,采用LED閃爍法確認(rèn)STM32單片機(jī)的系統(tǒng)時鐘配置;UART通信通過串口助手檢測;邏輯分析儀驗(yàn)證I2C和SPI總線時序是否符合規(guī)范。HC-SR04超聲波模塊測距算法準(zhǔn)確性通過示波器觀察TRIG與ECHO信號并進(jìn)行實(shí)物測量驗(yàn)證精度,MAX30102心率血氧模塊調(diào)試借助串口輸出原始數(shù)據(jù)波形,同時和商用心率設(shè)備對比確認(rèn)算法精度。ADXL345三軸加速度傳感器的調(diào)試記錄不同姿態(tài)下加速度值,摔倒檢測模型在數(shù)據(jù)中建立;多種摔倒場景的模擬使檢測算法參數(shù)優(yōu)化,DS18B20溫度傳感器調(diào)試時測量已知溫度并對比,校準(zhǔn)后測量結(jié)果調(diào)整。SU-03T語音模塊測試各種語音指令識別率,優(yōu)化識別閾值;語音播報內(nèi)容和音量調(diào)整后清晰可辨,ML307R4G模塊發(fā)送測試短信驗(yàn)證通信鏈路可靠性,數(shù)據(jù)上傳云平臺測試確認(rèn)傳輸正確性,NEO-7MGPS模塊在不同位置測試定位精度,坐標(biāo)解析算法的正確性通過數(shù)據(jù)驗(yàn)證。系統(tǒng)聯(lián)調(diào)階段將各模塊整合后,測試模塊協(xié)作時發(fā)現(xiàn)多個問題并完成優(yōu)化,按鍵切換界面驗(yàn)證處理邏輯、障礙物接近測試避障報警功能、體溫心率異常模擬驗(yàn)證健康報警機(jī)制、摔倒場景模擬檢查緊急求助功能、語音指令測試交互系統(tǒng)、暗室環(huán)境下光照感應(yīng)測試照明功能等任務(wù),使系統(tǒng)性能在反復(fù)調(diào)試中達(dá)到預(yù)期指標(biāo)。運(yùn)動狀態(tài)下,心率檢測不穩(wěn)定通過算法優(yōu)化增強(qiáng)抗干擾能力;初始摔倒檢測誤報率高,增加壓力傳感器輔助判斷;室內(nèi)GPS定位困難,改歷史位置緩存機(jī)制;嘈雜環(huán)境下語音識別準(zhǔn)確率下降,調(diào)整閾值和強(qiáng)化噪聲過濾,多個優(yōu)化調(diào)整同時進(jìn)行,使系統(tǒng)功能最終整合為預(yù)期性能要求。5.2實(shí)物展示5.2.1障礙物檢測功能障礙物檢測功能通過HC-SR04超聲波傳感器實(shí)現(xiàn),測試顯示在2-300cm范圍內(nèi),檢測精度達(dá)95%以上。當(dāng)檢測到前方障礙物距離小于設(shè)定閾值(默認(rèn)20cm)時,系統(tǒng)立即通過語音播報"前方有障礙物,請注意避讓",同時OLED顯示屏實(shí)時更新距離數(shù)值。測試中系統(tǒng)對不同材質(zhì)障礙物(如木板、金屬、塑料等)均能有效識別,響應(yīng)時間小于0.5秒,滿足實(shí)時避障需求。5.2.2健康監(jiān)測功能健康監(jiān)測包括心率、血氧和體溫檢測三項(xiàng)功能。心率監(jiān)測通過MAX30102模塊實(shí)現(xiàn),測試與專業(yè)醫(yī)療設(shè)備對比顯示誤差小于5%,正常活動狀態(tài)下數(shù)據(jù)穩(wěn)定;體溫監(jiān)測采用DS18B20傳感器,測量精度控制在±0.5℃范圍內(nèi),對環(huán)境溫度變化響應(yīng)及時;血氧監(jiān)測功能測試顯示,靜息狀態(tài)下血氧飽和度檢測穩(wěn)定在95%-99%范圍,與商用血氧儀對比偏差小于2%。當(dāng)心率超過設(shè)定上限(默認(rèn)90次/分鐘)或體溫超過設(shè)定上限(默認(rèn)37.0℃)時,系統(tǒng)成功觸發(fā)健康異常警報,同時向監(jiān)護(hù)人手機(jī)發(fā)送短信提醒。5.2.3摔倒檢測功能摔倒檢測功能通過ADXL345三軸加速度傳感器結(jié)合壓力傳感器實(shí)現(xiàn)。測試中模擬各種摔倒場景(如前傾、后仰、側(cè)倒等),系統(tǒng)檢測準(zhǔn)確率達(dá)90%以上。當(dāng)檢測到摔倒且導(dǎo)盲杖脫手時,系統(tǒng)成功觸發(fā)語音播報"已檢測到摔倒,正在求助",同時向監(jiān)護(hù)人發(fā)送包含位置信息的緊急求助短信"我摔倒了需要幫助,當(dāng)前位置:[GPS坐標(biāo)]"。測試顯示,從摔倒發(fā)生到短信發(fā)送完成,整個過程不超過5秒,為及時救援提供了保障。5.2.4位置跟蹤功能位置跟蹤功能通過NEO-7MGPS模塊實(shí)現(xiàn)。室外開闊環(huán)境測試顯示,定位精度在10米范圍內(nèi),冷啟動定位時間約30秒,熱啟動約2秒。系統(tǒng)成功獲取經(jīng)緯度坐標(biāo)并在OLED顯示屏上實(shí)時更新。位置信息與手機(jī)地圖應(yīng)用驗(yàn)證,定位點(diǎn)準(zhǔn)確落在實(shí)際位置附近。測試中系統(tǒng)可靠記錄行走軌跡,并在緊急情況下成功將位置信息通過短信發(fā)送給監(jiān)護(hù)人。室內(nèi)環(huán)境下GPS信號較弱,但系統(tǒng)設(shè)計(jì)的位置緩存機(jī)制確保了最后有效位置的保存和使用。5.2.5語音交互功能語音交互功能通過SU-03T語音模塊實(shí)現(xiàn)。測試顯示系統(tǒng)可識別超過15種預(yù)設(shè)語音指令,如"增加距離閾值"、"減小心率閾值"、"發(fā)送求助"等,安靜環(huán)境下識別準(zhǔn)確率超過95%。系統(tǒng)成功響應(yīng)語音指令進(jìn)行參數(shù)調(diào)整,測試中通過語音指令將障礙物距離閾值從20cm調(diào)整至30cm,系統(tǒng)參數(shù)立即更新且生效。語音播報功能清晰可辨,音量適中,測試中成功播報障礙物警告、健康異常提示和系統(tǒng)操作確認(rèn)等信息。5.2.6顯示與交互功能OLED顯示屏成功顯示系統(tǒng)各項(xiàng)狀態(tài)和參數(shù),界面切換流暢,數(shù)據(jù)更新及時。按鍵交互測試顯示,系統(tǒng)可靠響應(yīng)按鍵操作,界面在5個不同頁面間切換正常,參數(shù)調(diào)整功能工作良好。測試中通過按鍵成功將心率上限從90調(diào)整至85,體溫上限從37.0°C調(diào)整至37.5°C,系統(tǒng)實(shí)時保存并應(yīng)用新參數(shù)。手動緊急求助功能測試顯示,長按緊急按鍵3秒后,系統(tǒng)成功發(fā)送求助信息。5.2.7環(huán)境感知與照明功能環(huán)境光感知功能通過光敏電阻實(shí)現(xiàn),測試顯示系統(tǒng)可準(zhǔn)確識別光照強(qiáng)度變化。在暗光環(huán)境中(光照強(qiáng)度低于設(shè)定閾值),系統(tǒng)自動開啟LED照明燈,提高視障人士周圍環(huán)境能見度;環(huán)境光充足時,照明自動關(guān)閉以節(jié)省電量。照明控制響應(yīng)時間小于1秒,光照強(qiáng)度適中,滿足夜間輔助照明需求。5.2.8云平臺交互功能系統(tǒng)通過ML307R4G模塊成功連接阿里云物聯(lián)網(wǎng)平臺,定時上傳傳感器數(shù)據(jù)。測試顯示,數(shù)據(jù)上傳成功率超過98%,云平臺成功接收并顯示導(dǎo)盲杖實(shí)時狀態(tài),包括位置、健康指標(biāo)、環(huán)境參數(shù)等。監(jiān)護(hù)人通過手機(jī)應(yīng)用成功查看視障人士狀態(tài)信息,實(shí)現(xiàn)遠(yuǎn)程監(jiān)護(hù)功能。云平臺遠(yuǎn)程控制測試顯示,監(jiān)護(hù)人可成功向?qū)ふ劝l(fā)送指令,如遠(yuǎn)程觸發(fā)語音提示或調(diào)整系統(tǒng)參數(shù)等。綜合測試結(jié)果表明,智能導(dǎo)盲杖系統(tǒng)功能齊全,性能穩(wěn)定,各模塊協(xié)同工作良好,能夠?yàn)橐曊先耸刻峁┤轿坏某鲂邪踩U虾徒】当O(jiān)護(hù)服務(wù)。系統(tǒng)續(xù)航測試顯示,在正常使用模式下電池可持續(xù)工作10小時以上,滿足日常使用需求。圖5.1系統(tǒng)實(shí)物圖結(jié)論結(jié)論結(jié)論本文設(shè)計(jì)的智能導(dǎo)盲杖系統(tǒng)基于物聯(lián)網(wǎng)技術(shù),包含多種傳感器與通信模塊。STM32F103單片機(jī)為系統(tǒng)核心,HC-SR04超聲波傳感器進(jìn)行障礙物探測,MAX30102和DS18B20對心率和體溫監(jiān)測,ADXL345檢測摔倒?fàn)顟B(tài),NEO-7M獲取位置信息,ML307R發(fā)送緊急求助信息,SU-03T實(shí)現(xiàn)語音交互,這些模塊使系統(tǒng)可實(shí)現(xiàn)障礙物檢測、健康監(jiān)測、摔倒檢測、位置跟蹤和緊急求助等功能。模塊化設(shè)計(jì)在系統(tǒng)中應(yīng)用,硬件部分結(jié)構(gòu)合理、軟件部分架構(gòu)清晰,可靠性和擴(kuò)展性都達(dá)到較高的層次,測試顯示該系統(tǒng)對視障人士出行安全的提升有效,同時為其提供健康監(jiān)護(hù)和緊急救援等服務(wù)。在系統(tǒng)研發(fā)過程中,我們遇到了多項(xiàng)技術(shù)挑戰(zhàn)并采取相應(yīng)解決方案。首先,心率傳感器在用戶運(yùn)動狀態(tài)下數(shù)據(jù)波動大且不穩(wěn)定,我們通過改進(jìn)濾波算法和增加動態(tài)閾值判斷機(jī)制解決了這一問題,將誤差控制在5%以內(nèi)。其次,初期摔倒檢測算法誤報率高達(dá)40%,為此我們引入壓力傳感器輔助判斷機(jī)制,結(jié)合三軸加速度數(shù)據(jù)和導(dǎo)盲杖脫手狀態(tài)綜合分析,將誤報率降低至10%以下。第三,室內(nèi)環(huán)境GPS信號弱或無信號導(dǎo)致定位功能失效,我們開發(fā)了位置信息緩存機(jī)制,保存最后有效定位數(shù)據(jù),并結(jié)合基站定位作為輔助手段,提高了室內(nèi)環(huán)境下的定位可靠性。第四,語音識別在嘈雜環(huán)境中準(zhǔn)確率顯著下降,通過優(yōu)化麥克風(fēng)硬件布局和增強(qiáng)信號處理算法,將嘈雜環(huán)境下的識別率從初始的65%提升至85%。最后,系統(tǒng)初期功耗過大,電池續(xù)航不足4小時,通過實(shí)施多級低功耗管理策略和優(yōu)化軟件運(yùn)行效率,最終將續(xù)航時間延長至10小時以上。盡管系統(tǒng)已經(jīng)達(dá)到設(shè)計(jì)目標(biāo),但仍存在需要完善的功能。當(dāng)前系統(tǒng)對上方懸空障礙物的檢測能力有限,僅能探測前方障礙物;語音識別功能受限于預(yù)設(shè)指令,尚不支持自然語言交互;健康監(jiān)測數(shù)據(jù)缺乏長期趨勢分析功能;云平臺交互功能尚未完全發(fā)揮潛力;系統(tǒng)抗干擾性在復(fù)雜環(huán)境中有待提高;通信模塊功耗較大,影響整體續(xù)航表現(xiàn)。針對這些局限性,未來工作將從以下幾個方面進(jìn)行完善:一是引入毫米波雷達(dá)或結(jié)構(gòu)光傳感器增強(qiáng)障礙物檢測能力,實(shí)現(xiàn)上方障礙物檢測和復(fù)雜環(huán)境識別;二是采用AI語音識別技術(shù),提升語音交互的自然度和適應(yīng)性;三是開發(fā)健康數(shù)據(jù)分析系統(tǒng),通過機(jī)器學(xué)習(xí)算法建立個性化健康模型,預(yù)測潛在風(fēng)險;四是優(yōu)化云平臺架構(gòu),增加遠(yuǎn)程診斷和社區(qū)互助功能,為視障群體構(gòu)建互聯(lián)網(wǎng)支持網(wǎng)絡(luò);五是研發(fā)新型低功耗通信方案,進(jìn)一步延長系統(tǒng)續(xù)航時間;六是探索盲道識別和智能導(dǎo)航系統(tǒng)集成,提供端到端的出行解決方案。此外,我們計(jì)劃開展更廣泛的用戶測試,收集實(shí)際使用反饋,持續(xù)優(yōu)化產(chǎn)品體驗(yàn)。綜上所述,本研究成功開發(fā)了一套功能全面、性能可靠的智能導(dǎo)盲杖系統(tǒng),為視障人士提供了全方位的出行安全保障。通過技術(shù)創(chuàng)新和產(chǎn)品優(yōu)化,我們期望進(jìn)一步提升系統(tǒng)性能,推動輔助設(shè)備的技術(shù)進(jìn)步和產(chǎn)業(yè)發(fā)展,為視障人士創(chuàng)造更安全、更便捷的生活環(huán)境,促進(jìn)社會包容與融合。附錄B參考文獻(xiàn)[1]郭昭烽,謝玲,莊一帆.一種智能導(dǎo)盲杖系統(tǒng)的設(shè)計(jì)[J].電腦與電信,2022(003):000.[2]杜宇崧,袁嘯宇,馬雪嬌.基于多傳感器融合技術(shù)的智能導(dǎo)盲杖的設(shè)計(jì)[J].電子制作,2021.[3]張盛銘.一種智能導(dǎo)盲杖結(jié)構(gòu)及系統(tǒng):,CN211188131U[P].2020.[4]吳奇新,鄭文豪,葉志鵬,等.基于SMT32的智能導(dǎo)盲杖[J].電子制作,2020(13):3.[5]周圓,權(quán)海平.一種基于多功能無人機(jī)平臺的智能導(dǎo)盲杖:,CN211835274U[P].2020.[6]王浩,胡浩,王冉,等.easygo——易行(智能導(dǎo)盲杖)[J].黑龍江科技信息,2021,000(005):76-77.[7]胡少兵,黎瑤,詹旺,等.基于Arduino的新型智能導(dǎo)盲杖設(shè)計(jì)[J].自動化與儀器儀表,2019(9):4.[8]李璋,李華濤,魯坦,等.多功能智能型導(dǎo)盲杖及其使用方法:,CN108433959A[P].2018.[9]張志軍,羅彬,王巖輝.具有北斗定位的全方位探測智能導(dǎo)盲杖:,CN104206387A[P].2013.[10]馮陽.智能環(huán)境探測導(dǎo)盲杖靜態(tài)重要物體識別的設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱工業(yè)大學(xué).[11]左炳輝,范志文,邱宇.基于機(jī)器視覺的智能導(dǎo)盲杖[J].自動化技術(shù)與應(yīng)用,2022(003):041.[12]錢鵬飛.基于多傳感器融合的新型智能導(dǎo)盲杖設(shè)計(jì)[J].科技創(chuàng)新與應(yīng)用,2022,12(7):3.[13]陳艷,胡廣,羅厚澄,等.基于STM32芯片的智能導(dǎo)盲杖設(shè)計(jì)[J].電子技術(shù)(上海),2022,51(10):2.[14]張贏,張政,許夢余,等.基于盲人出行設(shè)計(jì)防摔倒監(jiān)報功能智能導(dǎo)盲杖[J].現(xiàn)代信息科技,2022(007):006.[15]邱宇,劉振武,沈益銀,等.智能導(dǎo)盲杖設(shè)計(jì)[J].中文科技期刊數(shù)據(jù)庫(引文版)工程技術(shù),2021(1):2.[16]薛毅,崔皓然,姚志強(qiáng),等.基于STM32的多功能智能導(dǎo)盲杖設(shè)計(jì)[J].山西電子技術(shù),2021(3):3.[17]袁世峰張若雨劉春王玉萍.基于Arduino的智能導(dǎo)盲杖的設(shè)計(jì)[J].微計(jì)算機(jī)信息,2021,000(005):61-62,65.[18]何鑫,支洪平,李直旭,等.一種具有語音識別功能的智能導(dǎo)盲杖:,CN213284182U[P].2021.[19]鄒靜,胡浩,孔垂宇,等.一種基于智能語音的人機(jī)交互導(dǎo)盲杖裝置:,CN213666604U[P].2021.[20]諶海云,袁杰敏.基于RGB-D深度相機(jī)的智能導(dǎo)盲系統(tǒng)[J].傳感器與微系統(tǒng),2021,40(1):4.[21]AxelrodCW.Enforcingsecurity,safetyandprivacyfortheInternetofThings[C]//Systems,Applications&TechnologyConference.IEEE,2015.[22]RobertsonT,WagnerI.CSCWandtheInternetofThings[J].2015.

附錄A原理圖:工程學(xué)院畢業(yè)設(shè)計(jì)附錄B部分源程序:#include"main.h"#include"adc.h"#include"tim.h"#include"usart.h"#include"gpio.h"/*Privateincludes*//*USERCODEBEGINIncludes*/#include"stdio.h"#include"string.h"#include"./HAL/ADXL345/adxl345.h"#include"./HAL/HC-SR04/hc-sr04.h"#include"./HAL/key/key.h"#include"./HAL/OLED/OLED_NEW.H"#include"./HAL/ds18b20/ds18b20.h"#include"./HAL/MAX30102/max30102.h"#include"./HAL/ML307R/ML307R.h"/*USERCODEENDIncludes*//*Privatetypedef*//*USERCODEBEGINPTD*/voidKey_function(void); //按鍵函數(shù)voidMonitor_function(void); //監(jiān)測函數(shù)voidDisplay_function(void); //顯示函數(shù)voidManage_function(void); //處理函數(shù)/*USERCODEENDPTD*//*Privatedefine*//*USERCODEBEGINPD*/#defineLED(a)(a?HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_RESET))#defineBEEP(a)(a?HAL_GPIO_WritePin(BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_SET):HAL_GPIO_WritePin(BEEP_GPIO_Port,BEEP_Pin,GPIO_PIN_RESET))uint8_tUSART1_TX_BUF[300];#defineu1_printf(...)HAL_UART_Transmit(&huart1,USART1_TX_BUF,sprintf((char*)USART1_TX_BUF,__VA_ARGS__),0xffff)uint8_tUSART2_TX_BUF[300];#defineu2_printf(...)HAL_UART_Transmit(&huart2,USART2_TX_BUF,sprintf((char*)USART2_TX_BUF,__VA_ARGS__),0xffff)uint8_tUSART3_TX_BUF[200];#defineu3_printf(...)HAL_UART_Transmit(&huart3,USART3_TX_BUF,sprintf((char*)USART3_TX_BUF,__VA_ARGS__),0xffff)/*USERCODEENDPD*//*Privatemacro*//*USERCODEBEGINPM*//*USERCODEENDPM*//*Privatevariables*//*USERCODEBEGINPV*/uint8_tkey_num,flag_display;//按鍵與顯示變量uint16_ttime_1ms,time_500ms;//計(jì)時變量1ms,500msuint16_ttime_ms,time_1s;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論