摘 要:利用FPGA技術(shù)設(shè)計(jì)出一種智能導(dǎo)盲犬,可以有效減少費(fèi)用和提高實(shí)用性,克服普通導(dǎo)盲犬訓(xùn)練費(fèi)用高、培養(yǎng)時(shí)間長(zhǎng)的缺點(diǎn)。設(shè)計(jì)基于Altera公司的DE1開(kāi)發(fā)系統(tǒng),在使用中進(jìn)行實(shí)時(shí)圖像處理,波形處理,以及多進(jìn)程并行處理;利用超聲波測(cè)速測(cè)距系統(tǒng)以及圖像采集系統(tǒng)采集外部環(huán)境信息,經(jīng)綜合處理系統(tǒng)對(duì)信息進(jìn)行處理分析,并進(jìn)行多模塊輸出,利用人性化語(yǔ)音提示向使用者反饋當(dāng)前信息,利用受控電機(jī)控制導(dǎo)盲犬的行動(dòng)。系統(tǒng)還可通過(guò)GPS模塊進(jìn)行短消息發(fā)送,親屬可及時(shí)掌握盲人的行蹤,可實(shí)現(xiàn)多種實(shí)用功能。
關(guān)鍵詞:Altera DE1;導(dǎo)盲犬;攝像頭監(jiān)測(cè);超聲波測(cè)距;語(yǔ)音提示;短信息發(fā)送
中圖分類號(hào):TP242 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2010)03-179-03
Blind-guiding Dog Based on FPGA
FANG Xin
(School of Information Science and Engineering,Shandong University,Ji′nan,250100,China)
Abstract:The antomatic blind-guiding dog is based on FPGA at the DE1 developing system from Altera Company.The system can process the image information,wave procession and multi-process simultaneously.The ultrasonic distance measurement system can collect and input the information of circumstance,after data processing through the synthetic system,various kinds of output information can be sent out.Meanwhile,users can receive the voice clue,and control the movement of guiding dog.The system can send message through GPS,many functions can be achieved.
Keywords:Altera DE1;blind-guiding dog;digital camera detection;ultrasonic distance measurement;short message sending
0 引 言
隨著信息化和數(shù)字化的發(fā)展,現(xiàn)在社會(huì)中人們的生活變得更加豐富多彩,生活更加便利。但是有一種人群卻不容忽視,社會(huì)上形形色色、豐富多彩的物是與他們無(wú)緣的,他們就是盲人。眾所周知眼晴是“心靈之窗”,而對(duì)于突然失去或從未擁有過(guò)“心靈之窗”的盲人來(lái)說(shuō),生活上的困難與心理上的痛苦是可想而知的。他們的衣食住行存在諸多不便,而在出行與人際交往中遇到的困難更加突出,基于此設(shè)計(jì)了智能導(dǎo)盲犬。生活中,導(dǎo)盲犬習(xí)慣于頸圈、導(dǎo)盲牽引帶和其他配件的約束;懂得“來(lái)”、“前進(jìn)”、“停止”等口令;可以帶領(lǐng)盲人安全地走路,當(dāng)遇到障礙和需要拐彎時(shí),會(huì)引導(dǎo)主人停下以免發(fā)生危險(xiǎn)。但是,導(dǎo)盲犬的培訓(xùn)過(guò)程長(zhǎng)達(dá)18個(gè)月,綜合費(fèi)用達(dá)2.5~3萬(wàn)美元,如此昂貴的價(jià)格不是普通用戶能承擔(dān)的,所以這里設(shè)計(jì)一個(gè)智能導(dǎo)盲犬,從而為盲人帶來(lái)便利。
本系統(tǒng)主要解決的是盲人在出行和人際交往中遇到的問(wèn)題,主要功能有:行進(jìn)中的障礙物檢測(cè)、識(shí)別與定位,其中包括移動(dòng)的物體與靜止的物體識(shí)別;測(cè)定障礙物的速度與距離;對(duì)周圍的路線的特定環(huán)境標(biāo)志進(jìn)行環(huán)境辨認(rèn),檢測(cè)出熟悉的地點(diǎn),方便盲人了解情況,并同時(shí)也以此為信息主動(dòng)控制導(dǎo)盲犬,實(shí)現(xiàn)人的主觀控制;人性化的語(yǔ)音提示,能夠根據(jù)信息重要程度主動(dòng)提示當(dāng)前情況,幫助盲人獲取必要信息,幫助盲人決策;系統(tǒng)還可以對(duì)周邊環(huán)境發(fā)生的特殊情況向家屬發(fā)送短消息,必要時(shí)可以發(fā)送圖片,實(shí)現(xiàn)進(jìn)一步的安全性。
1 設(shè)計(jì)結(jié)構(gòu)
本設(shè)計(jì)系統(tǒng)[1]通過(guò)數(shù)據(jù)采集、處理、存儲(chǔ)、反饋等子系統(tǒng)構(gòu)架而成。首先由兩路信息采集系統(tǒng)——超聲波測(cè)速測(cè)距系統(tǒng)及圖像采集系統(tǒng)采集外部環(huán)境信息,經(jīng)決策處理系統(tǒng)對(duì)信息進(jìn)行處理,并進(jìn)行多模塊輸出,其中有信息的反饋系統(tǒng)可以面向使用者提供足夠的信息提示,同時(shí),又可通過(guò)運(yùn)動(dòng)系統(tǒng)對(duì)“導(dǎo)盲犬”進(jìn)行實(shí)時(shí)控制。存儲(chǔ)系統(tǒng)可以將采集和處理的環(huán)境信息進(jìn)行存取,方便查詢。
1.1 系統(tǒng)的體系結(jié)構(gòu)
圖1為系統(tǒng)的體系結(jié)構(gòu)圖。
圖1 系統(tǒng)體系結(jié)構(gòu)圖
1.2 硬件設(shè)計(jì)結(jié)構(gòu)
本設(shè)計(jì)主要功能模塊有:
攝像頭監(jiān)測(cè)及智能識(shí)別模塊,超聲波測(cè)速與測(cè)距模塊,電機(jī)驅(qū)動(dòng)與控制模塊,Nios Ⅱ處理器模塊,語(yǔ)音播報(bào)模塊,通信與定位模塊,實(shí)時(shí)存儲(chǔ)模塊,即插即用液晶顯示模塊。
硬件框架圖如圖2所示。
圖2 硬件框架圖
1.3 軟件流程結(jié)構(gòu)
軟件流程結(jié)構(gòu)如圖3所示。
圖3 軟件流程結(jié)構(gòu)圖
2 具體模塊
本設(shè)計(jì)基于Nios Ⅱ硬件平臺(tái),運(yùn)用其強(qiáng)大的擴(kuò)展及處理功能,將數(shù)字圖像處理技術(shù)、超聲波測(cè)距定位技術(shù)、智能控制技術(shù)協(xié)調(diào)的組合在一起,構(gòu)成一個(gè)既功能強(qiáng)大又非常人性化的“導(dǎo)盲犬”。以下為各模塊的設(shè)計(jì)特點(diǎn)及方法:
2.1 Nios Ⅱ處理器
Nios Ⅱ處理器[2]運(yùn)算速度快,能滿足對(duì)圖像檢測(cè)與處理的要求;具有完善的軟件開(kāi)發(fā)套件,包括編譯器、集成開(kāi)發(fā)環(huán)境(IDE)、JTAG調(diào)試器、實(shí)時(shí)操作系統(tǒng)(RTOS)和TCP/IP協(xié)議棧;其次,Altera DE1的外圍接口豐富,可以滿足不同的需求,必要時(shí)可以自定義外圍電路進(jìn)行擴(kuò)展。在FPGA中使用軟核處理器也是其優(yōu)勢(shì)所在,硬核實(shí)現(xiàn)沒(méi)有靈活性,通常無(wú)法使用最新的技術(shù)。基于標(biāo)準(zhǔn)處理器的方案會(huì)被淘汰,而基于Nios Ⅱ處理器的方案是基于HDL源碼構(gòu)建的,能夠修改以滿足新的系統(tǒng)需求。將處理器實(shí)現(xiàn)為HDL的IP核,開(kāi)發(fā)者能夠完全定制CPU和外設(shè),獲得恰好滿足需求的處理器。
2.2 圖像采集模塊
利用的地貌比對(duì)是對(duì)被檢測(cè)到的環(huán)境特征在環(huán)境圖像庫(kù)中進(jìn)行目標(biāo)搜索以及進(jìn)行地點(diǎn)的確認(rèn)。實(shí)際上,將采樣到的環(huán)境圖像與庫(kù)存的圖像依次進(jìn)行比對(duì),并找出最佳的匹配對(duì)象。所以,環(huán)境的描述決定了環(huán)境識(shí)別的具體方法與性能。該應(yīng)用的核心是“圖形識(shí)別算法”,這種算法是利用了環(huán)境中的各主要特點(diǎn)及一些特征部分而形成的方法。
圖像采集系統(tǒng)[3,4]主要由視頻信號(hào)A/D轉(zhuǎn)換,PFGA控制模塊,邏輯控制模塊,存儲(chǔ)模塊等組成。 系統(tǒng)采集圖像的命令由計(jì)算機(jī)發(fā)出,通過(guò)Avalon總線將命令傳送至FPGA同步采集模塊。同步采集模塊則發(fā)出采集信號(hào)采集一幀圖像,利用寫信號(hào)將數(shù)據(jù)存儲(chǔ)至SRAM1中。經(jīng)過(guò)邊緣檢測(cè)處理后存儲(chǔ)到SRAM2中,將圖像信息讀出傳送給FPGA至處理。對(duì)比FPGA中環(huán)境圖片的數(shù)據(jù)庫(kù)的數(shù)據(jù)與當(dāng)前圖像數(shù)據(jù),對(duì)數(shù)字信息進(jìn)行分析,在合理誤差范圍之內(nèi),可確定特定的位置,達(dá)到環(huán)境識(shí)別的目的。
2.3 超聲波測(cè)距模塊
利用超聲波測(cè)距模塊[5]可實(shí)現(xiàn)多障礙物的定位及運(yùn)動(dòng)狀態(tài)的跟蹤,可以精確地測(cè)出物體距離盲人的距離、物體相對(duì)于盲人的運(yùn)動(dòng)方向及運(yùn)動(dòng)速度。由于超聲波測(cè)距誤差是由超聲波的傳播速度誤差和測(cè)量距離傳播的時(shí)間誤差引起的。而超聲波的傳播速度的誤差影響最大,且其與環(huán)境的溫度有關(guān),故本設(shè)計(jì)中采用了帶溫度補(bǔ)償?shù)某暅y(cè)距,通過(guò)高精度的溫度傳感器[6]實(shí)時(shí)跟蹤外界溫度的變換,能很好地補(bǔ)償超聲波在不同溫度的傳播速度。而傳播時(shí)間的誤差則通過(guò)Nios Ⅱ來(lái)消除,Nios Ⅱ內(nèi)部具有高頻晶振信號(hào),通過(guò)其內(nèi)部計(jì)數(shù)器計(jì)數(shù)可以滿足超聲波測(cè)距的微秒級(jí)要求,能保證測(cè)距1 cm的誤差。
2.4 電機(jī)控制模塊
本設(shè)計(jì)中用到的電機(jī)為直流電機(jī),控制著導(dǎo)盲儀的運(yùn)動(dòng)[7],以及超聲波傳感器的循環(huán)掃描和攝像頭的動(dòng)態(tài)攝取,運(yùn)用工程整定方法,通過(guò)試驗(yàn),然后按照工程經(jīng)驗(yàn)公式對(duì)控制器參數(shù)進(jìn)行整定,由控制器輸出控制各個(gè)電機(jī)協(xié)調(diào)運(yùn)動(dòng),可以實(shí)現(xiàn)導(dǎo)盲儀的自動(dòng)運(yùn)動(dòng)及多個(gè)超聲波測(cè)量?jī)x的平面覆蓋式掃描,消除掃描中的死角。測(cè)速電路用于測(cè)量導(dǎo)盲小車的速度,反饋電路輸出控制調(diào)速系統(tǒng)[8]可控制預(yù)先設(shè)定的速度。
2.5 短信息發(fā)送功能
能夠?qū)⒚と擞龅降那闆r的描述自動(dòng)發(fā)送給其家人。短信息的發(fā)送[9,10]需要GSM模塊和FPGA處理器共同協(xié)作完成。發(fā)送中文短信采用PDU模式Unicode編碼方式[11],將所要發(fā)送的信息存儲(chǔ)在SIM卡中。發(fā)送過(guò)程中,F(xiàn)PGA通過(guò)發(fā)送及接收AT命令與GSM模塊形成回路,通過(guò)AT命令實(shí)現(xiàn)對(duì)GSM模塊的操作。通過(guò)簡(jiǎn)單的按鍵分配各個(gè)對(duì)應(yīng)的信息內(nèi)容,能夠使不同的信息通過(guò)短信息模塊發(fā)送。
3 結(jié) 語(yǔ)
本設(shè)計(jì)基于FPGA技術(shù)在Altera公司的DE1開(kāi)發(fā)平臺(tái)進(jìn)行開(kāi)發(fā),設(shè)計(jì)中需要大量進(jìn)行實(shí)時(shí)圖像處理,波形處理,以及多個(gè)進(jìn)程的并行處理,對(duì)處理器的性能要求比較高,而基于Altera Nios Ⅱ可以很好地滿足算法的速度和精度的雙重要求。 同時(shí)豐富的IP盒可供直接使用,方便高效。在設(shè)計(jì)構(gòu)架過(guò)程中,需要將Avalon總線上各個(gè)IP的時(shí)序進(jìn)行綜合,方便FPGA處理器進(jìn)行處理,避免錯(cuò)誤和損失。同時(shí),如何提高導(dǎo)盲系統(tǒng)的魯棒性也是一個(gè)值得解決的有意義的工作。
參考文獻(xiàn)
[1]王剛,張瀲.基于FPGA的SoPC嵌入式系統(tǒng)設(shè)計(jì)與典型事例[M].北京:電子工業(yè)出版社,2009.
[2]黃佳瑋,陳福深.基于NiosⅡ的SoPC嵌入式系統(tǒng)設(shè)計(jì)[J].電子元器件應(yīng)用,2009,11(7):48-51.
[3] 鄭百源,程遠(yuǎn)增,任鎖柱.基于FPGA和TMS320DM642的CCD圖像采集和處理系統(tǒng)硬件設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2009(12):22-25.
[4]劉虹,黃濤.基于FPGA的高速圖像采集系統(tǒng)的研究與實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2004,17(8):18-19.
[5]黃大志,申屠留芳,郭燕.導(dǎo)盲機(jī)器人中超聲波測(cè)距系統(tǒng)的研究[J].淮海工學(xué)院學(xué)報(bào),2009(1):19-22.
[6]孫寶元,楊寶清.傳感器及其應(yīng)用手冊(cè)[M].北京:機(jī)械工業(yè)出版社,2004.
[7]李保國(guó),張春熹.雙輪移動(dòng)機(jī)器人安全目標(biāo)追蹤與自動(dòng)避障算法[J].控制理論與應(yīng)用,2007(4):535-540.
[8]楊東燕.一種移動(dòng)機(jī)器人小車的電機(jī)控制系統(tǒng)[J].內(nèi)蒙古科技與經(jīng)濟(jì),2008(20):99-108.
[9]孫丘偉,余臻.基于GSM的短信報(bào)警收發(fā)平臺(tái)設(shè)計(jì)[J].福州大學(xué)學(xué)報(bào):自然科學(xué)版,2008(S1):44-48.
[10]宣彩平,王皓,鄒國(guó)良.利用GSM無(wú)線模塊發(fā)送短消息[J].計(jì)算機(jī)應(yīng)用,2004(5):148-150.
[11]苗雨,孟閑勇.基于GSM模塊實(shí)現(xiàn)中文短信息發(fā)送[J].計(jì)算機(jī)與信息技術(shù),2008(7):84-86.