基于單片機的智能小車設計(共51頁)_第1頁
基于單片機的智能小車設計(共51頁)_第2頁
基于單片機的智能小車設計(共51頁)_第3頁
基于單片機的智能小車設計(共51頁)_第4頁
基于單片機的智能小車設計(共51頁)_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上摘要隨著計算機、微電子、材料、機械、通信等技術的快速發(fā)展,智能化的小車和機器人的發(fā)展速度也越來越快,作為21世紀自動化領域內非常偉大的成就它已經和人們的生產生活緊密的聯(lián)系在了一起。根據(jù)題目的要求,本設計的智能遙控小車主要由兩大部分構成:一個紅外遙控部分,一個智能小車部分。其中紅外遙控部分采用專用編碼芯片HT6221作為發(fā)射端,一體化紅外接收頭作為接收端;智能小車部分采用微控制器AT89C52單片機作為其控制核心,用紅外反射式光電傳感器進行障礙物和路線的檢測,用步進電機控制小車的啟停、速度快慢以及轉向,用直射式光電檢測器、施密特觸發(fā)器等元件組成的電路來檢測小車車輪轉速,

2、用LCD1602液晶顯示屏來實時顯示小車運行的速度、時間和路程。經過硬件和軟件的綜合設計,本設計的智能遙控小車基本上實現(xiàn)了遙控控制、自動躲避障礙、自動沿著特定的路線行駛、實時顯示速度、路程等功能。關鍵詞:AT89C52單片機;紅外遙控;步進電機;LCD1602 專心-專注-專業(yè)ABSTRACTAlong with the development of computer microelectronic materials mechanical and communication ,the smart cars and robots are also mov-ing faster,as a gre

3、at achivement in the field of automation in the 21st century,they have closely contacted with people,s living and manufactur-ing.According to the topic,my designation of sm- art car mainly contain two parts,a infrared remote contral portion and a small car portion.The infrared remote contral portion

4、 is use the special coded chip HT6221 as the transmitter and use the integrated infrared receiving header as the receiver;we use the MCU(AT89C52 singal chip machine)as its control core, the infrared reflective ph- otoelectric sensor for detection of obstal and routes, the stepping motor to control i

5、ts start-stop speed and steering,the circuits made of direct optical detectors schmitt tr- igger and other electronic components to detect the car,s wheel speed,1602 LCD sc- reen to display its real-time speed distance and time.Through the integrated design of hardware and software,the small car has

6、 the function of remote contral, avoiding obstal automatically,moving along specific route automatically, displaying real-time speed and distace.Keywords: AT89C52MCU; IR remote control; stepmotor; LCD1602 目錄066784556788899第一章 緒論1.1 課題背景和意義隨著計算機、微電子、信息技術的快速發(fā)展,智能化技術的發(fā)展速度越來越快,智能化與人們生活的聯(lián)系也越來越緊密,智能化是未來社會

7、發(fā)展的必然趨勢。智能小車實際上就是一個可以自由移動的智能機器人,比較適合在人們無法工作的地方工作,也可取代人們完成一些復雜、危險性質的工作。作為現(xiàn)代自動控制領域內十分偉大的一項發(fā)明智能小車、機器人已經和人們的生產生活緊密的聯(lián)系在了一起。智能小車,是一個包含周圍環(huán)境探測、識別反應、自動控制等功能于一體的綜合系統(tǒng),它綜合地運用了微控制器、傳感、遙控、機械結構、電子基礎、自動控制等多學科的知識。智能小車是一個復雜而又龐大的系統(tǒng),其內部有許多塊控制芯片作為其控制核心,多種傳感器來采集外部環(huán)境信息并將接收到的信息傳給主控制器,然后由控制器來控制其各個模塊執(zhí)行相應的動作。智能小車由于成本較低,甚至還能夠勝

8、任一些人們都無法勝任的工作,它已逐步深入到工業(yè)、農業(yè)以及社會生活的各個方面。本課題設計的智能小車中用到的遙控技術、顯示技術、單片機控制系統(tǒng)、傳感技術、自動避障技術已廣泛應用于工農業(yè)生產、國防軍事、醫(yī)療衛(wèi)生、宇宙探測等諸多領域,特別是其在軍事偵察、反恐、防暴、防核化及污染等危險和惡劣環(huán)境中有著廣闊的應用前景,由此可見其有著及其重要的研究意義。1.2 課題研究現(xiàn)狀和發(fā)展趨勢 1.2.1 研究現(xiàn)狀智能小車、機器人的發(fā)展研究從上世紀60年代至今已有幾十年的歷史,自從上世紀60年代末期,第一臺能夠自主移動機器人問世以后,經過幾十年的發(fā)展智能機器人已經從最初的示教模仿機器人發(fā)展到現(xiàn)在的具有感知功能的智能機

9、器人,在技術上取得了很大的進步許多國家都對智能機器人進行了大量的研究。由于各國的科研實力不同,其水平也有高低,其中美國和日本在該項技術的研究處于領先地位。法國提出了讓智能機器人具有自動認知功能的一項科技計劃,使其能夠在復雜的環(huán)境中通過自主感知判斷來自動執(zhí)行各種動作。美國發(fā)明的智能機器人,可以幫助人們送信件、食品等生活用品,還可以牽引吸塵器來打掃衛(wèi)生。日本目前已經研制成功的人形機器人,其可以模仿人們的各種面部表情而且非常逼真。近年來發(fā)明的的手術機器人已經廣泛的應用在實際醫(yī)療手術中而且穩(wěn)定性好,安全性高。我國的智能小車、機器人的研究已經有三十多年的歷史,特別是在軍事領域的應用方面已經取得了較大的成

