基于單片機(jī)的超聲波測(cè)距與應(yīng)用_第1頁(yè)
基于單片機(jī)的超聲波測(cè)距與應(yīng)用_第2頁(yè)
基于單片機(jī)的超聲波測(cè)距與應(yīng)用_第3頁(yè)
基于單片機(jī)的超聲波測(cè)距與應(yīng)用_第4頁(yè)
基于單片機(jī)的超聲波測(cè)距與應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩55頁(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)介

1、1 / 60東 莞 理 工 學(xué) 院本 科 畢 業(yè) 設(shè) 計(jì)畢業(yè)設(shè)計(jì)題目:畢業(yè)設(shè)計(jì)題目:基于單片機(jī)的超聲波測(cè)距與應(yīng)用基于單片機(jī)的超聲波測(cè)距與應(yīng)用超聲波測(cè)距系統(tǒng)設(shè)計(jì)超聲波測(cè)距系統(tǒng)設(shè)計(jì)學(xué)生:學(xué)生: 學(xué)學(xué) 號(hào):號(hào): 系系 別:別: 計(jì)算機(jī)學(xué)院計(jì)算機(jī)學(xué)院專業(yè)班級(jí):專業(yè)班級(jí): 指導(dǎo)教師與職稱:指導(dǎo)教師與職稱: 講師講師起止時(shí)間:起止時(shí)間:20092009 年年 3 3 月月 20092009 年年 6 6 月月2 / 60摘摘 要要由于超聲波具有方向性好,穿透性強(qiáng),易于獲得較集中的聲能等特點(diǎn),因此將它應(yīng)用于倒車?yán)走_(dá),能有效地減少交通事故的發(fā)生。本系統(tǒng)以 STC12LE5410AD 單片機(jī)為核心,根據(jù)超聲波工

2、作原理,采用觸發(fā)自檢技術(shù),設(shè)計(jì)了一款低成本、高精度,能顯示數(shù)據(jù),并附帶蜂鳴功能的超聲波倒車?yán)走_(dá)防撞系統(tǒng)。該系統(tǒng)極便利了駕駛?cè)藛T,有效地避免了交通事故的發(fā)生。本文主要涉與超聲波測(cè)距系統(tǒng)設(shè)計(jì),包括系統(tǒng)總體框架設(shè)計(jì),元器件選型,超聲波工作原理分析,硬件電路設(shè)計(jì),軟件代碼功能實(shí)現(xiàn),以與系統(tǒng)功能測(cè)試等。關(guān)鍵詞關(guān)鍵詞 超聲波,測(cè)距,倒車?yán)走_(dá),單片機(jī)1 / 60AbstractAbstractUltrasonic is good at locating,and it has a strong penetration,also, it can obtain a higher concentration of

3、sound energy easily, so the traffic accidents will decrease if we use it in the reverse radar.This system is base on the single-chip microcomputer which is called STC12LE5410AD,it is according to the working principle of ultrasonic, and using self-triggering technology to designed an ultrasonic reve

4、rsing radar,which is low-cost,high accuracy,and can display data and buzz.The system can greatly facilitate the driver, and itwill effectively reduce the rate of the traffic accidents happened.This article mainly relates to the design of ultrasonic ranging system, including the overall framework of

5、system design, component selection, the analysis of the working principle of ultrasonic, hardware circuit design,the implement of the software code to functions, as well as system testing.KeyKey word:word: Ultrasonic, Measure, Reversing radar,Single-chip microcomputer2 / 60目錄目錄1.1.緒論緒論 1 11.11.1 選題的

6、背景和意義選題的背景和意義 1 11.21.2 本課題主要研究容本課題主要研究容 1 11.31.3 本人工作容本人工作容 2 22.2.系統(tǒng)系統(tǒng)分分析與設(shè)計(jì)析與設(shè)計(jì) 3 32.12.1 系統(tǒng)分析系統(tǒng)分析 3 32.22.2 方案方案論論證證 4 42.32.3 系統(tǒng)系統(tǒng)設(shè)設(shè)計(jì)計(jì) 6 63.3.超聲波測(cè)距系統(tǒng)的硬件設(shè)計(jì)超聲波測(cè)距系統(tǒng)的硬件設(shè)計(jì) 12123.13.1 設(shè)計(jì)概述設(shè)計(jì)概述 12123.23.2 單片機(jī)選型單片機(jī)選型 12123.33.3 開發(fā)工具開發(fā)工具 21213.43.4 設(shè)計(jì)要求和構(gòu)想設(shè)計(jì)要求和構(gòu)想 22223.53.5 系統(tǒng)部分電路工作原理系統(tǒng)部分電路工作原理 23233.6

7、3.6 電路圖分析電路圖分析 26264.4.超聲波測(cè)距系統(tǒng)的軟件設(shè)計(jì)超聲波測(cè)距系統(tǒng)的軟件設(shè)計(jì) 28284.14.1 超聲波測(cè)距的算法設(shè)計(jì)超聲波測(cè)距的算法設(shè)計(jì) 28284.24.2 測(cè)距系統(tǒng)主程序設(shè)計(jì)測(cè)距系統(tǒng)主程序設(shè)計(jì) 28284.34.3 超聲波發(fā)生子程序和超聲波接收中斷程序超聲波發(fā)生子程序和超聲波接收中斷程序 29294.44.4 系統(tǒng)測(cè)試系統(tǒng)測(cè)試 31315.5.總結(jié)總結(jié) 35355.15.1 畢業(yè)設(shè)計(jì)工作總結(jié)畢業(yè)設(shè)計(jì)工作總結(jié) 35355.25.2 工作展望工作展望 35353 / 60附錄附錄 3636參考文獻(xiàn):參考文獻(xiàn):5 54 4致致 55551 / 601.緒論1.1 選題的背景

8、和意義1.1.1 選題的背景隨著我國(guó)經(jīng)濟(jì)飛速發(fā)展,越來(lái)越多的人擁有了自己的汽車,同時(shí)由泊車和倒車所引發(fā)的事故也越來(lái)越多。這些事故常常給駕駛員帶來(lái)許多的麻煩,因此,如果有倒車?yán)走_(dá),事情將會(huì)有很大的改觀。超聲波倒車?yán)走_(dá),能以聲音或者更為直觀的顯示告知駕駛員周圍障礙物的情況,幫駕駛員解除泊車和啟動(dòng)車輛時(shí)需四處探視的一些困擾,同時(shí)這也在一定程度上彌補(bǔ)了駕駛員視野存在死角和視線模糊等缺陷。另外,超聲波是一種在彈性介質(zhì)中的機(jī)械震蕩,它擁有指向性強(qiáng)、能量消耗緩慢、傳播距離較遠(yuǎn)等優(yōu)點(diǎn),所以經(jīng)常被用于進(jìn)行距離測(cè)量. 超聲波主要應(yīng)用于 交通安全和工業(yè)監(jiān)測(cè)探測(cè)現(xiàn)場(chǎng),如儲(chǔ)油罐液位檢測(cè)、深井探測(cè)等.而最貼近我們生活的就

9、是超聲波倒車?yán)走_(dá)應(yīng)用。利用其良好的指向性和與時(shí)性易于我們做到實(shí)時(shí)、高精度的監(jiān)控。1.1.2 選題的意義(1)制作一種簡(jiǎn)便而又實(shí)用的測(cè)量工具測(cè)距方式有很多種,如紅外線測(cè)距,激光測(cè)距,超聲波測(cè)距,但本系統(tǒng)設(shè)計(jì)采用超聲波測(cè)距,因?yàn)槌暡▊鞲衅鲀r(jià)格低廉,而且超聲波指向性良好,40kHz聲波衰減緩慢,適合中長(zhǎng)距離測(cè)量,故選其作為測(cè)量手段簡(jiǎn)單實(shí)用。(2)雙側(cè)超聲波測(cè)距能實(shí)現(xiàn)基本“瞄準(zhǔn)”功能,使測(cè)距效果更精確。(3)減少交通事故的發(fā)生 公路上發(fā)生倒車碰撞或者汽車追尾車毀人亡的交通事故已屢見不鮮,這通常是由于駕駛員沒辦法看到一些死角而引起的,超聲波倒車?yán)走_(dá)能以聲音或更直觀的顯示讓駕駛員了解周圍障礙物的情況,因

