智能小車實(shí)訓(xùn)報(bào)告

上傳人:仙*** 文檔編號(hào):29514066 上傳時(shí)間:2021-10-07 格式:DOC 頁數(shù):22 大?。?00KB
收藏 版權(quán)申訴 舉報(bào) 下載
智能小車實(shí)訓(xùn)報(bào)告_第1頁
第1頁 / 共22頁
智能小車實(shí)訓(xùn)報(bào)告_第2頁
第2頁 / 共22頁
智能小車實(shí)訓(xùn)報(bào)告_第3頁
第3頁 / 共22頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《智能小車實(shí)訓(xùn)報(bào)告》由會(huì)員分享,可在線閱讀,更多相關(guān)《智能小車實(shí)訓(xùn)報(bào)告(22頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、項(xiàng)目實(shí)訓(xùn)報(bào)告 目 錄1.1 項(xiàng)目概述 11.2 設(shè)計(jì)要求 11.3 系統(tǒng)設(shè)計(jì) 11.3.1 設(shè)計(jì)方案 21.3.2 知識(shí)點(diǎn) 21.4 硬件模塊介紹 21.4.1 STC89C52RC單片機(jī) 21.4.2 電機(jī)驅(qū)動(dòng)L293D 31.4.3 尋跡模塊 41.4.4 避障模塊 51.4.5 電源模塊 51.5 機(jī)械系統(tǒng)設(shè)計(jì) 51.6 硬件設(shè)計(jì) 51.6.1 小車工作原理 51.6.2 電路框圖設(shè)計(jì) 51.6.3 知識(shí)點(diǎn) 61.6.4 元件清單 61.6.5 信號(hào)檢測模塊設(shè)計(jì)71.7 軟件設(shè)計(jì) 91.7.1尋跡避障程序 91.7.2 紅外遙控程序 151.8 系統(tǒng)調(diào)試 17心得體會(huì) 17參考文獻(xiàn) 18

2、1.1 項(xiàng)目概述自第一臺(tái)工業(yè)機(jī)器人誕生以來,機(jī)器人的發(fā)展已經(jīng)遍及機(jī)械、電子、冶金、交通、宇航、國防等領(lǐng)域。近年來機(jī)器人的智能水平不斷提高,并且迅速地改變著人們的生活方式。人們?cè)诓粩嗵接?、改造、認(rèn)識(shí)自然的過程中,制造能替代人勞動(dòng)的機(jī)器一直是人類的夢想。隨著科學(xué)技術(shù)的發(fā)展,機(jī)器人的感覺傳感器種類越來越多,其中視覺傳感器成為自動(dòng)行走和駕駛的重要部件。視覺的典型應(yīng)用領(lǐng)域?yàn)樽灾魇街悄軐?dǎo)航系統(tǒng),對(duì)于視覺的各種技術(shù)而言圖像處理技術(shù)已相當(dāng)發(fā)達(dá),而基于圖像的理解技術(shù)還很落后,機(jī)器視覺需要通過大量的運(yùn)算也只能識(shí)別一些結(jié)構(gòu)化環(huán)境簡單的目標(biāo)。視覺傳感器的核心器件是攝像管或CCD,目前的CCD已能做到自動(dòng)聚焦。但CCD

3、傳感器的價(jià)格、體積和使用方式上并不占優(yōu)勢,因此在不要求清晰圖像只需要粗略感覺的系統(tǒng)中考慮使用接近覺傳感器是一種實(shí)用有效的方法。機(jī)器人要實(shí)現(xiàn)自動(dòng)導(dǎo)引功能和避障功能就必須要感知導(dǎo)引線和障礙物,感知導(dǎo)引線相當(dāng)給機(jī)器人一個(gè)視覺功能。避障控制系統(tǒng)是基于自動(dòng)導(dǎo)引小車(AVGauto-guide vehicle)系統(tǒng),基于它的智能小車實(shí)現(xiàn)自動(dòng)識(shí)別路線,判斷并自動(dòng)避開障礙,選擇正確的行進(jìn)路線。使用傳感器感知路線和障礙并作出判斷和相應(yīng)的執(zhí)行動(dòng)作。現(xiàn)智能小車發(fā)展很快,從智能玩具到其它各行業(yè)都有實(shí)質(zhì)成果。其基本可實(shí)現(xiàn)循跡、避障、檢測貼片、尋光入庫、避崖等基本功能,這幾節(jié)的電子設(shè)計(jì)大賽智能小車又在向聲控系統(tǒng)發(fā)展。比較

