智能循跡小車(chē)_第1頁(yè)
智能循跡小車(chē)_第2頁(yè)
智能循跡小車(chē)_第3頁(yè)
智能循跡小車(chē)_第4頁(yè)
智能循跡小車(chē)_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 專(zhuān)業(yè)創(chuàng)新實(shí)踐實(shí)訓(xùn)報(bào)告課題名稱(chēng)智能循跡小車(chē)成 員*院 系航空工程學(xué)院專(zhuān) 業(yè)電子信息科學(xué)與技術(shù)專(zhuān)業(yè)指導(dǎo)教師*2016年5月28日目 錄1 實(shí)訓(xùn)任務(wù)與內(nèi)容11.1實(shí)訓(xùn)任務(wù)11.2 實(shí)訓(xùn)內(nèi)容12 模塊設(shè)計(jì)12.1 電路模塊設(shè)計(jì)12.1.1 硬件電路設(shè)計(jì)22.1.2 軟件程序設(shè)計(jì)32.2 電機(jī)驅(qū)動(dòng)模塊設(shè)計(jì)52.2 電源模塊的設(shè)計(jì)62.3 傳感器模塊的設(shè)計(jì)63 測(cè)試結(jié)果74 心得體會(huì)8附錄1 電路原理圖的總圖9附錄2 源程序101 實(shí)訓(xùn)任務(wù)與內(nèi)容1.1實(shí)訓(xùn)任務(wù)1)熟悉51單片機(jī)集成開(kāi)發(fā)環(huán)境,運(yùn)用C語(yǔ)言編寫(xiě)工程文件;2)熟練應(yīng)用所選用單片機(jī)的內(nèi)部結(jié)構(gòu)、資源、以及軟硬件調(diào)試的設(shè)備的基本方法;3)自行構(gòu)建基于

2、單片機(jī)的最小系統(tǒng),完成相關(guān)硬件電路的設(shè)計(jì)實(shí)現(xiàn);1.2 實(shí)訓(xùn)內(nèi)容基于AT89C52單片機(jī)的智能小車(chē)的設(shè)計(jì)與實(shí)現(xiàn),小車(chē)完成的主要功能是能夠自主識(shí)別黑色引導(dǎo)線并根據(jù)黑線的走向?qū)崿F(xiàn)快速穩(wěn)定的循線行駛。小車(chē)系統(tǒng)以AT89C52單片機(jī)位系統(tǒng)控制處理器;采用紅外傳感獲取賽道的信息,來(lái)對(duì)小車(chē)的方向和速度進(jìn)行控制。此外,對(duì)整個(gè)控制軟件進(jìn)行設(shè)計(jì)和程序的編制以及程序的調(diào)試,并最終完成軟件和硬件的融合,實(shí)現(xiàn)小車(chē)的預(yù)期功能。2 模塊設(shè)計(jì)2.1 電路模塊設(shè)計(jì)2.1.1 硬件電路設(shè)計(jì)圖2.1 驅(qū)動(dòng)系統(tǒng)的原理圖圖2.2傳感器系統(tǒng)的原理圖圖2.3電源系統(tǒng)的原理圖我們選用的是三個(gè)光電開(kāi)關(guān)進(jìn)行尋跡。光電開(kāi)關(guān)電源線接入5V的電源,三

3、個(gè)光電開(kāi)關(guān)分別接入單片機(jī)的P1.0口-P1.2口。采用兩個(gè)L298N芯片作為電機(jī)驅(qū)動(dòng)芯片,步進(jìn)電機(jī)模塊的引腳ENA和ENB分別連接P0.6口和P0.7口;直流電機(jī)模塊的引腳ENA和ENB分別連接P0.4口和P0.5口。模塊的INT1-INT4連接單片機(jī)的P0.0-P0.3口,另一驅(qū)動(dòng)模塊IN為P2.0-P2.3口,OUT1-OUT4連接兩個(gè)直流電機(jī)。小車(chē)進(jìn)入循跡模式后,即開(kāi)始不停地掃描與探測(cè)器連接的單片機(jī)I/O口,一旦檢測(cè)到某個(gè)I/O口有信號(hào),即進(jìn)入判斷處理程序,先確定4個(gè)探測(cè)器中的哪一個(gè)探測(cè)到了黑線,如果左面第一級(jí)傳感器或者左面第二級(jí)傳感器探測(cè)到黑線,即小車(chē)左半部分壓到黑線,車(chē)身向右偏出,此

