基于STC12C5410AD的智能小車_第1頁
基于STC12C5410AD的智能小車_第2頁
基于STC12C5410AD的智能小車_第3頁
基于STC12C5410AD的智能小車_第4頁
基于STC12C5410AD的智能小車_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基于STC12C5410AD的智能小車龍巖學(xué)院 物理與機(jī)電工程學(xué)院 電子信息工程專業(yè) (學(xué)號) 黃飛(姓名) 指導(dǎo)老師:陳晶晶 【摘 要】本文介紹一個基于STC12C5410AD單片機(jī)控制的智能小車設(shè)計(jì)。主要由電池組,尋線模塊,超聲波檢測,電機(jī)驅(qū)動,單片機(jī)主控芯片組成。電池組提供整個電路的能量,采用STC12C5410AD單片機(jī)作為小車的控制核心;采用紅外收發(fā)管來進(jìn)行尋線和用作計(jì)數(shù)標(biāo)志線實(shí)現(xiàn)不同的操作;采用超聲波檢測兩車間距并根據(jù)間距來調(diào)整速度;采用L298N電機(jī)專用驅(qū)動芯片驅(qū)動小車電機(jī)行駛。實(shí)現(xiàn)了集檢測障礙、自動保持車距及尋線控制功能為一體的智能小車設(shè)計(jì)。【關(guān)鍵詞】超聲波檢測;尋跡;智能;P

2、WM【Abstract】The essay intuduces the intelligent cars ,which consists of many packs mainly including battery packs,the technology of hunting the line, the detecting technology of supersonic wave and the motor drive,can be controlled by STC12C5410AD singlechip machine.The battery packs provide power f

3、or the cars.And the cpu of the intelligent car is STC12C5410AD singlechip machine.The sending and receiving of infrared is used to realize the function of hunting the line and counting the number of mark lines.And The detecting function of supersonic wave can be used to detect the distance between b

4、oth the cars. People can control the rotate speed of the motor drive on the basis of the above detecting result.And the cars can drive by the L298N chip of motor drive.The design made the cars which integrate the above functions.【Keywords】The detecting technology of supersonic wave,the function of h

5、unting the line ,intelligent ,pwm第1章 緒論1.1智能小車簡介智能小車,是一種具有智能化的能夠通過通信技術(shù)或編程等手段完成特定任務(wù)的智能化小車。隨著電子技術(shù)的不斷發(fā)展,人們發(fā)明了各式各樣的具有感知、決策、行動和交互能力的智能小車。智能小車可以理解為機(jī)器人的一種特例,比機(jī)器人的智能化程度略低了一點(diǎn)。而機(jī)器人技術(shù)綜合了多學(xué)科的發(fā)展成果,代表了高技術(shù)的發(fā)展前沿,它在人類生活領(lǐng)域應(yīng)用不斷擴(kuò)大,給人們的生活產(chǎn)生巨大的影響。隨著科學(xué)技術(shù)的發(fā)展,機(jī)器人的感覺傳感器種類越來越多,其中視覺傳感器成為自動行走和駕駛的重要部件。機(jī)器人要實(shí)現(xiàn)自動導(dǎo)引功能和避障功能就必須要感知導(dǎo)引線和

6、障礙物,感知導(dǎo)引線相當(dāng)給機(jī)器人一個視覺功能。避障控制系統(tǒng)是基于自動導(dǎo)引小車系統(tǒng),基于它的智能小車實(shí)現(xiàn)自動識別路線,判斷并自動避開障礙,選擇正確的行進(jìn)路線。使用傳感器感知路線和障礙并作出判斷和執(zhí)行相應(yīng)的動作。1.2智能小車的現(xiàn)狀現(xiàn)智能小車發(fā)展很快,從智能玩具到其它各行業(yè)都有實(shí)質(zhì)成果。其基本可實(shí)現(xiàn)循跡、避障、檢測貼片、尋光入庫等基本功能,這幾節(jié)的電子設(shè)計(jì)大賽智能小車又在向聲控系統(tǒng)發(fā)展。1.3本論文的主要內(nèi)容本文設(shè)計(jì)的智能小車可以分為三大組成部分:傳感器檢測部分、執(zhí)行部分、CPU。機(jī)器人要實(shí)現(xiàn)自動檢測障礙功能,還可以擴(kuò)展循跡等功能,感知導(dǎo)引線和障礙物??梢詫?shí)現(xiàn)小車自動識別路線,選擇正確的行進(jìn)路線,并

