機(jī)電一體化綜合訓(xùn)練二實(shí)驗(yàn)報(bào)告 西北農(nóng)林科技大學(xué)_第1頁(yè)
機(jī)電一體化綜合訓(xùn)練二實(shí)驗(yàn)報(bào)告 西北農(nóng)林科技大學(xué)_第2頁(yè)
機(jī)電一體化綜合訓(xùn)練二實(shí)驗(yàn)報(bào)告 西北農(nóng)林科技大學(xué)_第3頁(yè)
機(jī)電一體化綜合訓(xùn)練二實(shí)驗(yàn)報(bào)告 西北農(nóng)林科技大學(xué)_第4頁(yè)
機(jī)電一體化綜合訓(xùn)練二實(shí)驗(yàn)報(bào)告 西北農(nóng)林科技大學(xué)_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、目錄一、舵機(jī)小車(chē)總結(jié)11.1 舵機(jī)小車(chē)任務(wù)11.2 舵機(jī)小車(chē)控制原理11.3舵機(jī)小車(chē)具體完成任務(wù)與改進(jìn)11.3.1寶貝機(jī)器人巡航控制11.3.2機(jī)器人觸覺(jué)導(dǎo)航21.3.3用光敏電阻進(jìn)行導(dǎo)航31.3.4方案的改進(jìn)41.4小結(jié)5二、直流電機(jī)小車(chē)總結(jié)52.1. 直流電機(jī)小車(chē)任務(wù)52.2 直流電機(jī)小車(chē)控制原理52.3 直流電機(jī)小車(chē)具體完成任務(wù)與改進(jìn)62.3.1供電電源模塊62.3.2控制器模塊62.3.3電機(jī)驅(qū)動(dòng)模塊72.3.4測(cè)速模塊82.3.5顯示模塊92.3.6尋跡92.3.7 避障92.3.8紅外遙控102.3.9方案改進(jìn)102.4小結(jié)14三、步進(jìn)電機(jī)小車(chē)總結(jié)143.1. 步進(jìn)電機(jī)小車(chē)任務(wù)14

2、3.2步進(jìn)電機(jī)小車(chē)控制原理143.3 步進(jìn)電機(jī)小車(chē)具體完成任務(wù)與改進(jìn)143.3.1供電模塊143.3.2超聲波模塊153.3.3驅(qū)動(dòng)模塊153.3.4步進(jìn)小車(chē)尋跡163.3.5四鍵遙控163.3.6紅外避障173.3.7實(shí)驗(yàn)方案的改進(jìn)173.4小結(jié)19四、機(jī)電系統(tǒng)創(chuàng)新設(shè)計(jì)204.1創(chuàng)新題目204.2創(chuàng)新的目的204.3創(chuàng)新的背景204.4創(chuàng)新的方案設(shè)計(jì)204.4.1創(chuàng)新的總體方案204.4.2創(chuàng)新流程圖204.5仿真圖22五、個(gè)人體會(huì)與總結(jié)225.1關(guān)于學(xué)習(xí)225.2關(guān)于團(tuán)隊(duì)合作235.3關(guān)于編程調(diào)試小車(chē)235.4關(guān)于發(fā)現(xiàn)的問(wèn)題23機(jī)電一體化綜合訓(xùn)練實(shí)習(xí)總結(jié)一、舵機(jī)小車(chē)總結(jié)1.1 舵機(jī)小車(chē)任務(wù)

3、1、了解舵機(jī)小車(chē)的組成部分,組裝并測(cè)試好舵機(jī)小車(chē)。2、舵機(jī)小車(chē)可以實(shí)現(xiàn)的前進(jìn)、后退,并可以實(shí)現(xiàn)左轉(zhuǎn)彎、右轉(zhuǎn)彎,并在允許范圍內(nèi)可調(diào)節(jié)速度。3、完成舵機(jī)小車(chē)的觸覺(jué)導(dǎo)航、光敏電阻導(dǎo)航、紅外線導(dǎo)航、距離檢測(cè)等基本任務(wù),并掌握其工作原理。4、了解并掌握舵機(jī)小車(chē)如何實(shí)現(xiàn)運(yùn)動(dòng)。5、了解舵機(jī)小車(chē)有哪些傳感器,并理解傳感器如何實(shí)現(xiàn)信息反饋的。1.2 舵機(jī)小車(chē)控制原理舵機(jī)由舵盤(pán)、位置反饋電位器、減速齒輪組、直流電機(jī)和控制電路組成。 控制電路板接受來(lái)自信號(hào)線的控制信號(hào),控制電機(jī)轉(zhuǎn)動(dòng),電機(jī)帶動(dòng)一系列齒輪組,減速后傳動(dòng)至輸出舵盤(pán)。舵機(jī)的輸出軸和位置反饋電位計(jì)是相連的,舵盤(pán)轉(zhuǎn)動(dòng)的同時(shí),帶動(dòng)位置反饋電位計(jì),電位計(jì)將輸出一個(gè)