10、而減少了事故的發(fā)生率。1.2 本課題主要研究容本設(shè)計(jì)以時(shí)間,處理聲波信號(hào)和串口通信作為實(shí)現(xiàn)超聲波測(cè)距與倒車?yán)走_(dá)防撞功能應(yīng)用的主要切入點(diǎn),系統(tǒng)通過利用超聲波的定向傳播和固體反射特性,由單片機(jī)控制超聲波傳感器接收系統(tǒng)發(fā)射的 40kHz 聲波的回波信號(hào),接著根據(jù)回波時(shí)間差和傳播速度,直接計(jì)算出被測(cè)物體與測(cè)距系統(tǒng)之間的距離,然后將其傳給倒車?yán)走_(dá)防撞系統(tǒng)進(jìn)行顯示,使人能做出適宜的倒車反應(yīng)?;究驁D如下: 2 / 60被測(cè)物體超聲波接收超聲波發(fā)送單片機(jī)串口車載系統(tǒng)危險(xiǎn)系數(shù)測(cè)量數(shù)據(jù)發(fā)送/接收接收/發(fā)送顯示40KHz圖 1 系統(tǒng)基本框圖1.3 本人工作容本人主要負(fù)責(zé):超聲波測(cè)距系統(tǒng)設(shè)計(jì),包括對(duì)整個(gè)系統(tǒng)的工作原

11、理進(jìn)行分析,選擇元器件,確定設(shè)計(jì)方案,熟悉 STC12LE5410AD 芯片的使用,利用 Protel 進(jìn)行電路圖設(shè)計(jì),用 Proteus 仿真電路,用 C 語(yǔ)言編寫程序,焊接硬件電路,對(duì)硬件電路與代碼進(jìn)行調(diào)試以與測(cè)試、完善系統(tǒng)系統(tǒng)功能等。2.系統(tǒng)分析與設(shè)計(jì)2.1 系統(tǒng)分析2.1.1 系統(tǒng)簡(jiǎn)介本設(shè)計(jì)是基于單片機(jī)的超聲波測(cè)距與應(yīng)用,系統(tǒng)主要分為兩大部分,一部分是超聲波測(cè)距系統(tǒng),另一部分是倒車?yán)走_(dá)防撞系統(tǒng)。測(cè)距系統(tǒng)利用了超聲波定向傳播和固體反射特性,由單片機(jī)控制傳感器發(fā)射聲波,之后根據(jù)傳播速度與收到的回波時(shí)間,算出被測(cè)物體的距離,并在數(shù)碼管顯示,同時(shí)也將其發(fā)送給倒車?yán)走_(dá)防撞系統(tǒng),使數(shù)據(jù)得到進(jìn)一步顯

12、示并且呈現(xiàn)倒車危險(xiǎn)系數(shù),以與鳴叫等,給駕駛?cè)藛T良好的倒車提醒。2.1.2 系統(tǒng)詳細(xì)介紹系統(tǒng)主要分為三大模塊:超聲波測(cè)距系統(tǒng),串口通信,倒車?yán)走_(dá)防撞系統(tǒng)。3 / 60(1)超聲波測(cè)距系統(tǒng):通過STC12LE5410AD芯片控制整個(gè)單片機(jī)電路,該電路通電時(shí),工作指示燈會(huì)交替亮滅,系統(tǒng)本身通過按鍵可以控制單片機(jī)觸發(fā)超聲波傳感器工作,也可以由倒車?yán)走_(dá)防撞系統(tǒng)通過串口發(fā)送指令來(lái)對(duì)單片機(jī)的測(cè)量工作進(jìn)行控制。當(dāng)測(cè)距系統(tǒng)收到倒車?yán)走_(dá)防撞系統(tǒng)發(fā)來(lái)的幀時(shí),系統(tǒng)中的STC12LE5410AD單片機(jī)首先對(duì)幀進(jìn)行校驗(yàn),核對(duì)幀有效后,根據(jù)其中的命令字進(jìn)行相應(yīng)的測(cè)量,觸發(fā)超聲波發(fā)射器發(fā)送聲波,此時(shí)會(huì)有啪啪的響聲。定時(shí)器在余

13、波處理時(shí)間過后開始計(jì)時(shí),當(dāng)單片機(jī)檢測(cè)到回波信號(hào)后,定時(shí)器停止計(jì)時(shí)。單片機(jī)根據(jù)定時(shí)器的時(shí)間與聲音的傳播速度自動(dòng)算出被測(cè)物體的距離,通過串口通信把數(shù)據(jù)發(fā)送給AT89C51,AT89C51在驗(yàn)證所接收的幀正確后,會(huì)將距離在數(shù)碼管上以米為單位顯示出來(lái),精度可達(dá)毫米級(jí)。同時(shí),STC12LE5410AD也會(huì)通過串口通信將數(shù)據(jù)以幀的格式發(fā)給倒車?yán)走_(dá)系統(tǒng),此時(shí)工作指示燈會(huì)頻繁閃爍。(2)串口通信:主要負(fù)責(zé)超聲波測(cè)距系統(tǒng)與倒車?yán)走_(dá)防撞系統(tǒng)之間數(shù)據(jù)的傳輸。串口是計(jì)算機(jī)上一種非常通用設(shè)備通信的協(xié)議。大多數(shù)計(jì)算機(jī)包含兩個(gè)基于RS232 的串口。串口也是儀器儀表設(shè)備通用的通信協(xié)議。1(3)倒車?yán)走_(dá)防撞系統(tǒng):倒車?yán)走_(dá)防撞

14、系統(tǒng)是一個(gè)用VC編寫的軟件系統(tǒng),在與測(cè)距系統(tǒng)通信的過程中,將命令字用幀格式封裝,通過串口通信發(fā)送不同模式下的幀,使測(cè)距系統(tǒng)按規(guī)定的測(cè)量模式進(jìn)行相應(yīng)的測(cè)量,也可以控制測(cè)量系統(tǒng)停止工作。當(dāng)?shù)管嚴(yán)走_(dá)防撞系統(tǒng)檢測(cè)到返回幀時(shí),會(huì)檢測(cè)其有效性,然后從中提取有效的測(cè)量數(shù)據(jù),在界面上直觀地顯示出來(lái),同時(shí)系統(tǒng)會(huì)控制倒車碰撞危險(xiǎn)系數(shù)跟著數(shù)據(jù)做相應(yīng)的改變,而且當(dāng)?shù)管囂幱谂鲎参kU(xiǎn)區(qū)時(shí)也會(huì)控制蜂鳴器鳴叫,而該蜂鳴功能主要由AT89C51來(lái)實(shí)現(xiàn),此倒車?yán)走_(dá)防撞系統(tǒng)功能給了駕駛?cè)藛T良好的倒車提醒,極方便了駕駛?cè)藛T的生活。2.2 方案論證本設(shè)計(jì)采用超聲波測(cè)距,利用改進(jìn)型單片機(jī) STC12LE5410AD 對(duì)系統(tǒng)電路進(jìn)行主要控

15、制,使用串口實(shí)現(xiàn)單片機(jī)與單片機(jī),單片機(jī)與 PC 機(jī)之間的通信,在單純的測(cè)距系統(tǒng)中其數(shù)據(jù)結(jié)果采用數(shù)碼管顯示。2.2.1 原因闡述(1)超聲波傳感器 測(cè)距方式有很多種,如紅外線測(cè)距,激光測(cè)距,超聲波測(cè)距,但本系統(tǒng)設(shè)計(jì)采用超聲波測(cè)距,因?yàn)橐话愠暡▊鞲衅鞯膬r(jià)格低廉,而且超聲波指向性較強(qiáng),40kHz 聲波衰減緩慢,適合中長(zhǎng)距離測(cè)量。超聲波傳感器是利用超聲波的特性研制而成的傳感器。超聲波是一種振動(dòng)頻率高于聲波的機(jī)械波,由換能晶片在電壓的激勵(lì)下發(fā)生振動(dòng)產(chǎn)生的,它具有頻率高、波長(zhǎng)短、繞射現(xiàn)象小,特別是方向性好、能夠成為射線而定向傳播等特點(diǎn)。超聲波對(duì)液體、固體的穿透本領(lǐng)很大,尤其是在不透明的固體中,它可穿透幾