10、果,已經相繼研制出了復雜的智能機器人,危險作業(yè)機器人、仿人機器人、復合結構移動機器人等。國內的許多高校也都在不停的進行著這方面的研究而且也有了層出不窮的成果,例如中科院研制的能夠和人對話的機器人、上海交大研制的具有較強越障能力的仿人關節(jié)結構的機器人等。與此同時,我國也開展了智能移動機器人基礎理論研究,在某些方面取得了世界領先的成果,正在逐漸縮小與發(fā)達國家的差距。 1.2.2 發(fā)展趨勢隨著各方面技術的不斷進步與完善,各個國家對于智能小車、機器人的科研能力都再逐步的加強,未來的智能機器人可能會朝著以下幾個方面發(fā)展:使用高強度的輕質材料讓機器人的結構越來越靈巧動作執(zhí)行也更加靈活;應用網(wǎng)絡化技術來遠距

11、離操作控制機器人群體為人們工作;通過復雜生物機電系統(tǒng)和人機耦合系統(tǒng)來研究出具有仿生感知、生物神經的仿人機器人。相信未來會有具有更高智能化的、更加生動有趣的智能機器人出現(xiàn)在我們的周圍,而且會極大的改變和方便人們的生產生活。1.3 課題內容和要求本設計的智能小車用微處理器(即單片機)作為整個系統(tǒng)的控制核心部分,主要包括單片機控制模塊、遙控模塊、避障模塊、循跡模塊、數(shù)據(jù)顯示模塊等模塊。要求能夠實現(xiàn)以下幾種功能:(1)遙控功能,即通過遙控器來控制小車的啟動、停止、左轉、右轉、后退等動作。(2)自動避障功能,即小車在前方遇到障礙時可以立即做出反應,自動左轉或右轉躲避障礙。(3)自動循跡功能,即小車可以自

12、動沿著規(guī)定的路線行駛。(4)能夠實時顯示小車行駛的速度、路程等數(shù)據(jù)。要求通過此次的實際動手設計掌握以下基本技能:(1)學會電子產品的設計開發(fā)過程;(2)掌握單片機原理、遙控原理、顯示原理等;(3)能夠熟練進行系統(tǒng)的硬件電路設計以及軟件設計;(4)熟練使用相關的電子設計和仿真軟件;(5)查閱國內外相關文獻,掌握智能小車的最新研究動態(tài)和未來發(fā)展趨勢。第二章 總體方案設計與論證本設計方案采用微處理器(AT89C52單片機)作為整個系統(tǒng)控制的中心,主要由兩個部分構成,紅外遙控發(fā)射部分和智能小車部分。其中智能小車部分主要由以下子模塊構成:單片機控制模塊、電源模塊、電機驅動模塊、循跡避障模塊、轉速檢測模塊

13、、紅外接收器和數(shù)據(jù)顯示模塊組成;紅外遙控發(fā)射部分主要由遙控按鍵、編碼芯片、紅外發(fā)射三個部分構成。其總體設計框圖包括兩個部分,如圖2.1所示: a 遙控部分框圖 b 小車部分框圖 圖2.1 系統(tǒng)總體設計框圖2.1 遙控控制模塊設計與論證目前比較常用的遙控控制方式有兩種,紅外遙控控制系統(tǒng)和無線遙控控制系統(tǒng)。方案一:選擇紅外遙控裝置作為小車的遙控控制器。紅外遙控是通過遙控發(fā)射器內的編碼芯片將按鍵信息調制成一串0和1的二進制代碼,然后通過紅外線發(fā)出,最后被紅外接收裝置接收進行解碼,再運用單片機對解碼后的碼信息進行識別,然后再根據(jù)不同的碼信息進行不同的控制操作9。方案二:選擇無線電遙控裝置作為小車的遙控

14、控制器。無線電遙控是利用不同頻率的無線電波對遠方的各種機構進行控制的遙控設備。這些信號被遠方的接收設備接收后,可以驅動其他各種相應的機械或者電子設備去完成各種操作6。紅外遙控和無線遙控是對不同的載波來說的,紅外遙控器是用紅外線來傳送控制信號的,它的特點是有方向性中間不能被阻擋,在室內使用時大概在7m的范圍內有效;無線遙控器是用無線電波來傳送控制的信號的,它的特點是無方向性,可以不面對面控制,距離遠,有效距離可達數(shù)十米甚至數(shù)公里。以上兩種方案均可作為本設計的遙控控制器,雖然無線遙控控制的距離更遠也更加靈敏,但對于本設計來說使用紅外遙控已經足夠了,而且紅外遙控的原理更加簡單易懂,所以本設計采用方案

15、一即紅外遙控作為小車的遙控控制系統(tǒng)。2.2 電機驅動模塊設計與論證目前比較常用的小車驅動電機主要有兩種選擇:方案一:選擇直流電機作為小車的動力驅動。直流電機是將直流電能轉換為機械能的一種裝置,因其轉動力矩大、體積較小、重量很輕、使用方便,所以其在一些小型的電動裝置中的應用較多。直流電機的運行方式是這樣的:在它里面有圓形的磁體會產生磁場,當給它轉子上的繞組通電時,通電線圈在磁場中便會產生洛倫茲力帶著線圈即轉子轉動,當轉子轉動時通電線圈內的磁場方向將會改變,所以繞組上的電流也要變換流向,在方向一直不變的洛倫茲力控制下電機將向順時針或逆時針持續(xù)轉動。由H型橋式電路直接驅動直流電機控制電機的正反轉,通

