《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于ATmega88和Delphi的雙足競步機器人設(shè)計
基于ATmega88和Delphi的雙足競步機器人設(shè)計
2014年微型機與應(yīng)用第23期
葉孝璐,俞 立,陳軍統(tǒng)
(浙江工業(yè)大學 信息工程學院,浙江 杭州 310023)
摘要: 采用自主設(shè)計的PCB板和CDS5401舵機設(shè)計了一種雙足競步機器人,開發(fā)了基于ATmega88的機器人控制系統(tǒng),基于仿生學原理的步態(tài)規(guī)劃確定了機器人的運動序列。所設(shè)計的控制系統(tǒng)不僅操作簡單,運行穩(wěn)定可靠,而且人機交互界面友好,再擴展性強。最后,將所開發(fā)的機器人運用于中國機器人大賽雙足競步機器人比賽,取得了優(yōu)異成績
Abstract:
Key words :

  摘 要: 采用自主設(shè)計的PCB板CDS5401舵機設(shè)計了一種雙足競步機器人,開發(fā)了基于ATmega88的機器人控制系統(tǒng),基于仿生學原理的步態(tài)規(guī)劃確定了機器人的運動序列。所設(shè)計的控制系統(tǒng)不僅操作簡單,運行穩(wěn)定可靠,而且人機交互界面友好,再擴展性強。最后,將所開發(fā)的機器人運用于中國機器人大賽雙足競步機器人比賽,取得了優(yōu)異成績。

  關(guān)鍵詞: 雙足競步機器人;PCB板;ATmega88;CDS5401舵機;Delphi

  0 引言

  雙足步行機器人是機器人領(lǐng)域中的一個熱點研究課題[1-2]。其不僅質(zhì)量輕、能耗小、動作靈活,而且具有很強的環(huán)境適應(yīng)性,相對于輪式、履帶式機器人具有更大的優(yōu)勢,如可以進入狹隘的空間進行工作,也可以跨越障礙、上下臺階、斜坡及在不平整地面上工作[3]。

  雙足機器人是一個自由度多、結(jié)構(gòu)復(fù)雜、耦合性強的非線性系統(tǒng),因此,實現(xiàn)其穩(wěn)定的步行控制是雙足機器人研究中的熱點和難點。目前,穩(wěn)定步行控制的方法主要有基于ZMP的步行控制、基于裸關(guān)節(jié)力矩的步行控制、基于傳感器補償?shù)牟叫锌刂?、基于改變落腳點的步行控制等。而人類雙足步行是在生物進化史中得出的最高效的移動方法,自動化程度最高,也最為復(fù)雜,因此基于仿生學原理的步行控制具有穩(wěn)定、可靠的優(yōu)點。本文基于仿生學原理進行機器人的步行控制,在控制器和機械結(jié)構(gòu)方面提出了許多新穎、獨特的設(shè)計方法使所設(shè)計的機器人具有很好的穩(wěn)定性,且系統(tǒng)可靠、易于調(diào)試。特別地,所設(shè)計的機器人在2013年中國機器人大賽雙足競步機器人比賽項目中獲得了全國一等獎的好成績,充分體現(xiàn)了本設(shè)計的先進性。

  本文的主要目的是以中國機器人大賽雙足競步機器人項目為背景,自主設(shè)計一款6自由度的雙足競步機器人,研究雙足競步機器人的機械結(jié)構(gòu)、控制系統(tǒng)、步態(tài)規(guī)劃以及控制程序的編寫和調(diào)試,最終實現(xiàn)雙足競步機器人的穩(wěn)定行走和向前向后翻跟斗的功能。該機器人控制系統(tǒng)采用自主設(shè)計的PCB板和CDS5401舵機為機械結(jié)構(gòu)的主要材料,控制系統(tǒng)以ATmega88為控制核心,輸出6路PWM波驅(qū)動CDS5401舵機,基于仿生學原理進行步態(tài)規(guī)劃,并使用Delphi設(shè)計了人機界面,實現(xiàn)了雙足競步機器人比賽要求的規(guī)定動作及更高難度的動作。該系統(tǒng)控制精度高、便于調(diào)試、抗干擾性強,而且可擴展為控制多舵機的模塊系統(tǒng),可應(yīng)用于工業(yè)機械臂、服務(wù)機器人、娛樂機器人以及相關(guān)領(lǐng)域的控制。

