專利名稱:一種胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及仿生機(jī)器魚(yú)采用中樞模式發(fā)生器模型協(xié)調(diào)左胸鰭、右胸鰭推進(jìn)的水下
運(yùn)動(dòng)控制方法,屬于仿生學(xué)領(lǐng)域。
背景技術(shù):
中樞模式發(fā)生器(Central Pattern Generator, CPG)是一類存在于在無(wú)脊椎動(dòng) 物和脊椎動(dòng)物的中樞神經(jīng)系統(tǒng)中的神經(jīng)元電路。它能在沒(méi)有節(jié)律性的控制或反饋輸入情況 下產(chǎn)生有節(jié)奏的行為,例如行走、游泳、飛翔、呼吸和咀嚼等。傳統(tǒng)的基于模型的機(jī)器人控制 方法存在建模復(fù)雜、解不唯一、單周期規(guī)劃等問(wèn)題,特別是在需要多自由度協(xié)調(diào)控制的任務(wù) 中,缺乏足夠的實(shí)時(shí)性。由于中樞模式發(fā)生器在協(xié)調(diào)多自由度運(yùn)動(dòng)方面的優(yōu)越性,中樞模式 發(fā)生器仿生控制受到了越來(lái)越多的關(guān)注。 目前用于機(jī)器人控制的比較典型的中樞模式發(fā)生器模型大致可劃分以下三類遞 歸神經(jīng)網(wǎng)絡(luò)、七腮鰻型相位振蕩器和Van der Pol型神經(jīng)元振蕩器。國(guó)際上比較有代表性的 H. Kimura用于四足機(jī)器人的中樞模式發(fā)生器模型屬于第一類;A. J. I jspeet為機(jī)器蠑螈建 立的神經(jīng)控制模型屬于第二類;Van der Pol的神經(jīng)元振蕩器由著名的Van der Pol方程給 出,應(yīng)用于中樞模式發(fā)生器模型中時(shí)考慮了神經(jīng)元相互之間的耦合關(guān)系。然而無(wú)論Kimura 的中樞模式發(fā)生器模型還是Ijspeert的相位振蕩器模型,其方程都具有非線性、強(qiáng)耦合和 高維數(shù)等特點(diǎn),特性復(fù)雜,沒(méi)有明確的解析解,一般通過(guò)數(shù)值方法進(jìn)行求解。方程中涉及的 大量參數(shù)對(duì)運(yùn)動(dòng)模式、運(yùn)動(dòng)穩(wěn)定性、適應(yīng)性等會(huì)產(chǎn)生影響,這給系統(tǒng)運(yùn)動(dòng)特性分析及運(yùn)動(dòng)控 制帶來(lái)了困難。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于中樞模式發(fā)生器模型的仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方 法,以解決具有胸鰭推進(jìn)功能的仿生機(jī)器魚(yú)的三維多模態(tài)運(yùn)動(dòng)控制問(wèn)題。該方法提出了由 輸入飽和函數(shù)、振蕩神經(jīng)元和輸出放大函數(shù)組成的中樞模式發(fā)生器通過(guò)相互耦合構(gòu)成機(jī)器 魚(yú)的運(yùn)動(dòng)控制網(wǎng)絡(luò);并通過(guò)改變?cè)撨\(yùn)動(dòng)控制網(wǎng)絡(luò)的左胸鰭中樞模式發(fā)生器和右胸鰭中樞模 式發(fā)生器的協(xié)調(diào)關(guān)系,從而控制仿生機(jī)器魚(yú)實(shí)現(xiàn)多種模態(tài)運(yùn)動(dòng)。 為達(dá)到上述目的,本發(fā)明的技術(shù)解決方案是提供一種基于中樞模式發(fā)生器模型的 仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,該方法包括步驟如下 步驟1 :利用多個(gè)中樞模式發(fā)生器組成機(jī)器魚(yú)的運(yùn)動(dòng)控制網(wǎng)絡(luò),且每個(gè)中樞模式 發(fā)生器由單個(gè)振蕩神經(jīng)元加上輸入飽和函數(shù)和輸出放大函數(shù)組成; 步驟2 :在每個(gè)中樞模式發(fā)生器中將激勵(lì)信號(hào)d送入第一輸入飽和函數(shù)& (d),第 一輸入飽和函數(shù)fi(d)對(duì)激勵(lì)信號(hào)d進(jìn)行頻率轉(zhuǎn)換,得到中樞模式發(fā)生器的固有頻率"i ;
步驟3 :在每個(gè)中樞模式發(fā)生器中將激勵(lì)信號(hào)d送入第二輸入飽和函數(shù)gi (d),第 二輸入飽和函數(shù)gi (d)對(duì)激勵(lì)信號(hào)d進(jìn)行振幅轉(zhuǎn)換,得到固有振幅nii ;
步驟4 :由每個(gè)中樞模式發(fā)生器中的振蕩神經(jīng)元對(duì)固有頻率"i和固有振幅mi進(jìn)行狀態(tài)變量間的相互抑制以及振蕩神經(jīng)元間的耦合處理,生成膜電勢(shì)信號(hào)Xi,其中o ,控制 膜電勢(shì)信號(hào)Xi的頻率,mi控制膜電勢(shì)信號(hào)Xi的幅值; 步驟5 :將膜電勢(shì)信號(hào)Xi送入輸出放大函數(shù)hi(Xi),輸出放大函數(shù)hi(Xi)對(duì)膜電勢(shì) 信號(hào)Xi進(jìn)行比例放大和限幅處理,生成突觸連接信號(hào)x' i ; 步驟6 :將突觸連接信號(hào)x' i送入胸鰭的舵機(jī)上,驅(qū)動(dòng)減速齒輪組,使胸鰭驅(qū)動(dòng)軸 的轉(zhuǎn)速提高,使舵機(jī)擺動(dòng)在0-360度范圍進(jìn)行擴(kuò)大,從而使胸鰭驅(qū)動(dòng)軸帶動(dòng)胸鰭在0-360度 范圍內(nèi)作往復(fù)運(yùn)動(dòng),從而控制仿生機(jī)器魚(yú)實(shí)現(xiàn)運(yùn)動(dòng)模態(tài)。 本發(fā)明針對(duì)具有高頻擺動(dòng)的胸鰭推進(jìn)型仿生機(jī)器魚(yú),提出了一種由輸入飽和函 數(shù)、振蕩神經(jīng)元和輸出放大函數(shù)組成的中樞模式發(fā)生器通過(guò)相互耦合構(gòu)成機(jī)器魚(yú)的運(yùn)動(dòng)控 制網(wǎng)絡(luò)。輸入飽和函數(shù)的形式直接決定輸入激勵(lì)對(duì)運(yùn)動(dòng)控制網(wǎng)絡(luò)輸出的影響,作用至關(guān)重 要,飽和函數(shù)的形式使得各個(gè)中樞模式發(fā)生器能根據(jù)需要起振,從而決定是否參與網(wǎng)絡(luò)控 制;采用基于極限環(huán)的振蕩神經(jīng)元使得系統(tǒng)具有很強(qiáng)的適應(yīng)性、魯棒性和穩(wěn)定性;輸出放 大函數(shù)帶有限幅環(huán)節(jié),限制了該運(yùn)動(dòng)控制網(wǎng)絡(luò)對(duì)機(jī)械本體的沖擊,起到了保護(hù)作用。運(yùn)動(dòng)控 制網(wǎng)絡(luò)中的中樞模式發(fā)生器輸出的突觸連接信號(hào)x' i的頻率由固有頻率"i控制,其幅值 由固有幅值mi控制,參數(shù)意義明晰,調(diào)節(jié)方便。利用該運(yùn)動(dòng)控制網(wǎng)絡(luò),并結(jié)合仿生機(jī)器魚(yú)的 游動(dòng)機(jī)理,實(shí)現(xiàn)了包括起動(dòng)、停止、前進(jìn)、后退、左轉(zhuǎn)彎、右轉(zhuǎn)彎、加速、減速、上升、下潛、后退 中轉(zhuǎn)彎等多種模態(tài)的運(yùn)動(dòng)控制。本發(fā)明將為胸鰭驅(qū)動(dòng)的仿生機(jī)器魚(yú)的理論設(shè)計(jì)提供參考, 并實(shí)現(xiàn)靈活、機(jī)動(dòng)的游動(dòng)控制,可以實(shí)際應(yīng)用于水下微小型機(jī)器人的設(shè)計(jì)、水下勘探、水下 救撈、水下設(shè)施維護(hù)與巡檢、水質(zhì)檢測(cè)及水域巡邏與警戒等方面。
圖1是仿生機(jī)器魚(yú)的胸鰭推進(jìn)機(jī)構(gòu)示意圖; 圖2是基于中樞模式發(fā)生器的運(yùn)動(dòng)控制網(wǎng)絡(luò)示意圖; 圖3a_圖3g是胸鰭推進(jìn)型仿生機(jī)器魚(yú)三維多模態(tài)運(yùn)動(dòng)示意圖; 圖4是胸鰭推進(jìn)型仿生機(jī)器魚(yú)控制系統(tǒng)硬件結(jié)構(gòu)示意具體實(shí)施例方式
下面結(jié)合附圖對(duì)基于中樞模式發(fā)生器模型的胸鰭推進(jìn)型仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制 方法做出說(shuō)明。 如圖2示出本發(fā)明為一種胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,基于中樞模式發(fā)生 器模型,提出了由輸入飽和函數(shù)、振蕩神經(jīng)元和輸出放大函數(shù)組成的中樞模式發(fā)生器通過(guò) 相互耦合構(gòu)成機(jī)器魚(yú)的運(yùn)動(dòng)控制網(wǎng)絡(luò);并通過(guò)改變?cè)撨\(yùn)動(dòng)控制網(wǎng)絡(luò)的左胸鰭中樞模式發(fā)生 器和右胸鰭中樞模式發(fā)生器的協(xié)調(diào)關(guān)系,從而控制仿生機(jī)器魚(yú)實(shí)現(xiàn)多種模態(tài)運(yùn)動(dòng)。
中樞模式發(fā)生器 所述的仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,利用多個(gè)中樞模式發(fā)生器組成機(jī)器魚(yú)的運(yùn)動(dòng) 控制網(wǎng)絡(luò),且每個(gè)中樞模式發(fā)生器由單個(gè)振蕩神經(jīng)元加上輸入飽和函數(shù)和輸出放大函數(shù)組 成;其中輸入飽和函數(shù)包括第一輸入飽和函數(shù)fi(d)和第二輸入飽和函數(shù)gi(d)。所述第一 輸入飽和函數(shù)& (d),如下表示
=<formula>formula see original document page 6</formula>
是頻率系數(shù);^
<formula>formula see original document page 6</formula>ib是頻率偏移值;
dis是第i個(gè)振蕩神經(jīng)元的輸入激勵(lì)截止值,dimax是第
。ax是頻率最大值;w is是頻率截止值; i個(gè)振蕩神經(jīng)元的輸入激勵(lì)最大允許 所述的第一輸入飽和函數(shù)& (d)的處理過(guò)程如下在每個(gè)中樞模式發(fā)生器中將激 勵(lì)信號(hào)d送入第一輸入飽和函數(shù)& (d),第一輸入飽和函數(shù)f i (d)對(duì)激勵(lì)信號(hào)d進(jìn)行頻率轉(zhuǎn) 換,得到中樞模式發(fā)生器的固有頻率"i ;
所述的第二輸入飽和函數(shù)gi (d),如下表示
w,max "》《max
A;,"V^ + m,b《s 2t/<《max , w,s 0 " <《 其中km是幅值系數(shù);mib是幅值偏移值;mimax是幅值最大值;mis是幅值截止值。
所述的第二輸入飽和函數(shù)gi (d)的處理過(guò)程如下在每個(gè)中樞模式發(fā)生器中將激 勵(lì)信號(hào)d送入第二輸入飽和函數(shù)gi (d),第二輸入飽和函數(shù)gi (d)對(duì)激勵(lì)信號(hào)d進(jìn)行振幅轉(zhuǎn) 換,得到固有振幅mi ; 所述的振蕩神經(jīng)元包括多只左胸鰭振蕩神經(jīng)元、多只右胸鰭振蕩神經(jīng)元,所述的 任意一個(gè)振蕩神經(jīng)元是基于極限環(huán)的振蕩神經(jīng)元,如下表示為
A = U, - ('", _ x,2 -少,)+ S ^ 式中i = 1,…,n,n表示振蕩神經(jīng)元的個(gè)數(shù),Xi表示振蕩神經(jīng)元的膜電勢(shì),yi表示 振蕩神經(jīng)元的調(diào)節(jié)電勢(shì);表示振蕩神經(jīng)元的固有頻率,叫表示振蕩神經(jīng)元的固有幅值; aj、 bk表示振蕩神經(jīng)元間的耦合系數(shù); 所述的振蕩神經(jīng)元的處理過(guò)程如下由每個(gè)中樞模式發(fā)生器中的振蕩神經(jīng)元對(duì)固 有頻率co ,和固有振幅mi進(jìn)行狀態(tài)變量間的相互抑制以及振蕩神經(jīng)元間的耦合處理,生成 膜電勢(shì)信號(hào)&,其中"i控制膜電勢(shì)信號(hào)Xi的頻率,mi控制膜電勢(shì)信號(hào)Xi的幅值;
所述的輸出放大函數(shù)hi (Xi),如下表示
<formula>formula see original document page 6</formula> 其中xib為輸出偏移量,ki為輸出比例系數(shù),ximax為輸出最大允許值。 所述的輸出放大函數(shù)hi(Xi)處理過(guò)程如下將膜電勢(shì)信號(hào)Xi送入輸出放大函數(shù)
hi (Xi),輸出放大函數(shù)h (Xi)對(duì)膜電勢(shì)信號(hào)Xi進(jìn)行比例放大和限幅處理,生成突觸連接信號(hào) <formula>formula see original document page 6</formula> 中樞模式發(fā)生器間的相互耦合與協(xié)調(diào)
在自然界,魚(yú)類的胸鰭通常只起身體平衡,輔助加、減速以及協(xié)調(diào)運(yùn)動(dòng)方向的作 用,很少當(dāng)作游動(dòng)的主要控制面。但胸鰭推進(jìn)型仿生機(jī)器魚(yú)中的胸鰭是作為主要推進(jìn)裝置 的,其推進(jìn)過(guò)程中左、右胸鰭的協(xié)調(diào)關(guān)系也會(huì)隨著運(yùn)動(dòng)模態(tài)而變化,比如在向前游動(dòng)和轉(zhuǎn)彎 過(guò)程中,左、右胸鰭產(chǎn)生的推進(jìn)力是不一樣的。因此,左、右胸鰭具體的協(xié)調(diào)關(guān)系視運(yùn)動(dòng)模態(tài) 而定。 所述的仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,中樞模式發(fā)生器間相互耦合,其耦合由中樞 模式發(fā)生器里的振蕩神經(jīng)元間耦合來(lái)完成,耦合關(guān)系分別由 t 。J,和t ^A表示。當(dāng)t ",少,〉0時(shí),其它中樞模式發(fā)生器將增強(qiáng)第i個(gè)中
-/ = 1 W &=1,々#/ pi,./-/
樞模式發(fā)生器的突觸連接信號(hào)x' i ;當(dāng)Z ",乂 <0時(shí),其它中樞模式發(fā)生器將抑制第i 中樞模式發(fā)生器的突觸連接信號(hào)x' 1;當(dāng)£ 力^^時(shí),其它中樞模式發(fā)生器將對(duì)第i
水
水
中樞模式發(fā)生器的突觸連接信號(hào)x' i無(wú)影響。 中樞模式發(fā)生器間相互協(xié)調(diào),協(xié)調(diào)關(guān)系反應(yīng)在輸出偏移量xib和輸出比例系數(shù)k 上。改變了第i個(gè)中樞模式發(fā)生器的輸出偏移量xib和輸出比例系數(shù)ki,也就改變了第i 中樞模式發(fā)生器與其它中樞模式發(fā)生器的關(guān)系,從而會(huì)改變它們所作用的相應(yīng)胸鰭往復(fù)擺 動(dòng)的中心位置和擺幅大小。
仿生機(jī)器魚(yú)的胸鰭推進(jìn)機(jī)構(gòu)及控制 所述的仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,圖1給出了采用本發(fā)明方法的一實(shí)施例使用 的仿生機(jī)器魚(yú)的胸鰭機(jī)構(gòu)示意圖,包括一對(duì)在仿生機(jī)器魚(yú)頭部左右兩側(cè)對(duì)稱安裝的胸鰭 機(jī)構(gòu),其往復(fù)擺動(dòng)可驅(qū)動(dòng)仿生機(jī)器魚(yú)進(jìn)行三維多模態(tài)運(yùn)動(dòng);所述的胸鰭機(jī)構(gòu),是由左胸鰭 7、右胸鰭1通過(guò)左齒輪組6和右齒輪組2與相應(yīng)的驅(qū)動(dòng)軸3和驅(qū)動(dòng)軸5相連;齒輪組的使 用相當(dāng)重要,它將胸鰭的往復(fù)擺動(dòng)速度降低下來(lái),但力矩提升上去了,而且擴(kuò)大了胸鰭的擺 動(dòng)角度范圍,使得胸鰭可以在0-360度的范圍內(nèi)擺動(dòng),這為倒退運(yùn)動(dòng)奠定了機(jī)構(gòu)基礎(chǔ)。左胸 鰭、右胸鰭分別采用高速舵機(jī)9和高速舵機(jī)10驅(qū)動(dòng),獨(dú)立驅(qū)動(dòng)使得轉(zhuǎn)彎更容易實(shí)現(xiàn)。為了 使胸鰭對(duì)稱的安裝在仿生機(jī)器魚(yú)的兩側(cè),驅(qū)動(dòng)軸3和5必須同心。整個(gè)機(jī)構(gòu)都固定在固定 架4上。為了防水,設(shè)計(jì)了軸密封裝置8和軸密封裝置13,里面裝有潤(rùn)滑機(jī)油。高速舵機(jī)的 速度達(dá)O. 06s/60° 。 所述的仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,將中樞模式發(fā)生器輸出的突觸連接信號(hào)x' i 送入胸鰭的舵機(jī)上,驅(qū)動(dòng)減速齒輪組,使胸鰭驅(qū)動(dòng)軸的轉(zhuǎn)速提高,使舵機(jī)擺動(dòng)在0-360度范 圍進(jìn)行擴(kuò)大,從而使胸鰭驅(qū)動(dòng)軸帶動(dòng)胸鰭在0-360度范圍內(nèi)作往復(fù)運(yùn)動(dòng),從而控制仿生機(jī) 器魚(yú)實(shí)現(xiàn)運(yùn)動(dòng)模態(tài)。 基于中樞模式發(fā)生器模型的控制系統(tǒng)硬件及軟件實(shí)現(xiàn) 基于中樞模式發(fā)生器模型的控制系統(tǒng)其關(guān)鍵點(diǎn)在于中樞模式發(fā)生器的在線計(jì)算, 由于本發(fā)明所采用的中樞模式發(fā)生器模型,利用一類能產(chǎn)生穩(wěn)定極限環(huán)的簡(jiǎn)單非線性微分 方程組來(lái)表示其振蕩神經(jīng)元,這大大簡(jiǎn)化了中樞模式發(fā)生器的參數(shù)量及在線計(jì)算量。此外, 中樞模式發(fā)生器模型的輸出的突觸連接信號(hào)x' i,參數(shù)意義明晰,調(diào)節(jié)方便簡(jiǎn)單,這給程序 編寫和計(jì)算帶來(lái)了方便。 一種比較簡(jiǎn)便的實(shí)現(xiàn)方法就是采用簡(jiǎn)單疊加法,方法如下
將公式(1-1)離散化,得如下公式 x, (A: + l)-x,'、
+ i)—乂
A71
.、
附,
x,」
X」
乂1
1 +
| +
S v、( 由上式計(jì)算可得Xi(k+l)。再將輸出放大函數(shù)離散化計(jì)算出突觸連接信號(hào) x' i(k+l),即可控制左胸鰭舵機(jī)和右胸鰭舵機(jī)。該方法控制舵機(jī),計(jì)算耗時(shí)短,內(nèi)存小,控 制響應(yīng)及時(shí),輸出平滑。 胸鰭推進(jìn)型仿生機(jī)器魚(yú)控制系統(tǒng)的軟件包含主程序、中斷處理子程序、模擬量輸 入處理子程序、中樞模式發(fā)生器在線計(jì)算子程序、無(wú)線收發(fā)子程序等部分。其中主程序負(fù)責(zé) 芯片及外圍設(shè)備的初始化、開(kāi)中斷;中斷處理子程序處理P麗波形產(chǎn)生;模擬量輸入處理子 程序負(fù)責(zé)深度信息的接收與處理;中樞模式發(fā)生器在線計(jì)算子程序負(fù)責(zé)中樞模式發(fā)生器的 在線產(chǎn)生;無(wú)線收發(fā)子程序則負(fù)責(zé)數(shù)據(jù)收發(fā),聯(lián)系上位控制器。
三維多模態(tài)運(yùn)動(dòng)控制 所述的仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,應(yīng)用于仿生機(jī)器魚(yú),進(jìn)行水下游動(dòng)實(shí)驗(yàn),可實(shí) 現(xiàn)包括起動(dòng)、停止、前進(jìn)、后退、左轉(zhuǎn)彎、右轉(zhuǎn)彎、加速、減速、上升、下潛、后退中轉(zhuǎn)彎等多種 運(yùn)動(dòng)模態(tài),其具體實(shí)施例如下
向前游動(dòng) 圖3a_圖3g給出了胸鰭推進(jìn)型仿生機(jī)器魚(yú)的水下游動(dòng)控制示意圖。在仿生機(jī)器 魚(yú)的胸鰭所在位置建立如圖3a所示的坐標(biāo)系,其中x軸沿水平方向由魚(yú)頭指向魚(yú)尾,y軸 與之垂直成90。。 如圖3b所示,左胸鰭中樞模式發(fā)生器和右胸鰭中樞模式發(fā)生器相互耦合,當(dāng)左胸 鰭中樞模式發(fā)生器、右胸鰭中樞模式發(fā)生器在Ab = x2b = 0即中間位置在水平x軸上且 ="2、mi =化、ki = k2、 Ximx = 時(shí)進(jìn)行振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左胸鰭、右胸鰭將產(chǎn)
生水平向前的推進(jìn)合力,推動(dòng)仿生機(jī)器魚(yú)向前游動(dòng)。 在上述前進(jìn)情況下,若# "2或n^ # m2且差異足夠大時(shí),左胸鰭、右胸鰭產(chǎn)生 的推進(jìn)力的大小不等,會(huì)產(chǎn)生一個(gè)轉(zhuǎn)彎力矩,導(dǎo)致仿生機(jī)器魚(yú)的游動(dòng)不平衡,從而產(chǎn)生前進(jìn) 轉(zhuǎn)彎行為。 左轉(zhuǎn)彎及右轉(zhuǎn)彎 所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,第一種轉(zhuǎn)彎?rùn)C(jī)制 當(dāng)左胸鰭位置偏移角為零且右胸鰭位置偏移角為時(shí),左胸鰭振蕩神經(jīng)元和右
胸鰭振蕩神經(jīng)元以相同相位、相同頻率、相同幅值進(jìn)行振蕩輸出膜電勢(shì)信號(hào)Xi,此時(shí)仿生機(jī)
器魚(yú)左胸鰭和右胸鰭將產(chǎn)生向右轉(zhuǎn)彎的合力矩,推動(dòng)仿生機(jī)器魚(yú)右轉(zhuǎn)彎;當(dāng)左胸鰭位置偏 移角為n且右胸鰭位置偏移角為零時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相
位、相同頻率、相同幅值進(jìn)行振蕩輸出膜電勢(shì)信號(hào)Xi,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)
生向左轉(zhuǎn)彎的合力矩,推動(dòng)仿生機(jī)器魚(yú)左轉(zhuǎn)彎。 所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,第二種轉(zhuǎn)彎?rùn)C(jī)制 當(dāng)左胸鰭位置偏移角和右胸鰭位置偏移角均為零時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭 振蕩神經(jīng)元以相同相位且不同頻率或不同幅值進(jìn)行振蕩輸出膜電勢(shì)信號(hào)、,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生轉(zhuǎn)彎的合力矩,推動(dòng)仿生機(jī)器魚(yú)轉(zhuǎn)彎。當(dāng)左胸鰭振蕩的頻率或幅 值大于右胸鰭振蕩的頻率或幅值時(shí),此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生向右轉(zhuǎn)彎的合 力矩,推動(dòng)仿生機(jī)器魚(yú)右轉(zhuǎn)彎;當(dāng)左胸鰭振蕩的頻率或幅值小于右胸鰭振蕩的頻率或幅值 時(shí),此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生向左轉(zhuǎn)彎的合力矩,推動(dòng)仿生機(jī)器魚(yú)左轉(zhuǎn)彎。
下潛運(yùn)動(dòng)及上升運(yùn)動(dòng) 所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,當(dāng)左胸鰭位置偏移角和右胸鰭位置偏
移角均在
0,U內(nèi)且大小相等時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相
同頻率、相同幅值進(jìn)行振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生一個(gè)方向垂直向
下的推進(jìn)分力,推動(dòng)仿生機(jī)器魚(yú)下潛運(yùn)動(dòng);當(dāng)左胸鰭位置偏移角和右胸鰭位置偏移角均在
、
2
,0
內(nèi)且大小相等時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相同頻率、
相同幅值進(jìn)行振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生一個(gè)方向垂直向上的推進(jìn) 分力,推動(dòng)仿生機(jī)器魚(yú)上升運(yùn)動(dòng)。 如圖3c所示,當(dāng)左、右胸鰭中樞模式發(fā)生器在x,b =x2b
0,
2
即胸鰭中間位置在
"且
"m,
x2max時(shí)進(jìn)行振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左胸鰭、
右胸鰭將產(chǎn)生一垂直向下的推進(jìn)分力,推動(dòng)仿生機(jī)器魚(yú)下潛運(yùn)動(dòng);
如圖3d所示,當(dāng)左、右胸鰭中樞模式發(fā)生器在& =x2b e -;,O即胸鰭中間位置
V 2 乂
在
,o
且
m2、 k丄=k2、 x!
x2max時(shí)進(jìn)行振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左
胸鰭、右胸鰭將產(chǎn)生一垂直向上的推進(jìn)分力,推動(dòng)仿生機(jī)器魚(yú)上升運(yùn)動(dòng)。
倒退游動(dòng) 所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,當(dāng)左胸鰭位置偏移角和右胸鰭位置偏 移角均為n時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相同頻率、相同幅值
進(jìn)行振蕩輸出膜電勢(shì)信號(hào)Xi,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生水平向后的推進(jìn)合
力,推動(dòng)仿生機(jī)器魚(yú)倒退游動(dòng)。 如圖3e所示,當(dāng)xlb = x2b = Ji 、"工="2、叫=m2、 、 = k2、 xlMX = x2mx時(shí)進(jìn)行 振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左胸鰭、右胸鰭將產(chǎn)生一個(gè)向后的合力,推動(dòng)仿生機(jī)器魚(yú)倒退游 動(dòng); 在上述倒退情況下,若# "2或n^ # m2且差異足夠大時(shí),左胸鰭、右胸鰭產(chǎn)生 的推進(jìn)力的大小不等,會(huì)產(chǎn)生一個(gè)轉(zhuǎn)彎力矩,導(dǎo)致仿生機(jī)器魚(yú)的游動(dòng)不平衡,從而產(chǎn)生后退 轉(zhuǎn)彎行為。 圖3f和圖3g所示的是后退游動(dòng)過(guò)程中的上升和下潛運(yùn)動(dòng),此時(shí)胸鰭擺動(dòng)的中間 位置不在水平x軸上;圖3f的胸鰭擺動(dòng)的中間位置在x軸上方,會(huì)產(chǎn)生向下的推進(jìn)力,因而 會(huì)推動(dòng)仿生機(jī)器魚(yú)倒退中下潛運(yùn)動(dòng);圖3g的胸鰭擺動(dòng)的中間位置在x軸下方,會(huì)產(chǎn)生向上 的推進(jìn)力,因而會(huì)推動(dòng)仿生機(jī)器魚(yú)倒退中上升運(yùn)動(dòng);
9
如上所述,本發(fā)明所提出的基于中樞模式發(fā)生器模型的仿生機(jī)器魚(yú)的運(yùn)動(dòng)控制方 法對(duì)具有胸鰭結(jié)構(gòu)的仿生機(jī)器魚(yú)有良好的適用性,可實(shí)現(xiàn)仿生機(jī)器魚(yú)的三維多模態(tài)運(yùn)動(dòng)。
下面是利用本發(fā)明的方法,實(shí)現(xiàn)如圖4示出的胸鰭推進(jìn)型仿生機(jī)器魚(yú)控制系統(tǒng), 該系統(tǒng)的硬件結(jié)構(gòu)圖4示意,其硬件結(jié)構(gòu)包含以下部分電池及電源模塊、左紅外傳感器、 右紅外傳感器、前紅外傳感器、深度傳感器、無(wú)線收發(fā)模塊、ATMegal28核心PCB、左胸鰭舵 機(jī)、右胸鰭舵機(jī)等。電池采用7. 4V鋰聚合物電池,通過(guò)電源模塊進(jìn)行處理后變成5V后為 左紅外傳感器、右紅外傳感器、前紅外傳感器、深度傳感器、無(wú)線收發(fā)模塊、ATMegal28核心 PCB等提供電源。左紅外傳感器、右紅外傳感器、前紅外傳感器分別采集障魚(yú)體左、右、前三 方礙物信息變成電信號(hào)送給ATMegal28核心PCB。深度傳感器采集仿生機(jī)器魚(yú)的在水中的 深度信息,以模擬量傳輸給ATMegal28核心PCB。ATMegal28核心PCB接收了左紅外傳感器、 右紅外傳感器、前紅外傳感器和深度傳感器等信息后,進(jìn)行濾波處理及標(biāo)度轉(zhuǎn)換,同時(shí)在線
計(jì)算中樞模式發(fā)生器的突觸連接信號(hào)x' i(k+l),然后產(chǎn)生脈寬調(diào)制信號(hào)控制左胸鰭舵機(jī)
和右胸鰭舵機(jī);同時(shí)ATMegal28核心PCB與無(wú)線收發(fā)模塊交換數(shù)據(jù),通過(guò)無(wú)線收發(fā)模塊與上 位控制器之間的無(wú)線收發(fā)數(shù)據(jù),完成上位控制器傳來(lái)的命令,從而控制仿生機(jī)器魚(yú)游動(dòng)。
盡管對(duì)本發(fā)明的原理結(jié)合實(shí)施例進(jìn)行了展示和描述,但本領(lǐng)域技術(shù)人員將會(huì)理解 在不偏離本發(fā)明的原理和實(shí)質(zhì)的情況下,對(duì)這些實(shí)施例進(jìn)行改變,如胸鰭的形狀、主控制器 CPU的型號(hào)等,其范圍也落入本發(fā)明的權(quán)利要求及其等同物所限定的范圍內(nèi)。
10
權(quán)利要求
一種胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,該方法包括步驟如下步驟1利用多個(gè)中樞模式發(fā)生器組成機(jī)器魚(yú)的運(yùn)動(dòng)控制網(wǎng)絡(luò),且每個(gè)中樞模式發(fā)生器由單個(gè)振蕩神經(jīng)元加上輸入飽和函數(shù)和輸出放大函數(shù)組成;步驟2在每個(gè)中樞模式發(fā)生器中將激勵(lì)信號(hào)d送入第一輸入飽和函數(shù)fi(d),第一輸入飽和函數(shù)fi(d)對(duì)激勵(lì)信號(hào)d進(jìn)行頻率轉(zhuǎn)換,得到中樞模式發(fā)生器的固有頻率ωi;步驟3在每個(gè)中樞模式發(fā)生器中將激勵(lì)信號(hào)d送入第二輸入飽和函數(shù)gi(d),第二輸入飽和函數(shù)gi(d)對(duì)激勵(lì)信號(hào)d進(jìn)行振幅轉(zhuǎn)換,得到固有振幅mi;步驟4由每個(gè)中樞模式發(fā)生器中的振蕩神經(jīng)元對(duì)固有頻率ωi和固有振幅mi進(jìn)行狀態(tài)變量間的相互抑制以及振蕩神經(jīng)元間的耦合處理,生成膜電勢(shì)信號(hào)xi,其中ωi控制膜電勢(shì)信號(hào)xi的頻率,mi控制膜電勢(shì)信號(hào)xi的幅值;步驟5將膜電勢(shì)信號(hào)xi送入輸出放大函數(shù)hi(xi),輸出放大函數(shù)hi(xi)對(duì)膜電勢(shì)信號(hào)xi進(jìn)行比例放大和限幅處理,生成突觸連接信號(hào)x′i;步驟6將突觸連接信號(hào)x′i送入胸鰭的舵機(jī)上,驅(qū)動(dòng)減速齒輪組,使胸鰭驅(qū)動(dòng)軸的轉(zhuǎn)速提高,使舵機(jī)擺動(dòng)在0-360度范圍進(jìn)行擴(kuò)大,從而使胸鰭驅(qū)動(dòng)軸帶動(dòng)胸鰭在0-360度范圍內(nèi)作往復(fù)運(yùn)動(dòng),從而控制仿生機(jī)器魚(yú)實(shí)現(xiàn)運(yùn)動(dòng)模態(tài)。
2. 根據(jù)權(quán)利要求1所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,所述振蕩神經(jīng)元包括多只左胸鰭振蕩神經(jīng)元、多只右胸鰭振蕩神經(jīng)元,所述的任意一個(gè)振蕩神經(jīng)元 是基于極限環(huán)的振蕩神經(jīng)元,如下表示為<formula>formula see original document page 2</formula>式中i = 1,…,n, n表示振蕩神經(jīng)元的個(gè)數(shù),Xi表示振蕩神經(jīng)元的膜電勢(shì),yi表示振 蕩神經(jīng)元的調(diào)節(jié)電勢(shì);"i表示振蕩神經(jīng)元的固有頻率,mi表示振蕩神經(jīng)元的固有幅值;aj、 bk表示振蕩神經(jīng)元間的耦合系數(shù)。
3. 根據(jù)權(quán)利要求1所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,所述第一 輸入飽和函數(shù)& (d),如下表示<formula>formula see original document page 2</formula>其中k。是頻率系數(shù);"ib是頻率偏移值;"imax是頻率最大值;"is是頻率截止值;dis 是第i個(gè)振蕩神經(jīng)元的輸入激勵(lì)截止值,dimax是第i個(gè)振蕩神經(jīng)元的輸入激勵(lì)最大允許值。
4. 根據(jù)權(quán)利要求1所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,所述第二 輸入飽和函數(shù)gi (d),如下表示<formula>formula see original document page 2</formula>其中km是幅值系數(shù);mib是幅值偏移值;mimax是幅值最大值;mis是幅值截止值。
5. 根據(jù)權(quán)利要求1所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,輸出放大 函數(shù)hi (X》,如下表示:<formula>formula see original document page 3</formula>其中xib為輸出偏移量,b為輸出比例系數(shù),ximax為輸出最大允許值。
6. 根據(jù)權(quán)利要求2所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,當(dāng)左胸鰭 位置偏移角為零且右胸鰭位置偏移角為n時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相同頻率、相同幅值進(jìn)行振蕩輸出膜電勢(shì)信號(hào)Xi,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生向右轉(zhuǎn)彎的合力矩,推動(dòng)仿生機(jī)器魚(yú)右轉(zhuǎn)彎;當(dāng)左胸鰭位置偏移角為n且右胸 鰭位置偏移角為零時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相同頻率、相同幅值進(jìn)行振蕩輸出膜電勢(shì)信號(hào)Xi,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生向左轉(zhuǎn)彎的合力矩,推動(dòng)仿生機(jī)器魚(yú)左轉(zhuǎn)彎。
7. 根據(jù)權(quán)利要求2所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,當(dāng)左胸鰭 位置偏移角和右胸鰭位置偏移角均為n時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相同頻率、相同幅值進(jìn)行振蕩輸出膜電勢(shì)信號(hào)Xi,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生水平向后的推進(jìn)合力,推動(dòng)仿生機(jī)器魚(yú)倒退游動(dòng)。
8. 根據(jù)權(quán)利要求2所述的胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,其特征在于,當(dāng)左胸鰭位置偏移角和右胸鰭位置偏移角均在內(nèi)且大小相等時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相同頻率、相同幅值進(jìn)行振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸^A&一A方向垂直向下的推進(jìn)分力,推動(dòng)仿生機(jī)器魚(yú)下潛運(yùn)動(dòng);當(dāng)左胸鰭位置偏移角鰭將產(chǎn)生-和右胸鰭位置偏移角均在-三,o 內(nèi)且大小相等時(shí),左胸鰭振蕩神經(jīng)元和右胸鰭振蕩神經(jīng)元以相同相位、相同頻率、相同幅值進(jìn)行振蕩輸出,此時(shí)仿生機(jī)器魚(yú)左胸鰭和右胸鰭將產(chǎn)生 一個(gè)方向垂直向上的推進(jìn)分力,推動(dòng)仿生機(jī)器魚(yú)上升運(yùn)動(dòng)。
全文摘要
本發(fā)明為一種胸鰭推進(jìn)型機(jī)器魚(yú)的運(yùn)動(dòng)控制方法,利用多個(gè)中樞模式發(fā)生器組成機(jī)器魚(yú)的運(yùn)動(dòng)控制網(wǎng)絡(luò),且每個(gè)中樞模式發(fā)生器由單個(gè)振蕩神經(jīng)元加上輸入飽和函數(shù)和輸出放大函數(shù)組成;將激勵(lì)信號(hào)送入第一輸入飽和函數(shù)和第二輸入飽和函數(shù),第一輸入飽和函數(shù)對(duì)激勵(lì)信號(hào)進(jìn)行頻率轉(zhuǎn)換得到中樞模式發(fā)生器的固有頻率;第二輸入飽和函數(shù)對(duì)激勵(lì)信號(hào)進(jìn)行振幅轉(zhuǎn)換得到固有振幅;對(duì)固有頻率和固有振幅進(jìn)行狀態(tài)變量間的相互抑制以及振蕩神經(jīng)元間的耦合處理,生成膜電勢(shì)信號(hào),將膜電勢(shì)信號(hào)送入輸出放大函數(shù),輸出放大函數(shù)對(duì)膜電勢(shì)信號(hào)進(jìn)行比例放大和限幅處理,生成并將突觸連接信號(hào)送入胸鰭的舵機(jī)上,從而使胸鰭驅(qū)動(dòng)軸帶動(dòng)胸鰭在0-360度范圍內(nèi)作往復(fù)運(yùn)動(dòng)。
文檔編號(hào)G06N3/02GK101776863SQ20091023778
公開(kāi)日2010年7月14日 申請(qǐng)日期2009年11月17日 優(yōu)先權(quán)日2009年11月17日
發(fā)明者喻俊志, 汪明, 蘇宗帥, 譚民 申請(qǐng)人:中國(guó)科學(xué)院自動(dòng)化研究所