采用FPGA技術(shù)的智能導(dǎo)盲犬設(shè)計方案
眾所周知眼晴是“心靈之窗”,而對于突然失去或從未擁有過“心靈之窗”的盲人來說,生活上的困難與心理上的痛苦是可想而知的。他們的衣食住行存在諸多不便,而在出行與人際交往中遇到的困難更加突出,基于此設(shè)計了智能導(dǎo)盲犬。生活中,導(dǎo)盲犬習(xí)慣于頸圈、導(dǎo)盲牽引帶和其他配件的約束;懂得“來”、“前進”、“停止”等口令;可以帶領(lǐng)盲人安全地走路,當(dāng)遇到障礙和需要拐彎時,會引導(dǎo)主人停下以免發(fā)生危險。但是,導(dǎo)盲犬的培訓(xùn)過程長達18個月,綜合費用達2.5~3萬美元,如此昂貴的價格不是普通用戶能承擔(dān)的,所以這里設(shè)計一個智能導(dǎo)盲犬,從而為盲人帶來便利。
本系統(tǒng)主要解決的是盲人在出行和人際交往中遇到的問題,主要功能有:行進中的障礙物檢測、識別與定位,其中包括移動的物體與靜止的物體識別;測定障礙物的速度與距離;對周圍的路線的特定環(huán)境標(biāo)志進行環(huán)境辨認,檢測出熟悉的地點,方便盲人了解情況,并同時也以此為信息主動控制導(dǎo)盲犬,實現(xiàn)人的主觀控制;人性化的語音提示,能夠根據(jù)信息重要程度主動提示當(dāng)前情況,幫助盲人獲取必要信息,幫助盲人決策;系統(tǒng)還可以對周邊環(huán)境發(fā)生的特殊情況向家屬發(fā)送短消息,必要時可以發(fā)送圖片,實現(xiàn)進一步的安全性。
1 設(shè)計結(jié)構(gòu)
本設(shè)計系統(tǒng)通過數(shù)據(jù)采集、處理、存儲、反饋等子系統(tǒng)構(gòu)架而成。首先由兩路信息采集系統(tǒng)——超聲波測速測距系統(tǒng)及圖像采集系統(tǒng)采集外部環(huán)境信息,經(jīng)決策處理系統(tǒng)對信息進行處理,并進行多模塊輸出,其中有信息的反饋系統(tǒng)可以面向使用者提供足夠的信息提示,同時,又可通過運動系統(tǒng)對“導(dǎo)盲犬”進行實時控制。存儲系統(tǒng)可以將采集和處理的環(huán)境信息進行存取,方便查詢。
1.1 系統(tǒng)的體系結(jié)構(gòu)
圖1為系統(tǒng)的體系結(jié)構(gòu)圖。
1.2 硬件設(shè)計結(jié)構(gòu)
本設(shè)計主要功能模塊有:
攝像頭監(jiān)測及智能識別模塊,超聲波測速與測距模塊,電機驅(qū)動與控制模塊,NiosⅡ處理器模塊,語音播報模塊,通信與定位模塊,實時存儲模塊,即插即用液晶顯示模塊。
硬件框架圖如圖2所示。
1.3 軟件流程結(jié)構(gòu)
軟件流程結(jié)構(gòu)如圖3所示。
[!--empirenews.page--]
2 具體模塊
本設(shè)計基于NiosⅡ硬件平臺,運用其強大的擴展及處理功能,將數(shù)字圖像處理技術(shù)、超聲波測距定位技術(shù)、智能控制技術(shù)協(xié)調(diào)的組合在一起,構(gòu)成一個既功能強大又非常人性化的“導(dǎo)盲犬”。以下為各模塊的設(shè)計特點及方法:
2.1 NiosⅡ處理器
NiosⅡ處理器運算速度快,能滿足對圖像檢測與處理的要求;具有完善的軟件開發(fā)套件,包括編譯器、集成開發(fā)環(huán)境(IDE)、JTAG調(diào)試器、實時操作系統(tǒng)(RTOS)和TCP/IP協(xié)議棧;其次,Altera DEl的外圍接口豐富,可以滿足不同的需求,必要時可以自定義外圍電路進行擴展。在FPGA中使用軟核處理器也是其優(yōu)勢所在,硬核實現(xiàn)沒有靈活性,通常無法使用最新的技術(shù)?;跇?biāo)準(zhǔn)處理器的方案會被淘汰,而基于NiosⅡ處理器的方案是基于HDL源碼構(gòu)建的,能夠修改以滿足新的系統(tǒng)需求。將處理器實現(xiàn)為HDL的IP核,開發(fā)者能夠完全定制CPU和外設(shè),獲得恰好滿足需求的處理器。
2.2 圖像采集模塊
利用的地貌比對是對被檢測到的環(huán)境特征在環(huán)境圖像庫中進行目標(biāo)搜索以及進行地點的確認。實際上,將采樣到的環(huán)境圖像與庫存的圖像依次進行比對,并找出最佳的匹配對象。所以,環(huán)境的描述決定了環(huán)境識別的具體方法與性能。該應(yīng)用的核心是“圖形識別算法”,這種算法是利用了環(huán)境中的各主要特點及一些特征部分而形成的方法。
圖像采集系統(tǒng)主要由視頻信號A/D轉(zhuǎn)換,PFGA控制模塊,邏輯控制模塊,存儲模塊等組成。系統(tǒng)采集圖像的命令由計算機發(fā)出,通過Avalon總線將命令傳送至FPGA同步采集模塊。同步采集模塊則發(fā)出采集信號采集一幀圖像,利用寫信號將數(shù)據(jù)存儲至SRAM1中。經(jīng)過邊緣檢測處理后存儲到SRAM2中,將圖像信息讀出傳送給FPGA至處理。對比FPGA中環(huán)境圖片的數(shù)據(jù)庫的數(shù)據(jù)與當(dāng)前圖像數(shù)據(jù),對數(shù)字信息進行分析,在合理誤差范圍之內(nèi),可確定特定的位置,達到環(huán)境識別的目的。
2.3 超聲波測距模塊
利用超聲波測距模塊可實現(xiàn)多障礙物的定位及運動狀態(tài)的跟蹤,可以精確地測出物體距離盲人的距離、物體相對于盲人的運動方向及運動速度。由于超聲波測距誤差是由超聲波的傳播速度誤差和測量距離傳播的時間誤差引起的。而超聲波的傳播速度的誤差影響最大,且其與環(huán)境的溫度有關(guān),故本設(shè)計中采用了帶溫度補償?shù)某暅y距,通過高精度的溫度傳感器實時跟蹤外界溫度的變換,能很好地補償超聲波在不同溫度的傳播速度。而傳播時間的誤差則通過NiosⅡ來消除,NiosⅡ內(nèi)部具有高頻晶振信號,通過其內(nèi)部計數(shù)器計數(shù)可以滿足超聲波測距的微秒級要求,能保證測距1 cm的誤差。
2.4 電機控制模塊
本設(shè)計中用到的電機為直流電機,控制著導(dǎo)盲儀的運動,以及超聲波傳感器的循環(huán)掃描和攝像頭的動態(tài)攝取,運用工程整定方法,通過試驗,然后按照工程經(jīng)驗公式對控制器參數(shù)進行整定,由控制器輸出控制各個電機協(xié)調(diào)運動,可以實現(xiàn)導(dǎo)盲儀的自動運動及多個超聲波測量儀的平面覆蓋式掃描,消除掃描中的死角。測速電路用于測量導(dǎo)盲小車的速度,反饋電路輸出控制調(diào)速系統(tǒng)可控制預(yù)先設(shè)定的速度。
2.5 短信息發(fā)送功能
能夠?qū)⒚と擞龅降那闆r的描述自動發(fā)送給其家人。短信息的發(fā)送需要GSM模塊和FPGA處理器共同協(xié)作完成。發(fā)送中文短信采用PDU模式Unicode編碼方式,將所要發(fā)送的信息存儲在SIM卡中。發(fā)送過程中,F(xiàn)PGA通過發(fā)送及接收AT命令與GSM模塊形成回路,通過AT命令實現(xiàn)對GSM模塊的操作。通過簡單的按鍵分配各個對應(yīng)的信息內(nèi)容,能夠使不同的信息通過短信息模塊發(fā)送。
3 結(jié) 語
本設(shè)計基于FPGA技術(shù)在Altera公司的DEl開發(fā)平臺進行開發(fā),設(shè)計中需要大量進行實時圖像處理,波形處理,以及多個進程的并行處理,對處理器的性能要求比較高,而基于Altera NiosⅡ可以很好地滿足算法的速度和精度的雙重要求。同時豐富的IP盒可供直接使用,方便高效。在設(shè)計構(gòu)架過程中,需要將Avalon總線上各個IP的時序進行綜合,方便FPGA處理器進行處理,避免錯誤和損失。同時,如何提高導(dǎo)盲系統(tǒng)的魯棒性也是一個值得解決的有意義的工作。