《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 基于模糊神經(jīng)網(wǎng)絡(luò)的移動機器人沿墻導(dǎo)航控制
基于模糊神經(jīng)網(wǎng)絡(luò)的移動機器人沿墻導(dǎo)航控制
摘要: 本文給出了模糊神經(jīng)網(wǎng)絡(luò)的計算模型,利用BP網(wǎng)絡(luò)離線訓(xùn)練權(quán)值,。此方法能夠根據(jù)移動機器人聲納采集到的信息自動生成模糊隸屬函數(shù),,并且自動提取模糊規(guī)則,增強了神經(jīng)網(wǎng)絡(luò)的泛化能力和容錯能力,。實驗證明了此方法的有效性和可行性,,能夠無碰撞地沿墻體行進,并保持一定的距離,。
Abstract:
Key words :
1 引言
   
沿墻導(dǎo)航控制問題是指驅(qū)動機器人在一定方向上沿墻運動,,或者更一般意義上的沿著物體輪廓運動,并與墻保持一定距離,。它可以看作是移動機器人智能的低層行為,,當與其它高層的智能行為相結(jié)合時,可以完成復(fù)雜的任務(wù),。墻體情況可分為以下幾種:
    跟蹤一個未知的墻體,。當獲得的環(huán)境信息太少或無法獲得,機器人的軌跡可能會特定為“沿著右邊的墻體運動直到發(fā)現(xiàn)第一個門口”,。另外,,如果移動機器人的任務(wù)是繪制全局模型,它就必須沿墻體行進將地圖描述完全,。
    跟蹤一個已知墻體,。機器人按照規(guī)劃好路徑跟蹤軌跡,為了使算法誤差保持在小范圍內(nèi)而跟蹤墻體,?;蛘撸方?jīng)規(guī)劃中包括已知墻體,,需要機器人沿墻行進完成特殊的任務(wù),。
    目前關(guān)于移動機器人沿墻導(dǎo)航控制已有較多研究,大多采用聲納傳感器作為環(huán)境的感知設(shè)備,。算法應(yīng)用則從早期的航跡推算法,,發(fā)展到后來使用卡爾曼濾波,模糊控制,神經(jīng)網(wǎng)絡(luò)控制等,。由于模糊邏輯技術(shù)和神經(jīng)網(wǎng)絡(luò)技術(shù)各自獨到的特點,,將模糊技術(shù)和神經(jīng)網(wǎng)絡(luò)有機結(jié)合組成模糊神經(jīng)網(wǎng)絡(luò)控制系統(tǒng),可實現(xiàn)模糊規(guī)則自動提取,、模糊隸屬函數(shù)的自動生成及在線調(diào)節(jié),。因此本文采用模糊神經(jīng)網(wǎng)絡(luò)算法實現(xiàn)移動機器人的沿墻導(dǎo)航控制。

2 模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
2.1 輸入輸出值模糊化
   
本文研究的移動機器人沿墻導(dǎo)航控制融合機器人聲納檢測采集到的數(shù)據(jù),,判斷機器人的位姿,,然后通過模糊神經(jīng)網(wǎng)絡(luò)算法控制移動機器人的動作,使其在一定距離內(nèi)沿墻體運,。文中移動機器人側(cè)壁上方安裝有16個聲納,,按順時針排列從0#到15#。
    移動機器人要避免與墻體碰撞又要保持一定距離,,所以本文為每個聲納設(shè)置一個閾值,當聲納檢測到的距離值大于或小于這個閾值就采取相應(yīng)的動作,。這樣,,將聲納采集的距離值與各自相應(yīng)的閾值相減得到差值△di(i=O,1,,2,,…,15)作為模糊神經(jīng)網(wǎng)絡(luò)的一個輸入,;移動機器人的角度信息θ作為另外一個輸入,。將距離差值△di和角度θ輸入模糊化如下:
    距離差值△di:較小(NB),小(NS),,中(Z),,大(PS),較大(PB),。
    角度θ:左(L),,偏左(LS),正(Z),,偏右(RS),,右(R)。
    輸出變量為移動機器人的左右輪速Vl,、Vr,,模糊化如下:
    左右輪速Vl、Vr:左轉(zhuǎn)(TL),,前進(G),,右轉(zhuǎn)(TR)。
