基于STC89C52單片機(jī)的智能循跡小車_第1頁
基于STC89C52單片機(jī)的智能循跡小車_第2頁
基于STC89C52單片機(jī)的智能循跡小車_第3頁
基于STC89C52單片機(jī)的智能循跡小車_第4頁
基于STC89C52單片機(jī)的智能循跡小車_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

-PAGE.z.PAGE1沈陽理工大學(xué)畢業(yè)設(shè)計(jì)(論文)題目:基于單片機(jī)的智能循跡小車院系:信息與控制學(xué)院專業(yè):自動(dòng)化班級**:08303111學(xué)生姓名:指導(dǎo)教師:成績:年月日-.z.摘要本文論述了基于單片機(jī)的智能循跡小車的控制過程。智能循跡是基于自動(dòng)引導(dǎo)機(jī)器人系統(tǒng),用以實(shí)現(xiàn)小車自動(dòng)識別路線,以及選擇正確的路線。智能循跡小車是一個(gè)運(yùn)用傳感器、單片機(jī)、電機(jī)驅(qū)動(dòng)及自動(dòng)控制等技術(shù)來實(shí)現(xiàn)按照預(yù)先設(shè)定的模式下,不受人為管理時(shí)能夠自動(dòng)實(shí)現(xiàn)循跡導(dǎo)航的高新科技。該技術(shù)已經(jīng)應(yīng)用于無人駕駛機(jī)動(dòng)車,無人工廠,倉庫,服務(wù)機(jī)器人等多種領(lǐng)域。本設(shè)計(jì)采用STC89C52單片機(jī)作為小車的控制核心;采用TCRT5000紅外反射式開關(guān)傳感器作為小車的循跡模塊來識別白色路面中央的黑色引導(dǎo)線,采集信號并將信號轉(zhuǎn)換為能被單片機(jī)識別的數(shù)字信號;采用驅(qū)動(dòng)芯片L298N構(gòu)成雙H橋控制直流電機(jī),其中軟件系統(tǒng)采用C程序,本設(shè)計(jì)的電路結(jié)構(gòu)簡單,容易實(shí)現(xiàn),可靠性高。關(guān)鍵詞:單片機(jī);自動(dòng)循跡;驅(qū)動(dòng)電路AbstractThispaperdiscussestheintelligenttracingelectrictrolleycontrolprocess.Automatictracingisusedtomakethecarindentifyrouteautomatically,andchoosingtherightroute,basedontheautomaticguiderobotsystem.Intelligenttracingelectrictrolleyisanadvancedtechnologytorealizeautomatictracingnavigation.Itisoutofhumanmanagementbutunderthedesignedmodethatuseoftheuseofatransducer,singlechip,motordriveandautomaticcontrol.Thistechnologyhasbeenappliedinunmannedvehicle,unmannedfactory,warehouse,servicerobotandmanyotherfields.DuringthedesignofIntelligenttracingelectrictrolley,STC89C52singleclipisusedasthecontrolcore;atthesametimewithTCRT5000reflectiveinfraredtransducerswitchtoidentifytheblackguidelineatthecentralofthewhiteroad,whichusedasthecartracingmodule,itcangatherthesignalandtransferitintodigitalsignalthatcanberecognizedbysinglechip.AndthedrivingchipL298NconstitutethedoubleHbridgeconstituteofdrivingchipL298Ncancontroldirectcurrentmotor.AmongwhichthesoftwaresystemisusingCprogram.Inanutshell,thedesignofthecircuithastheadvantagesofsimplestructure,easyimplementation,andhighreliability.Keywords:singlechipmicrocomputer;automatictracing;drivingcircuit目錄1緒論11.1智能循跡小車概述11.1.1循跡小車的發(fā)展歷程回顧11.1.2智能循跡分類21.1.3智能循跡小車的應(yīng)用31.2智能循跡小車研究中的關(guān)鍵技術(shù)42智能循跡小車總體設(shè)計(jì)方案52.1整體設(shè)計(jì)方案52.1.1系統(tǒng)設(shè)計(jì)步驟12997\h52.1.2系統(tǒng)基本組成52.2整體控制方案確定63系統(tǒng)的硬件設(shè)計(jì)8HYPERLINK\l"_Toc321413001"3.1單片機(jī)電路的設(shè)計(jì)83.1.1單片機(jī)的功能特性描述83.1.2晶振電路93.1.3復(fù)位電路93.2光電傳感器模塊103.2.1傳感器分布113.3電機(jī)驅(qū)動(dòng)電路7\h123.3.1L298N引腳結(jié)構(gòu)133.3.2電機(jī)驅(qū)動(dòng)原理13小車運(yùn)動(dòng)邏輯15HYPERLINK\l"_Toc321413011"4系統(tǒng)的軟件設(shè)計(jì)164.1軟件設(shè)計(jì)的流程164.2本系統(tǒng)的編譯器175系統(tǒng)的總體調(diào)試225.1硬件的測試225.2系統(tǒng)的軟件調(diào)試22結(jié)論24HYPERLINK\l"_Toc321413018"致25參考文獻(xiàn)26附錄A原理圖及PCB圖27附錄B程序代碼PAGEREF_Toc321413021\h32附錄C硬件實(shí)物圖37-.z.沈陽理工大學(xué)應(yīng)用技術(shù)學(xué)院學(xué)士學(xué)位論文1緒論進(jìn)入二十一世紀(jì),隨著計(jì)算機(jī)技術(shù)和科學(xué)技術(shù)的不斷進(jìn)步,機(jī)器人技術(shù)較以往已經(jīng)有了突飛猛進(jìn)的提高,智能循跡小車即帶有視覺和觸覺的小車就是其中的典型代表。1.1智能循跡小車概述智能循跡小車又被稱為AutomatedGuidedVehicle,簡稱AGV,是二十世紀(jì)五十年代研發(fā)出來的新型智能搬運(yùn)機(jī)器人。智能循跡小車是指裝備如電磁,光學(xué)或其他自動(dòng)導(dǎo)引裝置,可以沿設(shè)定的引導(dǎo)路徑行駛,安全的運(yùn)輸車。工業(yè)應(yīng)用中采用充電蓄電池為主要的動(dòng)力來源,可通過電腦程序來控制其選擇運(yùn)動(dòng)軌跡以及其它動(dòng)作,也可把電磁軌道黏貼在地板上來確定其行進(jìn)路線,無人搬運(yùn)車通過電磁軌道所帶來的訊息進(jìn)行移動(dòng)與動(dòng)作,無需駕駛員操作,將貨物或物料自動(dòng)從起始點(diǎn)運(yùn)送到目的地。AGV的另一個(gè)特點(diǎn)是高度自動(dòng)化和高智能化,可以根據(jù)倉儲貨位要求、生產(chǎn)工藝流程等改變而靈活改變行駛路徑,而且改變運(yùn)行路徑的費(fèi)用與傳統(tǒng)的輸送帶和傳送線相比非常低廉。AGV小車一般配有裝卸機(jī)構(gòu),可與其它物流設(shè)備自動(dòng)接口,實(shí)現(xiàn)貨物裝卸與搬運(yùn)的全自動(dòng)化過程。此外,AGV小車依靠蓄電池提供動(dòng)力,還有清潔生產(chǎn)、運(yùn)行過程中無噪音、無污染的特點(diǎn),可用在工作環(huán)境清潔的地方。1.1.1循跡小車的發(fā)展歷程回顧隨著社會(huì)的不斷發(fā)展,科學(xué)技術(shù)水平的不斷提高,人們希望創(chuàng)造出一種來代替人來做一些非常危險(xiǎn),或者要求精度很高等其他事情的工具,于是就誕生了機(jī)器人這門學(xué)科。世界上誕生第一臺機(jī)器人誕生于1959年,至今已有50多年的歷史,機(jī)器人技術(shù)也取得了飛速的發(fā)展和進(jìn)步,現(xiàn)已發(fā)展成一門包含:機(jī)械、電子、計(jì)算機(jī)、自動(dòng)控制、信號處理,傳感器等多學(xué)科為一體的性尖端技術(shù)。循跡小車共歷了三代技術(shù)創(chuàng)新變革:第一代循跡小車是可編程的示教再現(xiàn)型,不裝載任何傳感器,只是采用簡單的開關(guān)控制,通過編程來設(shè)置循跡小車的路徑與運(yùn)動(dòng)參數(shù),在工作過程中,不能根據(jù)環(huán)境的變化而改變自身的運(yùn)動(dòng)軌跡。支持離線編程的第二代循跡小車具有一定感知和適應(yīng)環(huán)境的能力,這類循跡小車裝有簡單的傳感器,可以感覺到自身的的運(yùn)動(dòng)位置,速度等其他物理量,電路是一個(gè)閉環(huán)反饋的控制系統(tǒng),能適應(yīng)一定的外部環(huán)境變化。第三代循跡小車是智能的,目前在研究和發(fā)展階段,以多種外部傳感器構(gòu)成感官系統(tǒng),通過采集外部的環(huán)境信息,精確地描述外部環(huán)境的變化。智能循跡小車,能獨(dú)立完成任務(wù),有其自身的知識基礎(chǔ),多信息處理系統(tǒng),在結(jié)構(gòu)化或半結(jié)構(gòu)化的工作環(huán)境中,根據(jù)環(huán)境變化作出決策,有一定的適應(yīng)能力,自我學(xué)習(xí)能力和自我組織的能力。為了讓循跡小車能獨(dú)立工作,一方面應(yīng)具有較高的智慧和更廣泛的應(yīng)用,研究各種新機(jī)傳感器,另一方面,也掌握多個(gè)多類傳感器信息融合的技術(shù),這樣循跡小車可以更準(zhǔn)確,更全面的獲得所處環(huán)境的信息[1]。1.1.2智能循跡分類AGV從發(fā)明至今已經(jīng)有50多年的歷史,隨著應(yīng)用領(lǐng)域范圍的不斷擴(kuò)大,其種類和形式也變得更加多樣化。一般根據(jù)行駛的導(dǎo)航方式將智能循跡小車分為以下幾種類型:(1)電磁感應(yīng)式電磁感應(yīng)式引導(dǎo)一般在地面上,沿預(yù)定路徑埋電線,當(dāng)高頻電流通過導(dǎo)線,電線周圍產(chǎn)生電磁場流動(dòng),AGV小車上安裝兩個(gè)對稱的電磁感應(yīng)傳感器,他們收到的電磁信號差異可以反映的AGV偏離程度路徑的程度。