16、過軟件編程使單片機輸出不同占空比的PWM(脈寬調制信號)來控制直流電機的轉速進而控制小車的行駛速度6。方案二:選擇步進電機作為小車的動力驅動。步進電機是將輸入端輸入的電脈沖信號轉變?yōu)檗D子的角位移的可以實現(xiàn)精確定位的電機。電機轉動的快慢取決于脈沖信號的頻率、轉動的圈數(shù)取決于脈沖的個數(shù),在不超載的情況下其轉動速度不受負載的影響,即給步進電機輸入一個脈沖信號,電機的轉子則轉過一個角度,給其加上連接不斷的脈沖波形則步進電機就能持續(xù)轉動下去5。相比直流電機,步進電機轉過的角度是由脈沖信號控制的其可以實現(xiàn)小車的精確定位停車,步進電機調速也更加容易,只要輸入不同頻率的脈沖信號就能控制小車的行駛速度,而且它還

17、有很好的止動能力。所以在本設計中我們選用了步進電機作為小車的驅動電機。2.3 避障循跡模塊設計與論證目前主要有兩種方案來實現(xiàn)小車的自動避障功能:方案一:采用紅外反射式光電傳感器、電壓比較器及一些電阻構成的障礙物檢測電路來檢測小車前方的障礙。障礙物檢測電路安裝在小車前部的中間及左右兩邊,來檢測小車前方的障礙物。其障礙檢測過程如下:紅外發(fā)光二極管發(fā)出紅外光,如果遇到小車前面的障礙物,紅外線就會被物體反射回來,被光敏三極管吸收此時光敏三極管導通,并在輸出端輸出低電平信號至單片機,然后單片機調用尋跡避障子程序控制小車做出相應的避障反應,當左邊遇到障礙物時單片機會自動調用右轉子程序控制其右轉,當右邊遇到

18、障礙物時單片機會自動調用左轉子程序控制其左轉。當無障礙物時,發(fā)出的紅外線不被反射,光敏三極管截止,輸出高電平信號,小車繼續(xù)向前行駛8。方案二:采用超聲波原理來檢測小車前方的障礙。其檢測障礙的原理如下:先由超聲波發(fā)射器向小車前方發(fā)射超聲波,超聲波在向前傳播過程中,若遇到障礙物則會被反射回去,反射波被超聲波回收裝置接收后會產生一個電信號然后被轉化為高低電平信號反饋給單片機,若為高電平則說明前方遇到障礙,然后由單片機調用避障子程來控制小車做出相應的躲避障礙的動作7。在本設計我們采用了第一種方案實現(xiàn)小車的自動避障功能。2.4 數(shù)據(jù)顯示模塊設計與論證根據(jù)題目的要求小車可以實時顯示其運動的速度、距離等數(shù)據(jù)

19、。主要有兩種方案來實現(xiàn):方案一:用共陽極數(shù)碼管和可編程的鍵盤接口芯片組成數(shù)據(jù)顯示電路,接口芯片直接與單片機的I/O口相連,由單片機精確控制實現(xiàn)LED動態(tài)顯示。方案二:用LCD液晶顯示屏直接與單片機相連組成數(shù)據(jù)顯示電路。LCD液晶顯示屏是一種專門用來顯示字符和數(shù)字的點陣型液晶模塊,它是由若干個5X7或5X11點陣字符位組成的,一個字符占據(jù)一個點陣字符位,每位之間有一個點距的間隔將字符隔開,行與行之間也有間隔8。由于本設計需要顯示的數(shù)據(jù)較多,若用LED數(shù)碼管來顯示需多個數(shù)碼管才能滿足要求,這樣電路設計過于復雜,相反只用一個LCD液晶顯示屏即可顯示要求數(shù)據(jù),所以本設計我們采用方案二即LCD顯示屏來顯

20、示實時數(shù)據(jù)。2.5 轉速測量模塊設計與論證方案一:選擇霍爾開關型傳感器測量小車車輪轉速。具體做法是:在非磁性材料制作的轉子上,固定好一片鋼性磁體,將霍爾開關型傳感器的感知接收面和磁體的磁極相對, 并在安裝架上安裝好(注意磁場方向不要弄錯),輪子轉動時磁體會跟著轉動,在磁體轉到和傳感器的接收面相對時, 霍爾傳感器便輸出一個脈沖信號, 由兩個脈沖間的時間間隔,便可算出轉速,然后再根據(jù)車輪半徑編程便可算出小汽車運行的速度10。方案二:選擇直射式光電檢測器測量小車車輪轉速。具體做法是: 在小車的驅動輪的主軸上安裝一個開有十個透光槽的圓形葉片,保持葉片和驅動輪能夠同步轉動,然后在驅動輪旁安裝好直射式光電

21、檢測器,葉片隨著車輪的轉動不斷切割紅外發(fā)射管與紅外接受管之間的紅外線通路,當葉片轉動至透光槽與紅外線通路重合時,檢測器導通,紅外接受管通過電流,當葉片轉動至使透光槽遮住時,光通路斷開。隨著車輪不斷的轉動,便會輸出連續(xù)的脈沖序列,測出脈沖的個數(shù)便可知葉片轉過的孔數(shù),從而可計算出車輪轉動的轉角和轉速,然后再根據(jù)車輪半徑由軟件編程便可算出小車運行的速度11。以上兩種方案都能夠測出小車車輪的轉速。但是在本設計中,對于方案一來說,要想在很小的小車車輪上密集安裝磁片比較困難,而且彼此之間也容易產生干擾。因此本設計擬采用方案二測量小車的轉速。2.6 電源模塊設計與論證電源是整個小車系統(tǒng)運行的基本條件,它的性