1 機械機構(gòu)的設(shè)計

  1.1 機械結(jié)構(gòu)材料的選擇

  根據(jù)中國機器人大賽的要求,機器人的總重量不超過1 kg,所需的材料需要滿足密度小、剛度高、便于加工等特點[4]。鑒于PCB板具有硬度高、質(zhì)量輕、可塑性好等特點,本文選擇PCB板作為雙足競步機器人的機械設(shè)計材料。與其他選擇鋼板或鋁板作為機械材料的機器人,其優(yōu)勢如下:

  (1) 可以將控制系統(tǒng)嵌入到PCB板中,避免了在機械結(jié)構(gòu)上外加控制系統(tǒng)而導(dǎo)致的系統(tǒng)不穩(wěn)定、累贅,影響雙足競步機器人行走或翻跟斗動作的流暢度等缺點。

  (2) 直接用焊錫就可以將各個關(guān)節(jié)連接,省去了螺母、連接桿等器件,既簡化了雙足競步機器人的機械結(jié)構(gòu),也減輕了雙足競步機器人的質(zhì)量。

  (3) PCB板便于加工,價格便宜。

  1.2 機械結(jié)構(gòu)的設(shè)計

  本文將雙足競步機器人的機械結(jié)構(gòu)分成軀干部、胯部、膝部、腳部四部分。

  (1) 腳部機械結(jié)構(gòu)的設(shè)計

  本文設(shè)計的機器人腳板長寬為149 mm×59 mm,比參賽要求的最大值分別小1 mm。同時,在保證腳板剛度和強度的情況下,將腳板鏤空,以降低腳部機械結(jié)構(gòu)的重量。為了保證機器人具有足夠大的驅(qū)動力矩,本文設(shè)計的雙足競步機器人將舵機和腳板以垂直的方式進行連接。

  (2) 膝部機械結(jié)構(gòu)的設(shè)計

  膝關(guān)節(jié)在機器人行走的過程中負責向前跨步和輔助調(diào)節(jié)機器人重心的位置,為了避免膝關(guān)節(jié)部分的舵機成為多余的負載,本文將舵機的安裝位置上移,膝部的舵機與機器人軀干串聯(lián)[5]。同時,為了減輕雙足競步機器人的質(zhì)量,在保證機器人強度和剛性的情況下,也將其關(guān)節(jié)的連接板塊進行鏤空處理。

  (3) 胯部機械結(jié)構(gòu)的設(shè)計

  胯部機械結(jié)構(gòu)是髖關(guān)節(jié)自由度的載體,在機器人行走時負責保持上體直立和輔助平衡。為了防止機器人行走和翻跟斗時兩腿之間發(fā)生碰撞,其胯部舵機不直接與軀干部的舵機相連接,以一塊結(jié)構(gòu)板隔開,舵機串聯(lián)在結(jié)構(gòu)板上。

  (4) 軀干部機械結(jié)構(gòu)的設(shè)計

  本文將軀干部的側(cè)向控制板設(shè)計成雙直板結(jié)構(gòu),以保證雙足機器人進行前翻滾和后翻滾時不發(fā)生偏轉(zhuǎn)。

  1.3 自由度的配置

  雙足競步機器人只能依靠電機來驅(qū)動各個關(guān)節(jié)運動,而且比賽要求最多只能用6個舵機,所以本文將雙足競步機器人的6個自由度配置為每條腿3個,每條腿的3個自由度配置為:髖關(guān)節(jié)1個自由度,膝關(guān)節(jié)1個自由度,踝關(guān)節(jié)1個自由度。

  髖關(guān)節(jié)處的自由度是一個控制前向運動的自由度,在雙足競步機器人的步行中起到使機器人保持直立和輔助平衡的作用。

  膝關(guān)節(jié)的自由度也是一個控制前向運動的自由度,主要用來調(diào)節(jié)雙足競步機器人向前走動并且使得雙足競步機器人的步態(tài)不生硬。

  踝關(guān)節(jié)的自由度是控制側(cè)向運動的自由度,用來控制雙足競步機器人的側(cè)向運動,調(diào)整機器人的重心位置,以保持雙足競步機器人的穩(wěn)定行走。

  本文設(shè)計的機械結(jié)構(gòu)如圖1~圖3所示。

