六足仿生機器人實驗室開放項目結(jié)項報告(共35頁)_第1頁
六足仿生機器人實驗室開放項目結(jié)項報告(共35頁)_第2頁
六足仿生機器人實驗室開放項目結(jié)項報告(共35頁)_第3頁
六足仿生機器人實驗室開放項目結(jié)項報告(共35頁)_第4頁
六足仿生機器人實驗室開放項目結(jié)項報告(共35頁)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上淮北師范大學(xué)實驗室開放項目總結(jié)報告基于STC12C5A60S2單片機的六足機器人 學(xué) 院: 物理與電子信息學(xué)院 負 責(zé) 人: 韓潤 小組成員: 史浩東 史良東 陸家雙 張瑩瑩 康強強 指導(dǎo)老師: 方 振 國 一 、項目重述1.1項目名稱:智能六足機器人1.2項目背景及意義:背景:在社會迅速發(fā)展的今天,單片機的的運用已經(jīng)滲透到我們生活的每個角落,也似乎很難找到哪個領(lǐng)域沒有單片機的足跡。智能儀表、醫(yī)療器械,導(dǎo)彈的導(dǎo)航裝置,智能監(jiān)控、通訊與數(shù)據(jù)傳輸,工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,廣泛使用的各種智能 IC 卡,汽車的安全保障系統(tǒng),動控制領(lǐng)域的機器人,數(shù)碼像機、電視機、全

2、自動洗衣機的控制,電話機以及程控玩具、電子寵物等等,這些都離不開單片機。意義:單片機的學(xué)習(xí)、開發(fā)與應(yīng)用將對于現(xiàn)代社會的發(fā)展,經(jīng)濟的繁榮,和提高滿足人類日益增長的物質(zhì)文化需求有著至關(guān)重要的作用。也成就了一批又一智能化控制的工程師和科學(xué)家??萍荚桨l(fā)達,智能化的東西就越多。學(xué)習(xí)單片機是社會發(fā)展的必然需求,也是我們現(xiàn)代高級技工所必須要掌握的技能。1.3項目內(nèi)容:以51單片機為控制器的核心,利用單片機內(nèi)部中斷產(chǎn)生PWM波控制舵機。利用開環(huán)函數(shù)組成的動作組使六足做仿生動作,制作出了動作靈活、價格低廉以及模塊化結(jié)構(gòu)的六足機器人。該機器人能夠嚴(yán)格按三角步態(tài)進行行走,實現(xiàn)諸如直線、轉(zhuǎn)彎、躲避障礙物和追蹤物體等行

3、走功能。 二、方案簡介本項目可細分為控制部分、機械部分、恒流源部分、超聲波檢測部分??刂撇糠植捎肧TC12C5A60S2單片機為核心處理器。通過PWM波使舵機轉(zhuǎn)動,機械部分采取合理的機械構(gòu)造,實現(xiàn)機器人在行走的情況下的平穩(wěn)。恒流源部分采取LM7805穩(wěn)壓芯片為單片機和舵機供電,由于舵機在運轉(zhuǎn)的過程中會有較大的電流波動。因此采用恒流電路進行恒流。超聲波壁障采用超聲波遇故障反射的原理。實現(xiàn)對物體識別和規(guī)避。三、設(shè)計過程3.1 STC89C51功能介紹:89C51是一種帶4K字節(jié)閃爍可編程可擦除(FPEROMFlash Programmable and Erasable Read Only Memo

4、ry)的低電壓、高性能CMOS8位,俗稱。的可擦除可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍組合在單個芯片中,ATMEL的89C51是一種高效微控制器,89C2051是它的一種精簡版本。89C單片機為很多提供了一種靈活性高且價廉的方案。 P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為輸入。P0能夠用于外部程序數(shù)據(jù),它可以被定義為數(shù)據(jù)地址的低八位。在FIASH編程時,P0 口作為輸入口,當(dāng)FIASH進行校驗時,P0輸出原碼,此時