7、檢測到障礙物自動躲避?;谏鲜鲆?,傳感檢測部分考慮到小車一般不需要感知清晰的圖像,只要求粗略感知即可,所以可考慮使用價(jià)廉物美的紅外反射式傳感器來充當(dāng)。智能小車的執(zhí)行部分,是由直流電機(jī)來充當(dāng)?shù)?,主要控制小車的行進(jìn)方向和速度。單片機(jī)驅(qū)動直流電機(jī)一般有兩種方案:第一,勿需占用單片機(jī)資源,直接選擇有PWM功能的單片機(jī),這樣可以實(shí)現(xiàn)精確調(diào)速;第二,可以由軟件模擬PWM輸出調(diào)制,需要占用單片機(jī)資源,難以精確調(diào)速??紤]到本設(shè)計(jì)需要對直流電機(jī)進(jìn)行高速,所以選擇直接有PWM功能的單片機(jī),如STC12C5410AD。1.4 本設(shè)計(jì)的具體任務(wù)1.4.1 任務(wù)甲車車頭緊靠起點(diǎn)標(biāo)志線,乙車車尾緊靠邊界。甲乙兩輛小車同

8、時(shí)起動,先后通過起點(diǎn)標(biāo)志線,在行車道同向而行,實(shí)現(xiàn)兩車交替領(lǐng)跑功能。跑道如圖1.4.1所示。1.4.2 要求首先,本系統(tǒng)實(shí)現(xiàn)的基本功能:(1) 甲車和乙車分別從起點(diǎn)標(biāo)志線開始,在行車道各正常行駛一圈。(2) 甲、乙兩車按圖1.4.1位置同時(shí)起動,乙車通過超車標(biāo)志線后在超車區(qū)內(nèi)實(shí)現(xiàn)超車功能,并先于甲車到達(dá)終點(diǎn)標(biāo)志線,即第一圈地實(shí)現(xiàn)乙車超過甲車。(3) 甲、乙兩車在完成(2)時(shí)的行駛時(shí)間要盡可能的短。其次,實(shí)現(xiàn)擴(kuò)展功能有:(1) 在完成基本要求(2)后,甲、乙兩車?yán)^續(xù)行駛第二圈,要求甲車通過超車標(biāo)志線后要實(shí)現(xiàn)超車功能,并行于乙車到達(dá)終點(diǎn)標(biāo)志線,即第二圈完成甲車超過乙車,實(shí)現(xiàn)了交替領(lǐng)跑。甲、乙兩車在

9、第二圈行駛時(shí)間要盡可能的短。(2) 甲、乙兩車?yán)^續(xù)行駛第三圈和第四圈,并交替領(lǐng)跑:兩車行駛的時(shí)間要盡可能的短。圖1.4.1 小車跑道1.4.3 說明(1) 本體(含附加物)的長度、寬度均不能超過40cm高度不限,采用電池供電,不能外接電源。(2) 測試中甲、乙兩車均應(yīng)正常行駛,行車道與超車區(qū)的寬度只允許一輛車行駛,車輛只能在超車區(qū)進(jìn)行超車,即車輛先從行車道到達(dá)超車區(qū),實(shí)現(xiàn)超車后必須返回行車道。第2章 智能小車的實(shí)現(xiàn)原理根據(jù)上一章所要求的任務(wù),所設(shè)計(jì)的小車模型如圖2.1所示。小車前端兩側(cè)分別裝有三個紅外對管,其左端是用來尋內(nèi)線,右端是用來尋外線的。小車前端中間部分按有超聲波探頭,來檢測與另一輛小

10、的距離,根據(jù)間距進(jìn)行調(diào)速;在其下方裝一紅外對管,用來檢測跑道上的標(biāo)志線,不同位置的標(biāo)志線,小車進(jìn)行相應(yīng)的操作。當(dāng)檢測到起點(diǎn)標(biāo)志線時(shí)讓小車尋內(nèi)線行駛,這樣行駛距離比尋外線的距離短,從而縮短時(shí)間。當(dāng)小車檢測到超車標(biāo)志線時(shí),讓甲車由內(nèi)線尋外線,乙車尋內(nèi)線準(zhǔn)備超車。在小車左前側(cè)豎立一易反射光線的光滑板塊,小車右后端裝一紅外探頭,方向向右。其作用是小車在超車時(shí),判斷小車(甲)是否已經(jīng)完全超過另一輛小車(乙),當(dāng)乙車超過甲車時(shí),乙車的紅外探頭對著甲車滑板,接收到返回的信號,告知乙車準(zhǔn)備從超車區(qū)行駛到行車道。圖2.1 小車模型本設(shè)計(jì)總體方案框圖如圖2.2所示圖2.2 本設(shè)計(jì)的智能小車總設(shè)計(jì)框圖第3章系統(tǒng)各組