001.jpg

2 控制系統(tǒng)設(shè)計

  2.1 原器件選型

  CDS5401舵機是專業(yè)的小型伺服電機,扭矩大,速度快,運行的環(huán)境溫度和工作范圍廣,適合作為雙足競步機器人的驅(qū)動電機,因此本文選擇CDS5401舵機作為控制系統(tǒng)的驅(qū)動。

  ATmega88 單片機不僅速度快、主頻高,而且片上外設(shè)非常豐富,使得單片機的外圍電路變得簡潔,因此選擇ATmega88單片機作為控制芯片[6]。另一方面,ATmega88的工作電壓為5 V,可以直接輸出5 V的PWM波來驅(qū)動舵機,省去了舵機驅(qū)動電路,使得系統(tǒng)的穩(wěn)定性更高。

  2.2 控制方案設(shè)計

  本文運用8位AVR單片機ATmega88作為控制器,具體的控制方案如下:

  (1) 在下位機軟件應(yīng)用分時成組法,利用ATmega88內(nèi)部的定時器結(jié)合中斷功能產(chǎn)生6路PWM波來控制6個舵機的運動;

  (2) 基于仿生學原理進行步態(tài)規(guī)劃,根據(jù)各關(guān)節(jié)的步態(tài)軌跡建立行為數(shù)據(jù)庫;

  (3) 用Delphi編寫6路PWM的上位機程序,得到雙足競步機器人的人機交互界面;

  (4) 根據(jù)步態(tài)規(guī)劃得到的行為數(shù)據(jù)庫,在上位機界面上調(diào)試出雙足競步機器人的動作序列,實現(xiàn)雙足競步機器人行走和翻跟斗的功能。

  控制系統(tǒng)結(jié)構(gòu)如圖4所示。

002.jpg

3 控制系統(tǒng)設(shè)計

  基于仿生學原理,將運用實驗的方法得到雙足競步機器人的運動序列。通過大量的實驗,獲得不同實驗者的步態(tài),然后進行分析整理,得到最穩(wěn)定合理的步態(tài)。然后將其制作成人類行走的慢速動畫,動畫的每一幀圖片就是雙足競步機器人的動作序列。動畫模擬雙足競步機器人的動作序列可分為兩部分:

  (1) 右定左動行走:當右腳為支撐腳,左腳為擺動腳時,邁左腳行走動作的序列。

  (2) 左定右動行走:當左腳為支撐腳,右腳為擺動腳時,邁右腳行走的動作序列。

  根據(jù)實驗,可以建立出雙足競步機器人的行為數(shù)據(jù)庫(即行走時的動作序列),其行走可以看作單腳支撐期和雙腳支撐期的交替。

  根據(jù)以上考慮,為了實現(xiàn)穩(wěn)步競走(左腿先起步),規(guī)劃雙足競步機器人行走時的行為數(shù)據(jù)庫(動作序列)為:重心右移(先是右腿支撐)、左腿抬起、左腿放下、重心移到雙腿中間、重心左移、右腿抬起、右腿放下、重心移到雙腿間8個階段。

  本文設(shè)計的雙足競步機器人可滿足中國機器人大賽要求,完成大賽指定的向前/向后行走、翻跟斗等功能。根據(jù)仿生學原理建立的行為數(shù)據(jù)庫,可得出雙足機器人實際行走的序列。

  (1) 行走的動作序列

  雙足競步機器人的行走可分為右定左動邁步動作和左定右動邁步動作。行走動作序列可細分直立、右傾、抬左腿、左腿落地、左傾調(diào)整、左傾、抬右腿、右腿落地。

  (2) 前滾翻動作

  前滾翻動作的動作序列可細分為直立、下彎、臥倒、抬右腿、右腿落地、抬左腿、左腿落地、直立。

  (3) 后滾翻動作

  后滾翻的動作序列可細分為直立、后彎、后臥倒、抬右腿、右腿落地、抬左腿、左腿落地、直立。

