成薇 胡書晨 邱俊輝 李嘉隆 甄俊濤
(湖北經(jīng)濟(jì)學(xué)院信息與通信工程學(xué)院 湖北省武漢市 430205)
當(dāng)今中國在工業(yè)運(yùn)輸方面的工業(yè)搬運(yùn)車經(jīng)歷了四代發(fā)展。其中,第一代手動(dòng)搬運(yùn)車在工業(yè)搬運(yùn)車市場(chǎng)仍占有一定份額。而目前國內(nèi)最先進(jìn)的搬運(yùn)車是自動(dòng)無人搬運(yùn)車,這種搬運(yùn)車路徑導(dǎo)引方式主要是光導(dǎo)引和磁導(dǎo)引,需要在路徑上安裝相應(yīng)的發(fā)光裝置或是磁性物體。這兩種引導(dǎo)方式雖然能夠?qū)崿F(xiàn)無人搬運(yùn)功能,但只適用于較大規(guī)模的工廠、倉庫等特定場(chǎng)景,而且安裝路徑成本較大,路徑環(huán)境易受到外界環(huán)境的干擾。以聲音為介質(zhì),通過語音控制搬運(yùn)車?yán)碚撋峡梢詮浹a(bǔ)這些不足,并可以實(shí)現(xiàn)搬運(yùn)車的無接觸式控制,適用于醫(yī)院隔離病區(qū)醫(yī)用物品的運(yùn)輸。
本文研究并設(shè)計(jì)的是一種基于物聯(lián)網(wǎng)與無線傳感器的智能聲控搬運(yùn)車系統(tǒng),該系統(tǒng)有兩種工作模式,分別為自由驅(qū)動(dòng)模式和定位導(dǎo)航模式,均以語音命令進(jìn)行控制。自由驅(qū)動(dòng)模式下,語音命令可實(shí)時(shí)控制搬運(yùn)車的運(yùn)行狀態(tài);定位導(dǎo)航模式下,通過語音輸入目的地,搬運(yùn)車即可自動(dòng)導(dǎo)航前往。同時(shí)該系統(tǒng)具備避障功能、人機(jī)語音交互功能,并可以在手機(jī)端查看搬運(yùn)車的實(shí)時(shí)位置、環(huán)境與狀態(tài)等信息數(shù)據(jù)。
智能聲控搬運(yùn)車系統(tǒng)主要研究以聲音為導(dǎo)引介質(zhì)來引導(dǎo)搬運(yùn)車的運(yùn)行,并通過聲音來控制搬運(yùn)車的運(yùn)行狀態(tài)與工作模式。其中,智能聲控搬運(yùn)車基于語音引導(dǎo)有兩種工作模式,分別為自由驅(qū)動(dòng)模式與定位導(dǎo)航模式。除了兩種基本的工作模式外,智能聲控搬運(yùn)車系統(tǒng)通過藍(lán)牙與手機(jī)端連接,通過多種傳感器采集搬運(yùn)車的環(huán)境與狀態(tài)數(shù)據(jù),實(shí)現(xiàn)在手機(jī)端查看搬運(yùn)車實(shí)時(shí)位置、環(huán)境狀態(tài)信息的功能。
2.1.1 自由驅(qū)動(dòng)模式
用戶可以通過語音命令控制搬運(yùn)車的啟動(dòng)、右轉(zhuǎn)彎、后退、停止、前進(jìn)、左轉(zhuǎn)彎等基本運(yùn)行狀態(tài)。搬運(yùn)車實(shí)時(shí)監(jiān)測(cè)障礙物,當(dāng)監(jiān)測(cè)到障礙物時(shí)將自動(dòng)繞開障礙物,可以避免碰撞以及其他類似情況發(fā)生。自由驅(qū)動(dòng)模式的功能框圖如圖1所示。
自由驅(qū)動(dòng)模式下,用戶需輸入正確的一級(jí)語音命令并被系統(tǒng)成功識(shí)別后方可輸入二級(jí)語音命令改變搬運(yùn)車的運(yùn)行狀態(tài),該系統(tǒng)設(shè)定的一級(jí)語音命令為“小智”。用戶輸入了一級(jí)語音命令并且系統(tǒng)進(jìn)行語音響應(yīng)后,系統(tǒng)預(yù)留10秒鐘的時(shí)間等待用戶輸入二級(jí)語音命令,若輸入超時(shí),用戶則需重新輸入一級(jí)語音命令。每條指令被成功識(shí)別后,系統(tǒng)會(huì)產(chǎn)生相應(yīng)的語音響應(yīng)進(jìn)行提示。當(dāng)輸入的二級(jí)指令為“模式切換”時(shí),搬運(yùn)車將切換到定位導(dǎo)航模式。
2.1.2 定位導(dǎo)航模式
定位導(dǎo)航模式主要實(shí)現(xiàn)用戶通過語音命令搬運(yùn)車自動(dòng)前往指定目的地的功能。定位導(dǎo)航模式的功能框圖如圖2所示。
圖1:自由驅(qū)動(dòng)模式功能框圖
在定位導(dǎo)航模式下,通過語音向搬運(yùn)車傳達(dá)目的地信息,搬運(yùn)車根據(jù)GPS定位功能對(duì)目的地及自身位置進(jìn)行定位,計(jì)算運(yùn)行方向,并自動(dòng)前往指定位置。在這種模式下搬運(yùn)車運(yùn)行的過程中也可以檢測(cè)障礙物,繞開障礙物,并重新調(diào)整、規(guī)劃路徑。當(dāng)搬運(yùn)車到達(dá)目的地后停止運(yùn)行,并切換成自由驅(qū)動(dòng)模式。
2.1.3 連接手機(jī)端
智能聲控搬運(yùn)車系統(tǒng)設(shè)計(jì)開發(fā)了基于Android操作系統(tǒng)的智能手機(jī)APP,用于搬運(yùn)車數(shù)據(jù)信息的顯示,并對(duì)搬運(yùn)車的基本運(yùn)行狀態(tài)進(jìn)行控制。手機(jī)APP主要顯示的數(shù)據(jù)信息有:搬運(yùn)車當(dāng)前負(fù)載重量、速度與加速度、搬運(yùn)車當(dāng)前位置、環(huán)境的溫度與濕度。手機(jī)APP對(duì)搬運(yùn)車的控制主要為控制搬運(yùn)車的啟動(dòng)、停止、轉(zhuǎn)彎、后退等基本運(yùn)行狀態(tài)。
智能聲控搬運(yùn)車系統(tǒng)使用STM32F103ZET6型號(hào)的微處理器,該種型號(hào)的微處理器有5個(gè)通信串口,而智能聲控搬運(yùn)車系統(tǒng)需要9個(gè)串口進(jìn)行通信,因此系統(tǒng)采用雙處理器模式,即使用兩個(gè)STM32F103作為系統(tǒng)的主控模塊,兩個(gè)微處理器之間通過串口通信交換數(shù)據(jù)。根據(jù)實(shí)現(xiàn)功能的不同,將兩個(gè)微處理器分為中心控制節(jié)點(diǎn)和信息匯聚與通信節(jié)點(diǎn)。
表1:L298N邏輯真值表
圖2:定位導(dǎo)航模式功能框圖
圖3:智能聲控搬運(yùn)車系統(tǒng)框架圖
中心控制節(jié)點(diǎn)主要控制并協(xié)調(diào)智能聲控搬運(yùn)車的兩個(gè)基本工作模式,即自由驅(qū)動(dòng)模式和定位導(dǎo)航模式。中心控制節(jié)點(diǎn)控制搬運(yùn)車的驅(qū)動(dòng)模塊、GPS定位模塊、語音播報(bào)模塊、語音識(shí)別模塊和避障模塊。
信息匯聚與通信節(jié)點(diǎn)主要進(jìn)行數(shù)據(jù)信息的處理與傳輸,通過藍(lán)牙通信實(shí)現(xiàn)智能聲控搬運(yùn)車與手機(jī)端APP的數(shù)據(jù)交換。信息匯聚與通信節(jié)點(diǎn)控制藍(lán)牙模塊、壓力傳感器模塊、溫濕度傳感器模塊、速度傳感器模塊。智能聲控搬運(yùn)車的系統(tǒng)框架圖如圖3所示。
智能聲控搬運(yùn)車在自由驅(qū)動(dòng)模式下,語音識(shí)別模塊先檢測(cè)并識(shí)別用戶輸入的語音命令,將識(shí)別出來的語音命令通過串口發(fā)送給中心控制節(jié)點(diǎn),中心控制節(jié)點(diǎn)控制語音播報(bào)模塊發(fā)生相應(yīng)的語音響應(yīng),并根據(jù)語音命令通過控制驅(qū)動(dòng)模塊來改變搬運(yùn)車的運(yùn)行狀態(tài)。在搬運(yùn)車的運(yùn)行過程中,避障模塊不斷檢測(cè)前面有沒有障礙物,如果避障模塊檢測(cè)到了障礙物,則向中心控制節(jié)點(diǎn)發(fā)送信號(hào),中心控制節(jié)點(diǎn)則控制避障模塊尋找無障礙物的路徑從而繞開障礙物。當(dāng)工作模式為定位導(dǎo)航模式時(shí),語音識(shí)別模塊識(shí)別用戶輸入的目的地信息并發(fā)送給中心控制節(jié)點(diǎn),GPS定位模塊對(duì)搬運(yùn)車自身位置進(jìn)行定位,并將搬運(yùn)車的經(jīng)緯度信息發(fā)送給中心控制節(jié)點(diǎn),節(jié)點(diǎn)根據(jù)目的地和搬運(yùn)車當(dāng)前位置的經(jīng)緯度信息計(jì)算運(yùn)行方向,并控制驅(qū)動(dòng)模塊驅(qū)動(dòng)搬運(yùn)車前往目的地。
信息匯聚與通信節(jié)點(diǎn)主要接收壓力傳感器模塊、速度傳感器模塊、溫濕度傳感器模塊和中心控制節(jié)點(diǎn)傳送過來的數(shù)據(jù)信息,并將所有數(shù)據(jù)信息按照一定的時(shí)序通過藍(lán)牙模塊發(fā)送給手機(jī)端。同時(shí)藍(lán)牙模塊接收手機(jī)端藍(lán)牙設(shè)備發(fā)送過來的指令信息,然后通過串口發(fā)送給信息匯聚與通信節(jié)點(diǎn),最后將指令信息發(fā)送給中心控制節(jié)點(diǎn)進(jìn)行執(zhí)行。
智能聲控搬運(yùn)車系統(tǒng)采用分模塊設(shè)計(jì)研究的方法,系統(tǒng)分為7個(gè)分模塊,分別為:驅(qū)動(dòng)模塊、避障模塊、語音播報(bào)模塊、語音識(shí)別模塊、GPS定位模塊、藍(lán)牙模塊和傳感器模塊。
智能聲控搬運(yùn)車驅(qū)動(dòng)模塊的硬件部分由驅(qū)動(dòng)板、直流電機(jī)、輪子和電池組成。驅(qū)動(dòng)板使用的是雙H橋電機(jī)驅(qū)動(dòng)模塊,該模塊的主控芯片為L298N芯片,每個(gè)模塊可以同時(shí)控制兩個(gè)直流電機(jī),智能聲控搬運(yùn)車使用四輪直流驅(qū)動(dòng),需要用到兩個(gè)雙H橋電機(jī)驅(qū)動(dòng)模塊。L298N芯片的工作電壓為5V,驅(qū)動(dòng)電壓為12V。每個(gè)驅(qū)動(dòng)板驅(qū)動(dòng)直流電機(jī)的邏輯真值表如表1所示。
ENA和ENB分別為左右電機(jī)的使能端,IN1與IN2控制左電機(jī)的反轉(zhuǎn)、正轉(zhuǎn)和停止,IN3與IN4控制右電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)和停止。
智能聲控搬運(yùn)車避障模塊的硬件部分主要由超聲波模塊和舵機(jī)組成。超聲波模塊用于測(cè)距,工作電壓為5V,射程范圍為2cm-4m。舵機(jī)用于控制超聲波模塊的旋轉(zhuǎn),旋轉(zhuǎn)角度為180°。搬運(yùn)車在行駛的過程中超聲波模塊不斷檢測(cè)前方是否有障礙物,當(dāng)測(cè)量距離小于閾值30cm時(shí),則進(jìn)入避障程序,具體過程如圖4所示。
智能聲控搬運(yùn)車系統(tǒng)的語音識(shí)別模塊采用的是LD3320語音識(shí)別芯片,該型號(hào)芯片集成了語音采集和識(shí)別算法。語音識(shí)別模塊可以識(shí)別50條語音,識(shí)別距離最大為2米,識(shí)別率約為90%。系統(tǒng)采用兩級(jí)語音口令,一級(jí)口令為“小智”,一級(jí)口令驗(yàn)證成功后方可進(jìn)行二級(jí)指令的輸入。
語音播報(bào)模塊使用的是TTS-V5模塊,該芯片可以將漢字、英文字母、數(shù)字轉(zhuǎn)換成語音信號(hào)。中心控制節(jié)點(diǎn)通過串口將需要進(jìn)行播報(bào)的字符串發(fā)送給該芯片,即可實(shí)現(xiàn)語音播報(bào)的功能。
智能聲控搬運(yùn)車系統(tǒng)GPS定位模塊的硬件部分由GPS模塊和GY-85傳感器組成。GPS模塊用于對(duì)搬運(yùn)車的位置進(jìn)行定位,通過串口向中心控制節(jié)點(diǎn)返回搬運(yùn)車位置的經(jīng)緯度信息。根據(jù)已知目的地的經(jīng)緯度與搬運(yùn)車位置的經(jīng)緯度可以計(jì)算出兩點(diǎn)方向與N極方向的夾角。計(jì)算過程為:設(shè)搬運(yùn)車自身位置的經(jīng)緯度為(x1,y1),已知目的地經(jīng)緯度為(x2,y2),則兩點(diǎn)方向與N極方向的反正切值為:
GY-85傳感器模塊包括三軸加速度傳感器ADXL345、三軸陀螺儀ITG-3205、三軸數(shù)字羅盤HMC5885L等三個(gè)部分,主要功能是測(cè)量計(jì)算搬運(yùn)車前進(jìn)的方向與N級(jí)的角度差。GY-85傳感器的工作原理為:任何一個(gè)物體在空中的姿態(tài)都可用圖5表示,將物體的中心為原點(diǎn)建立坐標(biāo)軸,Level X與LevelY分別表示水平面的方向,定義α為物體的x方向與水平面方向的夾角,定義β為物體的y方向與水平面方向的夾角。
通過三軸加速度傳感器檢測(cè)并計(jì)算出ɑ和β,由三軸數(shù)字羅盤測(cè)出地磁場(chǎng)在X、Y、Z三軸的分矢量數(shù)據(jù)。最后根據(jù)公式計(jì)算出物體的x方向與N極的角度差的正切值θ2:
最后根據(jù)(θ1-θ2)計(jì)算出搬運(yùn)車需要調(diào)整的角度。
圖4:避障程序流程圖
圖5:物體在空間的姿態(tài)
智能聲控搬運(yùn)車系統(tǒng)的藍(lán)牙模塊是型號(hào)為HC-05的主從一體藍(lán)牙模塊。通過AT指令將藍(lán)牙模塊設(shè)置為主從模式,主要作用是實(shí)現(xiàn)智能聲控搬運(yùn)車系統(tǒng)與手機(jī)之間的串口通信。由于傳輸?shù)臄?shù)據(jù)類別較多,為了準(zhǔn)確分辨數(shù)據(jù)類別,將藍(lán)牙傳輸?shù)臄?shù)據(jù)第一位或第一、第二位設(shè)置為數(shù)據(jù)識(shí)別碼。數(shù)據(jù)類別識(shí)別碼定義的格式如圖6所示。
圖6:藍(lán)牙數(shù)據(jù)類別識(shí)別碼
智能聲控搬運(yùn)車系統(tǒng)的傳感器模塊包括壓力傳感器模塊、溫濕度傳感器模塊和速度傳感器模塊。傳感器模塊的主要功能是測(cè)量搬運(yùn)車的運(yùn)行速度、加速度和負(fù)載重點(diǎn),檢測(cè)搬運(yùn)車所處環(huán)境的溫濕度。傳感器模塊的所有測(cè)量數(shù)據(jù)傳送給信息匯聚與通信節(jié)點(diǎn),節(jié)點(diǎn)對(duì)接收到的數(shù)據(jù)進(jìn)行處理與格式化,通過藍(lán)牙模塊發(fā)送到手機(jī)端進(jìn)行顯示。
壓力傳感器模塊中,壓力敏感元件為電阻應(yīng)變片,量程為40kg,信號(hào)處理單元使用的是HX711模塊,該模塊為電子秤專用的24位A/D轉(zhuǎn)換模塊,用于將檢測(cè)到電壓的變化轉(zhuǎn)換為數(shù)字信號(hào)輸出。
溫濕度傳感器模塊使用的是DHT11數(shù)字溫濕度傳感器,測(cè)量得到的溫濕度數(shù)據(jù)從溫濕度傳感器的DATA引腳輸出,然后傳送給信息匯聚與通信節(jié)點(diǎn)進(jìn)行處理。
速度傳感器模塊使用的是進(jìn)口槽型光耦傳感器,當(dāng)槽中有遮擋物時(shí),模塊的D0引腳輸出高電平。在搬運(yùn)車的輪子上安裝遮擋片,設(shè)輪子的半徑為r,則輪子轉(zhuǎn)一圈,搬運(yùn)車行駛的距離為2rπ,運(yùn)行時(shí)間為D0引腳連續(xù)兩次輸出高電平間隔的時(shí)間。將距離除以時(shí)間,得到搬運(yùn)車的速度。多次測(cè)量獲取數(shù)據(jù)后用速度差除以時(shí)間差,得到搬運(yùn)車的加速度。
智能聲控搬運(yùn)車系統(tǒng)實(shí)現(xiàn)了通過語音命令控制搬運(yùn)車的運(yùn)行以及自動(dòng)定位導(dǎo)航的功能。通過對(duì)該系統(tǒng)的研究與設(shè)計(jì),明確了語音識(shí)別是一種實(shí)現(xiàn)無接觸式控制的有效方式。無接觸控制的方式在醫(yī)院的隔離病區(qū)可以起到很大的作用,如果將智能聲控搬運(yùn)車應(yīng)用于隔離病區(qū)醫(yī)用物品的運(yùn)輸,可以避免醫(yī)生與病人的間接接觸,在一定程度上可以降低交叉感染的風(fēng)險(xiǎn)。但GPS技術(shù)無法實(shí)現(xiàn)室內(nèi)精準(zhǔn)定位,未來可嘗試安裝攝像頭,通過視覺圖像識(shí)別處理技術(shù)提高定位的精準(zhǔn)程度。