11、成單元方案設(shè)計(jì)與論證3.1 CPU控制模塊方案設(shè)計(jì)方案一:采用STC89C52單片機(jī)控制系統(tǒng),其通用I/O口比較多。在本實(shí)驗(yàn)中需要用到PWM,來控制直流電機(jī)轉(zhuǎn)速,雖可以用軟件模擬PWM輸出調(diào)制,但需要占用單片機(jī)資源,且難以精確調(diào)速。方案二:采用STC12C5410單片機(jī)控制系統(tǒng)。STC12C5410單片機(jī)帶有PWM脈寬調(diào)制功能,可直接用來控制電機(jī)轉(zhuǎn)速,且調(diào)速方便精確。 雖然 其I/O口比較少,但根據(jù)此次的設(shè)計(jì), I/O口還是足夠用的。綜上所述,考慮到本設(shè)計(jì)需用到PWM來控制小車行進(jìn)方向與速度,且所需I/0口對STC12C5410單片機(jī)也夠用,故先擇STC12C5410單片機(jī)作為CPU的控制核心

12、。3.2 電機(jī)及其驅(qū)動模塊方案設(shè)計(jì)3.2.1 電機(jī)模塊方案設(shè)計(jì)方案一:采用步進(jìn)電機(jī),其是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù)而不受負(fù)載變化的影響,即給電機(jī)加一個脈沖信號,電機(jī)則轉(zhuǎn)過一個步距角。這一線性關(guān)系的存在,加上步進(jìn)電機(jī)只有周期性的誤差而無累積誤差等特點(diǎn),使得在速度、位置等控制領(lǐng)域用步進(jìn)電機(jī)來控制變的簡單;方案二:采用直流電機(jī),其調(diào)速特性好,且調(diào)速方便、平滑、調(diào)速范圍廣;能承受頻繁沖擊負(fù)載,過載能力強(qiáng);并且能實(shí)現(xiàn)頻繁快速、制動以及逆向旋轉(zhuǎn)。綜上所述,并考慮到實(shí)驗(yàn)庫房有現(xiàn)成的直流電機(jī)小車模型,本設(shè)計(jì)采用直流電機(jī)

13、。3.2.2 驅(qū)動模塊方案設(shè)計(jì)方案一:對于直流電機(jī)用分立元件構(gòu)成驅(qū)動電路。用由4個功率元件組成的H橋電路或者使用一個雙刀雙擲的繼電器;使用三極管,用場效應(yīng)管等開關(guān)元件實(shí)現(xiàn)PWM調(diào)速。由分立元件構(gòu)成驅(qū)動電路,結(jié)構(gòu)簡單,價(jià)格低廉,但這種電路工作性能不穩(wěn)定。方案二:L298N內(nèi)部含有4通道邏輯驅(qū)動電路。是一種二相和四相電機(jī)得專用驅(qū)動器,即內(nèi)含二個H橋得高電壓大電流雙全橋式驅(qū)動器,接收標(biāo)準(zhǔn)TTL邏輯電平信號。一片L298N可以分別控制兩個直流電機(jī)而且還帶有控制使能端。用該芯片作為電機(jī)驅(qū)動,操作方便,穩(wěn)定性好,性能優(yōu)良。沒有使用控制端的電源,而且電機(jī)的干擾和驅(qū)動芯片的燒壞不影響你的控制系統(tǒng)。綜合以上兩種

14、方案,選擇方案二。方案二能夠比較好的實(shí)現(xiàn)所要實(shí)現(xiàn)的功能。因?yàn)閱纹瑱C(jī)或者其他控制元件的驅(qū)動力不足以能夠供給直流電機(jī)足夠的電流使其轉(zhuǎn)動,所以需要驅(qū)動芯片L298N來供給電機(jī)足夠的電流;驅(qū)動芯片也充當(dāng)了隔離的作用,以免電機(jī)產(chǎn)生的沖擊電流損壞控制器件。3.3 尋線模塊方案設(shè)計(jì)方案一:用光敏電阻組成光敏探測器。光敏電阻的阻值可以跟周圍環(huán)境光線的變化而變化。在黑暗環(huán)境里,它的電阻值很高,當(dāng)受到光照時(shí)使其電阻率變小,從而造成光敏電阻阻值下降。當(dāng)光線照射到白線上時(shí),光線發(fā)射強(qiáng)烈,光線照射到黑線上面時(shí),光線發(fā)射較弱。因此光敏電阻在白線和黑線上方時(shí),阻值會發(fā)生明顯得變化。將阻值的變化值經(jīng)過比較器就可以輸出高低電平