4 控制程序?qū)崿F(xiàn)

  4.1 下位機程序

  本文選擇2.5 ms為一個時間片,將20 ms的PWM周期進行等分,分成8等份,最多可以同時輸出8路PWM波。由于本文設(shè)計的雙足競步機器人只有6個舵機,只需6路PWM波,因此為方便雙足競步機器人動作序列的載入,最后兩個時間片段空運行??刂葡到y(tǒng)的總流程如圖5所示。

003.jpg

  4.2 上位機程序

004.jpg

  本系統(tǒng)的人機交互界面如圖6所示,其主要功能如下:

  (1) 可設(shè)置雙足競步機器人左上、左中、左下、右上、右中、右下6個舵機角度。

  (2) 可設(shè)置機器人行走的速度。

  (3) 可添加、插入、刪除單個動作元素,動作元素可自行名字。

  (4) 可以自行組合和命名動作序列。

  (5) 可在彈出窗口中放置窗口控制功能鍵,使彈出窗口可以最小(大)化,及任意移動窗口。

  (6) 可直接通過數(shù)據(jù)的接收區(qū)和發(fā)送區(qū)觀測到數(shù)據(jù)收發(fā)狀況。

  (7) 可通過設(shè)置“即時更新”和“自動行走”執(zhí)行單個動作元素、一組或多組動作序列。

5 結(jié)論

  本文提出采用PCB板作為主要材料的雙足競步機器人機械結(jié)構(gòu)的設(shè)計,并設(shè)計了基于ATmega88和 Delphi的多舵機協(xié)調(diào)控制系統(tǒng),實現(xiàn)了雙足競步機器人行走、向前向后翻跟斗以及倒立等功能。該系統(tǒng)不僅穩(wěn)定、精確、便于調(diào)試、抗干擾性強,而且具有很好的人機交互界面和再擴展功能,可推廣到工業(yè)機械臂、服務(wù)機器人、娛樂機器人以及相關(guān)領(lǐng)域的多舵機協(xié)調(diào)控制。

  本文所設(shè)計的雙足競步機器人成功參加了2013年中國機器人大賽,并取得了優(yōu)異成績。

參考文獻

  [1] 彭勝軍, 稅海濤, 楊慶, 等. 雙足步行機器人的步態(tài)規(guī)劃及實現(xiàn)[J]. 信息與控制, 2010,39(6):783- 789.

  [2] 阮曉鋼, 李志謙. 基于CMAC的雙足步行機器人逆運動學控制[J]. 控制工程, 2009,16(5):623- 626.

  [3] 畢盛, 閔清華, 溫正東, 等. 雙足步行機器人控制電路設(shè)計與實現(xiàn)[J]. 科學技術(shù)與工程, 2010,31(10):7661-7664.

  [4] 范強. 雙足競步機器人設(shè)計及其步態(tài)規(guī)劃研究[D]. 淄博:山東理工大學, 2009.

  [5] 史耀強. 雙足機器人的步行仿真及實驗研究[D]. 上海: 上海交通大學, 2008.

  [6] 劉海峰, 王娜. 用AVR單片機實現(xiàn)步行機器人的設(shè)計[J]. 科技信息, 2011(21):465- 466.


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