當前位置:首頁 » 打標機器 » 機器人行走怎麼實現的

機器人行走怎麼實現的

發布時間: 2021-02-05 10:31:09

1. 機器人是怎樣行走的呢

你的行走是值得雙足式機器人的行走方式嗎?還是廣義的?
如果是雙足式的,目前是非常難做到的,做的好的只有日本人能做到真正的仿人雙足步行。
其難點在於機器人一腳抬起後,身體前傾,其重心的控制非常難,尤其對於真正的仿人形機器人,因其重量大,慣性就打,對電機的控制和性能要求非常高。
還有一種行走方式就相對簡單,實際上是一腳邁出去後,後退不是提升後跟進,而是貼地跟進,這就不是絕對的仿人了。
ps。如果你的行走值得是移動。那就可以分為:輪式、腿時、輪腿混合式等等。

2. 機器人雙足行走技術是什麼

直立雙足行走,是人類與其他動物的重大區別之一,在手臂和腰身的配合下,人版類在不同的環境會權採取適當的姿勢,靈活地移動雙腳行進,或者完成某種工作。因為雙足步行屬於非連續式接觸地面性質,所以對超越障礙、轉彎、保護地面都具有優越性。再者,人類步行速度可以靈活控制,如一般慢走速度為2~3千米/小時,快走速度為5千米/小時左右,而快跑(如百米賽跑)最高速度可達36千米/小時左右。

目前,一些國家所成功研製的類人型機器人,已經具有雙足步行功能,也可以上、下台階或轉彎。主要問題是步速過低(最快速度1~2千米/小時),靈活性差,還遠遠不及人類。雙足行走技術的關鍵,主要是機器人的平衡技術、機械與電子優化結構等問題。只有這些問題解決了,才可能使機器人類似人類的步態、步速和靈活性,才會使人類對它更加喜愛。

3. 機器人行走

中國機抄器人的發展比較晚。和世界機器人是有一定的差別,但小型機器人的行走發展也並不慢,根據國內一家公司最新上傳的視頻,國內的小型機器人行走已接近世界水平,也可以說已達到世界水平。詳情請查看
http://hangood.com/17zjyou.html

4. 怎樣實現機器人的行走路線在電腦上顯示出來

如果你僅僅是做實驗或者參加競賽的話,你可以自己做一個軌道,讓機器人在這個軌道上行走的話,只需要用感測器,當然,軌道也要經過設計。如果你要是實用的話,最簡單的就是安裝GPS!!

5. 跳躍或走線機器人的原理

大中小機器人比賽在中國科技大學已經成為一項重大的校園科技活動。本文所實現的四足機器人在2002年的比賽中獲得了亞軍。我們通過一種基於「對角線一致」策略成功地實現了四足機器人的行走,機器人的九個自由度全部由步進電機實現,利用AT89C51單片機控制整個系統。在軟體上利用加速控制思想,從而使機器人的動作更加平滑,結合背景音樂,精確控制機器人的動作,使機器人隨著音樂跳舞。
四足舞蹈機器人的實現策略
陶陽宇,甘業兵,江朝暉
(中國科學技術大學電子科學技術系,安徽合肥,230026)

摘 要:機器人比賽在中國科技大學已經成為一項重大的校園科技活動。本文所實現的四足機器人在2002年的比賽中獲得了亞軍。我們通過一種基於「對角線一致」策略成功地實現了四足機器人的行走,機器人的九個自由度全部由步進電機實現,利用AT89C51單片機控制整個系統。在軟體上利用加速控制思想,從而使機器人的動作更加平滑,結合背景音樂,精確控制機器人的動作,使機器人隨著音樂跳舞。
關鍵詞:四足機器人,行走機器人,對角線一致,步進電機加速控制

A Means of Realization of the Four-Leg Robot
TAO Yang_yu,GAN Ye_bing
JIANG Zhao_hui
(Department of Electronic Science & Technology of USTC,Anhui,Hefei,PRC 230026)