15、。但這種方案受光照影響很大,不能穩(wěn)定的工作。方案二:用紅外發(fā)射管和接收管自己制作光電對管避線傳感器。紅外發(fā)射管發(fā)出紅外線,當(dāng)發(fā)生得紅外線照射到白色的平面后反射,若紅外接收管能接收到反射回來得光線則檢測到白線繼而輸出低電平,若接收不到發(fā)射管發(fā)出得光線則檢測到黑線繼而輸出高電平。這樣避線得基本能夠滿足要求。 綜合以上方案,選擇方案二。本設(shè)計(jì)是要對黑線進(jìn)行尋線,對特定的線進(jìn)行標(biāo)記以達(dá)到所要設(shè)計(jì)的要求。3.4 障礙檢測模塊方案設(shè)計(jì)方案一:紅外測距的優(yōu)點(diǎn)是便宜,易制,安全,缺點(diǎn)是精度低,距離近,方向性差。方案二:激光測距的優(yōu)點(diǎn)是精確,缺點(diǎn)是需要注意人體安全,且制做的難度較大,成本較高,而且光學(xué)系統(tǒng)需要保

16、持干凈,否則將影響測量。方案三:由于超聲波頻率較高,沿直線傳播,繞射小,穿透力強(qiáng),指向性強(qiáng),傳輸過程中衰減少,能量消耗緩慢,在介質(zhì)中傳播的距離較遠(yuǎn),遇到雜質(zhì)或分界面時(shí)會產(chǎn)生反射波,對于被測物體處于黑暗、有灰塵、煙霧、電磁干擾、有毒等惡劣的環(huán)境下有一定的適應(yīng)能力。因而超聲波經(jīng)常用于距離的測量。系統(tǒng)規(guī)模較小,器件更換容易,成本低,有一定靈活性。但不適宜用于測量過于精確或者過大的距離,容易產(chǎn)生誤差。綜合考慮采用方案三,超聲波測距模塊是使兩輛小車保持在一定的距離,并不需要很精確測距,并且超聲波又有一定的適應(yīng)能力。3.5 電源模塊 根據(jù)任務(wù)中的要求需采用電池組來供電。方案一:選取8節(jié)1.5V干電池,即1

17、2V給直流電機(jī)供電。12V電壓源經(jīng)7805降壓到5V為單片機(jī)供電;方案二:選取12V的充電鋰電池,和3個1.5V的干電池給單片機(jī)充電;由于方案一,12V電壓分壓后會導(dǎo)致直流電機(jī)輸出電壓不穩(wěn),固本設(shè)計(jì)選擇方案二。第4章 理論分析與計(jì)算4.1直流電機(jī)L298N驅(qū)動的理論分析從單片機(jī)輸出的信號功率很弱,所以在實(shí)際電路中我們加入了電機(jī)驅(qū)動芯片提高輸入電機(jī)信號的功率,從而能夠根據(jù)需要控制電機(jī)轉(zhuǎn)動。根據(jù)驅(qū)動功率大小以及連接電路的簡化要求選擇L298N。一塊L298N芯片能夠驅(qū)動兩個電機(jī)轉(zhuǎn)動,它的使能端可以外接高低電平,也可以利用單片機(jī)進(jìn)行軟件控制,極大地滿足各種復(fù)雜電路需要。另外,L298N的驅(qū)動功率較大

18、,能夠根據(jù)輸入電壓的大小輸出不同的電壓和功率,解決了負(fù)載能力不夠這個問題。如圖4.1.1所示L298內(nèi)部由兩個H橋電路構(gòu)成。H橋式電機(jī)驅(qū)動電路包括4個三極管和一個電機(jī)。要使電機(jī)運(yùn)轉(zhuǎn),必須使對角線上的一對三極管導(dǎo)通。例如,如圖4.1.2所示,當(dāng)Q1管和Q4管導(dǎo)通時(shí),電流就從電源正極經(jīng)Q1從左至右穿過電機(jī),然后再經(jīng)Q4回到電源負(fù)極。按圖中電流箭頭所示,該流向的電流將驅(qū)動電機(jī)順時(shí)針轉(zhuǎn)動。如圖4.1.3所示,當(dāng)三極管Q2和Q3導(dǎo)通時(shí),電流將經(jīng)Q3從右至左流過電機(jī),然后再經(jīng)Q2回到電源。從而驅(qū)動電機(jī)沿另一方向轉(zhuǎn)動(電機(jī)周圍的箭頭表示為逆時(shí)針方向)。表4.1為L298N運(yùn)行參數(shù)。圖4.1.2 H橋順時(shí)針方

