基于單片機(jī)的超聲波測(cè)距課程設(shè)計(jì)報(bào)告_第1頁(yè)
基于單片機(jī)的超聲波測(cè)距課程設(shè)計(jì)報(bào)告_第2頁(yè)
基于單片機(jī)的超聲波測(cè)距課程設(shè)計(jì)報(bào)告_第3頁(yè)
基于單片機(jī)的超聲波測(cè)距課程設(shè)計(jì)報(bào)告_第4頁(yè)
基于單片機(jī)的超聲波測(cè)距課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩11頁(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、 課程設(shè)計(jì)說(shuō)明書 題 目:超聲波測(cè)距 院 (系):電子工程與自動(dòng)化 專 業(yè): 學(xué)生姓名: 學(xué) 號(hào): 指導(dǎo)教師: 2011 年 11 月 7 日共 16 頁(yè) 第 - 16 - 頁(yè) 目錄一、緒論二、對(duì)本課程的設(shè)計(jì)分析2.1 總體設(shè)計(jì)方案介紹2.1.1 超聲波測(cè)距原理 2.1.2 超聲波測(cè)距原理框圖2.2 系統(tǒng)硬件設(shè)計(jì)方案2.2.1 51系列單片機(jī)的功能特點(diǎn)及測(cè)距原理2.2.1.1 51系列單片機(jī)的功能特點(diǎn)2.2.1.2 單片機(jī)實(shí)現(xiàn)測(cè)距原理 三、主要電路模塊的實(shí)現(xiàn)方案比較及選擇3.1 超聲波發(fā)射電路3.2 超聲波檢測(cè)接收電路3.3 超聲波測(cè)距系統(tǒng)的硬件電路設(shè)計(jì)3.4 系統(tǒng)電路圖及其PCB圖四、系統(tǒng)的

2、軟件設(shè)計(jì)4.1 主程序流程圖4.2超聲波發(fā)射子程序和超聲波接收中斷程序五、測(cè)試數(shù)據(jù)以及結(jié)論六、課程設(shè)計(jì)過(guò)程中遇到的主要問(wèn)題以及解決辦法七、心得體會(huì)1、 緒論 隨著社會(huì)的發(fā)展,人們對(duì)距離或長(zhǎng)度測(cè)量的要求越來(lái)越高。超聲波測(cè)距由于其能進(jìn)行非接觸測(cè)量和相對(duì)較高的精度,越來(lái)越受到人們的重視。超聲波測(cè)距離的一個(gè)最重要的功能就是作用于倒車系統(tǒng)上。要實(shí)現(xiàn)倒車系統(tǒng)的準(zhǔn)確精度,就得把超聲波和單片機(jī)相結(jié)合,利用單片機(jī)的控制系統(tǒng)和精確的運(yùn)算使超聲波測(cè)距離更加快速和精確。從而,減少事故的發(fā)生。通過(guò)該實(shí)驗(yàn)學(xué)習(xí)利用單片機(jī)和超聲波探測(cè)元件測(cè)試距離的基本方法,進(jìn)一步熟悉單片機(jī)定時(shí)器技術(shù)、中斷技術(shù)在數(shù)據(jù)采集和數(shù)據(jù)處理過(guò)程中的綜合

3、運(yùn)用方法,提高綜合應(yīng)用程序的編程方法與技巧。發(fā)射器發(fā)出的40KHz超聲波以速度v在空氣中傳播,在到達(dá)被測(cè)物體時(shí)被反射返回,由接收器接收,其往返時(shí)間為t,由s=vt/2即可算出被測(cè)物體的距離。報(bào)告內(nèi)容包括:?jiǎn)纹瑱C(jī)控制主程序、中斷子程序、延時(shí)子程序和超聲波發(fā)射、接收電路、數(shù)碼管驅(qū)動(dòng)顯示電路以及主電路。二、對(duì)本課程設(shè)計(jì)的分析2.1總體設(shè)計(jì)方案介紹2.1.1超聲波測(cè)距原理發(fā)射器發(fā)出的超聲波以速度v在空氣中傳播,在到達(dá)被測(cè)物體時(shí)被反射返回,由接收器接收,其往返時(shí)間為t,由s=vt/2即可算出被測(cè)物體的距離。由于超聲波也是一種聲波,其聲速v與溫度有關(guān),下表列出了幾種不同溫度下的聲速。在使用時(shí),如果溫度變化