Abstract: The Robot-game contest has become one of the significant scientific activities on campus of USTC(University of Science & Technology of China). The four-leg robot described in this paper won the runner-up in the contest this year(2002). We make it realized that the robot can tread with four legs itself based on consistency of diagonal . The robot has nine articulations which are really nine step-motors. The whole system is commanded by the AT89C51 MCU. We use the method of accelerate-control in the part of software so that the robot can move more smoothly and elegantly to dance in the background music.
Keywords: four-leg robot, mobile robot, consistency of diagonal, accelerate-control of step-motor

1.引言

目前在國外,機器人的研製有了很大的發展,除了傳統的工業控制機器人外,
各種商用,民用機器人也不斷地研製出來。無論在機械結構還是在自動控制上,都向著更高的技術難度進步了。如日本,繼SONY在2002年3月發布雙足行走機器人」SDR—4X」後不久,2002年9月日本又推出新一代行走機器人」PINO」 。

中國科技大學已經連續舉辦了兩屆「大學生Robot-game活動周」等科技活動,引起強烈反響,以及CCTV舉辦的「中國大學生機器人比賽」等一系列活動。促進了機器人研究與製作在大學生中的廣泛開展。

本文中介紹的機器人是一個四足行走式機器人,外形酷似水母,整個身體由四條腿支撐。四條腿在解決平衡性問題上較容易,只需四點共面即可保持整個機器人的平衡。但機器人在行走時,四條腿之間必然有一個協調配合的問題,只有當四條腿邁步一致時才能保證機器人的身體在一個水平面內,保持它的穩定性。否則要麼機器人會傾斜摔倒,要麼動作僵硬不夠平滑。機器人的上部還有三隻手臂,每隻手臂有兩個自由度,可以在程序的控制下揮動手臂,配合腿完成一定的動作。

為了既能夠保持機器人的穩定性,又讓它的動作舒緩平滑,我們提出了一種基於「對角線一致」的行走策略:仿照四足動物的行走方式,先左前腿和右後腿同時邁進,接著右前腿和左後腿同時邁進,形成兩條交叉的對角線,這樣就完成了一個周期的行走動作。以後如此類推。再配合加速電機控制方法,使電機的運轉更加平滑,避開其固有的振動。

以下分機械實現部分和控制部分分別詳述整個機器人的實現。

2.機械實現
機器人的整體視圖:

圖一,俯視圖(點擊得大圖)

圖二,單項輪視圖(點擊得大圖)

一,整個機器人的結構總體上分為上身、腰部和下肢三部分。

上身由頭部和手臂組成。控制的核心部分----電路板以及電源就裝在頭部的圓罩中。每隻手臂由電機連接的前臂和後臂組成。後臂通過電機固定在機身上。前臂和後臂都能自由活動,作出各種動作。在機器人的表演過程中,起著支撐作用的是腰部。腰是用一個深5.0cm,直徑35.0cm的塑料圓筒和一個有機玻璃底盤做成的,這樣的材料結實,有韌性而且重量輕。

在我們的動作設計中,要求機器人腰部可以扭轉。為保持旋轉的均勻、平衡,必然要求電機軸在底盤的中心。我們將控制腰部的電機固定在兩根穿過有機玻璃盤的長螺絲上。然後在頭部底襯盤下對稱地安裝了三個萬向輪,萬向輪可以在有機玻璃底板上自由滾動,大大減少了腰部轉動地摩擦力。同時,腿部電機與控制電路有導線相連,為盡量減少導線的纏繞,我們在有機玻璃底板上設置了一個直徑0.9cm的導管作為導線通道,解決了走線問題。

機器人行走實現的另一個關鍵問題是腿部,我們只用了兩個電機就實現了四條腿的驅動難題,如何設計巧妙的機械結構同時帶動四條腿,又要使行走平穩,我們動了很多腦筋,做了很多嘗試,終於找到一種巧妙的連桿傳動裝置。(如圖3)

圖三,機器人的一個行走周期

由上圖可見,機器人在行走時,的確是「對角線一致」,這種方法保證了行走的平穩性,使得行走得以實現。實際上,這只需後腿上的兩個電機以相同的方向關於豎直線作來回擺動即可。在模擬實際情況腰部、頭部重量時,腰部的旋轉動作要更為自然、流暢,不會出現因電機帶不動而丟步的情況。