5、P0外部必須被拉高。P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為低八位地址接收。P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序或16位地址進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它

6、利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)進行讀寫時,P2口輸出其的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和。P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C51的一些特殊功能口,如下表所示:口管腳 備選功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(0)P3.3 /INT1(外部中斷1)P3.4 T0(記時器0外部輸入)P3.5 T1(記時器1外部輸入

7、)P3.6 /WR(寫選通)P3.7 /RD(讀選通)P3口同時為閃爍編程和編程校驗接收一些。RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個的高電平時間。ALE/PROG:當(dāng)訪問外部時,允許的用于鎖存地址的地位字節(jié)。在FLASH期間,此用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該被略微拉高。如果在外部執(zhí)行狀態(tài)ALE禁止

8、,置位無效。PSEN:外部的選通信號。在由外部取指期間,每個兩次/PSEN有效。但在訪問存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。EA/VPP:當(dāng)/EA保持低電平時,則在此期間為外部(0000H-FFFFH),不管是否有內(nèi)部程序存儲器讀取外部ROM數(shù)據(jù)。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,單片機讀取內(nèi)部程序存儲器。(擴展有外部ROM時讀取完內(nèi)部ROM后自動讀取外部ROM)。在FLASH期間,此也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。3.2開關(guān)電路及恒流源部分: 開關(guān)三

9、極管電路利用三極管工作于截止區(qū)和飽和區(qū),相當(dāng)于電路的切斷和導(dǎo)通的特性,被廣泛應(yīng)用于各種開關(guān)電路中,如常用的開關(guān)電源、驅(qū)動電路、高頻振蕩電路、模數(shù)轉(zhuǎn)換、脈沖電路及輸出電路等。本次設(shè)計用兩個NPN型小功率三極管s8050構(gòu)成三極管開關(guān)電路,能夠有效地隔絕恒流源電路對單片機芯片的損害。 LM317是應(yīng)用最為廣泛的電源集成電路之一,它不僅具有固定式三端穩(wěn)壓電路的最簡單形式,又具備輸出電壓可調(diào)的特點。此外,還具有調(diào)壓范圍寬、穩(wěn)壓性能好、噪聲低、紋波抑制比高等優(yōu)點。lm317是可調(diào)節(jié)3端正電壓穩(wěn)壓器,在輸出電壓范圍1.2伏到37伏時能夠提供超過1.5安的電流,此穩(wěn)壓器非常易于使用。構(gòu)成的電路如下: 3.3

10、 舵機行走步態(tài)設(shè)計 (1)三角步態(tài)。三角步態(tài)也稱交替三角步態(tài),是“六足綱”昆蟲最常使用的一種步態(tài),也被譽為最快速有效的靜態(tài)穩(wěn)定步態(tài)。大部分六足機器人都是從仿生學(xué)的角度出發(fā)使用這一步態(tài)。昆蟲三角步態(tài)的移動模式較簡單,非常適合步行架構(gòu)的機器人的直線行走,行進速度也比較快。本論文也采用這種步態(tài)實現(xiàn)機器人的直線行走,該步態(tài)的具體方式將會在后文中具體給出。 (2)跟導(dǎo)步態(tài) 。 通常,三角步態(tài)的研究通常都局限在平坦地面,并且假設(shè)對于不平地面也是合理的。然而隨著1974年Sun首先提出了跟導(dǎo)步態(tài)的概念,并于1983年由Tsai成功地把這種步態(tài)應(yīng)用于俄亥俄州立大學(xué)的電動六足機器人中,這些為跟導(dǎo)步態(tài)的研究和發(fā)展