4、電壓信號(hào)到控制電路板,進(jìn)行反饋,然后控制電路板根據(jù)所在位置決定電機(jī)的轉(zhuǎn)動(dòng)方向和速度,從而達(dá)到目標(biāo)停止,下面為舵機(jī)工作原理圖。 控制脈沖控制電路比例電壓比 例電位器齒輪組馬達(dá)1.3舵機(jī)小車(chē)具體完成任務(wù)與改進(jìn)1.3.1寶貝機(jī)器人巡航控制這個(gè)任務(wù)具體實(shí)現(xiàn)以下功能:全速前進(jìn)p1_1=1; delay_nus(1700); p1_1=0; delay_nms(20);p1_0=1; delay_nus(1300); p1_0=0; delay_nms(20);全速后退p1_1=1; delay_nus(1300); p1_1=0; delay_nms(20);p1_0=1; delay_nus(1700

5、); p1_0=0; delay_nms(20); 雙輪左轉(zhuǎn)p1_1=1; delay_nus(1300); p1_1=0; delay_nms(20);p1_0=1; delay_nus(1300); p1_0=0; delay_nms(20); 左輪順時(shí)針轉(zhuǎn)雙輪右轉(zhuǎn)p1_1=1; delay_nus(1700); p1_1=0; delay_nms(20);p1_0=1; delay_nus(1700); p1_0=0; delay_nms(20); 繞左輪左轉(zhuǎn)p1_1=1; delay_nus(1500); p1_1=0; delay_nms(20);p1_0=1; delay_nus(

6、1300); p1_0=0; delay_nms(20);繞右輪右轉(zhuǎn)p1_1=1; delay_nus(1700); p1_1=0; delay_nms(20); p1_0=1; delay_nus(1500); p1_0=0; delay_nms(20); 1.3.2機(jī)器人觸覺(jué)導(dǎo)航電路圖如下: 工作原理:每條胡須都是一個(gè)常開(kāi)開(kāi)關(guān)。連接到每個(gè)胡須電路的i/o引腳監(jiān)視著10k上拉電阻上的電壓變化。當(dāng)胡須沒(méi)有被觸動(dòng)時(shí),連接胡須的i/o管腳的電壓是5v,當(dāng)胡須被觸動(dòng),i/o短接到地,所以i/o管腳的電壓是0v。單片機(jī)可以讀入相應(yīng)的數(shù)據(jù),進(jìn)行分析、處理、控制機(jī)器人運(yùn)動(dòng)。在進(jìn)行胡須測(cè)試之前需將串口電纜連

7、接好,需用到調(diào)試終端以顯示左右胡須狀態(tài),調(diào)用相關(guān)程序進(jìn)行測(cè)試。1.3.3用光敏電阻進(jìn)行導(dǎo)航電路圖如下: 光檢測(cè)電路 分壓電路跟著陰影走的基本程序:#include<boebot.h>#include<uart.h>int p1_5state(void)/獲取p1_5口的狀態(tài) return (p1&0x20)?1:0;int p2_3state(void) /獲取p2_3口的狀態(tài) return (p2&0x08)?1:0;int main(void) int counter; uart_init(); /串口初始化 printf("program

8、 running!n"); for(counter=1;counter<=1000;counter+)/開(kāi)始/復(fù)位信號(hào) p1_4=1; delay_nus(1000); p1_4=0; delay_nus(1000); while(1) if(p1_5state()=0)&&(p2_3state()=0)/都探測(cè)到陰影向前運(yùn)動(dòng) p1_1=1; delay_nus(1700); p1_1=0; p1_0=1; delay_nus(1300); p1_0=0; else if(p1_5state()=0)/只有左邊的探測(cè)到陰影,向左轉(zhuǎn) p1_1=1; delay_n

9、us(1500); p1_1=0; p1_0=1; delay_nus(1300); p1_0=0; else if(p2_3state()=0)/只有右邊的探測(cè)到陰影,向右轉(zhuǎn) p1_1=1; delay_nus(1700); p1_1=0; p1_0=1; delay_nus(1500); p1_0=0; else /沒(méi)有探測(cè)到陰影,靜止不動(dòng) p1_1=1; delay_nus(1500); p1_1=0; p1_0=1; delay_nus(1500); p1_0=0; delay_nms(20); 跟光走的程序跟跟陰影走的程序類(lèi)似不再寫(xiě)。1.3.4方案的改進(jìn)將觸須避障與紅外蔽障程序融合,

10、流程圖如下:左方有障礙物右轉(zhuǎn)紅外檢測(cè)前方是否有障礙物觸須檢測(cè)前方是否有障礙物直走左方有障礙物右轉(zhuǎn)右方有障礙物左轉(zhuǎn)都有障礙物后退有有右方有障礙物左轉(zhuǎn)無(wú)無(wú)前進(jìn)都有障礙物后退1.4小結(jié)通過(guò)舵機(jī)小車(chē)的實(shí)習(xí),我認(rèn)識(shí)到基本實(shí)習(xí)的流程,掌握了舵機(jī)小車(chē)的組裝,以及舵機(jī)小車(chē)的基本工作原理,掌握了舵機(jī)小車(chē)的基本編程,并加強(qiáng)了團(tuán)隊(duì)合作意識(shí),認(rèn)識(shí)到一個(gè)人的力量是有限的,只有通過(guò)團(tuán)隊(duì)合作才能碰撞出靈感的火花。同時(shí)我發(fā)現(xiàn),舵機(jī)小車(chē)的材料及已丟失,而且像那些電阻,極不容易找到,這是一件非常煩躁的事情。在實(shí)驗(yàn)過(guò)程中,我們的紅外蔽障起初沒(méi)有成功,原因在于接線太多,導(dǎo)致短路。二、直流電機(jī)小車(chē)總結(jié)2.1. 直流電機(jī)小車(chē)任務(wù)1、熟練