讓機器人行走起來,只是完成了工作的第一步,重要的是如何讓九個電機協調一致地配合工作,按照預先設定好的動作翩翩起舞。

3.電路控制
電路控制部分是機器人的心臟。驅動電路板主要由主控晶元部分、信號鎖存部分、電機驅動部分以及電源穩壓部分等組成。

我們的控制晶元採用的是Atmel公司的AT89C051單片機微控制器。主要是由於AT89C051單片機工作主頻可以達到12MHz,內置有兩個16位定時/計數器,並有4k的EPROM,存儲容量大,可反復燒寫1000次。我們的舞蹈機器人可以完成3分21秒的舞蹈動作,動作數據量大。而且在動作過程中要求精確控制,為了使動作平滑流暢,銜接良好,我們要求轉動角度精確到0.1度。這對控制器的工作頻率有一定的要求,在綜合評估了幾個公司的產品,包括Intel 51系列、Motololar、Atmel系列等,最後選擇了AT89C051這一款。

作為一個控制系統,其執行部件是非常重要的。機器人的執行部件就是它的電機部分,目前最常見的控制電機主要有直流電機和步進電機兩大類:直流電機工作原理簡單,一般兩根電源連線,如果帶碼盤等反饋的也不過三根線。但是直流電機難於精確控制,且轉矩較小,功耗大。步進電機恰恰能較精確的控制,轉矩大,但難點在於工作原理較復雜,需要多相激勵。為了最終效果,我們選擇了步進電機,用軟體來進行精確控制。步進電機直接用晶元的I/O口輸出數字脈沖控制,為了使步進電機獲得足夠的轉動力矩,並且動作平緩,在軟體實現時採用了四相加速激勵技術,成功地實現了步進電機的平穩加速。
具體電路圖見圖四。

圖四,控制電路圖(點擊得大圖)

因為在調試或比賽過程中,可能會出現故障等問題,所以我們采樣了復位電路(見圖五),這樣可以及時的調整重啟。

工作過程:
將編制好的舞蹈程序燒寫在單片機的EPROM中,上電復位,由復位電路產生一個電平跳變,送到單片機的RESET腳,同時石英晶體振盪器開始工作,產生12M的時鍾信號,送到單片機的CLK腳,於是程序從ROM的0000H處開始執行。

根據程序的設定,由單片機的 P0,P1,P2,P3口不斷輸出脈沖信號,以ALE信號作時鍾將輸出信號鎖存在鎖存器74LS374中,信號從74LS374輸出到驅動晶元ULN2803中,在ULN2803中,信號被放大,經其反相後的信號直接驅動步進電機工作。我們採用的是4相步進電機,工作電壓+12V,用共陽極的接法。從ULN2803輸出的信號A、B、C、D,若A=0(低電平),則表示該步進電機的A相導通,接著再讓B相導通,如果有規律地使4相依次導通:A-B-C-D-A,那麼電機就會轉動起來(見圖五)。

圖五 步進電機4相激勵

電源也是一個關鍵問題,其中,AT89C051電壓為+5V,而步進電機要求+12V電壓,考慮到整個機器人對重量的要求,我們採用了10節5號干電池串聯作為電源POWER。+12V電壓經過MC7805電平轉換成+5V供給AT89C051,為了保護CPU安全,還增加了若干退耦電容。考慮到AT89C051的帶負載能力有限,我們還給每個口增加了上拉電阻,增強它的的帶負載能力。同時,燈光控制集成片控制七組發光二極體以「追逐」形式旋環閃爍,以增加美感。

3.軟體控制
整個系統採用AT89C51單片機控制,程序採用匯編語言編寫。程序的編寫思路沒有用傳統的查數據表形式,其原因主要是:

(1)舞蹈機器人的動作較多,數據表的內容將很龐大;
(2)數據缺乏可讀性,給程序的閱讀帶來不便;
(3)數據表形式不符合現代軟體編程的思想。

鑒於以上原因,機器人的控製程序採用模塊化的編程思路,首先需要研究機器人的動作特點,將整體的動作進行分解,找到它的基本動作元素,然後通過編寫通用的子程序實現各種基本動作,將這些基本元素作為動作庫零件。而在編寫整個動作時,只需按照要求調用不同的基本元素即可,如果動作有了變化,程序修改起來相當容易,省時省力。這種編程的思想為我們後來程序的修改帶來了很大的方便。

