《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 兩足仿人機器人的設計與實現(xiàn)
兩足仿人機器人的設計與實現(xiàn)
2015年微型機與應用第1期
胡曉軍1,張遠亮2
(1.天津職業(yè)技術師范大學 機械工程學院,天津 300222; 2.西南交通大學 牽引動力國家重點實驗室,四川 成都 610031)
摘要: 采用模塊化的設計思想,設計了一個可靠的低價格雙足機器人平臺。首先簡化機器人的空間運動和受力,通過分析和求解,得到與機器人平衡相關的各個關節(jié)的位移、角度等變量的關系;用C語言在CodeVsionAVR編譯器下開發(fā)程序,選用1片ATmega128單片機來實時控制20個伺服舵機,并達到微秒級的控制精度。最終實現(xiàn)了兩足仿人機器人的各個關節(jié)的協(xié)調(diào)平穩(wěn)運動。
Abstract:
Key words :

  摘  要: 采用模塊化的設計思想,設計了一個可靠的低價格雙足機器人平臺。首先簡化機器人的空間運動和受力,通過分析和求解,得到與機器人平衡相關的各個關節(jié)的位移、角度等變量的關系;用C語言在CodeVsionAVR編譯器下開發(fā)程序,選用1片ATmega128單片機來實時控制20個伺服舵機,并達到微秒級的控制精度。最終實現(xiàn)了兩足仿人機器人的各個關節(jié)的協(xié)調(diào)平穩(wěn)運動。

  關鍵詞: 兩足仿人機器人;模塊化;單片機;控制精度

0 引言

  機器人是一種典型的機電一體化產(chǎn)品,隨著科學技術的進步,機器人的應用領域不斷拓寬[1]。雙足仿人機器人具有仿人的外形和步行方式,行走系統(tǒng)占地面積小,活動范圍大[2],移動“盲區(qū)”小,對步行環(huán)境要求低且具有一定的逾越障礙的能力,這些特點受到了各方的廣泛關注,成為機器人研究領域的熱點。兩足仿人機器人運動過程中的行走和對機器人的控制是研究的重點和難點。雙足步行是生物界難度最大的步行動作,但其步行性能卻是其他步行結構所無法比擬的,因此雙足步行是雙足仿人機器人研究的關鍵技術之一。穩(wěn)定的步行是雙足仿人機器人區(qū)別于其他機器人的主要標志。本文研制了一種雙足仿人機器人,通過對機器人進行步態(tài)規(guī)劃,使其能夠在平地上實現(xiàn)穩(wěn)定行走。

1 整體設計思想

  雙足機器人在行走過程中,其運動的平穩(wěn)性受重力、運動機構的慣性、軟硬件設計等綜合因素的影響。為提高其穩(wěn)定性,簡化設計思路,雙足機器人的設計采用了模塊化的設計方法[3]。雙足機器人的設計主要分為3個模塊:結構運動模塊、硬件電路模塊、軟件程序設計模塊。整體設計思路如圖1所示。

001.jpg

2 雙足機器人結構設計

  雙足機器人的運動與人類的運動方式類似,是通過腳與地面接觸來推動機體移動。一個步行周期基本上可以分為4個狀態(tài),如圖2所示。

002.jpg

 ?。?)兩腳著地,機器人的重量平分在兩條腿上。

 ?。?)兩腳著地,機器人的重心往一條腿上偏移,重量集中在一條腿上。

 ?。?)單腳著地,機器人的一條腿空起,準備跨步。

003.jpg

  (4)雙腳落地,機器人的重心從一條腿偏移到兩條腿中間,兩條腿受力均勻。

  YE[K_YA[]{{30IIZ9}Z@GDE.jpg

  式(1)和式(2)中,m1、m2、m3分別為L1、L2、L3的質量,L1、L2、L3、L4為已知條件,需要求出的關系。由于機器人運動過程中存在慣性,使計算復雜,需要依據(jù)以上理論關系結合實驗,用軟件進行調(diào)試。

  左腿把重心前移的情況如圖4所示。

  LsinC1+2LcosB1=H(3)

  A1=B1(4)

  S1=2LsinA1(5)

  其中,H和L已知,S1為重心前移的距離,由式(3)、式(4)、式(5)可以求出:

  B1=A1(6)

  C1=arccos(H-2LcosB1)×180°/π(7)

  機器人右腿運動情況與左腿運動類似。

3 硬件電路設計

  機器人采用ATmega128單片機[4]作為主控制芯片。ATmega128有64個引腳,53個可編程I/O口,具有處理速度快、功能齊全的特點。各執(zhí)行部件采用伺服舵機實現(xiàn),具有體積緊湊、輸出力矩大、穩(wěn)定性好等特點。其控制原理圖如圖5所示。

004.jpg

4 軟件設計

  在機器人動作的過程中,最為關鍵的是保持重心的位置。為保持機器人運動時的平衡,采用HENG1[60]、HENG2[100]、HENG3[60]、HENG4[60]、HENG5[20]、HENG6[20] 6個一維數(shù)組調(diào)整機器人在運動過程中的重心位置,控制程序的流程圖如圖6所示。

005.jpg

  伺服舵機I/O控制口為PA口、PD口和PC口的低四位口,程序設計如下:

  Void robot_duoji(unsigned char label,unsigned char anglex)

  {switch(label)

  {case 11:angle11=anglex;break;

  case 12:angle12=anglex;break;

  case 13:angle13=anglex;break;

  …

  }

  }

  通過ATmega128單片機的定時器1實時精確產(chǎn)生20個伺服舵機的10 s PWM波,單片機每10 s中斷一次,每中斷一次angle自加1,加到255后又從0開始自加1,如此循環(huán)。angle完成一次自加的周期是2.55 ms。用angle與angle(x)比較,如果angle<angle(x),則對應端口輸出高電平,否則輸出低電平。程序設計如下:

  interrupt[TIM1_OVF]void timer1(void)

  {

  TCNT1H=0xff;

  TCNT1L=0xec;

  angle++;

  if(angle<angle11)

  PORTA|=0x01;

  else

  PORTA&=0xfe;

  …

  }

5 結束語

  通過機構運動分析與電路的仿真設計,完成了雙足機器人的設計。采用模塊化的設計方法,以及合理的程序結構和機械部件,使系統(tǒng)結構簡單,且具有較好的穩(wěn)定性、可靠性,較好地實現(xiàn)了雙足機器人的直線行走動作。

參考文獻

  [1] 周伯英.工業(yè)機器人設計[M].北京:機械工業(yè)出版社,1995.

  [2] 毛勇,王家廞,莊新彥,等.基于氣動人工肌肉的雙足機器人關節(jié)設計[J].電子技術應用,2006,32(3):78-80.

  [3] 董存輝,擺玉龍,柴乾隆.基于模糊控制的自主尋跡機器人設計[J].電子技術應用,2012,38(5):139-141.

  [4] 劉蘭香,張秋生.ATmega128單片機應用與開發(fā)實例[M].北京:機械工業(yè)出版社,2006.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。