16、十米的深度。超聲波碰到雜質(zhì)或分界面會(huì)產(chǎn)生顯著反射形成反射成回波,碰到活動(dòng)物體能產(chǎn)生多普勒效應(yīng)。因此超聲波檢測(cè)廣泛應(yīng)用在工業(yè)、國(guó)防、生物醫(yī)學(xué)等方面。4 / 60超聲波測(cè)距系統(tǒng)的制作和調(diào)試,其中超聲波發(fā)射和接收采用 16 的超聲波換能器 TCT40-16F1(T 發(fā)射)和 TCT40-16S1(R 接收) ,中心頻率為 40kHz,安裝時(shí)應(yīng)保持發(fā)射探頭和接收探頭的中心軸線平行并相距 48cm。 圖 2-1 超聲波傳感器超聲波探頭主要由壓電晶片組成,既可以發(fā)射超聲波,也可以接收超聲波。小功率超聲探頭多作探測(cè)作用。檢測(cè)圍和聲波發(fā)射角檢測(cè)圍和聲波發(fā)射角超聲波傳感器的檢測(cè)圍取決于其使用的波長(zhǎng)和頻率。波長(zhǎng)越

17、長(zhǎng),頻率越小,檢測(cè)距離越大,如具有毫米級(jí)波長(zhǎng)的緊湊型傳感器的檢測(cè)圍為 300500mm,波長(zhǎng)大于 5mm 的傳感器檢測(cè)圍可達(dá) 8m。一些傳感器具有較窄的 6 聲波發(fā)射角,因而更適合精確檢測(cè)相對(duì)較小的物體。另一些聲波發(fā)射角在 12 至 15 的傳感器能夠檢測(cè)具有較大傾角的物體。此外,我們還有外置探頭型的超聲波傳感器,相應(yīng)的電子線路位于常規(guī)傳感器外殼。這種結(jié)構(gòu)更適合檢測(cè)安裝空間有限的場(chǎng)合。被測(cè)物被測(cè)物能運(yùn)用超聲波傳感器進(jìn)行檢測(cè)的最理想的物體應(yīng)該是大型、平坦、高密度的物體,垂直放置面對(duì)著傳感器感應(yīng)面。最難檢測(cè)的是那些面積非常小,或者是可以吸收聲波的材料制作的,比如泡沫塑料,或者是傾斜面對(duì)著傳感器的。

18、一些比較困難被檢測(cè)的物體可以先對(duì)物體的背景表面進(jìn)行示教,再對(duì)放在傳感器和背景之間的物體作出反應(yīng)。用于液體測(cè)量時(shí)需要要液體的表面垂直面對(duì)超聲波傳感器,如果液體的表面非常不平整,那么傳感器的響應(yīng)時(shí)間要調(diào)的更長(zhǎng)一些,它會(huì)將這些變化做個(gè)平均,可以比較固定的讀取。11標(biāo)準(zhǔn)檢測(cè)物標(biāo)準(zhǔn)檢測(cè)物1mm 的厚度垂直性:與聲束軸線垂直。盲區(qū)盲區(qū)直接反射式超聲波傳感器不能可靠檢測(cè)位于超聲波換能器前段的部分物體。由此,超聲波換能器與檢測(cè)圍起點(diǎn)之間的區(qū)域被稱為盲區(qū)。傳感器在這個(gè)區(qū)域必須保持不被阻擋。所以本超聲波必須從 3cm 起的圍開始測(cè)量,而最大測(cè)量距離又不超過 5m。5 / 60振動(dòng)振動(dòng) 無(wú)論是傳感器本身還是周圍機(jī)械

19、的振動(dòng),都會(huì)影響距離測(cè)量的精確度,這時(shí)可以考慮采取一些減震措施,例如:用橡膠的抗震設(shè)備給傳感器做一個(gè)底座,可以減少振動(dòng),用固定桿也可以消除或者最大程度的減少振動(dòng)。11衰減衰減 當(dāng)周圍環(huán)境溫度緩慢變化的時(shí)候,有溫度補(bǔ)償?shù)某暡▊鞲衅骺梢宰龀稣{(diào)整,但是如果溫度變化過快,傳感器將無(wú)法做出調(diào)整。11(2)單片機(jī) STC12LE5410ADSTC12LE5410AD為一種改進(jìn)型的51 兼容單片機(jī),指令集與主要架構(gòu)與經(jīng)典51 一樣,硬件資源略有增加:1.增設(shè)了2 通道PCA(可編程計(jì)數(shù)器陣列),彌補(bǔ)了經(jīng)典51定時(shí)器功能“偏弱”的缺陷。2.I/O 口改進(jìn)為可設(shè)置方式,支持:51準(zhǔn)雙向、高阻輸入、OC 輸出、

20、推挽輸出四種模式,簡(jiǎn)化了外部硬件設(shè)計(jì)。3.硬件SPI 接口。4.指令速度大大提高了,將原來(lái)的12 時(shí)鐘為一個(gè)機(jī)器周期改進(jìn)為 2-3 個(gè)時(shí)鐘周期,指令速度平均提高為原來(lái)的8倍左右。5.計(jì)時(shí)時(shí)鐘保留12分頻模式,新增了2 分頻模式,提高了計(jì)時(shí)精度。后兩點(diǎn)對(duì)于超聲波測(cè)距應(yīng)用有益,指令速度快可減少響應(yīng)延時(shí)的不確定,計(jì)時(shí)精度高可提高分辨率。(3)串口通信串口是計(jì)算機(jī)上一種非常通用設(shè)備通信的協(xié)議,是儀器儀表設(shè)備通用的通信協(xié)議;很多 GPIB 兼容的設(shè)備也帶有 RS-232 口。串口通信協(xié)議也可以用于獲取遠(yuǎn)程采集設(shè)備的數(shù)據(jù)。串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)( byte)的并行通信慢,但是串口可

21、以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用另一根線接收數(shù)據(jù)。它很簡(jiǎn)單并且能夠?qū)崿F(xiàn)遠(yuǎn)距離通信 。串口通信最重要的參數(shù)是波特率、數(shù)據(jù)位、停止位和奇偶校驗(yàn)。對(duì)于兩個(gè)進(jìn)行通行的端口,這些參數(shù)必須匹配 。而 RS-232(ANSI/EIA-232 標(biāo)準(zhǔn))是 IBM-PC 與其兼容機(jī)上的串行連接標(biāo)準(zhǔn)??捎糜谠S多用途,比如連接鼠標(biāo)、打印機(jī)或者M(jìn)odem,同時(shí)也可以接工業(yè)儀器儀表。 鑒于使用串口比較方便,簡(jiǎn)單,無(wú)需驅(qū)動(dòng),因而采用它進(jìn)行通信。(4)LED 七段數(shù)碼管在測(cè)距系統(tǒng)中采用 LED 七段數(shù)碼管進(jìn)行數(shù)據(jù)顯示,而不采用 LCD 液晶顯示屏,主要是因?yàn)閿?shù)碼管顯示數(shù)據(jù)亮度高,能引起一定的視覺沖擊,使人能快速辨別出數(shù)據(jù)。2.

22、3 系統(tǒng)設(shè)計(jì)2.3.1 測(cè)距系統(tǒng)超聲波工作原理6 / 60(1)工作原理超聲波指向性強(qiáng),很適合測(cè)距。在汽車倒車?yán)走_(dá)中一般使用40kHz低頻超聲波作為檢測(cè)手段,該頻率的超聲波在空氣中衰減緩慢,可以傳播出較遠(yuǎn)距離,比較適合中長(zhǎng)距離測(cè)量。以超聲波作為檢測(cè)手段,必須產(chǎn)生聲波和接收聲波,這就需要使用超聲波傳感器,它有發(fā)送器和接收器,但單獨(dú)一個(gè)超聲波傳感器也具有發(fā)送和接收的雙重功能。超聲波傳感器利用壓電效應(yīng)的原理將電能和超聲波相互轉(zhuǎn)化,即在發(fā)射超聲波的時(shí)候,將電能轉(zhuǎn)換,發(fā)射超聲波;而在收到回波的時(shí)候,則將超聲振動(dòng)轉(zhuǎn)換成電信號(hào)。 圖2-2 傳感器工作模式若對(duì)發(fā)送傳感器諧振頻率為 40KHz 的壓電瓷片 (

23、雙晶振子 ) 施加 40KHz 高頻電壓,則壓電瓷片就根據(jù)所加高頻電壓極性伸長(zhǎng)與縮短,于是發(fā)送 40KHz 頻率的超聲波,其超聲波以疏密形式傳播 ( 疏密程度可由控制電路調(diào)制 ),并傳給波接收器。接收器是利用壓力傳感器所采用的壓電效應(yīng)的原理,即在壓電元件上施加壓力,使壓電元件發(fā)生應(yīng)變,則產(chǎn)生一面為“ + ”極,另一面為“ - ”極的 40KHz 正弦電壓。另外,因該高頻電壓幅值較小,故在電路設(shè)計(jì)時(shí)必須對(duì)其進(jìn)行放大。 測(cè)距的原理一般采用渡越時(shí)間法TOF(time of flight)。首先測(cè)出超聲波從發(fā)射到遇到障礙物返回所經(jīng)歷的時(shí)間,再乘以超聲波的速度就得到二倍的聲源與障礙物之間的距離 ,即L=