11、掌握單一傳感器、單電機(jī)在控制器作用下實(shí)現(xiàn)具體機(jī)械構(gòu)件的控制;2、熟練掌握控制器采集多類(lèi)型、多數(shù)量傳感器信息并通過(guò)復(fù)雜電路控制多電機(jī)實(shí)現(xiàn)對(duì)多機(jī)械構(gòu)件的控制;3、熟練掌握各種電機(jī)在控制器作用下,驅(qū)動(dòng)機(jī)械構(gòu)件實(shí)現(xiàn)復(fù)雜運(yùn)動(dòng)。2.2 直流電機(jī)小車(chē)控制原理使用脈沖寬度調(diào)制(pwm)方式來(lái)驅(qū)動(dòng)直流電機(jī),也就是給直流電機(jī)輸入占空比可調(diào)的方波,當(dāng)電平為1時(shí)電機(jī)轉(zhuǎn)動(dòng),電平為0時(shí)電機(jī)停止。直流電機(jī)控制基本原理:兩個(gè)電極與電源正接或反接,可以使其正轉(zhuǎn)或反轉(zhuǎn)。由于直流電機(jī)的工作電流比較大,不能直接使用單片機(jī)來(lái)驅(qū)動(dòng),一般使用集成芯片l293d或l298d。每1個(gè)電機(jī)需要3個(gè)控制信號(hào)en1、in1、in2;en1是使能信號(hào)

12、。選用一路pwm連接en1引腳,通過(guò)調(diào)整pwm的占空比可以調(diào)整電機(jī)的轉(zhuǎn)速;in1、in2為電機(jī)轉(zhuǎn)動(dòng)方向控制信號(hào)。in1、in2分別為1,0時(shí),電機(jī)正轉(zhuǎn);反之,電機(jī)反轉(zhuǎn)。2.3 直流電機(jī)小車(chē)具體完成任務(wù)與改進(jìn)2.3.1供電電源模塊由于系統(tǒng)cpu、小車(chē)電機(jī)、傳感器及其他部分均采用+5v供電,考慮小車(chē)功率和摩擦阻力等問(wèn)題,電源采用直流8v電池供電,經(jīng)穩(wěn)壓芯片lm7805輸出5v電壓供單片機(jī)及其他電路使用,具體接法如圖4.1。 圖2.3 電源電路連接圖電路為輸出電壓+5v穩(wěn)壓電源。它由8v干電池、濾波電容c1、 c2,一只固定式三端穩(wěn)壓器(7805)管構(gòu)成的,由開(kāi)關(guān)s控制電壓的輸出,為了防止電源掉電而

13、影響電路工作,設(shè)計(jì)了電源指示電路,由一個(gè)1k的電阻和一個(gè)發(fā)光二極組成。穩(wěn)壓芯片lm7805 簡(jiǎn)介:穩(wěn)壓電路由固定式三端穩(wěn)壓器lm7805完成,lm7805的vin和gnd 兩端形成一個(gè)并不十分穩(wěn)定的直流電壓(該電壓常常會(huì)因?yàn)槭须婋妷旱牟▌?dòng)或負(fù)載的變化等原因而發(fā)生變化)。此直流電壓經(jīng)過(guò)lm7805的穩(wěn)壓和c2的濾波便在穩(wěn)壓電源的輸出端產(chǎn)生了精度高、穩(wěn)定度好的直流輸出電壓。lm7805輸入端接6vdc,輸出的是5vdc。2.3.2控制器模塊控制器模塊即單片機(jī)最小系統(tǒng)單元,如圖2.4所示,其主要由51單片機(jī)、時(shí)鐘、復(fù)位電路組成,本系統(tǒng)采用外部12m晶振,便于單片機(jī)內(nèi)部定時(shí)器產(chǎn)生精確的定時(shí)。 圖2.4

14、 單片機(jī)最小系統(tǒng)電路圖2.3.3電機(jī)驅(qū)動(dòng)模塊電機(jī)驅(qū)動(dòng)模塊由l298n芯片、小型直流電動(dòng)機(jī)和三極管組成,電路連接圖如圖2.6所示。 圖2.6 電機(jī)驅(qū)動(dòng)模塊電路圖從單片機(jī)輸出的信號(hào)功率很弱,即使在沒(méi)有其他外部負(fù)載時(shí)也不能帶動(dòng)電機(jī),所以在實(shí)際電路中加入了電機(jī)驅(qū)動(dòng)芯片提高輸入電機(jī)信號(hào)的頻率,從而能根據(jù)需要控制電機(jī)轉(zhuǎn)動(dòng),根據(jù)驅(qū)動(dòng)管大小和連接電路的簡(jiǎn)化要求選擇l298n,在電機(jī)線圈兩端分別接入了二極管進(jìn)行過(guò)流保護(hù),以防在控制電機(jī)換向時(shí)電流過(guò)大而損毀電機(jī)。l298n芯片簡(jiǎn)介:l298n是st公司生產(chǎn)的電機(jī)專(zhuān)用驅(qū)動(dòng)芯片。該芯片的主要特點(diǎn)是:工作電壓高,最高工作電壓可達(dá) 46v;輸出電流大,瞬間峰值電流可達(dá) 3

