天天看點

小狗

原文位址:http://www.dfrobot.com.cn/community/thread-13199-1-1.html M國軍方已決定向阿富汗派遣一種名為“大狗”的新型機器人,作為增兵計劃的一部分。與以往各種機器人不同的是,“大狗”并不依靠輪子行進,而是通過其身下的四條“鐵腿”。美軍将阿富汗作為測試這種具有高機動能力的四足仿生機器人的試驗場,開始試驗這款機器人與士兵協同作戰的性能。        多足步行機器人是上世紀中葉提出的一種新型的機器人,憑借其在軍事偵察、科學探索、災難營救、生活娛樂等方面廣泛的應用前景,使得這種機器人在幾十年的發展中,成為國内外諸多科研團隊的研究對象。四足步行機器人在複雜、未知的自然環境中的适應能力明顯大于輪式和履帶式移動機器人,它僅需要有限的支撐點就可以進行作業,而且在近年來的研究中四足步行機器人向着小型化、智能化、仿生等發面發展。       本文提出了一種四足仿生步行機器人及其控制政策方法。通過運動學、動力學、步态及穩定性分析不斷優化步态分析,在結構上機器人腿部采用3D列印件,其中驅動是利用舵機控制。

小狗

        聖誕的鐘聲即将敲響——送給朋友的聖誕節禮物        當聖潔的雪花飄落

當鈴兒叮當輕響

當鹿兒腳步歡暢

我輕聲對你哼唱

朋友聖誕快樂

新的一年即将來臨

願你幸福安康

當聖誕的鐘聲敲響

當燦爛的禮花綻放

當白胡子的老人來到窗下

我把對你的祝福委托于他

當你明天醒來

襪子放在枕畔

裡面裝滿我真祝的心願

朋友,聖誕快樂

小狗

  二、視訊介紹       腳類動物運動其本質是移動重心,一般四肢動物的行是有一定的規律的。以馬為例,開始起步時如果是右前足先向前開步,對角線的左足就會跟着向前走,接着是左前足向前走,再就是右足跟着向前走,這樣就完成一個循環。此四足機器人是有10個自由度的,其中1個是頭部自由度、另一個是腰部自由度,還有8個是腿部自由度。每條腿是兩個自由度,這樣就可以比較輕松的擡起來和放下去,是靠靜摩擦不是靠動摩擦前進,這樣就比較好的模拟動物行走的步态。在每條腿行走的過程中,利用身體的平衡把重心向前移動。                三、步态分析

小狗

步态分析是一種對動物肢體運動的系統研究即是指人或動物通過肢體運動并前進的一種周期性的形式和樣子。(如行走,奔跑,腳步移動等)。 步态就是描述人走路特點的一種周期性現象,并且每個周期可以被分為多個部分進行分析。   (一)、踢類四肢動物  

小狗

  1.  踢類動物較掌類動物穩定性較差,是以一般行走的話是三隻腳着地。 因為需要三條腿進行支援,也就是需要三角形進行平衡。先擡起右後腳→右前腳→左後腳→左前腳→右後腳。  

小狗

file:///C:/Users/free/AppData/Local/Temp/ksohtml/wps4E77.tmp.jpg   下面是行走的三角圖形其中三角形的三個角表示三隻腳,圓圈表示擡起的腳。在運動的過程中把重心整體向前移動。

小狗

2.關節的運動:     腿擡起的時候大腿關節先擡起,同時小腿關節彎曲,這樣是為了能夠很好的擡起。然後再向前邁進,再放下,在這過程中同時每條大腿把重心向前移動。     

小狗

3.腰部動作      走步時由于腿關節的屈伸運動,身體稍有高低起伏。從俯視角度看,肩部線和臀部線成交替向前的狀态,身體也随之扭動。從下圖可以比較清楚的看出,當邁左腳時腰部向右轉,同樣的邁右腳的時候腰向左轉。

小狗

4.頭部      頭部會上下略有點動,一般是在跨出的前腳即将落地時,頭開始朝下點動,前腳伸直時頭朝上。

小狗

(二)掌類動物      

小狗

        掌類動物,因為有腳掌可以作為平衡支點,是以可以兩條腿一起動。在行走較快的話,兩條腿可以保持平衡,就是可以兩條腿進行交替進行運動  