4、不大,則可認(rèn)為聲速是基本不變的。表1-1 超聲波波速與溫度的關(guān)系表溫度()-30-20-100102030100聲速(ms)313319325323338344349386表1-12.1.2超聲波測(cè)距儀原理框圖如下圖采用AT89s52單片機(jī),晶振:12MHZ,單片機(jī)P1.0口發(fā)出40kHZ的方波信號(hào),通過(guò)超聲波發(fā)射器輸出;超聲波接收器將接收到的超聲波信號(hào),利用外部中斷0口監(jiān)測(cè)超聲波輸出的返回信號(hào),顯示電路采用簡(jiǎn)單的4位LED數(shù)碼管,位碼用8550驅(qū)動(dòng)。 單 片 機(jī)超聲波接收數(shù)碼管顯示超聲波發(fā)送掃描驅(qū)動(dòng) 圖1-1 超聲波測(cè)距原理框圖2.2 系統(tǒng)的硬件結(jié)構(gòu)設(shè)計(jì)硬件電路的設(shè)計(jì)主要包括單片機(jī)系統(tǒng)及LE

5、D顯示電路、超聲波發(fā)射電路和超聲波檢測(cè)接收電路三部分。單片機(jī)采用AT89S52來(lái)實(shí)現(xiàn)對(duì)CX20106A紅外接收芯片和TCT40-10系列超聲波轉(zhuǎn)換模塊的控制。采用12MHz高精度的晶振,以獲得較穩(wěn)定時(shí)鐘頻率,減小測(cè)量誤差。單片機(jī)通過(guò)P1.0口經(jīng)反相器來(lái)控制超聲波的發(fā)送,然后單片機(jī)不斷的檢測(cè)INT0引腳,當(dāng)INT0引腳的電平用高電平變?yōu)榈碗娖綍r(shí)就認(rèn)為超聲波已返回。計(jì)數(shù)器所記的數(shù)據(jù)就是超聲波所經(jīng)歷的時(shí)間,通過(guò)換算就可以得到超聲波傳感器與障礙物的距離。2.2.1 51系列單片機(jī)的功能特點(diǎn)及測(cè)距原理2.2.1.1 51系列單片機(jī)的功能特點(diǎn) 51系列單片機(jī)中典型芯片(AT89S52)采用40引腳雙列直插

6、封裝(DIP)形式,內(nèi)部由CPU,8kB的ROM,256 B的RAM,3個(gè)16b的定時(shí)計(jì)數(shù)器TO、T1以及T2,4個(gè)8 b的工O端I:IP0,P1,P2,P3,一個(gè)全雙功串行通信口等組成。特別是該系列單片機(jī)片內(nèi)的Flash可編程、可擦除只讀存儲(chǔ)器(EPROM),使其在實(shí)際中有著十分廣泛的用途,在便攜式、省電及特殊信息保存的儀器和系統(tǒng)中更為有用。 5l系列單片機(jī)提供以下功能:8 kB存儲(chǔ)器;256 BRAM;32條工O線;3個(gè)16b定時(shí)計(jì)數(shù)器;5個(gè)2級(jí)中斷源;1個(gè)全雙向的串行口以及時(shí)鐘電路??臻e方式:CPU停止工作,而讓RAM、定時(shí)計(jì)數(shù)器、串行口和中斷系統(tǒng)繼續(xù)工作。掉電方式:保存RAM

7、的內(nèi)容,振蕩器停振,禁止芯片所有的其他功能直到下一次硬件復(fù)位。5l系列單片機(jī)為許多控制提供了高度靈活和低成本的解決辦法。充分利用他的片內(nèi)資源,即可在較少外圍電路的情況下構(gòu)成功能完善的超聲波測(cè)距系統(tǒng)。2.2.1.2 單片機(jī)實(shí)現(xiàn)測(cè)距原理 單片機(jī)發(fā)出超聲波測(cè)距是通過(guò)不斷檢測(cè)超聲波發(fā)射后遇到障礙物所反射的回波,從而測(cè)出發(fā)射和接收回波的時(shí)間差t,然后求出距離SCt2,式中的C為超聲波波速。限制該系統(tǒng)的最大可測(cè)距離存在4個(gè)因素:超聲波的幅度、反射的質(zhì)地、反射和入射聲波之間的夾角以及接收換能器的靈敏度。接收換能器對(duì)聲波脈沖的直接接收能力將決定最小的可測(cè)距離。由于超聲波屬于聲波范圍,其波速C與溫度有關(guān)。3、

