版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
PAGE分類號:TN98 學校代碼:13605學號:112100221 密級:公開長春建筑學院學士學位畢業(yè)設計基于單片機的倒車防撞系統(tǒng)設計DesignofreversecollisionavoidancesystembasedonSCM作者姓名:專業(yè):研究方向:指導教師:培養(yǎng)單位:電氣信息學院2015年6月畢業(yè)設計基于單片機的倒車防撞系統(tǒng)設計學生:指導教師:專業(yè):所在單位:電氣信息學院答辯日期:2015年6月10日PAGEII摘要 倒車防撞系統(tǒng)是汽車駐車或者倒車時的安全輔助裝置,能以聲音或者更為直觀的顯示告知駕駛員周圍障礙物的情況,解除了駕駛員駐車、倒車和起動車輛時前后左右探視所引起的困擾,并幫助駕駛員掃除了視野死角和視線模糊的缺陷。隨著汽車產(chǎn)業(yè)的發(fā)展,出于社會對安全駕駛的需求日益增大,倒車防撞這項技術在汽車行業(yè)正在不斷的發(fā)展革新。與此同時,安全倒車技術已經(jīng)成為汽車產(chǎn)業(yè)的重要研究方向。其及時的反饋性,以及對惡劣環(huán)境條件的多適用性,已經(jīng)成為普通汽車出廠前必備的一道技術工序。 本設計以單片機為核心控制器件,外圍組成電路有信號處理模塊、測距模塊、顯示模塊,報警模塊、語音模塊及供電模塊等。主要介紹倒車防撞系統(tǒng)的基本實現(xiàn)原理、系統(tǒng)組成框圖以及軟硬件的實現(xiàn)方式。針對倒車防撞系統(tǒng)所需的技術條件,選用STC89C52型號單片機作為主控制器的制定了相應的硬件架構及軟件設計,并將整體設計做成實物,尋找其在實際應用中的不足之處。本次設計利用超聲波測距技術,實時測量障礙距離并迅速反饋給司機,當距離超過預警值系統(tǒng)立刻進行報警,便于司機迅速采取防范措施。另外,本系統(tǒng)也可通過按鍵對距離進行實時語音播報。關鍵詞倒車防撞;單片機;超聲波測距AbstractReversingcollisionavoidancesystemisacarparkingorreversingthesafetyauxiliarydevice,usingsoundoramoreintuitivewaytoinformthedriverofthebarrieraround,liftingthedistressofthedriverwhentheyparking,reversing,startingthevehicleandvisitingaround,andhelpingthedrivertoremovethedeadandblurredvisiondeficiencies.Withthedevelopmentoftheautomobileindustry,thedemandforsafetydrivingisincreasing,andthetechnologyofreversecollisionavoidanceiscontinuouslydevelopingintheautomotiveindustry.Atthesametime,thesafetyreversetechnologyhasbecomeanimportantresearchdirectionoftheautomobileindustry.Itstimelyfeedback,aswellastheapplicabilityofthesevereenvironment,hasbecomeatechnicalprocessofthecommonvehiclebeforeleavingthefactory.Inthispaper,withthesinglechipprocessorasthecorecontroldevice,peripheralcomponentsofthecircuitsignalprocessingmodule,rangingmodule,displaymodule,alarmmodule,voicemoduleandpowersupplymodule.ThisdesignmainlyintroducesthebasicImplementationRationaleofreversecollisionavoidancesystem,theblockdiagramsystemandtherealizationwayofthehardwareandsoftware.Accordingtotechnicalconditionsofreversecollisionavoidancesystem,thewriterselectsthetypesofSTC89C52microcontrollerasthemaincontrollertoformulatesuitablehardwarearchitectureandsoftwaredesign.Furthermoretheauthoroverallsthewholedesigntorealobject,findsitsshortcomingsinpracticalapplication.Thedesignmakesuseoftheultrasonicmeasuringdistancetechnology,real-timemeasurementofobstacledistanceandrapidfeedbacktothedriver,whenthedistanceexceedsthewarningvaluesystemitimmediatelyalarm,It’seasytopromptdriverstotakepreventivemeasures.Inaddition,thissystemalsocanbroadcastthedistanceinreal-timevoicethroughthekeypad.Keywords:Reversecrash;SCM;Ultrasonicranging
目錄TOC\o"1-3"\u摘要 IAbstract II第一章緒論 11.1目的和意義 11.2研究內(nèi)容 11.3可行性分析與技術要求 2第二章系統(tǒng)的總體設計 32.1超聲波測距原理 32.2超聲波傳感器的選擇 32.3溫度補償計算 32.4主要元器件介紹 42.4.1主控制器 42.4.2顯示模塊LCD1602 52.4.3集成芯片CX20106A 72.4.4語音芯片NY3P035 8第三章系統(tǒng)的硬件設計 113.1單片機最小系統(tǒng)的設計 113.1.1時鐘電路設計 113.1.2復位電路設計 123.1.3供電電路設計 123.2測距模塊設計 133.2.1超聲波發(fā)射電路 133.2.2超聲波接收電路 133.2.3溫度補償電路 143.3語音模塊設計 153.4顯示模塊 153.5報警模塊 15第四章系統(tǒng)的軟件設計 174.1超聲波測距算法設計 174.2語音播報程序設計 184.2.1語音播報函數(shù)設計 184.2.2播報調(diào)用算法設計 19第五章調(diào)試結果與改進方案 205.1測量結果與分析 205.2設計結論 215.3改進方案 21心得體會 22參考文獻 23附錄1總體算法流程圖 24附錄2系統(tǒng)程序代碼 25長春建筑學院電氣信息學院自動化專業(yè)本科畢業(yè)設計PAGE38第一章緒論隨著汽車行業(yè)的不斷升級,人們對機動車安全駕駛方面的要求越來越高。一些針對倒車安全、自動入庫、以及事故隱患報警的系統(tǒng)被不斷提出,其市場需求量日漸上升。此次設計以單片機為核心控制器設計了一個簡單實用的倒車防撞系統(tǒng)。該系統(tǒng)的核心模塊是測距模塊,采用超聲波傳感器進行信號采集,準確地采集車身與障礙之間的距離,并迅速反饋給主控部分,進行數(shù)據(jù)的顯示,距離達到危險值時進行警示。1.1目的和意義為了解決個人駕駛中的安全問題,實時、精準的指示倒車時本車車身與后方障礙物的距離,方便司機在倒車時保持與后車的安全距離,以保證行車駕駛過程中的安全,出于上述原因,倒車防撞系統(tǒng)成為汽車行業(yè)的重要研究方向。由于行車駕駛時周圍的環(huán)境較為復雜,采用單路傳感進行距離檢測時,對傳感器的性能要求較高,并且對外界條件的可抗力較弱。故本次系統(tǒng)采用環(huán)境補償設計,對測距的結果進行環(huán)境補償、綜合分析及判斷,為駕駛中所遇到的問題提供最精準的解決方案。本系統(tǒng)是通過超聲測距技術檢測車身與后方的距離,對車體的位置信息處理,從而使駕駛員了解自己駕駛的車輛相對周圍環(huán)境的位置信息,判斷自身車輛需要作出的反應,充分發(fā)揮人的能動性,使駕駛車輛和駕駛員本身最大程度上規(guī)避潛在的風險。目前,市場上許多汽車品牌紛紛推出自己的自動泊車系統(tǒng),如奧迪新款的R8,福特的翼虎,寶馬的i3。先進的自動泊車系統(tǒng)十分吸引高端客戶群的眼球,但是他們都是基于最簡單的測距原理,判斷自身所處的環(huán)境位置,針對自身位置制定最合理的入庫路線。相信隨著技術的不斷革新,越來越多的關于倒車安全的系統(tǒng)會不斷產(chǎn)生,給駕駛安全帶來更好的保障。1.2研究內(nèi)容倒車防撞系統(tǒng)在實際使用過程中的缺陷和超聲波測距時聲速的環(huán)境補償,本次設計主要針對環(huán)境補償中的溫度補償部分進行了算法設計。在加深對軟硬件學習的基礎之上,設計制作可在實際生活中應用的倒車防撞系統(tǒng),實現(xiàn)防止汽車發(fā)生碰撞的功能。具體內(nèi)容如下:(1)學習倒車防撞系統(tǒng)的基礎架構;(2)選擇主要的控制器件和傳感器;(3)設計硬件電路;(4)設計算法,實現(xiàn)預期功能;(5)聯(lián)調(diào),編寫設計報告。1.3可行性分析與技術要求倒車防撞系統(tǒng)的設計初衷是為了解決機動車倒車過程中的安全性問題。由于倒車時駕駛人的視角范圍有限,對車輛與障礙物之間的實際距離難以掌握。想要做到防止車輛撞擊其他物體,將車輛與其他物體間的距離實時、精準的反饋給駕駛人是最有效的辦法。該系統(tǒng)設計如下:(1)對系統(tǒng)基礎架構進行設計,選定測距模塊的傳感方式。(2)對測距傳感芯片的選型及安裝底盤,設計系統(tǒng)整機結構安裝框架。(3)系統(tǒng)包括主控制器,信號處理模塊和測距模塊,顯示模塊,報警模塊及語音模塊。系統(tǒng)整體設計如圖1-1。主控制器主控制器測距模塊信號處理模塊顯示模塊報警模塊語音模塊圖1-1系統(tǒng)組成框圖第二章系統(tǒng)的總體設計2.1超聲波測距原理超聲波在傳播的過程中會發(fā)生折射和反射效應,超聲波測距裝置主要是對超聲波的反射效應加以利用。其發(fā)射部分發(fā)出固定頻率的超聲波信號,在發(fā)射的同時開始一段計時,此時接收部分短暫延時,避開發(fā)射信號。接收部分通過調(diào)節(jié)接收頻率(類似收音機的接收調(diào)頻),將接收頻率固定在與發(fā)射部分同一頻段。在收到回波信號后,立即停止計時,計算從發(fā)射到接收所用的時間T,通過資料查詢了解聲波在空氣中的速度V,由此可以得出此時測距結果S的計算公式為S=VT/2(2.1)根據(jù)公式在程序中設計相應的算法流程,即可得出準確的測距結果。2.2超聲波傳感器的選擇超聲波傳感器的主要構成大致分為兩類,一類是屬于電致伸縮型,一類是磁致伸縮型。電致伸縮性傳感器的其中一種傳感器叫做壓電式傳感器,它的工作原理是將電能轉換,形成機械振蕩,由此產(chǎn)生超聲波。在接收回波時,它也可以將機械振蕩轉換成大小的電能作為輸出,因此壓電式傳感器主要有發(fā)送器和接收器。部分傳感器也可以做收發(fā)兩用的傳感器,其主要工作頻率為24KHz或40KHz。本此設計選用的是小型超聲波傳感器,將發(fā)送部分和接收部分拆分開來,這種做法適用于小規(guī)模的測距系統(tǒng)。市場上這種傳感器較多,型號一般有T/R-40-60,T/R-40-12等(R代表接收,T代表發(fā)送,40代表頻率為40KHz,16及12代表其外徑尺寸,單位為毫米)。此外,還有一種外加防護型的超聲波傳感器MA40EI型。這類傳感器的特點是防水性較好,可以作為接近開關或料位使用,它的性能與前一種相比較好,但價格較高。綜上所述,結合本系統(tǒng)的設計目的和各種超聲波傳感器的特點,本設計選用的是TCT40-16T/R分體式超聲波傳感器。2.3溫度補償計算超聲波在常溫下傳播的速度為340m/s,但空氣中的濕度、壓強、溫度等環(huán)境因素很容易對超聲波的傳播速度造成影響,在這些環(huán)境因素中,溫度對聲速值的影響最大。通常情況下溫度每提高1攝氏度,聲速值大約增加0.6m/s。部分溫度下的聲速值如表2-1表2-1
部分溫度下的聲速值溫度T/℃-30-20-100102030聲速V/m·s-1313319322331337344350根據(jù)表2-1可知,溫度對超聲波測距系統(tǒng)的影響是很大的。如果得到不同環(huán)境條件下最準確的測距結果,對聲速進行精準的溫度補償是必不可少的。通過查閱大量的有關資料,以及想過的實驗論證,得出溫度的補償公式為: V=331.5+0.607T(2.2)其中,V代表實際傳播聲速,T代表傳播時的環(huán)境溫度。由公式可知,想要獲得準確的聲速值,必須得到傳播時的環(huán)境溫度值T。本設計采用DS18B20檢測環(huán)境溫度,對測速過程中傳播的聲速值進行補償。2.4主要元器件介紹2.4.1主控制器STC89C52(以下簡稱C52)是宏晶科技發(fā)布的一種8位單片機控制芯片,其功耗低、指令與傳統(tǒng)51系列單片機完全兼容,擁有8Kbytes的Flash(只讀程序存儲器),最多可供系統(tǒng)反復擦寫1000次。C52雖然沿用傳統(tǒng)的MCS-51內(nèi)核,但增加了很多擴展使芯片具有傳統(tǒng)51單片機未實現(xiàn)的一些功能。其優(yōu)越的在線可編程功能和高速運行的內(nèi)核,使C52在8位微控制器領域扮演著重要的角色,也成為很多產(chǎn)品技術發(fā)展的解決方案。C52標準功能如下:(1)內(nèi)置4KBEEPROM(分成8個扇區(qū),每個扇區(qū)分配512個字節(jié),讀寫數(shù)據(jù)必須按字節(jié)操作,擦除數(shù)據(jù)必須按扇區(qū)操作,采用全雙工串行口通信),(2)8KbytesFlash(3)512字節(jié)RAM(4)32位I/O口(5)看門狗定時器(6)MAX810復位設計(7)3個16位計數(shù)器/定時器(8)4個外部中斷(9)7向量4級中斷結構另外,C52支持靜態(tài)邏輯操作(即主頻降至0Hz),設置了2種可選模式(空閑模式時,停止內(nèi)核的工作,RAM、定時器/計數(shù)器、串口、中斷保持工作狀態(tài)。掉電保護模式下,RAM內(nèi)容立刻保存,停止振蕩器的工作和控制器一切工作,等待下次中斷的產(chǎn)生或硬件的復位操作)。最高內(nèi)核頻率35MHz,也可選6T/12T。本系統(tǒng)選用C52的主要原因是它的燒寫步驟較為簡便,8KB的程序存儲空間既可以滿足系統(tǒng)程序的存儲,也不至于過大而造成浪費。2.4.2顯示模塊LCD1602(1)簡介LCD1602,有時也稱字符型液晶1602,主要應用于字母、符號、數(shù)字等基本點陣型字符的顯示。一般最小組成單位為有5X11或5X8。其中每個點陣字符位可以顯示單個字符,兩個點陣字符位的中間預留了一個點距的間隔,兩行的中間也有一些間隔,作為字符間距和行間距的顯示。正因為這樣,在顯示畫面時,它的效果很不理想,很難完整地顯示圖形(用自定義CGROM時,顯示效果也不好),一般只用來制作一些簡單的數(shù)據(jù)展示使用。1602的意思是指最大的顯示容量為16X2,也就是說他是一個可以顯示兩行、每行可以顯示16個字符的液晶模塊(顯示字符或數(shù)字)。目前市場上字符液晶基本都是由HD44780作為主控芯片,增加了一些外圍擴展電路而形成的,控制原理也基本是相通的。正是由于這個原因,基于芯片HD44780的控制程序可移植性很強,大多數(shù)的控制程序都可以適用于不同廠商的生產(chǎn)的1602型字符型液晶。(2)管腳功能圖2-1LCD1602封裝圖LCD1602的外形如圖2-1,具體管腳定義如下:第1腳:Vss電源地第2腳:Vcc電源正極第3腳:VO液晶顯示偏壓信號調(diào)整端,本次設計采用了一個10K的電位器對此電壓量進行調(diào)節(jié)。第4腳:RS寄存器選擇端,此管腳電平拉高時選擇數(shù)據(jù)寄存器、電平拉低時選擇命令寄存器。第5腳:RW讀寫選擇端,電平拉高時進行讀指令操作,電平拉低時進行寫指令操作。第6腳:E(或EN)使能端,高電平時讀取信息,低電平時執(zhí)行指令。第7~14腳:D0~D7為8位數(shù)據(jù)傳輸端口。第15腳:背光電源正極第16腳:背光電源負極(3)基本操作時序讀狀態(tài)輸入:RS=L,RW=H,E=H輸出:D0~D7=狀態(tài)字讀數(shù)據(jù)輸入:RS=H,RW=L,E=H輸出:無寫指令輸入:RS=L,RW=L,D0~D7=指令碼,E=高脈沖輸出:D0~D7=數(shù)據(jù)寫數(shù)據(jù)輸入:RS=L,RW=L,D0~D7=指令碼,E=高脈沖輸出:無2.4.3集成芯片CX20106A(1)簡介 CX20106A是索尼公司根據(jù)其電視機產(chǎn)品需要,按照當時的技術需求生產(chǎn)的一款紅外接收專用的集成電路。早期用于彩電的紅外遙控接收器,具有很強的抗干擾性和很高的靈敏度。封裝采用直插式單排8腳,外觀小巧,使用方便,整體電路采用+5V供電。(2)內(nèi)部原理圖2-2CX20106A內(nèi)部原理圖(3)引腳功能:第1腳:IN信號輸入端,輸入阻抗一般為40kΩ第2腳:C1增益調(diào)節(jié)端,此管腳與GND相連接形成RC串聯(lián)網(wǎng)絡,屬于負反饋串聯(lián)網(wǎng)絡的其中一部分,改變R或者C的大小能調(diào)節(jié)前置放大器的頻率特性和增益。增大R的值或減小C的值,都可以使負反饋量增大,信號放大倍數(shù)減小,反之,放大倍數(shù)增大。但改變C的大小會使頻率特性發(fā)生改變,在實際使用中一般不會改動,本設計選用參數(shù)為R=4.7Ω,C=1μF。第3腳:C2檢波端,此管腳連接一個檢波電容,隨后接地,電容量大時調(diào)節(jié)為平均值檢波,瞬間響應靈敏度較低;電容量小時調(diào)節(jié)為波峰檢波,瞬間相應靈敏度較高。但電容量過小時,檢波脈沖寬度動作較大,有可能形成誤動作,故使用推薦參數(shù)為3.3μF。第4腳:GND接地端第5腳:f0帶通濾波器調(diào)整端,此管腳與電源正極間連接一個電阻,用來調(diào)整帶通濾波器的中心頻率f0,帶通濾波器的中心頻率會隨著中間電阻阻值的增大而減小。本次設計中此電阻阻值取200KΩ,中心頻率約40KHz。第6腳:C3積分端,此管腳連接一個積分電容后接地,一般情況下大小為330pF,如電容容量過大,會使探測距離變短。第7腳:OUT信號輸出端,輸出方式為集電極開路,所以此管腳必須外接上拉電阻至電源端,此電阻阻值一般設為22kΩ,在沒有接收到返回信號時輸出電平為高電平,有信號時則會變低。第8腳:Vcc電源端2.4.4語音芯片NY3P035(1)簡介本設計所用的這款語音芯片是市場近年來推出的一款具有PWM輸出功能的一次性燒錄語音IC(又稱OTP芯片)。芯片留有3個控制用IO口,最少僅需要添加一個104電容作為最低外圍電路就可以穩(wěn)定輸出語音信息,本方案所需的產(chǎn)片成本超低。這款語音芯片內(nèi)置電阻,沒有外圍元件,可適應供電電壓為2.2-5.5V,應用領域很多,使用PWM輸出模式,可以很容易的將裸片燒錄成型的OTP芯片,制作過程比較簡單。擴音器可以支持8歐-16歐(1W以內(nèi))范圍內(nèi)的大多數(shù)擴音器,本款芯片使用特定的標準固定模塊,最少能通過控制器的單個IO口即可完全控制此語音芯片,完成32段語音信息的任意調(diào)用和組合。目前最常用的控制方式是采用3個IO口控制本芯片,輸出多段語音的組合。(2)芯片引腳圖圖2-3NY3P035封裝圖(3)控制原理簡述這款芯片所采用的控制方法為模擬串行方式,當需要播報某一段語音信息時就按照這段語音信息的地址序號發(fā)送相應數(shù)量的脈沖(脈沖延時不小于0.2ms為宜,本設計使用1ms延時)的原理,依照此原理,快速的控制并調(diào)用32段地址上的語音,形成相應的語音組合。模擬串行方式下各IO口的工作狀態(tài)如下:BUSY:芯片播報時,輸出低電平,停止播報或者待機情況下,保持高電平;DATA:接受控制脈沖的腳位,接收到n個脈沖時,進行第n個地址上語音信息的播報;REST:任何時候,只要檢測到脈沖輸入,就將芯片的播放指針置零(也就是DATA的腳位復位,將芯片恢復到初始狀態(tài),),同時將停止語音輸出動作,進入待機狀態(tài)。表2-2語音芯片NY3P035地址表錄音內(nèi)容地址內(nèi)容地址內(nèi)容117電壓2118電流3219水位4320溫度5421重量6522單價7623總價8724厘米9825米10926伏11十27安12百28度13點29千克14當前30元15設置31016距離32滴
第三章系統(tǒng)的硬件設計3.1單片機最小系統(tǒng)的設計圖3-1單片機最小系統(tǒng)電路3.1.1時鐘電路設計單片機工作必須要有時鐘振蕩信號的輸入,單片機的XTAL1端(19管腳)、XTAL2端(18管腳)接晶振Y1與電容C1和C2,這種固定的結構與單片機內(nèi)部的電路組成一個振蕩器,產(chǎn)生單片機時鐘脈沖信號。使用晶振和單片機進行配合生成時鐘脈沖信號的這種方法稱為內(nèi)部時鐘方式。這種模式下單片機系統(tǒng)的時鐘頻率由晶振頻率的大小決定,例如晶振頻率為12MHz時,單片機的時鐘頻率就是12MHz。除了內(nèi)部時鐘方式外,還可以把適當頻率的外部時鐘脈沖信號輸入到XTAL2端,而把XTAL1端接地。圖3-2時鐘振蕩電路3.1.2復位電路設計復位端(9管腳)與+VCC之間連接了一個10uF的電解電容C6,當單片機系統(tǒng)上電時,電解電容C6的正極電壓瞬間變?yōu)?5V,電容對于這個瞬間的電壓突變相當于短路,于是+5V瞬間電壓加到復位端上使單片機復位。上電后,電解電容C6迅速充滿電,在電路中相當于斷路,此時復位端電平反轉為低電平,單片機開始進入正常工作狀態(tài)。這即是單片機上電后的初次復位。為了方便調(diào)試,在C6的基礎上并聯(lián)了按鈕開關S1,必要的時候可以進行手動復位,當按鈕開關閉合時,無論單片機在執(zhí)行什么操作都會被強行復位。圖3-3復位電路3.1.3供電電路設計通用串行總線,Universal
Serial
Bus,簡稱USB。屬于通用外部總線標準的一種,多用于電腦與外部設備之間的數(shù)據(jù)傳輸,也常用于小型系統(tǒng)的供電。USB總線接口需要具有支持設備的即插即用的功能,同時支持熱插拔功能。本次設計采用B型USB接口對系統(tǒng)進行供電,也就是在USB口焊接電源線和地線,將數(shù)據(jù)線管腳懸空。本次采用USB供電和電池供電兩種供電方式,前者主要用于設計成型初期的調(diào)試,后者用于設計完成后的獨立供電。兩者的供電電壓均為DC5V。圖3-4供電電路此外,在最小系統(tǒng)中還有一個值得注意的地方,就是STC89C52的EA/VPP端(31管腳),EA/VPP端是單片機的外部程序存儲器訪問控制端。如果它接高電平,單片機就會到本單片機內(nèi)部程序存儲器中找程序來執(zhí)行;如果EA/VPP端接低電平,則單片機執(zhí)行的全部是外部程序存儲器中的程序。本次設計由于沒有外部存儲器,故將此引腳直接拉高。3.2測距模塊設計3.2.1超聲波發(fā)射電路超聲波發(fā)射電路的主要構成器件為傳感器有TCT40-16T和反相器74LS04,單片機通過P1.0端口發(fā)射5個脈沖信號,同時將定時器打開進行計時。脈沖信號經(jīng)過六反相器發(fā)送到換能器的兩端,這種連接方式主要是為了提高超聲波的發(fā)射強度。最終輸出端口利用兩個反相器并聯(lián)的辦法,提高超聲波換能器的驅(qū)動效果。電阻R14、R15的設計可以提高換能器的阻尼作用,這種電路可以減少振蕩時間,增加74LS04的外部驅(qū)動能力。超聲波發(fā)射電路原理圖如圖3-5所示。圖3-5超聲波發(fā)射電路3.2.2超聲波接收電路超聲波接收電路主要由CX20106A和擴音器及部分外圍電路組成,通過閱讀CX20106A的技術文檔,將接收的中心頻率調(diào)節(jié)至40KHz,將7腳輸出的電平信號連接至單片機的外部中斷接收口P3.3,單片機通過檢測P3.3口的電平狀態(tài)來判斷是否成功接收到回波。具體接收電路如圖3-6所示。圖3-6超聲波接收電路3.2.3溫度補償電路選用DS18B20型溫度傳感器作為溫度補償芯片。其“一線總線”的封裝設計可以在最大程度上簡化硬件電路,最大測溫范圍為-50℃~+125℃,在-10℃~+85℃之間,測溫精度可以精確到+0.5℃。最少只需一個IO口即可完成對溫度的測量,再用過內(nèi)部算法對聲速進行補償,補償電路如圖3-7所示。圖3-7溫度補償電路3.3語音模塊設計語音芯片采用NY3P035,三個控制端口分別接單片機的P1.7、P1.6、P1.5,用來控制語音的提取,采用8Ω/1W的擴音器進行信息播報。另外設置兩個獨立按鍵,作為語音信息的播報按鍵和LCD1602的背光開關。其連接方式如圖3-8所示。圖3-8語音模塊電路3.4顯示模塊圖3-9顯示模塊電路3.5報警模塊本設計采用蜂鳴器作為報警模塊的主要組成部分,由于蜂鳴器發(fā)聲所需的電流較大,增加了PNP三極管8550進行驅(qū)動,在檢測距離超過預警值時,單片機發(fā)出警報信息隨即驅(qū)動蜂鳴器進行報警,提醒駕駛人員。報警模塊電路如圖3-10所示。圖3-10報警模塊電路
第四章系統(tǒng)的軟件設計本設計在完整地搭建好硬件電路的基礎上針對性的編寫了相應的代碼程序,軟硬件想結合成功的實現(xiàn)了單片機倒車防撞功能,程序部分算法流程圖如下。4.1超聲波測距算法設計超聲波測距算法設計主要包括超聲波的發(fā)送和接收,計數(shù)器的啟動及重新賦值。其主要流程圖如圖4-1所示。YYNNY發(fā)送超聲波,超聲波脈沖個數(shù)5個延時避開盲區(qū)收到回波否?預設時間?啟動計時器T0停止計時計算測量值超聲波測距結束圖4-1超聲波測距算法設計4.2語音播報程序設計4.2.1語音播報函數(shù)設計要設計語音播報的程序,首先要了解語音芯片NY3P035內(nèi)部語音信息的調(diào)用方法。例如需要播報第十段聲音,單片機控制原理是:先將復位脈沖送至RST腳,然后將10個脈沖送至DATA腳,芯片立即開始工作,播報第十段的聲音。如果需要連續(xù)播報第十段和第五段聲音,先將一個復位脈沖發(fā)送到RST腳,然后把10個脈沖發(fā)送到DATA腳。芯片立即開始工作,播報第十段的聲音;此時通過對單片機對BUSY管腳的狀態(tài)進行檢測,看其是否為低電平,如果是低電平則一直等待,如果是此管腳變?yōu)楦唠娖剑⒓窗l(fā)送給RST腳一個復位脈沖,接著發(fā)送給DATA腳5個脈沖。芯片立即開始工作,播報第5段的聲音,依此類推。根據(jù)語音芯片控制原理,設計語音播報函數(shù)如下:voidMusic(z) //播報處理z等于幾就播報第幾段語音{rst=1;//復位脈沖,延時2毫秒delay1ms();delay1ms();rst=0; delay1ms();delay1ms();while(z>0) //進入循環(huán),循環(huán)z次,調(diào)用第z段語音信息{dat=1; //發(fā)送數(shù)據(jù)脈沖,延時1毫秒 delay1ms();dat=0;z--;}}4.2.2播報調(diào)用算法設計播報子函數(shù)設計完成后,開始設計關于子函數(shù)的調(diào)用及循環(huán)。這里說一下個人對算法設計的理解。其實,一個算法的設計可以簡單的這樣想,例如你得到一個指南針,通過學習你明白它可以幫你找出方向,然后你用它找到了回家的路,即拿來、理解、使用。我們目前所處的時代是一個信息高速開放的時代,社會的分工越來越細化,大多數(shù)情況下我們并不需要把每個代碼都一字一句的敲出來。很多底層的驅(qū)動代碼,我們只要可以理解,修改之后可以應用,就可以遵照魯迅先生的拿來主義,拿來并使用。結束YN接收當前測量距離超出測量距離?播報“當前結束YN接收當前測量距離超出測量距離?播報“當前”、“距離”播報具體值語音播報播報“米”圖4-2語音播報流程圖
第五章調(diào)試結果與改進方案5.1測量結果與分析表5-1測量結果記錄序號實際距離/cm測量距離/cm相對誤差15049.12%210099.52%3150146.42.6%4200194.53%5250243.42.8%6300291.73%7350340.42.8%在基于51單片機超聲波測距系統(tǒng)設計制作完成之際,需要對系統(tǒng)測距性能進行驗證,這是檢驗設計成果的必要過程。為了減少環(huán)境干擾,提升驗證的可靠性,系統(tǒng)性能驗證試驗通過在實驗室內(nèi)完成。以實驗室墻壁作為目標物,將超聲波探頭正對平整的墻壁,然后開啟測距系統(tǒng)測量墻壁至探頭之間的距離,驗證試驗中設計了9中不同的測量距離,即分別為:50、100、150、200、250、300、350cm。每個距離值用超聲波測距儀測量3次,計算出其平均值,并用皮尺精確測量出探頭至墻壁的實際距離。表5.1給出了測量結果。測量結果分析:從測量實驗結果看,本設計的誤差率在3%左右,基本可以滿足實際應用的需求。誤差分析:造成測量誤差產(chǎn)生的原因可歸結為如下幾個方面:(1)超聲波發(fā)射時的余振導致接收程序中必須進行2.2ms的延時,導致40cm以內(nèi)的距離無法測得;(2)小車遙控模塊對超聲波測距的影響;(3)超聲波能量的衰減。超聲波的特性之一就是傳播過程中其回波幅度隨傳播距離增加而成指數(shù)形式衰減,導致長距離回波難以被檢測到,造成一定的延時,而能量衰減也是導致其測量范圍有限的根本原因。5.2設計結論本設計基本達成倒車防撞系統(tǒng)的基礎功能,可以實時監(jiān)測車身與障礙物之間的距離,在距離達到預警值時蜂鳴器立即進行報警,手動按鍵后,可對當前距離進行正確播報。在此基礎上,本人增加了展示電路部分,即將倒車防撞系統(tǒng)置于一輛小車之上,小車自帶測速功能,當距離到達預警之后,由無線遙控模塊控制小車改變其行進方向,從而達到規(guī)避碰撞的效果。由于無線遙控模塊與超聲波接收電路之間的電磁干擾較重,在兩個電路之間增加了屏蔽處理,將兩塊電路之間的電磁影響減到最小。小車控制部分只作為倒車防撞系統(tǒng)的展示電路,故本人并未在設計中詳細介紹其電路及程序代碼。5.3改進方案在倒車防撞系統(tǒng)的基礎電路上進行P4口的擴展,擴展P4口后,將小車電機的控制電路和無線遙控模塊的控制電路連接在同一塊電路板上,在測距模塊的反饋值超過最終極限值3秒內(nèi)對小車進行緊急剎車,實現(xiàn)真正意義上的智能防撞。但由于本人能力有限,在IO口擴展以及多中斷進程控制方面掌握并不熟練,這個方案很難調(diào)試成功,故未對此方案進行實施。雖然這個實際在實際操作中還有很多缺陷,但它已將達到了我最初預期的功能。第一,通過這次在電子方面的電路的設計,讓我對一個產(chǎn)品的開發(fā)流程有了一定的了解;第二,在畢業(yè)設計的過程中我不斷的查閱資料,了解關于設計課題的各方面知識,鞏固了很多的基礎知識,也了解了很多以前不曾注意到的知識面;第三,掌握了在遇到困難時最好的處理方案,發(fā)現(xiàn)問題并解決問題是最有效的工作方式,雖然過程并不容易,但每次問題的解決都會是一次良好的學習過程,堅持下去,就可以扎實的掌握技術的組成結構。
心得體會在即將離開校園之際,我要特別感謝我的指導老師閆坤對我的關心和指導。在我做畢業(yè)設計的過程中,老師對我的能力十分信任,讓我在設計的方向和方案的制定上有了很大的自由,也為后期調(diào)試工作的順利進行奠定了先決條件。數(shù)字電路是我在大學里認真去看的第一本書,閆坤老師也是我在大學里的啟蒙老師。我在最初的課程中十分盲目,她在面對我一次次無厘頭的問題時十分耐心,教給我很多基礎的知識,這個過程也使我們建立了深厚的友誼。千里之行始于足下,如果沒有這些基礎知識的學習,恐怕我也很難完成這份畢業(yè)設計,在這里祝你工作順利,生活愉悅。同時,在此次設計中,也得到了李德裕、李繼強兩位導師的悉心指導和幾個室友后期的很多幫助。在此一并表示感謝,正是由于你們,才有了這次設計的最終定型。最后,感謝我即將離開的長春建筑學院,希望母校的未來越辦越好,再創(chuàng)輝煌。
參考文獻[1]曲金玉,崔振民.汽車電器與電子控制技術(第二版)[M].北京大學出版社,2012[2]周航慈.單片機應用程序設計技術[M].北京航空航天大學出版社,2002[3]張毅剛.單片機原理及接口技術[M].北京:人民郵電出版社,2011[4]郭天祥.新概念51單片機C語言教程[M].北京電子工業(yè)出版社,2009[5]華成英,童詩白.模擬電子技術基礎(第四版)[M].北京:高等教育出版社,2006[6]閆石.數(shù)字電子技術基礎第四版M].北京:高等教育出版社1998[7]彭為.單片機典型系統(tǒng)設計實例精講[M].北京:電子工業(yè)出版社,2006[8]張毅剛.新編MCS51單片機應用設計(第三版)[M].哈爾濱:哈爾濱工業(yè)大學出版社,2008[9]李瀚蓀.電路分析基礎[M].北京:高等教育出版社,1991[10]陳權昌,李興富.單片機原理及應用[M].廣州:華南理工大學出版社,2007[11]李慶亮.C語言程序設計實用教程[M].北京:機械工業(yè)出版社,2005[12]汪文,陳林.單片機原理及應用[M].湖北:華中科技大學出版社,2007.[13]康華光.電子技術基礎數(shù)字部分[M].北京:高等教育出版社,2008.[14]徐江海.單片機實用教程[M].北京:機械工業(yè)出版社,2006[15]樓然苗,李光飛.單片機課程設計指導[M].北京航空航天大學出版社,2011
附錄1總體算法流程圖YYYNNNY距離>預設值距離<盲區(qū)值===顯示值=CCC顯示值=———距離測量值段碼轉換距離>盲區(qū)值===蜂鳴器報警進行超聲波測距,取出測量到的時間,進行溫度補償計算距離啟動DS18B20進行溫度測量開始單片機初始化初始化DS18B20發(fā)送超聲波N顯示溫度測量段碼轉換播報按鍵進行語音播報
附錄2部分程序代碼#include<reg52.h>#include<stdio.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint;#defineRS_CLRRS=0 //lcd1602端口#defineRS_SETRS=1#defineRW_CLRRW=0#defineRW_SETRW=1#defineEN_CLREN=0#defineEN_SETEN=1#defineNEAR50 //預先設置的報警距離sbitRS=P2^1; //定義1602端口sbitRW=P2^2;sbitEN=P2^3;sbitDQ=P2^4; //ds18b20端口sbitk1=P3^5;sbitk2=P3^6;sbitcsb=P2^5;sbitcsbint=P3^3;sbitbg=P2^6;sbitfm=P2^0;sbitbus=P1^7; //語音芯片工作狀態(tài)sbitdat=P1^6; //語音芯片數(shù)據(jù)位sbitrst=P1^5; //語音芯片復位voidMsc(); //語單播報主程序voidMusic(z); //語音播報voidtempzf(); //判斷溫度正負voidkeyscan(); //鍵盤檢測函數(shù)voidtempaccept(); //溫度值送顯voiddistancemeasure(); //測距程序voiddistanceaccept(); //距離處理voiddelay1ms(void); //延時1毫秒程序unsignedcharaa[16]={'H','a','p','p','y','','F','o','r','e','v','e','r','','x','z',}; //QQ:763101916unsignedcharbb[11]={'','','','','.','','','','','',}; //溫度數(shù)組unsignedcharcc[]={'A','.','A','A','m'}; //測距送顯數(shù)組unsignedcharzf,n,xm0,xm1,xm2,bbh,z;unsignedintk,s,j;inttemp;floatcsbc,wdz; /*uS延時函數(shù)(有參)*/voidDelayUs2x(unsignedchart){ while(--t);}/*ms延時函數(shù)(有參)*/voidDelayMs(unsignedchart){ while(t--) //大致延時1mS { DelayUs2x(245); DelayUs2x(245); }}//LCD控制函數(shù)voidwrite_com(unsignedcharcom)//寫命令{ RS_CLR; RW_CLR; P0=com; DelayMs(5); EN_SET; DelayMs(5); EN_CLR;}voidwrite_data(unsignedchardate) //寫一個字符{ RS_SET; RW_CLR; P0=date; DelayMs(5); EN_SET; DelayMs(5); EN_CLR;}voidinit() //初始化{ write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01);}/*寫入字符串函數(shù)*/voidLCD_Write_String(unsignedcharx,unsignedchary,unsignedchar*s){ if(y==0) { write_com(0x80+x); } else { write_com(0xC0+x); } while(*s) { write_data(*s); s++; }}//l8b20控制函數(shù)/*18b20初始化*/bitInit_DS18B20(void){ bitdat=0; DQ=1; //DQ復位 DelayUs2x(5); //稍做延時 DQ=0; //單片機將DQ拉低 DelayUs2x(200); //精確延時大于480us小于960us DelayUs2x(200); DQ=1; //拉高總線 DelayUs2x(50); //15~60us后接收60-240us的存在脈沖 dat=DQ; //如果x=0則初始化成功,x=1則初始化失敗 DelayUs2x(25); //稍作延時返回 returndat;}/*讀取一個字節(jié)*/unsignedcharReadOneChar(void){ unsignedchari=0; unsignedchardat=0; for(i=8;i>0;i--) { DQ=0; //給脈沖信號 dat>>=1; DQ=1; //給脈沖信號 if(DQ) dat|=0x80; DelayUs2x(25); } return(dat);}/*寫入一個字節(jié)*/voidWriteOneChar(unsignedchardat){ unsignedchari=0; for(i=8;i>0;i--) { DQ=0; DQ=dat&0x01; DelayUs2x(25); DQ=1; dat>>=1; } DelayUs2x(25);}/*讀取溫度*/unsignedintReadTemperature(void){ unsignedchara=0; intb=0; intt=0; floattt=0; while(Init_DS18B20()); //檢測初始化是否成功 WriteOneChar(0xCC); //跳過讀序號列號的操作 WriteOneChar(0x44); //啟動溫度轉換 DelayMs(10); Init_DS18B20(); WriteOneChar(0xCC); //跳過讀序號列號的操作 WriteOneChar(0xBE); //讀取溫度寄存器等(共可讀9個寄存器)前兩個就是溫度 a=ReadOneChar(); //低位 b=ReadOneChar(); //高位 t=b; t<<=8; //兩個字節(jié)組合為一個字 t=t|a; tt=t*0.0625; //溫度在寄存器中為12位,分辨率為0.0625° t=tt*10+0.5; //乘以10表示小數(shù)點后面只取1位,加0.5是四舍五入 return(t);}voidmain(){ TH0=0; TL0=0; TMOD=0X11; //定時器T0為工作方式1,16位計數(shù)器,作為計時用,T1為工作方式 EA=0; //關總中斷 bg=0; fm=1; //背光關閉 n=0; //背光按鍵返回標志位置零 bbh=0; //播報按鍵返回標志位置零 init(); //LCD1602初始化 Init_DS18B20(); //18b20初始化 bb[6]=0xdf; //固定顯示溫度單位℃ bb[7]=0x43; while(1) { temp=ReadTemperature(); //溫度讀取 tempzf(); //判斷溫度正負 ET0=1; //開定時器T0中斷,用以計時 TR0=1; //啟動定時器T0 EA=1; //開總中斷 distancemeasure(); //測距程序 tempaccept();
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 大班保育工作計劃大班保育秋季工作計劃
- 七年級下冊地理教學工作計劃
- 大班綜合科教學計劃
- 2025外科護士長2月份工作計劃
- 2025年度第一學期綜合教研組工作計劃
- 中小學教師職業(yè)道德個人總結工作計劃
- 公司員工銷售培訓工作計劃
- 九年級英語教學計劃范本
- 七年級上冊人教版數(shù)學教學計劃從算式到方程
- 《城鎮(zhèn)土地價格》課件
- 當前農(nóng)村矛盾糾紛課件
- 社會組織信息公開制度范本
- 四年級上冊心理健康教育教案-多彩的情緒 全國通用
- 管道爬壁機器人設計說明書
- 二年級安全教育期末測試題
- 2022電大《建筑材料(A)》期末試題及答案
- 團隊合作能力和創(chuàng)新團隊建設試題100分標準答案
- 22秋中傳媒《傳播學概論》作業(yè)考核答卷
- 商務英語視聽說知到章節(jié)答案智慧樹2023年山東外國語職業(yè)技術大學
- C++程序設計智慧樹知到答案章節(jié)測試2023年咸陽師范學院
- 五年級上冊道德與法治課件-第8課第四課時 影響深遠的漢字人教部編版
評論
0/150
提交評論