基于模糊神經(jīng)網(wǎng)絡(luò)的移動機器人沿墻導航控制
沿墻導航控制問題是指驅(qū)動機器人在一定方向上沿墻運動,或者更一般意義上的沿著物體輪廓運動,并與墻保持一定距離。它可以看作是移動機器人智能的低層行為,當與其它高層的智能行為相結(jié)合時,可以完成復雜的任務。墻體情況可分為以下幾種:
跟蹤一個未知的墻體。當獲得的環(huán)境信息太少或無法獲得,機器人的軌跡可能會特定為“沿著右邊的墻體運動直到發(fā)現(xiàn)第一個門口”。另外,如果移動機器人的任務是繪制全局模型,它就必須沿墻體行進將地圖描述完全。
跟蹤一個已知墻體。機器人按照規(guī)劃好路徑跟蹤軌跡,為了使算法誤差保持在小范圍內(nèi)而跟蹤墻體。或者,路經(jīng)規(guī)劃中包括已知墻體,需要機器人沿墻行進完成特殊的任務。
目前關(guān)于移動機器人沿墻導航控制已有較多研究,大多采用聲納傳感器作為環(huán)境的感知設(shè)備。算法應用則從早期的航跡推算法,發(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)移動機器人的沿墻導航控制。
2 模糊神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
2.1 輸入輸出值模糊化
本文研究的移動機器人沿墻導航控制融合機器人聲納檢測采集到的數(shù)據(jù),判斷機器人的位姿,然后通過模糊神經(jīng)網(wǎng)絡(luò)算法控制移動機器人的動作,使其在一定距離內(nèi)沿墻體運。文中移動機器人側(cè)壁上方安裝有16個聲納,按順時針排列從0#到15#。
移動機器人要避免與墻體碰撞又要保持一定距離,所以本文為每個聲納設(shè)置一個閾值,當聲納檢測到的距離值大于或小于這個閾值就采取相應的動作。這樣,將聲納采集的距離值與各自相應的閾值相減得到差值△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層的作用是將輸入值傳送到下一層。
評論