22、能的好壞直接決定整個系統(tǒng)運行的穩(wěn)定性和性能。小車的供電電源包含兩部分,單片機控制模塊電源和電機驅動模塊電源,我們將單片機及其外圍電路和步進電機分開供電,兩者互相不影響,實現(xiàn)穩(wěn)定供電。由于步進電機需較高的供電電壓而單片機和其邏輯單元最大供電電壓不能超過5V,因此需設計穩(wěn)壓電路。方案一:采用8節(jié)1.5V干電池串聯(lián)共12V直接給步進電機供電,然后經過由LM7805穩(wěn)壓芯片構成的穩(wěn)壓電路將電壓降至5V后給電片機及其外圍邏輯電路供電。但是本方案由于電池電量有限,而且數(shù)量較多的干電池重量較大會給驅動電機帶來太大負擔,也占用了太大的空間在體積較小的小車上使用太不方便,所以放棄了該方案。方案二:采用12V蓄電

23、池直接給步進電機供電,將電壓降至5V后給單片機及其外圍電路供電。蓄電池具有較長的續(xù)航能力以及電壓輸出的值基本不怎么變化,但是因為蓄電池的體積和質量過大,并不適合本設計的使用,所以我們并沒有使用蓄電池來供電。方案三:采用3節(jié)4.2V鋰電池串聯(lián)的方式共直接給步進電機供電,然后經過由穩(wěn)壓芯片構成的穩(wěn)壓電路將電壓降至5V后給單片機及其外圍邏輯電路供電。本方案鋰電池的電量較足并且可以充電重復利用,3節(jié)鋰電池重量和占用的空間都較小,因此該方案比較可行,最終我們選擇了該方案作為小車的驅動電源14。第三章 各模塊硬件電路設計本設計的遙控智能小車的硬件部分共分為兩大模塊:紅外遙控發(fā)射器硬件模塊和智能小車部分硬件

24、模塊。其中紅外遙控發(fā)射硬件模塊包含遙控按鍵、編碼芯片、紅外發(fā)射三個子模塊;智能小車部分硬件模塊包含單片機控制模塊、電機驅動模塊、避障循跡模塊、顯示模塊、紅外接收器模塊、電源模塊6個子模塊。首先介紹紅外遙控發(fā)射器部分即遙控按鍵、編碼芯片、紅外發(fā)射三個子模塊的硬件設計。3.1 紅外遙控發(fā)射器模塊 3.1.1 紅外遙控模塊的工作原理紅外線遙控是比較常見的一種遙控設備,它是利用波長為0.761.5m之間的紅外線來傳送控制信號的遙控設備。其占據(jù)空間小、價格便宜、使用方便,在我們常用的家用電器比如電視、DVD,錄音機、空凋等和一些小型電動玩具裝置上均已應用了紅外線遙控設備。但是紅外遙控也有缺點比如容易受到

25、空間和距離的限制,一般在7m的范圍內有效且發(fā)射和接收之間不能被物體隔擋,但對于本設計的智能小車來說已經能夠滿足要求。紅外遙控系統(tǒng)一般由兩大部分組成:一個紅外發(fā)射部分,一個紅外接收部分。其中發(fā)射部分主要由按鍵鍵盤、編碼調制、LED紅外發(fā)送器構成,它最重要的部分就是應用編碼芯片對按鍵信息進行編碼和發(fā)送;接收部分由光電轉換放大器、解調、解碼電路構成,其最重要的部分是對接收到的編碼進行解調。其原理如圖3.1所示: 圖3.1 紅外遙控系統(tǒng)原理框圖按下遙控器的一個按鍵,遙控器的編碼芯片會對按鍵信息進行編碼,然后通過LED紅外發(fā)射器發(fā)出脈沖編碼,被紅外接收頭接收后將編碼解出并輸入到單片機的外部中斷,對接收到

26、的脈沖編碼進行位“0”和位“1”的識別,再根據(jù)不同的碼信息調用相應的子程序來對小車進行不同的控制操作。 3.1.2 HT6221編碼芯片簡介HT6221是合泰公司生產的多功能遙控編碼芯片,工作電壓在1. 8V-3.5V,其采用PPM(Pulse Position Modulation)進行編碼,周期能編碼16位地址碼和8位數(shù)據(jù)碼,最多能同時支持32個活動鍵。其引腳結構如圖3.2所示: 圖3.2 HT6221引腳圖其各引腳說明如下表3-1所示:表3-1 HT6221芯片引腳說明引腳號引腳名稱 描述0 AIN低8位地址碼輸入1-8 C1-C8鍵盤列控制9 LED按鍵指示燈10-13 R1-R4鍵盤

27、行控制, 高電平有效14 DOUT串行數(shù)據(jù)輸出引腳, 38KHz發(fā)射頻率15 VDD1.8V- 3.5V16 DT最重要數(shù)據(jù)位(DT)代碼設置17、18 X2、X1455KHz振蕩器輸出,455KHz振蕩器輸入19 VSS接地 遙控編碼有兩種:位0和位1,其低電平脈寬相同但高電平脈寬不一樣。采用脈寬調制的串行碼,以脈寬為0.565ms、間隔0.56ms、周期為1.125ms的脈沖表示二進制的“0”;以脈寬為0.565ms、間隔1.685ms、周期為2.25ms的脈沖表示二進制的“1”。其波形如圖3.3所示: 圖3.3 遙控碼的“0”和“1”(注:接收端的波形與發(fā)射斷相反) 3.1.3 紅外遙控

