智能公交小車系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文 _第1頁
智能公交小車系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文 _第2頁
智能公交小車系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文 _第3頁
智能公交小車系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文 _第4頁
智能公交小車系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文 _第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

智能公交小車系統(tǒng)的設(shè)計(jì)與目錄緒論...................................................................1 1.2硬方案比較和選擇 2.189C52RC單片機(jī)控制模塊 2.1.2最小應(yīng)用系統(tǒng)設(shè)計(jì) 2.1.3時(shí)鐘電路 2.1.4復(fù)位電路 2.3驅(qū)動(dòng) 2.5信息采集系統(tǒng) 2.5.1循跡電路原理分析 2.6顯示電路設(shè)計(jì) 3.3初始化子程序設(shè)計(jì) 3.4延時(shí)子程序設(shè)計(jì) 3.7報(bào)警子程序設(shè)計(jì) 3.8電機(jī)控制子程序設(shè)計(jì) 結(jié)論及致謝 參考文獻(xiàn) 附錄A智能小車公交系統(tǒng)總程序清單 附錄B硬件原理圖、以及實(shí)物圖片 緒論伴隨著科學(xué)技術(shù)的發(fā)展,智能系統(tǒng)在社會(huì)各領(lǐng)域的作用越來越大,對(duì)智能機(jī)器人、智能小車系統(tǒng)的研究已成為熱門課題。現(xiàn)如今世界上已有許多國家都積極地在智能系統(tǒng)的制造領(lǐng)域投入大量物力和精力,很多專業(yè)組織和人士紛紛想建造一個(gè)平臺(tái),互相交流各國智能系統(tǒng)技術(shù)和發(fā)展方向和水平,其中亞廣聯(lián)組織的智能小車電視大賽就迎合了大多數(shù)人對(duì)智能系統(tǒng)的熱愛。對(duì)于競賽中使用的智能系統(tǒng),其控制器是整個(gè)智能控制系統(tǒng)的核心,直接關(guān)系到系統(tǒng)工作的效率和性能。對(duì)于控制器的選型要遵循以下原則:控制器必須具有有較強(qiáng)的抗干擾能力,具有較快的運(yùn)算速度和具備很強(qiáng)的數(shù)據(jù)處理能力;小型化功能強(qiáng)大置;不小于32kB的程序存儲(chǔ)空間置;不小于2kB的數(shù)據(jù)存儲(chǔ)空間;具備足夠的I/O端口;具備至少 3個(gè)定時(shí)器/計(jì)數(shù)器靈;活方便的編程調(diào)試方式另;外要具有常見導(dǎo)師的指示,充分研究分析智能公交小車循跡系統(tǒng),結(jié)合設(shè)計(jì)要求和任務(wù)進(jìn)行設(shè)計(jì)開發(fā)。該項(xiàng)目可完成小車尋跡、停車、小車速度控制等。根據(jù)設(shè)計(jì)要求,確定了如下的設(shè)計(jì)方案:通過改裝購買來的小車,在小車底盤的基礎(chǔ)鳴器。這樣便能實(shí)現(xiàn)小車尋跡、報(bào)站、停止等一系列動(dòng)作。該方案通對(duì)電機(jī)進(jìn)行實(shí)時(shí)控制,以達(dá)到精準(zhǔn)控制的目的。在本設(shè)計(jì)中采用89C52RC單的入口參數(shù),通過PID運(yùn)算產(chǎn)生控制信號(hào),再將控制信號(hào)傳送給L298N從而實(shí)現(xiàn)對(duì)電機(jī)控制,使用五個(gè)光電傳感器采集信號(hào),通過分析采集到的信號(hào),產(chǎn)生控制信號(hào),控制電機(jī)實(shí)現(xiàn)左大轉(zhuǎn)、左小轉(zhuǎn)、右大轉(zhuǎn)、右小轉(zhuǎn)、剎車、惰行、反轉(zhuǎn)。另外,通過PWM模塊實(shí)現(xiàn)對(duì)速度的調(diào)制;本設(shè)計(jì)就是采用的是通用89C52RC單片機(jī)作為智能小車公交系統(tǒng)的控制和運(yùn)算中樞,89C52RC單片機(jī)是一款通用的8位CMOS微控制器,功耗小性能好,易于編程。設(shè)計(jì)任務(wù)要求:設(shè)計(jì)并制作一智能公交小車系統(tǒng)。要求該智能小車系統(tǒng)能按設(shè)定的速度穩(wěn)定地在引導(dǎo)線上行駛。在設(shè)定的位置停止設(shè)置的時(shí)間,到達(dá)引導(dǎo)線末端自動(dòng)停止前進(jìn)。引導(dǎo)線黑色寬度2.5cm,每站停留時(shí)間5秒并鳴笛。1.1系統(tǒng)原理較器模塊、信息采集模塊、LED顯示模塊、電機(jī)。機(jī)分析處理后產(chǎn)生控制信號(hào),控制小車調(diào)速、轉(zhuǎn)彎、報(bào)站、剎車等;由于單片機(jī)輸出電流不能驅(qū)動(dòng)電機(jī),所以需要外加驅(qū)動(dòng)電路模塊來驅(qū)動(dòng)電機(jī)。另外通過LED顯示小車狀態(tài)。系統(tǒng)框圖如圖1.1所示LED顯示圖1.1系統(tǒng)框圖根據(jù)設(shè)計(jì)要就,智能小車公交系統(tǒng)的控制模塊可以采用如下方案:方案一:采用89C52RC單片機(jī),它是一款通用性的低功耗、高性能CMOS,8位微控制字節(jié)程序存儲(chǔ)器Flash(閃存256字節(jié)數(shù)據(jù)存儲(chǔ)器RAM,三個(gè)16位定時(shí)器/計(jì)數(shù)器,四源,全雙工串行口,片晶振以及時(shí)鐘電路。另外,89C52RC可降至0Hz靜態(tài)邏輯操作,續(xù)工作。掉電模式下,RAM容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。使得89C52RC單片機(jī)為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。方案二:選用AVR單片機(jī)Atmega128L,Atmega128L是一款高性能、低功耗的單片機(jī),運(yùn)算速度快,Atmega128L是八位微處理器,管腳數(shù)為64。采用的是先進(jìn)的精簡指令集結(jié)構(gòu),其指令系統(tǒng)133條指令,大多數(shù)單條指令為單周期指令。Atmega128L有兩個(gè)相互獨(dú)立的預(yù)分頻器和比較器,Atmega128L具有八位定時(shí)器/計(jì)數(shù)器和兩個(gè)預(yù)分頻器、16位定時(shí)器 /計(jì)數(shù)器具有比較功能和捕捉功能,Atmega128L具有實(shí)時(shí)時(shí)鐘計(jì)數(shù)器。Atmega128L部帶有模擬電壓比較器。具有上電自動(dòng)復(fù)位以及可編程的掉電檢測功能。Atmega128L片資源豐富,具有:六個(gè)外部二級(jí)中斷源,4個(gè)八位定時(shí)計(jì)數(shù)器,53個(gè)(I/O)輸入輸出口,I/O口多。 器件來設(shè)計(jì)電路,其設(shè)計(jì)不僅過程簡單,可采用至上而下的設(shè)計(jì)方法,而且設(shè)計(jì)出來的系統(tǒng)的體積小。采用FPGA設(shè)計(jì)的系統(tǒng)功能異常強(qiáng)大,而且不像傳統(tǒng)制造集成電路那樣需要花費(fèi)大量時(shí)間和精力來設(shè)計(jì)開發(fā)。采用FPGA設(shè)計(jì)靈活強(qiáng)、器件的密集度高、產(chǎn)品的可靠性強(qiáng)、縮短了產(chǎn)品的開發(fā)周期、工作速度快、系統(tǒng)的性能強(qiáng)。采用FPGA可以實(shí)現(xiàn)復(fù)雜的邏輯功能要求,可實(shí)現(xiàn)大規(guī)模設(shè)計(jì)要求、高集成度、小體積、很好的穩(wěn)定性,采用的是至上而下的設(shè)計(jì)思路。另外FPGA采用的是并行工作方式,流水線處理技術(shù),四級(jí)流水線操作。每條指令周期完成四個(gè)操作,提高了系統(tǒng)的處理速度,通常應(yīng)用于大規(guī)模和實(shí)時(shí)性處理系統(tǒng)??刂坪屯饨?,但相對(duì)于89C52RC價(jià)格貴,部資源沒有得到充分利用,而且Atmega128L指令系統(tǒng)采用的是精簡指令結(jié)構(gòu),程序開發(fā)編寫相對(duì)比較難,不通用。FPGA的高速處理能力得不到充分發(fā)揮且價(jià)格較貴,而89C52RC通用性強(qiáng),價(jià)格便宜并且能滿足設(shè)計(jì)需要,所以我們選擇方案一。2.189C52RC單片機(jī)控制模塊與MCS-51單片機(jī)產(chǎn)品兼容8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器四個(gè)八位可編程I/O口三個(gè)16位定時(shí)器/計(jì)數(shù)器全雙工UART串行通道低功耗空閑和掉電模式掉電后中斷可喚醒看門狗定時(shí)器雙數(shù)據(jù)指針掉電標(biāo)識(shí)符2.1.2最小應(yīng)用系統(tǒng)設(shè)計(jì)簡單﹑可靠。其構(gòu)成部分包括:電源接口和地、晶振、時(shí)鐘電路、復(fù)位電路、蜂鳴器、排針構(gòu)成。單片機(jī)最小系統(tǒng)如圖2.1所示。(1)可方便供用戶任意的使用各口的每一位。(4)復(fù)位電路采用上電復(fù)位和按鍵復(fù)位。圖2.189C52RC單片機(jī)最小系統(tǒng)2.1.3時(shí)鐘電路89C52RC工作所需要的時(shí)鐘信號(hào)。單片機(jī)的時(shí)鐘信號(hào)通常有兩種方式得到:1部振蕩方式2外部振蕩方式。端用于外接石英晶體振蕩器和微調(diào)電容(c1和c2這樣便構(gòu)成了一個(gè)穩(wěn)定的自激振蕩器,將其產(chǎn)生的脈沖輸入給單片機(jī)。本設(shè)計(jì)采用最常用的部時(shí)鐘方式,即用外接晶體和電容組成的并聯(lián)諧振回路。振蕩晶體可在1.2MHZ到12MHZ之間選擇。C1、C2可在20pF到100pF之間取值,但在20pF到40pF時(shí)振蕩器有較高的頻率穩(wěn)定性。所以本設(shè)計(jì)中,未涉及單片機(jī)得串行口通信,所以振蕩晶體選擇12MHZ,電容選一般采用振蕩頻率為11.0592MHZ晶振。2.1.4復(fù)位電路復(fù)位是用作單片機(jī)的初始化操作,當(dāng)單片機(jī)復(fù)位時(shí)程序計(jì)數(shù)器PC的值變?yōu)?000H,使單片機(jī)的程序指針指在0000H單元,即從0000H單元開始執(zhí)行程序。除了系統(tǒng)的正常初始化外,另外當(dāng)單片機(jī)系統(tǒng)在運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),也可以通過持續(xù)按下復(fù)位鍵,使單片機(jī)工作從0000H單元重新工作。其中單片機(jī)復(fù)位的條件是:當(dāng)按下復(fù)位鍵時(shí),必須使RST復(fù)位信號(hào)引腳持續(xù)2個(gè)機(jī)器周期以上的高電平。復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式,如圖2.2所示。(a)上電自動(dòng)復(fù)位(b)按鍵電平復(fù)位(c)按鍵脈沖復(fù)位圖2.2單片機(jī)常見的復(fù)位電路系統(tǒng)上電時(shí),電容充電到高電平并持續(xù)一段時(shí)間(兩個(gè)機(jī)器周期以上)來實(shí)現(xiàn)單片機(jī)復(fù)位。時(shí)鐘頻率用12MHZ時(shí)所以C取22uF,R取1KΩ。按鍵復(fù)位其原理是,當(dāng)按鍵按下時(shí),R1接 頻率選用6MHZ時(shí),C取10uF,R1取1K,R2取10KΩ。復(fù)位電路如圖2.3所示。圖2.389C52RC復(fù)位電路直流調(diào)速系統(tǒng)采用的主要方法,調(diào)節(jié)電樞供電電壓或者改變勵(lì)磁磁通,都需要專門的可控電流電源,常用的可控直流電源有以下三種:(1)旋轉(zhuǎn)變流機(jī)組。用交流電動(dòng)機(jī)和直流電動(dòng)機(jī)組成機(jī)組,以獲得可調(diào)的電流電壓。旋轉(zhuǎn)變流系統(tǒng)由交流發(fā)電機(jī)拖動(dòng)直流電動(dòng)機(jī)實(shí)現(xiàn)變流,由發(fā)電機(jī)給需要調(diào)速的直流電動(dòng)機(jī)供電,調(diào)節(jié)發(fā)電機(jī)的勵(lì)磁電流即可改變其輸出電壓,從而調(diào)節(jié)電動(dòng)機(jī)的轉(zhuǎn)速。改變勵(lì)磁電流的方向則輸出電壓的極性和電動(dòng)機(jī)的轉(zhuǎn)向都隨著改變,所以G-M系統(tǒng)的可逆運(yùn)行是很容易實(shí)現(xiàn)的。該系統(tǒng)需要旋轉(zhuǎn)變流機(jī)組,至少包含兩臺(tái)與調(diào)速電動(dòng)機(jī)容量相當(dāng)?shù)男D(zhuǎn)電機(jī),還要一臺(tái)勵(lì)磁發(fā)電機(jī),設(shè)備多、體積大、費(fèi)用高、效率低、維護(hù)不方便等缺點(diǎn)。且技術(shù)落后,因此擱置不用。流調(diào)速系統(tǒng)的主要形式。它可以是單相、三相或更多相數(shù),半波、全波、半控、全控等類統(tǒng)的可逆運(yùn)行造成困難。它的另一個(gè)缺點(diǎn)是運(yùn)行條件要求高,維護(hù)運(yùn)行麻煩。最后,當(dāng)系統(tǒng)處于低速運(yùn)行時(shí),系統(tǒng)的功率因數(shù)很低,并產(chǎn)生較大的諧波電流危害附近的用電設(shè)備。生可調(diào)的直流平均電壓,可用做對(duì)電機(jī)的速度控制。脈沖寬度調(diào)制是通過對(duì)模擬信號(hào)的電平進(jìn)行控制。由控制系統(tǒng)控制,可以通過設(shè)定脈沖寬度調(diào)制器的定時(shí)器初值來設(shè)置周期,在PWM控制寄存器中設(shè)置接通時(shí)間和關(guān)斷時(shí)間,這樣通過改變方波的占空比來實(shí)現(xiàn)對(duì)模擬信號(hào)的電平進(jìn)行控制。整流電路其工作原理是:根據(jù)輸出的模擬信號(hào)的高低使二極管處于導(dǎo)通或截止?fàn)顟B(tài),實(shí)現(xiàn)整流。PWM調(diào)制后,通過驅(qū)動(dòng)電路控制電機(jī)的轉(zhuǎn)速,即實(shí)現(xiàn)對(duì)系統(tǒng)的速度控制。根據(jù)以上綜合比較,本次設(shè)計(jì)采用PWM調(diào)制來實(shí)現(xiàn)對(duì)小車的速度的調(diào)制。由于單片機(jī)輸出電流小,不足以驅(qū)動(dòng)電機(jī),還需要經(jīng)過一驅(qū)動(dòng)電路,再加在電機(jī)上。為順利實(shí)現(xiàn)改變小車速度的控制,該設(shè)計(jì)使用軟件編程產(chǎn)生PWM脈沖,通過調(diào)節(jié)脈沖占空比來達(dá)到調(diào)節(jié)電機(jī)轉(zhuǎn)或不轉(zhuǎn)的時(shí)間,從而控制小車的速度。2.3驅(qū)動(dòng)該設(shè)計(jì)的驅(qū)動(dòng)模塊采用的是L298N芯片,用作驅(qū)動(dòng)智能小車的兩個(gè)直流電機(jī)。L298N具有兩個(gè)使能控制端,可以設(shè)置在不接受輸入信號(hào)的情況下允許或禁止器件工作,在該硬件設(shè)計(jì)中將使能端接為固定的高點(diǎn)平,使驅(qū)動(dòng)芯片在未接收信號(hào)輸入信號(hào)時(shí)也處于工作狀態(tài);L298N部有4通道的二相和四相電機(jī)的專用驅(qū)動(dòng)器。該硬件設(shè)計(jì)中通過P3口的低4位對(duì)兩電極的控制。在該設(shè)計(jì)的軟件部分,通過改變IN1、IN2、IN3、IN4四通道的輸入電動(dòng)器。L298N驅(qū)動(dòng)芯片的主要特點(diǎn)是:1工作電壓高,最高的工作電壓可達(dá)46V。2輸出的電流大,瞬間峰值電流可達(dá)到3A,持續(xù)穩(wěn)定的工作電流為2A。3驅(qū)動(dòng)能力強(qiáng)。L298N對(duì)直流電機(jī)控制的邏輯真值表如表2.4所示表2-1L298N對(duì)直流電機(jī)控制的邏輯真值輸入輸出反轉(zhuǎn)制動(dòng)沒有輸出,電機(jī)不工作圖2.4電機(jī)驅(qū)動(dòng)模塊比較器的功能是比較兩個(gè)電壓的大小,如圖2.5所示,將一個(gè)信號(hào)電壓Ui和一個(gè)參考電壓Ur進(jìn)行比較,若Ui>Ur時(shí),即負(fù)向輸入端大于正向輸入端,輸出端U0輸出一低電平。若Ui<Ur時(shí),即負(fù)向輸入端小于正向輸入端,比較器的輸出端輸出一個(gè)高電平。圖2.5比較器電路比較器可以分為以下類型:1過零電壓比較器2電壓比較器3窗口比較器4遲滯比較器。在本設(shè)計(jì)中,光電傳感器采集的信號(hào)通常伴有外界噪聲信號(hào),可以在光電傳感器后面接一個(gè)低通濾波器,將噪聲信號(hào)濾除,因?yàn)樵肼曅盘?hào)通常是高頻信號(hào),若要做到保證采集的信號(hào)的準(zhǔn)確性和提高系統(tǒng)的抗干擾性,還應(yīng)該嘗試采用了滯回比較器,滯回比較器有兩個(gè)閾值電壓,當(dāng)輸入發(fā)生變化時(shí),只要電壓值變化處于兩個(gè)閾值電壓之間,滯回比較器的輸出電壓就不會(huì)來回跳變。所以當(dāng)輸入信號(hào)由于外界干擾或其他原因造成信號(hào)發(fā)生改變,但變化處于兩閾值電壓之間,就不會(huì)產(chǎn)生影響,這樣增強(qiáng)了抗干擾能力。而該設(shè)計(jì)為了簡化設(shè)計(jì),采用的是簡單電壓比較器。因?yàn)楹唵坞妷罕容^器結(jié)構(gòu)簡單,硬件電路搭建簡單,而且靈敏度高,但它的抗干擾能力差,也就是說如果輸入信號(hào)因受干擾在閾值附近變化,則比較器輸出電平就會(huì)反復(fù)從一個(gè)電平跳到另一個(gè)電平。本設(shè)計(jì)要求要求并不高,所以本設(shè)計(jì)采用簡單的比較器就能達(dá)到要求。2.5信息采集系統(tǒng)采集到的信號(hào)通過LM324搭建的比較器放大反向后,輸入給單片機(jī),通過運(yùn)算分析,產(chǎn)生控制信號(hào),輸出給驅(qū)動(dòng)模塊,控制電機(jī)。從而實(shí)現(xiàn)對(duì)智能小車行駛過程中的前進(jìn)、到站、到終點(diǎn)站、轉(zhuǎn)彎的控制。2.5.1循跡電路原理分析反射光線在白紙上畫上一個(gè)橢圓型的軌跡(寬約1.5厘米)作為循跡軌道,在軌道的上標(biāo)記一處寬約10厘米的線(垂直于軌道)作為小車終點(diǎn)站,另外標(biāo)記三處寬約6厘米的線(垂直于軌道)作為小車行駛過程中的三個(gè)站點(diǎn)。圖2.6光電感應(yīng)器信息采集電路(見圖2.6光電感應(yīng)器)采用紅外反射接收的原理,包括一個(gè)紅外線發(fā)射器、一個(gè)紅外接收傳感器。其中采用紅外發(fā)光二極管產(chǎn)生紅外線,若紅外線照射到反光強(qiáng)的物體上(如白色物體),紅外線就會(huì)被反射回來,被接收器接收到,若照射到反光性接收到。其原理如圖2.6所示:1.沒有檢測到黑線,則H4發(fā)射器發(fā)射紅外線照射在白紙上,紅外線被反射回來被H4接收器接收到,H4接收端導(dǎo)通,導(dǎo)通則T1輸出低電平,T1=0。2.有檢測到黑線,則H4發(fā)射器發(fā)射紅外線照射在黑線上,紅外線幾乎被黑線全部被吸收,T1=VCC。在本設(shè)計(jì)中將循跡電路中的T1信號(hào)做為LM324的2管腳輸入,當(dāng)T1=0,比較端3管腳=3V時(shí),輸出端OUT1輸出1,當(dāng)T1=5V,比較端3管腳=3V時(shí),輸出端OUT1輸出0。駛時(shí),傳感器輸出低電平信號(hào)后送給LM324運(yùn)放搭建的比較器(如圖2.7經(jīng)倒向處理后的信號(hào)傳輸給 89C52RC單片機(jī)進(jìn)行分析處理,判斷小車目前處于什么狀態(tài),需要向小車發(fā)出什么樣的控制信號(hào),通過執(zhí)小車行駛速度時(shí)。圖2.7LM324比較器電路通過單片機(jī)控制進(jìn)行PWM變頻即,通過軟件改變脈沖調(diào)寬波形的占空比,實(shí)現(xiàn)對(duì)小車的速度的調(diào)制。最后經(jīng)反接制動(dòng)實(shí)現(xiàn)停車。前行與倒車控制電路的核心是橋式電路和繼電器。(因?yàn)樵撛O(shè)計(jì)方案采用了五個(gè)光電感應(yīng)器采集采用14管腳雙列直插塑料封裝,如圖2.8所示。圖2.8LM324封裝2.6顯示電路設(shè)計(jì)顯示采集的到目前小車的狀態(tài),如圖2.9所示,LED管的亮滅,可便于編寫程序時(shí)分析和測試過程中采集的信號(hào)是否正確。其中P1^3對(duì)應(yīng)于最左邊光電感應(yīng)器采集來的信號(hào)經(jīng)過LM324后的值,其中P1^7對(duì)應(yīng)于最右邊光電感應(yīng)器采集來的信號(hào)經(jīng)過LM324后的值。圖2.9LED顯示設(shè)計(jì)任務(wù)要求:設(shè)計(jì)并制作一智能公交小車系統(tǒng)。該智能小車系統(tǒng)能按設(shè)定的速度穩(wěn)定地在引導(dǎo)線上行駛。在設(shè)定的位置停止設(shè)置的時(shí)間,到達(dá)引導(dǎo)線末端自動(dòng)停止前進(jìn)。引導(dǎo)線黑色寬度2.5cm,每站停留時(shí)間5秒。為了實(shí)現(xiàn)完成論文題目的要求,本系統(tǒng)軟件部分將包含以下幾個(gè)功能模塊:一些運(yùn)行過程用到的全局變量,打開中斷。(4)信息采集:使用五個(gè)光電感應(yīng)器采集小車行駛狀態(tài)信息,以便準(zhǔn)確實(shí)時(shí)反映小車行駛的狀態(tài),作為分析運(yùn)算的參數(shù)。改和閱讀。(6)電機(jī)驅(qū)動(dòng)控制:通過信息采集模塊采集的信息,通過分析運(yùn)算產(chǎn)生控制信號(hào),通過驅(qū)動(dòng)芯片控制電機(jī),達(dá)到實(shí)時(shí)控制改變小車狀態(tài)。(7)報(bào)警裝置:當(dāng)小車到站后,小車需要鳴笛,所以通過使用蜂鳴器達(dá)到到站鳴笛的效果。綜合上述的幾個(gè)功能模塊,本系統(tǒng)的軟件部分結(jié)構(gòu)如圖3.1所示:圖3.1控制軟件結(jié)構(gòu)圖圖3.2主程序流程圖該設(shè)計(jì)的主程序流程圖如圖3.2所示,小車上電后,調(diào)用初始化子程序,進(jìn)行初始化,然后進(jìn)行判斷小車的動(dòng)態(tài)標(biāo)識(shí)位是否為1,若為0,則繼調(diào)用改變小車狀態(tài)子程序,將掃描小車狀態(tài)得到的標(biāo)志值作為改變小車狀態(tài)子程序的實(shí)循環(huán)下去。{{{mm=dscan();//調(diào)用掃描小車狀態(tài)子程序}}}在宏定義函數(shù)中,定義程序中要用到的全局變量和定義宏常量。設(shè)置位變量和單片機(jī)、器件的控制端口對(duì)應(yīng)口位對(duì)應(yīng)便于操作和便于自己理解,從而提高程序的可讀性和易于改變。sbitB2=P3^3;//控制右邊電機(jī)的IN4/*flag1作為定時(shí)五秒標(biāo)識(shí)位,flag2作為小車動(dòng)態(tài)標(biāo)識(shí)位,a作為計(jì)數(shù)產(chǎn)生多少次定時(shí)器0次數(shù)累加器,mm作為掃描循跡到的小車狀態(tài)標(biāo)志值*/3.3初始化子程序設(shè)計(jì)首先將定時(shí)五秒標(biāo)識(shí)復(fù)位,因?yàn)檫€未調(diào)用定時(shí)五秒子程序時(shí),所以該標(biāo)志位應(yīng)該為零,同樣未產(chǎn)生定時(shí)器0中斷,所以應(yīng)該將定時(shí)器0中斷次數(shù)累加器清零,設(shè)置TMOD=0x01,即小車行駛過程中路面的動(dòng)態(tài)信息,繼而控制電機(jī)改變小車的狀態(tài)。{a=0;//定時(shí)器0中斷累加器}設(shè)置定時(shí)器0為方式0圖3.3智能公交車系統(tǒng)初始化子程序流程圖3.4延時(shí)子程序該延時(shí)子程序采用軟件延時(shí),累計(jì)每執(zhí)行一條指令所耗費(fèi)的時(shí)間,達(dá)到需要的延時(shí),軟件延時(shí)由于其延時(shí)時(shí)間不精確,所以用在一些短暫的延時(shí)。該延時(shí)子程序如下所示:{}設(shè)置兩變量x,y并給x初始化YYx—1圖3.4智能公交小車系統(tǒng)軟件延時(shí)流程圖智能小車公交系統(tǒng)定時(shí)程序用于當(dāng)小車到站時(shí),蜂鳴器鳴笛10次后,停止五秒后再啟動(dòng)小車,繼續(xù)行駛。該定時(shí)子程序設(shè)計(jì)采用定時(shí)中斷方式,每次中斷間隔時(shí)間為5萬微秒(晶振頻率為12MHZ,而定時(shí)器0計(jì)數(shù)50000次就會(huì)將TF初始化子程序中總中斷和定時(shí)器0中斷都已被打開,所以一有中斷就會(huì)被響應(yīng),然后跳到中斷。{/*給定時(shí)器0寄存器送初值*/TH0=(65536-50000)/256;//分離計(jì)數(shù)初試值高位值TL0=(65536-50000)%256;///分離計(jì)數(shù)初試值低值位TR0=1;//while(!flag1);//等待時(shí)間到}/*定時(shí)器0中斷程序*/{a++;//計(jì)數(shù)產(chǎn)生多少次定時(shí)器0中斷/*充新為定時(shí)0器寄存器送初值*/TH0=(65536-50000)/256;//分離計(jì)數(shù)初試值高位值TL0=(65536-50000)%256;///分離計(jì)數(shù)初試值低值位{a=0;//將計(jì)數(shù)產(chǎn)生多少次定時(shí)器0中斷次數(shù)清為0}}初始化定時(shí)器NY圖3.5定時(shí)五秒子程序3.6掃描子程序設(shè)計(jì)。重裝定時(shí)器0寄存器初值NY將五秒定時(shí)標(biāo)識(shí)、a清零圖3.6定時(shí)器0中斷中斷服務(wù)子程序流程序圖小車的結(jié)構(gòu)圖如圖3.7所示:圖3.7小車結(jié)構(gòu)圖電機(jī)的控制和小車的控制方法表3-1、3-2表3-1電機(jī)控制方法左電機(jī)左電機(jī)右電機(jī)P3.0P3.1電機(jī)狀態(tài)P3.2P3.3電機(jī)狀態(tài)00不轉(zhuǎn)00不轉(zhuǎn)01前轉(zhuǎn)01前轉(zhuǎn)10后轉(zhuǎn)10后轉(zhuǎn)11不轉(zhuǎn)11不轉(zhuǎn)表3-2小車運(yùn)行控制方法P3.00110P3.11011P3.20101P3.31011前進(jìn)后退右轉(zhuǎn)小車的和軌道的幾種常見狀態(tài)如圖3.8所示:到終點(diǎn)站圖3.8小車和軌道常見的幾種狀態(tài)采用五個(gè)光電感應(yīng)器對(duì)軌道(引導(dǎo)黑線)進(jìn)行循跡,其中P1.3對(duì)應(yīng)右邊第二個(gè)光電感器倒向后輸入信號(hào)。器倒向后輸入信號(hào)。P1.4對(duì)應(yīng)右邊第一個(gè)光電感應(yīng)器信息;P1.5對(duì)應(yīng)中間光電感器信息;P1.6對(duì)應(yīng)左邊第一個(gè)光電感器信息;P1.7對(duì)應(yīng)左邊第二個(gè)光電回來的信號(hào)經(jīng)LM324搭建的比較器后0表示未循跡到黑線,1表示循跡到黑線;其他的0表示循跡到,讀取狀態(tài)信號(hào)查狀態(tài)真值表返回標(biāo)志值圖3.9小車循跡子程序流程圖0x00L1、L2、R1、R2都循跡到黑線CC未循跡到0x08L1、L2、R1都循跡到黑線R2、CC未循跡到0x10L1、L2、R2都循跡到黑線R1、CC未循跡到0x18L1、L2、CC都循跡到黑線R1、R2未循跡到0x20L1、L2、R1、R2、CC都循跡到黑線0x28L1、L2、R1、CC都循跡到黑線R2未循跡到0x30L1、L2、CC、R2都循跡到黑線R1未循跡到0x38L1、L2、CC都循跡到黑線R1、R2未循跡到0x40L1、R1、R2都循跡到黑線L2、CC未循跡到0x48L1、R1都循跡到黑線L2、CC、R2未循跡到0x50L1、R2都循跡到黑線L2、R1、CC未循跡到0x58L1循跡到黑線L2、R1、R2、CC都未循跡到0x60L1、CC、R1、R2都循跡到黑線L2未循跡到0x68L1、CC、R1都循跡到黑線L2、R2未循跡到0x70L1、CC、R2都循跡到黑線L2、R1未循跡到0x78L1、CC都循跡到黑線L2、R1、R2未循跡到0x80L2、R1、R2都循跡到黑線L1、CC未循跡到0x88L2、R1都循跡到黑線L1、CC、R2未循跡到0x90L2、R2都循跡到黑線L1、R1、CC未循跡到0x98L2循跡到黑線L1、CC、R1、R2都未循跡到0xa0L2、CC都循跡到黑線L1、R1、R2未循跡到0xa8L2、R1、CC都循跡到黑線L1、R2未循跡到0xb0L2、CC、R2都循跡到黑線L1、R1未循跡到0xb8L2、CC都循跡到黑線L1、R1、R2未循跡到0xc0R1、R2都循跡到黑線L1、L2、CC未循跡到0xc8R1循跡到黑線L1、L2、CC、R2都未循跡到0xd0R2循跡到黑線L1、L2、CC、R1都未循跡到0xd8L1、L2、R1、CC、R2都未循跡到黑線0xe0R1、R2、CC都循跡到黑線L1、L2未循跡到0xe8CC、R1都循跡到黑線L1、L2、R2未循跡到0xf0CC、R2都循跡到黑線L1、L2、R1未循跡到0xf8:CC循跡到黑線L1、L2、R1、R2都未循跡到循跡子程序{P1=0xff;//準(zhǔn)備從P1口接收數(shù)據(jù)hh=P1;//讀取P1口數(shù)據(jù)hh=hh&0xf8;//取P1口的高五位{}}num=5跑飛標(biāo)志。3.7報(bào)警子程序設(shè)計(jì)報(bào)警器采用蜂鳴器實(shí)現(xiàn),由于單片機(jī)幾個(gè)口輸出的電流都很小,所以不能驅(qū)動(dòng)蜂鳴器,因此需要外加一驅(qū)動(dòng)電路來驅(qū)動(dòng)蜂鳴器。該設(shè)計(jì)中蜂鳴器的驅(qū)動(dòng)使用了一個(gè)PNP管蜂,鳴器的控制口是P1.0位。如圖3.10所示。鳴笛十聲,再停留五秒后繼續(xù)行駛。圖3.10報(bào)警器電路報(bào)警子程序流程圖如圖3.11所示設(shè)置一變量i并初始化為10N讓蜂鳴器叫或不叫讓蜂鳴器叫或不叫i—1圖3.11報(bào)警子程序流程圖報(bào)警子程序{delay(5000);//延時(shí)讓蜂鳴器叫或不叫持續(xù)一段時(shí)間}}3.8電機(jī)控制子程序設(shè)計(jì)接驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng),所以本設(shè)計(jì)采用L298N芯片來驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)。驅(qū)動(dòng)芯片的P3.0;IN2使用的是P3.1;IN3使用的是P3.2;IN4使用的是P3.3.改變小車子程序流程圖如圖3.12所示:讀取當(dāng)前裝態(tài)標(biāo)志判斷當(dāng)前狀態(tài)標(biāo)志ggg左轉(zhuǎn)右轉(zhuǎn)前進(jìn)后退到站點(diǎn)到終點(diǎn)站圖3.12改變小車狀態(tài)子程序程序流程圖下面為改變小車狀態(tài)子程序:{{}{}{}{}{}{}}4.測試數(shù)據(jù)、測試結(jié)果分析測試儀器:測試儀器包括秒表、萬用表、黑色膠布、白紙、直尺、示波器、直流穩(wěn)壓電源等。測試方法:萬用表主要用來測試分立元器件的電阻、壓降、電流、直流穩(wěn)壓電源在測試期間為各待測系統(tǒng)供電。號(hào)經(jīng)過反向模塊后(可以通過調(diào)節(jié)運(yùn)放正向輸入端的電壓,即通過調(diào)節(jié)可變電阻的阻值來秒表用于產(chǎn)品測試,按照任務(wù)書的基本要求對(duì)制成的電動(dòng)車進(jìn)行產(chǎn)品測試。黑色膠布主要用于搭建一條圓弧型的小車軌道,作為小車測試時(shí)循跡使用。白紙便于將小車軌跡鋪在上面,另外在光電感應(yīng)器發(fā)射光,當(dāng)光線射到白色紙上時(shí)會(huì)達(dá)到很好的反射效果。器之間的距離,以便設(shè)置黑線的寬度。測試數(shù)據(jù)及測試結(jié)果分析:駛,所以需要測試是否精確停五秒。小車行駛是否偏離軌道偏離多少,若向左邊,則說明在程序中小車向右轉(zhuǎn)速度不夠,需要修改程序,來達(dá)到準(zhǔn)確循跡效果。的電感應(yīng)器并未全部循跡到,需要修改程序循跡的準(zhǔn)確和平緩程度;若停站長度超過時(shí),則需要修改程序在停止時(shí)設(shè)置減速功能,并測試需要減速多長時(shí)間方能達(dá)到準(zhǔn)確停站。結(jié)論歷時(shí)四個(gè)多月的設(shè)計(jì)過程中,我首先重新溫習(xí)了單片機(jī)得教材和C語言教材,在仔細(xì)的閱讀和分析了本設(shè)計(jì)的要求和要實(shí)現(xiàn)的功能后,與合作的同學(xué)商討本次設(shè)計(jì)的思路和方案,在確定了需要用什么器件后我們?nèi)コ勤驈R購買了器件,然后根據(jù)購買的器件到網(wǎng)上下載相關(guān)的資料,用游標(biāo)卡此測量了器件的大小后,便開始電路圖的設(shè)計(jì),在輔助合作者完成電路圖設(shè)計(jì)后,然后在實(shí)驗(yàn)室完成了電路版的制作和焊接元器件。在完成了焊接后,用在上電情況下檢測元器件是否工作,是否存在虛焊,元器件的參數(shù)是否正確,在確定一切都正確后,我開始了小車程序的設(shè)計(jì),在完成了程序設(shè)計(jì)后,及需要對(duì)小車進(jìn)行測試,在測試過程小車的循跡并未向我設(shè)計(jì)的行駛,小車的總是跑偏;小車在轉(zhuǎn)彎時(shí),并未實(shí)現(xiàn)平滑行駛。在調(diào)試小車和修改程序的過程中使我深深感受到理論與實(shí)際間的差距。通過這次畢業(yè)設(shè)計(jì),提高了我的動(dòng)手能力,并且在查閱芯片器件質(zhì)料分析時(shí)序后,我熟悉的掌握了很多器件功能和控制方法。參考文獻(xiàn)[1]何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì).北京:北京航天航空大學(xué),2005:46~50[2]廣弟.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué),2001:56~64[3]

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論