15、a,持續(xù)工作電流為2a;內(nèi)含兩個(gè) h橋的高電壓大電流全橋式驅(qū)動(dòng)器,可以用來(lái)驅(qū)動(dòng)直流電動(dòng)機(jī)和步進(jìn)電動(dòng)機(jī)、繼電器、線圈等感性負(fù)載;采用標(biāo)準(zhǔn)邏輯電平信號(hào)控制;具有兩個(gè)使能控制端,在不受輸入信號(hào)影響的情況下允許或禁止器件工作;有一個(gè)邏輯電源輸入端,使內(nèi)部邏輯電路部分在低電壓下工作;可以外接檢測(cè)電阻,將變化量反饋給控制電路。l298n 可驅(qū)動(dòng) 2 個(gè)電機(jī),out1,out2 和 out3,out4 之間可分別接電機(jī),本設(shè)計(jì)中選用驅(qū)動(dòng)一臺(tái)電動(dòng)機(jī)。5、7、10、12腳接輸入控制電平,控制電機(jī)的正反轉(zhuǎn)。en a 、 en b接控制使能端,控制電機(jī)的停轉(zhuǎn)。表 2-2是 l298n功能邏輯圖。表2-2 l298n

16、功能邏輯表en ain 1in 2運(yùn)行狀態(tài)0xx停止110正轉(zhuǎn)101反轉(zhuǎn)111剎停100停止in3,in4 的邏輯圖與表2-2 相同。由表2-2 可知 en a 為低電平時(shí),輸入電平對(duì)電機(jī)控制不起作用,當(dāng)ena為高電平,輸入電平為一高一低,電機(jī)正或反轉(zhuǎn)。同為低電平電機(jī)停止,同為高電平電機(jī)剎停。2.3.4測(cè)速模塊轉(zhuǎn)速測(cè)量的目的是為了可以實(shí)時(shí)觀察小車(chē)的運(yùn)行狀態(tài),通過(guò)檢測(cè)并顯示運(yùn)行時(shí)的速度來(lái)驗(yàn)證對(duì)小車(chē)速度的控制。為了能夠低成本的實(shí)現(xiàn)功能,測(cè)速模塊采用st188反射式光電傳感器測(cè)速,并選擇了簡(jiǎn)易碼盤(pán)作為速度反饋信號(hào),st188光電傳感器由一個(gè)發(fā)光二極管和一個(gè)三極管組成。如圖2.7所示。 圖2.7 測(cè)速

17、模塊電路連接圖由于光電傳感器對(duì)黑色和白色反射系數(shù)不同,通過(guò)自制碼盤(pán),光電碼盤(pán)用白色紙板自制,將紙板剪成圓形,平均分成四個(gè)扇面后,將其隔一個(gè)涂黑一個(gè),碼盤(pán)如圖2.8所示。將碼盤(pán)固定在車(chē)輪上,當(dāng)碼盤(pán)隨車(chē)輪轉(zhuǎn)動(dòng)時(shí),光電傳感器經(jīng)過(guò)黑色時(shí),發(fā)光二極管發(fā)出的光被黑色吸收,傳感器內(nèi)部三極管接不到反射信號(hào),經(jīng)過(guò)白色時(shí),發(fā)光二極管發(fā)出的光被傳感器內(nèi)部三極管接收到輸出端有信號(hào)輸出,當(dāng)碼盤(pán)隨車(chē)輪轉(zhuǎn)動(dòng)時(shí)光電傳感器輪流經(jīng)過(guò)黑色和白色,便產(chǎn)生一個(gè)個(gè)脈沖。車(chē)輪每轉(zhuǎn)一周就產(chǎn)生2個(gè)脈沖,產(chǎn)生的脈沖經(jīng)過(guò)外部中斷再經(jīng)計(jì)數(shù)器計(jì)數(shù),通過(guò)計(jì)數(shù)值可計(jì)算出車(chē)輪行走的距離,通過(guò)定時(shí)計(jì)數(shù)器來(lái)計(jì)時(shí)間,算出實(shí)時(shí)速度。即完成了測(cè)速。 圖2.8 碼盤(pán)外

18、觀圖注意事項(xiàng):傳感器不能離碼盤(pán)太近,如果太近,傳感器和碼盤(pán)間縫隙太小光線太弱導(dǎo)致光電傳感器一直測(cè)不到碼盤(pán)白色部分,導(dǎo)致測(cè)速失敗。距離也不能太遠(yuǎn),太遠(yuǎn)光電傳感器無(wú)法感知到返回光線。距離應(yīng)保持在 0.51.5cm之間。2.3.5顯示模塊顯示模塊主要由一個(gè)4位一體的8段led數(shù)碼管(sm410564)和驅(qū)動(dòng)芯片74hc245構(gòu)成,用于顯示測(cè)量到的電壓值。數(shù)碼管具有低耗能、低損耗、低壓、長(zhǎng)壽命等特點(diǎn),對(duì)外界環(huán)境要求低,易于維護(hù),同時(shí)其精度比較高,精確可靠,操作簡(jiǎn)單。該設(shè)計(jì)使用的是一個(gè)共陽(yáng)極的數(shù)碼管,每一位數(shù)碼管的原理圖如圖2.9所示。每一位數(shù)碼管的a,b,c,d,e,f,g和dp端都各自連接在一起,用