28、發(fā)射器遙控發(fā)射器專用芯片很多,在本設計中我們運用了HT6221芯片來實現(xiàn)紅外編碼的發(fā)射。其電路如圖3.4所示: 圖3.4 遙控發(fā)射器電路原理圖圖3.4中當有任意一個按鍵按下后,按鍵指示燈(D1)發(fā)光,HT6221編碼芯片能夠產生脈沖編碼,該脈沖編碼會被調制成38KHz的脈沖信號然后通過圖中的紅外發(fā)射二極管(D2)發(fā)射出去8。所按的按鍵不同其發(fā)出的編碼脈沖也不同,按鍵所代表的功能也就不同,其各按鍵的功能分配如下表3-2所示: 表3-2 按鍵功能分配表 按鍵 功能 K1 控制小車的啟動 K2 控制小車的停止 K3 控制小車的加速 K4 控制小車的左轉 K5 控制小車的右轉 K6 控制小車的倒退下面

29、是智能小車部分即單片機控制模塊、紅外接收器模塊、電機驅動模塊、避障循跡模塊、顯示模塊、電源模塊6個子模塊的硬件設計介紹。3.2 單片機控制模塊 3.2.1 單片機模塊電路本設計我們采用AT89C52單片機作為智能小車部分的控制核心,AT89C52單片機是AT89系列的標準型8位單片機,其與標準MCS-51指令系統(tǒng)和8052產品引腳兼容,功耗低、性能強大、價格便宜適用于許多較為復雜控制的場合。AT89C52單片機的內部結構如下:一個以ALU為中心的8位中央處理器,256字節(jié)內部數(shù)據(jù)存儲器(RAM),8K字節(jié)用來存儲程序的Flash內部程序存儲器即片內ROM(可反復擦寫1000次),4個8位可編程

30、I/O口(P0、P1、P2、P3),3個16位定時/計數(shù)器,8個中斷源,兩個中斷優(yōu)先級的中斷控制系統(tǒng),一個全雙工串行通信口,一個片內振蕩器和時鐘電路1。AT89C52單片機最小應用系統(tǒng)主要由單片機、復位電路、振蕩電路等部分組成。本設計的單片機控制如圖3.5所示: 圖3.5 單片機控制模塊本設計中我們使用了AT89C52單片機的大部分引腳,其具體的引腳功能分配如下表3-3所示:表3-3 單片機引功能分配表 引腳 功能分配 P0.0-P0.7接LCD1602的D0-D7引腳,作為數(shù)據(jù)信息的輸出引腳 P1.0-P1.2接LCD1602的RS、RW、E引腳,作為數(shù)據(jù)信息的控制端 P1.3-P1.5、P

31、1.7連接避障循跡電路的輸出端 P1.6連接轉速測量電路的脈沖輸出端 P2.4-P2.7連接電機驅動芯片的脈沖信號輸入端 P3.2外部中斷,連接紅外接收器的輸出端VCC接+5V電源GND接地 3.2.2 復位電路單片機的復位,是為了初始化單片機的工作狀態(tài),有時當程序運行出錯或因操作錯誤而使系統(tǒng)處于鎖死狀態(tài),為了擺脫困境,也可按復位鍵重新初始化單片機。RST引腳是復位信號的輸入端,要實現(xiàn)復位操作必須使RST引腳上至少保持兩個機器周期的高電平,再從高電平變?yōu)榈碗娖酵瓿蓮臀?。復位電路由按鍵復位和上電復位兩種方式,本設計采用按鍵復位實現(xiàn)復位操作。單片機按鍵復位電路如圖3.6所示: 圖3.6 復位電路按

32、鍵復位是通過按鍵使復位引腳經電阻R0與VCC電源接通來實現(xiàn)的,按下復位鍵時,RST引腳為高電平;松開復位按鍵后,RST引腳逐漸將為低電平,復位結束。 3.2.3 振蕩電路AT89C52單片機內有一個高增益反相放大器,其輸入端為芯片引腳XTAL1,輸出端為芯片引腳XTAL2。只要在片外通過XTAL1和XTAL2引腳跨接振蕩元件(如晶體振蕩器),則可構成一個穩(wěn)定的自激振蕩器,單片機通電后即可工作。其外部振蕩電路如圖3.7所示: 圖3.7振蕩電路 AT89C52單片機內部RAM容量很小,當單片機需要存放大量數(shù)據(jù)時就必須擴展外部數(shù)據(jù)存儲器。此外AT89C52單片機的I/O口數(shù)量和功能很有限,也常常要擴

33、展外部接口芯片。由于本設計不需要太多的I/O口,內部程序存儲器也夠用,所以不用擴展外部數(shù)據(jù)存儲器和外部接口芯片。3.3 紅外接收器及解碼紅外接收器也叫做一體化紅外接收頭,其內部是由紅外監(jiān)測,限副器,帶通,等構成的。紅外監(jiān)測接收到紅外信號后,會把信號送到和限幅器,限幅器把脈沖幅度控制在一定的水平。交流信號進入帶通,帶通濾波器只允許30khz到60khz的負載波通過,然后脈沖信號再通過解調電路和進入,由比較器輸出高低電平信號,還原出發(fā)射端的信號波形。但為了提高接收的靈敏度輸出的高低電平和發(fā)射端是反相的。頭有很多的種類,一般都有電源引腳、信號輸出引腳和接地引腳。根據(jù)發(fā)射端調制載波的不同應選用相應解調

34、頻率的接收頭,本設計我們采用一體化紅外接收頭1838來解調HT6221編碼芯片的編碼。其實物圖如圖3.8所示: 圖3.8 1838紅外接收頭由于頭內部也很大的增益,這樣很會容易引起干擾,因此在接收頭的電源引腳上須加上大小在22uf以上的濾波電容。本設計的紅外接收電路如圖3.9所示: 圖3.9 紅外接收電路圖其中U6為1838紅外接收頭,電容C4為濾波電容,DOUT 是解調信號的輸出端,直接與單片機的P3.2引腳即INT0中斷相連8。 解碼的重點是怎樣識別位0和位1,由于位0和位1的低電平脈寬相同但高電平脈寬不一樣。所以需要根據(jù)高電平的寬度區(qū)別位0和位1,如果從0.56ms低電平信號過后延時了0