4、出名的飛思卡爾智能小車更是走在前列。我們小組此次的設(shè)計(jì)主要實(shí)現(xiàn)循跡、避障、無線遙控這三個(gè)功能。該智能小車可以作為機(jī)器人的典型代表。它可以分為三大組成部分:傳感器檢測部分、執(zhí)行部分、CPU。機(jī)器人要實(shí)現(xiàn)自動(dòng)避障、循跡、無線遙控等功能,感知導(dǎo)引線和障礙物??梢詫?shí)現(xiàn)小車自動(dòng)識(shí)別路線,選擇正確的行進(jìn)路線,并檢測到障礙物自動(dòng)躲避?;谏鲜鲆?,傳感檢測部分考慮到小車一般不需要感知清晰的圖像,只要求粗略感知即可,所以可以舍棄昂貴的CCD傳感器而考慮使用價(jià)廉物美的紅外反射式傳感器來充當(dāng)。智能小車的執(zhí)行部分,是由直流電機(jī)來充當(dāng)?shù)模饕刂菩≤嚨男羞M(jìn)方向和速度。單片機(jī)驅(qū)動(dòng)直流電機(jī)一般有兩種方案:第一,勿需占用單

5、片機(jī)資源,直接選擇有PWM功能的單片機(jī),這樣可以實(shí)現(xiàn)精確調(diào)速;第二,可以由軟件模擬PWM輸出調(diào)制,需要占用單片機(jī)資源,難以精確調(diào)速,但單片機(jī)型號(hào)的選擇余地較大??紤]到實(shí)際情況,本文選擇第二種方案。CPU使用STC89C52單片機(jī),配合軟件編程實(shí)現(xiàn)。關(guān)鍵詞:智能小車 STC89C52RC單片機(jī) L293D驅(qū)動(dòng) 尋跡 避障 遙控1.2 設(shè)計(jì)要求:整個(gè)系統(tǒng)的設(shè)計(jì)以單片機(jī)為核心,利用了多組紅外線對(duì)管,將軟件和硬件相結(jié)合。本系統(tǒng)能實(shí)現(xiàn)如下功能:(1)自動(dòng)沿預(yù)設(shè)軌道行駛小車在行駛過程中,能夠自動(dòng)檢測預(yù)先設(shè)好的軌道,實(shí)現(xiàn)直道和弧形軌道的前進(jìn)。若有偏離,能夠自動(dòng)糾正,返回到預(yù)設(shè)軌道上來。(2)當(dāng)小車探測到前進(jìn)

6、前方的障礙物時(shí),可以自動(dòng)報(bào)警調(diào)整,躲避障礙物,從無障礙區(qū)通過。小車通過障礙區(qū)后,能夠自動(dòng)循跡。(3)無線遙控小車左轉(zhuǎn)、右轉(zhuǎn)、前進(jìn)、后退、停止。19 第 頁 共 17 頁1.3 系統(tǒng)設(shè)計(jì)根據(jù)要求,確定如下方案:在車體上加裝光電檢測器,實(shí)現(xiàn)對(duì)電動(dòng)車的速度、位置、運(yùn)行狀況的實(shí)時(shí)檢測,并將檢測到的開關(guān)量信號(hào)傳送至單片機(jī)進(jìn)行處理,然后由單片機(jī)根據(jù)所檢測的各種數(shù)據(jù)實(shí)現(xiàn)對(duì)電動(dòng)車的智能控制。這種方案能實(shí)現(xiàn)對(duì)電動(dòng)車的運(yùn)動(dòng)狀態(tài)進(jìn)行實(shí)時(shí)控制,控制靈活、可靠,精度高,可滿足對(duì)系統(tǒng)的各項(xiàng)要求。1.3.1 設(shè)計(jì)方案采用單片機(jī)作為整個(gè)系統(tǒng)的核心,用其控制行進(jìn)中的小車,以實(shí)現(xiàn)其既定的性能指標(biāo)。充分分析我們的系統(tǒng),其關(guān)鍵在于實(shí)

