《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > 基于神經(jīng)網(wǎng)絡(luò)的自主吸塵機器人混合視覺研究

基于神經(jīng)網(wǎng)絡(luò)的自主吸塵機器人混合視覺研究

2008-03-20
作者:徐 勇,朱世強,劉 瑜

  摘 要: 針對自主吸塵機器人" title="吸塵機器人">吸塵機器人非結(jié)構(gòu)化的工作環(huán)境及避障的實時性要求,提出融合了超聲波傳感器和紅外傳感器的混合視覺算法,并且基于BP神經(jīng)網(wǎng)絡(luò)的傳感器信息融合技術(shù)進行了實驗。
  關(guān)鍵詞: 超聲波傳感器 紅外傳感器? 傳感器融合" title="傳感器融合">傳感器融合? 神經(jīng)網(wǎng)絡(luò)

?

  自主吸塵機器人的視覺系統(tǒng)" title="視覺系統(tǒng)">視覺系統(tǒng)主要采用超聲波傳感器、紅外傳感器、碰撞傳感器" title="碰撞傳感器">碰撞傳感器以及CMOS圖像傳感器等。自主吸塵機器人主要應(yīng)用超聲波傳感器和紅外傳感器作為接近視覺的傳感器檢測障礙物。CMOS圖像傳感器主要用于全局信息的獲取,在自主吸塵機器人的障礙物檢測、基于電子地圖的定位以及路徑規(guī)劃等方面都有很好的應(yīng)用前景。碰撞傳感器作為輔助傳感器,當(dāng)其他傳感器失效時,可通過與障礙物的接觸感知障礙物的存在。但目前大多數(shù)視覺系統(tǒng)由單一傳感器構(gòu)成,對環(huán)境信息的感知不全面。為了獲得更加全面的障礙物信息,更有效地實現(xiàn)實時避障,本系統(tǒng)融合了超聲波傳感器、紅外傳感器及碰撞傳感器,采用了基于BP神經(jīng)網(wǎng)絡(luò)的多傳感器融合算法。神經(jīng)網(wǎng)絡(luò)能夠根據(jù)傳感器的輸入實時輸出,完成避障行為,從而使機器人更加自主和健壯地行走。
1 傳感器布置及硬件電路實現(xiàn)
  超聲波傳感器相對于光學(xué)傳感器(如紅外傳感器)在障礙物檢測上有突出的優(yōu)點:超聲波對色彩不敏感,能夠識別深顏色的障礙物;對光照度不敏感,適于識別透明、半透明的物體(如窗戶、玻璃門等)。
  超聲波傳感器的角度特性不好,發(fā)射角是較寬的錐形角(典型值為15~30錐度),這意味著不能準(zhǔn)確測得障礙物的位置。超聲波傳感器的另一個問題是鏡面反射:當(dāng)超聲波束以較淺的角度射向光滑平面時發(fā)生鏡面反射,波束向外反射而接收不到反射波。此外,超聲波傳感器還存在著竄繞信號,且易受環(huán)境溫度、濕度等條件的影響。
  紅外傳感器是近距離傳感器,其探測視角小、方向性好,與超聲傳感器固有的錐形波相比,紅外傳感器具有角度分辨力高的優(yōu)點,并且能在較短的時間內(nèi)獲得大量的測量數(shù)據(jù)。紅外傳感器的缺點為:易受戶外光線的干擾;對障礙物的顏色敏感,深顏色特別是黑色識別效果不好;玻璃等光滑表面對紅外線的反射特性影響很大。
  綜合以上分析可知,單一傳感器存在有效探測范圍小、數(shù)據(jù)可靠性低等缺點,很難得到好的避障效果。因此,自主吸塵機器人的視覺系統(tǒng)同時采用了超聲波傳感器和紅外傳感器,并且輔以碰撞傳感器,利用各種傳感器的信息互補,能夠很好地提供機器人周圍的障礙物信息。由于本系統(tǒng)的目標(biāo)是廉價有效地避障,因此沒有采用CMOS圖像傳感器。
  如圖1所示。由于自主吸塵機器人主要的避障行為是前進、停頓、轉(zhuǎn)彎,因此采用7組傳感器均布在機器人的正前方,覆蓋180°的半圓范圍,以充分探測障礙物。其中,第1、2、3、4組傳感器由一對超聲波傳感器和一對紅外傳感器組成,其他幾組由一對紅外傳感器組成。每組傳感器共同提供某一時刻特定方位的障礙物信息。由于右側(cè)需布置機器人自主回歸電路,故減少一對超聲波傳感器。


  在自主吸塵機器人的實時避障過程中,不需要測量距障礙物的精確距離,而只需檢測超過門檻強度的回波。回波的強度與距障礙物的距離及障礙物的性質(zhì)有關(guān)。若檢測到超過門檻強度的回波時,則認(rèn)為存在障礙物,需要執(zhí)行相應(yīng)的避障策略。門檻強度根據(jù)機器人行走過程中認(rèn)定的最近障礙物的距離而定,一般可取最近障礙物的距離為2~5cm。對超聲波傳感器,有效回波比竄繞信號要大得多,因此設(shè)置合適的門檻強度可以屏蔽掉竄繞信號的影響。
  硬件電路主要包括信號發(fā)射電路、信號接收電路、信號放大電路、門檻強度比較電路、鑒頻電路以及路選電路。硬件電路框圖如圖2所示。