11、,為提高機器人在不平地面上的行走速度奠定了基礎(chǔ)。 對于六足機器人來說,跟導(dǎo)步態(tài)的重點是選擇前兩足下一步的落點,而一對中足和一對后足的下一步落點由當(dāng)前前足和中足的立足點決定。跟導(dǎo)步態(tài)每次只需要選擇前兩足的立足點,因而具有控制簡單,穩(wěn)定性較好,越溝能力強等特點,所以特別適合多足步行機在不平地面行走時采用。 (3)交替步態(tài)。與跟導(dǎo)步態(tài)類似,為了充分發(fā)揮六足機器人相對于輪式機器人在復(fù)雜地形的行走優(yōu)勢,交替步態(tài)成為新興的六足機器人研究的重點。這種單腿交替行走步態(tài),也被稱為五角步態(tài)。 在交替步態(tài)中,各腿的運動可分為抬升和前進兩個部分。當(dāng)某腿的相鄰各腿均已觸地時,該腿開始運動,并給其相鄰各腿發(fā)出信號。同樣,

12、在該腿觸地時,也會給相鄰各腿發(fā)出觸地信號。這樣,一旦整個六足系統(tǒng)進入行走狀態(tài),這種順次的步態(tài)運行狀態(tài)就可以一直維持下去。 由于各腿等待其相鄰?fù)扔|地的時間取決于其相鄰?fù)鹊膭幼骷捌溆|地位置,因而,對于崎嶇不平的地面而言,這種步態(tài)本身是不可預(yù)測的。然而,對于理想的平整地面而言,各腿的運動周期應(yīng)該是一致的,故而此時的交替步態(tài)實質(zhì)上等同于三角步態(tài),這己在實驗中得到證實根據(jù)實驗及研發(fā),采用了三角步態(tài)。六足仿生機器人采用六足昆蟲的行走步態(tài),步行時把6條足分為兩組,以一邊的前足后足與另一邊的中足為一組,形成一個三角架支撐機體。因此在同一時間,只有一組的3條足起支撐作用,前足用爪固定物體后拉動蟲體前進,中足用以

13、支撐并舉起所屬一邊的身體,后足則推動機體前進,同時使機體轉(zhuǎn)向。行走時機體向前,并稍向外轉(zhuǎn),3條足同時行動,然后再與另一組3條足交替進行。直線行走時的步態(tài)如圖3.2所示。機器人開始運動時左側(cè)的2號腿和右側(cè)的4、6號腿抬起,準(zhǔn)備向前擺動,另外3條腿1、3、5處于支撐狀態(tài),支撐機器人本體確保機器人的原有重心位置處于3條支撐腿所構(gòu)成的三角形內(nèi),使機器人處于穩(wěn)定狀態(tài)不至于摔倒,見圖3.2(a),擺動腿2、4、6向前跨步,見圖3.2(b),支撐腿1、3、5一面支撐機器人本體,一面在小型直流驅(qū)動電機和皮帶傳動機構(gòu)的作用下驅(qū)動機器人本體,使機器人機體向前運動一個半步長S,見圖3.2(c);在機器人機體移動到位

14、時,擺動腿2、4、6立即放下,呈支撐態(tài)。使機器人的重心位置處于2、4、6三條支撐腿所構(gòu)成的三角形穩(wěn)定區(qū)內(nèi),原來的支撐腿1、3、5已抬起并準(zhǔn)備向前跨步,見圖3.2(d)擺動腿1、3、5向前跨步,見圖3.2(e),支撐腿2、4、6此時一面支撐機器人本體,一面驅(qū)動機器人機體使機器人機體向前運動一個步長S,見圖3.2(f),如此不斷重復(fù)步態(tài)a-b-c-d-e-f-a,循環(huán)往復(fù)實現(xiàn)機器人不斷向前運動。圖3.23.4總原理圖: 注:電路模塊較多,故較多采用網(wǎng)絡(luò)標(biāo)號的方法來實現(xiàn)電路圖的物理連接。3.5 PCB電路圖: 四、項目總結(jié)本次項目設(shè)計中,首先對六足機器人的機械構(gòu)造進行了深入的討論 最終確定了三角步態(tài)