35、.56ms以后如果能讀到低電平信號說明該位為0反之則為1,為了可靠起見延時必須介于0.56ms和1.12ms之間,否則如果該位為0讀到的已是下一位的高電平,因此我們取其中間值即(1.12ms+0.56ms)/2=0.84ms。當按下遙控器的按鍵后,便有紅外脈沖編碼信號發(fā)出,經紅外接收頭接收解碼后在其輸出端輸出檢波整形后的方波信號,然后直接輸入至單片機外部中斷進行碼信息的識別,單片機再調用相應子程序執(zhí)行對應的操作。具體解碼操作流程圖如圖3.10所示: 圖3.10 紅外接收解碼流程圖3.4 電機驅動模塊 3.4.1 步進電機的工作原理步進電機是一種將電脈沖信號轉變?yōu)榻俏灰苹蚓€位移的電機。電機轉動的

36、快慢取決于脈沖信號的頻率、轉動的圈數(shù)取決于脈沖的個數(shù),在不超載的情況下其轉動速度不受負載的影響,即給步進電機輸入一個脈沖信號,電機的轉子就轉過一個固定角度(步距角),給其輸入連續(xù)的脈沖信號步進電機就能連續(xù)轉動5。在本設計中我們采用步距角為1.8度的四相步進電機作為小車的驅動電機,其內部結構及元件圖如圖3.11所示: 圖3.11 步進電機結構和元件圖四相步進電機有著比較小的體積和轉矩,該電機共有5根引出線,分別是內部四組繞組線圈A、B、C、D的四根引出線,一根電源引出線,其采用單極性直流電源供電,使A、B、C、D四相繞組輪流供電,轉子就會沿著A、B、C、D方向轉動。其旋轉角度與脈沖數(shù)成正比,旋轉

37、頻率與脈沖頻率成正比。本設計的步進電機采用四相八拍的工作方式,即A-AB-B-BC-C-CD-D-DA-A的通電順序工作。當通電順序為A-AB-B-BC-C-CD-D-DA時電機正轉,當通電順序為DA-D-CD-C-BC-B-AB-A時電機反轉。步進電機工作時的時序波形圖如圖3.12所示: 圖3.12 步進電機工作時序波形圖 3.4.2 ULN2003芯片簡介ULN2003驅動芯片可以直接用來驅動電流小于0.5A的步進電機。ULN2003芯片是美國TI公司和Sprague公司開發(fā)的高壓大電流達林頓晶體管陣列電路具有較高的電流增益和工作電壓、較寬的溫度范圍、較強的驅動負載能力等特點,適和應用于各

38、種高速大功率的驅動系統(tǒng)中。其內部結構及引腳如圖3.13所示: 圖3.13 ULN2003芯片引腳圖其引腳說明如表3-4所示:表3-4 ULN2003芯片引腳說明 引腳 功能說明 IN1-IN7 脈沖信號輸入端(接單片機) GND 接地 OUT1-OUT7 驅動信號輸出端(接步進電機) COM 接+5V電源ULN2003驅動芯片的輸出結構是集電極開路的,所以要在輸出端接一個上拉電阻,通常單片機驅動ULN2003時,上拉2K的電阻較為合適。 3.4.3 步進電機驅動電路設計由于單片機的輸出電流太小,而步進電機需要較大的驅動電流,所以需要驅動電路來連接單片機和步進電機。本設計中我們采用四相步進電機作

39、為小車的驅動電機,用單極性直流電源供電。采用ULN2003芯片直接驅動步進電機,步進電機驅動電路如圖3.14所示:圖3.14 步進電機驅動電路ULN2003的輸入端直接與單片機的P2.4-P2.7引腳相連,單片機輸出不同的脈沖信號,這些脈沖信號經ULN2003驅動芯片放大后分別控制步進電機的啟動、停止、正轉、反轉、加速和減速。本設計中只要對步進電機的各相繞組按合適的時序通電,就能使步進電機轉動。正、反轉可由輸入不同順序的脈沖信號來控制以實現(xiàn)小車的前進和后退;我們使用兩個步進電機分別控制小車的左輪和右輪,通過單片機輸出不同頻率的脈沖使左右兩個車輪具備不同的轉速,由轉速差實現(xiàn)小車的轉向,當左側車輪

40、轉速大于右側車輪時小車右轉,當右側車輪轉速大于左側時小車左轉。3.5 避障循跡模塊本設計我們采用了紅外反射式光電傳感器、電壓比較器及一些電阻來構成障礙物檢測電路,并直接與單片機的P1.4引腳相連,其可將檢測到的模擬信號轉化為高低電平信號然后輸入到單片機,單片機根據(jù)輸入的高低電平信號來判斷是否有障礙物,若有則調用自動避障子程序控制小車做出相應的避障動作。障礙物檢測電路如圖3.15所示:圖3.15 障礙物檢測電路圖中U3紅外反射式光電傳感器是由紅外發(fā)光二級管和光敏三極管組成的,紅外發(fā)光二級管用來發(fā)射紅外線,光敏三極管用來接收被反射回來的紅外線。紅外接收/檢測器有一個內置的只允許紅外光線通過的光濾波