?


2 基于神經(jīng)網(wǎng)絡(luò)的傳感器融合技術(shù)
  神經(jīng)網(wǎng)絡(luò)多傳感器融合算法在自主機器人避障以及自主行走應(yīng)用上具有獨特優(yōu)勢。本系統(tǒng)采用包含輸入層、隱層和輸出層三層結(jié)構(gòu)的BP神經(jīng)網(wǎng)絡(luò),如圖3所示。BP網(wǎng)絡(luò)決定了傳感器輸入與行為模式輸出之間的通信,通過對連接權(quán)值" title="權(quán)值">權(quán)值的計算得出與輸入相對應(yīng)的輸出。訓(xùn)練過程以隨機的連接權(quán)值開始,BP網(wǎng)絡(luò)不斷比較實際輸出與期望輸出,通過調(diào)整連接權(quán)值減少兩者之間的差值,直至輸出期望值,同時得到連接權(quán)值。
  神經(jīng)網(wǎng)絡(luò)的輸入層為圖1所示的7路傳感器輸入信號,隱層有3個單元,每個隱層單元根據(jù)7路輸入的加權(quán)計算得到單一的實值輸出。然后這3個隱層單元的輸出作為第二層4個輸出單元的輸入。輸出層有4路輸出信號,每路輸出信號對應(yīng)機器人特定的運動行為,分別表示左轉(zhuǎn)(L)、停頓(S)、前進(F)以及右轉(zhuǎn)(R),或者是兩種行為的組合,如前左轉(zhuǎn)、前右轉(zhuǎn)。
  傳感器的輸入信號以及送到電機的輸出信號都以二進制表示,并通過簡單的開關(guān)控制電機。其中,0、1、2三路輸入信號檢測左側(cè)是否存在障礙物,第3路輸入信號檢測正前方的障礙物信息。4、5、6輸入信號檢測右側(cè)的障礙物信息。僅檢測到左(右)側(cè)障礙物輸出前右(左)轉(zhuǎn)指令;檢測到左(右)側(cè)及前方障礙物輸出右(左)轉(zhuǎn)指令;僅檢測到前方障礙物及同時檢測到左側(cè)和右側(cè)障礙物則輸出應(yīng)急停頓指令;無障礙物信號輸出前進指令。另外碰撞傳感器檢測到碰撞信號也輸出停頓指令,處理器收到停頓指令后采取相應(yīng)的策略。