15、的六足結(jié)構(gòu),采用每腳三個舵機來模仿蜘蛛的足關(guān)節(jié)。而后在舵機的選取方面采用了目前性價比較高的MG996舵機及全鋁合金制的機身和關(guān)節(jié)等。其次,前期采用STC89C51單片機模擬驅(qū)動舵機,由于STC89C52單片機的IO口驅(qū)動電流無法驅(qū)動MG996舵機,因此采用了STC12C5A60S2單片機驅(qū)動。舵機的信號是由單片機提供,其工作電壓是外部供電。有效的減輕單片機的負載且提高單片機運行的穩(wěn)定性。機械結(jié)構(gòu)也是六足機器人重要的考慮部分,機械構(gòu)造的穩(wěn)定是完成后續(xù)動作的基礎(chǔ),機械的緩震方面也是要做到細致。保證機械的流暢運行。五、附錄全部程序:#include<stc12c5a60s2.h>#inc

16、lude"servo.h"#include<intrins.h>sbit led=P42;uchar time0_count,led_count;/最小值為0 最大值19 0度到190度/*函數(shù)申明*/void Delay1ms(void);/12.000MHzvoid Delay_ms(unsigned int x);void time_configuration();/*步態(tài)程序*/void Gesture0_ShenZhan(void); /機體伸展void Gesture1_ZhanLi(void); /機體站立姿態(tài)void Gesture2_ShouS

17、uo(void); /機體收縮void Gesture3_JinShi(void); /進食姿態(tài)void Gesture4_SanZuZhanLi(void);void Gesture5_SiZuZhanLi(void);void Left_Gait(void); /左轉(zhuǎn)動作void Right_Gait(uint time); /右轉(zhuǎn)動作void Forword_Gait(uint time); /前進動作void Back_Gait(void); /后退動作/*主函數(shù)*/void main()/*所有IO口設(shè)置為推挽輸出*/ P1M1=0x00;P1M0=0xff;P0M1=0x00;P0

18、M0=0xff;P2M1=0x00; P2M0=0x81; time_configuration(); Gesture0_ShenZhan(); Delay_ms(500); Delay_ms(500); while(1) Forword_Gait(200); /*/4足站立/*/定稿void Gesture5_SiZuZhanLi(void)Angle_Servo_1=7; /左前Angle_Servo_2=0; Angle_Servo_4=4; /左中Angle_Servo_5=12; Angle_Servo_7=7; /左后Angle_Servo_8=8; Angle_Servo_16=

19、13; /右前Angle_Servo_17=0; Angle_Servo_13=16; /右中Angle_Servo_14=12; Angle_Servo_10=13; /右后Angle_Servo_11=12; Delay_ms(500);Delay_ms(500);Angle_Servo_3=8;Angle_Servo_6=8;Angle_Servo_9=12; Angle_Servo_18=8;Angle_Servo_15=8; Angle_Servo_12=8; /*/3足站立/*/定稿void Gesture4_SanZuZhanLi(void)Angle_Servo_1=10; /

20、左前Angle_Servo_2=0;Angle_Servo_3=0; Angle_Servo_7=10; /左后Angle_Servo_8=19;Angle_Servo_9=19; Angle_Servo_13=10; /右中Angle_Servo_14=0;Angle_Servo_15=0; /*函數(shù)名稱:void Forword_Gait(unsigned int time)函數(shù)功能:前進步態(tài)轉(zhuǎn)換角度:30度*/void Forword_Gait(unsigned int time) /*-135抬起-*/ /1 /左前足抬起 Angle_Servo_1=7; Angle_Servo_2=

21、7; Angle_Servo_3=13; /左后足抬起 Angle_Servo_7=7; Angle_Servo_8=7; Angle_Servo_9=9; /右中足抬起 Angle_Servo_13=11; Angle_Servo_14=11; Angle_Servo_15=9; /*延時*/ Delay_ms(time);/*-135前移-*/ /2 /左前足 Angle_Servo_1=7; Angle_Servo_2=7; Angle_Servo_3=14; /左后足 Angle_Servo_7=7; Angle_Servo_8=7; Angle_Servo_9=10; /右中足 An