小狗
小狗

           下面是掌類動物四條腳掌運動圖,四條線的四個端點表示動物的四個腳 ,其中實線表示對角線着地的腳,虛線表示擡起的對角線腳。這樣交替運動就會比較快的向前運動。

小狗

  (三)、此次四足狗的步态對應的舵機角度——前進步态程式角度分析 是先按照1→2→3→4→1大的步驟行走,其中每個步态中又包括(1)→(2)→(3)小步态進行行走。在行走的同時其它腳也在動,是為了把重心向前移動。 file:///C:/Users/free/AppData/Local/Temp/ksohtml/wps4EAF.tmp.jpg 下面是步态對應的是舵機的角度值  

小狗

  四、機械結構分析       此四足機器人共有10個自由度, ,其中1個是頭部自由度、另一個是腰部自由度,還有8個是腿部自由度。每條腿是兩個自由度,這樣就可以比較輕松的擡起來和放下去,是靠靜摩擦不是靠動摩擦前進,這樣就比較好的模拟動物行走的步态。在每條腿行走的過程中,利用身體的平衡把重心向前移動。是以要使得 下面是身體的3D列印件,要注意腰部有一個關節,腰部關節很重要。在設計的時候要注意,結構的牢固性,腰部的承受力比較大。 1.身體

小狗
小狗

  2.大腿——四足機器人的大腿比較重要,需要承受較大的力量,是以設計的時候牢固性一定要注意。中空的地方是舵機的,其它小孔是固定螺絲。

小狗
小狗
小狗

  3.小腿——設計的時候,腳掌要設計比較大一點,這樣穩定性好一點。在3D列印的時候,要注意鏡像問題。  

小狗
小狗

  4.組合——小腿和大腿結合起來然後再安裝身體上。  

小狗

    五、其它動物運動過程      (一)、  動物奔跑的基本特征為:      動物奔跑與走步時四條腿的交替分合相似。但是,跑的愈快, 四條腿的交替分合就愈不明顯。有時會變成前後各兩條腿同時屈 伸,着地的順序:前面兩腿先着地。即前左、前右、後左、後右。 腳離地時隻差一到兩格。  

小狗

    (二)、家禽類 1、雞的走路特點為:   (1)雙腳前後交替,身體左右搖擺   (2)為了平衡身體,頭和腳協調的關系為:當一隻腳擡起到      中間,頭向後收,當一隻腳剛擡起時,頭向前伸。    (頭和腳動作前後時間差一格或二格) (3)腳爪離地擡起向前伸展時,趾關節呈弧線運動。

小狗

  (三)、飛禽類——轉化流動的氣體為升力   鳥類在空中的飛行動作是流線型的,在空中消耗最小的能量, 它憑借着氣流的方向,幫助飛翔動作,飛翔時腿部蜷縮着緊 貼身體或朝後拖曳着。

小狗

  小鳥飛行中常常是夾翅飛竄,然後急速扇動雙翅.

小狗

小鳥快速飛翔時,翅膀扇動頻率高,常用流線表現。飛行時 形體變化小 在大鳥飛行中,還要注意身體和尾部的運動。飛翔中身體不是固定不變的,而是上下的移動。當翅膀向上時身體向下,當翅膀向下時身體上升。尾部起平衡作用,翅膀向上,尾部也向上

小狗

  昆蟲的種類繁多,按其動作特點來看,可分為以飛為主、以 爬為主和以跳為主三種類型。 1、以飛為主的昆蟲 (1)蝴蝶,畫蝴蝶飛舞的動作時,應先設計好飛行路徑,其 路徑呈現不規則的線。注意避免過于機械。一般翅膀一張向上, 一張向下。兩張之間的距離大約為一個身體的幅度。中間可以 不加動畫或隻加一張動畫。

小狗

(2)蜜蜂和蒼蠅,蜜蜂和蒼蠅隻有一對翅膀。飛行動作比較 急促,雙翅扇動頻率較快。翅膀扇動在同一張畫面上,可以同 時畫出上下兩對翅膀,前一張翅膀向上畫實向上畫虛,後一張 與之相反,向上畫虛,向下畫實。上下翅膀間還可以畫幾根流 線,表示翅膀的快速扇動。飛行一段時間後,還可以讓身體在 空中停頓,隻要畫出翅膀不停上下扇動即可。

小狗