19、向圖4.1.1 L29N內(nèi)部電路表4.1 L298N運(yùn)行參數(shù)圖4.1.3 H橋逆時(shí)針方向4.2 紅外尋線的理論分析紅外尋線采用經(jīng)紅外對管進(jìn)行檢測并且尋線行走。引導(dǎo)線是黑顏色,不宜反光,利用這一特性選用紅外對管,當(dāng)其輸出信號照射到黑色引導(dǎo)線上時(shí)輸出一個非常弱的低電平,通過外圍電路這個過程是一個負(fù)跳變的過程,通過對此信號高低電平的檢測就可以知道小車是否在沿著引導(dǎo)線行駛。若不是沿著引導(dǎo)線行駛,根據(jù)傳感器送回的信號可以判斷并驅(qū)動電機(jī)正確地轉(zhuǎn)向從而便小車沿著正確的軌道行駛。如圖4.2所示,當(dāng)檢測物體為黑色物體時(shí),紅外光電二極管U1發(fā)射出的光線大部分被檢測的黑色物體所吸收,反射的光線變得很微弱,光敏三極管

20、無法導(dǎo)通。所以,LM311的2腳為高電平,并且與3 腳的輸出電壓同時(shí)送入比較器LM311進(jìn)行比較。因?yàn)閁2>U3,則LM311的7腳電平輸出為高,發(fā)光二極管不亮,最后輸出Vout為高電平。當(dāng)被測的物體為白色物體時(shí),紅外光電二極管U1發(fā)射的光線會被白紙所反射回來,這時(shí)在紅外線傳感器的接收端會得到很強(qiáng)的光照,這時(shí)光敏三極管就會導(dǎo)通。比較器LM311的2 腳就會接地,為低電平,與三腳的電壓比較后,在7腳的輸出端輸出一低電平。這時(shí)發(fā)光二極管就會形成回路,發(fā)出紅光。輸出端Vout為低電平。將比較器的輸出Vout送入單片機(jī)中進(jìn)行判斷就可以判斷出此時(shí)被檢測的軌跡是黑色還是白色了,從而驅(qū)動電機(jī)進(jìn)行相應(yīng)的

21、運(yùn)動。本設(shè)計(jì)中采用兩對三個紅外對管分別位于左右兩側(cè)檢測引導(dǎo)線,來控制小車沿著內(nèi)外引導(dǎo)線行進(jìn)。 圖4.2 紅外尋線電路圖注:檢測標(biāo)志線的外圍電路圖4.2所示的一樣。4.3 障礙物檢測4.3.1超聲波檢測的方法利用超聲波測距原理可以判斷出小車的前方是否有障礙物,可以根據(jù)判斷的距離來進(jìn)行躲避和加速處理。利用超聲波探測器測距時(shí),常用的兩種方法有:強(qiáng)度法和時(shí)間法。4.3.1.1強(qiáng)度法超聲波強(qiáng)度法的原理如圖4.3.1.1所示,其是利用聲波在空氣中的傳輸損耗值來測量被測物的距離,被測物越遠(yuǎn)其反射信號越弱,根據(jù)反射信號的強(qiáng)弱可以知道被測物的遠(yuǎn)近。但在使用這種方法時(shí)由于換能器之間的直接耦合信號很難消除,在放大器

22、增益較高時(shí)這一直接耦合信號可使放大器飽和從而使整套系統(tǒng)失效。超聲波強(qiáng)度法測距只適合較短距離且精度要求不高的場合。圖4.3.1 強(qiáng)度法原理示圖4.3.1.2 反射時(shí)間法超聲波反射時(shí)間法是利用檢測聲波發(fā)出到接收到被測物反射回波的時(shí)間來測量距離,其原理如圖4.3.1.2所示。對于距離較短和要求不高的場合可以認(rèn)為空氣中的聲速為常數(shù),通過測量發(fā)射波到接收波之間的時(shí)間間隔T就可以實(shí)現(xiàn)測距。其中距離S,超聲波在空氣中的速度V與時(shí)間間隔T之間滿足如下關(guān)系:S=V×T/2;這種方法不受聲波強(qiáng)度的影響,直接耦合信號的影響也可以通過設(shè)置時(shí)間閘門來加以克服,因此這種方法非常適合較遠(yuǎn)距離的測距。本系統(tǒng)中采用了