一, 步進電機的驅動特點
步進電機是利用數字脈沖激勵的,通過輸入數字脈沖,如雙四拍AB-BC-CD-DA,電機軸即可轉動一周,但步進電機的激勵頻率如果過低會出現振動現象,啟動頻率過高又會出現丟步的現象,為了克服這種對啟動頻率和轉動力矩的雙重需求,機器人的驅動程序採用了加速激勵技術,脈沖的頻率是通過脈沖延時DELAY子程序來調節的:將加速需要的延時數據做成表的形式存在CPU中,不斷地讀取這個數據表,作為參數傳遞給DELAY子程序

例如:下面就是一個典型的A型電機500MS的加速數據:

圖五,步進電機加速激勵過程

以上就是A型電機在500MS內從靜止加速到500PPS的數據表,表示分成11個階段加速到高速狀態,其中延時數據就是傳遞給DELAY子程序的,調節脈沖的頻率。加速的過程如下:

從以上的加速過程可以看出:在500ms內電機的加速幾乎是以均勻的加速度進行的,這樣可以保證加速過程的平穩性,機器人的動作的平穩性正是來自這種精細的加速激勵技術。

選擇加速激勵技術的原因:
1) 防止低頻時與電機的固有頻率發生共振現象;
2) 成功地實現從低速到高速的平穩加速過程;
3) 採用加速技術後,電機具有自啟動能力,不會出現因突然的阻力而造成的「阻死」現象。

機器人軟體控制模塊如下:

一個典型的A型電機的加速過程amotor.asm程序清單:

;該程序用來驅動A型電機左右各轉120度
DRIVE: MOV 81H,#40H ;避免堆棧指針的影響,81H為SP的物理地址
ACALL INIT ;調用初始化子程序
MOV DPTR,#004FH ;DPTR指向數據表
MOV R0,05H ;開始為向右轉,05H為R5的物理地址
TURN: CLR A
MOVC A,@A+DPTR ;取脈沖數
MOV R3,A ;R3存每階段的脈沖數
STEP: MOV A,#0FH
MOVC A,@A+DPTR ;取該階段的延時數
MOV R4,A ;延時數存R4中
CJNE @R0,#00H,NEXT ;狀態字指針R0到盡頭
MOV R0,05H ;指針復位
NEXT: MOV 80H,@R0 ;輸出脈沖,89H為P2口的物理地址
MOV 90H,@R0
MOV 0A0H,@R0
MOV 0B0H,@R0
INC R0 ;指針下移
ACALL DELAY ;延時
DJNZ R3,STEP ;該階段循環
INC DPTR
DJNZ R2,TURN ;執行下一階段
DEC R6
MOV A,R6
JZ STOP ;總步數結束
MOV R7,#40
REST: MOV R4,#0FFH ;正轉120度,休息
ACALL DELAY
DJNZ R7,REST
MOV R2,#0FH ;加速階段數復位
MOV DPTR,#004FH ;DPTR復位
CJNE R5,#20H,RIGHT ;R5存正反狀態字
LEFT: MOV R5,#25H
MOV R0,05H
SJMP TURN
RIGHT: MOV R5,#20H
MOV R0,05H
SJMP TURN
STOP: SJMP STOP ;停機
;
ORG 004FH
PULETAB: DB 9,10,11,12,14,15,16,17
DB 18,19,108,108,108,108,108
TIMETAB: DB 55,50,45,42,36,33,31,29
DB 27,26,24,24,24,24,24
DELAY1: MOV 08H,#34 ;DELAY1為延時0.1MS的標准子程序
LOOP1: NOP
DJNZ 08H,LOOP1
RET
DELAY: ACALL DELAY1
DJNZ R4,DELAY
RET
INIT: MOV 20H,#33H ;INIT為初始化子程序
MOV 21H,#66H
MOV 22H,#0CCH
MOV 23H,#99H
MOV 24H,#00H ;20H――24H存右轉狀態字
MOV 25H,#33H
MOV 26H,#99H
MOV 27H,#0CCH
MOV 28H,#66H
MOV 29H,#00H ;25H—29H存左轉狀態字
MOV R5,#20H ;R5暫存狀態地址
MOV R6,#14H ;前進10大步
MOV R2,#0FH ;階段數
RET
END