4、時(shí)應(yīng)使小車(chē)向左轉(zhuǎn);如果是右面第一級(jí)傳感器或右面第二級(jí)傳感器探測(cè)到了黑線,即車(chē)身右半部壓住黑線,小車(chē)向左偏出了軌跡,則應(yīng)使小車(chē)向右轉(zhuǎn)。在經(jīng)過(guò)了方向調(diào)整后,小車(chē)再繼續(xù)向前行走,并繼續(xù)探測(cè)黑線重復(fù)上述動(dòng)作。2.1.2 軟件程序設(shè)計(jì)圖2.4 驅(qū)動(dòng)系統(tǒng)的流程圖系統(tǒng)總體軟件設(shè)計(jì)綜上所述,本系統(tǒng)主要實(shí)現(xiàn)的各個(gè)模塊算法為:電機(jī)驅(qū)動(dòng)算法,尋跡算法,測(cè)速算法,LCD顯示算法。系統(tǒng)總體程序框圖如圖11所示。其中在小車(chē)尋跡的過(guò)程中,會(huì)不斷調(diào)用測(cè)速算法,并通過(guò)LCD將實(shí)時(shí)速度顯示出來(lái)。各個(gè)數(shù)的調(diào)用關(guān)系為了控制電機(jī)1和電機(jī)2PWM信號(hào)的占空比,設(shè)置了兩個(gè)變量DutyCycle1和DutyCycle2,這兩個(gè)變量的值可以作

5、為控制電機(jī)移動(dòng)函數(shù)的參數(shù)控制電機(jī)的速度。規(guī)定當(dāng)DutyCycle的值小于time_count時(shí)電機(jī)的使能端輸出1,反之輸出0,這樣就可以改變PWM信號(hào)占空比,控制電機(jī)的轉(zhuǎn)速了。小車(chē)轉(zhuǎn)向控制小車(chē)轉(zhuǎn)向控制:小車(chē)移動(dòng)中前進(jìn)比較容易控制,只要讓兩個(gè)電機(jī)同時(shí)正轉(zhuǎn)就可以了??刂菩≤?chē)轉(zhuǎn)向時(shí)有兩種策略,第一種是一個(gè)電機(jī)正轉(zhuǎn)而另一個(gè)不轉(zhuǎn),第二種是一個(gè)電機(jī)正轉(zhuǎn)而另一個(gè)反轉(zhuǎn)。在測(cè)試中我們發(fā)現(xiàn)采用第一種方法當(dāng)小車(chē)運(yùn)動(dòng)時(shí),運(yùn)動(dòng)一側(cè)的輪子會(huì)帶動(dòng)不運(yùn)動(dòng)一側(cè)的輪子迫使小車(chē)?yán)^續(xù)運(yùn)動(dòng)。所以我們采用了第二種控制小車(chē)轉(zhuǎn)向的方法??刂齐姍C(jī)轉(zhuǎn)向的有兩個(gè)方向位,DIR_L和DIR_R,它們不同狀態(tài)和電機(jī)轉(zhuǎn)向之間的關(guān)系表1表所示:小車(chē)速度和

6、方向控制的函數(shù)都已經(jīng)封裝在一起,通過(guò)入口參數(shù)可以進(jìn)行調(diào)節(jié)。圖2.5 智能循跡小車(chē)運(yùn)行圖圖2.6 智能循跡小車(chē)圖2.2 電機(jī)驅(qū)動(dòng)模塊設(shè)計(jì)驅(qū)動(dòng)模塊采用專(zhuān)用芯片L298N作為電機(jī)驅(qū)動(dòng)芯片,L298N是一個(gè)具有高電壓大電流的全橋驅(qū)動(dòng)芯片,其響應(yīng)頻率高,一片L298N可以分別控制兩個(gè)直流電機(jī),驅(qū)動(dòng)電路的設(shè)計(jì)如圖L298N的5、7、10、12四個(gè)引腳接到單片機(jī)上,通過(guò)對(duì)單片機(jī)的編程就可實(shí)現(xiàn)兩個(gè)直流電機(jī)的PWM調(diào)速以及正反轉(zhuǎn)控制。L298驅(qū)動(dòng)電機(jī)介紹:L298N 為SGS-THOMSON Microelectronics 所出產(chǎn)的雙全橋步進(jìn)電機(jī)專(zhuān)用驅(qū)動(dòng)芯片,內(nèi)部包含4信道邏輯驅(qū)