7、現(xiàn)小車的自動(dòng)控制,而在這一點(diǎn)上,單片機(jī)就顯現(xiàn)出來它的優(yōu)勢 控制簡單、方便、快捷。這樣一來,單片機(jī)就可以充分發(fā)揮其資源豐富、有較為強(qiáng)大的控制功能及可位尋址操作功能、價(jià)格低廉等優(yōu)點(diǎn)。因此,這種方案是一種較為理想的方案。針對(duì)本設(shè)計(jì)特點(diǎn) 多開關(guān)量輸入的復(fù)雜程序控制系統(tǒng),需要擅長處理多開關(guān)量的標(biāo)準(zhǔn)單片機(jī),而不能用精簡I/O口和程序存儲(chǔ)器的小體積單片機(jī),D/A、A/D功能也不必選用。根據(jù)這些分析,我選定了51單片機(jī)作為本設(shè)計(jì)的主控裝置,51單片機(jī)具有功能強(qiáng)大的位操作指令,I/O口均可按位尋址,程序空間多達(dá)8K,對(duì)于本設(shè)計(jì)也綽綽有余,更可貴的是51單片機(jī)價(jià)格非常低廉。在綜合考慮了傳感器、兩部電機(jī)的驅(qū)動(dòng)等諸多

8、因素后,我們決定采用一片STC89C52單片機(jī)(如圖1-1),充分利用單片機(jī)的資源。1.4 硬件模塊介紹1.4.1 STC89C52RC單片機(jī)STC89C52RC單片機(jī)結(jié)構(gòu)圖如 圖1-4-1所示。圖1-4-1 STC89C52RC單片機(jī)結(jié)構(gòu)圖STC89C52RC單片機(jī)的特點(diǎn)如下:(1)增強(qiáng)型6時(shí)鐘/機(jī)器周期、12時(shí)鐘/機(jī)器周期任意設(shè)置。(2)工作電壓:5.5V3.4V(5V單片機(jī))/2.0V3.8V(3V單片機(jī))。(3)工作頻率:040MHZ,相當(dāng)于普通80C51單片機(jī);實(shí)際使用范圍080HZ。(4)8KB片內(nèi)程序存儲(chǔ)器,擦寫次數(shù)10萬次以上。(5)片上集成512B RAM數(shù)據(jù)存儲(chǔ)。(6)通過

9、I/O(32/36個(gè)),復(fù)位后為:P1、P2、P3、P4是弱上拉/準(zhǔn)雙向口(與普通MCS51 I/O口功能一樣);P0口是開漏輸出口,作為總線擴(kuò)展時(shí)用,不用加上拉電阻;P0口作為I/O口用時(shí),需加上拉電阻。(7)ISP在系統(tǒng)可編程,無需專用編程器/仿真器,可通過串口直接下載用戶程序,8KB程序3S即可完成一片。(8)芯片內(nèi)置EEPROM功能。(9)硬件看門狗(WDT)。(10)共3個(gè)16位定時(shí)器/計(jì)數(shù)器,兼容普通MSC-51單片機(jī)的定時(shí)器,其中定時(shí)器T0還可以當(dāng)成2個(gè)8位定時(shí)器時(shí)用。(11)外部中斷4路,下降沿中斷或低電平觸發(fā)中斷,掉電模式可有外部中斷喚醒。(12)全雙工異步串行口(UART)

10、,兼容普通的80C51單片機(jī)的串口。(13)工作溫度范圍:075/-40+85攝氏度。1.4.2 電機(jī)驅(qū)動(dòng)L293D采用功率三極管作為功率放大器的輸出控制直流電機(jī)。線性型驅(qū)動(dòng)的電路結(jié)構(gòu)和原理簡單,加速能力強(qiáng),采用由達(dá)林頓管組成的 H型橋式電路(如圖1-4-2)。用單片機(jī)控制達(dá)林頓管使之工作在占空比可調(diào)的開關(guān)狀態(tài)下,精確調(diào)整電動(dòng)機(jī)轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,效率非常高,H型橋式電路保證了簡單的實(shí)現(xiàn)轉(zhuǎn)速和方向的控制,電子管的開關(guān)速度很快,穩(wěn)定性也極強(qiáng),是一種廣泛采用的 PWM調(diào)速技術(shù)。所以這里我們選用L293D。圖1-4-2 H型橋式電路L293D(圖1-4-3)采用16引腳DI