每個輸出值是0和1之間的某個實數(shù),對應(yīng)于預(yù)測相應(yīng)運動行為的置信度。可以根據(jù)置信度對輸出進行簡單處理,即當(dāng)輸出超過0.5時,則認(rèn)為輸出為1,否則認(rèn)為輸出為0。
  下面給出BP神經(jīng)網(wǎng)絡(luò)的算法推導(dǎo)。
  設(shè)輸入層為M,隱層為I,輸出層為P,對應(yīng)的小寫字母表示任一信息單元。輸入層與隱層的突觸權(quán)值用Wmi表示,隱層與輸出層的突觸權(quán)值用Wip表示。
  神經(jīng)元的輸入用u表示,激勵輸出用v表示,u、v的上標(biāo)表示層,下標(biāo)表示層中的某個神經(jīng)元。對應(yīng)于任一訓(xùn)練樣本Xk=[xk1,xk2,…,xkm]T的實際輸出為Yk=[yk1,yk2,…,ykp]T,期望輸出dk=[dk1,dk2,…,dkp]T。設(shè)n為迭代次數(shù),網(wǎng)絡(luò)輸入訓(xùn)練Xk,由工作信號的正向傳播過程可得:
  
  輸出層的第p個神經(jīng)元的誤差信號為:
  ekp(n)=dkp(n)-ykp(n)
  定義神經(jīng)元P的誤差能量為,則輸出層所有神經(jīng)元的誤差能量總和。在誤差信號反向傳遞過程中,逐層修改連接權(quán)值。
  下面計算誤差信號的反向傳播過程。
  (1)隱層I與輸出層P之間的權(quán)值修正量。
  根據(jù)梯度下降和Delta法則,Wip(n)的修正量為:
  
  其中,h是學(xué)習(xí)步長,為局部梯度。
  
  當(dāng)激勵函數(shù)為Sigmoid函數(shù),即
  
  則下一次迭代時隱層J上任一節(jié)點與輸出層P上任一節(jié)點之間的權(quán)值為:
  
  (2)隱層I上的任一節(jié)點與輸入層M上的任一節(jié)點的權(quán)值修正量。
  與(1)中的推導(dǎo)類似,
  
  則在下一次迭代時隱層I上任一節(jié)點與輸入層M上任一節(jié)點之間的權(quán)值為:
  
3 BP算法框圖
  圖4給出了BP算法的程序流程圖。在執(zhí)行算法之前,首先要設(shè)置變量和參量。其中:Wmi(n)為第n次迭代時輸入層與隱層I之間的權(quán)值向量;Wip(n)為第n次迭代時輸出層與隱層I之間的權(quán)值向量;n為迭代次數(shù),K為訓(xùn)練樣本的下標(biāo),Maxloop為最大迭代次數(shù),Maxtrain為訓(xùn)練樣本的總數(shù),ζ為能量最小誤差。