(3)蜻蜓,蜻蜓的特點是頭大身子細翅膀長。在飛行時一般不能靈活轉變 方向,動作姿勢也變化不大。蜻蜓的飛行速度很快,畫它飛行時,在同一張畫面的蜻蜓身上,同時畫出幾個翅膀的虛影。

小狗

  (四)、魚類   魚類因生活在水中,其身體也呈現流線型,主要靠魚鳍的推動 使身體在水中向前遊動。魚身擺動時的各種變化成曲線運動狀 态。按照魚類運動特點,可分為大魚和小魚。 1、大魚 大魚的身體又大又長,魚鳍相對較小。在遊動中身體擺動的曲 線弧度較大,動作緩慢穩定。大魚在水中,身體常常不動或少 動,在受到驚吓時會突然加速竄逃。 2、小魚 小魚的身體短小或狹長,動作靈活、變化較多、節奏短促,常 有停頓或突然逃竄。曲線弧度不大,特别是在快遊時很難看清 魚鳍變化。

小狗

(五)、爬行類和兩栖類    爬行類分有足和無足兩種。 有足的爬行動物例如烏龜、鳄魚、蜥蜴等。其特征為四足短小, 身體靠近地面,爬行時,四肢前後交替運動、動作緩慢,頭部左 右擺動較大,尾巴呈現波形曲線運動。

小狗

      無足的爬行動物如蛇,其身體圓而細長。他的行動靠輪流收縮脊 骨兩邊肌肉進行。它的運動特點是身體向兩旁作S形曲線運動, 頭部微微離地擡起,左右擺動幅度較小,尾巴越向後面,其擺動 幅度就越大。

小狗

  四、代碼

  1. <font ><b><font size="3">
  2. #include <DOGrobot.h>
  3. #include<Servo.h>
  4. #include <SoftwareSerial.h>
  5. #include <DFPlayer_Mini_Mp3.h>
  6. DOGrobot DOGrobot;
  7. unsigned long  mp3time = 0;
  8. unsigned long  stoptime = 0;
  9. #define    mp3delay  3000
  10. unsigned long    Barkingtime = 0;
  11. unsigned long    Barkingdelay = 2000;
  12. unsigned long     Ultrasonictime = 0;
  13. unsigned long     Ultrasonicdelay = 1000;
  14. unsigned long     directiontime = 0;
  15. unsigned long     directiondelay = 3000;
  16. int  distance = 0;
  17. int AngHand = 90;
  18. int  left = 0;
  19. int  middle = 0;
  20. int  right = 0;
  21. void setup() {
  22.   Serial.begin(9600);
  23.   DOGrobot.DOGsetup();
  24.   delay(1000);
  25.   //DOGrobot.Init();
  26.   //delay(1000);
  27.   DOGrobot.UltrasonicInit();
  28.   mp3_set_serial (Serial);        //set Serial for DFPlayer-mini mp3 module
  29.   mp3_set_volume (20);
  30. }
  31. void loop() {
  32.   if (left == 0 && middle == 0 && right == 0)
  33.   {
  34.     DOGrobot.Forward();
  35.     AngHand = DOGrobot.Hand();
  36.   }
  37.   else if (left == 0)
  38.   {
  39.     DOGrobot.Turnleft();
  40.     AngHand = DOGrobot.Hand();
  41.   }
  42.   else if (right == 0)
  43.   {
  44.     DOGrobot.Turnright();
  45.     AngHand = DOGrobot.Hand();
  46.   }
  47.   else   DOGrobot.Barking();
  48.   if (millis() - directiontime > directiondelay)
  49.   {
  50.     directiontime = millis();
  51.     left = 0;
  52.     middle = 0;
  53.     right = 0;
  54.   }
  55.   distance = analogRead(5);
  56.   Serial.println(distance);
  57.   if (distance > 250)
  58.   {
  59.     if (millis() - mp3time > mp3delay)
  60.     {
  61.       mp3time = millis();
  62.       mp3_play (1);
  63.     }
  64.     if (AngHand < 70)  left = 1;
  65.     else if (AngHand > 110)  right = 1;
  66.     else  middle = 1;
  67.   }
  68. }</font></b></font>

複制代碼   庫檔案連結   六、心願單        硬體采購        

小狗

    七、檔案連結        

小狗

  四足機器人代碼.zip  (899.86 KB, 下載下傳次數: 303)         

小狗

  四足機器人3D件.zip  (4.08 MB, 下載下傳次數: 363)