11、P封裝,其內(nèi)部集成了雙極型H-橋電路,所有的開量都做成N型。這種雙極型脈沖調(diào)寬方式具有很多優(yōu)點(diǎn),如電流連續(xù);電機(jī)可四角限運(yùn)行;電機(jī)停止時(shí)有微圖1-4-3 L293D驅(qū)動(dòng)芯片振電流,起到“動(dòng)力潤滑”作用,消除正反向時(shí)的靜摩擦死區(qū);低速平穩(wěn)性好等。L293D通過內(nèi)部邏輯生成使能信號(hào)。H-橋電路的輸入量可以用來設(shè)置馬達(dá)轉(zhuǎn)動(dòng)方向,使能信號(hào)可以用于脈寬調(diào)整(PWM)。另外,L293D將2個(gè)H-橋電路集成到1片芯片上,這就意味著用1片芯片可以同時(shí)控制2個(gè)電機(jī)。每1個(gè)電機(jī)需要3個(gè)控制信號(hào)EN12、IN1、IN2,其中EN12是使能信號(hào),IN1、IN2為電機(jī)轉(zhuǎn)動(dòng)方向控制信號(hào),IN1、IN2分別為1,0時(shí),電機(jī)

12、正轉(zhuǎn),反之,電機(jī)反轉(zhuǎn)。選用一路PWM連接EN12引腳,通過調(diào)整PWM的占空比可以調(diào)整電機(jī)的轉(zhuǎn)速。1.4.3 循跡模塊采用五只紅外對(duì)管(如圖1-4-4)模塊,分別置于小車車身前排,根據(jù)兩只光電開關(guān)接受到白線與黑線的情況來控制小車轉(zhuǎn)向來調(diào)整車向,測試表明,只要合理安裝好兩只光電開關(guān)的位置就可以很好的實(shí)現(xiàn)循跡的功能。圖1-4-4 紅外對(duì)管(TCRT5000)實(shí)物圖1.4.4 避障模塊采用兩塊只紅外對(duì)管模塊置于小車前方。通過測試此種方案就能很好的實(shí)現(xiàn)小車避開障礙物,且充分的利用資源而不浪費(fèi)。1.4.5 電源模塊方案:智能小車系統(tǒng)需要5V6V電源才能正常工作,所以采用1支1.5V與1支4V電池混合并聯(lián)使

13、用。1.5 機(jī)械系統(tǒng)設(shè)計(jì)本題目要求小車的機(jī)械系統(tǒng)穩(wěn)定、靈活、簡單,而三輪運(yùn)動(dòng)系統(tǒng)具備以上特點(diǎn)。但為了車體運(yùn)動(dòng)過程中更加穩(wěn)定,前后分別用一個(gè)萬向輪,左、右輪子由電機(jī)驅(qū)動(dòng)轉(zhuǎn)向。驅(qū)動(dòng)部分:智能小車的直流電機(jī)功率較小,而小車上裝有電池、電機(jī)、電子器件等,使得電機(jī)負(fù)擔(dān)較重。為使小車能夠順利啟動(dòng),且運(yùn)動(dòng)平穩(wěn),在直流電機(jī)和輪車軸之間加裝了三級(jí)減速齒輪。電池的安裝:將電池盒盡量安置在車體的電機(jī)前或后位置,降低車體重心,提高穩(wěn)定性,同時(shí)可增加驅(qū)動(dòng)輪的抓地力,減小輪子空轉(zhuǎn)所引起的誤差。1.6 硬件設(shè)計(jì)1.6.1 小車工作原理智能小車采用左右輪兩邊各用一個(gè)電機(jī)驅(qū)動(dòng),調(diào)制左右兩個(gè)輪子的轉(zhuǎn)速起停從而達(dá)到控制轉(zhuǎn)向的目的,