8、主要電路模塊的實(shí)現(xiàn)方案比較及選擇3.1 超聲波發(fā)射電路超聲波發(fā)射電路原理圖如圖3-1所示。發(fā)射電路主要由反相器CD4069和超聲波發(fā)射換能器TX構(gòu)成,單片機(jī)P1.0端口輸出的40kHz的方波信號(hào)一路經(jīng)一級(jí)反向器后送到超聲波換能器的一個(gè)電極,另一路經(jīng)兩級(jí)反向器后送到超聲波換能器的另一個(gè)電極,用這種推換形式將方波信號(hào)加到超聲波換能器的兩端,可以提高超聲波的發(fā)射強(qiáng)度。圖3-1 超聲波發(fā)射電路原理圖 3.2 超聲波檢測(cè)接收電路集成電路CX20106A是一款紅外線檢波接收的專用芯片,常用于電視機(jī)紅外遙控接收器??紤]到紅外遙控常用的載波頻率38 kHz與測(cè)距的超聲波頻率40 kHz較為接近,可以利用它制作

9、超聲波檢測(cè)接收電路(如圖3-2)。實(shí)驗(yàn)證明用CX20106A接收超聲波(無(wú)信號(hào)時(shí)輸出高電平),具有很好的靈敏度和較強(qiáng)的抗干擾能力。圖3-2 超聲波檢測(cè)接收電路3.3 超聲波測(cè)距系統(tǒng)的硬件電路設(shè)計(jì)本系統(tǒng)的特點(diǎn)是利用單片機(jī)控制超聲波的發(fā)射和對(duì)超聲波自發(fā)射至接收往返時(shí)間的計(jì)時(shí),單片機(jī)選用AT89S52,經(jīng)濟(jì)易用,且片內(nèi)有8K的ROM,便于編程。單片機(jī)系統(tǒng)及顯示電路原理圖如見圖3-3。 圖3-3 單片機(jī)系統(tǒng)及顯示電路原理圖3.4 系統(tǒng)電路圖及其PCB圖給出整個(gè)系統(tǒng)的電路圖,并加以說(shuō)明。要詳細(xì)說(shuō)明第3節(jié)中各模塊如何組合在一起來(lái)實(shí)現(xiàn)系統(tǒng)功能的。圖4-1 系統(tǒng)電路圖及其PCB圖當(dāng)電源接電的時(shí)候由AT89S5

10、2單片機(jī)實(shí)現(xiàn)對(duì)CX20106A紅外接收芯片的控制。單片機(jī)通過(guò)P1.0引腳經(jīng)反相器來(lái)控制超聲波的發(fā)送,然后單片機(jī)不停的檢測(cè)INT0引腳,當(dāng)INT0引腳的電平由高電平變?yōu)榈碗娖綍r(shí)就認(rèn)為超聲波已經(jīng)返回。單片機(jī)開啟外部中斷使定時(shí)器關(guān)閉,定時(shí)器所計(jì)的數(shù)據(jù)就是超聲波所經(jīng)歷的時(shí)間,通過(guò)運(yùn)算就可以得到傳感器與障礙物之間的距離,這時(shí)通過(guò)BCD碼轉(zhuǎn)換把十六進(jìn)制的數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制,并通過(guò)查表把距離顯示在LED數(shù)碼管顯示器上。四、系統(tǒng)的軟件設(shè)計(jì)4.1 主程序流程圖超聲波測(cè)距儀的軟件設(shè)計(jì)主要由主程序、超聲波發(fā)射子程序、超聲波接收中斷程序及顯示子程序等部分組成。主程序首先對(duì)系統(tǒng)初始化,設(shè)置定時(shí)器T0工作模式為16位的定時(shí)

11、計(jì)數(shù)器模式,置位總中斷允許位EA。然后單片機(jī)送出超聲波脈沖,為避免超聲波從發(fā)射器直接傳送到接收器引起的直接波觸發(fā),需延遲一段時(shí)間,保持電平20us左右,也就是超聲波頻率大約為40KHZ,連續(xù)發(fā)送8個(gè)波形(這也是超聲波測(cè)距離會(huì)有一個(gè)最小可測(cè)距離的原因)后,才打開外中斷1接收返回的超聲波信號(hào)。由于采用12MHz的晶振,機(jī)器周期為1us,當(dāng)主程序檢測(cè)到接收成功的標(biāo)志位后,將計(jì)數(shù)器T0中的數(shù)(即超聲波來(lái)回所用的時(shí)間)按下式計(jì)算即可測(cè)得被測(cè)物體與測(cè)距儀之間的距離,設(shè)計(jì)時(shí)取20時(shí)的聲速為340m/s則有:d=(T0*344)/2(其中T0為計(jì)數(shù)器T0的計(jì)數(shù)值)測(cè)出距離后結(jié)果將以十進(jìn)制BCD碼方式送到LED

