關(guān) 閉

        新聞中心

        EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 一種基于神經(jīng)網(wǎng)絡(luò)感知器的雙足行走機(jī)器人

        一種基于神經(jīng)網(wǎng)絡(luò)感知器的雙足行走機(jī)器人

        作者: 時(shí)間:2010-08-11 來源:網(wǎng)絡(luò) 收藏

        1引言

        人作為雙足行走生物,是在長(zhǎng)期的生物進(jìn)化過程中形成的。人能夠不自覺地保持身體的直立性和平衡性,不論是在靜止不動(dòng)還是在行走過程中。一旦失去平衡,人就會(huì)產(chǎn)生相應(yīng)的動(dòng)作,使身體保持平衡。例如,在靜止時(shí),當(dāng)人的重心偏向一側(cè)時(shí),就會(huì)不自覺地向該側(cè)跨出一腳,以使重心位置落于支撐面內(nèi)。這里,支撐面定義為兩腳之間的面積以及兩腳的面積。當(dāng)重心落于支撐面內(nèi)時(shí),就不會(huì)傾倒。再如,在行走過程中,人的重心不斷向前移動(dòng),超出了兩腳尖的位置,迫使人向前邁出腳,這樣才使人的行走成為可能,使人的行走自然流暢。因此,控制機(jī)器人重心的位置及重心位置的速度,是機(jī)器人保持穩(wěn)定及產(chǎn)生有效步態(tài)的關(guān)鍵。本文就是控制機(jī)器人的重心位置,使其落于支撐面內(nèi),從而達(dá)到了機(jī)器人的目的。機(jī)器人的重心可以由安裝在機(jī)器人腳底的力傳感器測(cè)知。當(dāng)重心偏向一側(cè),這一側(cè)的傳感器輸出偏大,相反的一側(cè)的力傳感器等于零,或趨近于零。本文用來感知機(jī)器人重心位置的變化,當(dāng)重心超出支撐面時(shí),系統(tǒng)將發(fā)出動(dòng)作指令,使機(jī)器人保持穩(wěn)定。

        本文采用的(Perception)是最簡(jiǎn)單的人工,它是F??Rosenblatt于1958年提出的具有自學(xué)習(xí)能力的。在這種人工中,記憶的信息存儲(chǔ)在連接權(quán)上,外部刺激通過連接通道自動(dòng)激活相應(yīng)的神經(jīng)元,以達(dá)到自動(dòng)識(shí)別的目的。感知器模型如圖1所示,通常由感知層S(Sensory)、連接層A(Association)和反應(yīng)層構(gòu)成R(Response)。

        2 人工神經(jīng)元感知器的學(xué)習(xí)算法

        可以用下面的方法訓(xùn)練網(wǎng)絡(luò):

        (1)初始化S層至連接層(A層)的連接權(quán)矩陣

        中的各個(gè)元素及A層各單元的閥值賦予[-1,+1]之間的隨機(jī)值,一般情況下vij=1θj=0i=1,2,Λ,pj=1,2,Λ,n且在整個(gè)學(xué)習(xí)過程中保持固定不變。
        A層至輸出層(R層)的連接權(quán)矩陣

        中的各個(gè)元素及??S層各單元的閥值θ=[θ1θ2Λθq]賦予[-1,+1]之間的隨機(jī)值。
        (2)訓(xùn)練隨機(jī)選取一輸入、輸出模式對(duì)(Sk,Yk),這里k=1,2,Λ,m時(shí),網(wǎng)絡(luò)進(jìn)行以下步驟的訓(xùn)練。

        第一步,計(jì)算連接層各單元的輸出

        第二步,以連接層的輸出作為輸入層的各單元的輸入計(jì)算輸出層的實(shí)際輸出

        在學(xué)習(xí)過程中,當(dāng)所有的m個(gè)樣本模式對(duì)都提供給網(wǎng)絡(luò)學(xué)習(xí)一遍后,還需從頭再繼續(xù)提供給網(wǎng)絡(luò)學(xué)習(xí)。直到達(dá)到最大學(xué)習(xí)次數(shù),以防止發(fā)散或無限震蕩,或者滿足誤差限。

        3 計(jì)算機(jī)控制系統(tǒng)

        機(jī)器人重心位置是由腳底的力傳感器測(cè)定的。當(dāng)某一側(cè)的傳感器輸出值趨于零或小于預(yù)定的值時(shí),說明重心已經(jīng)偏向相反的另一側(cè),機(jī)器人處于危險(xiǎn)狀態(tài)。這時(shí)機(jī)器人就應(yīng)該產(chǎn)生一定的動(dòng)作,向另一側(cè)跨出一腳,以使機(jī)器人的重心位于支撐面內(nèi)。整個(gè)控制系統(tǒng)如圖2所示

        其中,y(t)是傳感器輸出向量,為模擬量,經(jīng)采樣、A/D轉(zhuǎn)換后為人工神經(jīng)網(wǎng)絡(luò)感知器的輸入向量y(kt)。

        本文取感知器的輸入層單元與輸出層單元的個(gè)數(shù)相同。感知器經(jīng)過訓(xùn)練好以后,系統(tǒng)將時(shí)實(shí)監(jiān)控機(jī)器人的重心位置,當(dāng)重心偏向某側(cè),相反側(cè)的力傳感器的輸入小于設(shè)定的安全值時(shí),神經(jīng)網(wǎng)絡(luò)相應(yīng)于該側(cè)的輸出為1,其余均為0,系統(tǒng)將根據(jù)神經(jīng)網(wǎng)絡(luò)的輸出,做出相應(yīng)的動(dòng)作指令;當(dāng)傳感器的輸入均大于設(shè)定安全值時(shí),神經(jīng)網(wǎng)絡(luò)的輸出均為0,系統(tǒng)不產(chǎn)生任何動(dòng)作指令。

        4 仿真

        本文假設(shè)在機(jī)器人的腳底安裝有力傳感器,左腳的后部、左部和前部各一個(gè),右腳的前部、右部和后部各一個(gè)。依次編號(hào)為pi,i=1,2,Λ 6,構(gòu)成輸入向量

        P=[p1,p2,p3,p4,p5,p6]T

        假設(shè)機(jī)器人的重是100??kgf,當(dāng)機(jī)器人的腳底的傳感器輸出為2kgf,即認(rèn)為機(jī)器人處于危險(xiǎn)狀態(tài)。設(shè)神經(jīng)網(wǎng)絡(luò)感知器的輸入為

        對(duì)應(yīng)的理想輸出為

        即認(rèn)為力傳感器的輸出為2kgf時(shí)機(jī)器人處于危險(xiǎn)狀態(tài),傳感器的輸出為3kgf時(shí),認(rèn)為機(jī)器人處于安全狀態(tài)。連接權(quán)值和閥值的初始值分別是

        經(jīng)過n=1335次迭貸,輸出達(dá)到期望值。連接權(quán)值和閥值分別為

        5 結(jié)論

        本文就提出了一種新的控制方法,它是建立在人工神經(jīng)網(wǎng)絡(luò)感知器上。試驗(yàn)表明,該方法簡(jiǎn)單易行。



        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 沂南县| 无棣县| 鄂温| 延安市| 青龙| 双牌县| 江源县| 裕民县| 屏东市| 东山县| 阳谷县| 勃利县| 达尔| 蕲春县| 梅河口市| 本溪市| 天峨县| 东丰县| 大冶市| 临泽县| 中阳县| 成都市| 碌曲县| 日照市| 榆树市| 罗源县| 安福县| 平顶山市| 科技| 镇原县| 蓝田县| 镇巴县| 思茅市| 南丹县| 虎林市| 平罗县| 太康县| 平泉县| 平乐县| 新安县| 博野县|