19、于接收at89s51的p1口產(chǎn)生的顯示段碼。1,2,3,4引腳端為其位選端,用于接收at89s51的p3口產(chǎn)生的位選碼。 圖2.9 一位數(shù)碼管的原理圖74hc245芯片介紹74hc245為三態(tài)輸出的八組總線收發(fā)器,在本實(shí)驗(yàn)中作為驅(qū)動(dòng)芯片使用,用于驅(qū)動(dòng)數(shù)碼管的點(diǎn)亮。a:a總線端;b:b總線端;/g:三態(tài)允許端(低電平有效);dir:方向控制端;vcc:電源;gnd:接地。2.3.6尋跡下圖為流程圖 左側(cè)檢測(cè)到黑線右側(cè)檢測(cè)到黑線左轉(zhuǎn)右轉(zhuǎn)直走 未檢測(cè)到黑線2.3.7 避障下圖為流程圖:左側(cè)檢測(cè)到障礙物右側(cè)檢測(cè)到障礙物右轉(zhuǎn)左轉(zhuǎn)直走 無(wú)障礙物右側(cè)檢測(cè)到障礙物后退2.3.8紅外遙控下圖為流程圖:按右鍵前進(jìn)

20、鍵右轉(zhuǎn)前進(jìn)左轉(zhuǎn) 按左鍵后退鍵后退暫停鍵停止2.3.9方案改進(jìn)我們小組在做完基本任務(wù)后對(duì)前面程序進(jìn)行了融合,包括尋跡、避障、紅外遙控,同時(shí)我們加入了調(diào)速功能。再融合過(guò)程中遇到了許多困難,第一個(gè)困難是中斷沖突的問(wèn)題第二個(gè)問(wèn)題是紅外遙控解碼的問(wèn)題第三個(gè)是循環(huán)無(wú)法跳出的問(wèn)題,我們通過(guò)與其他小組交流合作,最終完美的將程序融合與創(chuàng)新。下面是我們?nèi)诤虾蟮幕玖鞒虉D與程序,紅色標(biāo)出的是我們改進(jìn)過(guò)和自己寫(xiě)入的程序。測(cè)速及數(shù)碼管顯示按前后左右暫停鍵按靜音和8鍵按開(kāi)關(guān)鍵和按菜單鍵按0、2、3、4鍵前后左右暫停功能 開(kāi)啟避障和關(guān)閉避障開(kāi)啟尋跡和關(guān)閉尋跡分別執(zhí)行四個(gè)不同的速度精簡(jiǎn)程序:調(diào)速子函數(shù):只列出了一個(gè)電機(jī)的調(diào)速

21、情況其余電機(jī)調(diào)速同理 void pwm_out_left1_moto() push_val_left =a; if(left_moto_stop) if(pwm_val_left<=push_val_left) left_moto1_pwm=1; else left_moto1_pwm=0; if(pwm_val_left>=10)pwm_val_left=0; else left_moto1_pwm=0; /*timer0中斷服務(wù)子函數(shù)*/ void timer1()interrupt 3 using 2 th1=0xf8; /1ms定時(shí) tl1=0x30; pwm_val_le

22、ft+; pwm_val_right+; pwm_out_left1_moto(); pwm_out_right1_moto(); pwm_out_left2_moto(); pwm_out_right2_moto(); void timer0()interrupt 1 using 2 th0=(65536-2000)/256;/2ms定時(shí) tl0=(65536-2000)%256;數(shù)碼管基本定義程序 void delay(unsigned int k) 延時(shí)函數(shù) void intersvr11(void) interrupt 0 using 1 外部0中斷用于計(jì)算左輪的脈沖 void int

23、ersvr1(void) interrupt 2 using 1 外部中斷解碼程序 void display_smg(void)顯示數(shù)碼管字程序前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止子函數(shù) void bizhang(void) 避障子函數(shù) void xunji(void) 尋跡子函數(shù) /*-主函數(shù)-*/void main(void)ea=1; it1=1; ex1=1; tmod=0x01; tr0=1; tmod=0x11;th1= 0xf8; /1ms定時(shí) tl1= 0x30; ea = 1;tr1= 1;et1= 1; tmod=0x01; th0=(65536-2000)/256;/2ms定時(shí)

24、tl0=(65536-2000)%256;tr0= 1;et0= 1;ex0=1; /開(kāi)啟外部中斷0 it0=1; /下降沿有效ie0=0;ea = 1;delay(100); while(1)/*無(wú)限循環(huán)*/ if(b) bizhang();if(j)xunji(); if(irok=1) switch(im2) case 0x0e: run(); /前進(jìn) break; case 0x1a: backrun(); /后退 break; case 0x0a: leftrun(); /左轉(zhuǎn) break; case 0x1e: rightrun(); /右轉(zhuǎn) break; case 0x05: s

25、toprun(); /停止 break; case 0x16: a=3; pwm_out_left1_moto(); pwm_out_right1_moto(); pwm_out_left2_moto(); pwm_out_right2_moto(); run(); break; case 0x19: a=5; pwm_out_left1_moto(); pwm_out_right1_moto(); pwm_out_left2_moto(); pwm_out_right2_moto(); run(); break; case 0x1b: a=7; pwm_out_left1_moto(); p

