白昂松-基于51單片機(jī)控制的自動(dòng)停泊小車的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
白昂松-基于51單片機(jī)控制的自動(dòng)停泊小車的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
白昂松-基于51單片機(jī)控制的自動(dòng)停泊小車的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
白昂松-基于51單片機(jī)控制的自動(dòng)停泊小車的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
白昂松-基于51單片機(jī)控制的自動(dòng)停泊小車的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

./本科專業(yè)學(xué)生畢業(yè)設(shè)計(jì)〔論文題目:基于51單片機(jī)控制的自動(dòng)停泊小車的設(shè)計(jì)與實(shí)現(xiàn)系別:計(jì)算機(jī)工程系專業(yè):電子信息工程年級(jí):2010級(jí)學(xué)號(hào):姓名:白昂松指導(dǎo)教師:博.摘要在當(dāng)今社會(huì),汽車更加成為了千家萬(wàn)戶必不可少的工具。然而,對(duì)于大多數(shù)人來(lái)說(shuō),將車子停車入車位都是件頭疼的事,尤其是停入那種前后各一輛車的車位,也叫順列式車位,新手對(duì)這種車位最為恐懼。如果稍有不慎,那么停車時(shí)發(fā)生刮蹭的小事故的幾率非常高。為了解決駕駛員們的這一難題,自動(dòng)停泊技術(shù)走進(jìn)了人們的視野中。此次設(shè)計(jì)采用STC89C52RC單片機(jī)作為控制核心,由L298N電機(jī)驅(qū)動(dòng)模塊來(lái)控制小車的運(yùn)動(dòng)軌跡,利用超聲波模塊進(jìn)行與障礙之間距離的檢測(cè),還使用了紅外避障模塊對(duì)障礙進(jìn)行檢測(cè),最后使用了LCD1602顯示屏對(duì)數(shù)據(jù)進(jìn)行顯示,以提示駕駛員。整個(gè)系統(tǒng)先由電機(jī)驅(qū)動(dòng)模塊控制小車移動(dòng),期間由紅外避障模塊進(jìn)行障礙物檢測(cè),如果檢測(cè)到障礙,超聲波模塊則開始測(cè)量距離并顯示在LCD液晶屏上,并且小車停止移動(dòng)。上述流程循環(huán)至小車停入庫(kù),最后由超聲波傳感器測(cè)量小車與后方障礙物的距離,并最終做出調(diào)整。整個(gè)過(guò)程由單片機(jī)進(jìn)行數(shù)據(jù)處理,是一種既方便又安全的停車方式。論文中首先提出了整體方案,然后在對(duì)STC89C52RC單片機(jī)開發(fā)及運(yùn)用的基礎(chǔ)上對(duì)各個(gè)模塊的工作原理及其特性進(jìn)行了分析與介紹,并加以說(shuō)明。在論文中還對(duì)系統(tǒng)的軟件結(jié)構(gòu)進(jìn)行介紹。在對(duì)硬件工作原理的理解為前提條件,用C語(yǔ)言編程來(lái)實(shí)現(xiàn)系統(tǒng)的功能。關(guān)鍵詞:超聲波傳感器;STC89C52RC單片機(jī);自動(dòng)停泊;C語(yǔ)言AbstractNowadays,automobilehasbecomeanessentialtoolforeveryfamily.Almosteveryfamilyhastheirowncar.however,howtoparkingacarisaheadachethingformanypeople,especiallyparkingtothecolumnspaces.Theparkingscratchesaccidentisveryhigh.Inordertosolvethedifficulties,automaticberthingtechnologyintopeople'svision.ThisdesignusestheSTC89C52RCsingle-chipmicrocomputerascontrolcore,byL298Nmotordrivermoduletocontrolthemovementofthecar,usingtheultrasonicmoduleandthedistancebetweentheobstacledetection,alsousedtheinfraredobstacleavoidancemoduletodetectobstacles,finallyusestheLCD1602displayscreentodisplaythedata.Thewholesystemmoduletocontrolthecardrivenbyamotortomovefirst,duringtheobstacledetectionbyinfraredobstacleavoidancemodule,ifdetectedobstacle,ultrasonicmodulebegantomeasuredistanceanddisplayedintheLCDscreen,andthecarstopmoving.Theprocesscycletothecarstoppedwithinthelibrary,andfinallythetrolleyandtherearobstacledistanceismeasuredbytheultrasonicsensor,andeventuallymakeadjustments.Thewholeprocessbysingle-chipcomputerfordataprocessing,itisaconvenientandsafewayofparking.Thethesisfirstputsforwardtheoverallplan,andthenbasedonSTC89C52RCMCUdevelopmentandapplication,andexplained.Inthepaperalsointroducesthesoftwarestructureofthesystem.Onthepremiseofunderstandingoftheworkingprincipleofthehardwareconditions,usingClanguageprogrammingtorealizethefunctionofthesystem.KeyWords:ThetransducerSTC89C52RCSCMAutomaticparkingTheClanguage目錄22645第一章引言 198151.1研究背景及發(fā)展現(xiàn)狀 1217801.2研究目的及意義 1187221.3研究容 120441第二章方案的論證及設(shè)計(jì) 2102432.1自動(dòng)泊車系統(tǒng)的設(shè)計(jì)要求 2234972.2系統(tǒng)的主要功能 218458第三章自動(dòng)泊車系統(tǒng)的硬件設(shè)計(jì) 4304453.1自動(dòng)停泊小車的硬件系統(tǒng) 4120473.2STC89C52單片機(jī)的電路圖及引腳說(shuō)明 464113.3L298N電機(jī)驅(qū)動(dòng)模塊 7172503.4超聲波傳感器模塊 10279423.5紅外避障模塊 1242043.6LCD1602液晶顯示 1413332第四章自動(dòng)泊車系統(tǒng)的軟件設(shè)計(jì) 1648954.1開發(fā)軟件 161674.1.1Keil軟件的介紹 1676844.1.2STC_ISP軟件介紹 17169584.2自動(dòng)泊車系統(tǒng)主程序 1756524.3L298N電機(jī)驅(qū)動(dòng)程序 19309024.4超聲波測(cè)距程序 1959734.5紅外避障模塊程序 2113014.6LCD1602液晶顯示程序 2118279第五章自動(dòng)停泊小車的測(cè)試 2425708結(jié)論 263423致 2720145參考文獻(xiàn) 2825000附錄 2916816附錄一 2915809附錄二 36.第一章引言1.1研究背景及發(fā)展現(xiàn)狀在當(dāng)今社會(huì),科技不斷發(fā)展和更新,逐漸形成了家有一車的趨勢(shì),擁有一輛自己的汽車成為了當(dāng)今社會(huì)人們生活中的重要一部分。然而擁有了自己的愛車之后,許多棘手的問(wèn)題也都隨之而來(lái)。最重要的是考取駕照,考取駕照時(shí),倒庫(kù)和移庫(kù)作為必考科目之一,有一定的道理。只要不開車就要停車,如果作為一名新手或者倒車技術(shù)還不夠硬的駕駛者,這無(wú)疑是最折磨人的事情,導(dǎo)致發(fā)生愛車小規(guī)模摩擦等不必要的麻煩。為了解決這種情況的發(fā)生,各大汽車廠商研發(fā)出了自動(dòng)泊車功能,自動(dòng)泊車逐漸進(jìn)入了人們的視野之中,并廣泛被大眾使用。1.2研究目的及意義伴隨著汽車的普及和人們物質(zhì)文化水平的提高,自動(dòng)停泊小車正迅速地走進(jìn)人們的生活中來(lái),自動(dòng)泊車系統(tǒng)不但給人們帶來(lái)方便,也讓停車成為了一種享受。自動(dòng)泊車作為一個(gè)強(qiáng)大的控制系統(tǒng),對(duì)距離的檢測(cè)和車輛行駛速度的把握能力要遠(yuǎn)遠(yuǎn)強(qiáng)于駕駛者的手動(dòng)控制。自動(dòng)泊車是由處理器,檢測(cè)系統(tǒng)和控制系統(tǒng)組成。先由檢測(cè)系統(tǒng)來(lái)檢測(cè)汽車周圍的環(huán)境和汽車自身狀況,然后傳出到處理器,對(duì)數(shù)據(jù)進(jìn)行處理。最后由控制系統(tǒng)來(lái)控制汽車的行動(dòng)方式和軌跡,從而達(dá)到自動(dòng)停車的功能。在此過(guò)程中,駕駛員需要按下啟動(dòng)自動(dòng)停泊裝置的按鈕即可,雙手可完全脫離方向盤既舒適又簡(jiǎn)單。1.3研究容本次設(shè)計(jì)就是利用所學(xué)的單片機(jī)知識(shí)設(shè)計(jì)一款具有自動(dòng)停泊功能的小車,對(duì)小車進(jìn)行自動(dòng)倒入車位、測(cè)量安全距離和對(duì)駕駛員的危險(xiǎn)距離提示等功能進(jìn)行完善,并且參照各大汽車制造商研發(fā)出來(lái)的自動(dòng)泊車功能,對(duì)自己的小車進(jìn)行完善與改進(jìn),并與生活接軌做出一款既能豐富自己知識(shí)面又能應(yīng)用到現(xiàn)實(shí)生活中的設(shè)計(jì)。研究的容有:具有自動(dòng)倒車與停泊,對(duì)切入車位的角度和車輛行駛的速度進(jìn)行控制;超聲波檢測(cè)距離,并將距離呈現(xiàn)給駕駛者,提供距離信息給駕駛員;危險(xiǎn)距離提示,給予駕駛員提醒,使駕駛員作出相應(yīng)判斷。并將這一系列的功能用基于單片機(jī)的小車來(lái)實(shí)現(xiàn)。第二章方案的論證及設(shè)計(jì)2.1自動(dòng)泊車系統(tǒng)的設(shè)計(jì)要求整個(gè)系統(tǒng)應(yīng)用51單片機(jī)作為處理數(shù)據(jù)的核心部位,并利用其它各部件實(shí)現(xiàn)側(cè)方位停車,與距離檢測(cè),危險(xiǎn)提示等模塊來(lái)實(shí)現(xiàn)此次自動(dòng)停泊小車的設(shè)計(jì)。應(yīng)對(duì)各個(gè)模塊、各部件結(jié)構(gòu)進(jìn)行熟悉了解,對(duì)代碼進(jìn)行編寫和優(yōu)化,以及外圍傳感器的驅(qū)動(dòng)和測(cè)距模塊所使用的相關(guān)電氣化元器件的工業(yè)要求。首先要確定小車開啟自動(dòng)停泊模式的位置,然后計(jì)算好距離、角度和速度然后進(jìn)行倒車,利用小車后面的紅外模塊對(duì)障礙物進(jìn)行檢測(cè),確保倒車過(guò)程能順利實(shí)現(xiàn)。完成倒車后利用超聲波模塊檢測(cè)車尾與后面障礙物的距離,并顯示在LCD顯示屏上,最后對(duì)位置進(jìn)行調(diào)整。整個(gè)過(guò)程中要計(jì)算好車與停車位的參數(shù),比如:車身長(zhǎng)度與寬度,入庫(kù)時(shí)車與障礙形成的角度,停車的長(zhǎng)度與寬度,還有小車實(shí)現(xiàn)功能時(shí)的位置。2.2系統(tǒng)的主要功能本次設(shè)計(jì)的自動(dòng)停泊小車具有以下功能:1、自動(dòng)將小車停泊到停車位中〔列式停車位。2、LCD1602距離顯示:先輸出超聲波模塊所測(cè)出的距離。3、紅外避障:對(duì)障礙物進(jìn)行探測(cè)。4、超聲波測(cè)距:測(cè)量小車與后方障礙物的距離。5、蜂鳴器報(bào)警提示:進(jìn)行危險(xiǎn)狀態(tài)提示。系統(tǒng)功能圖如下圖2-1所示。圖2-1系統(tǒng)功能圖用圖的方式可以展示出本次設(shè)計(jì):基于51單片機(jī)的自動(dòng)停泊小車設(shè)計(jì)的基本工作原理,輸入輸出部分。超聲波傳感器和紅外傳感器能夠讓車更加規(guī)的完成倒車動(dòng)作,而LCD1602液晶屏和蜂鳴器也能讓駕駛者更加順利地得到實(shí)時(shí)數(shù)據(jù),并且完成倒車。第三章自動(dòng)泊車系統(tǒng)的硬件設(shè)計(jì)3.1自動(dòng)停泊小車的硬件系統(tǒng)在本次的畢業(yè)設(shè)計(jì)中自動(dòng)停泊小車的硬件上主要使用了:STC89C52RC的單片機(jī)、超聲波傳感器、紅外線避障傳感器、L298N電機(jī)驅(qū)動(dòng)模塊以及小車部件等。將自動(dòng)泊車系統(tǒng)應(yīng)用于小車上,使普通小車轉(zhuǎn)變成具有自動(dòng)停泊功能的小車并能模擬自動(dòng)泊車的基本過(guò)程。自動(dòng)停泊小車的硬件框圖如下圖3-1所示。圖3-1自動(dòng)停泊小車的硬件框圖圖3-1表示自動(dòng)泊車系統(tǒng)應(yīng)用在小車上時(shí),各個(gè)輸入、采集數(shù)據(jù)的模塊的工作狀態(tài)以及通過(guò)單片機(jī)計(jì)算處理后的作出的數(shù)據(jù)輸出和相應(yīng)的電機(jī)驅(qū)動(dòng)狀態(tài)的展現(xiàn)。3.2STC89C52單片機(jī)的電路圖及引腳說(shuō)明STC89C52單片機(jī)是美國(guó)ATMEL公司生產(chǎn)的低電壓,高性能CMOS8位單片機(jī),片含8KBYTES的可反復(fù)擦寫的FLASH只讀程序存儲(chǔ)器和256BYTES的隨機(jī)數(shù)據(jù)存儲(chǔ)器〔RAM,器件采用ATMEL公司的高密度,非易失性存儲(chǔ)技術(shù)生產(chǎn),與標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及8052產(chǎn)品引腳兼容。功能強(qiáng)大的STC89C52單片機(jī)適合于許多較為復(fù)雜的控制應(yīng)用場(chǎng)合[11]。引腳圖如圖3-2所示:圖3-2STC89C52RC引腳圖主要特性如下:增強(qiáng)型8051單片機(jī),6時(shí)鐘/機(jī)器周期和12時(shí)鐘/機(jī)器周期可以任意選擇,兼容MCS51兼容系統(tǒng);8k可反復(fù)擦寫<大于1000次>FLASHROM;256x8bit部RAM;工作電壓:5.5V~3.3V〔5V單片機(jī)/3.8V~2.0V〔3V單片機(jī);工作頻率圍:0~40MHz,相當(dāng)于普通8051的0~80MHz,實(shí)際工作頻率可達(dá)48MHz;用戶應(yīng)用程序空間為8K字節(jié);時(shí)鐘頻率0-24MHz;雙向32個(gè)I/O口復(fù)位后為:P1/P2/P3/P4是準(zhǔn)雙向口/弱上拉,P0口是漏極開路輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為I/O口用時(shí),需加上拉電阻;ISP〔在系統(tǒng)可編程/IAP〔在應(yīng)用可編程,無(wú)需專用編程器,無(wú)需專用仿真器,可通過(guò)串口〔RxD/P3.0,TxD/P3.1直接下載用戶程序,數(shù)秒即可完成一片;EEPROM功能;看門狗功能;3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷,即定時(shí)器T0、T1、T2;2個(gè)外部中斷源,共8個(gè)中斷源;通用異步串行口〔UART,還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè)UART;工作溫度圍:-40~+85℃〔工業(yè)級(jí)/0~75℃〔商業(yè)級(jí)PDIP封裝。STC89C52RC單片機(jī)的工作模式:掉電模式:典型功耗<0.1μA,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序;空閑模式:典型功耗2mA;正常工作模式:典型功耗4Ma~7mA;STC89C52RC引腳功能說(shuō)明:40個(gè)引腳按其功能可以分為以下三類;電源及時(shí)鐘引腳——Vcc、Vss;XTAL1、XTAL2;控制引腳——PSEN、ALE/PROG、EA/Vpp、RESET;I/O口引腳——P0、P1、P2、P3,為四個(gè)八位I/O口的外部引腳。P0口是一個(gè)雙功能的八位并行口,字節(jié)地址為80H,位地址為80H~87H。端口的各位具有完全相同但又相互獨(dú)立的電路結(jié)構(gòu)。P0口作為雙功能口〔地址/數(shù)據(jù)復(fù)用口和通用I/O口,當(dāng)P0口用作地址/數(shù)據(jù)復(fù)用口時(shí),是一個(gè)真正的雙向口,用作與外部?jī)?chǔ)存器的連接,輸出低八位地址和輸出/輸入8位數(shù)據(jù)。當(dāng)P0口作為通用I/O口時(shí),需要在片外接上拉電阻,此時(shí)端口不存在高阻抗?fàn)顟B(tài),因此是一個(gè)準(zhǔn)雙向口;當(dāng)作為通用的I/O口輸入時(shí),應(yīng)先向端口輸出鎖存器寫入1。P0口可驅(qū)動(dòng)8個(gè)LS型TTL負(fù)載。P1端口〔P1.0~P1.7,1~8引腳:八位,準(zhǔn)雙向I/O口,在部具有自帶的上拉電阻。P1的輸出緩沖器可驅(qū)動(dòng)〔吸收或者輸出電流方式4個(gè)TTL輸入。對(duì)端口寫入"1”時(shí),通過(guò)部的上拉電阻把端口拉到高電位,這是可用作輸入口。P1口作輸入口使用時(shí),因?yàn)橛胁可侠娮?那些被外部拉低的引腳會(huì)輸出一個(gè)電流〔I。此外,P1.0和P1.1還可以作為定時(shí)器/計(jì)數(shù)器2的外部技術(shù)輸入〔P1.0/T2和定時(shí)器/計(jì)數(shù)器2的觸發(fā)輸入〔P1.1/T2EX。在對(duì)FlashROM編程和程序校驗(yàn)時(shí),P1接收低8位地址。P2端口〔P2.0~P2.7,21~28引腳:P2口是一個(gè)自帶部上拉電阻的8位雙向I/O端口當(dāng)單片機(jī)擴(kuò)展外部?jī)?chǔ)存器及I/O口時(shí),P2口作為高八位地址線總線用,輸出高八位地址,P2口也可以當(dāng)做普通的I/O口使用。當(dāng)作為普通的I/O口輸入時(shí),應(yīng)先向端口輸出鎖存器寫入1;P2口與P0口輸出的低八位地址一起構(gòu)成16位地址,可以尋址64KB的地址空間,在訪問(wèn)外部程序存儲(chǔ)器和16位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),P2送出高8位地址。在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口引腳上的容〔就是專用寄存器〔SFR區(qū)中的P2寄存器的容,在整個(gè)訪問(wèn)期間不會(huì)改變。在對(duì)FlashROM編程和程序校驗(yàn)期間,P2也接收高位地址和一些控制信號(hào)。P3端口〔P3.0~P3.7,10~17引腳:P3是一個(gè)帶部上拉電阻的8位雙向I/O端口。P3口作為第二功能的輸出/輸入或第一功能通用輸入,均需將相應(yīng)位的鎖存器置1。實(shí)際應(yīng)用中,由于復(fù)位后P3口鎖存器置1,滿足第二功能所需要的條件,所以不需要任何設(shè)置工作,就可以進(jìn)入第二功能操作。當(dāng)某位不作為第二功能使用時(shí),作為第一功能I/O口使用。引腳輸入部分有兩個(gè)緩沖器,第二功能的輸入信號(hào)取自緩沖器BUF3的輸出端,第一功能輸入信號(hào)取自緩沖器BUF2的輸入端[8]。RST〔9引腳:復(fù)位信號(hào)輸入端,高電平有效。在此引腳加上持續(xù)時(shí)間大于2個(gè)機(jī)器周期的高電平,就可以使單片機(jī)復(fù)位。當(dāng)單片機(jī)正常工作時(shí),次引腳應(yīng)該為≤0.5V的低電平。當(dāng)看門狗定時(shí)器溢出時(shí),該引腳將輸出長(zhǎng)達(dá)96個(gè)時(shí)鐘震蕩周期的高電平。ALE/ROG〔30引腳ALE為CPU訪問(wèn)外部程序存儲(chǔ)器或外部數(shù)據(jù)存儲(chǔ)器或外部數(shù)據(jù)存儲(chǔ)器提供一個(gè)地址鎖存的信號(hào),將低八位地址鎖存在片外的地址鎖存器中。在一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來(lái)作為外部定時(shí)器或時(shí)鐘使用。然而,特別強(qiáng)調(diào),在每次訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),ALE脈沖將會(huì)跳過(guò)。如果需要,通過(guò)把地址位8EH的SFR的第0位置"1”,ALE操作將無(wú)效。這一位置"1”,ALE僅在執(zhí)3.3L298N電機(jī)驅(qū)動(dòng)模塊L298N芯片的介紹L298N是ST公司生產(chǎn)的一種高電壓、大電流電機(jī)驅(qū)動(dòng)芯片。該芯片的主要特點(diǎn)是工作電壓高,最高工作電壓可達(dá)46V;輸出電流大,瞬間峰值電流可達(dá)3A,持續(xù)工作電流為2A;含兩個(gè)H橋的高電壓大電流全橋式驅(qū)動(dòng)器,可以用來(lái)驅(qū)動(dòng)直流電動(dòng)機(jī)和步進(jìn)電動(dòng)機(jī)、繼電器、線圈等感性負(fù)載;采用標(biāo)準(zhǔn)TTL邏輯電平信號(hào)控制;具有兩個(gè)使能控制端,在不受輸入信號(hào)影響的情況下允許或禁止器件工作;有一個(gè)邏輯電源輸入端,使部邏輯電路部分在低電壓下工作;可以外接檢測(cè)電阻,將變化量反饋給控制電路。L298N芯片如圖3-3所示:圖3-3L298N芯片L298N的工作原理:在L298N模塊中有兩組H橋驅(qū)動(dòng)電路,每一組橋H電路中有4個(gè)三極管,四個(gè)三機(jī)關(guān)兩兩相對(duì),在導(dǎo)通時(shí),可以控制流過(guò)電機(jī)的電流的方向,并通過(guò)此方法來(lái)控制電機(jī)的正傳反轉(zhuǎn)等,從而控制此小車的行進(jìn)方向。此模塊有IN1、IN2、IN3、IN4四個(gè)邏輯輸入端,其中IN1、IN2控制一個(gè)電機(jī),IN3、IN4控制另一個(gè)電機(jī)。當(dāng)IN1輸入高電平為1、IN2輸入低電平為0時(shí),IN1、IN2所控制的電機(jī)正轉(zhuǎn),當(dāng)IN1輸入為低電平0,IN2輸入高電平1時(shí),電機(jī)反轉(zhuǎn)。將PWM引腳上的跳線帽去掉后,從ENA、ENB端輸入,可控制電機(jī)速度。L298N芯片引腳說(shuō)明:1腳:電流監(jiān)測(cè)端A2腳:輸出端3腳:輸出端 4腳:功率電源電壓<+12V>5腳:輸入端 6腳:時(shí)能端〔通過(guò)電阻接地7腳:輸入端 8腳:GND接地9腳:邏輯電源電壓端〔+5V> 10腳:輸入端11腳:使能端 12腳:輸入腳13腳:輸出端 14腳:輸出端15腳:電流監(jiān)測(cè)端BL298N電機(jī)驅(qū)動(dòng)模塊原理圖如下圖3-4所示:圖3-4L298N電機(jī)驅(qū)動(dòng)模塊L298N電機(jī)驅(qū)動(dòng)模塊參數(shù):驅(qū)動(dòng)芯片:L298N雙H橋直流電機(jī)驅(qū)動(dòng)芯片;驅(qū)動(dòng)部分端子供電圍Vs:+5V~+12V;如需要板取電,則供電圍Vs:+6V~+12V;驅(qū)動(dòng)部分峰值電流Io:2A;邏輯部分端子供電圍:Vss:+5V~+7V〔可板取電+5V;邏輯部分工作電流圍:0~36mA;控制信號(hào)輸入電壓圍:低電平:-0.3V≤Vin≤1.5V;高電平:2.3V≤Vin≤Vss;使能信號(hào)輸入電壓圍:低電平:-0.3≤Vin≤1.5V〔控制信號(hào)無(wú)效;高電平:2.3V≤Vin≤Vss〔控制信號(hào)有效;最大功耗:20W〔溫度T=75℃存儲(chǔ)溫度:-25℃~+130℃驅(qū)動(dòng)板尺寸:52mm*44mm*33mm<其他擴(kuò)展:控制方向指示燈、邏輯電源選擇接口。3.4超聲波傳感器模塊超聲波測(cè)距是利用超聲脈沖回波渡越時(shí)間法來(lái)實(shí)現(xiàn)的。設(shè)超聲波脈沖由傳感器發(fā)出到接收所經(jīng)歷的時(shí)間為t,超聲波在空氣中的傳播速度為c,則從傳感器到目標(biāo)物體的距離D可用下式求出:D=ct/2。本次畢業(yè)設(shè)計(jì)使用的是HC-SR04超聲波測(cè)距模塊。HC-SR04超聲波測(cè)距模塊可提供2cm-400cm的非接觸式距離感測(cè)功能,測(cè)距精度可達(dá)高到3mm圖3-5超聲波傳感器系統(tǒng)框圖主要功能:1、距離測(cè)量;2、溫度測(cè)量;3、光亮度測(cè)量。超聲波傳感器模塊原理如下圖3-6所示:圖3-6超聲波傳感器模塊原理圖基本工作原理:1、采用I/O口TRIG觸發(fā)測(cè)距,給最少10us的高電平信號(hào);2、模塊自動(dòng)發(fā)送8個(gè)40KHz的方波,自動(dòng)檢測(cè)是否有信號(hào)返回;3、有信號(hào)返回,通過(guò)I/O口ECHO輸出一個(gè)高電平,高電平持續(xù)的時(shí)間就是超聲波從發(fā)射到返回的時(shí)間。測(cè)試距離=<高電平時(shí)間*聲速<340M/S>>/2?;緟?shù):工作電壓:DC5V;工作電流:15mA;工作頻率:40KHz;探測(cè)距離圍:2cm~4m;測(cè)量溫度圍:0℃至+100℃〔精度:測(cè)量角度:15度;數(shù)據(jù)輸出方式:iic和uart〔57600bps兩種方式,用戶任選;其中UART方式,是以7個(gè)字節(jié)為一組,以0x55開頭的3個(gè)數(shù)據(jù)是距離數(shù)值;以0x66開頭的2個(gè)數(shù)據(jù)是溫度數(shù)據(jù)以0x77開頭的2個(gè)數(shù)據(jù)是光照度數(shù)據(jù)。0x55\0x66\0x77是為區(qū)分3個(gè)數(shù)據(jù)而增加的數(shù)據(jù)頭;時(shí)間限制:支持如下2種探測(cè)方式;〔1持續(xù)探測(cè);〔2受控間歇探測(cè);距離數(shù)據(jù)格式:以毫米為最小數(shù)據(jù)單位,雙字節(jié)16進(jìn)制傳輸,前高后低;溫度數(shù)據(jù)格式:以攝氏度為最小數(shù)據(jù)單位,單字節(jié)16進(jìn)制傳輸;光照數(shù)據(jù)格式:?jiǎn)巫止?jié)16進(jìn)制傳輸;光線暗時(shí)數(shù)值大,光線亮?xí)r數(shù)值??;工作溫度圍:0℃至+100存放溫度:-40℃至+120外形尺寸:48mm*39mm*22mm〔H。傳播限制:1、超聲波探測(cè)時(shí),被測(cè)物的表面如果為布料、毛料等會(huì)出現(xiàn)很大的誤差,因?yàn)椴剂匣蛘呤敲蠈?duì)超聲波的反射率很小。2、測(cè)距時(shí),被測(cè)物體的面積不少于0.5平方米且平面要保持平整,否則會(huì)出現(xiàn)誤差,影響測(cè)量的結(jié)果。3.5紅外避障模塊在本次設(shè)計(jì)中紅外避障模塊安裝于小車的車尾左右兩側(cè),其主要作用是檢測(cè)后方是否有障礙物存在,并控制蜂鳴器報(bào)警,對(duì)危險(xiǎn)距離進(jìn)行提示,并提醒駕駛者后方有障礙物。紅外避障模塊原理如下圖3-7所示:圖3-7紅外避障模塊上圖的紅外避障模塊展示了其基本的工作原理:紅外二極管發(fā)射紅外線波,遇到障礙后,紅外線波返回被模塊上的紅外接收裝置接收到,并將信息傳遞給單片機(jī),然后做出相應(yīng)的處理。模塊描述:紅外模塊由光電傳感器組成,光電傳感器一般用于光的測(cè)量、光的控制和光電轉(zhuǎn)換〔將光的變化轉(zhuǎn)換為電的變化。光敏電阻器是利用半導(dǎo)體的光電導(dǎo)效應(yīng)制成的一種電阻值隨入射光的強(qiáng)弱而改變的電阻器,入射光強(qiáng),電阻減小,入射光弱,電阻增大。還有另一種入射光弱,電阻減小,入射光強(qiáng),電阻增大。只要人眼可感受的光,都會(huì)引起它的阻值變化。該傳感器模塊對(duì)環(huán)境光線適應(yīng)能力強(qiáng),由紅外發(fā)射管發(fā)射出一定頻率的紅外線,當(dāng)檢測(cè)方向遇到障礙物時(shí),紅外線反射回來(lái)被接收管接收,經(jīng)過(guò)比較器電路處理之后,綠色指示燈會(huì)亮起,同時(shí)信號(hào)輸出接口輸出數(shù)字信號(hào)〔一個(gè)低電平信號(hào),可通過(guò)電位器旋鈕調(diào)節(jié)檢測(cè)距離,有效距離圍2~80cm,工作電壓為3.3V—5V。該傳感器的探測(cè)距離的優(yōu)點(diǎn)是可以通過(guò)電位器調(diào)節(jié)、具有干擾小、便于裝配、使用方便等特點(diǎn),可以廣泛應(yīng)用于機(jī)器人避障、避障小車、流水線計(jì)數(shù)及黑白線循跡等眾多場(chǎng)合。模塊參數(shù)說(shuō)明:當(dāng)模塊檢測(cè)到前方障礙物信號(hào)時(shí),電路板上綠色指示燈點(diǎn)亮電平,同時(shí)OUT端口持續(xù)輸出低電平信號(hào),該模塊檢測(cè)距離2~80cm,檢測(cè)角度35°,檢測(cè)距離可以通過(guò)電位器進(jìn)行調(diào)節(jié),順時(shí)針調(diào)電位器,檢測(cè)距離增加;逆時(shí)針調(diào)電位器,檢測(cè)距離減少;傳感器主動(dòng)紅外線反射探測(cè),因此目標(biāo)的反射率和形狀是探測(cè)距離的關(guān)鍵。其中黑色探測(cè)距離最小,白色最大;小面積物體距離小,大面積距離大;傳感器模塊輸出端口OUT可直接與單片機(jī)I/O口連接即可,也可以直接驅(qū)動(dòng)一個(gè)5V繼電器。連接方式:VCC-VCC;GND-GND;OUT-I/O;比較器采用LM393,工作穩(wěn)定;可采用3-5V直流電源對(duì)模塊進(jìn)行供電。當(dāng)電源接通時(shí),紅色電源指示燈點(diǎn)亮;具有3mm的螺絲孔,便于固定、安裝;電路板尺寸:3.1CM*1.5CM;模塊接口說(shuō)明〔3線制:1、VCC外接3V-5V電壓〔可以直接與5V單片機(jī)和3V單片機(jī)相連;2、GND外接GND;3、OUT小板數(shù)字量輸出接口〔0和1。3.6LCD1602液晶顯示本設(shè)計(jì)采用LCD1602,即工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符〔16列2行。LCD1602液晶屏原理圖如下圖3-8所示:圖3-8LCD1602封裝圖及相關(guān)引腳圖接口定義如下:1腳:Vss為地電源;2腳:VDD為電源正極;3腳:VEE為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地電源時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生"鬼影",使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度;4腳:RS為數(shù)據(jù)命令選擇端寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器;5腳:R/W讀寫選擇端,高電平為讀操作,低電平為寫操作。當(dāng)RS和RW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù);6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令;7~14腳:D0~D7為8位雙向數(shù)據(jù)線;15腳:BLA背光電源正極;16腳:BLK背光電源負(fù)極?;静僮鲿r(shí)序:1、讀狀態(tài):輸入:RS=L,RW=H,E=H輸出:D0~D7=狀態(tài)字;2、寫命令:輸入:RS=L,RW=L,D0~D7=指令碼,E=高脈沖輸出:無(wú);3、讀數(shù)據(jù):輸入:RS=H,RW=H,E=H輸出:D0~D7=數(shù)據(jù);4、寫數(shù)據(jù):輸入:RS=H,RW=L,D0~D7=數(shù)據(jù),E=高脈沖輸出:無(wú)。復(fù)位說(shuō)明〔初始化:延時(shí)15ms;寫命令38H〔不檢測(cè)忙信號(hào);延時(shí)5ms;寫命令38H〔不檢測(cè)忙信號(hào);延時(shí)5ms;寫命令38H〔不檢測(cè)忙信號(hào);以后每次命令、讀/寫數(shù)據(jù)操作之前均需要檢測(cè)忙信號(hào);寫命令38H:顯示模式設(shè)置;寫命令08H:顯示關(guān)閉;寫命令01H:顯示清屏;寫命令06H:顯示光標(biāo)移動(dòng)設(shè)置;寫命令0CH:顯示開及光標(biāo)設(shè)置。第四章自動(dòng)泊車系統(tǒng)的軟件設(shè)計(jì)4.1開發(fā)軟件本次自動(dòng)停泊小車的設(shè)計(jì)主要使用了KeilC51編程軟件進(jìn)行程序的編寫,以及STC_ISP程序燒制軟件對(duì)單片機(jī)進(jìn)行程序燒錄。Keil軟件的介紹1、C51開發(fā)系統(tǒng)基本知識(shí)KeilC51是美國(guó)KeilSoftware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開發(fā)系統(tǒng),包括C語(yǔ)言編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在的完整開發(fā)方案。KeilC51是在ANSIC基礎(chǔ)上針對(duì)51單片機(jī)的硬件特點(diǎn)進(jìn)行的拓展,并向51單片機(jī)上移植,經(jīng)過(guò)多年努力,C語(yǔ)言已經(jīng)成為公認(rèn)的高效、簡(jiǎn)介而又貼近51單片機(jī)硬件的實(shí)用高級(jí)編程語(yǔ)言。目前大多數(shù)的51單片機(jī)用戶都在使用C語(yǔ)言進(jìn)行程序設(shè)計(jì)。用C51進(jìn)行單片機(jī)軟件開發(fā),具有如下優(yōu)點(diǎn):功能十分強(qiáng)大;可讀性好;可移植性好;可維護(hù)性得到加強(qiáng);易學(xué)易用。2、KeilC51單片機(jī)軟件開發(fā)系統(tǒng)的整體結(jié)構(gòu)C51工具包的整體結(jié)構(gòu),uVision與Ishell分別是C51forWindows和forDos的集成開發(fā)環(huán)境〔IDE,可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開發(fā)流程。開發(fā)人員可以IDE本身或其他編輯器編輯C或匯編源文件。然后分別由C51及C51編譯器編譯生成目標(biāo)文件〔.OBJ。目標(biāo)文件可由LIB51創(chuàng)建生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件〔.ABS。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的.Hex文件,以供調(diào)試器Dscope51或Tscope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫入程序存貯器如EPROM中。使用獨(dú)立的Keil仿真器時(shí),注意事項(xiàng):〔1仿真器標(biāo)配11.0592MHz的晶振,但用戶可以在仿真器上的晶振插孔中換其他頻率的晶振;〔2仿真器上的復(fù)位按鈕只復(fù)位仿真芯片,不復(fù)位目標(biāo)系統(tǒng);〔3仿真芯片的31腳〔/EA已接至高電平,所以仿真是只能使用片ROM,不能使用片外ROM;但仿真器外引插針中的31腳并不與仿真芯片的31腳相連,故該仿真器仍可插入到擴(kuò)展有外部ROM〔其CPU的/EA引腳接至低電平的目標(biāo)系統(tǒng)中使用。優(yōu)點(diǎn):〔1KEILC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì);〔2與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C語(yǔ)言來(lái)開發(fā),體會(huì)更加深刻。KeilC51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。STC_ISP軟件介紹STC_ISP是一款單片機(jī)下載編程燒錄軟件,是針對(duì)STC系列單片機(jī)而設(shè)計(jì)的,可下載STC89系列、12C2052系列和12C5410等系列的STC單片機(jī),使用簡(jiǎn)便,現(xiàn)已被廣泛使用。4.2自動(dòng)泊車系統(tǒng)主程序本次設(shè)計(jì)的主程序主要是對(duì)超聲波模塊及LCD液晶屏等模塊進(jìn)行初始化并調(diào)用定時(shí)器。并使小車進(jìn)行功能的實(shí)現(xiàn)。是主程序中的部分代碼如下所示〔while循環(huán)體中的部分省略:主程序部分代碼:voidmain<void>{ uinta; ucharflag_c; Sound=1; LCMInit<>; DisplayListChar<0,1,Cls>; TMOD=0x01; TH0=0; TL0=0; ET0=1; EA=1; BZ_L=1; BZ_R=1; flag_c=0; while<1> {….}}自動(dòng)停泊小車系統(tǒng)的主程序主要是對(duì)各個(gè)模塊進(jìn)行初始化以及調(diào)用定時(shí)器。以上為主程序的主要代碼〔while循環(huán)體中的部分省略此代碼為設(shè)計(jì)的主程序main〔部分,首先此段代碼對(duì)程序中的變量、超聲波模塊、LCD進(jìn)行初始化。并開始對(duì)小車的功能進(jìn)行實(shí)現(xiàn)。主程序流程圖如圖4-1所示:圖4-1主程序流程圖以上為該系統(tǒng)的流程圖,此流程圖表現(xiàn)了主程序的作用與運(yùn)行主程序的運(yùn)行過(guò)程,如果在運(yùn)行次程序時(shí)滿足所有條件,程序?qū)⑼瓿勺詣?dòng)泊車的全過(guò)程。4.3L298N電機(jī)驅(qū)動(dòng)程序L298N電機(jī)驅(qū)動(dòng)模塊可以實(shí)現(xiàn)小車的5個(gè)運(yùn)動(dòng)狀態(tài),包括小車的停止、前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)。當(dāng)4個(gè)狀態(tài)引腳IN1,IN2,IN3,IN4為邏輯輸入端,當(dāng)接收到高、低電平信號(hào)時(shí),執(zhí)行對(duì)應(yīng)的小車運(yùn)動(dòng)狀態(tài)。L298N電機(jī)驅(qū)動(dòng)模塊程序如下所示:voidGo<>{IN1=1;IN2=0;IN3=1;IN4=0}…..voidLeft<>{IN1=0;IN2=1;IN3=1;N4=0;}以上程序部分即展示了小車5種運(yùn)動(dòng)狀態(tài)下的狀態(tài)引腳的電平信號(hào)值。本次設(shè)計(jì)采用的是IN1和IN2引腳控制左端電機(jī),IN3和IN4控制右端電機(jī)的2輪小車,通過(guò)控制不同的電平對(duì)引腳的輸入從而控制小車當(dāng)前的狀態(tài)。4.4超聲波測(cè)距程序超聲波測(cè)距模塊主要是測(cè)量小車后方與障礙物之間的距離,同時(shí)可以通過(guò)液晶顯示屏來(lái)顯示車輛后方與后方障礙物的距離。當(dāng)紅外避障模塊監(jiān)測(cè)到后方有障礙物時(shí),小車進(jìn)行停車操作,此時(shí)超聲波進(jìn)行距離檢測(cè)。超聲波測(cè)距模塊測(cè)距部分程序如下所示:voidceju<void>{ StartModule<>; while<!RX>; TR0=1; while<RX>; TR0=0; Conut<>; delayms<80>; }以上程序?yàn)槌暡y(cè)距的實(shí)現(xiàn),當(dāng)模塊輸出口〔RX為0時(shí)開始等待,并且開啟計(jì)數(shù),當(dāng)模塊輸出口為1時(shí)開始計(jì)數(shù)并等待,然后關(guān)閉計(jì)數(shù),最后調(diào)用Conut函數(shù)進(jìn)行計(jì)算對(duì)距離進(jìn)行計(jì)算,并且進(jìn)行延時(shí)。超聲波測(cè)距流程圖如圖4-2所示:圖4-2超聲波測(cè)距流程圖從流程圖可以看出在無(wú)論小車在任何運(yùn)動(dòng)狀態(tài)中只要紅外壁障模塊測(cè)出小車后方有障礙物,超聲波模塊就開始測(cè)量距離。4.5紅外避障模塊程序在本次設(shè)計(jì)中,紅外模塊的作用是對(duì)小車的運(yùn)動(dòng)狀態(tài)進(jìn)行控制。安裝在小車車尾左右放置,通過(guò)紅外臂章模塊對(duì)兩側(cè)的障礙物進(jìn)行探測(cè)從而控制小車運(yùn)動(dòng)狀態(tài),同時(shí),蜂鳴器作出報(bào)警相應(yīng)提示,此時(shí)應(yīng)注意車身周圍是否存在障礙物。紅外模塊的功能可以獨(dú)立完成,只需要給此模塊一個(gè)高或低的電平即可。當(dāng)紅外模塊發(fā)射管發(fā)射出的的紅外線被紅外模塊的接收管接收時(shí),此段程序開始執(zhí)行。當(dāng)左右兩側(cè)檢測(cè)到障礙物時(shí),蜂鳴器進(jìn)行報(bào)警,小車進(jìn)行停車操作,并打開延時(shí)。延遲過(guò)后蜂鳴器關(guān)閉報(bào)警狀態(tài)。紅外避障模塊工作流程圖如圖4-3所示:圖4-3紅外避障流程圖在此流程圖中,我們可以看出紅外模塊在不同的工作狀態(tài)下所執(zhí)行的運(yùn)行狀態(tài)和執(zhí)行的操作也不相同。當(dāng)遇見障礙物時(shí)蜂鳴器進(jìn)行報(bào)警提示,在泊車開始前的檢測(cè)只會(huì)對(duì)駕駛員進(jìn)行報(bào)警提醒,若是在泊車過(guò)程中不僅會(huì)報(bào)警提醒駕駛者同時(shí)會(huì)取消泊車操作。而當(dāng)不存在障礙物則完成泊車過(guò)程。4.6LCD1602液晶顯示程序LCD1602液晶屏主要時(shí)將超聲波模塊所測(cè)得的數(shù)值顯示出來(lái),并且呈現(xiàn)給駕駛者,使其更能直觀的將小車車尾與障礙物的距離顯示出來(lái),以提醒駕駛者注意安全。LCD1602液晶顯示程序中初始化程序部分如下所示:voidLcdInitiate<void>{delay<15>;WriteInstruction<0x38>;…….delay<5>;WriteInstruction<0x01>;delay<5>;}以上代碼為使用LCD1206液晶顯示屏之前要對(duì)其進(jìn)行初始化。隨著液晶屏的初始化操作完成以后,就該對(duì)其忙檢測(cè)來(lái)確定LCD液晶屏當(dāng)前的狀態(tài)。LCD1602液晶顯示程序中顯示程序部分如下所示:voidWriteCommandLCM<unsignedcharWCLCM,BuysC>{ if<BuysC>ReadStatusLCM<>; LCM_Data=WCLCM; LCM_RS=0; LCM_RW=0; LCM_E=0; LCM_E=0; LCM_E=1; }unsignedcharReadDataLCM<void>{ LCM_RS=1; LCM_RW=1; LCM_E=0; LCM_E=0; LCM_E=1; return<LCM_Data>;….以上所顯示程序代碼就是在忙檢測(cè)和顯示設(shè)置方面完成的前提下,進(jìn)行數(shù)據(jù)的讀與寫的過(guò)程,并且將得到的數(shù)據(jù)顯示在液晶屏上。讓使用者能夠更加直觀的知道所獲得的數(shù)據(jù)。第五章自動(dòng)停泊小車的測(cè)試第一次測(cè)試的時(shí)候伴隨著我緊的心情,小車還是出現(xiàn)了一些小問(wèn)題。不過(guò)我并沒有氣餒,經(jīng)過(guò)多次調(diào)試后,小車能實(shí)現(xiàn)功能,并且運(yùn)行得十分流暢。不論是L298N電機(jī)驅(qū)動(dòng)模塊,還是超聲波測(cè)距模塊、紅外避障模塊,都能正常工作。LCD顯示屏和蜂鳴器工作狀態(tài)也沒有異常。本次設(shè)計(jì)主要考慮的問(wèn)題有:1、小車是否需要自動(dòng)尋找泊車位置;2、小車的初始位置如何選擇;3、切入角度大小是多少;4、超聲波模塊測(cè)得與后方距離為多少時(shí)向前移動(dòng);5、如果需要向前移動(dòng),需要移動(dòng)多少。遇到以上問(wèn)題后開始研究解決方法,并且經(jīng)過(guò)無(wú)數(shù)次的測(cè)試、改進(jìn)。到最后解決問(wèn)題也好點(diǎn)了不少時(shí)間,不過(guò),問(wèn)題都已迎刃而解:1、此次涉及小車不需要自動(dòng)尋找停車位,那樣會(huì)多附加很多功能,難以實(shí)現(xiàn);2、初始位置應(yīng)該與左側(cè)的障礙物平行;3、入彎切入角約為40°;4、如果超聲波模塊測(cè)得的距離為危險(xiǎn)距離時(shí),小車需要向前移動(dòng);5、移動(dòng)的距離為脫離超聲波測(cè)得的危險(xiǎn)距離即止。設(shè)計(jì)的不足:此次設(shè)計(jì)完成后,小車可以實(shí)現(xiàn)的功能符合課題的基本要求,雖然在制作、調(diào)試過(guò)程中歷盡艱辛,并付出了很多,但是設(shè)計(jì)中還存在著不足和需要改進(jìn)的地方,具體如下:1、需要計(jì)算好地面與車輪的摩擦,會(huì)導(dǎo)致誤差;2、小車可以自動(dòng)尋找車位,并完成倒車;3、主函數(shù)太大,運(yùn)行時(shí)會(huì)出現(xiàn)問(wèn)題;4、對(duì)電機(jī)的控制不準(zhǔn)確,會(huì)出現(xiàn)碰撞;5、萬(wàn)向輪有時(shí)會(huì)影響小車的前進(jìn)方向。升級(jí)的方向:基于以上不足,小車需要改進(jìn)改進(jìn)的方向大致為一下點(diǎn):首先,對(duì)車輪進(jìn)行升級(jí),并且增加車身重量,如此可以對(duì)抗摩擦力,并減小摩擦力帶來(lái)的誤差。其次,對(duì)單片機(jī)進(jìn)行升級(jí),變?yōu)榭梢赃M(jìn)行更強(qiáng)大的數(shù)據(jù)處理的芯片,在對(duì)此進(jìn)行功能附加,讓小車完成自動(dòng)尋找車位,并且完成倒車;然后對(duì)程序進(jìn)行調(diào)整,簡(jiǎn)化主函數(shù),這樣有利于程序更好的運(yùn)行,并且在運(yùn)行期間不會(huì)出錯(cuò);而且在功能改進(jìn)時(shí)程序更加簡(jiǎn)易明了。最后,對(duì)萬(wàn)向輪進(jìn)行改進(jìn),由于小車底盤的原因,電池盒的位置和萬(wàn)向輪離得太近,導(dǎo)致萬(wàn)向輪不能隨意轉(zhuǎn)動(dòng),方向也跟著受影響,不能改變。結(jié)論在大學(xué)的最后這段時(shí)間里,我把全身心投入到畢業(yè)設(shè)計(jì)中去,雖然學(xué)校給的時(shí)間是兩個(gè)月,但由于自身原因和課題原因,我不得不提前準(zhǔn)備,期間嘗遍了設(shè)計(jì)帶給我的酸甜苦辣。歷時(shí)三個(gè)月,設(shè)計(jì)終于完成了,我在此過(guò)程中學(xué)到了很多,也懂得了很多。雖然我做出來(lái)的設(shè)計(jì)與期望相差很大,但我看著自己的成果還是很欣慰,很高興。我感覺最后的這次設(shè)計(jì)教會(huì)我們的東西不比這大學(xué)四年來(lái)學(xué)到的東西少,這些都是走向社會(huì)以后的寶貴經(jīng)驗(yàn)。它讓我知道只有不斷摸索,不斷創(chuàng)新,不斷超越自己才能掃盡眼前的霧霾,迎接和煦的,創(chuàng)造美好的新生活。四年大學(xué)中我學(xué)到了不少知識(shí),不過(guò)這些知識(shí)的絕大部分都是一些理論知識(shí),雖然有用,但是無(wú)法應(yīng)用到實(shí)踐中去。但是通過(guò)此次設(shè)計(jì),使我把課堂上學(xué)到的C語(yǔ)言知識(shí)、單片機(jī)知識(shí)全部應(yīng)用到實(shí)踐中去,讓理論與實(shí)踐有了完美的結(jié)合,在此結(jié)合的過(guò)程中讓自己的知識(shí)得到強(qiáng)化和復(fù)習(xí),溫故而知新,學(xué)到了不少新的知識(shí)。還對(duì)KeilC51軟件和STC_ISP軟件使用方法得到了加固。并且讓我感覺到自己的知識(shí)面和動(dòng)手能力等多方面都得到了加強(qiáng),比起以前更上一層樓。我也明白了單單掌握理論知識(shí)無(wú)異于紙上談兵,單單掌握實(shí)踐,就像無(wú)頭蒼蠅,理論與實(shí)踐是不可分離、相輔相成的。除了對(duì)知識(shí)的掌握和深化,我還知道了團(tuán)隊(duì)的重要性,因?yàn)闆]有同學(xué)們的幫助,此次設(shè)計(jì)也就很難完成,團(tuán)隊(duì)作用是偉大的。致本次設(shè)計(jì)歷時(shí)數(shù)個(gè)月,到最后能夠順利完成少不了各位老師的悉心指導(dǎo)與各位同學(xué)們的熱心幫助。如果不是他們,我在設(shè)計(jì)制作期間遇到的無(wú)數(shù)艱難將會(huì)無(wú)法度過(guò)。首先我要感我的指導(dǎo)老師——博老師,他在此期間,不辭辛苦,對(duì)我進(jìn)行了無(wú)私的指導(dǎo),使我在設(shè)計(jì)進(jìn)行期間得到了很大的幫助,并且不厭其煩的為我講解各類設(shè)計(jì)中所用到的知識(shí)。其次,我要感教研組的其它老師,因?yàn)樵谖业膶?dǎo)師不在或者忙碌時(shí),我遇到困難后經(jīng)常麻煩他們,不過(guò)老師們都會(huì)細(xì)心地為我講解。還有實(shí)驗(yàn)室的遲明玉老師,在設(shè)計(jì)的制作過(guò)程中,所需要的工具和部分器件都由遲老師為我提供。最后我要感我的同學(xué)們,每當(dāng)一個(gè)人遇到問(wèn)題時(shí),其它同學(xué)都會(huì)無(wú)私的利用自己的時(shí)間幫助其解決問(wèn)題,讓我感覺到了集體的力量,讓我明白了只要我們團(tuán)結(jié),沒有什么不可戰(zhàn)勝。尊敬的老師和同學(xué)們,沒有你們的幫助我的設(shè)計(jì)也不能順利完成,你們,!參考文獻(xiàn)[1]尤晴曦,洪興:"基于變論域理論的自動(dòng)倒車控制",《師大學(xué)學(xué)報(bào)》,2005.[2]吳鍇:《智能自動(dòng)泊車系統(tǒng)研究》,2008.[3]宋金澤:"自主泊車系統(tǒng)關(guān)鍵技術(shù)研究",《國(guó)防科技大學(xué)博士學(xué)位論文》,2009.[4]王為青,程國(guó)剛:《KEILC51應(yīng)用開發(fā)技術(shù)》,人民郵電,2006.[5]高海生:《單片機(jī)應(yīng)用技術(shù)大全》,西南科技,2003.[6]朝青:《單片機(jī)原理及接口技術(shù)》,航天航空大學(xué),2004.[7]玲:"平行泊車方法研究與仿真",《長(zhǎng)安大學(xué)碩士論文》,2009.[8]毅剛,喜元,宇:《單片機(jī)原理及應(yīng)用》,2000.[9]何立民:《單片機(jī)高級(jí)教程》,航天航空大學(xué),2001.[10]曉安:《MSC-51單片機(jī)原理及應(yīng)用》,大學(xué),2001.[11]廣第:《單片機(jī)基礎(chǔ)》,航天航空大學(xué),1999.[12]徐惠民,安德寧:《單片機(jī)微型計(jì)算機(jī)原理及應(yīng)用》,郵電大學(xué),2001.[13]夏繼強(qiáng):《單片機(jī)實(shí)驗(yàn)與實(shí)踐教程》,航天航空大學(xué),2001.[14]志強(qiáng),胡輝:《單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)實(shí)踐指南》,2003.[15]肖紅兵:《單片機(jī)應(yīng)用技術(shù)》,人民郵電,2005.附錄附錄一源程序:變量以及函數(shù)的聲明:.#include<reg52.h> #include<intrins.h> #defineucharunsignedchar#defineuintunsignedint #defineLCM_DataP0 sbitBZ_L=P1^6; sbitBZ_R=P1^7; sbitTX=P3^1;sbitRX=P3^2;sbitIN1=P1^0;sbitIN2=P1^1;sbitIN3=P1^2;sbitIN4=P1^3;sbitPWM1=P1^4;sbitPWM2= P1^5;sbitSound=P3^7;sbitLCM_RW=P2^5;sbitLCM_RS=P2^6;sbitLCM_E=P2^4;bitsucceed_flag;#defineBusy0x80voidDelay5Ms<void>;unsignedcharReadDataLCM<void>;unsignedcharReadStatusLCM<void>;unsignedcharcodeCls[]={""};unsignedcharcodeASCII[15]={'0','1','2','3','4','5','6','7','8','9','.','-','M'};staticunsignedcharDisNum=0;unsignedinttime=0;unsignedlongS=0;bitflag=0;unsignedchardisbuff[4] ={0,0,0,0,};voidWriteDataLCM<unsignedcharWDLCM>{ ReadStatusLCM<>; LCM_Data=WDLCM; LCM_RS=1; LCM_RW=0; LCM_E=0; LCM_E=0; LCM_E=1;}voidWriteCommandLCM<unsignedcharWCLCM,BuysC>{ if<BuysC>ReadStatusLCM<>; LCM_Data=WCLCM; LCM_RS=0; LCM_RW=0; LCM_E=0; LCM_E=0; LCM_E=1; }unsignedcharReadDataLCM<void>{ LCM_RS=1; LCM_RW=1; LCM_E=0; LCM_E=0; LCM_E=1; return<LCM_Data>;}unsignedcharReadStatusLCM<void>{ LCM_Data=0xFF; LCM_RS=0; LCM_RW=1; LCM_E=0; LCM_E=0; LCM_E=1; while<LCM_Data&Busy>;/ return<LCM_Data>;}voidLCMInit<void>{ LCM_Data=0; WriteCommandLCM<0x38,0>; Delay5Ms<>; WriteCommandLCM<0x38,0>; Delay5Ms<>; WriteCommandLCM<0x38,0>; Delay5Ms<>; WriteCommandLCM<0x38,1>; WriteCommandLCM<0x08,1>; WriteCommandLCM<0x01,1>; WriteCommandLCM<0x06,1>; WriteCommandLCM<0x0F,1>;}voidDisplayOneChar<unsignedcharX,unsignedcharY,unsignedcharDData>{ Y&=0x1; X&=0xF; if<Y>X|=0x40; X|=0x80; WriteCommandLCM<X,1>; WriteDataLCM<DData>;}voidDisplayListChar<unsignedcharX,unsignedcharY,unsignedcharcode*DData>{ unsignedcharListLength;ListLength=0; Y&=0x1; X&=0xF; while<DData[ListLength]>0x19> { if<X<=0xF> { DisplayOneChar<X,Y,DData[ListLength]>; ListLength++; X++; } }}voidDelays<uinta>{ ucharb,c; for<b=0;b<125;b++> for<c=0;c<125;c++> for<;a>0;a--> ;}voidConut<void> { time=TH0*256+TL0; TH0=0; TL0=0; S=<time*1.7>/100; if<<S>=700>||flag==1> { flag=0; DisplayOneChar<0,1,ASCII[11]>; DisplayOneChar<1,1,ASCII[10]>; DisplayOneChar<2,1,ASCII[11]>; DisplayOneChar<3,1,ASCII[11]>; DisplayOneChar<4,1,ASCII[12]>; } else { disbuff[0]=S%1000/100; disbuff[1]=S%1000%100/10; disbuff[2]=S%1000%10%10; DisplayOneChar<0,1,ASCII[disbuff[0]]>; DisplayOneChar<1,1,ASCII[10]>; DisplayOneChar<2,1,ASCII[disbuff[1]]>; DisplayOneChar<3,1,ASCII[disbuff[2]]>; DisplayOneChar<4,1,ASCII[12]>; } }voidzd0<>interrupt1 {flag=1; }voidStartModule<> { TX=1; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; _nop_<>; TX=0;}voiddelayms<unsignedintms>{ unsignedinta; unsignedintb; for<a=0;a<ms;a++> for<b=0;b<109;b++>; }voidBACK<>{ IN1=0; IN2=1; IN3=0; IN4=1;}voidGO<>{ IN1=1; IN2=0; IN3=1; IN4=0;}voidStop<>{ IN1=0; IN2=0; IN3=0; IN4=0;}voidLeft<>{ IN1=1; IN2=0; IN3=0; IN4=1;}voidRight<>{ IN1=0; IN2=1; IN3=1; IN4=0;}voidceju<void>{ StartModule<>; while<!RX>; TR0=1; while<RX>; TR0=0; Conut<>; delayms<80>; /}主函數(shù):voidmain<void>{ uinta; ucharflag_c; Sound=1; LCMInit<>; DisplayListChar<0,1,Cls>

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論