23、超聲波發(fā)射時(shí)間法來檢測障礙物,同時(shí)采用的超聲波探頭的中心頻率為40KHZ.圖4.3.1.2 反射時(shí)間法原理示圖4.3.2 超聲波發(fā)射電路超聲波發(fā)射電路如圖4.3.2所示。發(fā)射電路主要由反相器74LS04和超聲波發(fā)射轉(zhuǎn)換能器T構(gòu)成。單片機(jī)一I/O端口輸出的40KHZ的方波信號一路經(jīng)一級反向器后送到超聲波換能器的另一個電極,用這種推挽形式將方波信號加到超聲波換能器的兩端,可以提高超聲波的發(fā)射強(qiáng)度。輸出端采用兩個反向器并聯(lián),用以提高驅(qū)動能力。上位電阻R10、R11一方面可以提高反向器74LS04輸出高電平的驅(qū)動能力,另一方面可以增加超聲波換能器的阻尼效果、縮短其自由振蕩時(shí)間。圖4.3.2 超聲波發(fā)射

24、電路圖4.3.3超聲波檢測接收電路集成電路CX20106A是一款紅外檢波接收的專用芯片,常用于電視機(jī)紅外遙控接收器??紤]到紅外遙控常用的載波頻率38KHZ與測距的超聲波頻率40KHZ較為接近,可以利用它制作超聲波檢測,如圖4.3.3所示。本設(shè)計(jì)用外部中斷0檢測返回超聲波信號,一量接收到返回超聲波信號民,外部中斷0引腳出現(xiàn)低電平,則進(jìn)入外部中斷,此時(shí)可以進(jìn)行數(shù)劇處理。適當(dāng)調(diào)整C4的大小,可以改變接收電路的靈敏度和抗干擾能力。圖4.3.3 超聲波接收電路圖4.4車速控制的理論分析 采用STC12C5410AD自帶的PWM脈寬調(diào)制進(jìn)行調(diào)速。PWM是一種使用程序來控制波形占空比、周期、相位波形的技術(shù)。

25、PWM模式結(jié)構(gòu)圖如下圖4.4所示。定時(shí)器每隔一定的時(shí)間CL就會自動加1.當(dāng)計(jì)數(shù)器中的寄存器CL的值小于EPCnL,CCAPnL時(shí),輸出為低;當(dāng)寄存器CL的值等于或大于EPCnL,CCAPnL時(shí),輸出為高。當(dāng)CL的值由FF變?yōu)?0溢出時(shí),EPCnH,CCAPnH的內(nèi)容裝載到EPCnL,CCAPnL中。這樣就可以實(shí)現(xiàn)無干擾地更新PWM。注:CCAPnL各CCAPnH是PCA/比較寄存器,用于保存16位捕捉計(jì)數(shù)值。當(dāng)在PWN模式時(shí),用來控制輸出占空比。圖4.4 PWM可調(diào)制脈寬模式第5章 系統(tǒng)硬件電路設(shè)計(jì)5.1 單片機(jī)最小系統(tǒng)模塊設(shè)計(jì)采用宏晶科技有限公司的STC12C5410AD單片機(jī)作為控制CPU

26、,時(shí)鐘電路采用內(nèi)部時(shí)鐘利用單片機(jī)內(nèi)部一個高增益的反向放大器,把一個晶振和兩個電容器組成的自激振蕩電路接到XTAL1(腳)和XTAL2(腳)之間。振蕩器發(fā)出的脈沖直接送入內(nèi)部時(shí)鐘電路。本最小系統(tǒng)中晶振采用12M,起振電容采用30pF 。該單片機(jī)中包含中央處理器、程序存儲器(Flash)、數(shù)據(jù)存儲器(RAM)、EEPROM、定時(shí)/計(jì)數(shù)器、I/O接口、UART接口和中斷系統(tǒng)、SPI接口、高速A/D轉(zhuǎn)換模塊、PWM(或捕捉/比較單元)以及硬件看門狗、電源監(jiān)控、片內(nèi)RC振蕩器等模塊。本系統(tǒng)設(shè)計(jì)主要應(yīng)用其PWM(或捕捉/比較單元)、定時(shí)計(jì)/計(jì)數(shù)器、I/O接口等功能模塊。圖5.1 單片機(jī)最小系統(tǒng)模塊電路圖5