24、C * T/2(L為距離,C為超聲波在空氣中傳播的速度,T為往返總共用的時(shí)間)。 超聲波測(cè)距適用于高精度的中長(zhǎng)距離測(cè)量,因?yàn)槌暡ㄔ跇?biāo)準(zhǔn)空氣中的傳播速度一般為331.45米/秒。由單片機(jī)負(fù)責(zé)計(jì)時(shí),并且單片機(jī)使用11.0592M的晶振,所以系統(tǒng)的測(cè)量精度理論上可以達(dá)到毫米級(jí)。(2)傳感器間距誤差分析 圖 2-3 傳感器相對(duì)位置 在本設(shè)計(jì)中,發(fā)射器和接收器之間中心軸線的相對(duì)距離近似 8cm,這樣可以盡量減少來(lái)自發(fā)射器的余波對(duì)接收器產(chǎn)生的干擾,但兩者間距又不能太大,不然就無(wú)法對(duì)比較體積小的物體進(jìn)行距離測(cè)量。具體的間距根據(jù)實(shí)際應(yīng)用而設(shè)置。在定時(shí)器的時(shí)間計(jì)算上,8cm 間距產(chǎn)生的時(shí)間誤差可以忽略不計(jì),因

25、為回波到達(dá)接收器會(huì)觸發(fā)產(chǎn)生電信號(hào),然后在 8cm 的間距上傳送電信號(hào)至單片機(jī)。據(jù)我們所知,電流實(shí)際就是電子的流動(dòng),而電子的速度接近光速,比聲波速度大 5 個(gè)數(shù)量級(jí),故 8cm 的時(shí)間誤差遠(yuǎn)小于 1 毫秒,可以對(duì)其忽略不計(jì)。(3)干擾問題剖析換能器在將電型號(hào)轉(zhuǎn)化成聲波的過程中,所產(chǎn)生的聲波并不是理想中的矩形,而是一個(gè)類似花瓣一樣形狀。值得一提的是,在實(shí)際應(yīng)用中,產(chǎn)生的波形應(yīng)該是三維的,類似柱狀體。超聲波傳感器主要用來(lái)探測(cè)物體的距離以與相對(duì)于傳感器的方位,以便可以進(jìn)行避障動(dòng)作。最理想的波形就是矩形,不但可以準(zhǔn)確的獲得物體的距離值,也可以準(zhǔn)確的7 / 60獲得方位值,就是正前方。但是實(shí)際上,超聲波的

26、波束根據(jù)應(yīng)用不同,有寬波束,和窄波束。寬波束的傳感器會(huì)檢測(cè)到任何在波束圍的物體,它可以檢測(cè)到物體的距離,但是確無(wú)法檢測(cè)到物體的方位,誤差最高會(huì)有 100 度左右。當(dāng)然,作為只要探測(cè)物體有或者無(wú)其它用途來(lái)說(shuō),寬波束的傳感器是比較理想的。同理,窄波束可以相對(duì)寬波束獲得更加精確的方位角。在選擇超聲波傳感器的時(shí)候,這個(gè)波形特性是必須要考慮的。最理想的形狀寬波束窄波束主瓣旁瓣圖 2-4 超聲波形狀聲波傳感器應(yīng)用起來(lái)原理簡(jiǎn)單,也很方便,成本也很低。但是目前的超聲波傳感器都有一些缺點(diǎn),比如反射問題,噪音,交叉問題。反射問題:如果被探測(cè)物體始終在合適的角度,那超聲波傳感器將會(huì)獲得正確的角度。但是不幸的是,在實(shí)

27、際使用中,很少被探測(cè)物體是能被正確的檢測(cè)的。圖 2-4 顯示了三角誤差,鏡面反射,多次反射等超聲波在各種角度差生的誤差。當(dāng)被測(cè)物體與傳感器成一定角度的時(shí)候,所探測(cè)的距離和實(shí)際距離有個(gè)三角誤差。圖 2-4 的第二種情況叫做鏡面反射,在特定的角度下,發(fā)出的聲波被光滑的物體鏡面反射出去,因此無(wú)法產(chǎn)生回波,也就無(wú)法產(chǎn)生距離讀數(shù)。這時(shí)超聲波傳感器會(huì)忽視這個(gè)物體的存在。第三種情況可以叫多次反射。這種現(xiàn)象在探測(cè)墻角或者類似結(jié)構(gòu)的物體時(shí)比較常見。聲波經(jīng)過多次反彈才被傳感器接收到,因此實(shí)際的探測(cè)值并不是真實(shí)的距離值。這些問題可以通過使用多個(gè)按照一定角度排列的超聲波圈來(lái)解決。通過探測(cè)多個(gè)超聲波的返回值,用來(lái)篩選出

28、正確的讀數(shù)。128 / 60測(cè)量墻的距離實(shí)際距離角度范圍角度范圍測(cè)量墻的距離三角誤差鏡面反射多次反射 圖 2-5 超聲波角度誤差噪音:雖然多數(shù)超聲波傳感器的工作頻率為 40-45Khz,遠(yuǎn)遠(yuǎn)高于人類能夠聽到的頻率。但是周圍環(huán)境也會(huì)產(chǎn)生類似頻率的噪音。比如,電機(jī)在轉(zhuǎn)動(dòng)過程會(huì)產(chǎn)生一定的高頻,輪子在比較硬的地面上的摩擦所產(chǎn)生的高頻噪音,這些都會(huì)引起傳感器接收到錯(cuò)誤的信號(hào)。這個(gè)問題可以通過對(duì)發(fā)射的超聲波進(jìn)行編碼來(lái)解決,比如發(fā)射一組長(zhǎng)短不同的音波,只有當(dāng)探測(cè)頭檢測(cè)到一樣組合的音波的時(shí)候,才進(jìn)行距離計(jì)算。這樣可以有效的避免由于環(huán)境噪音所引起的誤讀??偟膩?lái)說(shuō),如果我們能夠在測(cè)距過程中注意到這些問題的話,那么

29、利用超聲波檢測(cè)距離還是比較可行的,設(shè)計(jì)比較方便,計(jì)算處理也較簡(jiǎn)單,并且在測(cè)量精度方面也能達(dá)到要求。9 / 602.3.2 系統(tǒng)原理圖被測(cè)物體超聲波接收超聲波發(fā)送STC12LE5410AD單單片片機(jī)機(jī)串口車載系統(tǒng)危險(xiǎn)系數(shù)測(cè)量數(shù)據(jù)蜂鳴數(shù)碼管顯示定時(shí)器控制調(diào)制器計(jì)時(shí)器振蕩器接收檢測(cè)AT89C51(單片機(jī)之間通信)顯示控制發(fā)送/接收接收/發(fā)送接收/發(fā)送40KHz 圖 2-6 系統(tǒng)原理圖在測(cè)距系統(tǒng)中單片機(jī)為核心控制部分,根據(jù)設(shè)定的工作方式,產(chǎn)生40kHz 方波,經(jīng)過驅(qū)動(dòng)電路驅(qū)動(dòng)超聲波發(fā)生器發(fā)出一簇信號(hào)。在余波時(shí)間過后開始計(jì)時(shí)。接收回路為諧振回路,將收到的微弱回波信號(hào)檢出,送信號(hào)放大電路放大,收到產(chǎn)生脈沖