14、前、后輪是萬象輪,起支撐的作用。將五路循跡光電對(duì)管模塊分別裝在車頭下的前排(貼地面稍近效果更佳)。例如:當(dāng)車身下的1號(hào)傳感器檢測到黑線時(shí),主控芯片控制右輪電機(jī)停止,車向右修正,當(dāng)車身下右邊5號(hào)傳感器檢測到黑線時(shí),主控芯片控制左輪電機(jī)停止,車向左修正。小車各種運(yùn)動(dòng)狀態(tài)如表1-6-1。表1-6-1 小車工作狀態(tài)表狀態(tài)號(hào)1號(hào)2號(hào)3號(hào)4號(hào)5號(hào)左輪電機(jī)右輪電機(jī)小車狀態(tài)101111快速正轉(zhuǎn)不轉(zhuǎn)右轉(zhuǎn)彎210111慢速正轉(zhuǎn)不轉(zhuǎn)右微轉(zhuǎn)彎311011快速正轉(zhuǎn)快速正轉(zhuǎn)快速前進(jìn)411101不轉(zhuǎn)慢速正轉(zhuǎn)左轉(zhuǎn)彎511110不轉(zhuǎn)快速正轉(zhuǎn)左微轉(zhuǎn)彎避障的原理和循線一樣,在車身右邊裝一個(gè)光電對(duì)管模塊,當(dāng)其檢測到障礙物時(shí),主控芯片

15、給出信號(hào)控制小車倒退,轉(zhuǎn)向,從而避開障礙物。1.6.2電路框圖設(shè)計(jì)由以上設(shè)計(jì)思路可設(shè)計(jì)出智能小車電路框圖(圖1-6-1)蜂鳴LED數(shù)顯驅(qū)動(dòng)電機(jī)尋跡、避障模塊時(shí)鐘電路復(fù)位電路紅外遙控接收電路STC89C52圖1-6-1 電路設(shè)計(jì)框圖1.6.3知識(shí)點(diǎn)本實(shí)訓(xùn)項(xiàng)目需要通過學(xué)習(xí)和查閱資料,了解和掌握以下知識(shí)。(1)電路原理圖設(shè)計(jì)。(2)單片機(jī)復(fù)位電路工作原理設(shè)計(jì)。(3)單片機(jī)晶振帶工作原理設(shè)計(jì)(4)驅(qū)動(dòng)器L293D直流電機(jī)驅(qū)動(dòng)的特性及使用。(5)4位共陰極數(shù)顯的使用方法(6)STC89C52RC單片機(jī)引腳。(7)Keil uVision3編程工具的使用方法。(8)單片機(jī)C語言程序設(shè)計(jì)。(9)PCB板的設(shè)

16、計(jì)。(10)SPI程序下載工具的使用。(11)紅外對(duì)管的原理。(12)無線遙控電路設(shè)計(jì)。1.6.4 元件清單基于STC89C52RC單片機(jī)智能小車的設(shè)計(jì)元件清單如表1-6-2所示。表1-6-2 智能小車元件清單表元件名稱型號(hào)數(shù)量用途單片機(jī)STC89C52RC1個(gè)控制核心晶振12.0598MHz1個(gè)晶振電路三極管S80504個(gè)數(shù)碼管顯示電路發(fā)光二極管LED-RED1個(gè)指示燈電容100F4個(gè)電源電路30PF2個(gè)晶振電路電解電容10F1個(gè)消振電路紅外避障模塊TCRT50002個(gè)臂章電路紅外線接收頭V348381個(gè)遙控接收電路紅外尋跡模塊TCRT50005個(gè)尋跡電路電阻10K、300、1K若干關(guān)機(jī)電路

17、直流電機(jī)驅(qū)動(dòng)L293D1個(gè)電機(jī)驅(qū)動(dòng)銅柱5mm、10mm、20mm共20根固定模塊直流減速電機(jī)小型 #10172個(gè)驅(qū)動(dòng)小車排針KF332K-3P若干杜邦線插座杜邦線帶針孔若干制作插線頭數(shù)碼管7SEG-MPX4-CC1個(gè)顯示電路蜂鳴器HUDZ1個(gè)報(bào)警電路電源5V6V1個(gè)小車電源1.6.5信號(hào)檢測模塊設(shè)計(jì)小車循跡原理是小車在畫有黑線的白紙 “路面”上行駛,由于黑線和白紙對(duì)光線的反射系數(shù)不同,可根據(jù)接收到的反射光的強(qiáng)弱來判斷“道路”黑線。所以在該模塊中利用了簡單、應(yīng)用也比較普遍的檢測方法紅外探測法。市面上有很多紅外傳感器,在這里我選用TCRT5000型光電對(duì)管。紅外探測法,即利用紅外線在不同顏色的物理