AGV自動(dòng)化控制系統(tǒng),基于這種偏差值,以控制車輛的轉(zhuǎn)向,連續(xù)的動(dòng)態(tài)的閉環(huán)控制設(shè)置能夠保證AGV對設(shè)定路徑的穩(wěn)定自動(dòng)跟蹤。在目前商業(yè)用途的AGV中,特別是大型和中型小車,絕大多數(shù)都采用電磁感應(yīng)導(dǎo)航。(2)激光式安裝有可旋轉(zhuǎn)的激光掃描器的AGV,可安裝在墻壁或有高反射激光定位標(biāo)志的支柱上或者路徑上運(yùn)行,AGV依靠激光掃描器發(fā)射激光束,然后接收由四周定位標(biāo)志反射回的激光束,車載計(jì)算機(jī),計(jì)算出當(dāng)前車輛的位置和運(yùn)動(dòng)方向,通過內(nèi)置的數(shù)字地圖和校準(zhǔn)位置相比,以實(shí)現(xiàn)自動(dòng)處理。目前,這種AGV類型的應(yīng)用比較廣泛?;谕瑯拥脑?,如果激光掃描儀被紅外線發(fā)射器,或超聲波發(fā)射取代,激光制導(dǎo)的AGV小車可以轉(zhuǎn)變?yōu)榧t外引導(dǎo)和超聲引導(dǎo)的AGV。(3)視覺式視覺引導(dǎo)式AGV是的迅速發(fā)展和比較成熟的AGV,這種AGV配備CCD攝像機(jī),傳感器和車載電腦,在車載計(jì)算機(jī)中設(shè)置有AGV欲行駛路徑周圍環(huán)境圖像數(shù)庫。在AGV的行駛過程中,相機(jī)得到的圖像與圖像數(shù)據(jù)庫進(jìn)行比較,以確定當(dāng)前位置和車輛周圍的圖像信息并對駕駛下一步作出決定。這種AGV小車并不需要設(shè)置任何的人工物理路徑,所以在理論上具有靈活性,在計(jì)算機(jī)圖像采集,存儲和處理技術(shù)飛速發(fā)展的今天,這種類型的AGV實(shí)用性越來越強(qiáng)。此外,還有鐵磁陀螺慣性引導(dǎo)式AGV、光學(xué)引導(dǎo)式AGV等多種形式的AGV[2]。1.1.3智能循跡小車的應(yīng)用智能循跡小車發(fā)展歷史及主要應(yīng)用場所如下:(1)倉儲業(yè)1954年,來自美國南卡羅來納州的MercuryMotorFreight公司成為第一批把AGV小車的應(yīng)用到倉庫的使用者,來實(shí)現(xiàn)出入庫貨物的自動(dòng)處理。至今世界上有超過2100個(gè)廠家把大約2萬臺大型或小型的AGV小車應(yīng)用到自己的倉庫中。中國的海爾集團(tuán)在2000年把9臺AGV小車投產(chǎn)到了自己的倉庫區(qū),形成一個(gè)靈活的AGV自動(dòng)數(shù)據(jù)庫處理系統(tǒng),輕松地完成了每天至少33500的儲存和裝卸貨物的任務(wù)。(2)制造業(yè)在制造業(yè)的的生產(chǎn)線中AGV小車大顯身手,快速,精確,靈活的完成材料的運(yùn)送任務(wù)。由多臺AGV小車組成的物流運(yùn)輸處理系統(tǒng),較人工搬運(yùn)系統(tǒng)來說更靈活,運(yùn)輸路線可以根據(jù)生產(chǎn)過程及時(shí)調(diào)整,使一條生產(chǎn)線,生產(chǎn)十幾個(gè)產(chǎn)品,大大提高了生產(chǎn)的靈活性,企業(yè)的競爭力。在1974年瑞典的沃爾沃卡爾馬的汽車組裝廠,提高了運(yùn)輸系統(tǒng)的靈活性,使用以AGV小車為載運(yùn)工具的裝配線,采用該裝配線后,減少了20%裝配時(shí)間、減少了39%組裝錯(cuò)誤,減少了57%投資資金回收時(shí)間以及減少了5%的員工費(fèi)用。目前,在世界主要的汽車生產(chǎn)廠家,如通用、豐田、克萊斯勒、大眾AGV小車已被廣泛應(yīng)用。近年來,作為CIMS(ComputerIntegratedManufacturingSystems,直譯為基于計(jì)算機(jī)的現(xiàn)代集成制造系統(tǒng))的基礎(chǔ)搬運(yùn)工具,AGV已經(jīng)深入到機(jī)械加工,家電制造,微電子制造,煙草等行業(yè),生產(chǎn)業(yè)和加工業(yè)已成為AGV小車使用最廣泛的領(lǐng)域。(3)郵局、圖書館、港口碼頭和機(jī)場在郵局,圖書館,碼頭和機(jī)場候機(jī)樓等人口密集的公眾場所,存在著大量的物品的運(yùn)送工作,充滿不定性和動(dòng)態(tài)性強(qiáng)的特點(diǎn),搬運(yùn)過程往往也很單一。AGV有著可并行工作、自動(dòng)化、智能化和處理靈活的特點(diǎn),可以很好的滿足這些場合的運(yùn)輸要求。1983年瑞典的大斯得哥爾摩郵局,1988年日本東京的多摩郵局,1990年中國上海的郵政相繼開始使用AGV小車來完成郵品的搬運(yùn)工作。在荷蘭的鹿特丹港口,50輛被稱為"院子里的拖拉機(jī)”的AGV小車每天都在把集裝箱從船邊運(yùn)送到幾百米以外的倉庫中。(4)煙草、醫(yī)藥、化工、食品對于處理一些需要在清潔、安全、無排放污染等其他特殊環(huán)境要求的產(chǎn)品生產(chǎn)如煙草、制藥、食品、化工等產(chǎn)品時(shí)應(yīng)考慮AGV小車的應(yīng)用。在全國許多卷煙企業(yè),如青島頤中集團(tuán)、玉溪紅塔集團(tuán)、紅河卷煙廠、淮陰卷煙廠,應(yīng)用激光引導(dǎo)式AGV完成托盤貨物的搬運(yùn)工作。(5)危險(xiǎn)場所和特種行業(yè)在軍事方面,以AGV小車為基礎(chǔ)有著自動(dòng)駕駛和檢測功能的設(shè)備,可用于戰(zhàn)場偵察和掃雷,英國軍方正在開發(fā)MINDER偵察系統(tǒng),這是一種具有地雷探測、銷毀和路線驗(yàn)證能力自動(dòng)型偵察車。在鋼鐵廠,AGV小車負(fù)責(zé)爐料運(yùn)輸,大大降低了工人們的勞動(dòng)強(qiáng)度。在核電廠的核儲存地點(diǎn)使用AGV小車,以避免輻射的危險(xiǎn)。AGV小車可在黑暗環(huán)境中,準(zhǔn)確、可靠的運(yùn)輸物料[3]。1.2智能循跡小車研究中的關(guān)鍵技術(shù)現(xiàn)在全世界越來越多的國家都在做著研究智能化、多樣化的自動(dòng)汽車導(dǎo)航的工作。自動(dòng)汽車導(dǎo)航是一個(gè)非常復(fù)雜的系統(tǒng),它不僅應(yīng)具有正常的運(yùn)動(dòng)功能的成分,而且還應(yīng)具有任務(wù)分析,路徑規(guī)劃,信息感知,自主決策等類似人類的智能行為。人類可以利用自己的聽覺、視覺、味覺、觸覺等功能獲取事物的信息,人類的大腦再根據(jù)已經(jīng)掌握的知識對這些信息進(jìn)行綜合分析,從而全面了解認(rèn)知事物。這樣一個(gè)認(rèn)識事物、分析事物和處理信息的過程稱之為信息融合過程。多傳感器信息融合的基本原理就是模仿人類大腦的這個(gè)過程,得到一個(gè)對復(fù)雜對象的一致性解釋或結(jié)論。多傳感器信息融合是協(xié)調(diào)多個(gè)分布在不同地點(diǎn),相同或不同種類的傳感器所提供的局部不完整觀測量信息加以綜合,協(xié)調(diào)使用,消除可能存在的冗余和矛盾,并加以互補(bǔ),以減少不確定性,得到對物體或環(huán)境的一致性描述的過程[4]。多傳感器信息融合具有許多性能上的優(yōu)點(diǎn):(1)增加了系統(tǒng)的生存能力;(2)減少了信息的模糊性;(3)擴(kuò)展了采集數(shù)據(jù)覆蓋范圍;(4)增加了可信度;(5)改善了探測性能;(6)提高了空間的分辨力;(7)改善了系統(tǒng)的可靠性(8)信息的低成本性[5]。本文主要由五章組成,第1章為緒論,主要講述循跡小車的發(fā)展歷程及在目前所應(yīng)用領(lǐng)域中的作用。第2章為總體規(guī)劃智能循跡小車系統(tǒng)的設(shè)計(jì),包含主系統(tǒng)流程圖。第3章是系統(tǒng)的硬件設(shè)計(jì),其中包含單片機(jī)電路的設(shè)計(jì),光電傳感器模塊和電機(jī)驅(qū)動(dòng)電路。第4章為系統(tǒng)的軟件設(shè)計(jì),主要介紹的是軟件實(shí)現(xiàn)過程的框圖。第5章是對硬件和軟件的調(diào)試,最終保證了系統(tǒng)的正常運(yùn)行。2智能循跡小車總體設(shè)計(jì)方案2.1整體設(shè)計(jì)方案本系統(tǒng)采用簡單明了的設(shè)計(jì)方案。通過高發(fā)射功率紅外光電二極管和高靈敏度光電晶體管組成的傳感器循跡模塊判斷黑線路經(jīng),然后由STC89C52通過IO口控制L298N驅(qū)動(dòng)模塊改變兩個(gè)直流電機(jī)的工作狀態(tài),最后實(shí)現(xiàn)小車循跡。2.1.1系統(tǒng)設(shè)計(jì)步驟(1)根據(jù)設(shè)計(jì)要求,確定控制方案。(2)利用Protel99se設(shè)計(jì)合理的硬件原理圖。(3)畫出程序流程圖,使用C語言進(jìn)行編程,運(yùn)用WAVE6000進(jìn)行模擬調(diào)試。(4)將各元件焊接在PCB板上,并將程序燒錄到單片機(jī)內(nèi)。(5)進(jìn)行調(diào)試以實(shí)現(xiàn)控制功能。2.1.2系統(tǒng)基本組成智能循跡小車主要由STC89C52單片機(jī)電路、TCRT5000循跡模塊、L298N驅(qū)動(dòng)模塊、直流電機(jī)、小車底板、電源模塊等組成。HH橋驅(qū)動(dòng)模塊直流電機(jī)紅外光電循跡傳感器模塊電源模塊單片機(jī)電路路徑小車圖2.1智能循跡小車控制系統(tǒng)結(jié)構(gòu)框圖(1)單片機(jī)電路:采用STC89C52芯片作為控制單元。STC89C52單片機(jī)具有低成本、高性能、抗干擾能力強(qiáng)、超低功耗、低電磁干擾,并且與傳統(tǒng)的8051單片機(jī)程序兼容,無需改變硬件,支持在系統(tǒng)編程技術(shù)。使用ISP可不用編程器直接在PCB板上燒錄程序,修改、調(diào)速都很方便。(2)TCRT5000循跡模塊:采用脈沖調(diào)制反射式紅外發(fā)射接收器作為循跡傳感器,調(diào)制信號帶有交流分量,可減少外界的大量干擾。信號采集部分就相當(dāng)于智能循跡小車的眼睛,由它完成黑線識別并生產(chǎn)高、低平信號傳送到控制單元,然后單片機(jī)生成指令來控制驅(qū)動(dòng)模塊來控制兩個(gè)直流電機(jī)的工作狀態(tài),來完成自動(dòng)循跡。JY043W型光電管和電壓比較器LM393為核心部分,再加上必要的外圍電路。(3)L298N驅(qū)動(dòng)模塊:采用L298N作為電機(jī)驅(qū)動(dòng)芯片。L298N具有高電壓、大電流、響應(yīng)頻率高的全橋驅(qū)動(dòng)芯片,一片L298N可以分別控制兩個(gè)直流電機(jī),并且?guī)в锌刂剖鼓芏?。該電機(jī)驅(qū)動(dòng)芯片驅(qū)動(dòng)能力強(qiáng)、操作方便,穩(wěn)定性好,性能優(yōu)良。L298N的使能端可以外接電平控制,也可以利用單片機(jī)進(jìn)行軟件控制,滿足各種復(fù)雜電路的需要。另外,L298N的驅(qū)動(dòng)功率較大,能夠根據(jù)輸入電壓的大小輸出不同的電壓和功率,解決了負(fù)載能力不夠的問題。(4)直流電機(jī):采用雙直流電動(dòng)機(jī)。直流電動(dòng)機(jī)的控制方法比異步電動(dòng)機(jī)簡單,只需給電機(jī)兩條控制線加上適當(dāng)?shù)碾妷壕湍苁闺姍C(jī)旋轉(zhuǎn),在正常工作電壓范圍,電壓越高直流電機(jī)轉(zhuǎn)速越高。直流電動(dòng)機(jī)調(diào)速方法分為兩種:一種是直接調(diào)整電壓,另一種通過PWM調(diào)速。PWM調(diào)速就是使加在直流電機(jī)兩端的電壓波形為矩形波,改變矩形波的占空比就能實(shí)現(xiàn)電壓的改變,從而實(shí)現(xiàn)電機(jī)轉(zhuǎn)速的改變。(5)電源模塊:由三個(gè)串聯(lián)1.5V干電池作為電源。通過7805穩(wěn)壓芯片穩(wěn)壓,通過0.1uF和470μF電容進(jìn)行濾波。2.2整體控制方案確定圖2.2為循跡小車的系統(tǒng)控制框圖。引導(dǎo)線是小車跟蹤的目標(biāo),檢測系統(tǒng)檢測車的相對路徑,然后將此信息輸入到單片機(jī),單片機(jī)處理此信息后,將控制命令輸出到驅(qū)動(dòng)模塊,以控制小車的直流電機(jī),保證小車快速平穩(wěn)地沿預(yù)先設(shè)定好的路線行駛。黑色引導(dǎo)線黑色引導(dǎo)線單片機(jī)光電循跡光電循跡傳感器驅(qū)動(dòng)模塊和直流電機(jī)驅(qū)動(dòng)模塊和直流電機(jī)圖2.2智能循跡小車系統(tǒng)控制框圖采用3個(gè)1.5V的可充電池組作為主電源。STC89C52單片機(jī)作為主控制器。因?yàn)樾≤囯姍C(jī)內(nèi)部裝有減速齒輪組,所以不需考慮調(diào)速功能,采用電機(jī)驅(qū)動(dòng)芯片L298N控制直流電機(jī),而不使用步進(jìn)電機(jī)。L298N是利用TTL電平進(jìn)行控制,通過改變芯片控制端的輸入電平,即可以對電機(jī)進(jìn)行正轉(zhuǎn)、反轉(zhuǎn)和停止操作,亦能滿足直流減速電機(jī)的要求,用該芯片作為電機(jī)驅(qū)動(dòng)具有的操作方便、穩(wěn)定性好等優(yōu)點(diǎn)。用光敏電阻組成光敏探測器。光敏電阻的阻值可以跟隨周圍環(huán)境光線的變化而變化。當(dāng)光線照射到白線上面時(shí),光線發(fā)射強(qiáng)烈,光線照射到黑線上面時(shí),光線發(fā)射較弱。這樣單片機(jī)和循跡傳感器組成了一個(gè)帶有反饋信號的系統(tǒng)。3系統(tǒng)的硬件設(shè)計(jì)3.1單片機(jī)電路的設(shè)計(jì)一個(gè)單片機(jī)應(yīng)用系統(tǒng)的硬件電路設(shè)計(jì)包含兩部分內(nèi)容:一是系統(tǒng)擴(kuò)展,即單片機(jī)內(nèi)部的功能單元,如ROM、RAM、I/O、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等不能滿足應(yīng)用系統(tǒng)的要求時(shí),必須在片外進(jìn)行擴(kuò)展,選擇適當(dāng)?shù)男酒O(shè)計(jì)相應(yīng)的電路;二是系統(tǒng)的配置,即按照系統(tǒng)功能要求配置外圍設(shè)備,如鍵盤、顯示器、A/D、D/A轉(zhuǎn)換器等。3.1.1單片機(jī)的功能特性描述單片機(jī)又稱單片微控制器,它不是完成*一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。概括的講:一塊芯片就成了一臺計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜。單片機(jī)內(nèi)部也有和電腦功能類似的模塊,比如CPU,內(nèi)存,并行總線,還有和硬盤作用相同的存儲器件。單片機(jī)是一種集成電路芯片,采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器CPU隨機(jī)存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統(tǒng)、定時(shí)器/計(jì)時(shí)器等功能(可能還包括顯示驅(qū)動(dòng)電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個(gè)小而完善的計(jì)算機(jī)系統(tǒng)。本課題選擇了STC公司的生產(chǎn)的STC89C52單片機(jī)。STC89C52是一種低功耗、高性能CMOS8位微控制器,是帶8K字節(jié)閃爍可編程可檫除只讀存儲器。一個(gè)芯片上擁有8位CPU,并且在系統(tǒng)可編程Flash。STC89C52提供給為眾多嵌入式控制應(yīng)用系統(tǒng)高靈活、超有效的解決方案。STC89C52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,512字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,內(nèi)置4KBEEPROM,兩個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級中斷結(jié)構(gòu),全雙工串行口。此外,空閑模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。表3.1STC89C52單片機(jī)和AT89S52單片機(jī)的對比STC89C52單片機(jī)AT89S52單片機(jī)序存儲空間8K字節(jié)8K字節(jié)數(shù)據(jù)存儲空間512字節(jié)256字節(jié)EEPROM存儲空間內(nèi)帶4K字節(jié)無是否可以直接使用串口下載可以不可以3.1.2晶振電路在STC89S52單片機(jī)上內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳*TAL1和*TAL2分別是此放大器的輸入端和輸出端。時(shí)鐘可以由內(nèi)部方式產(chǎn)生或外部方式產(chǎn)生。在1和*TAL2引腳上外接定時(shí)元件,內(nèi)部振蕩器就產(chǎn)生自激振蕩。定時(shí)元件通常采用石英晶體和電容組成的并聯(lián)諧振回路。從*TAL1接入,如圖3.2所示。由于外部時(shí)鐘信號經(jīng)過二分頻觸發(fā)后作為外部時(shí)鐘電路輸入的,所以對外部時(shí)鐘信號的占空比沒有要求。本設(shè)計(jì)選用的是12MHZ無源晶振、2個(gè)22pF電容,使得一個(gè)機(jī)器周期是1μs。晶振的作用是為系統(tǒng)提供基本的時(shí)鐘信號,而兩個(gè)電容則是起到并聯(lián)諧振的作用,如果沒電容,振蕩電路會(huì)因?yàn)闆]有回路而停振,電路不能正常工作。圖3.2單片機(jī)晶振電路圖3.1.3復(fù)位電路復(fù)位電路的作用是在上電或復(fù)位過程中,控制CPU的復(fù)位狀態(tài):這段時(shí)間內(nèi)讓CPU保持復(fù)位狀態(tài),而不是一上電或剛復(fù)位完畢就工作,防止CPU發(fā)出錯(cuò)誤的指令、執(zhí)行錯(cuò)誤操作,也可以提高電磁兼容性能。89系列單片機(jī)的復(fù)位信號是從RST引腳輸入到芯片內(nèi)的施密特觸發(fā)器中的。施密特觸發(fā)電路是一種波形整形電路,當(dāng)任何波形的信號進(jìn)入電路時(shí),輸出在正、負(fù)飽和之間跳動(dòng),產(chǎn)生方波或脈波輸出。不同于比較器,施密特觸發(fā)電路有兩個(gè)臨界電壓且形成一個(gè)滯后區(qū),可以防止在滯后范圍內(nèi)之噪聲干擾電路的正常工作。如遙控接收線路,傳感器輸入電路都會(huì)用到它整形。當(dāng)系統(tǒng)處于正常工作狀態(tài)時(shí),且振蕩器穩(wěn)定后,如果RST引腳上有一個(gè)高電平并維持2個(gè)機(jī)器周期(24個(gè)振蕩周期)以上,則CPU就可以響應(yīng)并將系統(tǒng)復(fù)位。本設(shè)計(jì)采用的電容值為10μF的電容和電阻采用1.5KΩ和200Ω的電阻。如圖3.3所示上電后,由于電容充電,使RST持續(xù)一段高電平時(shí)間。當(dāng)單片機(jī)已在運(yùn)行之中時(shí),按下復(fù)位鍵也能使RST持續(xù)一段時(shí)間的高電平,從而實(shí)現(xiàn)上電且開關(guān)復(fù)位的操作[6][7]。圖3.3單片機(jī)復(fù)位電路圖3.2光電傳感器模塊循跡光電傳感器原理,就是利用黑線對紅外線不同的反射能力通過光敏二極管或光敏三極管,接收反射回的不同光強(qiáng)信號,把不同光強(qiáng)轉(zhuǎn)換為電流信號,最后通過電阻,轉(zhuǎn)換為單片機(jī)可識別的高低電平。光電傳感器實(shí)現(xiàn)循跡的基本電路如3.4所示。圖3.4循跡傳感器電路圖循跡傳感器工作原理:TC端是傳感器工作控制端,為高電平時(shí),發(fā)光二極管不工作,傳感器休眠,為低電平時(shí),傳感器啟動(dòng)。Signal端為檢測信號輸出,當(dāng)遇到黑線,黑線吸收大量的紅外線,反射的紅外線很弱,光敏三極管不導(dǎo)通,Signal輸出高電平;當(dāng)遇到白線,與黑線相反,反射的紅外線很強(qiáng),使光敏三極管導(dǎo)通,Signal輸出低電平。這種探測方法,即利用紅外線在不同顏色的表面特征,具有不同的反射性能,汽車行駛過程中接收地面的紅外光。當(dāng)紅外光遇到白色路線,地板發(fā)生漫反射,安裝在小型車的反射光接收器接收;如果是遇到黑色路線,紅外光將被黑線吸收,安裝在小車上的接收管沒有收到紅外光??刂破鲿?huì)根據(jù)是否收到反射的紅外光為判斷依據(jù)來確定的黑線的位置和小車的路線。紅外探測器距離通常是不應(yīng)超過15厘米的。紅外發(fā)射和接收紅外線感應(yīng)器,可以使自己或直接使用集成紅外探頭。調(diào)整左右傳感器之間的距離,兩探頭距離約等于黑線寬度最合適,選擇寬度為3–5厘米的黑線。該傳感器的靈敏度是可調(diào)的,傳感器有時(shí)遇到黑線卻不能送出相應(yīng)的信號,通過調(diào)節(jié)傳感器上的可調(diào)電阻,適當(dāng)?shù)脑龃蠡驕p小可改變靈敏度。另外,循跡傳感器的放置也是有講究的,有兩種方法,一種是兩個(gè)都是放置在黑線內(nèi)側(cè)緊貼黑線邊緣,第二種是都放置在黑線的外側(cè),同樣緊貼黑線邊緣。本設(shè)計(jì)采用第二種方法。單片機(jī)燒錄程序后,就可以執(zhí)行循跡指令了。如果小車向前行駛時(shí)向左偏離了黑線,則右邊傳感器會(huì)產(chǎn)生一個(gè)高電平,單片機(jī)判斷這個(gè)信號,然后向右拐回到黑線。兩傳感器輸出信號為低電平時(shí),小車前進(jìn)。如果小車向右偏離黑線,左邊傳感器產(chǎn)生一個(gè)高電平,單片機(jī)判斷這個(gè)信號,然后向左拐。這樣,小車一定不會(huì)偏離黑線。若兩個(gè)光電傳感器同時(shí)輸出的信號為高電平,即單片機(jī)判斷的都為高電平時(shí),小車向前直走。3.2.1傳感器分布傳感器通過信號采集,向單片機(jī)提供信息。因此傳感器合理的布局很重要,傳感器布局需要考慮小車行駛過程中信息檢測的準(zhǔn)確度和前瞻性,能使在相同數(shù)量的傳感器下,獲得更多的數(shù)據(jù)。傳感器的布局一般有以下三種:一字型布局,M型布局和活動(dòng)型布局。一字型布局即所有傳感器在同一直線上。一字型布局分為等距排布型和非等距排布型。等距排布型不利于采集準(zhǔn)確的彎道信息??紤]到弧度信息采集的連貫性,非等距排布采用等角原則,即在垂直平分線上方處*點(diǎn),以等角的引射線與直線的交點(diǎn)就是傳感器的分布點(diǎn),此種方法檢測連貫簡單,更容易控制小車。M型布局即傳感器的布局成M型,M型布局最適合檢測多彎道的軌跡。由于傳感器不在同一直線上,故小車轉(zhuǎn)彎時(shí),左右兩邊后部的傳感器有較大的采樣空間,兩邊前端的傳感器則對采集的信號有更好的前瞻性,M型中間底部的傳感器擇更好的確定小車的位置。整個(gè)布局有利于在彎道處提高小車速度。但相對一字型布局,M型布局容易產(chǎn)生不穩(wěn)定信號,從而產(chǎn)生信號震蕩,影響小車行駛的穩(wěn)定性?;顒?dòng)型布局采用矩陣模式,將傳感器排布成矩陣形狀,通過對不同位置傳感器采集到信息的選擇來適應(yīng)各種不同的跑道。這樣對不同路況有更強(qiáng)的適應(yīng)性。此種方案可調(diào)性大,但此種方法需要較多傳感器,冗余較大,比較笨重,增加小車的重量,不利于小車的加減速。最終決定采用M型布局方法來對4個(gè)傳感器進(jìn)行布局,這種布局方法的前瞻性最好。3.3電機(jī)驅(qū)動(dòng)電路本設(shè)計(jì)采用L298N電機(jī)專用驅(qū)動(dòng)芯片帶動(dòng)兩個(gè)12V的直流電動(dòng)機(jī)。直流電機(jī)由定子和轉(zhuǎn)子兩大部分組成。直流電機(jī)運(yùn)行時(shí)靜止不動(dòng)的部分稱為定子,定子的主要作用是產(chǎn)生磁場,由機(jī)座、主磁極、換向極、端蓋、軸承和電刷裝置等組成。運(yùn)行時(shí)轉(zhuǎn)動(dòng)的部分稱為轉(zhuǎn)子,其主要作用是產(chǎn)生電磁轉(zhuǎn)矩和感應(yīng)電動(dòng)勢,是直流電機(jī)進(jìn)行能量轉(zhuǎn)換的樞紐,通常又稱為電樞,由轉(zhuǎn)軸、電樞鐵心、電樞繞組、換向器等組成。其中L298N是ST公司的產(chǎn)品,比較常見的是15腳Multiwatt封裝的L298N,內(nèi)部包含4通道邏輯驅(qū)動(dòng)電路??梢则?qū)動(dòng)兩個(gè)直流電機(jī)或驅(qū)動(dòng)兩個(gè)二相電機(jī),也可單獨(dú)驅(qū)動(dòng)一個(gè)四相電機(jī),輸出電壓最高可達(dá)50V。直接通過電源來調(diào)節(jié)輸出電壓,直接通過單片機(jī)的IO端口提供信號,使得電路簡單,使用更方便。L298N可接受標(biāo)準(zhǔn)的TTL邏輯電平信號VSS,VSS通常接4.5~7V的電壓。4腳VS接電壓源,VS可接電壓范圍VIH為2.5~46V。L298N芯片輸出電流可達(dá)2.5A,可驅(qū)動(dòng)電感負(fù)載。L298N是一個(gè)內(nèi)部有兩個(gè)H橋的高電壓大電流全橋式驅(qū)動(dòng)芯片,可以用來驅(qū)動(dòng)直流電動(dòng)機(jī)、步進(jìn)電動(dòng)機(jī)。使用標(biāo)準(zhǔn)邏輯電平信號控制,直接連接單片機(jī)管腳,具有兩個(gè)使能控制端,使能端在不受輸入信號影響的情況下不允許器件工作。L298N有一個(gè)邏輯電源輸入端,使內(nèi)部邏輯電路部分在低電壓下工作。3.3.1L298N引腳結(jié)構(gòu)圖3.5L298N驅(qū)動(dòng)芯片表3.3L298N引腳編號與功能引腳編號名稱功能1電流傳感器A在該引腳和地之間接小阻值電阻可用來檢測電流2輸出引腳1內(nèi)置驅(qū)動(dòng)器A的輸出端1,接至電機(jī)A3輸出引腳2內(nèi)置驅(qū)動(dòng)器A的輸出端2,接至電機(jī)A4電機(jī)電源端電機(jī)供電輸入端,電壓可達(dá)46V5輸入引腳1內(nèi)置驅(qū)動(dòng)器A的邏輯控制輸入端16使能端A內(nèi)置驅(qū)動(dòng)器A的使能端7輸入引腳2內(nèi)置驅(qū)動(dòng)器A的邏輯控制輸入端28邏輯地邏輯地9邏輯電源端邏輯控制電路的電源輸入端為5V10輸入引腳3內(nèi)置驅(qū)動(dòng)器B的邏輯控制輸入端111使能端B內(nèi)置驅(qū)動(dòng)器B的使能端12輸入引腳4內(nèi)置驅(qū)動(dòng)器B的邏輯控制輸入端213輸出引腳3內(nèi)置驅(qū)動(dòng)器B的輸出端1,接至電機(jī)B14輸出引腳4內(nèi)置驅(qū)動(dòng)器B的輸出端2,接至電機(jī)B15電流傳感器B在該引腳和地之間接小阻值電阻可用來檢測電流3.3.2電機(jī)驅(qū)動(dòng)原理電路的形狀很像字母H。四個(gè)三極管就是H橋的四條垂直線,而電機(jī)就是H中的橫線。圖3.6L298N內(nèi)部H橋驅(qū)動(dòng)電路圖3.6為一個(gè)典型的直流電機(jī)的控制電路。被命名為"H橋驅(qū)動(dòng)電路”主要是因?yàn)殡娐返男螤詈芟褡帜窰。四個(gè)三極管就是H橋的四條垂直線,而電機(jī)就是H中的橫線。如圖所示,H橋電機(jī)驅(qū)動(dòng)電路包含四個(gè)三極管和一個(gè)電機(jī)。電機(jī)運(yùn)轉(zhuǎn),必須遵循導(dǎo)通對角線上的一對三極管?;诓煌龢O管對的導(dǎo)通情況可以控制電機(jī)的轉(zhuǎn)向,電流可可以從左至右流過電機(jī),也可以從右至左流過電機(jī)。如圖3.6所示,當(dāng)Q1管和Q4管導(dǎo)通時(shí),電流就從電源正極經(jīng)Q1從左至右流過電機(jī),然后再經(jīng)Q4回到電源負(fù)極,該流向的電流將驅(qū)動(dòng)電機(jī)順時(shí)針轉(zhuǎn)動(dòng)。下面分析另一對三極管Q2和Q3,當(dāng)兩個(gè)三極管同時(shí)導(dǎo)通的情況下,電流將從右至左流過電機(jī)。從而驅(qū)動(dòng)電機(jī)沿逆時(shí)針方向轉(zhuǎn)動(dòng)。驅(qū)動(dòng)電機(jī)時(shí),保證H橋上兩個(gè)同側(cè)的三極管不會(huì)同時(shí)導(dǎo)通非常重要。如果三極管Q1和Q2同時(shí)導(dǎo)通,則電流就會(huì)從正極穿過兩個(gè)三極管直接回到負(fù)極。此時(shí),電路中除了三極管外沒有其他任何負(fù)載,因此電路上的電流就可能達(dá)到最大值,該電流僅受電源性能限制,可能燒壞三極管?;谏鲜鲈颍趯?shí)際驅(qū)動(dòng)電路中通常要用硬件電路方便地控制三極管的開關(guān)。圖3.7所示就是基于這種考慮的改進(jìn)電路,它在基本H橋電路的基礎(chǔ)上增加了四個(gè)二極管來保護(hù)電路。四個(gè)與門同一個(gè)"使能”導(dǎo)通信號相接,這樣,用這一個(gè)信號就能控制整個(gè)電路的開關(guān)。采用以上方法,電機(jī)的運(yùn)轉(zhuǎn)就只需要用三個(gè)信號控制:兩個(gè)方向信號和一個(gè)使能信號。如果DIR-L信號為"0”,DIR-R信號為"1”,并且使能信號是"1”,則三極管Q1和Q4導(dǎo)通,電流從左至右流經(jīng)電機(jī);如果DIR-L信號變?yōu)椋?1”,而DIR-R信號變?yōu)?0”,則Q2和Q3將導(dǎo)通,電流則反向流過電機(jī)。圖3.7L298N驅(qū)動(dòng)芯片和直流電機(jī)接線圖小車運(yùn)動(dòng)邏輯表3.4小車運(yùn)動(dòng)邏輯使能端A使能端B左電機(jī)右電機(jī)左電機(jī)