26、wm_out_right1_moto(); pwm_out_left2_moto(); pwm_out_right2_moto(); run(); break; case 0x01: a=10; pwm_out_left1_moto(); pwm_out_right1_moto(); pwm_out_left2_moto(); pwm_out_right2_moto(); run(); break; case 0x03: b=1; break; case 0x1c: b=0; break; case 0x09:j=1;break; case 0x06:j=0;break; default:br

27、eak; irok=0; 通過(guò)實(shí)驗(yàn)我們得到的幾個(gè)紅外按鍵的編碼:0x03 靜音;0x1c 菜單;0x09 開(kāi)關(guān);0x06 8;0x16 0; 0x19 2; 0x1b 3;0x01 4。2.4小結(jié)直流小車(chē)以at89s51 單片機(jī)為控制核心,主要由電源模塊、控制器模塊、直流電機(jī)驅(qū)動(dòng)模塊、測(cè)速模塊和顯示模塊組成。通過(guò)本次試驗(yàn)我們收獲最為豐富,從一開(kāi)始的懵懵懂懂變得對(duì)單片機(jī)控制有了進(jìn)一步的了認(rèn)識(shí),對(duì)單片機(jī)編程更加深入了解,尤其是對(duì)中斷的了解,而且對(duì)出事的定義有了更好的掌握。還認(rèn)識(shí)到子函數(shù)的重要性,他可以使程序更加方便編寫(xiě),而且子函數(shù)會(huì)使整個(gè)函數(shù)變得簡(jiǎn)潔明了。同時(shí)我們也加強(qiáng)了團(tuán)隊(duì)合作,在合作中共同進(jìn)步

28、。三、步進(jìn)電機(jī)小車(chē)總結(jié)3.1. 步進(jìn)電機(jī)小車(chē)任務(wù)1、熟練分析步進(jìn)電機(jī)的工作原理2、掌握步進(jìn)電機(jī)的組裝。3、掌握步進(jìn)電機(jī)的尋跡功能和紅外傳感檢測(cè)功能。4、熟練分析步進(jìn)電機(jī)的驅(qū)動(dòng)功能。5、在現(xiàn)有條件下實(shí)現(xiàn)功能創(chuàng)新。3.2步進(jìn)電機(jī)小車(chē)控制原理步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(稱(chēng)為“步距角”),它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的??梢酝ㄟ^(guò)控制脈沖個(gè)數(shù)來(lái)控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)可以通過(guò)控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。步進(jìn)電機(jī)可以作為一種控制用的特種電機(jī),利用其沒(méi)有

29、積累誤差(精度為100%)的特點(diǎn),廣泛應(yīng)用于各種開(kāi)環(huán)控制。 3.3 步進(jìn)電機(jī)小車(chē)具體完成任務(wù)與改進(jìn)3.3.1供電模塊由于系統(tǒng)cpu、小車(chē)電機(jī)、傳感器及其他部分均采用+5v供電,考慮小車(chē)功率和摩擦阻力等問(wèn)題,電源采用直流8v電池供電,經(jīng)穩(wěn)壓芯片lm7805輸出5v電壓供單片機(jī)及其他電路使用,具體接法如圖2.2。3.3.2超聲波模塊在我們此次實(shí)習(xí)過(guò)程中,關(guān)于步進(jìn)電機(jī)小車(chē)使用的是dyp-me007超聲波測(cè)距模塊。本模塊輸出方式為pwm 方式。利用單片機(jī)從控制口發(fā)一個(gè)10us以上的高電平,就可以在接收口等待高電平輸出。一有輸出就可以開(kāi)定時(shí)器計(jì)時(shí),當(dāng)此口變?yōu)榈碗娖綍r(shí)就可以讀定時(shí)器的值,此時(shí)就為此次測(cè)距的

30、時(shí)間,方可算出距離。如此周期性地測(cè)量方可移動(dòng)測(cè)距。out 腳為此模塊作為防盜模塊時(shí)的開(kāi)關(guān)量輸出腳,測(cè)距模塊不用此腳。步進(jìn)電機(jī)小車(chē)實(shí)習(xí)過(guò)程中還有一個(gè)問(wèn)題就是步進(jìn)電機(jī)小車(chē)的有關(guān)信息的顯示問(wèn)題,在這個(gè)過(guò)程中我們使用的是超聲波lcd1602顯示模塊,如圖所示。 圖3.3 超聲波lcd1602顯示模塊步進(jìn)電機(jī)小車(chē)的基本運(yùn)動(dòng)包括前進(jìn)、后退、左轉(zhuǎn)以及右轉(zhuǎn),在這一部分,我們調(diào)試了步進(jìn)電機(jī)小車(chē)的這些功能,發(fā)現(xiàn)步進(jìn)小車(chē)的接線很重要,如果程序和接線不一致的話,就會(huì)出現(xiàn)電機(jī)不能按照預(yù)定的期望運(yùn)動(dòng)的現(xiàn)象。步進(jìn)電機(jī)和舵機(jī)、直流電機(jī)不同的是步進(jìn)電機(jī)有四根接線,分接到驅(qū)動(dòng)器的四個(gè)接線柱上,如圖所示。3.3.3驅(qū)動(dòng)模塊3.3.