27、.2直流電機(jī)的驅(qū)動電路圖5.2 直流電機(jī)的驅(qū)動電路L298可驅(qū)動兩個電動機(jī),OUT1、OUT2和OUT3、OUT4之間可分別接電動機(jī),IN1IN4腳為輸入控制電平,控制電平正反轉(zhuǎn),從而控制小車行駛方向。ENA、ENB接控制使能端,接單片機(jī)的PWM調(diào)制輸出口,控制電機(jī)的停轉(zhuǎn)、加速。1腳、15腳是輸出電流反饋引腳,通常使用可直接接地。如5.2表格所示,對應(yīng)直流電機(jī)的運(yùn)行狀態(tài)。表5.2ENAIN1IN2運(yùn)轉(zhuǎn)狀態(tài)0xx停止110正轉(zhuǎn)101反轉(zhuǎn)111剎揨100停止5.3超聲波檢測障礙電路圖5.3.1 超聲波發(fā)射電路(左)、超聲波接收電路(右)如圖5.3.1所示,發(fā)射電路由74LS04(內(nèi)部結(jié)構(gòu)如圖5.3

28、.2所示)接成推挽形式將方波信號加到超聲波換能器的兩端,從而來提高輸出端的發(fā)射強(qiáng)度。接收電路主要由紅外遙控接收器cx20106A,構(gòu)成,其內(nèi)部接構(gòu)如圖5.3.3所示。接收電路信號從發(fā)射電路的T0口發(fā)出8個40KHZ的脈沖,并接收管TR10口即cx20106A的第1管腳接收,并由信號輸出端管腳7輸出。而管腳7接到單片機(jī)外部中斷1P3.3端口,接收到信號下降沿時(shí),進(jìn)入外部中斷。如圖5.3.1所示,P8和P13插座分別接發(fā)射管和接收管。表5.3為cx20106A管腳功能說明。圖5.3.2 74ls04內(nèi)部接構(gòu)圖5.3.3 紅外遙控接收器 cx20106A表5.3為cx20106A管腳功能說明引腳號說

29、明1超聲波輸入端。該腳阻抗約為40k2該腳 與地之間連接RC串聯(lián)網(wǎng)絡(luò),它們是負(fù)反饋串聯(lián)網(wǎng)絡(luò)的一個組成部分,改變它們的數(shù)值能改變前置放大器的增益和頻率特性。增大電阻R1或減小將使負(fù)反饋量增大,放大倍數(shù)下降,反之則放大倍數(shù)增大。3該腳與地之間連連檢波電容,電容量大炎平均值檢波,瞬間相應(yīng)靈敏度低;若容量小,則為峰值檢波,瞬間相應(yīng)靈敏度高,但檢波輸出的脈沖寬度變動大,易造成誤動作。4接地端5該腳與電源間接入一個小阻,用以設(shè)置帶通慮波的中心頻率f0,阻值越大,中心頻率越低。6該腳與地之間接一個積分電容,標(biāo)準(zhǔn)值為330pF,如果該電容取得太大,會使探測距離變短7遙控命令輸出端,它是集電極開路輸出方式,沒有

30、接受信號是該端輸出為高電平,有信號時(shí)則產(chǎn)生下降。8電源正極:4.55.5V5.4尋線電路圖5.4.1 紅外尋線電路紅外尋線電路主要是由光電傳感器ST188和lm331比較器組成。圖5.4.1的P2插座是接ST188光電傳感器(圖5.4.2左),其內(nèi)部電路如圖5.4.2右所示,其中P2的1、3管腳對應(yīng)的是二極管A、K,2、4對應(yīng)的是光敏三極管的C、E兩端。當(dāng)二極管AK兩端導(dǎo)通,發(fā)出光線,若有光線反光回來CE兩端導(dǎo)通,否則截止。表5.4是ST188的極限參數(shù)。Lm331比較器管腳功能如圖5.4.3所示,其第2個引腳為正向輸入端,接二極管A端,第2 引腳的正向輸入電壓,與其第3 個引腳相比較,比較后

31、的結(jié)果,從輸出端7口輸出。圖5.4.2 光電傳感器ST188(左)和其內(nèi)部結(jié)構(gòu)(右)表5.4 ST188的極限參數(shù)圖5.4.3 lm331管腳功能第六章 系統(tǒng)軟件設(shè)計(jì)6.1整體設(shè)計(jì)本設(shè)計(jì)要實(shí)現(xiàn)小車智能尋線、變速、超車等功能,除硬件外,還需要軟件來控制。本章主要介紹單片系統(tǒng)對各模塊的軟件編程控制,如超聲波檢測障礙并測距,紅外對管尋線功能,PWM脈寬調(diào)制來控制車速等。本系統(tǒng)設(shè)計(jì)主要采用Keil4軟件編寫與調(diào)試程序,程序語言采取易讀性和移植性更高的C語言編寫。6.2 超聲波檢測設(shè)計(jì)超聲波測距時(shí),需事先用1602液晶來顯示測距結(jié)果,從而判斷測距是否精確。首先應(yīng)發(fā)送八個40KHZ的脈沖。需注意的是,在編

