版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、六足爬蟲機器人設計設計人:日期:年月日-UL.1刖日2(一)、機器人的大腦2(二)、機器人的眼睛耳朵2(三)、機器人的腿一一彌動器與驟動輪3(四)、機器人的手臂一一機械傳動專制4(五)、機器人的心臟一一電池4-、AT89S51單片機簡介5(一)、AT89S51主要功能列舉如下:5(二)、AT89S51各引腳功能介紹:5二、控制系統(tǒng)電路圖7三、微型伺服馬達原理與控制8(一)、微型伺服馬達內(nèi)部結(jié)構(gòu)8輸入一個周期性的正向脈沖信號,這個周期性脈沖信號的高電平時間通常在1ms2ms之間,而低電平時間應在5ms到20ms之間,并不很嚴格,下表表示出-個典型的20ms周期性脈沖的正脈沖寬度與微型伺服馬達的輸
2、出臂位置的關(guān)犒入正脈沖寬度(周期為20ns).伺服馬達輸出曾位置,0七-90°.1Omf,-45°.'15ms>ik0°.20ms»/!=45七"290°.(四)選用的伺服馬達我選用的伺服馬達為TowPr。的,型號為SG303。其主要技術(shù)參數(shù)如下:轉(zhuǎn)速:0.23秒/60度。力矩:3.2kgcm。 尺寸:40.4mmX19.8mmX36mm。重量:37.2go 5V電源供電。控制周期脈沖寬度為20mso送出不同的正脈沖寬度是,就可以得到不同的控制效果。控制正脈沖寬度如下:正脈沖寬度為0.3ms時,伺服馬達反轉(zhuǎn)。 正脈沖寬度
3、為2.5ms時,伺服馬達正轉(zhuǎn)。 正脈沖寬度為1.4ms時,伺服馬達回到中點。四、紅外遙控家中許多的電器產(chǎn)品都有遙控的功能,例如電視機、錄像機、VCD、空調(diào)等家電產(chǎn)品,它們都是以紅外遙控的方式進行遙控。(一)紅外遙控系統(tǒng)通用紅外遙控系統(tǒng)由發(fā)射和接收兩大部分組成,應用編/解碼專用集成電路芯片來進行控制操作,如圖1所示。發(fā)射部分包括鍵盤矩陣、編碼調(diào)制、LED紅外發(fā)送器;接收部分包括光、電轉(zhuǎn)換放大器、解調(diào)、解碼電路。(二)遙控發(fā)射器及其編碼遙控發(fā)射器專用芯片很多,根據(jù)編碼格式可以分成兩大類,這里我們以運用比較廣泛,解碼比較容易的一類來加以說明,現(xiàn)以F1本NEC的UPD6121G組成發(fā)射電路為例說明編碼
4、原理。當發(fā)射器按鍵按下后,即有遙控碼發(fā)出,所按的鍵不同遙控編碼也不同。這種遙控碼具有以遙控發(fā)射器專用芯片很多,根據(jù)編碼格式可以分成兩大類,這里我們以運用比較廣泛,解碼比較容易的一類來加以說明,現(xiàn)以F1本NEC的UPD6121G組成發(fā)射電路為例說明編碼原理。當發(fā)射器按鍵按下后,即有遙控碼發(fā)出,所按的鍵不同遙控編碼也不同。這種遙控碼具有以藏蝦f|編碼調(diào)制lLED|>遙控發(fā)射器一|»|光/電放天I一>1解調(diào)|4麗oaa*«»«(at遙控接收器圖1紅外遙控系統(tǒng)框圖下特征:bit“0”采用脈寬調(diào)制的串行碼,以脈寬為0.565ms、間隔0.56ms、周期
5、為1.125ms的組合表示二進制的“0”;以脈寬為0.565ms、間隔1.685ms、周期為2.25ms的組合表示二進制的“1”,其波形如圖2所示。bit4<rJ0.56ms2.25ms1.125ms圖2遙控碼的“0”和“1"上述“0”和“1”組成的32位二進制碼經(jīng)38kllz的載頻進行二次調(diào)制以提高發(fā)射效率,達到降低電源功耗的目的。然后再通過紅外發(fā)射二極管產(chǎn)生紅外線向空間發(fā)射。遙控編碼是連續(xù)的32位二進制碼組,其中前16位為用戶識別碼,能區(qū)別不同的電器設備,防止不同機種遙控碼互相干擾。該芯片的用戶識別碼固定為十六進制01H;后16位為8位操作碼(功能碼)及其反碼。UPD612
6、1G最多額128種不同組合的編碼,如圖3所示。遙控器在按鍵按下后,周期性地發(fā)出同一種32位二進制碼,周期約為108mso一組碼本身的持續(xù)時間隨它包含的二進制“0”和“1”的個數(shù)不同而不同,大約在4563ms之間,圖4為發(fā)射波形圖。國3遙控信號增碼波彤囹圖4遍栓伯M的圓期,性波影f(=IO8msfr-IOKm?.引切q;用戶tn切,i用戶識碼反碼:膜作碼:擇作碼(反碼>引切q;用戶tn切,i用戶識碼反碼:膜作碼:擇作碼(反碼>(三)紅外接收模塊1GND2IbV3DataOJt紅外接收模塊左圖為一常用的紅外接收模塊。其內(nèi)部含有高頻的濾波電路,專門用來濾除紅外線合成信號的載波信號(38K
7、H),并送出接收到的信號。當紅外線合成信號進入紅外接收模塊,在其輸出端便可以得到原先發(fā)射器發(fā)出的數(shù)字編碼,只要經(jīng)過單片機解碼程序進行解碼,便可以得知按下了哪一個按鍵,而做出相應的控制處理,完成紅外遙控的動作。(四)紅外解碼程序設計紅外解碼程序主要工作為等待紅外線信號出現(xiàn),并跳過引導信號,開始收集連續(xù)32位的表面數(shù)據(jù),存入內(nèi)存的連續(xù)空間。位信號解碼的原則是:以判斷各個位的波寬信號來決定高低信號。位解碼原理如下: 解碼為0:低電平的寬度0.56ms+高電平的寬度0.56ms。 解碼為1:低電平的寬度1.68ms+高電平的寬度0.56ms<>程序中必須設計一精確的0.1ms延時時間作為基
8、礎(chǔ)時間,以計數(shù)實際的波形寬度,若讀值為5表示波形寬度為0.5ms,若讀值為16表示波形寬度為1.6ms,以此類推。高電平的寬度1.12ms為固定,因此可以直接判斷低電平的寬度的計數(shù)值5或時16,來確定編碼為0或是1。程序中可以減法指令SUBB來完成判斷,指令“SUBBA,R2”中若R2為計數(shù)值,A寄存器設為8,就可如下:當“8-R2”有產(chǎn)生借位,借位標志C=l,表示編碼為lo當“8R2”無產(chǎn)生借位,借位標志C=0,表示編碼為0。將借位標志C經(jīng)過右移指令“RRCA”轉(zhuǎn)入A寄存器中,再經(jīng)由R0寄存器間接尋址存入內(nèi)存中。詳細解碼程序請參看“紅外遙控爬蟲機器人ASM程序”中的“紅外解碼子程序”。五、控
9、制程序;紅外遙控爬蟲機器人ASM程序HOMEEQU14BACKEQU3FOREQU25:遙控器按鍵16比較碼CODE_K1EQU19HCODE_K2EQU18HCODE_K3EQUOAHCODE_K4EQU09HCODE_K5EQUOBHCODE_K6EQUI4H;機器人前進比較碼:機器人后退比較碼:機器人左轉(zhuǎn)比較碼:機器人右轉(zhuǎn)比較碼:機器人回到中點比較碼:機器人行走啟動進比較碼:伺服馬達回到中點時間常數(shù):伺服馬達反轉(zhuǎn)時間常數(shù):伺服馬達正轉(zhuǎn)時間常數(shù)1RCOMEQU30HCOMEQU32HIRINEQUP3.2WLEDEQUP3.7SPKEQUP3.4DJZEQUP1.0DJLEQUPl.lDJ
10、REQUP1.2ORG0HJMPBEGIN:程序代碼由地址。開始執(zhí)行:進入主程序;紅外線信號解碼數(shù)據(jù)放置變量起始地址:比較第3字節(jié)變量:紅外線IR信號輸入位引腳定義:發(fā)光二極管引腳定義:壓電喇叭引腳定義:中間伺服馬達引腳定義:左側(cè)伺服馬達引腳定義:右側(cè)伺服馬達引腳定義zLRKJJJPDDDSCALLCALLCALLCALLCALLCALLSETBLOOP:MOVCALLCALLLED_BLBZGO_HOMELED_BLBZQDIRINRO,#IRCOMIRJNOPBEGIN:關(guān)閉中間伺服馬達;關(guān)閉左側(cè)伺服馬達:關(guān)閉右側(cè)伺服馬達:關(guān)閉壓電喇叭;發(fā)光二極管閃爍,表示程序開始執(zhí)行;壓電喇叭發(fā)出嘀的一
11、聲;全部伺服馬達回到中點;發(fā)光二極管閃爍,表示機器人準備完畢;壓電喇叭發(fā)出嘀的一聲;運行行走啟動子程序,擺好行走姿態(tài):紅外線信號IR輸入位設為高電平,準備接收紅外信號:設置IR解碼起始地址:進行IR解碼:進行解碼比較,并控制機器人動作;繼續(xù)循環(huán)執(zhí)行DELAY:MOVR6.#50DI:MOVR7,#99DJNZR7.$DJNZR6.D1DJNZR5.DELAYRETLED_BL:MOVR1,#4LEI:CPLWLEDMOVR5,#10CALLDELAYDJNZRl.LElRET;lOms延時子程序:發(fā)光二極管閃爍子程序:發(fā)光二極管反向:進行100ms延時BZ:MOVR6.#0:壓電喇叭發(fā)聲于程序
12、Bl:SETBSPK:壓電喇叭得電,開始發(fā)聲DJNZR6.BIMOVR5.#5CALLDELAY:進行50ms延時CLRSPK;關(guān)閉壓電喇叭RET120:CALLDELDEL:0.1ms延時子程序MOVDELAY1:MOVEl:MOVE2:DJNZDJNZDJNZRETR5,#lR6,#2R7,#22R7,E2R6.E1R5.DELAY1iRJN:紅外解碼子程序II:JNB1RIN.I2:等待紅外IR信號出現(xiàn)JMP1112:MOVR4,#20;發(fā)現(xiàn)紅外1R信號,延時一下DJNZR4J20JBIRINJ1:確認紅外IR信號出現(xiàn)121:JBIRINJ3;等待IR變?yōu)楦唠娖紺ALLDELJMP121
13、13:MOVR3.#0:8位數(shù)清0LL:JNBCALLJMPIRIN.I4DELLL;等待IR變?yōu)榈碗娖?4:JBIRIN.I5:等待IR變?yōu)楦唠娖紺ALLDELJMP1415:MOVR2,#0;0.1ms計數(shù)L1:CALLDELJBIRIN,N1;等待IR變?yōu)楦唠娖組OVA,#8;設置減數(shù)為8CLRC;清除借位標志CSUBBA,R2:判斷高低位MOVA.R0:取出內(nèi)存中原先數(shù)據(jù)RRCA:右移指令,將借位標志C右移進入A寄存器中MOVR0.A:將數(shù)據(jù)寫入內(nèi)存中INCR3:處理完成一位,R3+1(R3計數(shù))CJNER3.#8.LL;循環(huán)處理8位MOVR3.#0:R3清。INCRO;處理完成1個字
14、節(jié),R0+1(R0計數(shù))CJNER0,#34H,LL;循環(huán)收集到4個字節(jié)JMPOK;至完成返回N1:INCR2;R2+1(R2計數(shù))CJNER2,#30,LI:0.1ms計數(shù)過長,時間到自動離開OK:RET;完成返回OP:執(zhí)行解碼動作子程序MOVA,COMCJNEA,#CODE_K5.A1:對解碼進行比較,看是否是回到中點指令,否就轉(zhuǎn)至下項比較CALLLED.BL:發(fā)光二極管閃爍CALLBZ:壓電喇叭發(fā)出嘀的一聲CALLGO_HOME;執(zhí)行回到中點CALLLED_BL:發(fā)光二極管閃爍CALLBZ:壓電喇叭發(fā)出嘀的一聲RETAl:MOVA.COMCJNEA.#CODE_KI,A2CALLBZ:對
15、解碼進行比較,看是否是前進指令,否就轉(zhuǎn)至下一項比較:壓電喇叭發(fā)出嘀的-聲;執(zhí)行前進CALLGO_FORRETA2:MOVA,COMCJNEA,#CODE_K2,A3:對解碼進行比較,看是否是后退指令,否就轉(zhuǎn)至下一項比較CALLBZ:壓電喇叭發(fā)出嘀的一聲CALLGO_BACKRETA3:;LMOVA.COM:執(zhí)行后退CJNEA.#CODE_K3,A4:對解碼進行比較,看是否是左轉(zhuǎn)指令,否就轉(zhuǎn)至下一項比較CALLBZ;壓電喇叭發(fā)出嘀的-聲CALLGO_LRETA4:;RMOVA.COM;執(zhí)行左轉(zhuǎn)CJNEA,#CODE_K4,A5:對解碼進行比較,看是否是右轉(zhuǎn)指令,否就轉(zhuǎn)至下一項比較CALLBZ:壓
16、電喇叭發(fā)出嘀的一聲CALLGO_RRETA5:MOVA,COM;執(zhí)行右轉(zhuǎn)CJNEA,#CODE_K6,A6:對解碼進行比較,看是否是行走啟動指令,否就轉(zhuǎn)至下一項CALLLED_BL:發(fā)光二極管閃爍CALLBZ;壓電喇叭發(fā)出嘀的聲CALLQD:執(zhí)行行走啟動CALLLED_BL;發(fā)光二極管閃爍CALLBZRETA6:壓電喇叭發(fā)出嘀的一聲RET;返回HOME1:SETBDJZSETBDJLSETBDJRMOVR4,#HOMEGl:CALLDELDJNZR4,GiCLRDJZCLRDJLCLRDJRMOVR4.#(200-HOME)G2:CALLDELDJNZR4.G2RET:各伺服電機回中點控制子程
17、序GO_HOME:MOVR3,#I5Hl:CALLHOMEDJNZR3,HIRET:機器人回中點子程序DJZ_FOR:SETBDJZMOVR4,#FORFZ1:CALLDELDJNZR4.FZ1CLRDJZMOVR4.#(200-FOR)FZ2:CALLDELDJNZR4.FZ2:中間電機正轉(zhuǎn)子程序RETDJL_FOR:SETBDJLMOVR4.#FORFL1:CALLDELDJNZR4,FL1CLRDJLMOVR4,#(200-FOR)FL2:CALLDELDJNZR4,FL2RET:左側(cè)電機正轉(zhuǎn)子程序DJR_FOR:SETBDJRMOVR4.#FORFR1:CALLDELDJNZR4.FR
18、ICLRDJRMOVR4,#(200-FOR)FR2:CALLDEL:右側(cè)電機正轉(zhuǎn)子程序DJNZR4,FR2RETDJZ.BACK:SETBDJZMOVR4,#BACKDJZBA1:CALLDELDJNZR4,DJZBAICLRDJZMOVR4,#(200-BACK)DJZB2:CALLDELDJNZR4.DJZB2RET:中間電機反轉(zhuǎn)子程序DJL_BACK:SETBDJLMOVR4.#BACKDJLBA1:CALLDELDJNZR4.DJLBA1CLRDJLMOVR4,#(200-BACK)DJLB2:CALLDELDJNZR4,DJLB2RET;左側(cè)電機反轉(zhuǎn)子程序DJRBAI:MOVR4,
19、#BACKCALLDELDJRB2:DJNZR4.DJRBA1CLRDJRMOVR4.#(200-BACK)CALLDELDJNZR4.DJRB2RETGO.FOR:Fl:MOVR3,#5;機器人向前行走子程序CALLDJZ.FORF2:DJNZR3,F1MOVR3,#10CALLDJR_BACKF3:DJNZR3,F2MOVR3,#10CALLDJL.BACKF4:DJNZR3,F3MOVR3.#5CALLDJZ.BACKDJNZR3.F4DJR_BACK:SETBDJR:右側(cè)電機反轉(zhuǎn)子程序MOVR3.#IOF5:CALLDJL.FORDJNZR3.F5MOVR3.#!0F6:CALLDJR
20、_FORDJNZR3,F6RETGO-BACK:MOVR3,#10:機器人向后行走子程序BAI:CALLDJL_BACKDJNZR3,BA1MOVR3,#IOBA2:CALLDJR_BACKDJNZR3.BA2MOVR3,#5BA4:CALLDJZ_FORDJNZR3.BA4MOVR3.#IOBA5:CALLDJR_FORDJNZR3.BA5MOVR3,#10BA6:CALLDJL.FORDJNZR3.BA6MOVR3,#5BA7:CALLDJZ_BACKDJNZR3.BA7RETGO_L:GLI:MOVR3.#10:機器人左轉(zhuǎn)行走了程序CALLDJL_BACKDJNZR3.GLIMOVR3,
21、#5GL2:CALLDJZ_FORDJNZR3.GL2MOVR3,#10GL3:CALLDJR.BACKDJNZR3.GL3MOVR3,#10GL7:CALLDJL.FORDJNZR3,GL7MOVR3.#5GL4:CALLDJZ_BACKDJNZR3.GL4MOVR3.#IOGL5:CALLDJR_FORDJNZR3.GL5RETGO_R:GR1:MOVR3,#10;機器人右轉(zhuǎn)行走子程序CALLDJR_BACKDJNZR3.GR1MOVR3,#5GR2:CALLDJZ_FORDJNZR3,GR2MOVR3,#IOGR3:CALLDJL_BACKDJNZR3.GR3MOVR3.#IOGR4:C
22、ALLDJR_FORDJNZR3.GR4MOVR3.#5GR5:CALLDJZ_BACKDJNZR3.GR5MOVR3.#IOGR6:CALLDJL.FORDJNZR3.GR6RETQD:MOVR3,#5:機器人行走啟動子程序Q1:CALLDJZ_BACKDJNZR3,Q1MOVR3,#5Q2:CALLDJR_FORDJNZR3.Q2MOVR3,#5Q3:CALLDJL.FORDJNZR3.Q3RETEND六、六足爬蟲機器人結(jié)構(gòu)設計圖紅外遙控六足爬蟲機器人七、制作完成后照片(二)、微行伺服馬達的工作原理8(三)、伺服馬達的控制9(四)、選用的伺服馬達9四、紅外遙控II(一)、紅外遙控系統(tǒng)11(
23、二)、遙控發(fā)射器及發(fā)編碼II(三)、紅外接收模塊11(四)、紅外解碼程序設計11五、控制程序12六、六足爬蟲機器人結(jié)構(gòu)設計圖18今年年初,學校為參加中央電視臺舉辦的第三屆全國大學生機器人電視大賽,組建了機器人制作小組。我積極參加,有幸成為了其中的一員。因為我們以前沒有參加過類似的比賽,也沒有制作機器人的經(jīng)驗。可以說我們什么都是從零開始,邊學習邊制作。通過這半年多的制作過程,我從中學到了很多書本上學不到的東西,也得到了很好的學習與鍛煉的機會。最初,我們組建了機器人制作實驗室。到五金機電市場購買了必要的工具和一些制作材料。然后開始制作實驗機器人的身體一一框架。實驗機器人的框架我們是使用輕型萬能角鋼
24、制作的,這種角鋼的兩側(cè)都有間隔均勻的孔槽,可以很方便的用螺檢進行連接。用不同長度的角鋼組合后,就可以得到不同大小的立方體和長方體及多邊形。機器人身體的框架就搭建好了。在它的上面將裝上:機器人的大腦一一可編程控制器、機器人的眼睛耳朵一一傳感器、機器人的腿一一驅(qū)動輪、機器人的手臂一一機械傳動專制、機器人的心臟一-電池之所以使用輕型萬能角鋼,主要是因為是在制作試驗機型,而輕型萬能角鋼安裝拆卸方便和便于修改長度,調(diào)整設計。實驗機器人定型后,就照其尺寸用不銹鋼方管焊接制作機器人的身體。再在上面進行打孔等工作,后就可以將機器人的其它部分安裝上去。這樣一個機器人就制作好了。下面我介紹一下機器人的基本組成部分
25、:(-)機器人的大腦它可以有很多叫法,可以叫做:可編程控制器、微控制器,微處理器,處理器或者計算器等,不過這都不要緊,通常微處理器是指一塊芯片,而其它的是一整套控制器,包括微處理器和一些別的元件。任何一個機器人大腦就必須要有這塊芯片,不然就稱不上機器人了。在選擇微控制器的時候,主要要考慮:處理器的速度,要實現(xiàn)的功能,ROM和RAM的大小,I/O端口類型和數(shù)量,編程語言以及功耗等。其主要類型有:單片機、PLC、工控機、PC機等。單有這些硬件是不夠的,機器人的大腦還無法運行。只有在程序的控制下,它才能按我們的要求去工作??梢哉f程序就是機器人的靈魂了。而程序是由編程語言所編寫的。編程語言是一個控制器
26、能夠接受的語言類型,一般有C語言,匯編語言或者basic語言等,這些通常能被高級一點的控制器直接執(zhí)行,因為在高級控制器里面內(nèi)置了編譯器能夠直接把一些高級語言翻譯成機器碼。微處理器將執(zhí)行這些機器碼,并對機器人進行控制。(二)機器人的眼睛耳朵傳感器,是機器人的感覺器官,是機器人和現(xiàn)實世界之間的紐帶,使機器人能感知周圍的環(huán)境情況。其主要有:光電傳感器、紅外傳感器、力傳感器、超聲波傳感器、位置和姿態(tài)傳感器等等。下面我將就幾種常用傳感器進行介紹:1、光電傳感器:光電傳感器的原理是光電效應。其主要用途是顏色識別(機器人就可以沿著地上的線條行進了)和光電編碼等。2、紅外傳感器:紅外傳感器是用來測量距離和感知
27、周圍情況的。因為發(fā)射出去的紅外信號在一定距離內(nèi)遇到物體就會反射回來。通過發(fā)送紅外線信號,并接收反射回來的信號,機器人就可以感知前方或身體周圍的情況,做出相應的調(diào)整(如:倒退或繞行等)。3、力傳感器:力傳感器是用來檢測碰撞或者接觸信號的,比如機械手的應用,當你放一個東西到機械手的時候,機械手自動抓住它,它就需要力傳感器檢測東西抓的緊不緊。典型的力傳感器是微動開關(guān)和壓敏傳感器。微動開關(guān)其實就是一個小開關(guān),通過調(diào)節(jié)開關(guān)上的杠桿長短,能夠調(diào)節(jié)觸動開關(guān)的力的大小。用來做碰撞檢測這是最好不過了。但是這種傳感器必須事先確定好力的閥值,也就是說只能實現(xiàn)硬件控制(開還控制)。而壓敏傳感器是能根據(jù)受力大小,自動調(diào)
28、節(jié)輸出電壓或者電流,從而可以實現(xiàn)軟件控制(閉環(huán)控制)。4、超聲波傳感器:超聲波傳感器是從蝙蝠那里學來的,通過把發(fā)射出的信號與接收到的信號進行對比,就可以測定周圍是否有障礙物,及障礙物的距離,也屬于距離探測傳感器,能提供交遠的探測范圍,而且還能提供在一個范圍內(nèi)的探測而不是一條線的探測。5、位置和姿態(tài)傳感器:機器人在移動或者動作的時候必須時時刻刻知道自己的姿態(tài)動作,否則就會產(chǎn)生控制中的一個開環(huán)問題,沒有反饋,無法獲知運動是否正確。位置傳感器和姿態(tài)傳感器就是用來解決這個問題的。常用的有光電編碼器,由于機器人的執(zhí)行機構(gòu)一般是電機驅(qū)動,通過計算電機轉(zhuǎn)的圈數(shù),可以得出電機帶動部件的大致位置,編碼器就是這樣
29、一種傳感器,它一般和電機軸或者轉(zhuǎn)動部件直接連接,電機或者轉(zhuǎn)動部件轉(zhuǎn)了多少圈或者伯度能夠通過編碼器讀出,控制軟件再根據(jù)讀出數(shù)據(jù)進行位置估計計算。還有一種是陀螺儀,這是利用陀螺原理制作的傳感器,主要可以測得移動機器人的移動加速度,轉(zhuǎn)過的角度等信息。(三)機器人的腿一一驅(qū)動器與驅(qū)動輪驗動器就是馳動機器人的動的部件。最常用的是電機了。當然還有液壓,氣動等別的驅(qū)動方式。一個機器人最主要的控制量就是控制機器人的移動,無論是自身的移動還是手臂等關(guān)節(jié)的移動,所以機器人驅(qū)動器中最根本和本質(zhì)的問題就是控制電機,控制電機轉(zhuǎn)的圈數(shù),就可以控制機器人移動的距離和方向,機械手臂的彎曲的程度或者移動的距離等。所以,第一個要
30、解決的問題就是如何讓電機能根據(jù)自己的意圖轉(zhuǎn)動。一般來說,有專門的控制卡和控制芯片來進行控制的。有了這些控制卡和芯片,我們所要做的就是把微控制器和這些連接起來,然后就可以用程序來控制電機了。第二個問題是控制電機的速度,在機器人上的實際表現(xiàn)就是機器人或者手臂的實際運動速度了,機器人走的快慢全靠電機的轉(zhuǎn)速,這樣,我們就要求控制卡對電機有速度控制。電機目前常用的有兩種,步進電機和直流電機。下面我將就這兩種電機進行介紹:1、直流電機:這是最最普通的電機了。直流電機最大的問題是你沒法精確控制電機轉(zhuǎn)的圈數(shù),也就前面所說的位置控制。你必須加上一個編碼盤,來進行反饋,來獲得實際轉(zhuǎn)的圈數(shù)。但是直流電機的速度控制相
31、對就比較簡單,用一種叫PWM(脈寬調(diào)速)的調(diào)速方法可以很輕松的調(diào)節(jié)電機速度?,F(xiàn)在也有很多控制芯片帶調(diào)速功能的。選購時要考慮的參數(shù)是電機的輸出力矩,電機的功率,電機的最高轉(zhuǎn)速。2、步進電機:看名字就知道了,它是一步一步前進的。也就是說,它可以一個角度一個角度旋轉(zhuǎn),不象直流電機,你可以很輕松的調(diào)節(jié)步進電機的轉(zhuǎn)角位置,如果你發(fā)一個轉(zhuǎn)10圈的指令,步進電機就不會轉(zhuǎn)11圈,但是如果是直流電機,由于慣性作用,它可能轉(zhuǎn)11圈半。步進電機的調(diào)速是通過控制電機的頻率來獲得的。一般控制信號頻率越高,電機轉(zhuǎn)的越快,頻率越低,轉(zhuǎn)的越慢。選購時要考慮的參數(shù)是電機的輸出力矩,電機的功率,每個脈沖電機的最小轉(zhuǎn)角。還有就是關(guān)
32、于輸出的動力,要說明一下:一般情況下,電機都沒法直接帶動輪子或者手臂,因為速度過高力矩不夠大,所以我們需要加上一個減速箱來增加電機的輸出力矩,但是代價是電機速度的減小,比如一個1:250的齒輪箱,會讓你電機的輸出力矩增大250倍,但是速度只有原來的1/250了。首先計算出機器人所需要的速度與力矩大小,然后根據(jù)速度與力矩去選擇電機與減速器。(四)機器人的手臂一一機械傳動專制機械傳動專制就是,由電機驅(qū)動的一些桿件和機構(gòu)(如:凸輪機構(gòu)、螺桿機構(gòu)等),用以實現(xiàn)機械手臂的上升、下降、伸縮、彎曲等動作。通常運用的機構(gòu)有四桿機構(gòu)、凸輪機構(gòu)、螺桿機構(gòu)、搖臂等。(五)機器人的心臟一電池電池為機器人的控制系統(tǒng)與驅(qū)
33、動系統(tǒng)提供能源供應。主要有:電瓶及可充電電池、電池。前面介紹了機器人的一些基本知識,但這是遠遠不夠的。機器人學科,是在多學科基礎(chǔ)上發(fā)展起來的綜合性技術(shù)。機器人技術(shù)涉及機械、電子、計算機、語言學和人工智能等許多學科?,F(xiàn)在機器人己經(jīng)應用在人類社會生活的各個領(lǐng)域,發(fā)揮著越來越重要的影響。我利用暑假的時間設計了一個六足爬蟲機器人,用日立(HITACHI)的錄像機遙控器來對它進行控制?;驹硎牵哼b控器發(fā)出紅外學號,機器人通過紅外接收器接收倒紅外信號后,對信號進行解碼,并以存儲的代碼進行比較,確定指令的含義,后可以實現(xiàn)前進、后退、左轉(zhuǎn)、右轉(zhuǎn)及發(fā)聲等功能??刂葡到y(tǒng)我使用的是AT89S51單片機,編程語言使
34、用的是匯編語言,動力系統(tǒng)使用的是微型伺服馬達,能源系統(tǒng)使用的是9V電池。下面我將就具體設計進行介紹。一、AT89S51單片機簡介AT89S51為ATMEL所生產(chǎn)的可電氣燒錄清洗的8051相容單芯片,其內(nèi)部程序代碼容量為4KB(一)AT89S51主要功能列舉如下:1、為一般控制應用的8位單芯片2、晶片內(nèi)部具時鐘振蕩器(傳統(tǒng)最高工作頻率可至12MHz)3、內(nèi)部程式存儲器(ROM)為4KB4、內(nèi)部數(shù)據(jù)存儲器(RAM)為128B5、外部程序存儲器可擴充至64KB6、外部數(shù)據(jù)存儲器可擴充至64KB7、32條雙向輸入輸出線,且每條均可以單獨做I/O的控制8、5個中斷向量源9、2組獨立的16位定時器10、1
35、個全多工串行通信端口11、8751及8752單芯片具有數(shù)據(jù)保密的功能(T2)P1.0匚VCC140(T2EX)P1.1239PO.O(ADO)P1.2C338P0.1(AD1)P1.3C437P0.2(AD2)P1.4匚536P0.3(AD3)P1.5匚635P0.4(AD4)P1.6匚734P0.5(AD5)P1.7匚33PO.G(ADG)RST匚932P0.7(AD7)RXD)P3.0匚1031EA.VPP(TXD)P3.1匚1130ALE/PROG(INTO)P3.2匚1229PSEN(INT1)P3.3匚1328P2.7(A15)(TO)P3.4匚1427P2.6(A14)(T1)P3
36、.5匚1526P2.5(A13)(WR)P3.6匚1625P2.4(A12)(RD)P3.7匚1724P2.3(A11)XTAL2匚1823P2.2(A10)XTAL1匚1922P2.1(A9)GND匚2021P2.0(A8i(T2)P1.0匚VCC140(T2EX)P1.1239PO.O(ADO)P1.2C338P0.1(AD1)P1.3C437P0.2(AD2)P1.4匚536P0.3(AD3)P1.5匚635P0.4(AD4)P1.6匚734P0.5(AD5)P1.7匚33PO.G(ADG)RST匚932P0.7(AD7)RXD)P3.0匚1031EA.VPP(TXD)P3.1匚1130
37、ALE/PROG(INTO)P3.2匚1229PSEN(INT1)P3.3匚1328P2.7(A15)(TO)P3.4匚1427P2.6(A14)(T1)P3.5匚1526P2.5(A13)(WR)P3.6匚1625P2.4(A12)(RD)P3.7匚1724P2.3(A11)XTAL2匚1823P2.2(A10)XTAL1匚1922P2.1(A9)GND匚2021P2.0(A8iAT89S5112、單芯片提供位邏輯運算指令(二)、AT89S51各引腳功能介紹:VCC:AT89S51電源正端輸入,接+5V。VSS:電源地端。XTAL1:單芯片系統(tǒng)時鐘的反相放大器輸入端。XTAL2:系統(tǒng)時鐘的反
38、相放大器輸出端,一般在設計上只要在XTAL1和XTAL2上接上一只石英振蕩晶體系統(tǒng)就可以動作了,此外可以在兩引腳與地之間加入一20PF的小電容,可以使系統(tǒng)更穩(wěn)定,避免噪聲干擾而死機。RESET:AT89S51的重置引腳,高電平動作,當要對晶片重置時,只要對此引腳電平提升至高電平并保持兩個機器周期以上的時間,AT89S51便能完成系統(tǒng)重置的各項動作,使得內(nèi)部特殊功能寄存器之內(nèi)容均被設成已知狀態(tài),并且至地址0000H處開始讀入程序代碼而執(zhí)行程序。EA/Vpp:”EA”為英文"ExternalAccess'"的縮寫,表示存取外部程序代碼之意,低電平動作,也就是說當此引腳接
39、低電平后,系統(tǒng)會取用外部的程序代碼(存于外部EPROM中)來執(zhí)行程序。因此在8031及8032中,EA引腳必須接低電平,因為其內(nèi)部無程序存儲器空間。如果是使用8751內(nèi)部程序空間時,此引腳要接成高電平。此外,在將程序代碼燒錄至8751內(nèi)部EPROM時,可以利用此引腳來輸入21V的燒錄高壓(Vpp)。ALE/PROG:ALE是英文"AddressLatchEnable11的縮寫,表示地址鎖存器啟用信號。AT89S51可以利用這支引腳來觸發(fā)外部的8位鎖存器(如74LS373),將端口0的地址總線(A0A7)鎖進鎖存器中,因為AT89S51是以多工的方式送出地址及數(shù)據(jù)。平時在程序執(zhí)行時AL
40、E引腳的輸出頻率約是系統(tǒng)工作頻率的1/6,因此可以用來驅(qū)動其他周邊晶片的時基輸入。此外在燒錄8751程序代碼時,此引腳會被當成程序規(guī)劃的特殊功能來使用。PSEN:此為"ProgramStoreEnable*1的縮寫,其意為程序儲存啟用,當8051被設成為讀取外部程序代碼工作模式時(EA=0),會送出此信號以便取得程序代碼,通常這支腳是接到EPROM的OE腳。AT89S51可以利用PSEN及RD引腳分別啟用存在外部的RAM與EPROM,使得數(shù)據(jù)存儲器與程序存儲器可以合并在一起而共用64K的定址范圍。PORTO(P0.0P0.7):端口0是一個8位寬的開路汲極(OpenDrain)雙向輸出入端口,共有8個位,P0.0表示位0,P0.1表示位1,依此類推。其他三個I/O端口(Pl、P2、P3)則不具有此電路組態(tài),而是內(nèi)部有一提升電路,P0在當做I/O用時可以推動8個LS的TTL負載。如果當EA引腳為低電平時(即取用外部程序代碼或數(shù)據(jù)存儲器),P0就以多工方式提供地址總線(A0A7)及數(shù)據(jù)總線(D0D7)。設計者必須外加一鎖存器將端口0送出的地址
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學生心理素質(zhì)培養(yǎng)的課程設計與執(zhí)行
- 課題申報參考:教育強國背景下教育家型教師的時代畫像與培養(yǎng)路徑研究
- 2025年度木托盤出口退稅與免稅服務合同4篇
- 《鄉(xiāng)鎮(zhèn)森林防火檢查站設置與管理規(guī)范》編制說明
- 圣誕感恩的開幕詞(16篇)
- 二零二五年度碼頭岸線使用權(quán)轉(zhuǎn)讓合同4篇
- 二零二五年度魯佳與配偶解除婚姻關(guān)系財產(chǎn)分配協(xié)議4篇
- 二零二五版鋼結(jié)構(gòu)與石材幕墻施工技術(shù)指導合同4篇
- 2025年度智能物流項目股權(quán)投資協(xié)議書4篇
- 二零二五版航空貨運租賃服務協(xié)議3篇
- 我的家鄉(xiāng)瓊海
- (2025)專業(yè)技術(shù)人員繼續(xù)教育公需課題庫(附含答案)
- 《互聯(lián)網(wǎng)現(xiàn)狀和發(fā)展》課件
- 【MOOC】計算機組成原理-電子科技大學 中國大學慕課MOOC答案
- 2024年上海健康醫(yī)學院單招職業(yè)適應性測試題庫及答案解析
- 2024年湖北省武漢市中考語文適應性試卷
- 非新生兒破傷風診療規(guī)范(2024年版)解讀
- EDIFIER漫步者S880使用說明書
- 上海市華東師大二附中2025屆高二數(shù)學第一學期期末統(tǒng)考試題含解析
- IP授權(quán)合作合同模板
- 大國重器北斗系統(tǒng)
評論
0/150
提交評論