31、4步進(jìn)小車(chē)尋跡流程圖:與尋跡接線圖左側(cè)檢測(cè)到黑線右側(cè)檢測(cè)到黑線左轉(zhuǎn)右轉(zhuǎn)直走 未檢測(cè)到黑線3.3.5四鍵遙控流程圖:按b鍵按c鍵右轉(zhuǎn)左轉(zhuǎn)前進(jìn) 按a鍵按d鍵后退四鍵遙控與直流小車(chē)的遙控編程類(lèi)似3.3.6紅外避障流程圖: 左側(cè)檢測(cè)到障礙物右側(cè)檢測(cè)到障礙物右轉(zhuǎn)左轉(zhuǎn)直走 無(wú)障礙物右側(cè)檢測(cè)到障礙物后退 3.3.7實(shí)驗(yàn)方案的改進(jìn)本次實(shí)驗(yàn)我們做了兩部分的創(chuàng)新,同時(shí)也遇到了一些問(wèn)題。第一部分的創(chuàng)新是我們將尋跡 避障變速 四鍵遙控程序糅合在了一起,第二部分我們實(shí)現(xiàn)了紅外跟蹤和超聲波跟蹤。下面是我們的工作流程圖及相關(guān)程序。糅合后的基本流程圖:按b鍵按c鍵變速避障直走 按a鍵按d鍵尋跡這個(gè)程序與直流電機(jī)糅合程序類(lèi)似不

32、在具體介紹,下面是我們實(shí)驗(yàn)的最大創(chuàng)新部分超聲波跟蹤流程圖與相關(guān)程序。本程序解決了距離不能連續(xù)顯示的問(wèn)題,通過(guò)加上一個(gè)延時(shí)函數(shù)便可以實(shí)時(shí)顯示數(shù)據(jù),其次要實(shí)現(xiàn)超聲波跟蹤必須通過(guò)距離控制來(lái)實(shí)現(xiàn),當(dāng)距離大于某個(gè)距離或者超出測(cè)量范圍是小車(chē)會(huì)一直向左轉(zhuǎn),當(dāng)距離在跟蹤范圍內(nèi)小車(chē)向左轉(zhuǎn)尋找人或物體當(dāng)檢測(cè)到物體時(shí),如果在1.5米內(nèi)且大于30厘米小車(chē)向前走,當(dāng)大于15厘米并且小于三十厘米小車(chē)靜止不動(dòng),當(dāng)距離小于15厘米是小車(chē)后退防止人踩到,該跟蹤系統(tǒng)需要在空曠的地方并且在一定范圍內(nèi)實(shí)現(xiàn),該跟蹤系統(tǒng)的缺點(diǎn)是如果人往右轉(zhuǎn)小車(chē)會(huì)往左轉(zhuǎn)一圈找到人,浪費(fèi)時(shí)間不夠智能。啟動(dòng)小車(chē)發(fā)送超聲波接收超聲波計(jì)算時(shí)間計(jì)算距離s波大于1.

33、5m或超出測(cè)量范圍大于30厘米小于150厘米小于30厘米大于15厘米靜止小于15cm左轉(zhuǎn)彎前進(jìn)靜止后退主程序里的循環(huán)語(yǔ)句改動(dòng):while(1) tmod=0x11; /設(shè)t0為方式1,gate=1; th0=0; tl0=0; th1=(65536-100)/256; tl1=(65536-100)%256; et0=1; et1=1; tr1=1; /允許t0中斷 ea=1; while(1) startmodule();/ displayonechar(0, 1, ascii0); while(!rx);/當(dāng)rx為零時(shí)等待 tr0=1; /開(kāi)啟計(jì)數(shù) while(rx);/當(dāng)rx為1計(jì)數(shù)并等

34、待 tr0=0;/關(guān)閉計(jì)數(shù) conut();/計(jì)算 delayms(80);/80ms啟動(dòng)模塊的改動(dòng):void startmodule() /啟動(dòng)模塊 tx=1; delay5ms(); _nop_();計(jì)算模塊里的改動(dòng):if(s>=700)|flag=1) /超出測(cè)量范圍顯示“-” flag=0; move_left(10,1,0) ; move_right(10,0,1); displayonechar(0, 1, ascii11); displayonechar(1, 1, ascii10);/顯示點(diǎn) displayonechar(2, 1, ascii11); displayon

35、echar(3, 1, ascii11); displayonechar(4, 1, ascii12);/顯示m else if(s<15) move_left(15,1,1) ; move_right(15,0,1); if(s>15&&s<30) move_left(15,0,0) ; move_right(15,1,0); if(s>30&&s<150) move_left(15,0,1) ; move_right(15,1,1); if(s>150) move_left(10,1,0) ; move_right(10,

36、0,1);前面要有初始定義。3.4小結(jié)步進(jìn)電機(jī)以at89c51單片機(jī)為核心,主要有由電源模塊、控制器模塊、步進(jìn)電機(jī)驅(qū)動(dòng)模塊、和顯示模塊組成??梢酝ㄟ^(guò)藍(lán)牙模塊,紅外無(wú)線模塊進(jìn)行控制,同時(shí)可以搭建各種傳感器實(shí)現(xiàn)反饋由于性能穩(wěn)定,廣泛應(yīng)用于各種開(kāi)環(huán)系統(tǒng)。通過(guò)本次試驗(yàn)收獲頗多,一方面完成了實(shí)習(xí)要求,另一方面對(duì)超聲波傳感器有了進(jìn)一步的認(rèn)識(shí),并能夠在已有基礎(chǔ)上進(jìn)行相關(guān)的創(chuàng)新。四、機(jī)電系統(tǒng)創(chuàng)新設(shè)計(jì)4.1創(chuàng)新題目: 投籃機(jī)器人4.2創(chuàng)新的目的: 通過(guò)對(duì)投籃機(jī)器人的基本設(shè)計(jì),深入了解單片機(jī)工作原理以及各個(gè)模塊間的協(xié)調(diào)工作,同時(shí)培養(yǎng)自身的創(chuàng)新能力。4.3創(chuàng)新的背景:當(dāng)前過(guò)內(nèi)外各種機(jī)器人比賽日益增多,各大高校以及青