4 仿真結(jié)果
  用FoxPro建立輸入樣本的數(shù)據(jù)庫,用VC編程訓(xùn)練網(wǎng)絡(luò)。訓(xùn)練時用了72組輸入樣本,并且循環(huán)4000次訓(xùn)練網(wǎng)絡(luò),訓(xùn)練時間15s。表1給出了部分訓(xùn)練樣本的示例(P0表示樣本0,以下同)。


  初始權(quán)值為-0.01~0.01的隨機數(shù)值。下面給出了網(wǎng)絡(luò)訓(xùn)練的權(quán)值輸出。
  輸入層與隱層權(quán)值
  0.251,-9.187,2.347
  0.231,-9.225,2.373
  0.266,-9.213,2.331
  4.722,-1.479,-1.470
  0.214,2.520,-9.067
  0.293,2.512,-9.013
  0.275,2.442,-8.890
  輸出層與隱層權(quán)值
  -11.843,-5.154,-4.722,6.348
  9.970,10.696,-10.990,-11.535
  9.938,-9.617,10.613,-12.470
  為了驗證訓(xùn)練權(quán)值的正確性與強壯性,對大量的輸入樣本(包括沒有經(jīng)歷訓(xùn)練過程的樣本)進行實驗,網(wǎng)絡(luò)產(chǎn)生相匹配的輸出。實驗結(jié)果表明,網(wǎng)絡(luò)的訓(xùn)練是成功的。部分實驗數(shù)據(jù)如下:
  輸入數(shù)據(jù)組數(shù):6
  第0組輸入數(shù)據(jù):0 0 0 0 0 0 0
  第0組輸出為:1 0 0 0
  第1組輸入數(shù)據(jù):0 0 0 1 0 0 0
  第1組輸出為:0 0 0 1
  第2組輸入數(shù)據(jù):1 1 0 1 0 0 0
  第2組輸出為:0 0 1 0
  第3組輸入數(shù)據(jù):1 1 1 0 0 0 0
  第3組輸出為:1 0 1 0
  第4組輸入數(shù)據(jù):0 0 0 1 1 0 0
  第4組輸出為:0 1 0 0
  第5組輸入數(shù)據(jù):1 1 0 1 0 0 1
  第5組輸出為:0 0 0 1
  最后利用Matlab提供的Neural Network工具箱,對訓(xùn)練網(wǎng)絡(luò)的輸出和相應(yīng)的期望輸出進行衰退分析,以測定訓(xùn)練網(wǎng)絡(luò)的性能。圖5為前面訓(xùn)練所用的72組輸入數(shù)據(jù)產(chǎn)生的輸出A和期望輸出T的衰退分析圖。其中虛線為最佳線性擬合曲線A=T,實線為72組輸出A與相應(yīng)的期望輸出T的線性擬合。由圖5可以看出,擬合效果理想,因此訓(xùn)練網(wǎng)絡(luò)的性能可靠。


  實際應(yīng)用過程的思路為:將BP網(wǎng)絡(luò)訓(xùn)練的權(quán)值移植到機器人的處理器中;7組傳感器按順序輪流工作,每循環(huán)一次得到一組輸入作為神經(jīng)網(wǎng)絡(luò)的輸入;通過神經(jīng)網(wǎng)絡(luò)計算得到匹配的實時輸出;行走電機根據(jù)輸出信號作出相應(yīng)的避障行為。
  本文將超聲波傳感器和紅外傳感器融合進自主吸塵機器人的視覺系統(tǒng),從而獲得相對于單一傳感器更加準(zhǔn)確和全面的障礙物信息。采用了基于神經(jīng)網(wǎng)絡(luò)的多傳感器信息融合算法,通過網(wǎng)絡(luò)訓(xùn)練,機器人能夠?qū)τ?xùn)練過程中沒有經(jīng)歷的實際情況做出合理的反應(yīng)。這種算法的魯棒性和容錯性很強,能夠適應(yīng)自主吸塵機器人非結(jié)構(gòu)化的工作環(huán)境。

參考文獻
1 Thomas Hellstrom.Autonomous navigation for forest machines[R].Technical Report.UMINF 02-13 ISSN-0348-0542Umea University,2002;1~60
2 Lanthier M,D Nussbaum,A Sheng.Improving vision-based maps by using sonar and infrared data[J].Robotics and Applications,2004;(8)
3 劉 瑜.自主吸塵機器人[D].杭州:浙江大學(xué)出版社,2006
4 S Nagata,M Sekiguchi,K Asakawa.Mobile robot control by a structured hierarchical neural network[J].IEEE Control Systems Magazine,1990;10:69~76
5 高 雋.人工神經(jīng)網(wǎng)絡(luò)原理及仿真實例[M].北京:機械工業(yè)出版社,2003:44~56

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。