30、輸出送單片機(jī)中斷端,單片機(jī)收到中斷信號(hào)后停止計(jì)時(shí),計(jì)算出距離值,保存等待讀出或直接經(jīng)UART 送出。接收過程中,單片機(jī)定時(shí)控制放大電路的增益,逐漸提高,以適應(yīng)距離越遠(yuǎn)越弱的回波信號(hào)。2.3.3 倒車?yán)走_(dá)防撞系統(tǒng)分析與設(shè)計(jì)(1)分析這是一個(gè)通過串口通信進(jìn)行數(shù)據(jù)顯示和倒車危險(xiǎn)系數(shù)提示的服務(wù)端,它根據(jù)串口通信協(xié)議,進(jìn)行了幀格式的定義,如:幀頭,地址,幀長(zhǎng),命令字,測(cè)量模式,校驗(yàn)位等。在通信過程中,我們首先要打開串口,接著系統(tǒng)判斷串口打開是否有效,這可以排除你串口線沒接,或者選錯(cuò)串口。當(dāng)這一步完成后,我們就要在界面上選擇工作模式,設(shè)置周期等,這就相當(dāng)于幀的構(gòu)建,當(dāng)發(fā)送后,幀通過串口被單片機(jī)接收,單片機(jī)

31、從緩沖區(qū)取出幀,并進(jìn)行相應(yīng)工作。倒車?yán)走_(dá)防撞系統(tǒng)檢測(cè)到有幀返回時(shí),先看緩沖區(qū)的數(shù)據(jù)是否已滿,若為空則等待,如果滿了,則接收數(shù)據(jù),并根據(jù)幀定義驗(yàn)證它是否有效,無(wú)效的話就丟棄,繼續(xù)接收。而有效的話則從中提取測(cè)量數(shù)據(jù),并將其進(jìn)行顯示,此時(shí)系統(tǒng)界面上的倒車危險(xiǎn)系數(shù)也會(huì)自動(dòng)跟著做相應(yīng)變化。當(dāng)一幀處理完,系統(tǒng)又開始進(jìn)行10 / 60下一輪幀檢測(cè),如果有幀則接收,無(wú)幀則停止。(2)該系統(tǒng)相關(guān)流程圖如下:開始發(fā)送隊(duì)列是否為空?延時(shí)發(fā)送數(shù)據(jù)YN圖 2-7 串口驅(qū)動(dòng)函數(shù)流程圖-發(fā)送部分圖 2-8 串口驅(qū)動(dòng)函數(shù)流程圖-接收部分11 / 60開始串口初始化構(gòu)建發(fā)送幀串口通信接收返回的幀提取測(cè)量數(shù)據(jù)是否有效?Y顯示距離

32、顯示倒車危險(xiǎn)系數(shù)N結(jié)束N還有幀? Y圖 2-9 倒車?yán)走_(dá)防撞系統(tǒng)流程圖3.超聲波測(cè)距系統(tǒng)的硬件設(shè)計(jì)3.1 設(shè)計(jì)概述超聲波測(cè)距系統(tǒng)以STC12LE5410AD和AT89C51單片機(jī)為核心,以TL852CDR, SPX1117M3-3.3單片機(jī)為輔助,當(dāng)STC12LE5410AD收到AT89C51或者倒車?yán)走_(dá)防撞系統(tǒng)通過串口發(fā)來(lái)的幀時(shí),首先檢測(cè)其有效性,如果無(wú)效則丟棄,有效則從中提12 / 60取命令字,然后根據(jù)命令字對(duì)應(yīng)的工作方式模式進(jìn)行相應(yīng)的測(cè)量。測(cè)量中主要由STC12LE5410AD控制電路產(chǎn)生40kHz方波,經(jīng)過驅(qū)動(dòng)電路驅(qū)動(dòng)超聲波發(fā)生器將這一簇信號(hào)發(fā)出。在余波時(shí)間過后,計(jì)時(shí)器開始計(jì)時(shí)。接收

33、回路為諧振回路,將收到的微弱回波信號(hào)檢出,送信號(hào)放大電路放大,收到產(chǎn)生脈沖輸出送單片機(jī)中斷端,單片機(jī)收到中斷信號(hào)后停止計(jì)時(shí),計(jì)算出距離值,保存等待讀出或直接經(jīng)UART 送出。接收過程中,單片機(jī)定時(shí)控制放大電路的增益,逐漸提高,以適應(yīng)距離越遠(yuǎn)越弱的回波信號(hào)。STC12LE5410AD單片機(jī)計(jì)算出的距離以幀的格式通過串口通信發(fā)送給單片機(jī)AT89C51和倒車?yán)走_(dá)防撞系統(tǒng)。測(cè)距系統(tǒng)中的89C51主要通過中斷檢測(cè)串口接收緩沖區(qū)是否有接收到數(shù)據(jù),然后根據(jù)事先約定的串口通信幀格式檢測(cè)數(shù)據(jù)有效性,當(dāng)獲取到有效數(shù)據(jù)后,將測(cè)量結(jié)果提取出來(lái)送到數(shù)碼管顯示。數(shù)碼管的數(shù)據(jù)總會(huì)跟著超聲波的測(cè)量結(jié)果做出相應(yīng)的改變。能讓人與

34、時(shí)直觀地看到測(cè)距結(jié)果。結(jié)構(gòu)示意圖如下:驅(qū)動(dòng)電路接收回路設(shè)置參數(shù),輸出結(jié)果STC12LE5410AD單片機(jī)軟件產(chǎn)生方波接收信號(hào)放大和檢出電路增益控制發(fā)射接收AT89C51數(shù)碼管顯示控制圖 3-1 結(jié)構(gòu)示意圖本設(shè)計(jì)方案分為單片機(jī)選型、開發(fā)工具和電路設(shè)計(jì),共三部分進(jìn)行的詳細(xì)說(shuō)明。3.23.2 單片機(jī)選型3.2.1 選型目的由于各種單片機(jī)有其特定的性能,也適用于不同的場(chǎng)合,所以我們需要根據(jù)自己的實(shí)際需要,如程序儲(chǔ)存空間、工作電壓、工作溫度圍、抗干擾性、工作頻率和性能價(jià)格比等方面從挑選出合適自己的單片機(jī)。因此,單片機(jī)選型是制定設(shè)計(jì)方案中非常重要的一步。3.2.2 STC12LE5410ADSTC12LE

35、5410AD 芯片(1)概述STC12LE5410AD屬于8STC12C2052系列單片機(jī),是單時(shí)鐘/機(jī)器周期(1T)的兼容8051核單片機(jī),是高速/低功耗的新一代 8051單片機(jī),全新的流水線/精簡(jiǎn)指令集結(jié)構(gòu),部集成MAS810專用復(fù)位電路。13 / 60(2)STC12LE5410AD在本設(shè)計(jì)中的應(yīng)用MCU 端口資源分配如下:P1.0 、P1.1接SOUT 端,作為超聲波發(fā)射時(shí)左右兩塊TL852單片機(jī)的輸出抑制,置為OC輸出。P1.4 - P1.7 保留P2.0 - P2.3 控制左側(cè)單片機(jī)TL852 增益,設(shè)置為OC 輸出,852部有上拉電阻。P2.4 - P2.7 控制右側(cè)TL852

36、增益,設(shè)置為OC 輸出,部有上拉電阻。P3.0(RXD)、P3.1(TXD) UART 通訊P3.2(INT0)超聲波左側(cè)接收輸入,設(shè)置為輸入P3.3(INT1)超聲波右側(cè)接收輸入,設(shè)置為輸入P3.4 產(chǎn)生超聲波發(fā)射方波,設(shè)置為推挽輸出模式P3.5 控制P1,用于衰減余波,設(shè)置為OC 輸出模式P3.7 工作指示燈,設(shè)置為OC 輸出模式以下為STC12LE5410AD引腳圖: 圖 3-2 STC12LE4052AD引腳圖在本設(shè)計(jì)最主要的是看重STC12LE5410AD比普通的51單片機(jī)做了如下改進(jìn):1.指令速度大大提高了,將原來(lái)的12 時(shí)鐘為一個(gè)機(jī)器周期改進(jìn)為 2-3 個(gè)時(shí)鐘周期,指令速度平均提