37、少年創(chuàng)新能力也日益增強(qiáng)。隨著當(dāng)前科技的進(jìn)步,智能化,自動(dòng)化必將成為社會(huì)發(fā)展的主流。投籃機(jī)器人是一通過(guò)各種傳感器但建起來(lái)的用于精確投籃的智能化機(jī)器人,通過(guò)對(duì)它的設(shè)計(jì),可以增強(qiáng)創(chuàng)新意識(shí),以及動(dòng)手能力,同時(shí)還可以發(fā)現(xiàn)自己的不足。4.4創(chuàng)新的方案設(shè)計(jì)4.4.1創(chuàng)新的總體方案通過(guò)搭建各種傳感器實(shí)現(xiàn)對(duì)目標(biāo)的檢測(cè),同時(shí)實(shí)現(xiàn)各個(gè)部件的協(xié)調(diào)運(yùn)動(dòng)下面為總體方案設(shè)計(jì)圖。超聲波傳感器光敏傳感器壓力傳感器小車(chē)運(yùn)動(dòng)單片機(jī)最小系統(tǒng)步進(jìn)電機(jī)驅(qū)動(dòng)電路直流電機(jī)驅(qū)動(dòng)電路電源電路繼電器直流電機(jī)步進(jìn)電機(jī)投球開(kāi)關(guān)壓彈簧機(jī)構(gòu)取球機(jī)構(gòu)4.4.2創(chuàng)新流程圖發(fā)出超聲波接收超聲波計(jì)算距離s1大于某距離超聲波暫停發(fā)送直流小車(chē)停止運(yùn)動(dòng)跟蹤光源是否取球

38、壓力傳感器計(jì)算球的重量發(fā)出超聲波計(jì)算出距離s3根據(jù)球的重量球籃的高度、拋出角度求出算出需要的投球距離s2s2<s3s2=s3s2>s3后退繼電器得點(diǎn)前進(jìn)開(kāi)關(guān)松開(kāi) 投球復(fù)位機(jī)器人完成的動(dòng)作依次是:找球-取球-稱(chēng)重-計(jì)算距離-前進(jìn)或后退-投球4.5仿真圖五、個(gè)人體會(huì)與總結(jié)為期兩周的機(jī)電一體化綜合訓(xùn)練實(shí)習(xí)已經(jīng)結(jié)束,通過(guò)實(shí)習(xí)使我對(duì)機(jī)電一體化技術(shù)有了更加深入的了解,也使我對(duì)各個(gè)方面的問(wèn)題有了更加深刻的認(rèn)識(shí)。在本次實(shí)習(xí)中,我不僅對(duì)單片機(jī)、傳感器、伺服電機(jī)拖動(dòng)、電路、電力電子技術(shù)等方面的知識(shí)有了更加深刻的認(rèn)識(shí),也鍛煉了自己的編程能力,而且增強(qiáng)了自己團(tuán)隊(duì)合作意識(shí)以及遇到問(wèn)題解決問(wèn)題的能力。我們兩個(gè)

39、人一組,每天都在學(xué)院的步進(jìn)小車(chē),直流電機(jī)小車(chē)和寶貝車(chē)中度過(guò),每天都在堅(jiān)持著,雖然這其中的過(guò)程不是那么的順利,經(jīng)常遇到挫折使我們多次感到氣餒,幾乎想要放棄,但是最終還是堅(jiān)持了下來(lái)。本次實(shí)習(xí)的第一個(gè)任務(wù)是直流小車(chē)的組裝與測(cè)試 組裝與測(cè)試,這是我們實(shí)習(xí)的第一步也是最基礎(chǔ)的一步,只有這一步順利的完成了下面的實(shí)習(xí)才能夠得以繼續(xù)。接下來(lái)的任務(wù)越來(lái)越難,步進(jìn)電機(jī)小車(chē)的組裝與調(diào)試以及寶貝車(chē)的安裝與調(diào)試,都進(jìn)行的不太順利,遇到了各種各樣的問(wèn)題,所幸的是最終都解決了。短短的兩周機(jī)電一體化實(shí)習(xí)雖然已經(jīng)結(jié)束了,但是在這段的時(shí)間里我卻學(xué)到了許多寶貴的經(jīng)驗(yàn),現(xiàn)在就以下幾個(gè)方面來(lái)做下總結(jié):5.1關(guān)于學(xué)習(xí)在這次實(shí)習(xí)中我認(rèn)識(shí)到了自己的不足發(fā)現(xiàn)了自己的許多問(wèn)題,我覺(jué)得我們以前的學(xué)習(xí)方式有關(guān),我認(rèn)為我們的學(xué)習(xí)在好多時(shí)候是被動(dòng)的學(xué)習(xí),而

溫馨提示

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

評(píng)論

0/150

提交評(píng)論