以上就是一個典型的電機加速驅動過程,其主要的思想是:通過有規律的變化的延時程序來控制送往步進電機的脈沖的快慢,從而使電機得到逐漸加快的脈沖激勵,穩定的實現加速過程,而不會出現因為脈沖的陡然加快而抖動的現象。
完整的機器人舞蹈動作程序比這段程序復雜的多,要牽涉到多個電機的協調動作以及舞動動作的配合與連貫,其中主要的是DRIVE子程序,限於篇幅,在此不能一一列出,完整的驅動程序可與筆者聯系。(email:[email protected]

4.總 結
通過基於「對角線一致」的行走策略,我們成功地實現四足行走式機器人,並利用我們的電機加速激勵的軟體控制方法,使機器人能隨著音樂完成相應的舞蹈動作,在中國科技大學2002年Robot-game 比賽中奪得了亞軍,充分證明了這種方案的可行性。

參 考 文 獻
[1].胡漢才.《單片機原理及其介面技術》. 清華大學出版社. 1996.7
[2].李 華. 《MCS-51系列單片機實用介面技術》. 北京航空航天大學出版社. 1993.8

還有這里也有(機器人技術論壇)http://www.robotdiy.com/phpbb2/viewtopic.php?p=52647

6. 實現前進和後退行走機器人的工作原理是什麼

用什麼?單片機?

7. 行走機器人的行走方式都有哪些

你的行走是值得雙足式機器人的行走方式嗎?還是廣義的?

如果是雙足式的,版目前是非常權難做到的,做的好的只有日本人能做到真正的仿人雙足步行。

其難點在於機器人一腳抬起後,身體前傾,其重心的控制非常難,尤其對於真正的仿人形機器人,因其重量大,慣性就打,對電機的控制和性能要求非常高。

還有一種行走方式就相對簡單,實際上是一腳邁出去後,後退不是提升後跟進,而是貼地跟進,這就不是絕對的仿人了。

ps。如果你的行走值得是移動。那就可以分為:輪式、腿時、輪腿混合式等等。

8. 機器人為什麼能行走原理是什麼

裡面有電池,驅動電機轉動. 電機的轉速和正反轉由MCU控制, 靠感測器來識別障礙物.

9. 機器人行走的四種程序

#include
#include
#include
#include
int dir[4][2]={0,1,1,0,0,-1,-1,0};
char c[5]="NESW";
int main()
{
char s[1005];
int i,x,y,d;
while(~scanf("%s",s))
{
x=y=d=0;
for(i=0;s[i];i++)
{
s[i]=tolower(s[i]);
if(s[i]=='s')
break;
if(s[i]=='l')
d=(d+3)%4;
if(s[i]=='r')
d=(d+1)%4;
x+=dir[d][0];
y+=dir[d][1];
}
printf("(%d,%d),%c\n",x,y,c[d]);
}
return 0;
}

熱點內容
線切割怎麼導圖 發布:2021-03-15 14:26:06 瀏覽:709
1台皮秒機器多少錢 發布:2021-03-15 14:25:49 瀏覽:623
焊接法蘭如何根據口徑配螺栓 發布:2021-03-15 14:24:39 瀏覽:883
印章雕刻機小型多少錢 發布:2021-03-15 14:22:33 瀏覽:395
切割機三五零木工貝片多少錢 發布:2021-03-15 14:22:30 瀏覽:432
加工盜磚片什麼櫸好 發布:2021-03-15 14:16:57 瀏覽:320
北洋機器局製造的銀元什麼樣 發布:2021-03-15 14:16:52 瀏覽:662
未來小七機器人怎麼更新 發布:2021-03-15 14:16:33 瀏覽:622
rexroth加工中心亂刀怎麼自動調整 發布:2021-03-15 14:15:05 瀏覽:450
機械鍵盤的鍵帽怎麼選 發布:2021-03-15 14:15:02 瀏覽:506