12、顯示管顯示,然后再發(fā)射超聲波脈沖重復(fù)測(cè)量過(guò)程。主程序框圖如下圖5-1所示: 開始 單片機(jī)初始化 N 定時(shí)中斷子程序有無(wú)回波信號(hào)You 一 外部中斷子程序 結(jié)束 圖5-1 超聲波測(cè)距離主程序流程圖4.2超聲波發(fā)射子程序和超聲波接收中斷程序 超聲波發(fā)射子程序的作用是通過(guò)P1.0端口發(fā)送8個(gè)超聲波信號(hào),頻率約40KHz的方波,脈沖寬度為20us左右,同時(shí)把計(jì)數(shù)器T0打開進(jìn)行計(jì)時(shí)。超聲波測(cè)距離主程序利用外中斷0檢測(cè)返回超聲波信號(hào),一旦接收到返回超聲波信號(hào)(INT0引腳出現(xiàn)低電平),立即進(jìn)入中斷程序。進(jìn)入該中斷后就立即關(guān)閉計(jì)時(shí)器T0停止計(jì)時(shí),并將測(cè)距成功標(biāo)志位賦值1.,中斷子程序流程圖如圖5-2所示:

13、外部中斷入口 定時(shí)中斷入口 關(guān)外部中斷 定時(shí)初始化 讀取時(shí)間值N 發(fā)射超聲波 計(jì)算距離 是否發(fā)射完 結(jié)果顯示 停止發(fā)射 返回 返回圖5-2 定時(shí)中斷子程序流程圖 外部中斷子程序流程圖五、測(cè)試數(shù)據(jù)以及結(jié)論在溫度為25度左右環(huán)境下測(cè)試:實(shí)際距離(mm)707580859095100105110實(shí)際距離(mm)727681879296100105110超聲波測(cè)距儀的制作和調(diào)試都比較簡(jiǎn)單,其中超聲波發(fā)射和接收采用15的超聲波換能器TCT40-10F1(T發(fā)射)和TCT40-10S1(R接收),中心頻率為40kHz,安裝時(shí)應(yīng)保持兩換能器中心軸線平行并相距48cm,其余元件無(wú)特殊要求。若能將超聲波接收電路

14、用金屬殼屏蔽起來(lái),則可提高抗干擾能力。 硬件電路制作完成并調(diào)試好后,便可將程序編譯好下載到單片機(jī)試運(yùn)行。根據(jù)實(shí)際情況可以修改超聲波發(fā)生子程序每次發(fā)送的脈沖寬度和兩次測(cè)量的間隔時(shí)間,以適應(yīng)不同距離的測(cè)量需要。根據(jù)所設(shè)計(jì)的電路參數(shù)和程序,測(cè)距儀能測(cè)的范圍為0.061m,測(cè)距儀最大誤差不超過(guò)1mm。系統(tǒng)調(diào)試完后應(yīng)對(duì)測(cè)量誤差和重復(fù)一致性進(jìn)行多次實(shí)驗(yàn)分析,不斷優(yōu)化系統(tǒng)使其達(dá)到實(shí)際使用的測(cè)量要求。改裝:由于技術(shù)水平所限暫時(shí)不能給該設(shè)計(jì)加入語(yǔ)音程序,如果能加入語(yǔ)音程序的話,就能使超聲波測(cè)距離在倒車系統(tǒng)和其他領(lǐng)域中得到最完美的體現(xiàn)。超聲波測(cè)距離在生活中的應(yīng)用越來(lái)越廣泛,且也使汽車在倒車的時(shí)候能最大可