22、gle_Servo_13=11; Angle_Servo_14=11; Angle_Servo_15=8; /*延時*/ Delay_ms(time);/*-135放下-*/ /2 /左前足 Angle_Servo_1=9; Angle_Servo_2=9; Angle_Servo_3=14; /左后足 Angle_Servo_7=9; Angle_Servo_8=9; Angle_Servo_9=10; /右中足 Angle_Servo_13=11; Angle_Servo_14=11; Angle_Servo_15=8; /*延時*/ Delay_ms(time);/*-246抬起-*/

23、/右前足抬起 Angle_Servo_10=11; Angle_Servo_11=11; Angle_Servo_11=3; /右后足抬起 Angle_Servo_16=11; Angle_Servo_17=11; Angle_Servo_18=11; /左中足抬起 Angle_Servo_4=9; Angle_Servo_5=9; Angle_Servo_6=9; /*延時*/ Delay_ms(time);/*-246前移135歸位-*/ /右前足 Angle_Servo_10=11; Angle_Servo_11=11; Angle_Servo_12=2; /右后足 Angle_Serv

24、o_16=11; Angle_Servo_17=11; Angle_Servo_18=10; /左中足 Angle_Servo_4=7; Angle_Servo_5=7; Angle_Servo_6=8; /歸位 /左前足 Angle_Servo_1=9; Angle_Servo_2=9; Angle_Servo_3=14; /左后足 Angle_Servo_7=9; Angle_Servo_8=9; Angle_Servo_9=7; /右中足 Angle_Servo_13=9; Angle_Servo_14=9; Angle_Servo_15=9; /*延時*/ Delay_ms(time)

25、;/*-246放下-*/ /右前足 Angle_Servo_10=9; Angle_Servo_11=9; Angle_Servo_12=2; /右后足 Angle_Servo_16=9; Angle_Servo_17=9; Angle_Servo_18=10; /左中足 Angle_Servo_4=9; Angle_Servo_5=9; Angle_Servo_6=8;/*延時*/ Delay_ms(time);/*-135抬起-*/ /左前足抬起 Angle_Servo_1=7; Angle_Servo_2=7; Angle_Servo_3=14; /左后足抬起 Angle_Servo_7

26、=7; Angle_Servo_8=7; Angle_Servo_9=7; /右中足抬起 Angle_Servo_13=11; Angle_Servo_14=11; Angle_Servo_15=9; /*延時*/ Delay_ms(time);/*-135前移246歸位-*/ /歸位 /右前足 Angle_Servo_10=9; Angle_Servo_11=9; Angle_Servo_12=3; /右后足 Angle_Servo_16=9; Angle_Servo_17=9; Angle_Servo_18=11; /左中足 Angle_Servo_4=9; Angle_Servo_5=9

27、; Angle_Servo_6=9;/*延時*/ Delay_ms(time); /*/機體進食狀態(tài)/*/ void Gesture3_JinShi(void)Angle_Servo_4=3; /左中Angle_Servo_5=9;Angle_Servo_6=5; Angle_Servo_7=9; /左后Angle_Servo_8=7;Angle_Servo_9=7; Angle_Servo_13=10; /右中Angle_Servo_14=5;Angle_Servo_15=9; Angle_Servo_10=5; /右后Angle_Servo_11=7;Angle_Servo_12=7; /

