摘要:文章主要描述仿生機器蛇的設計,包括機器蛇的結構設計和運動規(guī)劃連貫動作的實現(xiàn)。通過對蛇形機器人在有障礙物和無障礙物環(huán)境中,進行不同連貫動作的運動規(guī)劃和運動形式變化,找出機器人設計的不同側重點;最后,將對本文的不足和實驗時所遇到的困難進行總結,并加以展望。
0 引言
隨著社會的發(fā)展,人類的需要,一些在特定環(huán)境中擁有獨特技巧和能力的機器人應運而生,蛇形機器人就是其中一種。蛇形機器人是根據(jù)蛇的骨骼和運動原理所制造的仿生機器人,憑借其獨特的運動形式和身體結構,應用前景可以說是無可限量。
1 系統(tǒng)總體構成
本文所研究的蛇形機器人采用Solid Snake(SS)機構設計。Solid Snakc利用垂直和水平方向正交的關節(jié)來模擬蛇類生物柔軟的身體,每兩個正交的關節(jié)組成一個單元體,每個單元體相當于一個萬向節(jié),具有兩個方向的自由度,整體形成一個高冗余度的結構體。這樣的機構設計使蛇體具有向任何方向彎曲的能力。其殼體機構、舵機與殼體安裝方式和兩個單元連接方式,即以垂直→水平→垂直的方式相連接,以模仿生物蛇的關節(jié),如圖1所示。
系統(tǒng)總體設計框圖如圖2所示。首先在計算機上測試每個插座對應的舵機,簡而言之就是對號入座,首先找出每個舵機的零點位置,然后編程,將已編寫好的程序下載到控制板里面,通過控制板實現(xiàn)對舵機的直接控制,電源控制板為所有的舵機提供動力,最后經(jīng)過多次的調試仿生機器蛇即可以完成一套連貫的動作。
2 仿生機器蛇的運動規(guī)劃
要想完成仿生機器蛇在現(xiàn)實環(huán)境中自由運動,就需要先對其進行運動力學分析和路徑規(guī)劃。
2.1 仿生機器蛇的運動力學分析
本文所研究的蛇形機器人由垂直方向與水平方向交替連接,依次可以做二維運動。而每個舵機的范圍在-90°~+90°之間。當蛇形機器人在平面上運動時,它的運動示意圖如圖3所示。
(1)平面蜿蜒運動。平面蜿蜒運動是通過控制關節(jié)模塊水平軸的關節(jié)保持直線,而垂直軸的關節(jié)呈正弦變化實現(xiàn);采用的算法公式為:
(2)側向運動。側向運動是控制關節(jié)模塊的垂直軸的關節(jié)和水平軸的關節(jié)都呈正弦變化,兩個曲線之間有一個相位差;采用的算法公式為:
(3)伸縮運動。伸縮運動方式可以通過控制它的垂直軸的關節(jié)保持直線,而水平軸的關節(jié)呈正弦的變化實現(xiàn)。它的垂直面內運動,適合穿越狹小的管道。采用的算法公式為:
(4)翻滾運動。翻滾運動是控制關節(jié)模塊的垂直軸的關節(jié)和水平軸的關節(jié)變化而實現(xiàn),其采用的算法公式為:
2.2 仿生機器蛇的路徑規(guī)劃
所謂的路徑規(guī)劃就是指在障礙物的環(huán)境中,按照某一特定的評價標準,尋找一條從起始狀態(tài)到目標狀態(tài)的不會發(fā)生任何碰撞的路徑。如果把運動物體看作是所研究的問題的某種狀態(tài),把障礙物看成是所要解決的約束條件,無碰撞路徑規(guī)劃就是滿足次約束的解,因此空間路徑規(guī)劃可以描述成求解滿足約束條件的過程。為了更好地理解路徑規(guī)劃,可以將其分解成兩個問題。
(1)尋找空間問題。在某個指定區(qū)域R內,確定物體的安全A位置,使其不與在次空間內的已有物體B發(fā)生碰撞。
(2)尋找路徑問題。在以上指定區(qū)域R內,確定物體A從初始位置到目標位置的安全途徑,使其在移動過程中物體A與物體B不發(fā)生碰撞。
圖4表示的就是在障礙物環(huán)境中物體A在不碰撞物體B的情況下到達指定區(qū)域。
3 仿生機器蛇連貫動作的設計
軟件采用C語言編寫,舵機控制程序進行相應模塊化設計,形成基本動作“積木”單元,組合連貫動作套件包。這些“積木”單元都很容易互相拼接、組裝。用這些“積木”可以很方便地搭建出各種發(fā)揮想象力的機器人,并可為自己搭建出的機器人編程。
3.1 蛇形機器人連貫動作
蛇形機器人的連貫動作主要是將前面幾種運動策略連接而成。圖5所示為蛇形機器人連貫動作結構圖。
3.2 蛇形機器人一爬行運動
蛇形機器人的爬行動作,屬于蛇類的蜿蜒運動,自然界中蛇類的運動都是“S”形的,類似于正弦曲線。由于實驗條件的限制,本研究所做的爬行動作以“弓”形代替。如圖6所示。
以下實驗數(shù)據(jù),表示著蛇形機器人由左“弓”形到右“弓”形時的各個舵機的角度,因為爬行動作并不需要太快,所以速度全都設置為150。這樣每個動作的變化都不是很快,但是相應的蛇形機器人所做的每個動作都很平穩(wěn)。每個動作完成后有2s的延時。爬行運動的程序結構如圖6所示。
3.3 蛇形機器人一翻滾動作
蛇形機器人的翻滾動作屬于蛇類的側向運動。翻滾動作的實現(xiàn)首先要使蛇形機器人有一定的彎曲,然后在固定兩個點,調試其余的舵機,使其可以360°的翻滾,如圖7所示。
3.4 蛇形機器人一盤起、攻擊動作
蛇形機器人盤起、攻擊的動作是比較綜合的一個動作,因為不同的需要,每個動作中每個舵機的速度要求也不一樣。其程序結構如圖8所示。
還有蛇形機器人的其他連貫動作:1)蠕動動作,可以視為蛇類的直線運動,利用這種移動方式可以使蛇形機器人沿著一條直線前進。而且即使改變了外界環(huán)境,也可以根據(jù)環(huán)境,對機器人進行適當?shù)恼{節(jié),適應性強;2)側移動作,利用蛇身扭動與地面產(chǎn)生的摩擦力使整個身體發(fā)生位置的改變,動作簡單,可以通過改變該動作的重復次數(shù)來改變運動方向,即使環(huán)境改變,對蛇形機器人的側移也沒有太大影響。
4 系統(tǒng)的實現(xiàn)
系統(tǒng)實現(xiàn)了三種平臺的仿生機器蛇,如圖9所示:1)基于robotbosic設計的力量型機器蛇,有十四個自由度舵機組成,每個自由度大約1.2cm。能完成諸如扭動、前進、蛇頭上揚等動作。小體積是我們的一大特色,簡化了供電裝置,將電源與舵機經(jīng)過特殊的處理裝置在一起,讓動作更加方便,同時也減少了大量的外遷線,使蛇能更加靈活;2)基于norstar可蠕動前進和盤起攻擊的仿生機器蛇,最終完成了一條14個自由度、長約1.2m的大蛇,一條7個自由度、長約0.6m的小蛇,實現(xiàn)蛇的基本動作,將驅動裝置安裝到蛇身體上,縮小蛇身體體積。實
物如圖8所示。優(yōu)點在于有短信和來電兩個功能,不足之處探測器過于敏感;3)基于arduino設計的迷你型機器蛇,共有八個小舵機組成,共15cm。蛇頭與蛇尾增加泡沫設計使蛇的形象更加逼真。小蛇能夠左右擺動,還能向前蠕動前進。
5 結束語
本文所研制的三種機器人基本是用舵機串聯(lián)而成,結構簡單,連貫動作能舒展完成,但不足是蛇形機器人由十幾個舵機串聯(lián)而成,因為串聯(lián)的舵機數(shù)量太多,導致驅動電流越來越小。建議改進措施有:1)利用一個電流放大電路增大驅動電流;2)由于串聯(lián)的舵機數(shù)越多,驅動電流就越小,所以如果在條件允許的情況下,可以選擇減少幾個舵機;3)將所有舵機并聯(lián),這樣可以使各個部分舵機電壓相同,驅動電流也趨于穩(wěn)定。