2.2 模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
   
模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示,,A為輸入層,,輸入變量分別是前面所說的距離差值△di(i=0,,l,2,,3,,4)和角度θ。A層的作用是將輸入值傳送到下一層,。

    B,,C為模糊化層,即使用模糊語言來反應(yīng)輸入量的變化,,隸屬函數(shù)采用高斯函數(shù),,隸屬度計算公式如下:

   
    連接權(quán)重We、Wd決定了隸屬函數(shù)的形狀,。
    D層為模糊推理層,,目的是將輸入量進行綜合處理,共采用了25條規(guī)則,,它們由C,,D,E的連接表示出來,。模糊規(guī)則如下:
    lf △di is M andθis N,,then Vl is K and Vris L.
其中M=NB,NS,,Z,,PS,PB,;N=L,,LS,Z,,RS,,R;K,,L=TL,,G,TR,。
    E,、F、G層為去模糊化層,。F層有10個神經(jīng)元,,5個對應(yīng)移動機器人的左輪速度,5個對應(yīng)右輪速度。F層的結(jié)果隸屬函數(shù)使用三角形隸屬函數(shù),,目的是把在E層模糊語言描述的隸屬函數(shù)轉(zhuǎn)化為具體數(shù)值的隸屬度,。G層求解模糊結(jié)果,采用重心法,,也叫加權(quán)平均法,。求解過程是以控制作用論域上的點vi(i=l,2,,…,,n)對控制作用模糊集的隸屬度u為權(quán)系數(shù)進行加權(quán)平均而求得模糊結(jié)果,對于離散論域vi:

   


3 沿墻導(dǎo)航控制計算模型
   
圖l所示即為本文采用的BP前饋型神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),,計算模型如下(I為該神經(jīng)元的輸入值,,O為輸出值,上標表示神經(jīng)元所在的層):

   

    D層:由輸入變量自動生成模糊規(guī)則,。

   
    F層:輸出隸屬函數(shù)使用三角形函數(shù),,隸屬度計算公式如下:

   

4 實驗結(jié)果
   
為了驗證算法的有效性,本文設(shè)計了移動機器人沿左墻行進的實驗,。實驗環(huán)境為有兩扇門的長方形走廊,。其中,黑色實線為帶有兩扇門的墻體,,藍色曲線為移動機器人沿墻體行進的軌跡。移動機器人使用0#~4#聲納,,圖2為基于航跡推算法的移動機器人墻體跟蹤軌跡圖,;圖3為基于模糊神經(jīng)網(wǎng)絡(luò)的移動機器人沿墻導(dǎo)航控制軌跡圖。

 

    圖3中,,移動機器人與墻體的距離聯(lián)合各聲納相對于移動機器人正前方的角度作為模糊神經(jīng)網(wǎng)絡(luò)的輸入,,經(jīng)過融和判斷來控制移動機器人的動作,靠近墻體或遠離墻體,。例如,,O#(-90°)測得的數(shù)值為208mm,1#(-50°)測得的數(shù)值為324mm,,2#(一30°)測得的數(shù)值為877mm,,3#(一10°)測得的數(shù)值為1700mm,4#(10°)測得的數(shù)值為3000mm,,說明移動機器人距離墻體太近,,需遠離以避免碰撞,此時移動機器人左輪速度為0.20m/s,,右輪速度為O.08m/s,。移動機器人采用模糊神經(jīng)網(wǎng)絡(luò)進行沿墻導(dǎo)航控制的均方誤差為0.0014。單一采用航跡推算法的均方誤差為0.0382。由此可見,,采用模糊神經(jīng)網(wǎng)絡(luò)進行移動機器人沿墻導(dǎo)航控制,,性能大大提高。

5 結(jié)論
   
本文給出了模糊神經(jīng)網(wǎng)絡(luò)的計算模型,,利用BP網(wǎng)絡(luò)離線訓(xùn)練權(quán)值,。此方法能夠根據(jù)移動機器人聲納采集到的信息自動生成模糊隸屬函數(shù),并且自動提取模糊規(guī)則,,增強了神經(jīng)網(wǎng)絡(luò)的泛化能力和容錯能力,。實驗證明了此方法的有效性和可行性,能夠無碰撞地沿墻體行進,,并保持一定的距離,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。