18、表面具有不同的反射性質(zhì)的特點(diǎn)。在小車行駛過程中不斷地向地面發(fā)射紅外光,當(dāng)紅外光遇到白色地面時(shí)發(fā)生漫發(fā)射,反射光被裝在小車上的接收管接收;如果遇到黑線則紅外光被吸收,則小車上的接收管接收不到信號(hào),再通過LM339(比較器)作比較來采集高低電平,從而實(shí)現(xiàn)信號(hào)的檢測。設(shè)計(jì)出尋跡模塊電路圖(圖1-6-2)。圖1-6-2 protel仿真尋跡電路小車避障模塊則與尋跡模原理相同。如果遇到障礙物,反射光被裝在小車上的避障模塊接收管接收。再通過多個(gè)74LS00(與非門)來采集高低電平,從而實(shí)現(xiàn)信號(hào)的檢測,通過單片機(jī)處理數(shù)據(jù)輸入PWM波,從而控制電機(jī)正反轉(zhuǎn)來控制小車前進(jìn)方向避開障礙物。避障模塊上有多圈精密可調(diào)電

19、位器,可根據(jù)使用環(huán)境調(diào)節(jié).調(diào)節(jié)范圍從3cm-30cm。因?yàn)槭欠瓷湓?跟具體的反射目標(biāo)相關(guān),可根據(jù)情況調(diào)節(jié)。設(shè)計(jì)出電路原理圖(圖1-6-3)。圖1-6-3 protel仿真避障電路主控模塊主要是對(duì)采集信號(hào)進(jìn)行分析,在L239D的EN 端輸入PWM波,同時(shí)通過調(diào)整PWM波的占空比控制電機(jī)速度,起停。其電路圖如圖1-6-4。圖1-6-4 protel仿真主控電路1.7軟件設(shè)計(jì)1.7.1 尋跡避障程序流程圖由于智能小車的設(shè)計(jì)主要用紅外對(duì)管進(jìn)行數(shù)據(jù)采集,來實(shí)現(xiàn)小車的尋跡、避障、無線遙控等功能。主要涉及開關(guān)量信號(hào)的處理問題,所以程序用C語言編寫最為簡單。設(shè)計(jì)出尋跡、避障程序流程圖(圖1-7-1)YESY

20、ESYESYESNOYESNONONONOYES!K1!K2快速右轉(zhuǎn)右微轉(zhuǎn)前進(jìn)!K3!K4!K5快速左轉(zhuǎn)左微轉(zhuǎn)!KIN1!KIN2左轉(zhuǎn)后右轉(zhuǎn)右轉(zhuǎn)后左轉(zhuǎn)NONOYES尋跡程序主函數(shù)開始避障程序 圖1-7-1 尋跡加避障程序流程圖程序清單如下:#include #defineuchar unsigned char #define uint unsigned intsbit K1=P10;sbit K2=P11;sbit K3=P12;sbit K4=P13;sbit K5=P14;sbit KIN1=P15;sbit KIN2=P16;sbit out1 = P20 ;sbit out2 = P2

21、1 ;sbit out3 = P22 ;sbit out4 = P23 ; void delay(uint t) /延時(shí)程序1 uchar j; while(t-)for(j=5;j0;j-); /左轉(zhuǎn)void comeleft()uchar i; out1=0; out2=0; out3=1; out4=0; for(i=0;i10;i+)out1=!out1;delay(1);/左微轉(zhuǎn)void sleft()uchar i; out1=0; out2=0; out3=1; out4=0; for(i=0;i5;i+)out1=!out1;delay(1);/右微轉(zhuǎn)void sright()