7、動(dòng)電路,是一種二相和四相步進(jìn)電機(jī)的專(zhuān)用驅(qū)動(dòng)器,可同時(shí)驅(qū)動(dòng)2個(gè)二相或1個(gè)四相步進(jìn)電機(jī),內(nèi)含二個(gè)橋式的高電壓、大電流雙全橋式驅(qū)動(dòng)器,接收標(biāo)準(zhǔn)TTL邏輯準(zhǔn)位信號(hào),可驅(qū)動(dòng)46V、2A以下的步進(jìn)電機(jī),且可以直接透過(guò)電源來(lái)調(diào)節(jié)輸出電壓;此芯片可直接由單片機(jī)的I/O端口來(lái)提供模擬時(shí)序信號(hào),但在本驅(qū)動(dòng)電路中用L298來(lái)提供時(shí)序信號(hào),節(jié)省了單片機(jī)I/O 端口的使用。L298N 接腳Pin1 和Pin15 可與電流偵測(cè)用電阻連接來(lái)控制負(fù)載的電路;OUTl、OUT2 和OUT3、OUT4 之間分別接2個(gè)步進(jìn)電機(jī);in1in4 輸入控制電位來(lái)控制電

8、機(jī)的正反轉(zhuǎn);Enable則控制電機(jī)停轉(zhuǎn)。采用L298N作為電機(jī)驅(qū)動(dòng)芯片。L298N具有高電壓、大電流、響應(yīng)頻率高的全橋驅(qū)動(dòng)芯片,一片 L298N可以分別控制兩個(gè)直流電機(jī),并且?guī)в锌刂剖鼓芏?。該電機(jī)驅(qū)動(dòng)芯片驅(qū)動(dòng)能力強(qiáng)、操作方便,穩(wěn)定性好,性能優(yōu)良。L298N的使能端可以外接電平控制,也可以利用單片機(jī)進(jìn)行軟件控制,滿(mǎn)足各種復(fù)雜電路的需要。另外,L298N的驅(qū)動(dòng)功率較大,能夠根據(jù)輸入電壓的大小輸出不同的電壓和功率,解決了負(fù)載能力不夠的問(wèn)題。2.2 電源模塊的設(shè)計(jì)在本系統(tǒng)中,需要用到的電源有單片機(jī)的5V,L298N芯片的電源5V和電機(jī)的電源7-15V。所以需要對(duì)電源的提供必須正確和穩(wěn)定可靠。方案一:用

9、9V的鋅電源給前、后輪電機(jī)供電,然后使用7805穩(wěn)壓管來(lái)把高電壓穩(wěn)成5V分別給單片機(jī)和電機(jī)驅(qū)動(dòng)芯片供電。這種接法比較簡(jiǎn)單,但小車(chē)的電路功耗過(guò)大會(huì)導(dǎo)致后輪電機(jī)動(dòng)力不足。方案二:采用雙電源。為了確保單片機(jī)控制部分和后輪電機(jī)驅(qū)動(dòng)的部分的電壓不會(huì)互相影響,要把單片機(jī)的供電和驅(qū)動(dòng)電路分開(kāi)來(lái),即:用直流電12v供給單片機(jī),后輪電機(jī)的電源用5V供電,這樣有助于消除電機(jī)干擾,提高系統(tǒng)的穩(wěn)定性?;谝陨戏治?,我們選擇了方案二,采用雙電源供電。2.3 傳感器模塊的設(shè)計(jì)TC端是傳感器工作控制端,為高電平時(shí),發(fā)光二極管不工作,傳感器休眠,為低電平時(shí),傳感器啟動(dòng)。Signal端為檢測(cè)信號(hào)輸出,當(dāng)遇到黑線,黑線吸收大量的

10、紅外線,反射的紅外線很弱,光敏三極管不導(dǎo)通,Signal輸出高電平;當(dāng)遇到白線,與黑線相反,反射的紅外線很強(qiáng),使光敏三極管導(dǎo)通,Signal輸出低電平。這種探測(cè)方法,即利用紅外線在不同顏色的表面特征,具有不同的反射性能,汽車(chē)行駛過(guò)程中接收地面的紅外光。當(dāng)紅外光遇到白色路線,地板發(fā)生漫反射,安裝在小型車(chē)的反射光接收器接收;如果是遇到黑色路線,紅外光將被黑線吸收,安裝在小車(chē)上的接收管沒(méi)有收到紅外光。控制器會(huì)根據(jù)是否收到反射的紅外光為判斷依據(jù)來(lái)確定的黑線的位置和小車(chē)的路線。紅外探測(cè)器距離通常是不應(yīng)超過(guò)15厘米的。紅外發(fā)射和接收紅外線感應(yīng)器,可以使自己或直接使用集成紅外探頭。調(diào)整左右傳感器之間的距離,