15、能的減少事故的發(fā)生。其有很高的開發(fā)的價(jià)值和十分廣泛的應(yīng)用領(lǐng)域,為提高生活和科學(xué)技術(shù)水平提供了選擇。六、課程設(shè)計(jì)過(guò)程中遇到的主要問(wèn)題以及解決辦法問(wèn)題一:該實(shí)驗(yàn)不能在Protues上進(jìn)行仿真由于不能在Protues上仿真出超聲波信號(hào)的發(fā)射和接收所以進(jìn)行不了仿真,這時(shí)候我只能通過(guò)查資料直接在Protel上畫出該實(shí)驗(yàn)的整個(gè)電路圖,直接做出硬件來(lái)進(jìn)行調(diào)試。問(wèn)題二:接受超聲波電路的電容用錯(cuò) 電解電容用了瓷片電容,而且電容的大小用小了七、心得體會(huì)超聲波測(cè)距離讓我想到雷達(dá)探測(cè),因?yàn)槠淅玫木褪浅暡ㄔ怼S捎谑罴匐娰惻嘤?xùn)時(shí)候已經(jīng)做過(guò)了其電路板,只是當(dāng)時(shí)程序下載到板子上時(shí)候沒(méi)有成功。所以我把上次遺留下來(lái)的問(wèn)題,

16、一并的在這次課設(shè)中考慮進(jìn)去了,可以說(shuō)是帶著很疑問(wèn)去做課設(shè)的。板子很快就做好了,而程序的編寫都是自己通過(guò)網(wǎng)上查找資料以及詢問(wèn)高年級(jí)學(xué)長(zhǎng)才一步一個(gè)坎,一步一個(gè)腳印,最終編程成功,達(dá)到了我所想要的結(jié)果。過(guò)程不算很難,同時(shí)看著自己所做出來(lái)的成果,感覺挺開心的。通過(guò)該實(shí)驗(yàn),我們認(rèn)識(shí)的到了單片機(jī)在控制領(lǐng)域中的強(qiáng)大作用,也使我加深了所學(xué)的單片機(jī)知識(shí),為我們以后的就業(yè)和學(xué)習(xí)提供了很多的基礎(chǔ)。 附錄 超聲波測(cè)距離程序#include <reg52.h> #define uchar unsigned char #define uint unsigned int#define ulong unsigne

17、d longsbit Tx = P10; /產(chǎn)生脈沖引腳sbit Rx = P32; /回波引腳uchar code SEG710=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; uint distance4; /測(cè)距接收緩沖區(qū)uchar ge,shi,bai,temp,flag,outcomeH,outcomeL,i; bit succeed_flag; /測(cè)量成功標(biāo)志void conversion(uint temp_data);void delay_20us();void csb_init();void main() / 主程序 ui

18、nt distance_data,a,b; uchar CONT_1; i=0; flag=0; csb_init(); while(1) EA=0; Tx=1; delay_20us(); Tx=0; /產(chǎn)生一個(gè)20us的脈沖,在Tx引腳 while(Rx=0); /等待Rx回波引腳變高電平 succeed_flag=0; /清測(cè)量成功標(biāo)志 EX0=1; /打開外部中斷 TH1=0; TL1=0; TF1=0; TR1=1; /啟動(dòng)定時(shí)器1 EA=1; while(TH1 < 30); /等待測(cè)量的結(jié)果,周期65.535毫秒(可用中斷實(shí)現(xiàn)) TR1=0; /關(guān)閉定時(shí)器1 EX0=0;

19、/關(guān)閉外部中斷 if(succeed_flag=1) distance_data=outcomeH; /測(cè)量結(jié)果的高8位 distance_data<<=8; /放入16位的高8位 distance_data=distance_data|outcomeL;/與低8位合并成為16位結(jié)果數(shù)據(jù) distance_data*=12; /因?yàn)槎〞r(shí)器默認(rèn)為12分頻 distance_data/=58; /微秒的單位除以58等于厘米 / X秒=( 2*Y米)/344 X秒=0.0058*Y米 if(succeed_flag=0) distance_data=0; /沒(méi)有回波則清零 distanc

20、ei=distance_data; /將測(cè)量結(jié)果的數(shù)據(jù)放入緩沖區(qū) i+; if(i=3) distance_data=(distance0+distance1+distance2+distance3)/4; a=distance_data; if(b=a) CONT_1=0; if(b!=a) CONT_1+; if(CONT_1>=3) CONT_1=0; b=a;conversion(b); i=0; /外部中斷0,用做判斷回波電平INTO_() interrupt 0 / 外部中斷是0號(hào) outcomeH =TH1; outcomeL =TL1; succeed_flag=1; EX0=0; /關(guān)閉外部中斷/定時(shí)器0中斷,用做顯示timer0() interrupt 1 / 定時(shí)器0中斷是1號(hào) TH0=0x

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論