37、高為原來(lái)的8倍左右。2.計(jì)時(shí)時(shí)鐘保留12 分頻模式,新增了2 分頻模式,提高了計(jì)時(shí)精度。這兩點(diǎn)對(duì)于超聲波測(cè)距應(yīng)用有益,指令速度快可減少響應(yīng)延時(shí)的不確定,計(jì)時(shí)精度高可提高分辨率。(3)STC12LE5410AD與普通8051完全兼容,優(yōu)先級(jí)可設(shè)為4級(jí):14 / 60 圖3-3 中斷向量地址表(4)STC12LE5410AD的I/O結(jié)構(gòu):STC12LE5410AD單片機(jī)其所有I/O口均可由軟件配置成4種類型之一,如下表所示。4種類型分別為:準(zhǔn)雙向口(標(biāo)準(zhǔn)8051輸出模式) 、推挽輸出、僅為輸入(高阻)或開漏輸出功能。每個(gè)口配置2個(gè)控制寄存器控制每個(gè)引腳輸出類型。上電復(fù)位后為準(zhǔn)雙向口模式。 圖3-4

38、 I/O 口結(jié)構(gòu)圖(5)STC12LE5410AD定時(shí)器的使用: 定時(shí)器0和1:定時(shí)器和計(jì)數(shù)功能由特殊功能寄存器TMOD的控制位C/T進(jìn)行選擇,TMOD寄存器的各位信息如下表所示??梢钥闯?,2個(gè)定時(shí)/計(jì)數(shù)器有4種操作模式,通過TMOD的M1和M0選擇。2個(gè)定時(shí)/計(jì)數(shù)器的模式0、1和2都一樣,模式3不同,各模式的功能如下所述。TMOD 地址:89H 復(fù)位值:00H 圖3-5 定時(shí)器位信息表 15 / 60位符號(hào)M1、M0功能定時(shí)器/計(jì)數(shù)器 0 模式選擇0 013 位定時(shí)器/計(jì)數(shù)器,兼容 8048 定時(shí)器模式,TL0 只用低 5 位參與分頻,TH0 整個(gè) 8 位全用0 116 位定時(shí)器/計(jì)數(shù)器,T

39、L0、TH0 全用1 08位自動(dòng)重裝載定時(shí)器,當(dāng)溢出時(shí)將TH0存放的值自動(dòng)重裝入TL0.TMOD.1/TMOD.01 1定時(shí)器0此時(shí)作為雙8位定時(shí)器/計(jì)數(shù)器。TL0作為一個(gè)8位定時(shí)器/計(jì)數(shù)器,通過標(biāo)準(zhǔn)定時(shí)器0的控制位控制。TH0僅作為一個(gè)8位定時(shí)器,由定時(shí)器1的控制位控制。圖3-6 定時(shí)器/計(jì)數(shù)器0模式選擇 圖3-7 定時(shí)器/計(jì)數(shù)器1模式選擇3.2.3 增益放大 TL852 芯片TL852 是一片專門設(shè)計(jì)用于超聲波接收、放大、檢測(cè)的芯片,集成了可變?cè)鲆妗⑦x頻放大器,可通過四根控制線變換11 級(jí)增益,對(duì)于檢測(cè)超聲波信號(hào)十分有效。符號(hào)M1、M0功能定時(shí)器/計(jì)數(shù)器 1 模式選擇0 013 位定時(shí)器/

40、計(jì)數(shù)器,兼容 8048 定時(shí)器模式,TL1 只用低 5 位參與分頻,TH1 整個(gè) 8 位全用0116 位定時(shí)器/計(jì)數(shù)器,TL1、TH1 全用108位自動(dòng)重裝載定時(shí)器,當(dāng)溢出時(shí)將TH1存放的值自動(dòng)重裝入TL1.TMOD.5/TMOD.41 1定時(shí)器/計(jì)數(shù)器1此時(shí)無(wú)效(停止計(jì)數(shù))16 / 60圖3-8 TL852引腳圖 圖3-9 TL852部功能框圖3.2.4 低電壓運(yùn)算放大器 LMV358LMV358 為低電壓滿幅輸出運(yùn)放,額定工作電壓為2.7 5V,因?yàn)閱纹瑱C(jī)的工作電壓為3.3V,所以選用LMV358,雖然成本略高,但性能得到保證。它可實(shí)現(xiàn)1MHz的帶寬在1-V/ms轉(zhuǎn)換率低電源電流。 圖 3

41、-10 LMV358 引腳圖3.2.5 AT89C51AT89C51 單片機(jī)(1)概述AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件17 / 60采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提

42、供了一種靈活性高且價(jià)廉的方案。外形與引腳排列如圖所示:1 圖 3-11 AT89C51 引腳圖(2)主要參數(shù)1.與 MCS-51 兼容 2.4K 字節(jié)可編程閃爍存儲(chǔ)器 3.壽命:1000 寫/擦循環(huán) 4.數(shù)據(jù)保留時(shí)間:10 年 5.全靜態(tài)工作:0Hz-24MHz 6.三級(jí)程序存儲(chǔ)器鎖定 7.1288 位部 RAM 8.32 可編程 I/O 線 9.兩個(gè) 16 位定時(shí)器/計(jì)數(shù)器 10.5 個(gè)中斷源 11.可編程串行通道 12.低功耗的閑置和掉電模式13.片振蕩器和時(shí)鐘電路(3)在本設(shè)計(jì)中的應(yīng)用: P1.0 - P1.7 接七段數(shù)碼管引腳,用于控制顯示相應(yīng)的數(shù)字 P2.0 - P2.4 分別接 4

43、 個(gè) 74LS164N 鎖存器,用于進(jìn)行位選,以便選擇性地點(diǎn)亮數(shù)碼管。 P2.5 控制蜂鳴器鳴叫 P2.6 接一個(gè)按鍵,該按鍵主要用于觸發(fā) AT89C51 進(jìn)行串口通信發(fā)送數(shù)據(jù)幀,以控制 STC12LE5410AD 工作。P3.0(RXD)、P3.1(TXD) UART 通訊18 / 603.2.6 鎖存器 74LS164 (1)簡(jiǎn)介74LS164是一個(gè)串行輸入并行輸出的移位寄存器,并帶有清除端。 圖3-12 74LS164引腳圖當(dāng)清除端(CLEAR)為低電平時(shí),輸出端(QA-QH)均為低電平。串行數(shù)據(jù)輸入端(A,B)可控制數(shù)據(jù)。當(dāng)A,B任意一個(gè)為低電平,則禁止新數(shù)據(jù)輸入,在時(shí)鐘端(CLOCK

44、)脈沖上升沿作用下Q0的狀態(tài)。引出端符號(hào): CLOCK 時(shí)鐘輸入端 CLEAR 同步清除輸入端(低電平有效) A,B 串行數(shù)據(jù)輸入端 QA-QH 輸出端(2)外部管腳真值表圖3-13 74LS164外部管腳真值表 H-高電平 L-低電平 X-任意電平 -低到高電平跳變 QA0,QB0,QH0-規(guī)定的穩(wěn)態(tài)條件建立前的電平 QAn,QGn-時(shí)鐘最近的前的電平 在本設(shè)計(jì)中由于只需點(diǎn)亮 5 個(gè)數(shù)碼管,因需用到 5 個(gè) 74LS164。首先為AT89C51 的 P20-P2.4 設(shè)置為輸出模式,當(dāng) P2.0-P2.4 中某一個(gè) I/O 口被賦值 1時(shí),也就代表該口的鎖存器被選中,從而點(diǎn)亮該鎖存器連接的數(shù)

45、碼管。3.2.7 發(fā)光二極管 LED(1) 數(shù)碼管結(jié)構(gòu) 數(shù)碼管由8個(gè)發(fā)光二極管(以下簡(jiǎn)稱字段)構(gòu)成,通過不同的組合可用來(lái)顯示數(shù)字0-9、字符A-F、H、L、P、R、U、Y、符號(hào)“-”與小數(shù)點(diǎn)“.” 。數(shù)碼管的外型結(jié)構(gòu)如圖所示。數(shù)碼管又分為共陰極和共陽(yáng)極跨兩種結(jié)構(gòu)。19 / 60圖3-14 數(shù)碼管結(jié)構(gòu)(2) 數(shù)碼管工作原理由于本設(shè)計(jì)采用的是共陽(yáng)極數(shù)碼管,因而只對(duì)共陽(yáng)極數(shù)碼管的工作原理做具體介紹。原理如下:共陽(yáng)極數(shù)碼管的 8 個(gè)發(fā)光二極管的陽(yáng)極(二極管的正端)連接在一起。通常,公共陽(yáng)極接高電平(一般接電源),其它管腳接段驅(qū)動(dòng)電路輸出端。當(dāng)某段驅(qū)動(dòng)電路的輸出端為低電平時(shí),則該端所連接的字段導(dǎo)通并發(fā)亮