11、兩探頭距離約等于黑線寬度最合適,選擇寬度為3-5厘米的黑線。該傳感器的靈敏度是可調(diào)的,傳感器有時(shí)遇到黑線卻不能送出相應(yīng)的信號(hào),通過(guò)調(diào)節(jié)傳感器上的可調(diào)電阻,適當(dāng)?shù)脑龃蠡驕p小可改變靈敏度。另外,循跡傳感器的放置也是有講究的,有兩種方法,一種是兩個(gè)都是放置在黑線內(nèi)側(cè)緊貼黑線邊緣,第二種是都放置在黑線的外側(cè),同樣緊貼黑線邊緣。本設(shè)計(jì)采用第二種方法。單片機(jī)燒錄程序后,就可以執(zhí)行循跡指令了。如果小車(chē)向前行駛時(shí)向左偏離了黑線,那么右邊傳感器會(huì)產(chǎn)生一個(gè)高電平,單片機(jī)判斷這個(gè)信號(hào),然后向右拐回到黑線。兩傳感器輸出信號(hào)為低電平時(shí),小車(chē)前進(jìn)。如果小車(chē)向右偏離黑線,左邊傳感器產(chǎn)生一個(gè)高電平,單片機(jī)判斷這個(gè)信號(hào),然后向

12、左拐。這樣,小車(chē)一定不會(huì)偏離黑線。若兩個(gè)光電傳感器同時(shí)輸出的信號(hào)為高電平,即單片機(jī)判斷的都為高電平時(shí),小車(chē)向前直走。3 測(cè)試結(jié)果從直線段O點(diǎn)出發(fā),讓小車(chē)智能循跡至N點(diǎn),記錄直點(diǎn)線段O點(diǎn)至A點(diǎn)的所用時(shí)間,記錄A點(diǎn)至B點(diǎn)的時(shí)間,依次記錄B點(diǎn)至C點(diǎn)、C點(diǎn)至D點(diǎn)、D點(diǎn)至E點(diǎn)、E點(diǎn)至F點(diǎn)、F點(diǎn)至N點(diǎn)的時(shí)間,重復(fù)測(cè)試5次,并記錄時(shí)間。 圖3.1 智能循跡小車(chē)跑道圖 起點(diǎn)位于彎道的運(yùn)行時(shí)間要長(zhǎng)于起點(diǎn)位于直道的運(yùn)行時(shí)間。導(dǎo)致這個(gè)現(xiàn)象出現(xiàn)的原因是由于彎道的曲率變化給小車(chē)的循跡調(diào)整帶來(lái)了較大的影響,對(duì)應(yīng)小號(hào)的調(diào)整時(shí)間業(yè)比起于直道的測(cè)試過(guò)程要長(zhǎng)些。有時(shí),小車(chē)會(huì)稍微偏離跑道。對(duì)傳感器的靈敏度需要更加仔細(xì)的調(diào)整。4 心

13、得體會(huì)根據(jù)本次設(shè)計(jì)要求,我們小組系統(tǒng)地閱讀了大量的資料,并認(rèn)真分析了設(shè)計(jì)課題的需求,還系統(tǒng)學(xué)習(xí)了51系列單片機(jī)的工作原理及其使用方法,并獨(dú)自設(shè)計(jì)智能小車(chē)的整個(gè)項(xiàng)目。雖然條件艱苦,但經(jīng)過(guò)不懈鉆研和努力,購(gòu)買(mǎi)到了所有所需的元器件,并系統(tǒng)的進(jìn)行了多項(xiàng)試驗(yàn),最終做出了整個(gè)小車(chē)的硬件系統(tǒng),然后結(jié)合課題任務(wù)和小車(chē)硬件進(jìn)行了程序的編制,本系統(tǒng)能夠基本滿(mǎn)足設(shè)計(jì)要求,能夠較快較平穩(wěn)的是小車(chē)沿引導(dǎo)線行駛,但由于經(jīng)驗(yàn)?zāi)芰τ邢?,該系統(tǒng)還存在著許多不盡人意的地方有待于進(jìn)一步的完善與改進(jìn)。 通過(guò)本次課題設(shè)計(jì),不僅是對(duì)我們課本所學(xué)知識(shí)的考查,更是對(duì)我的自學(xué)能力和收集資料能力以及動(dòng)手能力的考驗(yàn)。本次課程設(shè)計(jì)使我們對(duì)一個(gè)項(xiàng)目的