22、 uchar i;out1=1; out2=0; out3=0; out4=0; for(i=0;i5;i+)out3=!out3; delay(1);/右轉(zhuǎn)void comeright () uchar i;out1=1; out2=0; out3=0; out4=0; for(i=0;i10;i+)out3=!out3; delay(10);/前進(jìn)加速;void comeon() out2=0;out4=0;out1=1;out3=1; /避障原路返回void shunback() if(!KIN1)|(!KIN2) out1=0; out2=1; out3=1; out4=0;delay

23、(4000);comeon();delay(4000); out1=1; out2=0; out3=0; out4=0;delay(1000); comeon();delay(2000);while(K1&K2&K3&K4&K5) comeright (); ;else;/循跡void scanline()P1=0XFF;if(K5=0)comeleft();else if(!K1) comeright ();else if(!K4) sleft();comeon();else if(!K2) sright();comeon();else if(!K3) comeon();comeon();e

24、lse P2=P2;void main(void) P1=0XFF;P2=0XFF; while(1) shunback(); scanline(); 1.7.2 紅外遙控程序設(shè)計(jì)出紅外線遙控接收程序流程圖(圖1-7-2)。中斷開始關(guān)中斷按鍵識(shí)別返回?cái)?shù)據(jù)中斷結(jié)束初始化開始調(diào)數(shù)據(jù)處理子程序調(diào)驅(qū)動(dòng)小車子程序圖1-7-2 遙控接收程序流程圖紅外線遙控小車程序清單#include #defineuchar unsigned char #define uint unsigned intsbit SET1=P24;sbit SET2 =P25;sbit SET3 =P26;sbit out1 = P20

25、;sbit out2 = P21 ;sbit out3 = P22 ;sbit out4 = P23 ;unsigned long xdata rec_code;unsigned long xdata time_us;unsigned char xdata rec_cnt;unsigned char xdata kbuf;uchar sdata;bit rec_b;bit key_save;bit keyp;uchar code seg7code=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; void delay(uchar t) /延時(shí)

26、程序1 uchar j; while(t-)for(j=50;j0;j-); void Init()TMOD = 0x09;/T/C1采用16位定時(shí)器/計(jì)數(shù)器 ET1 = 1;/定時(shí)器1開中斷 TH0 = 0x00; TL0 = 0x00; ET0 = 0; TR0= 1;/定時(shí)計(jì)數(shù)器啟動(dòng)計(jì)數(shù) EX0 = 1;/外部中斷0關(guān)中斷EX1 = 0;/外中斷1關(guān)中斷EA = 1;/CPU開中斷void stop() out1=0; out2=0; out3=0; out4=0; delay(10);/左轉(zhuǎn)void comeleft() out1=0; out2=1; out3=1; out4=0;

27、delay(200);/右轉(zhuǎn)void comeright () out1=1; out2=0; out3=0; out4=1; delay(200);/前進(jìn)加速;void comeon() out2=0;out4=0;out1=1;out3=1;/后退void comeback() out1=0; out3=0; out2=1;out4=1; delay(200);/避開障礙物void shunout() if(sdata=157) comeon();rec_code=0;sdata=0;else if (sdata=87)comeback();rec_code=0;sdata=0;else

28、if (sdata=253)stop();rec_code=0;sdata=0; else if (sdata=61)comeright();rec_code=0;sdata=0;else if (sdata=221)comeleft();rec_code=0;sdata=0;else;void inter_x0() interrupt 0 TR0 = 0; time_us = (unsigned long)(TH03800&time_us300&time_us700) rec_cnt +; rec_code = rec_code1300&time_us1750) rec_cnt +; rec

29、_code = rec_code1800&time_us1) rec_cnt = 0; key_save = 1; if(rec_cnt=32) rec_b = 1; key_save = 0; rec_cnt = 0; void GetKeyValue() if(rec_b) unsigned char da; rec_b = 0; kbuf = (rec_code&0x0000ff00)8; da = rec_code&0x000000ff; if(kbuf=da) sdata=da; void main()P1=0XFF;P2=0XFF;P3=0XFF;P0=0XFF;Init(); w

