目錄
摘 要........................................... I ABSTRACT........................................ II 第1章緒論....................................... 1 1.1研究意義和發(fā)展趨勢............................................ 1 1.2研究內(nèi)容...................................................... 1 第2章智能車系統(tǒng)結(jié)構(gòu)介紹............................ 3 2.1整體設(shè)計概述.................................................. 3 2.2系統(tǒng)硬件模塊方案分析.......................................... 3 2.2.2電機驅(qū)動模塊方案分析...................................... 4 2.2.3測速方法分析.............................................. 4 第3章硬件設(shè)計與仿真............................... 5 3.1硬件設(shè)計總體框圖.............................................. 5 3.2電源電路設(shè)計.................................................. 5 3.3主控電路設(shè)計.................................................. 6 3.3.1 AT89C51單片機介紹........................................ 6 3.3.2最小系統(tǒng)介紹.............................................. 8 3.3.3主控電路.................................................. 9 3.4電機驅(qū)動模塊.................................................. 9 3.4.1驅(qū)動電路設(shè)計.............................................. 9 3.4.2 H橋電機驅(qū)動電路......................................... 10 3.5路徑識別模塊設(shè)計............................................. 11 3.6 電機轉(zhuǎn)向電路設(shè)計............................................ 11 3.7避障模塊設(shè)計................................................. 12 3.8驅(qū)光模塊設(shè)計................................................. 13 3.9報警模塊設(shè)計................................................. 14 3.10顯示電路設(shè)計................................................ 14 第4章系統(tǒng)軟件設(shè)計和編程........................... 16 4.1主程序框圖設(shè)計............................................... 16 4.2循跡子程序設(shè)計............................................... 17 4.3避障子程序設(shè)計............................................... 22 4.4驅(qū)光子程序設(shè)計............................................... 25 第5章系統(tǒng)軟件仿真與分析........................... 27 5.1仿真軟件介紹................................................. 27 5.1.1 PROTUSE軟件介紹......................................... 27 5.1.2 MULTISIM軟件的介紹...................................... 27 5.2仿真結(jié)果及分析............................................... 28 5.2.1基于PROTUES平臺仿真結(jié)果分析............................. 28 5.2.2基于MULTISIM仿真平臺結(jié)果分析............................ 29 第6章總結(jié)及展望.................................. 31 致謝............................................ 32 參考文獻........................................ 33 附錄一基于PROTUES仿真程序........................ 34
第1章 緒論1.1 研究意義和發(fā)展趨勢近年來,隨著科學(xué)技術(shù)不斷進步,汽車逐漸成為人們生活出行方式的主要交通工具,越來越受到消費者的青睞,導(dǎo)致道路上的車輛越來越多,交通事故發(fā)生的頻率在生活中越來越多,給人們的生活帶來了很大的影響,給社會造成了無法彌補的經(jīng)濟損失。政府有關(guān)部門對事故的分析普遍認(rèn)為是由以下幾個因素造成:駕駛?cè)藢χ苓叚h(huán)境判斷不足,駕駛?cè)吮旧硭刭|(zhì)和管理法則等。在汽車的智能化方向的探索與研究由此受到人們的廣泛關(guān)注與重視。智能車系統(tǒng)是一種集路徑識別、決策規(guī)劃、自動駕駛等功能于一體的綜合智能系統(tǒng)。它更加注重于駕駛?cè)藛T的舒適性和安全性以及汽車本身的智能性。 智能車就是一種輪式移動機器人,它能夠獲取周邊環(huán)境的信息、決策規(guī)劃軌跡來選擇最佳的行駛模式。智能化汽車綜合運用了計算機、電氣、機械、汽車電子、自動控制、傳感器技術(shù)等一系列技術(shù)。計算機技術(shù)、信息技術(shù)和控制技術(shù)的進步帶動了智能車在日常生活和工業(yè)生產(chǎn)中的使用。在國內(nèi),很多高校和企業(yè)建立起校企合作產(chǎn)學(xué)研相結(jié)合的模式,這都充分突出車輛的智能化研究有著重大的意義和廣闊的前景。隨著控制技術(shù)和計算機技術(shù)等高新技術(shù)的不斷提高,汽車在智能化方面的研究將會得到很大程度的突破和進展。在未來汽車的研究方面將會越來越智能化,汽車對環(huán)境的適應(yīng)能力將會越來越強。 1.2 研究內(nèi)容本課題研究的目標(biāo)是使小車具有按照路面的黑色軌道循跡行駛功能,尋找前方點光源并行駛到位的趨光功能及聲光報警功能,這就需要小車對道路信息的獲取、識別,以及對信息的處理和反饋等具有很強的能力。通過查找相關(guān)資料總結(jié)前人的經(jīng)驗教訓(xùn),研究并設(shè)計了智能車的硬件電路以及控制方法,使小車能夠高速穩(wěn)定的運行。主要有以下幾個方面。 首先,通過介紹智能車的系統(tǒng)結(jié)構(gòu),設(shè)計并選擇一個較好的方案使智能車系統(tǒng)的各個模塊能夠維持小車高速穩(wěn)定的狀態(tài)。 然后,在硬件控制電路方面進行了模塊化設(shè)計,主要有電源電路設(shè)計、主控電路設(shè)計、電機驅(qū)動模塊、電機轉(zhuǎn)向電路設(shè)計、路徑識別模塊、避障模塊、驅(qū)光模塊、報警模塊和顯示電路模塊等。其中,電源能夠提供系統(tǒng)各個模塊所需的電壓和電流,保證了各個模塊正常工作。選擇符合實際需求的穩(wěn)定可靠的穩(wěn)壓芯片才能保證智能車具有較好的速度,選擇驅(qū)動效果較好的驅(qū)動電路才能保證小車高速穩(wěn)定的運行。 最后,通過編程和使用仿真軟件對硬件電路和軟件電路進行仿真和調(diào)試。
第2章 智能車系統(tǒng)結(jié)構(gòu)介紹2.1 整體設(shè)計概述本課題所設(shè)計的小車要求具有自動循跡、驅(qū)光、避障等功能,能在預(yù)訂的軌跡上快速穩(wěn)定的行駛。小車的行駛軌跡是以白色地面為背景以中間30mm寬度連續(xù)黑色作為引導(dǎo)線,遇到障礙物能夠避開障礙物,同時遇到點光源能夠進行驅(qū)光行駛,針對這樣的路況小車能夠自動決策運行狀態(tài)的自動控制系統(tǒng)。其中,通過激光傳感器檢測到的道路信息傳送到單片機內(nèi),單片機對接收到的數(shù)據(jù)進行分析和處理,分別輸出舵機的控制量和電機的控制量,來控制舵動電機的轉(zhuǎn)角和舵機的轉(zhuǎn)向轉(zhuǎn)角。另外,通過速度檢測部分,將電機轉(zhuǎn)速傳遞到單片機內(nèi),對智能車速度實現(xiàn)閉環(huán)控制,以提高單片機對電機的控制。因此,設(shè)計的智能小車不僅要按照要求正常行駛,還必須能夠穩(wěn)定、快速的運行。 智能車設(shè)計的關(guān)鍵器件是自動控制器。在保證智能車正常行駛的前提下,應(yīng)優(yōu)先考慮電路設(shè)計簡單明了,以減輕系統(tǒng)不必要的負(fù)載,也要應(yīng)堅持充分創(chuàng)新的原則,以提高智能車的靈活性,同時,以清晰明了但功能完美為出發(fā)點,同時充分考慮小車的穩(wěn)定性,實現(xiàn)智能車快速穩(wěn)定行駛。 作為能夠自動獲取周邊道路信息、識別路徑穩(wěn)定運行的智能小車,控制器和車模可以看作一個自動控制系統(tǒng)。一般情況下由傳感器、信息處理、控制算法和執(zhí)行機構(gòu)四個部分構(gòu)成。其中,單片機作為核心器件?刂葡到y(tǒng)的硬件主要由傳感器、執(zhí)行器和驅(qū)動電路組成;控制系統(tǒng)的軟件主要由單片機完成信息處理和控制算法設(shè)計。因此,自動控制器設(shè)計包括硬件電路設(shè)計和軟件控制算法兩部分。 2.2系統(tǒng)硬件模塊方案分析
2.2.1 顯示方案分析 方案一:液晶顯示屏(LCD)具有重量輕,功耗低,無輻射危險,平板顯示器和視覺區(qū)域影像穩(wěn)定等優(yōu)點,屏幕效果好、分辨率高、抗干擾能力強。但是液晶顯示是以點陣的形式來顯示各種字符,內(nèi)置芯片要有大量的字符庫,需要大量程序控制而本顯示功能只需要顯示時間等簡單的信息,不需要占用控制芯片的大量資源。此外液晶顯示芯片容易受到靜電干擾造成芯片損壞,使用液晶顯示屏成本要高。 方案二:使用數(shù)碼管顯示。數(shù)碼管具有低能耗,低電壓,使用壽命長,抗老化、防曬、防潮,對環(huán)境要求低,維護方便。數(shù)碼管是采用BCD編碼顯示數(shù)字,其優(yōu)點是程序占用資源少,編譯程序工作量小。 綜上所述,選用方案二。 2.2.2 電機驅(qū)動模塊方案分析方案一:將電力晶體管作為功率放大器的輸出控制直流電機使用。該方案所需成本不高,驅(qū)動電路結(jié)構(gòu)簡單,但驅(qū)動能力較弱,低速運行時連接晶體管的電阻會產(chǎn)生一定的功率損失,甚至發(fā)熱發(fā)燙,很難保證小車經(jīng)過很長時間依舊維持高速穩(wěn)定的運行的狀態(tài)。 方案二:采用由雙極性管組成的H橋電路,用單片機輸出控制PWM脈沖來控制晶體管的開關(guān)狀態(tài)從而調(diào)整電機轉(zhuǎn)速。H橋電路在晶體管工作處于飽和或截止?fàn)顟B(tài)下工作狀態(tài)較好;它能夠?qū)崿F(xiàn)簡單的轉(zhuǎn)速和方向的控制;晶體管開關(guān)速度很快,有很好的穩(wěn)定性,并且此調(diào)速方案應(yīng)用于很多領(lǐng)域。 根據(jù)兩個方案的優(yōu)缺點,選擇方案二。 2.2.3 測速方法分析方案一:利用霍爾開關(guān)器件A44E檢測輪子上的磁鐵輸出轉(zhuǎn)動圈數(shù)信號輸出給單片機,達到測量回送速度的作用;魻栐鈬娐泛唵巍⒄加皿w積小,動態(tài)特性好,價格相對便宜等特點,電源要求高,安裝方便。霍爾開關(guān)的原理是在一定磁場強度范圍內(nèi)起到控制作用,因此其抗干擾能力非常的強。將磁鐵安裝在車輪上,將霍爾器件安裝在固定軸上,有霍爾元件感應(yīng)磁鐵來產(chǎn)生脈沖(當(dāng)霍爾器件靠近磁場時輸出高電平,其它情況下是低電平),只需將四個磁鐵均勻的安放在一個輪子上四個磁鐵,通過測得一秒所得的脈沖數(shù),計算出一秒車輪轉(zhuǎn)動的圈數(shù),再測出車輪的周長就能夠計算出小車運行時的所對應(yīng)速度,再結(jié)合脈沖時間計算可得到當(dāng)前路程。 方案二:采用紅外傳感器進行測速。對射式紅外傳感器以及反射式紅外傳感器都容易受到環(huán)境因素的影響,穩(wěn)定性相對較低,且在價格方面相對較高。 綜合方案一和方案二,決定采用方案一。
第3章 硬件設(shè)計與仿真3.1 硬件設(shè)計總體框圖file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image001.gif
圖3.1系統(tǒng)設(shè)計框圖 原理框圖介紹:系統(tǒng)把89C51單片機作為主控制器,將傳感器模塊獲取的值進行處理,然后控制驅(qū)動電機,實現(xiàn)左右轉(zhuǎn)和前進后退的功能。并在小車行駛過程中所測得的時間和路程顯示在數(shù)碼管上,這樣便于我們觀察小車的運行狀態(tài)。當(dāng)運行過程中檢測到點光源時,單片機控制報警模塊進行報警,并驅(qū)光行駛。當(dāng)小車在行駛過程中檢測到障礙物時自動發(fā)出報警。 電源部分的作用是給單片機系統(tǒng)各個模塊進行供電,本設(shè)計系統(tǒng)將電機驅(qū)動部分和單片機等數(shù)字器件分開,獨立進行供電。分開獨立供電有利于提高小車運行的穩(wěn)定。 3.2 電源電路設(shè)計file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image003.gif 圖3.2電源電路 電源電路是系統(tǒng)的核心部分,它給系統(tǒng)各個模塊供電使各個模塊能夠工作并維持正常穩(wěn)定的狀態(tài)。在本設(shè)計中,系統(tǒng)需要的供電模塊有:傳感器模塊、單片機模塊、顯示模塊、報警模塊、電機驅(qū)動模塊等。本設(shè)計除了要考慮電壓范圍和電流大小外,還需要考慮外圍電路的簡單性和電源轉(zhuǎn)化損耗及干擾、噪聲問題。選用適當(dāng)?shù)姆桨高x擇電源能夠維持系統(tǒng)穩(wěn)定的運行。 系統(tǒng)的總電源選擇7.2v,2A/h可充電的鎳鎘電池組,根據(jù)電路中各個模塊對電路中電壓的要求不同,因此電源模塊需要使用多個穩(wěn)壓電路,將充電電池電壓轉(zhuǎn)換成各個模塊所需電壓。 各模塊所需電源如圖所示
|
| file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image004.gif |
圖3.3系統(tǒng)所需電源 電源電路我們采用LM317AH作為穩(wěn)壓芯片進行穩(wěn)壓。LM317AH作為集成三端穩(wěn)壓塊,具有改變輸出電壓的能力,使用非常方便而且應(yīng)用范圍非常廣。穩(wěn)壓電源的輸出電壓可根據(jù)公式Vo=1.25(1+R2/R1)進行計算。7.2V電源由兩節(jié)鋰離子電池串聯(lián)得到,7.2V電壓經(jīng)過穩(wěn)壓芯片LM317AH轉(zhuǎn)換得到5V電壓,給其它模塊供電,7.2V提供給電機。分開供電的目的是最大程度減少電機運行過程中對其它模塊和器件產(chǎn)生干擾。 3.3 主控電路設(shè)計3.3.1 AT89C51單片機介紹89C51單片機是把所有具有控制應(yīng)用所必須的模塊都集成在一個大小有限的集成電路芯片上。如果按功能劃分,它由如下功能部件組成,即微處理器、數(shù)據(jù)存儲器、程序存儲器、并行I\O口、串行口、定時器/計數(shù)器、中斷系統(tǒng)及特殊功能存儲器。它們是由單一總線連接而成,其基本結(jié)構(gòu)是CPU加上外圍電路芯片的傳統(tǒng)結(jié)構(gòu)模式,但對各種功能部件的控制是采用特殊功能寄存器的集中控制方式。 1微處理器 該單片機中包含一個與通用的微處理器基本相同的八位的微處理器,同時包含了控制器和運算器兩大部分,提高了單片機控制的處理功能的能力,它可以處理位變量和處理數(shù)據(jù)。 2數(shù)據(jù)存儲器 其內(nèi)部為128個字節(jié),片外最多擴至64k字節(jié),在程序運行的時候運算中間結(jié)果、工作變量、緩沖、標(biāo)志位和數(shù)據(jù)暫存等,所以稱為數(shù)據(jù)存儲器。 3程序存儲器 由于受集成度限制,片內(nèi)只讀存儲器容量不夠時可擴展至片外只讀存儲器,片外最多可外擴至64k字節(jié)。 4中斷系統(tǒng) 具有5個中斷源。2級中斷優(yōu)先權(quán)。 5定時器/計數(shù)器 片內(nèi)有2個16位的定時器/計數(shù)器,具有四種工作方式。 6串行口 1個全雙工的串行口,具有四種工作方式。可用來進行串行通訊,擴展并行I/O口,甚至與多個單片機相連構(gòu)成多級系統(tǒng),從而使單片機的功能更強且應(yīng)用更廣。 7P0口、P1口、P2口、P3口 為4個并行8位I/O口 8特殊功能寄存器 共有21個,用于對片內(nèi)的各功能部件進行管理、控制、監(jiān)視。實際上是一些控制寄存器和狀態(tài)寄存器,是一個具有特殊功能的RAM區(qū)。 89C51是一種低功耗、低電壓、高性能的8位單片機。它采用了CMOS和高密度非易失性的存儲器技術(shù),而且其輸出引腳和指令系統(tǒng)都與MCS-51兼容;片內(nèi)的FlashROM允許在系統(tǒng)內(nèi)改編程序或用常規(guī)的非易失性存儲器編程。因此89C51是一種功能強、靈活性高且價格合理的單片機,可方便地應(yīng)用在各種控制領(lǐng)域。 3.3.2 最小系統(tǒng)介紹file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image006.gif 圖3.4單片機控制電路 1.電源 89C51單片機的電壓為4.0-5.5V。我們選擇LM317AH穩(wěn)壓芯片對系統(tǒng)進行供電,其中C為瓷片電容,主要起退耦作用,保證單片機穩(wěn)定工作,維持各模塊的正常工作使小車能夠高速穩(wěn)定的運動。 2.晶振 晶振和單片機內(nèi)部的電路相結(jié)合,產(chǎn)生單片機需要的時鐘頻率,單片機的所有指令都是通過在這個基礎(chǔ)上執(zhí)行的。晶振提供時鐘頻率,單片機運行速度隨著時鐘頻率的變化而變化,時鐘頻率越高單片機運行速度就越快。本系統(tǒng)主要采用頻率為12M的晶振,再配合使用2個30Pf的電容構(gòu)成晶體振蕩電路。 3.復(fù)位 復(fù)位電路能夠確保系統(tǒng)中各個電路模塊的正常工作穩(wěn)定運行,因此是電路部分不可缺少的部分。復(fù)位電路首先是要進行上電復(fù)位,復(fù)位電路中的1uF電容在上電瞬間給RST端一個瞬時的高電平脈沖,當(dāng)這個電容上的電量充滿時高電平的信號將變低,即RST端的高電平保持的時間是由外部這個充電電容決定的。 3.3.3 主控電路本系統(tǒng)采用AT89C51作為控制核心,P2口主要接電機驅(qū)動和報警電路,P0口接數(shù)碼管的段選,P1口低四位接四位數(shù)碼管的位選,高四位接傳感器模塊。18、19接單片機的晶振,9腳接復(fù)位。電容C起退耦作用,防止電源波動對單片機的影響。 3.4 電機驅(qū)動模塊file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image008.gif 圖3.5電機驅(qū)動電路圖 驅(qū)動電路主要是控制電機的轉(zhuǎn)向和停車。本設(shè)計采用H橋驅(qū)動電路,L298N內(nèi)部集成了H橋式驅(qū)動電路,單片機給予L298N電路PWM信號控制小車的速度和啟停,單片機通過I/O口向L298N的17、18腳發(fā)送驅(qū)動控制信號實現(xiàn)電機的速度和正反轉(zhuǎn)及啟停。 3.4.1 驅(qū)動電路設(shè)計 電機驅(qū)動采用L298作為主要的驅(qū)動芯片,比較常見的15腳Multiwatt封裝,內(nèi)部有4通道邏輯驅(qū)動電路。 利用L298及其外部輔助電路和電機構(gòu)成驅(qū)動電路。LM298的六個輸入控制端IN1、IN2、IN3、IN4以及ENA和ENB接單片機I/O口,L298的輸出端OUT1、OUT2和OUT3、OUT4分別與MOTO1,MOTO2兩個電機相接。D2-D9主要是保護電路,保護LM298防止被燒壞,由于當(dāng)系統(tǒng)斷電時,LM298停止工作,但是電機由于慣性仍然繼續(xù)運動,此時電機相當(dāng)與一個發(fā)電機,向外部電源發(fā)電。這個電壓如果直接加到LM298的輸出端就可能引起LM298燒壞。所以,必須在這個上面加上8個二極管,把電機斷電時產(chǎn)生的電能吸收掉,保護LM298不被燒壞。 3.4.2 H橋電機驅(qū)動電路如圖3.6所示是一個常用的電機驅(qū)動控制電路。因為它的形狀和字母H非常相似,因此叫做“H橋驅(qū)動電路”。4個三極管組成這個電機驅(qū)動電路。電機驅(qū)動電路H橋式通常包括4個三極管和一個電機。導(dǎo)通時分別為對角線上的一對三極管,相應(yīng)電機會正反轉(zhuǎn)。判斷不同三極管對的導(dǎo)通與否,然后判斷電流的流向,根據(jù)電流的流向控制電機的轉(zhuǎn)向。 file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image010.jpg 圖3.6 H橋結(jié)構(gòu)圖 對角線上的一對三極管導(dǎo)通則電機轉(zhuǎn)動。例如,如圖3.7所示,當(dāng)Q1管和Q4管同時導(dǎo)通時,電流就從三極管Q1從左至右如黑線所示順時針流過電機,圖中箭頭所示為電流流過的方向,這時電流將驅(qū)動電機正轉(zhuǎn)。 file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image012.jpg 圖3.7 H橋控制電機正轉(zhuǎn) 圖3.8所示為三極管Q2和Q3導(dǎo)通時的電流流向,電流將從右至左逆時針方向流過電機。當(dāng)三極管Q2和Q3同時導(dǎo)通時,電流將從右至左流過電機,驅(qū)動電機將反轉(zhuǎn)。 file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image014.jpg 圖3.8 H橋控制電機反轉(zhuǎn) 3.5 路徑識別模塊設(shè)計光電傳感器通過發(fā)射管發(fā)射光線再通過接收管接受反射回來的光線的強度的判斷來確定周圍的道路情況。本設(shè)計中,光線在白色地面上反射回來的輕度較強,而在黑色地面上反射的光線較弱,經(jīng)過接收管兩端輸出電阻不同區(qū)分開黑白路面。 將激光傳感器的發(fā)射管和調(diào)制管連接,通過載波來改變發(fā)射管的發(fā)光頻率。接收管通過接收的光線通過放大、比較將信號傳遞給單片機,從而控制單片機輸出高低電平判斷線路的軌跡。 3.6 電機轉(zhuǎn)向電路設(shè)計舵機的結(jié)構(gòu)包括減速齒輪組、位置反饋電位計和直流電機等控制電路。減速齒輪組由電機驅(qū)動,其輸出軸帶動一個線性的比例電位器作位置檢測。該電位器把轉(zhuǎn)角線性地轉(zhuǎn)換為電壓并反饋給控制線路板,然后控制線路板將其與輸入的控制脈沖信號比較,產(chǎn)生糾正脈沖,并驅(qū)動電機正、反轉(zhuǎn),使齒輪組的輸出位置與期望值相符,從而達到使伺服電機精確定位的目的。 舵機工作原理框圖如圖3.9所示: file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image015.gif
圖3.9舵機的控制工作原理框圖 舵機的輸入線共三條:白線是控制信號線。紅線是電源線,黑線的地線,這兩根線給舵機提供基本的能源保證,主要是電機的轉(zhuǎn)動消耗。 三線連接法: 黑線:地線 紅線:電源線(7.2V) 白線:信號線(PWM信號)
|
|
|
|
| file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image016.gif |
|
| |
|
舵機插頭 小車在實際的運行過程中,當(dāng)提供給舵機7.2V電源會發(fā)現(xiàn)小車轉(zhuǎn)向非常靈敏,如果電壓電源低于7.2V會明顯發(fā)現(xiàn)舵機反應(yīng)遲鈍。正常情況下電機反應(yīng)較靈敏,能夠順利完成小車運行所需的靈敏度要求。并且舵機內(nèi)部有過載保護作用,不會造成過電壓而損壞電機。 3.7 避障模塊設(shè)計采用一只紅外對管置于小車右側(cè),當(dāng)檢測到障礙物時,控制芯片輸出報警信號并調(diào)用控制小車避障程序,從而達到避障的目的。通過測試發(fā)現(xiàn)小車能夠很好的避開障礙,且充分的利用資源而不浪費。 這里我們選用TCRT5000型光電對管,該紅外光電傳感器采用高發(fā)射功率紅外光電二極管和高靈敏度光電晶體管組成,輸出信號經(jīng)施密特電路整形,穩(wěn)定可靠。原理圖如下: file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image018.jpg 圖3.10避障原理圖
電路工作時,傳感器的紅外發(fā)射二極管不斷發(fā)射紅外線,當(dāng)接收端沒有接收到反射回來的紅外線或接收到的紅外線強度不大時,光敏三極管一直保持關(guān)斷狀態(tài),此時模塊的輸出端為低電平,指示二極管一直處于熄滅狀態(tài);被檢測物體出現(xiàn)在檢測范圍內(nèi)時,接收紅到的外線強度足夠大,光敏三極管飽和,此時模塊的輸出端為高電平,指示二極管被點亮。 3.8 驅(qū)光模塊設(shè)計感光電路采用光敏電阻和ADC0832組合電路。通過A/D轉(zhuǎn)換后的電壓變換量反饋到單片機里執(zhí)行尋光處理程序。 感光模塊主要由光敏電阻和ADC0832組成。正常情況下ADC0832與單片機的接口應(yīng)為4條數(shù)據(jù)線,分別為CS,CLK,D0,DI.但由于D0和DI端在通信時并未同時有效并與單片機的接口是雙向的,因此在電路設(shè)計過程中可以將D0和DI并聯(lián)在一根數(shù)據(jù)線上使用。當(dāng)ADC0832未工作時,CS端應(yīng)為高電平,此時芯片禁用,CLK和D0/DI的電平不需要確定。當(dāng)要進行A/D轉(zhuǎn)換時,必須將CS端置于低電平并保持到轉(zhuǎn)換結(jié)束。此時芯片開始轉(zhuǎn)換工作,同時由處理器向芯片時鐘輸入端CLK輸入時鐘脈沖,D0/DI端則使用DI端輸入通道功能選擇的數(shù)據(jù)信號。在第1個時鐘脈沖的下沉之前,DI端必須置于高電平,表示起始信號。在第2,3個脈沖下沉之前DI端應(yīng)輸入2位數(shù)據(jù)用于選擇通道功能,此時2位數(shù)據(jù)為“1”“0”時,只對CHO進行單通道轉(zhuǎn)換。當(dāng)2位數(shù)據(jù)為“1”“1”時,只對CH1進行單通道轉(zhuǎn)換。當(dāng)2位數(shù)據(jù)為“0”“0”時,將CH0作為正輸入端,CH1為負(fù)輸入端進行輸入。當(dāng)2位數(shù)據(jù)為“0”“1”時,將CH1作為正輸入端,CH0作為負(fù)輸入端進行輸入。到第3個脈沖的下沉之后,DI端的輸入電平就失去輸入作用,此后D0/DI端則開始利用數(shù)據(jù)輸出D0進行轉(zhuǎn)換數(shù)據(jù)的讀取。從第4個脈沖下沉開始由D0端輸出轉(zhuǎn)換數(shù)據(jù)最高位DATA7,隨后每一個脈沖下沉D0端輸出下一位數(shù)據(jù)。直到第11個脈沖時發(fā)出最低位數(shù)據(jù)DATA0,一個字節(jié)的數(shù)據(jù)輸出完成。也正是從此位開始輸出下一個相反字節(jié)的數(shù)據(jù),即從第11個字節(jié)的下沉輸出DATA0。隨后輸出8位數(shù)據(jù),到第19個脈沖是數(shù)據(jù)輸出完成,也標(biāo)志一次A/D轉(zhuǎn)換的完成。最后將CS置高電平禁用芯片,直接將轉(zhuǎn)換后的數(shù)據(jù)進行處理就可以了。 3.9 報警模塊設(shè)計在單片機的I/O口里會輸出高低電平,在p21和p23分別接上LED指示燈而p25接上了蜂鳴器外接個9012的三極管起到開關(guān)的作用,當(dāng)三極管達到飽和狀態(tài)下就驅(qū)動了蜂鳴器工作了。 file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image020.jpg 圖3.11報警電路原理圖 3.10 顯示電路設(shè)計單片機的顯示通常需要多位顯示。大多數(shù)時候選擇多位數(shù)碼動態(tài)顯示來完成。 在數(shù)碼管顯示電路中,數(shù)碼管8段每一段都會占用單片機的一個I/O口,本次設(shè)計采用4位數(shù)碼管,則需要32個I/O接口,而單片機的I/O口只有32個,必然導(dǎo)致接口不夠用,動態(tài)顯示則剛好解決這個問題。 所有數(shù)碼管的段選全部連接在一起,如何不同內(nèi)容的同時顯示呢?動態(tài)顯示的原理是利用多位數(shù)碼管交替來顯示,利用人的視覺短暫停留效果使人的視覺上看到好像多個數(shù)碼管同時在顯示。 在編程時,要用單片機控制和段選,所謂段選是指選中其中一個數(shù)碼管,然后通過單片機輸出段碼,要顯示的數(shù)字就能在相應(yīng)的數(shù)碼管上顯示出來,延時一段時間后,再選中另一個數(shù)碼管,再顯示出對應(yīng)的段碼,高速交替。 在動態(tài)顯示程序中,各個位的延時時間的設(shè)置也是非常關(guān)鍵的,如果延時時間太長就會出現(xiàn)閃爍的現(xiàn)象;如果時間太短就會出現(xiàn)顯發(fā)暗且有重影。 靜態(tài)驅(qū)動就是單獨為每一個LED提供電流。這樣每個LED都能夠正常發(fā)光,亮度相對較高。 動態(tài)掃描驅(qū)動就是把電流供給所有的LED燈,燈的顯示亮度在相當(dāng)短的時間內(nèi)會顯得暗一點,由于供給給每個LED的電流并不是相同的,而是根據(jù)各LED間掃描頻率的電流不斷交替變化,掃描的頻率依據(jù)程序具體的設(shè)定,實際上每位數(shù)碼管是根據(jù)掃描頻率一次給每一個LED單獨供電。 第4章 系統(tǒng)軟件設(shè)計和編程4.1 主程序框圖設(shè)計
|
| file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image021.gif |
圖4.1主程序設(shè)計流程圖 程序設(shè)計主要包括電機的程序控制設(shè)計、舵機的程序控制設(shè)計以及道路信息檢測程序設(shè)計等幾個部分。所有的控制程序編程思路,除了模塊的初始化之外,都是以激光傳感器采集到的道路信息作為控制策略制定的基礎(chǔ),以編碼器測得的實際行駛速度作為智能車的速度反饋信息,利用PID控制和模糊控制等思想,軟件和硬件有機結(jié)合,共同實現(xiàn)智能車自動尋跡形式的目的。主程序的控制流程圖如上面圖4.1所示。
4.2 循跡程序設(shè)計file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image022.gif
圖4.2循跡流程框圖 小車在行駛過程中通過激光傳感器采集小車周圍的道路信息反饋給單片機,單片機作出相應(yīng)的反應(yīng)。當(dāng)檢測到小車偏離路線時,單片機通過控制電機的轉(zhuǎn)速使小車回到正確的路線,然后單片機再控制電機加速使小車高速行駛,當(dāng)檢測到終點時,單片機控制小車減速直至小車在終點處停止運動。
4.3 避障程序設(shè)計file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image023.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image024.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image025.gif file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image026.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image027.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image028.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image029.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image030.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image031.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image032.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image033.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image034.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image035.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image036.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image037.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image038.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image037.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image039.giffile:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image040.gif
圖4.3避障程序流程圖 在小車行駛過程中,當(dāng)激光傳感器檢測到小車前方有障礙物時,通過傳遞信息給單片機,使單片機執(zhí)行相應(yīng)的動作。通過控制電機轉(zhuǎn)速使小車減速,通過舵機實現(xiàn)小車轉(zhuǎn)向,當(dāng)小車避過障礙物后再通過舵機使小車回到原來的軌跡上行駛。當(dāng)激光傳感器未檢測到障礙物時,小車正常行駛,通過控制電機轉(zhuǎn)速使小車加速,直至小車高速穩(wěn)定運行。
第5章 系統(tǒng)硬件和軟件的仿真5.1 仿真軟件介紹5.1.1 PROTUSE軟件介紹本系統(tǒng)使用protuse仿真軟件進行仿真,并結(jié)合Keil C進行聯(lián)合調(diào)試。它是一款著名的EDA仿真軟件,從畫原理圖、調(diào)試代碼到單片機和外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計,實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是一款集電路仿真軟件、PCB設(shè)計軟件和虛擬模型仿真軟件于一體設(shè)計軟件,其處理器模型支持HC11、PIC10/12/16/18/24/30/DsPIC33、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其它系列處理器模型。它同時還支持IAR、Keil和MPLAB等多種編譯器進行編譯。 元器件種類多:器件庫中含有2700多種元器件,創(chuàng)建新元件也非常的容易;智能的器件搜索:對于比較模糊的元器件還可以通過模糊搜索迅速的找到所需的元器件的位置;它的連線功能也非常的智能化,連線時方便快捷,大大減短了繪圖所需要時間;支持總線結(jié)構(gòu):使用器件和總線布局使電路變得清晰明了。 在該軟件中繪制完成電路圖后,再調(diào)入已經(jīng)編譯好的目標(biāo)代碼文件就能夠清晰的觀察到模擬的實物運行的整個狀態(tài)過程。它不僅可以將單片機的功能形象化,同時還可以將實例運行的過程形象化。前者可以在一定程度上得到實物演示實驗的效果,后者則是實物演示實驗難以達到的效果。它的元器件、連接線路等卻和傳統(tǒng)的單片機實驗硬度高度對應(yīng)。這在相當(dāng)程度上替代了傳統(tǒng)的單片機教學(xué)實驗的功能。而且數(shù)據(jù)庫提供了大量的元器件,這是實驗室無法與之相比的。在修改電路設(shè)計上更加的方便,它具有設(shè)計靈活,結(jié)果、過程統(tǒng)一的特點。且使設(shè)計時間變短,降低工程制造的風(fēng)險和成本。 5.1.2 MULTISIM軟件的介紹Multisim軟件用于電路設(shè)計和仿真,是一款EDA軟件。它擁有一個完整的集成化設(shè)計環(huán)境。Multisim計算機仿真與虛擬儀器技術(shù)不僅可以節(jié)省學(xué)校購買儀器的成本還能夠讓學(xué)生隨時進行相關(guān)實驗。學(xué)生能夠很方便的使用該軟件進行繪圖和進行仿真,通過理論與實踐相結(jié)合提高獨立思考的能力,增強自己的專業(yè)知識。Multisin軟件的特點: (1)清晰的圖形界面:整個操作界面就像一個電子實驗工作平臺,繪制出電路所需要的元器件和仿真所需要的儀器都能夠直接拖放到操作界面,點擊鼠標(biāo)就能使用導(dǎo)線連接功能將它們連接起來,軟件儀器的控制面板和操作方式都與實物相似,測量實物、波形和特性曲線都能夠在儀器的控制面板上顯示出來,和在實驗室使用真實儀器一樣。 (2)元器件種類繁多:Multisim在EWB的元器件庫原有基礎(chǔ)上又增加了很多元器件,包括基本元件、半導(dǎo)體器件、運算放大器及其它各種部件,用戶還能夠使用元件編輯庫的功能編輯自己所需要的元件模型,還可以通過LiT公司網(wǎng)站或其代理商獲得元件模型的擴充和更新服務(wù)。 (3)接近完美的分析方法: EWB不僅提供了直流工作點分析、交流分析、瞬態(tài)分析、傅里葉分析、噪聲分析、失真分析、最壞情況分析等等外,Multisim還添加了很多的分析手段,包括直流掃描分析、批處理分析、等,一定程度上滿足了需求者對一般電子電路的分析設(shè)計要求。 5.2 仿真結(jié)果及分析5.2.1 基于PROTUES平臺仿真結(jié)果分析該系統(tǒng)的鍵盤顯示與電機驅(qū)動是在KEIL C編程下使用PROTUES仿真。最終實現(xiàn)其設(shè)計與仿真的。 鍵盤顯示仿真部分是由單片機AT89C51仿真、4*4鍵盤矩陣鍵盤、電阻、LCD1602液晶顯示屏組成。電機驅(qū)動仿真部分是由單片機AT89C51、L298驅(qū)動芯片、直流電機以及部分保護電路組成。本電路對鍵盤的八個鍵設(shè)置了電機和顯示的一系列功能。通過對4*4的鍵盤進行掃描,將鍵盤信號輸入到單片機,由單片機的P0口輸入到顯示屏,通過P2口來控制電機驅(qū)動芯片實現(xiàn)電機的正轉(zhuǎn)、反轉(zhuǎn)、停止、加速、減速等功能。 如圖5.1所示,4*4矩陣鍵盤上key1鍵控制第一個電機正轉(zhuǎn)傳屏幕顯示“one run right”,key2控制第一個電機反轉(zhuǎn)屏幕顯示“one run left”;key3控制第二個電機正轉(zhuǎn)屏幕顯示“two run right”;key4控制第二個電機反轉(zhuǎn)屏幕顯示“two run left”,key5和key6控制第一個和第二個電機停止并顯示“one stop”和“two stop”;key7和key8分別控制第一個電機正轉(zhuǎn)加減速,并分別顯示“one right quick”和“one right slow”。 file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image042.gif 圖5.1電機驅(qū)動電路仿真圖 5.2.2 基于MULTISIM仿真平臺結(jié)果分析當(dāng)開關(guān)J1閉合,J2B打開時,電機正轉(zhuǎn);當(dāng)開關(guān)J1打開,J2B閉合時電機反轉(zhuǎn), H橋電路仿真圖: file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image044.jpg 5.2H橋電路仿真圖
電源管理模塊仿真結(jié)果: file:///C:/Users/PC%E4%BD%95%E5%BF%97%E5%88%9A/AppData/Local/Temp/msohtmlclip1/01/clip_image046.jpg 5.3電源電路仿真圖
|