28、*-運動-*/落下 Angle_Servo_1=4; /左前 Angle_Servo_2=1;Angle_Servo_3=7;Angle_Servo_16=10; /右前Angle_Servo_17=14;Angle_Servo_18=7;/Delay_ms(300);/ /抬起/Angle_Servo_1=6;/Angle_Servo_16=10;/ /Angle_Servo_2=0;/Angle_Servo_17=0;/Angle_Servo_3=19;/Angle_Servo_18=19;/Delay_ms(300);/*-*/*/機體收縮/*/ /定稿void Gesture2_Sho

29、uSuo(void)Angle_Servo_1=7; /左前Angle_Servo_2=1; Angle_Servo_4=7; /左中Angle_Servo_5=1; Angle_Servo_7=7; /左后Angle_Servo_8=1;Angle_Servo_16=7; /右前Angle_Servo_17=14; Angle_Servo_13=7; /右中Angle_Servo_14=14; Angle_Servo_10=7; /右后Angle_Servo_11=14;Delay_ms(500);Angle_Servo_3=1;Angle_Servo_6=1; Angle_Servo_9=

30、1; Angle_Servo_18=17;Angle_Servo_15=17; Angle_Servo_12=17; /*/機體站立/*/定稿void Gesture1_ZhanLi(void)Angle_Servo_1=7; /左前Angle_Servo_2=7;Angle_Servo_3=7; Angle_Servo_4=7; /左中Angle_Servo_5=7;Angle_Servo_6=7; Angle_Servo_7=7; /左后Angle_Servo_8=7;Angle_Servo_9=7; Angle_Servo_16=7; /右前Angle_Servo_17=7;Angle_

31、Servo_18=7; Angle_Servo_13=7; /右中Angle_Servo_14=7;Angle_Servo_15=7; Angle_Servo_10=7; /右后Angle_Servo_11=7;Angle_Servo_12=7; /*/機體伸展/*/定稿void Gesture0_ShenZhan(void)Angle_Servo_1=9; /左前Angle_Servo_2=9;Angle_Servo_3=14; Angle_Servo_4=9; /左中Angle_Servo_5=9;Angle_Servo_6=9; Angle_Servo_7=9; /左后Angle_Ser

32、vo_8=9;Angle_Servo_9=7; Angle_Servo_10=9; /右前Angle_Servo_11=9;Angle_Servo_12=3; Angle_Servo_13=9; /右中Angle_Servo_14=9;Angle_Servo_15=9; Angle_Servo_16=9; /右后Angle_Servo_17=9;Angle_Servo_18=11; /*函數(shù)名稱:void Left_Gait(void)函數(shù)功能:左轉(zhuǎn)步態(tài)轉(zhuǎn)換角度:30度*/void Left_Gait(void)/*函數(shù)名稱:void Left_Gait(void)函數(shù)功能:右轉(zhuǎn)步態(tài)轉(zhuǎn)換角度:

33、30度*/void Right_Gait(uint time)/*-組1抬起-*/ /左前足抬起 Angle_Servo_1=7; /11恢復(fù)初始角度 左前足 內(nèi)圈舵機 Angle_Servo_2=2; /9抬高30度 左前足 中圈舵機 Angle_Servo_3=4; /11往下30度 左前足 外圈舵機 /左后足抬起 Angle_Servo_7=10; /14恢復(fù)初始角度 左后足 內(nèi)圈舵機 Angle_Servo_8=12; /13抬高30度 左后足 中圈舵機 Angle_Servo_9=11; /12往下30度 左后足 外圈舵機 /右中足抬起 Angle_Servo_13=9; /13恢復(fù)

34、初始角度 右中足 內(nèi)圈舵機 Angle_Servo_14=2; /9抬高30度 右中足 中圈舵機 Angle_Servo_15=4; /11往下30度 左后足 外圈舵機/*-組2右轉(zhuǎn)-*/ Angle_Servo_16=5; /12左轉(zhuǎn)30度 右前足 內(nèi)圈舵機 Angle_Servo_10=5; /12左轉(zhuǎn)30度 右后足 內(nèi)圈舵機 Angle_Servo_4=6; /13左轉(zhuǎn)30度 左中足 內(nèi)圈舵機/*延時*/ Delay_ms(time);/*-組1落下-*/ /左前足落下 Angle_Servo_2=5; /9恢復(fù)初始角度 左前足 中圈舵機 Angle_Servo_3=3; /11恢復(fù)初始