41、器和一個只允許38.5 kHz左右電信號通過的電子濾波器,這樣就防止了外來光源對紅外接收器的干涉。U4是電壓比較器,它能夠將輸入的模擬電壓信號轉化為高低電平信號,當3腳電平大于4腳時,輸出端1腳輸出為高電平,反之輸出為低電平。障礙物檢測電路安裝在小車前部的中間及左右兩邊,來檢測小車前方的障礙物。其障礙檢測過程如下:紅外二極管發(fā)出紅外光,如果遇到小車前面的障礙物,紅外線就會被物體反射回來并被光敏三極管吸收,此時光敏三極管導通并在輸出端輸出低電平信號至單片機,然后單片機調用尋跡避障子程序控制步進電機做出相應的避障反應,當左邊遇到障礙物時小車右轉,當右邊遇到障礙物時小車左轉。當無障礙物時,發(fā)出的紅外

42、線不被反射,光敏三極管截止,輸出高電平信號,小車繼續(xù)向前行駛9。循跡的原理和避障的原理是相同的,循跡電路安裝在小車底部,循跡是通過辨別黑白色來行走。工作過程如下:紅外發(fā)光二極管發(fā)出紅外光,當遇到黑色,不反射紅外光,比較器輸出為高電平;當遇到白線,紅外光被反射回來,比較器輸出為低電平。單片機根據(jù)輸入電平的變化判斷小車的行駛路線是否偏離,然后調用自動避障子程序實現(xiàn)小車的自動循跡,當左邊檢測到白色時小車右轉,當右邊檢測到白色時小車左轉;當兩邊檢測到的都是黑色時小車前進,當兩邊檢測到的都是白色時小車停止。3.6 轉速檢測模塊施密特觸發(fā)器是具有特殊功能的非門,當它的輸入端的電壓上升到某個值時,輸出端會立

43、即從高電平跳變?yōu)榈碗娖?而當輸入端的電壓下降到某一個值時,輸出端會立即從低電平跳變?yōu)楦唠娖?。本設計采用直射式光電檢測器、施密特觸發(fā)器、三極管和若干電阻構成的電路與單片機的P1.6引腳相連來測量小車車輪的轉速,其實物圖和電路圖如圖3.16所示: 圖3.16 透射式光電測速實物和電路圖具體的轉速檢測方法是:在小車的驅動輪的主軸上安裝一個開有十個透光槽的圓形葉片,保持葉片和驅動輪能夠同步轉動,然后在驅動輪旁安裝好直射式光電檢測器,葉片隨著車輪的轉動不斷切割紅外發(fā)射管與紅外接受管之間的光通路,當葉片轉動至透光槽與光通路重合時,光通路導通,光敏三極管通過電流,輸出端會輸出一個低電平信號,當葉片轉動至使透

44、光槽遮住時,光通路斷開,輸出端會輸出一個高電平信號。隨著車輪不斷的轉動,光通路不斷的導通和斷開,輸出端便會輸出連續(xù)的脈沖序列,測出脈沖的個數(shù)便可知葉片轉過的孔數(shù),由葉片轉過的孔數(shù)可以知道車輪轉過的圈數(shù),從而可計算出車輪轉動的轉速,然后再根據(jù)車輪半徑便可算出小車運行的速度和路程11。3.7 數(shù)據(jù)顯示模塊本設計中小車的數(shù)據(jù)顯示電路采用液晶顯示屏LCD1602,LCD1602具有8位并行2線或者3線串行兩種接口方式。LCD1602液晶顯示模塊具有體積小、功耗低、顯示內容豐富、超薄輕巧等優(yōu)點。具體的液晶顯示電路如圖3.17所示: 圖3.17 LCD液晶顯示電路電路中LCD1602與AT89C52單片機

45、使用并行數(shù)據(jù)通信。引腳1接電源電壓正極,引腳0、14、15分別接電源電壓負極,為LCD1602提供電源與背光電源;2腳接一個10K電位器用于調節(jié)背光燈光度;3、4、5腳分別接P1.0、P1.1、P1.2腳作為單片機控制信號輸入與輸出端;613腳接單片機的P0.0P0.7腳作為單片機數(shù)據(jù)信息輸入端。數(shù)據(jù)顯示的原理為:首先通過數(shù)據(jù)顯示子程序將小車的速度、路程等數(shù)據(jù)信息計算出來,然后再將這些數(shù)據(jù)信息通過單片機的P0.0-P0.7引腳直接輸出至LCD1602的DO-D7引腳8。3.8 電源模塊電源是整個小車系統(tǒng)運行的基本條件,它的性能的好壞直接決定整個系統(tǒng)運行的穩(wěn)定性和性能。小車的供電電源包含兩部分,

46、單片機控制模塊電源和電機驅動模塊電源,我們將單片機及其外圍電路和步進電機分開供電,兩者互相不影響,實現(xiàn)穩(wěn)定供電。本設計中我們采用3節(jié)4.2V鋰電池串聯(lián)共12.6V直接給步進電機供電,用于驅動小車電機,也可降至5V后給單片機及其他邏輯單元供電。這三節(jié)電池的體積和重量都比較小,便于安裝在小車底座,不會造成電機負載過大,而且價格低、電流驅動能力強。為了給單片機及其他邏輯單元供電,必須將鋰電池組的電壓降至5V,這里我們采用LM7805穩(wěn)壓芯片進行降壓,穩(wěn)壓電路如圖3.18所示:圖3.18 5V穩(wěn)壓電路第四章 系統(tǒng)軟件設計在進行微機控制系統(tǒng)設計時,除了系統(tǒng)硬件設計外,大量的工作就是如何根據(jù)每個對象的實際