32、程時(shí)要軟件延時(shí)一毫秒,來防止盲區(qū),才打開外部中斷。如圖6.2.1流程圖所示。6.2.1超聲波檢測流程圖開始接收成功了么?成功標(biāo)志了么?顯示測距結(jié)果結(jié)束初始化定時(shí)器,SPI開定時(shí)器,軟件延時(shí)4毫秒后,關(guān)定時(shí)器,關(guān)中斷;打開外部中斷0軟件延時(shí)1毫秒,防盲區(qū)連續(xù)發(fā)送8個40KHZ的脈沖;Suc_flag =0NY圖6.2.1 超聲波測距流程圖6.2.2 超聲波檢測的部分程序.void main() . while(1) .for(i=0;i<8;i+) /產(chǎn)生8個頻率為38.4KHZ的方波 Trig=1; /超聲波輸入端 delay_6us(); delay_6us(); Trig=0; de

33、lay_6us(); delay_6us();TR1=1; /啟動定時(shí)器1delay_50us();/延時(shí) 防盲區(qū)delay_50us();EX0=1; /打開外部中斷0 . if(succeed_flag=1) time=timeH*256+timeL; distance=time*0.0172; /S=V×T/2 . .6.3 直流電機(jī)設(shè)計(jì)采用STC12C5410AD自帶的PWM脈寬調(diào)制進(jìn)行調(diào)速。對CCAPnH賦值,當(dāng)計(jì)數(shù)器中的寄存器CL的值小于EPCnL,CCAPnL時(shí),輸出為低;當(dāng)寄存器CL的值等于或大于EPCnL,CCAPnL時(shí),輸出為高。當(dāng)CL的值由FF變?yōu)?0溢出時(shí),E

34、PCnH,CCAPnH的內(nèi)容裝載到EPCnL,CCAPnL中。正轉(zhuǎn)時(shí),控制兩個電機(jī)PWM的高電平占空比應(yīng)相等。左轉(zhuǎn)時(shí),左邊的PWM輸出占空比,應(yīng)小,右邊的PWM占空比應(yīng)大,使其右邊電機(jī)轉(zhuǎn)的比左邊的電機(jī)快。同理右轉(zhuǎn)時(shí),應(yīng)使右邊的占空比小,左邊的占空比大,使得左邊電機(jī)轉(zhuǎn)得比右邊來得快。須要注意的是驅(qū)動對兩個電機(jī)輸出的電壓并不會完全相等。所以要多次進(jìn)行調(diào)整確定CCAPnH的值。6.3.1調(diào)整轉(zhuǎn)速流程圖開始判斷兩測間距根據(jù)間距調(diào)整電機(jī)轉(zhuǎn)速圖6.3.1 調(diào)整轉(zhuǎn)速流程圖6.3.2電機(jī)部分程序首先轉(zhuǎn)向部分程序:void run_advance()/正轉(zhuǎn)CCAP0H = 0X80;/正轉(zhuǎn)時(shí)CCAP0H與CCA

35、P2H的值并不相等;多次調(diào)整后確定;CCAP2H = 0X75; void run_right() /右轉(zhuǎn)CCAP0H = 0X9a;/左邊占空比小CCAP2H = 0X70;/右邊占空比大void run_left()/左轉(zhuǎn)CCAP0H = 0X70;/左邊占空比大CCAP2H = 0X85;/右邊占空比小其次,變速部分程序:.time=timeH*256+timeL; distance=time*0.0172; /厘米if(distance>=40) /距離大于30時(shí) 增大PWM高電平脈沖 讓車加速if(CCAP0H&&CCAP2H)>0x08)CCAP0H =

36、 CCAP2H-0x08;/增大占空比CCAP2H = CCAP3H-0x08;if(distance>20)&&(distance<30)/距離在此之間時(shí)讓車保持速度 CCAP0H = 0x80 CCAP2H = 0x75;if(distance<=15)if(CCAP0H&&CCAP2H)<0xf7)/距離太小時(shí)讓車減速CCAP0H = CCAP0H+0x08;/減小占空比CCAP2H = CCAP3H+0x08; 6.4 尋線設(shè)計(jì)尋線模塊編程主要是用三個紅對管來判斷黑線的具體位置,在理論分析章節(jié)中,已經(jīng)知道通過可根據(jù)判斷返回的信號可以來

溫馨提示

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

最新文檔

評論

0/150

提交評論