35、角度 左前足 外圈舵機 /左后足落下 Angle_Servo_8=9; /13恢復(fù)初始角度 左后足 中圈舵機 Angle_Servo_9=12; /12恢復(fù)初始角度 左后足 外圈舵機 /右中足落下 Angle_Servo_14=5; /9恢復(fù)初始角度 右中足 中圈舵機 Angle_Servo_15=3; /11恢復(fù)初始角度 右中足 外圈舵機/*-組2抬起-*/ /右前足抬起 Angle_Servo_16=8; /12恢復(fù)初始角度 右前足 內(nèi)圈舵機 Angle_Servo_17=2; /9抬高30度 右前足 中圈舵機 Angle_Servo_18=4; /11往下30度 右前足 外圈舵機 /右后

36、足抬起 Angle_Servo_10=8; /12恢復(fù)初始角度 右后足 內(nèi)圈舵機 Angle_Servo_11=2;/9抬高30度 右后足 中圈舵機 Angle_Servo_12=4; /11往下30度 右后足 外圈舵機 /左中足抬起 Angle_Servo_4=9; /13恢復(fù)初始角度 左中足 內(nèi)圈舵機 Angle_Servo_5=2;/9抬高30度 左中足 中圈舵機 Angle_Servo_6=4; /11往下30度 左中足 外圈舵機/*延時*/ Delay_ms(time);/*-組1右轉(zhuǎn)-*/ /機體右轉(zhuǎn) Angle_Servo_1=4; /11左轉(zhuǎn)30度 左前足 內(nèi)圈舵機 Angle

37、_Servo_7=7; /14左轉(zhuǎn)30度 左后足 內(nèi)圈舵機 Angle_Servo_13=6; /13左轉(zhuǎn)30度 右中足 內(nèi)圈舵機/*-組2落下-*/ /右前足落下 Angle_Servo_17=5; /9恢復(fù)初始角度 右前足 中圈舵機 Angle_Servo_18=4; /11恢復(fù)初始角度 右前足 外圈舵機 /右后足落下 Angle_Servo_11=5; /9恢復(fù)初始角度 右后足 中圈舵機 Angle_Servo_12=4; /11恢復(fù)初始角度 右后足 外圈舵機 /左中足落下 Angle_Servo_5=5; /9恢復(fù)初始角度 左中足 中圈舵機 Angle_Servo_6=3; /11恢復(fù)

38、初始角度 左中足 外圈舵機/*延時*/Delay_ms(time);/*函數(shù)名稱:void Left_Gait(void)函數(shù)功能:后退步態(tài)轉(zhuǎn)換角度:30度*/void Back_Gait(void)/*定時器函數(shù)配置*/void time_configuration() TMOD=0X01; TH0=0XFF;/0.125MS TL0=0X83; ET0=1; TR0=1; EA=1; time0_count=0;void time0() interrupt 1/*定時計數(shù)單元*/ TH0=0XFF; /0.125MS TL0=0X83; time0_count+; if(time0_cou

39、nt>160) time0_count=0; /20MS if(time0_count=160)led_count+;if(led_count=4)led_count=0;led=led;/*/ /頭/*-舵機19-*/ if(time0_count<=Angle_Servo_Head+4) SERVO_Series_Head=1;else SERVO_Series_Head=0;/*左邊腿變量*/ /左前/*-舵機1-*/ if(time0_count<=Angle_Servo_1+4) SERVO_Series_1=1;else SERVO_Series_1=0;/*-舵

40、機2-*/ if(time0_count<=Angle_Servo_2+4) SERVO_Series_2=1;else SERVO_Series_2=0; /*-舵機3-*/ if(time0_count<=Angle_Servo_3+4) SERVO_Series_3=1;else SERVO_Series_3=0;/左中/*-舵機1-*/ if(time0_count<=Angle_Servo_4+4) SERVO_Series_4=1;else SERVO_Series_4=0;/*-舵機2-*/ if(time0_count<=Angle_Servo_5+4) SERVO_Series_5=1;else SERVO_Series_5=0;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論