46、。根據(jù)發(fā)光二極管的不同組合可顯示出各種數(shù)字或字符。此時(shí),要求段驅(qū)動(dòng)電路能吸收額定的段導(dǎo)通電流,還需根據(jù)外接電源與額定段導(dǎo)通電流來(lái)確定相應(yīng)的限流電阻。(3) 數(shù)碼管字形編碼要使數(shù)碼管顯示出相應(yīng)的數(shù)字或字符,必須使段數(shù)據(jù)口輸出相應(yīng)的字形編碼。對(duì)照?qǐng)D,字型碼各位定義為:數(shù)據(jù)線D0與a字段對(duì)應(yīng),D1與b字段對(duì)應(yīng),依此類推。如使用共陽(yáng)極數(shù)碼管,數(shù)據(jù)為0表示對(duì)應(yīng)字段亮,數(shù)據(jù)為1表示對(duì)應(yīng)字段暗;如要顯示0,共陽(yáng)極數(shù)碼管的字型編碼為:11000000B(即C0H)。依此類推,可求得數(shù)碼管字形編碼如表所示:20 / 60 圖3-15 數(shù)碼管字型編碼1(4) LED 七段數(shù)碼管動(dòng)態(tài)顯示方式所有LED的段選線共同連

47、接在一起共用一個(gè)8位I/O口,而每個(gè)LED的位選分別由一根相應(yīng)的I/O口線控制。因此必須采用動(dòng)態(tài)掃描顯示方式,每一個(gè)時(shí)刻只選通其中一個(gè)LED,同時(shí)在段選口送出該位LED的字型碼。圖3-16 LED七段數(shù)碼管動(dòng)態(tài)顯示連接電路的接法決定了必須采用逐位掃描顯示方式。即從段選口送出某位LED的字型碼,然后選通該位LED,并保持一段延時(shí)時(shí)間。然后選通下一位,直到所有位掃描完。 在本設(shè)計(jì)中使用了 5 個(gè)數(shù)碼管,主要是為了配合倒車?yán)走_(dá)防撞系統(tǒng)的數(shù)據(jù)顯示要求,即以米為單位,并精確到毫米級(jí),如 0.466 米。3.3 開發(fā)工具3.3.1 編程環(huán)境我們采用C語(yǔ)言和Keil C51 IDE v7.5進(jìn)行程序的編寫。

48、21 / 60Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過匯編語(yǔ)言后再使用C來(lái)開發(fā),體會(huì)更加深刻。Keil C51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。該軟件的界面如下: 圖3-17 Keil C界面3.3.2.EDA 軟件 PROTELPROT

49、EL 是 PROTEL 公司在 80 年代末推出的 EDA 軟件,是電子設(shè)計(jì)者的首選軟件,它較早就在國(guó)開始使用,在國(guó)的普與率也最高,幾乎所有的電子公司都要用到它。現(xiàn)今的 PROTEL 已發(fā)展到 PROTEL99(網(wǎng)絡(luò)上可下載到它的測(cè)試板) ,是個(gè)龐大的 EDA 軟件,完全安裝有 200 多 M,它工作在 WINDOWS95 環(huán)境下,是個(gè)完整的板級(jí)全方位電子設(shè)計(jì)系統(tǒng)。PROTEL99 包含了電原理圖繪制、模擬電路與數(shù)字電路混合信號(hào)仿真、多層印制電路板設(shè)計(jì)(包含印制電路板自動(dòng)布線) 、可編程邏輯器件設(shè)計(jì)、圖表生成、電子表格生成、支持宏操作等功能,并具有 Client/Server (客戶/服務(wù)器)

50、體系結(jié)構(gòu),同時(shí)還兼容一些其它設(shè)計(jì)軟件的文件格式,如 ORCAD,PSPICE,EXCEL等,其多層印制線路板的自動(dòng)布線可實(shí)現(xiàn)高密度 PCB 的 100布通率。該工具界面如下:22 / 60 圖 3-18 PROTEL99 界面3.4.設(shè)計(jì)要求和構(gòu)想單片機(jī)為核心控制部分,根據(jù)設(shè)定的工作方式,產(chǎn)生 40kHz 方波,經(jīng)過驅(qū)動(dòng)電路驅(qū)動(dòng)超聲波發(fā)生器發(fā)出一簇信號(hào)。單片機(jī)此時(shí)開始計(jì)時(shí)。接收回路為諧振回路,將收到的微弱回波信號(hào)檢出,送信號(hào)放大電路放大,收到產(chǎn)生脈沖輸出送單片機(jī)中斷端,單片機(jī)收到中斷信號(hào)后停止計(jì)時(shí),計(jì)算出距離值,保存等待讀出或直接經(jīng)UART 送出。接收過程中,單片機(jī)定時(shí)控制放大電路的增益,逐漸

51、提高,以適應(yīng)距離越遠(yuǎn)越弱的回波信號(hào)。核心器件為STC12LE5410AD、TL852、16mm 超聲波收、發(fā)器。采用5V 供電,因?yàn)?V 是最常見的工作電壓為了減小干擾,選用3.3V 供電的單片機(jī),使用目前常用的1117-3.3 三端穩(wěn)壓器將5V 降到3.3V,減小電源擾動(dòng)的影響,增加可靠性。采用左右側(cè)超聲波接收器,可實(shí)現(xiàn)類似“瞄準(zhǔn)”定位的功能,可使測(cè)量結(jié)果更精確。對(duì)于測(cè)距系統(tǒng)功能的實(shí)現(xiàn),主要包括進(jìn)行距離測(cè)量,發(fā)送數(shù)據(jù),顯示數(shù)據(jù)等。由于STC12LE5410AD的引腳有限,而系統(tǒng)又要用動(dòng)態(tài)顯示方式控制5個(gè)數(shù)碼管顯示數(shù)據(jù),這就還需要12個(gè)I/O口,其中4個(gè)控制位選,8個(gè)直接接七段數(shù)碼管引腳,所以

52、我們可考慮用AT89C51作為輔助,由其來(lái)控制數(shù)碼管,該芯片價(jià)格低廉,而且容易學(xué)習(xí)。這樣的話我們就可以讓單片機(jī)STC12LE5410AD作為主要芯片,用于實(shí)現(xiàn)測(cè)距系統(tǒng)絕大部分功能,然后STC12LE5410AD可通過串口通信方式將我們比較關(guān)注的測(cè)量結(jié)果傳送給AT89C51由其單獨(dú)控制數(shù)碼管顯示。為了充分以用AT89C51的引腳,我們還將它的某一只引腳接一個(gè)按鍵,當(dāng)該按鍵按下時(shí),可控制AT89C51通過串口通信觸發(fā)STC12LE5410AD開始自動(dòng)工作,這樣使得測(cè)距系統(tǒng)可以單獨(dú)脫離倒車?yán)走_(dá)防撞系統(tǒng)而存在,即使沒有倒車?yán)走_(dá)防撞系統(tǒng)控制也可以自動(dòng)工作。同時(shí),我們也可讓AT89C51的一只引腳接經(jīng)過三

53、極管放大的蜂鳴器,用以控制其鳴叫,而這就主要屬于倒車?yán)走_(dá)防撞系統(tǒng)部分的功能。23 / 60總的來(lái)說(shuō)我們可以把AT89C51和PC機(jī)端的倒車?yán)走_(dá)防撞系統(tǒng)都當(dāng)成上位機(jī),它們彼此不干擾,而STC12LE5410AD控制系統(tǒng)當(dāng)成下位機(jī)。這樣的話,我們的思路就很明顯了,而且系統(tǒng)各部分主要的功能設(shè)計(jì)也就比較清楚了。簡(jiǎn)單地說(shuō),STC12LE5410AD主要負(fù)責(zé)測(cè)量,AT89C51負(fù)責(zé)數(shù)碼管顯示和蜂鳴,PC機(jī)端的界面主要負(fù)責(zé)顯示和危險(xiǎn)系數(shù)提醒。3.5.系統(tǒng)部分電路工作原理3.5.1 超聲波發(fā)送部分 圖3-19 超聲波發(fā)射驅(qū)動(dòng)電路Send_Ctrl、Cut_Off 端由STC12LE5410AD控制。此單片機(jī)的