47、需要設計應用程序,小車能否實現(xiàn)要求功能取決于軟件的編程是否合理。本設計采用模塊化程序設計法進行系統(tǒng)軟件的設計,主要包含主程序、避障循跡子程序、數(shù)據(jù)顯示子程序等程序模塊。由于本人水平和能力有限只完成了部分模塊的程序設計。4.1 系統(tǒng)總體程序流程圖系統(tǒng)的總體程序流程圖如圖4.1所示: 圖4.1 系統(tǒng)程序流程圖在圖4.1系統(tǒng)程序流程圖中,開始時先是系統(tǒng)的初始化,包括定時器初始化,外部中斷的初始化,液晶顯示器的初始化。其中避障循跡子程序用于控制小車自動躲避障礙和自動沿著特定的黑線行駛;數(shù)據(jù)顯示子程序主要是將測得的車輪轉速換算成小車的行駛的速度、路程等數(shù)據(jù)進而在LCD1602液晶顯示屏顯示。4.2 避障

48、循跡模塊程序設計 4.2.1 避障程序流程圖 圖4.2 避障程序流程圖圖4.2所示為小車避障程序流程圖,小車在行駛過程中由位于小車前部的四個障礙物檢測電路不斷檢測小車周圍環(huán)境,若遇到障礙物則將低電平信號輸入至單片機,然后由單片機調用避障子程序控制小車作出相應的避障動作。如果左邊遇到障礙則調用右轉子程序,右邊遇到障礙則調用左轉子程序,前方遇到障礙則調用左轉或右轉子程序,沒有遇到障礙則調用直行子程序。具體的程序請見附錄B避障子程序。 4.2.2 循跡程序流程圖 圖4.3 循跡程序流程圖圖4.3所示為循跡程序流程圖,小車在循跡行駛過程中安裝在小車底部的四個紅外反射式光電開關不斷檢測小車的行駛路線,若

49、小車偏離黑線則將檢測到的低電平信號輸入至單片機,單片機再調用循跡子程序控制小車使其沿著黑線行駛,如果小車偏向黑線左邊則調用右轉子程序,偏向黑線右邊則調用左轉子程序,在黑線上則調用直走子程序,完全偏離黑線則調用后退子程序。具體的程序請見附錄B循跡子程序。4.3數(shù)據(jù)顯示模塊程序設計 圖4.4 數(shù)據(jù)顯示程序流程圖在圖4.4數(shù)據(jù)顯示程序流程圖中,首先初始化LCD1602,然后在液晶的第一行顯示“路程: cm”,液晶第二行顯示“速度: cm/s”然后由主程序不斷調用數(shù)據(jù)顯示程序不斷刷新cm或者cm/s前面的數(shù)字實現(xiàn)實時顯示的目的。具體的程序請見附錄B數(shù)據(jù)顯示子程序。第五章 總結與展望5.1 總結本設計的

50、智能小車基本上實現(xiàn)了題目要求的各項功能,可以用遙控來控制小車的啟停、左轉、右轉、前進、倒退,小車能自動沿著黑線行駛,遇到障礙時能夠自動躲避障礙,而且可以實時顯示運行的速度、路程等數(shù)據(jù)。通過本次設計讓我學會了電子產品的設計開發(fā)過程,掌握了紅外遙控原理、步進電機的驅動原理、采用紅外反射式光電開關檢測障礙的原理、顯示原理等自己以前并不了解的新知識,對單片機的結構和其控制系統(tǒng)也有了更深的理解和認識,對于Altium Designer、Proteus等電路設計和仿真軟件的操作也更加熟練,特別是在、自己最不擅長的軟件編程方面也有了一定的提高。但是由于本人水平和能力有限,本設計中還存在一些不足之處。例如由于

51、安裝在小車上面的紅外傳感器檢測范圍有限,存在一些檢測盲區(qū),光電檢測也容易收到外界環(huán)境和太陽光的干擾,有時可能會導致小車的循跡避障功能失效;小車是利用轉速差來轉彎的但是這種方法轉彎不夠順暢也不能持續(xù)轉彎并且對電機的損耗也較大,這些都有待進一步的改進和完善。5.2 改進與展望在本設計中我們可以采用超聲波避障來代替紅外避障以減少外界干擾;多安裝幾個尋跡電路,在小車的車頭底部左右兩邊各一個,中間底部左右兩邊各一個,車尾底部左右兩邊各一個,這樣可提高小車尋跡功能的可靠性和靈敏性;通過多組速度(不同脈沖所對應的速度)的實際測試,尋找更合適的轉向速度,以提高轉向的精確度。我們還可以為小車添加語音控制模塊,用

52、語音來控制小車的一些狀態(tài),這樣將大大增加其人機交互控制的趣味性。參考文獻1張靖武,周靈彬,方曙光.單片機原理及應用M.第2版.電子工業(yè)出版社,2011:17-32.2李群芳.單片機原理接口與應用M.北京清華大學出版社,2005:12-30.3周立功.ARM嵌入式系統(tǒng)基礎教程M.第2版.北京航空航天大學出版社,2008:2-14.4鄒 彥.DSP原理及應用M.電子工業(yè)出版社,2012:10-15.5張 明.步進電機的基本原理J.機械與電子, 2007(9):83-84.6朱淑偵,侯 軒,李利民.基于89C2051的無線遙控小汽車的設計J.電腦開發(fā)與應用,2012(12):73-78.7姚陪,張李堅.基于單片機控制的智能尋跡避障小車J.機電信息,2010(12):192-193.8王 艷.基于51單片機的紅外遙控小車設計和制作J.電子制作,2010(6):11-13.9趙海蘭.基于單片機的紅外遙控智能小車的設計J.電子世界,2013(2):31-32.10宋新兵.自動控制電動小汽車的設計J,2001年全國大學生電子設計競賽一等獎.電子世界,2

溫馨提示

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

最新文檔

評論

0/150

提交評論