30、hile(1)GetKeyValue(); shunout();1.8 系統(tǒng)調(diào)試在在Keil軟件中調(diào)試尋跡加避障程序并生成Hex文件。將在Keil下生成的HEX文件下載到STC8952單片機(jī)中。將下車加上電源(注意:如果加的電源電壓大于6V將跳線插到大于6V的針腳上,5V則插在5V所對(duì)應(yīng)的針腳上,否則單片機(jī)會(huì)燒壞),將小車至于預(yù)先設(shè)計(jì)好的黑色膠帶地面上。按下電源按鈕啟動(dòng)小車,小車按照黑色膠帶路線行駛。當(dāng)在黑色軌道上放置一障礙物,小車能夠繞開障礙物自動(dòng)修正方向繼續(xù)尋跡。以上測試說明智能小車尋跡、避障功能調(diào)試成功。同上下載遙控程序,按下紅外遙控器相應(yīng)的鍵能夠控制小車前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、停止等。

31、說明小車無線遙控功能測試成功。根據(jù)測試的情況來看,尋跡效果比較好。避障功能不是很完美,當(dāng)遇到不反光的障礙物時(shí)紅外線接收頭接收不到反射光導(dǎo)致小車避障功能大打折扣。遙控小車轉(zhuǎn)彎時(shí),小車沒有固定的轉(zhuǎn)彎角度。當(dāng)小車運(yùn)行速度快時(shí),遙控小車轉(zhuǎn)彎會(huì)使小車原地打轉(zhuǎn)。心得體會(huì)這次實(shí)訓(xùn)題目是基于STC89C52RC單片機(jī)智能小車的設(shè)計(jì)與開發(fā)。實(shí)訓(xùn)中自己焊接主板又一次提升了我們的焊接技術(shù),這對(duì)作為即將畢業(yè)的計(jì)算機(jī)應(yīng)用專業(yè)的學(xué)生走向工作崗位至關(guān)重要。熟悉了很多我們?cè)駨奈凑J(rèn)識(shí)的元器件,比如紅外線對(duì)管、無線遙控以及一些簡單的傳感器。STC89C52RC單片機(jī)雖然我們從未用過,但在以前學(xué)習(xí)C51單片機(jī)的基礎(chǔ)上遇到問題也能

32、迎刃而解。實(shí)訓(xùn)中不但拓展了我們的思維,還能夠把這次實(shí)訓(xùn)理論和經(jīng)驗(yàn)與以后的工作和實(shí)際生活相結(jié)合應(yīng)用。通過這次課程設(shè)計(jì)使我們懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足。系統(tǒng)調(diào)試中,許多小組都因?yàn)樗玫碾娫措妷哼^高導(dǎo)致單片機(jī)被燒壞,我們小組也未能幸免。這次給了我們極大的教訓(xùn),在以后的項(xiàng)目實(shí)訓(xùn)和工作中一定要按照規(guī)定進(jìn)行設(shè)計(jì)。在這次實(shí)訓(xùn)中,我們學(xué)到了該怎樣去擬定一個(gè)項(xiàng)目計(jì)劃并去實(shí)現(xiàn)它。本次項(xiàng)目的設(shè)計(jì)與開發(fā)能夠順利完成,還要感謝各位老師的指導(dǎo)和身邊許多同學(xué)的幫助。在設(shè)計(jì)過程中,許多老師給予了悉心的指導(dǎo),最重要的是給了我們解決問題的思路和方法,在此,再次對(duì)你們表示最真摯的感謝!參考文獻(xiàn)1郭惠,吳迅.單片機(jī)C語言程序設(shè)計(jì)完全自學(xué)手冊(cè)M.電子工業(yè)出版社,2008.10:1-200.2王東鋒,王會(huì)良,董冠強(qiáng). 單片機(jī)C語言應(yīng)用100例M. 電子工業(yè)出版社,2009.3:145-300.3韓毅,楊天. 基于HCS12單片機(jī)的智能尋跡模型車的設(shè)計(jì)與實(shí)現(xiàn)J.學(xué)術(shù)期刊,2008,2 9(18):1535-1955.4 王曉明. 電動(dòng)機(jī)的單片機(jī)控制J. 學(xué)術(shù)期刊,2002,13(15):1322-1755.

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔

相關(guān)搜索

關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!