運(yùn)行狀態(tài)右電機(jī)

運(yùn)行狀態(tài)小車

運(yùn)行狀態(tài)IN1IN2IN3IN4111010正轉(zhuǎn)正轉(zhuǎn)前行111001正轉(zhuǎn)反轉(zhuǎn)右轉(zhuǎn)111011正轉(zhuǎn)停止以右電機(jī)為中心原地右轉(zhuǎn)110110反轉(zhuǎn)正轉(zhuǎn)左轉(zhuǎn)110101反轉(zhuǎn)反轉(zhuǎn)后退111110停止正轉(zhuǎn)以左電機(jī)為中心原地左轉(zhuǎn)電機(jī)控制邏輯如下:以電機(jī)A為例,當(dāng)使能端ENA為高電平時(shí),如果輸入引腳IN1為低電平而輸入引腳IN2為高電平,電機(jī)A反轉(zhuǎn);如果輸入引腳IN1為高電平而輸入引腳IN2為低電平,電機(jī)A正轉(zhuǎn)。4系統(tǒng)的軟件設(shè)計(jì)4.1軟件設(shè)計(jì)的流程目前,52系列單片機(jī)使用的編程語言主要有匯編語言和C語言這兩種。最接近機(jī)器的語言是匯編語言,其常用來編制與系統(tǒng)硬件相關(guān)的程序,如訪問I/O口、中斷處理程序等,它是一種最快而又最有效的語言,在對于程序的空間和時(shí)間要求很高的場合中使用匯編語言是最佳的選擇,然而匯編語言也有其自身的缺點(diǎn),比如程序開發(fā)周期較長、浮點(diǎn)運(yùn)算處理復(fù)雜、程序移植性差等不利因素。在程序設(shè)計(jì)過程中C語言編程設(shè)計(jì)思想被稱為模塊化程序設(shè)計(jì)思想。有的時(shí)候?yàn)榱擞行У赝瓿扇蝿?wù),把所要完成的任務(wù)分割成若干個(gè)相互獨(dú)立但相互又仍然有所聯(lián)系的模塊,這些模塊使得任務(wù)變得相對簡單,對外的數(shù)據(jù)交換相對簡單、容易編寫、容易檢測,容易閱讀和維護(hù)。本設(shè)計(jì)采用C語言來編譯程序。模塊化結(jié)構(gòu)程序的設(shè)計(jì),可以使系統(tǒng)軟件便于調(diào)試與優(yōu)化,也使其他人更好地理解和閱讀系統(tǒng)的程序設(shè)計(jì)。因此,軟件的設(shè)計(jì)上,運(yùn)用了模塊化程序的結(jié)構(gòu)對軟件進(jìn)行設(shè)計(jì),使得程序變得更加直觀易懂。程序的主要模塊有:主程序、定時(shí)溢出中斷服務(wù)程序、外部中斷服務(wù)程序。隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機(jī)的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)MCS-51系列單片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部分組合在一起。掌握這一軟件的使用對于使用51系列單片機(jī)的學(xué)者來說是十分必要的,如果使用C語言編程,則Keil幾乎就是不二之選,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)事半功倍。KeilC51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級語言的優(yōu)勢[8]。4.2本系統(tǒng)的編譯器Keil編譯器軟件KeilC51單片機(jī)軟件開發(fā)系統(tǒng)可用于編輯C或匯編源文件。然后分別由C51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件與庫文件一起經(jīng)LIB51連接定位生成絕對目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的He*文件,由仿真器使用直接對目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如EPROM中。打開Keil軟件后,出現(xiàn)如圖4.1所示界面。圖4.1Keil軟件主界面點(diǎn)擊Project--NewProject??梢孕陆ㄒ粋€(gè)工程,如圖4.2所示。圖4.2Keil軟件新建工程界面點(diǎn)擊會(huì)出現(xiàn)的對話框中選擇工程存在路徑(如圖4.3所示),單擊"保存”后,出現(xiàn)界面。在此界面上選擇電路板上所用的單片機(jī)型號(如圖4.4所示),單擊"確定”。圖4.3保存路徑界面圖4.4選擇電路板上所用的單片機(jī)型號界面設(shè)置完成后,軟件會(huì)提示是否將8051上電初始化程序添加入工程。這個(gè)一般選"否”。這樣就建立好了一個(gè)空的51工程(如圖4.5所示)。圖4.5建立空的51工程界面點(diǎn)擊File--New,便建立了一個(gè)空的文本框(如圖4.6所示)。圖4.6建立空文本框界面到現(xiàn)在為止,就可以開始在里面輸入代碼了。保存時(shí)注意:如果是用C語言寫的程序,則將文本保存成*.c(如圖4.7所示)。圖4.7保存文本改寫界面將寫完的程序添加到工程里面,如圖4.8所示,在左邊ProjectWorkspace里的SourceGroup1上右擊,選擇AddFilestoGroup’SourceGroup1’。在打開的對話框中,選擇剛存的文件路徑和對應(yīng)的擴(kuò)展名。此時(shí),程序就添加進(jìn)了這個(gè)工程。圖4.8添加工程界面下一步,就開始編譯剛輸入進(jìn)去的代碼。接著,Keil會(huì)打出下面的提示:0Error(s),0Warning(s).建立工程的時(shí)候,默認(rèn)是不生成HE*文件的,得在編譯做如下設(shè)置:在ProjectWorkspace里Target1上右擊,選擇"OptionsforTarget‘Target1”。出現(xiàn)如圖4.9所示對話框,選擇"Output”按圖示,將箭頭所指的多選框勾上,點(diǎn)"確定”?,F(xiàn)在再點(diǎn)擊重新編譯,就會(huì)在工程所在文件夾里生成HE*文件[9][10]。圖4.9生成HE*文件界面軟件設(shè)計(jì)系統(tǒng)主程序流程圖如圖4.10所示。圖4.10系統(tǒng)主程序流程圖5系統(tǒng)的總體調(diào)試5.1硬件的測試按照之前設(shè)計(jì)好的智能循跡小車原理圖,詳細(xì)計(jì)算系統(tǒng)中各個(gè)元件的參數(shù),選擇相應(yīng)器件,制作實(shí)際電路板。然后選取萬用表的200歐姆檔來測試電路板。用紅、黑表筆來測試電路板上每條走線,如果測量的電阻值非常小時(shí),證明走線沒有斷開,當(dāng)其電阻值很大時(shí),證明該條走線斷了,應(yīng)該重新制作走線,使電路板在電氣上得到正確地連接。(1)晶振電路的測試在單片機(jī)正常運(yùn)行的必要條件是單片機(jī)系統(tǒng)的時(shí)鐘穩(wěn)定正常。實(shí)際中,因?yàn)楦鞣N原因?qū)е孪到y(tǒng)時(shí)鐘不正常而出現(xiàn)系統(tǒng)無法正常運(yùn)行的情況時(shí)有,因此系統(tǒng)時(shí)鐘是否振是通電檢查的首要環(huán)節(jié)。在系統(tǒng)通電的狀況下,用萬用表的直流電壓檔(20V),分別測量*TAL1和*TAL2引腳的電壓,看是否正常,在調(diào)試過程中,測得電壓*TAL1引腳應(yīng)為2.05V,*TAT2應(yīng)為2.15V。(2)復(fù)位電路的測試復(fù)位不正常也會(huì)導(dǎo)致系統(tǒng)不能工作。如果復(fù)位引腳始終為高電平,系統(tǒng)將始終處于復(fù)位狀態(tài);如果始終為低電平,不能產(chǎn)生復(fù)位所需的高電平信號脈沖,則系統(tǒng)也可能無法正常工作。單片機(jī)正常工作時(shí),RST復(fù)位引腳應(yīng)為0V,按下復(fù)位按鍵時(shí),復(fù)位引腳為高電平5V左右[11]。5.2系統(tǒng)的軟件調(diào)試在軟件調(diào)試中,使用功能強(qiáng)大且的WAVE6000軟件進(jìn)行軟件編譯與調(diào)試,使用MicrocontrollerISPSoftware及其配套的單片機(jī)對程序進(jìn)行燒錄。軟件調(diào)試的流程是這樣的:先分別對主要的功能程序模塊進(jìn)行模擬仿真調(diào)試;然后再將各程序模塊組織起來進(jìn)行統(tǒng)調(diào)[12]。軟件的燒錄:第一步:安裝并運(yùn)行MicrocontrollerISPSoftware軟件;第二步:點(diǎn)擊Options欄的selectdevice選項(xiàng);這時(shí)出現(xiàn)一個(gè)對話窗口,按圖選擇后,點(diǎn)擊OK按鍵,如出現(xiàn)所示窗口,則說明電腦與開發(fā)板沒連接好或單片機(jī)沒插好等,需重裝檢查硬件連接,如果沒有出現(xiàn)則說明初始化成功。第三步:點(diǎn)擊File欄的LoadBuffer選項(xiàng)打開已經(jīng)編譯好的HE*文件。點(diǎn)擊載入,出現(xiàn)對話框點(diǎn)確定,再點(diǎn)擊圖"A”字圖標(biāo),出現(xiàn)對話框后,按軟件默認(rèn)選項(xiàng),點(diǎn)擊"OK”-"OK”―"OK”燒錄完成;否則重新檢查硬件連接后再重新燒錄。通過軟件檢查出程序中出現(xiàn)了許多的問題。經(jīng)過多次的模塊子程序的修改,一步一步的完善程序,來解決出現(xiàn)的問題。在軟件的調(diào)試過程中主要遇到的問題如下:(1)在測試中遇到小車遇到黑線電機(jī)不動(dòng).解決:首先使用試測儀對電路進(jìn)行測試,觀察是否存在漏焊、虛焊、或電子元件損壞。(2)輸入程序后,小車循跡不靈敏,還有就是當(dāng)拐彎度數(shù)過大,小車速度過快的時(shí)候,小車偶爾偏離軌道。解決:首先通過調(diào)節(jié)傳感器上的可調(diào)電阻,適當(dāng)?shù)脑龃蠡驕p小電阻可改變靈敏度??梢越鉀Q循跡不迅速的問題。結(jié)論本課題研究的內(nèi)容主要是智能小車的循跡系統(tǒng)。以實(shí)驗(yàn)組裝小車為基礎(chǔ),使用了4個(gè)光電傳感器來探測周圍環(huán)境,同時(shí)對采集到的數(shù)據(jù)信息進(jìn)行融合。取得了以下成果:(1)小車可以實(shí)現(xiàn)按照預(yù)定軌道在無外部環(huán)境影響或改變時(shí),小車將一直沿著黑色標(biāo)記線運(yùn)動(dòng)。(2)經(jīng)過二十次的測試證明,當(dāng)四個(gè)循跡傳感器呈M型布局時(shí)最適合檢測多彎道的軌跡。由于傳感器不在同一直線上,故小車轉(zhuǎn)彎時(shí),左右兩邊后部的傳感器有較大的采樣空間,兩邊前端的傳感器則對采集的信號有更好的前瞻性。整個(gè)布局有利于在彎道處提高小車速度。但相對一字型布局,M型布局容易產(chǎn)生不穩(wěn)定信號,從而產(chǎn)生信號震蕩,影響小車行駛的穩(wěn)定性。(3)小車保留了擴(kuò)展功能。循跡小車在完成設(shè)計(jì)預(yù)想的前提下,主要考慮了車體結(jié)構(gòu)設(shè)計(jì)的簡單化,降低了制作成本,使之更具有普及性。由于設(shè)計(jì)要求并不復(fù)雜,沒有在電路中增加冗余的功能,但是保留了各種硬件接口和軟件子程序接口,方便以后的擴(kuò)展和進(jìn)一步的開發(fā)。智能循跡小車屬于應(yīng)用開發(fā)項(xiàng)目,涉及了多種學(xué)科,由于本課題的試驗(yàn)性和不完善性。智能循跡小車在以下兩個(gè)方面還有提升的空間:(1)環(huán)境信息采集功能:環(huán)境信息采集的實(shí)時(shí)性和完整性。(2)增加避障控制功能:包括避障的精確性和靈活度這兩個(gè)指標(biāo)。致在論文完成之際,謹(jǐn)向劉義杰老師致以最誠摯的感謝。本文的研究工作從始至終都得到了劉老師的熱心指導(dǎo)和關(guān)心。從劉老師的身上,我不但學(xué)到了老師在課上傳授的專業(yè)知識,而且也學(xué)到了怎樣自學(xué),更學(xué)到了許多做人的道理。所謂"送人一魚,僅供一飯之需;而授之以漁,則終生受用無窮?!备兄x學(xué)長們的指導(dǎo),是他們耐心的講解,讓我明白了制作畢業(yè)論文的思路和方法,在最后還給我提出了許多寶貴的建議讓我畢業(yè)設(shè)計(jì)的整個(gè)過程少走了很多彎路,讓我的論文得以順利完成。感謝家人,他們的支持和理解,讓我能夠安心完成畢業(yè)設(shè)計(jì),是我最堅(jiān)強(qiáng)的后盾。最后感謝在百忙之中抽出時(shí)間評閱論文的各位老師和學(xué)者。由于知識水平有限,錯(cuò)誤在所難免,懇請各位老師批評指正。謝謝大家!參考文獻(xiàn)[1]羅志增,蔣靜坪編著.循跡小車感覺與多信息融合[M].:機(jī)械工業(yè)出版社,2003:1-10.[2]蔡自興編著.中國的智能循跡小車研究[J].莆田學(xué)院學(xué)報(bào),2002,9(3):36-39.[3]吳林編著.智能循跡小車主題型號工作的回顧[J].循跡小車技術(shù)與應(yīng)用,2001:6-9.[4]歐青立,何刻忠等編著.室外智能循跡小車的發(fā)展及其關(guān)鍵技術(shù)研究[J].循跡小車,2000,22(6):519-526[5]楊鵑.多信息融合技術(shù)在移動(dòng)循跡小車避障系統(tǒng)中的應(yīng)用[D].:哈爾濱理工大學(xué).2007.[6]恒盛杰資訊編著.Protel電路板設(shè)計(jì)從入門到精通.第1版.中國青年出版社.2006:1-148[7]江思敏,陳明編著.Protel電路設(shè)計(jì)教程.第1版.清華大學(xué)出版社,2006:1-296[8]陳曉莉,張俊濤.KEILC51單片機(jī)仿真器的設(shè)計(jì).第二版.陜西科技大學(xué)出版社,2006:19-20.[9]楊素行編著.模擬電子技術(shù)基礎(chǔ)簡明教程.第2版.高等教育出版社,2005:532-547[10]余孟嘗編著.?dāng)?shù)字電子技術(shù)基礎(chǔ)簡明教程.第2版.高等教育出版社.1999:1-361[11]李全利,遲榮強(qiáng)編著.單片機(jī)原理及接口技術(shù).第1版.高等教育出版社,2004:14-191[12]王守中編著.51單片機(jī)開發(fā)入門與典型實(shí)例.第1版.人民郵電出版社,2007:103-108附錄A原理圖及PCB圖系統(tǒng)總設(shè)計(jì)電路圖單片機(jī)原理圖TCRT5000傳感器模塊原理圖L298電機(jī)控制驅(qū)動(dòng)模塊原理圖PCB圖:單片機(jī)PCB圖L298N電機(jī)驅(qū)動(dòng)模塊PCB圖附錄B程序代碼/智能循跡小車的#C程序/#include<reg52.h>/*********************第一部分*********************///以下是電機(jī)驅(qū)動(dòng)芯片L298N管腳位聲明sbitPWM1=P1^0;//電機(jī)A/B使能端sbitPWM2=P1^1;sbitIN1=P1^2;//電機(jī)控制端sbitIN2=P1^3;sbitIN3=P1^4;sbitIN4=P1^5;sbitRP1=P2^0;//傳感器管腳位聲明sbitRP2=P2^1;sbitRP3=P2^2;sbitRP4=P2^3;intcount1,count2;//用于中斷計(jì)數(shù)//延時(shí)函數(shù),延時(shí)z秒voiddelay(intz){int*,y;for(*=z;*>0;*--pfor(y=124;y>0;y--);}/*********************第二部分電機(jī)控制子函數(shù)*********************/voidforward1()//電機(jī)1前進(jìn){IN1=0;IN2=1;}voidforward2()//電機(jī)2前進(jìn){IN3=0;IN4=1;}voidback1()//電機(jī)1后退{(lán)IN1=1;IN2=0;}voidback2()//電機(jī)2后退{(lán)IN3=1;IN4=0;}/*********************電機(jī)的速度控制用PWM調(diào)速*********************/voidspeed(intt1,intsd1,intt2,intsd2){if(cnt1<sd1)//電機(jī)1PWM調(diào)速PWM1=1;elsePWM1=0;if(cnt2<sd2)//電機(jī)2PWM調(diào)速PWM2=1;elsePWM2=0;}/**************電機(jī)的前進(jìn)、左轉(zhuǎn)、右轉(zhuǎn)控制***************/voidturn(intt1,intsd1,intt2,intsd2){forward1();forward2();speed(cnt1,sd1,cnt2,sd2);}/*********************電機(jī)的后退控制************

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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

提交評論