李 婷,王晴晴,吳 戀,畢亞楠,周小琴,代菲菲,羅 菊
(貴州師范學(xué)院數(shù)學(xué)與大數(shù)據(jù)學(xué)院 貴州 貴陽(yáng) 550000)
當(dāng)前,我國(guó)大多數(shù)盲人獨(dú)自出行大都使用傳統(tǒng)的導(dǎo)盲杖進(jìn)行“導(dǎo)航”,但這種出行方式往往需要借助盲道。據(jù)調(diào)查發(fā)現(xiàn),盲道作為盲人出行的主要通道,經(jīng)常隨意被占用。各種電動(dòng)車、私家車、雜物隨意堆放,這對(duì)獨(dú)自出行的盲人而言往往存在較大的安全隱患,使盲人的出行受到一定限制和制約。近年來(lái),飼養(yǎng)導(dǎo)盲犬來(lái)進(jìn)行導(dǎo)盲的人群比例有所上升,但購(gòu)買經(jīng)過(guò)專業(yè)訓(xùn)練的導(dǎo)盲犬[1]對(duì)大多數(shù)家庭來(lái)說(shuō)價(jià)格過(guò)于高昂而往往承受不起,同時(shí)飼養(yǎng)導(dǎo)盲犬需要長(zhǎng)期投入高額費(fèi)用和花費(fèi)更多精力去照顧,這對(duì)獨(dú)居盲人和較為忙碌的盲人家屬而言并不方便。而市場(chǎng)上的導(dǎo)盲拐杖功能比較單一,無(wú)法滿足盲人的出行需要。針對(duì)上述不足,本文設(shè)計(jì)出一種基于北斗衛(wèi)星系統(tǒng)的智能電子導(dǎo)盲儀,有助于盲人更方便地出行,為盲人的安全出行提供保障,也讓盲人家屬更加省心省力,切實(shí)地輔助盲人群體出行。
本系統(tǒng)主要是由STM32單片機(jī)控制器、北斗定位導(dǎo)航模塊、4G模塊、超聲波測(cè)距模塊、LU-ASR01語(yǔ)音識(shí)別控制模塊、超聲波模塊、震動(dòng)模塊,姿態(tài)傳感器模塊以及手機(jī)APP端構(gòu)成。此系統(tǒng)工作機(jī)制為:STM32作為系統(tǒng)的控制中心,超聲波測(cè)距模塊檢測(cè)道路前方障礙物存在情況,震動(dòng)模塊通過(guò)震動(dòng)感應(yīng)的方式提醒用戶。同時(shí),LU-ASR01語(yǔ)音識(shí)別控制模塊發(fā)出提示音提醒用戶及周圍的人;北斗定位導(dǎo)航模塊實(shí)時(shí)采集當(dāng)前位置數(shù)據(jù),并作好路線規(guī)劃及指引;當(dāng)姿態(tài)模塊檢測(cè)到導(dǎo)盲儀掉落時(shí),在設(shè)置時(shí)間內(nèi)語(yǔ)音交互模塊將發(fā)出提示音,便于用戶判別方位以便拾起導(dǎo)盲儀。若在設(shè)置時(shí)間內(nèi)姿態(tài)模塊檢測(cè)到導(dǎo)盲儀被拾起,提示音將自動(dòng)關(guān)閉,繼續(xù)導(dǎo)盲工作。若設(shè)置時(shí)間內(nèi)姿態(tài)傳感器未檢測(cè)到導(dǎo)盲儀被拾起,4G模塊將撥打用戶家屬電話以及獲取當(dāng)前位置信息,并將當(dāng)前位置信息發(fā)送至家屬手機(jī)APP端。系統(tǒng)總框圖如圖1所示。
圖1 系統(tǒng)總體框架
因用戶身高差異對(duì)導(dǎo)盲儀的長(zhǎng)度要求有所不同,為導(dǎo)盲儀設(shè)計(jì)了伸縮功能。總開(kāi)關(guān)可以在導(dǎo)盲儀非工作狀態(tài)下關(guān)閉,可防誤檢測(cè)及節(jié)約電源。外形設(shè)計(jì)如圖2所示。
圖2 外形設(shè)計(jì)
STM32系列是高性能、低成本、低功耗的嵌入式應(yīng)用設(shè)計(jì)核心控制器。其應(yīng)用場(chǎng)景較為廣泛,STM32屬于微控制器,且自帶各種常用通信接口。比如USART、I2C、SPI等,所帶接口能夠外接多種傳感器,從而控制不同的設(shè)備?,F(xiàn)實(shí)生活中,人們接觸到的很多電器產(chǎn)品都有STM32的身影,適用于各種智能產(chǎn)品的開(kāi)發(fā)。此項(xiàng)目利用STM32單片機(jī),實(shí)現(xiàn)與北斗定位器的實(shí)時(shí)通信,根據(jù)其提供的實(shí)時(shí)地點(diǎn)實(shí)現(xiàn)準(zhǔn)確的導(dǎo)航功能,然后按照預(yù)定軌跡行進(jìn)。當(dāng)遇到障礙物可提醒盲人選擇繞行,北斗模塊重新進(jìn)行定位,依據(jù)原有導(dǎo)航路線數(shù)據(jù),引導(dǎo)盲人移動(dòng),重新回到原有路徑。在道路邊線前進(jìn)過(guò)程中,根據(jù)檢測(cè)信息使盲人始終保持在道路邊線行駛。整個(gè)系統(tǒng)利用各傳感模塊和對(duì)應(yīng)算法實(shí)現(xiàn)導(dǎo)盲功能,導(dǎo)盲杖將通過(guò)語(yǔ)音系統(tǒng),定位、避障等模塊幫助盲人正確規(guī)劃路徑。系統(tǒng)在運(yùn)行過(guò)程中實(shí)時(shí)采集當(dāng)前環(huán)境數(shù)據(jù),語(yǔ)音提示盲人,為他們保駕護(hù)航。
北斗定位導(dǎo)航模塊是利用了我國(guó)自行研制的中國(guó)北斗衛(wèi)星導(dǎo)航系統(tǒng),該系統(tǒng)相較于其他定位系統(tǒng)安全性更高、定位更準(zhǔn),且具有獨(dú)有的雙向信息通信功能,可以精準(zhǔn)實(shí)現(xiàn)盲人行進(jìn)中的定位以及導(dǎo)航等功能[2]。該定位系統(tǒng)主要由三部分組成,包括用戶段、地面段以及空間段[3]。北斗衛(wèi)星導(dǎo)航系統(tǒng)應(yīng)用范圍十分廣泛,可應(yīng)用于大眾定位、智慧城市、交通運(yùn)輸?shù)葓?chǎng)景,以實(shí)現(xiàn)精確的定位、實(shí)時(shí)導(dǎo)航、精密測(cè)速等功能[4]。北斗衛(wèi)星導(dǎo)航系統(tǒng)工作流程包括地面控制(數(shù)據(jù)監(jiān)測(cè)及處理)、空間星座(發(fā)射位置信息)、用戶終端(接收數(shù)據(jù))。
本項(xiàng)目主要應(yīng)用UM220-IV定位模塊實(shí)現(xiàn)定位導(dǎo)航等功能。該模塊是GNSS導(dǎo)航定位模塊產(chǎn)品,采用了完全自主知識(shí)產(chǎn)權(quán)的多系統(tǒng)、低功耗、高性能SoC芯片設(shè)計(jì)。支持GPSL1、BDSB1I、GALE1多系統(tǒng),或單系統(tǒng)原始觀測(cè)值輸出,具有定位性能好、功耗低、抗干擾強(qiáng)等優(yōu)點(diǎn)[5]。人們?cè)谌粘I钪型ㄟ^(guò)接收端接收來(lái)自空間導(dǎo)航衛(wèi)星發(fā)送的信號(hào),經(jīng)過(guò)一定的數(shù)據(jù)處理就能獲得實(shí)時(shí)定位信息。在接收數(shù)據(jù)過(guò)程中通過(guò)將定位模塊與4G傳輸模塊相結(jié)合,實(shí)現(xiàn)數(shù)據(jù)的接收和傳輸。通過(guò)北斗定位導(dǎo)航可以精準(zhǔn)定位當(dāng)前用戶所在位置,提供精確的導(dǎo)航信息,使盲人出行更加安全便捷。
檢測(cè)障礙物部分采用HC-SR04超聲波測(cè)距模塊,模塊測(cè)距精度可達(dá)3 mm,并提供2~400 cm的非接觸式距離感測(cè)功能。在機(jī)器人避障、物體測(cè)距、停車場(chǎng)檢測(cè)等環(huán)境下都有廣泛應(yīng)用,具有性能穩(wěn)定、測(cè)度距離精確、盲區(qū)小、易使用的特點(diǎn)。利用控制口提供10 us以上的高電平,自動(dòng)發(fā)送8個(gè)40 kHz的方波,且自動(dòng)檢測(cè)是否有信號(hào)返回;當(dāng)有信號(hào)返回時(shí),通過(guò)IO口ECHO輸出高電平,其持續(xù)時(shí)間便是超聲波從發(fā)射到返回的時(shí)間,由此可算出距離。如此不斷的周期測(cè)距,即可以實(shí)現(xiàn)移動(dòng)測(cè)量[6]。在測(cè)量值小于設(shè)置的測(cè)量范圍100~150 cm時(shí),提供高電平觸發(fā)片狀高靈敏,輸出為瞬態(tài)脈沖的震動(dòng)模塊Z04A。其安裝簡(jiǎn)便,能在強(qiáng)烈振動(dòng)的工作條件下正常運(yùn)行,防水性能好,能適應(yīng)濕度較大的工作環(huán)境。因此本設(shè)計(jì)采用Z04A作為振動(dòng)報(bào)警器,提醒盲人行動(dòng)過(guò)程中遇到的各種障礙物,并及時(shí)更改行進(jìn)方向。超聲波測(cè)距模塊(HC-SR04模塊)原理圖如圖3。
圖3 超聲波測(cè)距模塊原理圖
對(duì)于許多盲人來(lái)說(shuō),耳朵就是他們的眼睛。本設(shè)計(jì)使用LU-ASR01語(yǔ)音模塊,對(duì)其進(jìn)行軟件編程設(shè)計(jì),當(dāng)導(dǎo)盲杖檢測(cè)到障礙物時(shí),語(yǔ)音模塊會(huì)提示:“小心!小心!在您的左邊(右邊、左前方、右前方)有障礙物,請(qǐng)減速慢行”。當(dāng)檢測(cè)到樓梯時(shí)會(huì)提示:“前方有樓梯,請(qǐng)靠右小心下(上)行”,可保證盲人出行時(shí)行進(jìn)安全。通過(guò)精準(zhǔn)的語(yǔ)音提示,可以幫助盲人充分了解當(dāng)前路況,讓盲人在出行時(shí)更加安全[7]。此外,本設(shè)計(jì)設(shè)置了語(yǔ)音控制功能,通過(guò)語(yǔ)音操作實(shí)現(xiàn)特定功能,可以隨時(shí)隨地語(yǔ)音控制導(dǎo)航目的地、打電話、求助等。當(dāng)導(dǎo)盲杖掉落且在設(shè)定時(shí)間之內(nèi),語(yǔ)音模塊會(huì)發(fā)出提示音:“導(dǎo)盲杖在您的左邊(右邊、左前方、右前方),請(qǐng)盡快拾取”,幫助盲人精確地找到導(dǎo)盲杖。如果超過(guò)設(shè)定時(shí)間,導(dǎo)盲杖將會(huì)判定盲人摔倒或發(fā)生意外,將會(huì)自動(dòng)撥打家人電話,讓家人立刻通過(guò)手機(jī)APP定位確定盲人位置。語(yǔ)音控制功能讓盲人使用導(dǎo)盲杖時(shí)更加方便,在發(fā)生意外時(shí)能更快地?fù)艽蚣本入娫捇蛘呒胰穗娫?,也在很大程度上增加了安全保障。此模塊操作簡(jiǎn)單,只需要下載相應(yīng)的編譯軟件,語(yǔ)音識(shí)別庫(kù)中IO輸出、各類串口就能實(shí)現(xiàn)上述功能[8]。LU-ASR01有8路IO,DHT傳感器可實(shí)現(xiàn)語(yǔ)音播報(bào)、識(shí)別精準(zhǔn)。圖4為語(yǔ)音模塊實(shí)物圖:
圖4 LU-ASR01模塊實(shí)物圖
通信模塊中的EC20-CE是移遠(yuǎn)通信推出的LTE Cat4無(wú)線通信模塊,采用LTE 3GPP Rel.11技術(shù)支持北斗、GPS等多種衛(wèi)星定位類型,并且有多個(gè)I/O和GPIO接口。EC20-CE能夠提供150Mbps的下行鏈路和50 Mbps的上行鏈路數(shù)據(jù)速率,可實(shí)現(xiàn)數(shù)據(jù)大量傳輸[9]。并且EC20-CE模塊ping值相對(duì)較低,發(fā)送和應(yīng)答時(shí)間較短,適合應(yīng)用于遠(yuǎn)程報(bào)警。EC20-CE模塊在導(dǎo)盲杖中起到重要作用,它可以實(shí)現(xiàn)GPS實(shí)時(shí)定位、導(dǎo)航、報(bào)警和通話功能。在盲人外出發(fā)生意外時(shí),能迅速做出反應(yīng),讓家人第一時(shí)間了解情況,這大大增加了盲人出行的安全性,在發(fā)生意外時(shí)讓受傷的盲人及時(shí)就醫(yī)。此模塊不僅支持包括安卓、Linux、Windows等多種系統(tǒng)驅(qū)動(dòng),還可以通過(guò)單片機(jī)、車載以及路由器等方式實(shí)現(xiàn)驅(qū)動(dòng)[10]。將EC20-CE模塊接入單片機(jī),插入電話卡之后編寫(xiě)相應(yīng)的程序,就可以通過(guò)USB不停地發(fā)AT 指令,然后串口打印輸出USB接收到的數(shù)據(jù),從而就能實(shí)現(xiàn)通信。
本系統(tǒng)采用STM32作為主控芯片,不需要存儲(chǔ)管理,但可以滿足這種導(dǎo)盲儀的需求。STM32支持多種通信方式,可以將導(dǎo)盲儀的外設(shè)相互連接,便于后期的安裝和維護(hù)。該系統(tǒng)使用的程序語(yǔ)言是C語(yǔ)言,是當(dāng)前比較流行的一種編程語(yǔ)言,具有比較簡(jiǎn)單的操作框架,易于編寫(xiě),檢錯(cuò)也較為方便快捷,能與各種控制芯片兼容。在該開(kāi)發(fā)軟件中,通過(guò)使用模塊化、子程序嵌套技術(shù)、庫(kù)函數(shù)調(diào)用等方法,將循環(huán)探距與其他模塊之間的程序互相嵌套,進(jìn)一步完善了系統(tǒng)功能,達(dá)到了預(yù)期目標(biāo)。整個(gè)系統(tǒng)的設(shè)計(jì)流程見(jiàn)圖5。
圖5 系統(tǒng)流程圖
本研究設(shè)計(jì)的導(dǎo)盲杖的優(yōu)點(diǎn)在于北斗導(dǎo)航模塊的導(dǎo)航引導(dǎo)功能結(jié)合超聲波檢測(cè),當(dāng)盲人與障礙物距離超過(guò)安全距離時(shí),系統(tǒng)立即啟動(dòng)震動(dòng)模塊提醒盲人當(dāng)前的情況。采用具有語(yǔ)音識(shí)別功能的模塊,實(shí)現(xiàn)一定程度的人機(jī)交互,包括行走、停止、左轉(zhuǎn)、右轉(zhuǎn)等。同時(shí)通過(guò)語(yǔ)音播報(bào)前方障礙物情況,盲人根據(jù)語(yǔ)音提示在安全范圍內(nèi)繞過(guò)障礙,如出現(xiàn)其他無(wú)法避免的情況,系統(tǒng)通過(guò)4G模塊向監(jiān)護(hù)人發(fā)送短信,監(jiān)護(hù)人通過(guò)北斗導(dǎo)航模塊查看盲人所在位置,了解盲人所處環(huán)境并及時(shí)采取保護(hù)措施。
本設(shè)計(jì)是一款輕便、操作簡(jiǎn)單且以北斗導(dǎo)航系統(tǒng)為核心的自動(dòng)定位導(dǎo)航。該設(shè)計(jì)是通過(guò)多傳感器相互協(xié)作,能夠自動(dòng)監(jiān)測(cè)盲人實(shí)時(shí)狀態(tài)的多功能導(dǎo)盲儀[11],具有成本低、障礙物檢測(cè)精度高、跌摔檢測(cè)迅速可靠等優(yōu)點(diǎn)。當(dāng)導(dǎo)盲儀遇到障礙物時(shí)通過(guò)超聲波測(cè)距進(jìn)行語(yǔ)音提醒,提示盲人自身位置與障礙物間的距離,并通過(guò)北斗導(dǎo)航對(duì)盲人進(jìn)行精確定位,從而獲得盲人的精確位置,防止走失[12]。該設(shè)計(jì)分別在分析導(dǎo)航、避障、目標(biāo)識(shí)別模塊的基礎(chǔ)上,實(shí)現(xiàn)了導(dǎo)盲儀在無(wú)人引導(dǎo)環(huán)境下的導(dǎo)盲功能。此外,該裝置實(shí)用性較強(qiáng),易于開(kāi)發(fā)、管理和擴(kuò)展升級(jí),其強(qiáng)大的智能導(dǎo)航和信息服務(wù)功能,具有較大的應(yīng)用和推廣價(jià)值,能夠?yàn)槊と思捌溆H屬提供方便。