54、I/O 口可設(shè)置為推挽輸出模式(這是經(jīng)典51不具備的),拉電流、灌電流均可達(dá)20mA,保證了D882 有足夠的驅(qū)動(dòng)能力和快速的通斷性能。變壓器的次級(jí)電感與發(fā)射器(發(fā)射器為容性,一般為2400p 左右)構(gòu)成諧振回路,好處是提高了發(fā)射效率,但副作用是發(fā)射后的余波時(shí)間較長(zhǎng),導(dǎo)致近距離的回波被淹沒。在該電路中,必須注意在調(diào)試時(shí),跳線帽要斷開,避免程序出錯(cuò)導(dǎo)致電路出現(xiàn)短路。24 / 603.5.2.STC12LE5410AD 單片機(jī)控制部分 圖3-20 MCU控制電路MCU STC12LE5410AD端口資源分配如下:P1.0 - P1.3 控制TL852 增益,設(shè)置為OC 輸出,852 部有上拉電阻P

55、1.4 - P1.7 保留P3.0(RXD)、P3.1(TXD) UART 通訊P3.2(INT0) 接SOUT 端,作為超聲波發(fā)射時(shí)的852 輸出抑制,置為OC 輸出。P3.3(INT1) 超聲波接收輸入,設(shè)置為輸入P3.4 產(chǎn)生超聲波發(fā)射方波,設(shè)置為推挽輸出模式P3.5 控制P1,用于衰減余波,設(shè)置為OC 輸出模式P3.7 工作指示燈,設(shè)置為OC 輸出模式25 / 603.5.3.超聲波回波接收部分 圖3-21 接收返回聲波信號(hào)與信號(hào)放大電路(右側(cè))這兩個(gè)電路是超聲波測(cè)距的核心。因?yàn)楫a(chǎn)生波形和計(jì)時(shí)都容易解決,而準(zhǔn)確的檢測(cè)出回波信號(hào)才是決定傳感器是否成功的關(guān)鍵。R7、R8 為運(yùn)放的輸入、反饋

56、電阻,通過改變兩者比值可方便的改變靈敏度。 圖3-22 TL852信號(hào)處理電路(右側(cè))該電路是為了將TL852 的輸出轉(zhuǎn)換為單片機(jī)需要的中斷信號(hào),U4A 構(gòu)成了一級(jí)同相跟隨器,由于左右側(cè)電路一樣,我們只選取其中一側(cè)為例。26 / 603.5.4 AT89C51 單片機(jī)控制部分 圖3-23 AT89C51單片機(jī)控制仿真電路89C51單片機(jī)通過串口和12LE5410AD通信,然后通過中斷將接收到的測(cè)量數(shù)據(jù)顯示在5個(gè)數(shù)碼管上,而通過按鍵也可以使它向串口發(fā)送數(shù)據(jù)。該仿真電路中的虛擬終端主要是用來(lái)測(cè)試串口收發(fā)的幀是否正確。3.6 電路圖分析根據(jù)之前的設(shè)計(jì)要求和構(gòu)想而設(shè)計(jì)出的超聲波測(cè)距系統(tǒng)主要電路圖如下,

57、以上介紹的各部分電路基本都包含在其中,當(dāng)然其中還包括沒有具體介紹的工作指示燈電路,串口電路,SPI 電路等。27 / 60 圖3-24 整個(gè)系統(tǒng)主要硬件電路圖4.超聲波測(cè)距系統(tǒng)的軟件設(shè)計(jì)超聲波測(cè)距軟件設(shè)計(jì)主要由主程序,超聲波發(fā)射子程序,超聲波接受中斷程序與顯示子程序組成。下面對(duì)超聲波測(cè)距器的算法,主程序,超聲波發(fā)射子程序和超聲波接受中斷程序逐一介紹。4.1超聲波測(cè)距的算法設(shè)計(jì) 下圖示意了超聲波測(cè)距的原理,即超聲波發(fā)生器 T 在某一時(shí)刻發(fā)出的一個(gè)超聲波信號(hào),當(dāng)超聲波遇到被測(cè)物體后反射回來(lái),就被超聲波接收器 R 所接受。這樣只要計(jì)算出發(fā)生信號(hào)到接受返回信號(hào)所用的時(shí)間,就可算出超聲波發(fā)生器與反射物體

58、的距離。 距離計(jì)算公式:L=s/2=(c*t)/2L 為被測(cè)物與測(cè)距器的距離 ,s 為聲波的來(lái)回路程,c 為聲速,t 為聲波來(lái)回所用的時(shí)間。28 / 60圖 4-1 超聲波測(cè)距示意圖 因?yàn)槁曀倩臼谴_定的,所以只要測(cè)得超聲波往返時(shí)間,根據(jù)公式就可求出距離。4.2測(cè)距系統(tǒng)主程序設(shè)計(jì) 主程序首先對(duì)硬件進(jìn)行初始化,初始化系統(tǒng)時(shí)鐘,I/O 口,超聲波輸出驅(qū)動(dòng)無(wú)效,回波抑制無(wú)效,禁止 852 輸出。初始化定時(shí)器設(shè)置定時(shí)器 T0 工作在模式1,16 位定時(shí),而且工作在 12 分頻。T1 工作在模式 2,8 位重加載,作為波特率發(fā)生器。允許 T0,INT1,PCA 中斷。PCA 的模塊 1 用于控制脈沖發(fā)送

59、和增益變化,計(jì)時(shí)器模式,比較、匹配中斷。當(dāng)上電時(shí) PCA 停止待命。初始化超聲波檢測(cè),計(jì)算部分變量,收到串口數(shù)據(jù)后,執(zhí)行數(shù)據(jù)幀命令,測(cè)量模式下調(diào)用超聲波發(fā)生子程序送出超聲波脈沖,進(jìn)行輸出增益控制,超聲波發(fā)射處理在中斷中完成,打開外中斷 0 接收返回的超聲波信號(hào),計(jì)算測(cè)量結(jié)果,返回測(cè)量數(shù)據(jù)。當(dāng)主程序檢測(cè)到接收成功的標(biāo)志位后,將計(jì)數(shù)器 T0 中的數(shù)(即超聲波來(lái)回所用的時(shí)間)按下式計(jì)算即可測(cè)得被測(cè)物體與測(cè)距儀之間的距離,設(shè)計(jì)時(shí)取 20時(shí)的聲速為 344 m/s 則有: L=(C*T0)/2 =172T0/10000cm(其中 T0 為計(jì)數(shù)器 T0的計(jì)數(shù)值) 測(cè)出距離后結(jié)果將以十六進(jìn)制方式發(fā)送到倒車?yán)?/p>

60、達(dá)防撞系統(tǒng),如此重復(fù)下去,直到收到停止的命令。主程序框圖如下:29 / 60開始串口初始化檢測(cè)幀有效?Y啟動(dòng)測(cè)量計(jì)時(shí)Y計(jì)算距離檢測(cè)到回波?封裝成幀發(fā)送至串口返回NN 圖 4-2 主程序框圖4.3 超聲波發(fā)生子程序和超聲波接收中斷程序超聲波發(fā)生子程序的作用是通過 P3.4 端口發(fā)送超聲波信號(hào)頻率約 40KHz 的方波,同時(shí)把計(jì)數(shù)器 T0 打開進(jìn)行計(jì)時(shí)。超聲波測(cè)距器主程序利用外中斷 0 檢測(cè)返回超聲波信號(hào),一旦接收到返回超聲波信號(hào),立即進(jìn)入 INT1 中斷服務(wù)程序。進(jìn)入該中斷后就立即關(guān)閉計(jì)時(shí)器 T0 停止計(jì)時(shí),禁止 852 輸出。如果當(dāng)計(jì)時(shí)器溢出時(shí)還未檢測(cè)到超聲波返回信號(hào),則定時(shí)器 T0 溢出中斷

溫馨提示

  • 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)論