14、整體設(shè)計(jì)有了初步認(rèn)識(shí),還認(rèn)識(shí)了幾種傳感器,并能獨(dú)立設(shè)計(jì)出其接口電路,再有對(duì)電路板的制作有了一定的了解,并學(xué)會(huì)了使用Protel設(shè)計(jì)電路。本次智能循跡小車(chē)課程設(shè)計(jì)使我們意識(shí)到了實(shí)驗(yàn)的重要性,在硬件制作和軟件調(diào)試的過(guò)程中,出現(xiàn)了很多問(wèn)題,最終都是通過(guò)實(shí)驗(yàn)的方法來(lái)解決的。還有以前對(duì)程序只是一個(gè)很模糊的概念,通過(guò)這次的智能循跡小車(chē)的課程設(shè)計(jì)使我對(duì)程序完全有了一個(gè)新的認(rèn)識(shí),并能使用C熟練的進(jìn)行編程了。通過(guò)本次智能循跡小車(chē)的課程設(shè)計(jì),極大的鍛煉了我們的思考和分析問(wèn)題的能力,并對(duì)單片機(jī)有了一個(gè)更深的認(rèn)識(shí)??傊?,在這次的課程設(shè)計(jì)的過(guò)程中,無(wú)論是對(duì)于學(xué)習(xí)方法還是理論知識(shí),我們都有了新的認(rèn)識(shí),受益匪淺,這將激勵(lì)我

15、們?cè)诮窈笤俳釉賲?,不斷完善自己的理論知識(shí),提高實(shí)踐運(yùn)作能力。附錄1 電路原理圖的總圖圖3.1 電路原理圖總圖附錄2 源程序 #include<regx52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned intsbit in1=P10; sbit in2=P13; sbit pwm1=P12;sbit pwm2=P14;sbit zuo=P07; /紅外傳感器1 sbit zhong=P06; /紅外傳感器2 sbit you=P02; uchar count=0

16、; uchar dj1=0;uchar dj2=0;void advance() in1=1; in2=1;dj1=15;dj2=15; /紅外傳感器3 /小車(chē)前進(jìn)子函數(shù)void left() in1=1; in2=1; dj1=18; dj2=7;void right() in1=1; in2=1; dj1=7; dj2=18; void left1() in1=1; in2=0; dj1=15; dj2=18; void right1() in1=0;in2=1;/小車(chē)左轉(zhuǎn)微調(diào)子函數(shù)1 /小車(chē)右轉(zhuǎn)微調(diào)子函數(shù)1 /小車(chē)左轉(zhuǎn)微調(diào)子函數(shù)2 /小車(chē)右轉(zhuǎn)微調(diào)子函數(shù)2dj1=18; dj2=15;vo

17、id timer0_init() /0.5ms 定時(shí)器設(shè)置 TMOD=0X01; TH0=0XFE; TL0=0X33; EA=1; ET0=1; TR0=1;void timer0() interrupt 1 /定時(shí)器中斷函數(shù) TH0=0XFE; TL0=0X33;count+;if(count<=dj1)pwm1=1; else pwm1=0; if(count<=dj2)pwm2=1; else pwm2=0; if(count>=320)count=0; /PWM脈寬調(diào)速void main()/主函數(shù) /初始化 timer0_init();P0=0XFF; P1=0X02; P2=0X00; P3=0X00;while(1) if(zuo=0)&&(zhong=1)&&(you=0) /小車(chē)在正確的軌道上,小車(chē)前進(jìn) advance(); if(zuo=0)&&(zhong=1)&&(you=1) /小車(chē)偏左,執(zhí)行右轉(zhuǎn)微調(diào)子函數(shù)1 right(); if(zuo=1)&&(zhong=1)&&(you=0) /小車(chē)偏右,執(zhí)行左轉(zhuǎn)微調(diào)子函數(shù)1 left(); if(zuo=1)&&(z

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論