版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、摘要摘要 超聲波具有指向性強(qiáng),能量消耗緩慢,傳播距離較遠(yuǎn)等優(yōu)點(diǎn),所以, 在利用傳感器技術(shù)和自動(dòng)控制技術(shù)相結(jié)合的測(cè)距方案中,超聲波測(cè)距是目 前應(yīng)用最普遍的一種,它廣泛應(yīng)用于防盜、倒車?yán)走_(dá)、水位測(cè)量、建筑施 工工地以及一些工業(yè)現(xiàn)場(chǎng)。 本課題詳細(xì)介紹了超聲波傳感器的原理和特性,以及 atmel 公司的 at89c51 單片機(jī)的性能和特點(diǎn),并在分析了超聲波測(cè)距的原理的基礎(chǔ)上, 指出了設(shè)計(jì)測(cè)距系統(tǒng)的思路和所需考慮的問(wèn)題,給出了以 at89c51 單片 機(jī)為核心的低成本、高精度、微型化數(shù)字顯示超聲波測(cè)距儀的硬件電路和 軟件設(shè)計(jì)方法。整個(gè)電路采用模塊化設(shè)計(jì),由主程序、預(yù)置子程序、發(fā)射 子程序、接收子程序、顯
2、示子程序等模塊組成。各探頭的信號(hào)經(jīng)單片機(jī)綜 合分析處理,實(shí)現(xiàn)超聲波測(cè)距儀的各種功能。在此基礎(chǔ)上設(shè)計(jì)了系統(tǒng)的總 體方案,最后通過(guò)硬件和軟件實(shí)現(xiàn)了各個(gè)功能模塊。相關(guān)部分附有硬件電 路圖、程序流程圖。 經(jīng)實(shí)驗(yàn)證明,這套系統(tǒng)軟硬件設(shè)計(jì)合理、抗干擾能力強(qiáng)、實(shí)時(shí)性良好, 經(jīng)過(guò)系統(tǒng)擴(kuò)展和升級(jí),可以有效地解決汽車倒車、建筑施工工地以及一些 工業(yè)現(xiàn)場(chǎng)的位置監(jiān)控。 關(guān)鍵詞 at89c51;超聲波;測(cè)距 abstract ultrasonic wave has strong pointing to nature ,slowly energy consumption ,propagating distance far
3、ther ,so, in utilizing the scheme of distance finding that sensor technology and automatic control technology combine together ,ultrasonic wave finds range to use the most general one at present ,it applies to guard against theft , move backward the radar , water level measuring,building constructio
4、n site and some industrial scenes extensively. this subject has introduced principle and characteristic of the ultrasonic sensor in detail ,and the performance and characteristic of one-chip computer at89c51 of atmel company ,and on the basis of analyzing principle that ultrasonic wave finds range ,
5、the systematic thinking and questions needed to consider that have pointed out that designs and finds range ,provide low cost , the hardware circuit of high accuracy , ultrasonic range finder of miniature digital display and software design method taking at89c51 as the core. modular design of the wh
6、ole circuit from the main program, pre subroutine fired subroutine receive subroutine. display subroutine modules form. scm comprehensive analysis of the probe signal processing, and the ultrasonic range finder function. on the basis of the overall system design, hardware and software by the end of
7、each module. the research has led to the discovery that the software and hardware designing is justified, the anti-disturbance competence is powerful and the real- time capability is satisfactory and by extension and upgrade, this system can resolve the problem of the car availably, building constru
8、ction the position of the workplace and some industries spot supervision. key words at89c51; ultrasonic wave; measure distance 目錄目錄 1 緒論.1 1.1 超聲波測(cè)距儀的設(shè)計(jì)思路.1 1.2 方案一:利用分立模塊的超聲波測(cè)距儀.1 1.3 方案二:基于 at89c51 單片機(jī)的超聲波測(cè)距儀.2 2 理論分析與計(jì)算.4 2.1 測(cè)量與控制方法.4 2.2 理論計(jì)算.4 3 系統(tǒng)的硬件結(jié)構(gòu)設(shè)計(jì).6 3.1 51 系列單片機(jī)的功能特點(diǎn)及測(cè)距原理.6 3.1.1 51 系列
9、單片機(jī)的功能特點(diǎn).6 3.1.2 單片機(jī)實(shí)現(xiàn)測(cè)距原理.7 3.2 超聲波發(fā)射電路.7 3.3 超聲波檢測(cè)接收電路.8 3.4 超聲波測(cè)距系統(tǒng)的硬件電路設(shè)計(jì).9 4 系統(tǒng)軟件的設(shè)計(jì).11 4.1 超聲波測(cè)距儀的算法設(shè)計(jì).11 4.2 主程序流程圖.12 4.3 超聲波發(fā)生子程序和超聲波接收中斷程序.13 4.4 系統(tǒng)的軟硬件的調(diào)試.14 4.4.1 超聲波測(cè)距誤差分析.15 4.4.2 提高精度的方案及系統(tǒng)設(shè)計(jì).16 總結(jié).17 致謝.18 附錄.19 參考文獻(xiàn).26 簡(jiǎn)易超聲波測(cè)距儀的設(shè)計(jì) 1 緒論 1.1 超聲波測(cè)距儀的設(shè)計(jì)思路 超聲波傳感器及其測(cè)距原理 超聲波是指頻率高于 20khz 的機(jī)
10、械波。為了以超聲波作為檢測(cè)手段, 必須產(chǎn)生超生波和接收超聲波。完成這種功能的裝置就是超聲波傳感器, 習(xí)慣上稱為超聲波換能器或超聲波探頭。超聲波傳感器有發(fā)送器和接收器, 但一個(gè)超聲波傳感器也可具有發(fā)送和接收聲波的雙重作用。超聲波傳感器 是利用壓電效應(yīng)的原理將電能和超聲波相互轉(zhuǎn)化,即在發(fā)射超聲波的時(shí)候, 將電能轉(zhuǎn)換,發(fā)射超聲波;而在收到回波的時(shí)候,則將超聲振動(dòng)轉(zhuǎn)換成電 信號(hào)。 超聲波測(cè)距的原理一般采用渡越時(shí)間法 tof(time of flight)。 首先測(cè)出超聲波從發(fā)射到遇到障礙物返回所經(jīng)歷的時(shí)間,再乘以超聲 波的速度就得到二倍的聲源與障礙物之間的距離。 由于超聲波指向性強(qiáng),能量消耗緩慢,在介
11、質(zhì)中傳播距離遠(yuǎn),因而超 聲波可以用于距離的測(cè)量。利用超聲波檢測(cè)距離,設(shè)計(jì)比較方便,計(jì)算處 理也較簡(jiǎn)單,并且在測(cè)量精度方面也能達(dá)到要求。 超聲波發(fā)生器可以分為兩類:一類是用電氣方式產(chǎn)生超聲波,一類是 用機(jī)械方式產(chǎn)生超聲波。本課題屬于近距離測(cè)量,可以采用常用的壓電式 超聲波換能器來(lái)實(shí)現(xiàn)。 1.2 方案一:利用分立模塊的超聲波測(cè)距儀 系統(tǒng)包括超聲波測(cè)距模組、led 數(shù)碼顯示模組、驅(qū)動(dòng)模組、控制模組 及電源五部分。 超聲波測(cè)距模塊主要由發(fā)射部分和接收部分組成,超聲波的發(fā)射受主 控制器控制(如圖 1-1 所示);超聲波換能器諧振在 40khz 的頻率,模塊 上帶有 40khz 方波產(chǎn)生電路。 顯示模塊是
12、一個(gè) 8 位段數(shù)碼顯示的 led;測(cè)量結(jié)果用兩位數(shù)字段碼顯 示數(shù)據(jù)的個(gè)數(shù)。 電源采用 9v 的 dc 電源輸入,經(jīng)穩(wěn)壓管后得出 5v 以及 3.3v 的電源 供系統(tǒng)各部分電路使用。 系統(tǒng)結(jié)構(gòu) 圖 1-1 超聲波測(cè)距模塊組硬件框圖 優(yōu)點(diǎn):具有歷史數(shù)據(jù)存儲(chǔ)功能、出錯(cuò)管理功能。 缺點(diǎn):能測(cè)的最小距離比較長(zhǎng),不能實(shí)現(xiàn)雙向測(cè)距,電路復(fù)雜性能穩(wěn) 定性不高。 1.3 方案二:基于 at89c51 單片機(jī)的超聲波測(cè)距儀 超聲波測(cè)距儀主要以單片機(jī) at89c51 為核心,其發(fā)射器是利用壓電 晶體的諧振帶動(dòng)周圍空氣振動(dòng)來(lái)工作的。超聲波發(fā)射器向某一方向發(fā)射超 聲波,在發(fā)射的同時(shí)開(kāi)始計(jì)時(shí),超聲波在空氣中傳播,途中碰到
13、障礙物就 立即返回來(lái),超聲波接收器接收到反射波就立即停止計(jì)時(shí)。一般情況下, 超聲波在空氣中的傳播速度為 340m/s,根據(jù)計(jì)時(shí)器記錄的時(shí)間 t,就可以 計(jì)算出發(fā)射點(diǎn)距障礙物的距離 s,即 s=340t/2,這就是常用的時(shí)差法測(cè)距。 在測(cè)距計(jì)數(shù)電路設(shè)計(jì)中,采用了相關(guān)計(jì)數(shù)法,其主要原理是:測(cè)量時(shí) 單片機(jī)系統(tǒng)先給發(fā)射電路提供脈沖信號(hào),單片機(jī)計(jì)數(shù)器處于等待狀態(tài),不 計(jì)數(shù);當(dāng)信號(hào)發(fā)射一段時(shí)間后,由單片機(jī)發(fā)出信號(hào)使系統(tǒng)關(guān)閉發(fā)射信號(hào), 計(jì)數(shù)器開(kāi)始計(jì)數(shù),實(shí)現(xiàn)起始時(shí)的同步;當(dāng)接收信號(hào)的最后一個(gè)脈沖到來(lái)后, 超聲波發(fā)射調(diào)理電路 超聲波回波接收處理電路 超聲波發(fā)射頭 超聲波接受頭 模塊接口 計(jì)數(shù)器停止計(jì)數(shù)。 雙向超
14、聲波測(cè)距儀的系統(tǒng)主要有幾下部分組成(如圖 1-2 所示): led 顯示模塊,at89c51 芯片,超聲波發(fā)射模塊,超聲波接收模塊,電 源模塊等五大模塊組成。 圖 1-2 系統(tǒng)設(shè)計(jì)總體框圖 優(yōu)點(diǎn):雙向測(cè)距,精度高,功耗低; 在電路中我們采用 pic 芯片它的優(yōu)點(diǎn)是:精簡(jiǎn)指令使其執(zhí)行效率大為 提高; 徹底的保密性; 其引腳具有防瞬態(tài)能力,通過(guò)限流電阻可以接至 220v 交流電源,可 直接與繼電器控制電路相連,無(wú)須光電耦合器隔離,給應(yīng)用帶來(lái)極大方便。 基于上述兩種方案的比較,方案一,測(cè)量盲區(qū)較長(zhǎng),結(jié)構(gòu)復(fù)雜且穩(wěn)定 性不高。方案二,能進(jìn)行雙向測(cè)距,精度高,功耗低,模塊簡(jiǎn)單,穩(wěn)定性 高。所以選用方案二。
15、 555 電路 超聲波 接收模塊 at89c51 顯示模塊 超聲波 發(fā)射模塊 電源模塊 2 理論分析與計(jì)算 2.1 測(cè)量與控制方法 聲波在其傳播介質(zhì)中被定義為縱波。當(dāng)聲波受到尺寸大于其波長(zhǎng)的目 標(biāo)物體阻擋時(shí)就會(huì)發(fā)生反射;反射波稱為回聲。假如聲波在介質(zhì)中傳播的 速度是已知的,而且聲波從聲源到達(dá)目標(biāo)然后返回聲源的時(shí)間可以測(cè)量得 到,從聲波到目標(biāo)的距離就可以精確地計(jì)算出來(lái)。這就是本系統(tǒng)的測(cè)量原 理。超聲波傳感器的結(jié)構(gòu)如圖 2-1 所示。 圖 2-1 超聲波傳感器結(jié)構(gòu) 由于此超聲波測(cè)距儀可以實(shí)現(xiàn)雙向測(cè)距,所以需進(jìn)行測(cè)距選擇,而這 個(gè)測(cè)距選擇就以自動(dòng)選擇功能來(lái)實(shí)現(xiàn)。 2.2 理論計(jì)算 圖 2-2 測(cè)距的
16、原理 如圖 2-2 所示為反射時(shí)間法,是利用檢測(cè)聲波發(fā)出到接收到被測(cè)物反 射回波的時(shí)間來(lái)測(cè)量距離其原理如圖所示,對(duì)于距離較短和要求不高的場(chǎng) 合我們可認(rèn)為空氣中的聲速為常數(shù),我們通過(guò)測(cè)量回波時(shí)間 t 利用公式 電極 共振板 壓電晶片 s=c*(t/2)其中,s 為被測(cè)距離、v 為空氣中聲速、t 為回波時(shí)間 (t=t1+t2),可以計(jì)算出路程,這種方法不受聲波強(qiáng)度的影響,直接耦 合信號(hào)的影響也可以通過(guò)設(shè)置“時(shí)間門”來(lái)加以克服。這樣可以求出距離: s=c*(t1+t2)/2 3 系統(tǒng)的硬件結(jié)構(gòu)設(shè)計(jì) 硬件電路的設(shè)計(jì)主要包括單片機(jī)系統(tǒng)及顯示電路、超聲波發(fā)射電路和 超聲波檢測(cè)接收電路三部分。單片機(jī)采用 a
17、t89c51 或其兼容系列。采用 12mhz 高精度的晶振,以獲得較穩(wěn)定時(shí)鐘頻率,減小測(cè)量誤差。單片機(jī)用 p1.0 端口輸出超聲波換能器所需的 40khz 的方波信號(hào),利用外中斷 0 口監(jiān) 測(cè)超聲波接收電路輸出的返回信號(hào)。顯示電路采用簡(jiǎn)單實(shí)用的 2 位共陽(yáng) led 數(shù)碼管,段碼用 74ls164 驅(qū)動(dòng)。 3.1 51 系列單片機(jī)的功能特點(diǎn)及測(cè)距原理 3.1.1 51 系列單片機(jī)的功能特點(diǎn) 5l 系列單片機(jī)中典型芯片(at89c51)采用 40 引腳雙列直插封裝(dip) 形式,內(nèi)部由 cpu,4kb 的 rom,256 b 的 ram,2 個(gè) 16b 的定時(shí)計(jì) 數(shù)器 to 和 t1,4 個(gè) 8
18、 b 的 io 端 i:p0,p1,p2,p3,一個(gè)全雙工串行 通信口等組成。特別是該系列單片機(jī)片內(nèi)的 flash 可編程、可擦除只讀存 儲(chǔ)器(eprom),使其在實(shí)際中有著十分廣泛的用途,在便攜式、省電及特 殊信息保存的儀器和系統(tǒng)中更為有用。該系列單片機(jī)引腳與封裝如圖 3-1 所示。 圖 3-1 51 系列單片機(jī)封裝圖 5l 系列單片機(jī)提供以下功能:4 kb 存儲(chǔ)器;256b ram;32 條 i/o 線;2 個(gè) 16bite 定時(shí)/計(jì)數(shù)器;5 個(gè) 2 級(jí)中斷源;1 個(gè)全雙向的串行口以及時(shí)鐘電 路。 空閑方式:cpu 停止工作,而讓 ram、定時(shí)/計(jì)數(shù)器、串行口和中斷系統(tǒng) 繼續(xù)工作。 掉電方
19、式:保存 ram 的內(nèi)容,振蕩器停振,禁止芯片所有的其他功能直 到下一次硬件復(fù)位。 5l 系列單片機(jī)為許多控制提供了高度靈活和低成本的解決辦法。充分利用 他的片內(nèi)資源,即可在較少外圍電路的情況下構(gòu)成功能完善的超聲波測(cè)距 系統(tǒng)。 3.1.2 單片機(jī)實(shí)現(xiàn)測(cè)距原理 單片機(jī)發(fā)出超聲波測(cè)距是通過(guò)不斷檢測(cè)超聲波發(fā)射后遇到障礙物所反 射的回波,從而測(cè)出發(fā)射和接收回波的時(shí)間差 tr,然后求出距離 sct/2, 式中的 c 為超聲波波速。 限制該系統(tǒng)的最大可測(cè)距離存在 4 個(gè)因素:超聲波的幅度、反射的質(zhì) 地、反射和入射聲波之間的夾角以及接收換能器的靈敏度。接收換能器對(duì) 聲波脈沖的直接接收能力將決定最小的可測(cè)距離
20、。為了增加所測(cè)量的覆蓋 范圍、減小測(cè)量誤差,可采用多個(gè)超聲波換能器分別作為多路超聲波發(fā)射/ 接收的設(shè)計(jì)方法。由于超聲波屬于聲波范圍,其波速 c 與溫度有關(guān)。 3.2 超聲波發(fā)射電路 超聲波發(fā)射電路原理圖如圖 3-2 所示。發(fā)射電路主要由反相器 74ls04 和超聲波發(fā)射換能器 t 構(gòu)成,單片機(jī) p1.0 端口輸出的 40khz 的方波信號(hào) 一路經(jīng)一級(jí)反向器后送到超聲波換能器的一個(gè)電極,另一路經(jīng)兩級(jí)反向器 后送到超聲波換能器的另一個(gè)電極,用這種推換形式將方波信號(hào)加到超聲 波換能器的兩端,可以提高超聲波的發(fā)射強(qiáng)度。輸出端采兩個(gè)反向器并聯(lián), 用以提高驅(qū)動(dòng)能力。上位電阻 r10、r11 一方面可以提高
21、反向器 74ls04 輸出高電平的驅(qū)動(dòng)能力,另一方面可以增加超聲波換能器的阻尼效果,縮 短其自由振蕩時(shí)間。 壓電式超聲波換能器是利用壓電晶體的諧振來(lái)工作的。超聲波換能器 內(nèi)部有兩個(gè)壓電晶片和一個(gè)換能板。當(dāng)它的兩極外加脈沖信號(hào),其頻率等 于壓電晶片的固有振蕩頻率時(shí),壓電晶片會(huì)發(fā)生共振,并帶動(dòng)共振板振動(dòng) 產(chǎn)生超聲波,這時(shí)它就是一個(gè)超聲波發(fā)生器;反之,如果兩電極問(wèn)未外加 電壓,當(dāng)共振板接收到超聲波時(shí),將壓迫壓電晶片作振動(dòng),將機(jī)械能轉(zhuǎn)換 為電信號(hào),這時(shí)它就成為超聲波接收換能器。超聲波發(fā)射換能器與接收換 能器在結(jié)構(gòu)上稍有不同,使用時(shí)應(yīng)分清器件上的標(biāo)志。 圖 3-2 超聲波發(fā)射電路原理圖 3.3 超聲波檢
22、測(cè)接收電路 圖3-3 超聲波檢測(cè)接收電路 集成電路cx20106a是一款紅外線檢波接收的專用芯片,常用于電視 機(jī)紅外遙控接收器。考慮到紅外遙控常用的載波頻率38 khz與測(cè)距的超聲 波頻率40 khz較為接近,可以利用它制作超聲波檢測(cè)接收電路(如圖3-3)。 實(shí)驗(yàn)證明用cx20106a接收超聲波(無(wú)信號(hào)時(shí)輸出高電平),具有很好的靈敏 度和較強(qiáng)的抗干擾能力。適當(dāng)更改電容c4的大小,可以改變接收電路的靈 敏度和抗干擾能力。 3.4 超聲波測(cè)距系統(tǒng)的硬件電路設(shè)計(jì) 本系統(tǒng)的特點(diǎn)是利用單片機(jī)控制超聲波的發(fā)射和對(duì)超聲波自發(fā)射至接 收往返時(shí)間的計(jì)時(shí),單片機(jī)選用 at89c51,經(jīng)濟(jì)易用,且片內(nèi)有 4k 的
23、rom,便于編程。電路原理圖如圖 3-4 所示。 超聲波測(cè)距儀硬件電路的設(shè)計(jì)主要包括單片機(jī)系統(tǒng)及顯示電路、超聲 波發(fā)射電路和超聲波檢測(cè)接收電路三部分。單片機(jī)采用 at89c51 或其兼 容系列。采用 12mhz 高精度的晶振,以獲得較穩(wěn)定時(shí)鐘頻率,減小測(cè)量 誤差。單片機(jī)用 p1.0 端口輸出超聲波換能器所需的 40khz 的方波信號(hào), 利用外中斷 0 口監(jiān)測(cè)超聲波接收電路輸出的返回信號(hào)。顯示電路采用簡(jiǎn)單 實(shí)用的 2 位共陽(yáng) led 數(shù)碼管,段碼用 74ls164 驅(qū)動(dòng)。 圖 3-4 超聲波測(cè)距電路原理圖 1 2 5 3 8 7 6 4 * lm358 2 7 6 8 5 4 3 1 * lm5
24、67 4 3 2 1 5 6 7 8 * 24c02 * 10k 10k10k xtal1 19 p3.o 10 p3.1 11 p3.4 14 p3.5 15 p2.0 21 vcc 40 p2.3 24 p3.2 12 xtal2 18 gnd 20 p2.2 23 at89c51 1k r? res2 220k 22k 2.2k 10k 2.2k 30pf 30pf 104104 104 2.2uf 152 1uf 1uf 3 4 5 6 10 11 12 13 14 9 7 1 2 8 * 74ls164 4.7k 1k100 1 2 4 5 6 7 9 10 3 8 * 2七led七
25、七七七七 vcc vcc vcc 20k * 七七七七七七七七 * 七七七七七七七七 4 系統(tǒng)軟件的設(shè)計(jì) 超聲波測(cè)距儀的軟件設(shè)計(jì)主要由主程序、超聲波發(fā)生子程序、超聲波 接收中斷程序及顯示子程序組成。我們知道 c 語(yǔ)言程序有利于實(shí)現(xiàn)較復(fù)雜 的算法,匯編語(yǔ)言程序則具有較高的效率且容易精細(xì)計(jì)算程序運(yùn)行的時(shí)間, 而超聲波測(cè)距儀的程序既有較復(fù)雜的計(jì)算(計(jì)算距離時(shí)) ,又要求精細(xì)計(jì) 算程序運(yùn)行時(shí)間(超聲波測(cè)距時(shí)) ,所以控制程序可采用 c 語(yǔ)言和匯編語(yǔ) 言混合編程。主超聲波測(cè)距儀主程序利用外中斷 0 檢測(cè)返回超聲波信號(hào), 一旦接收到返回超聲波信號(hào)(即 int0 引腳出現(xiàn)低電平) ,立即進(jìn)入中斷程 序。進(jìn)入
26、中斷后就立即關(guān)閉計(jì)時(shí)器 t0 停止計(jì)時(shí),并將測(cè)距成功標(biāo)志字賦 值 1。如果當(dāng)計(jì)時(shí)器溢出時(shí)還未檢測(cè)到超聲波返回信號(hào),則定時(shí)器 t0 溢出 中斷將外中斷 0 關(guān)閉,并將測(cè)距成功標(biāo)志字賦值 2 以表示此次測(cè)距不成功。 前方測(cè)距電路的輸出端接單片機(jī) int0 端口,中斷優(yōu)先級(jí)最高,左、右測(cè) 距電路的輸出通過(guò)與門 ic3a 的輸出接單片機(jī) int1 端口,同時(shí)單片機(jī) p1.3 和 p1.4 接到 ic3a 的輸入端,中斷源的識(shí)別由程序查詢來(lái)處理,中斷 優(yōu)先級(jí)為先右后左。 4.1 超聲波測(cè)距儀的算法設(shè)計(jì) 超聲波測(cè)距的原理為超聲波發(fā)生器 t 在某一時(shí)刻發(fā)出一個(gè)超聲波信號(hào), 當(dāng)這個(gè)超聲波遇到被測(cè)物體后反射回來(lái)
27、,就被超聲波接收器 r 所接收到。 這樣只要計(jì)算出從發(fā)出超聲波信號(hào)到接收到返回信號(hào)所用的時(shí)間,就可算 出超聲波發(fā)生器與反射物體的距離。距離的計(jì)算公式為: d=s/2=(ct)/2 (1) 其中,d 為被測(cè)物與測(cè)距儀的距離,s 為聲波的來(lái)回的路程,c 為聲速,t 為聲波來(lái)回所用的時(shí)間。在啟動(dòng)發(fā)射電路的同時(shí)啟動(dòng)單片機(jī)內(nèi)部的定時(shí)器 t0,利用定時(shí)器的計(jì)數(shù)功能記錄超聲波發(fā)射的時(shí)間和收到反射波的時(shí)間。 當(dāng)收到超聲波反射波時(shí),接收電路輸出端產(chǎn)生一個(gè)負(fù)跳變,在 int0 或 int1 端產(chǎn)生一個(gè)中斷請(qǐng)求信號(hào),單片機(jī)響應(yīng)外部中斷請(qǐng)求,執(zhí)行外部中 斷服務(wù)子程序,讀取時(shí)間差,計(jì)算距離。其部分源程序如下: rece
28、ive0:push psw push acc clr ex0 ;關(guān)外部中斷 0 mov r7, th0 ;讀取時(shí)間值 mov r6, tl0 clr c mov a, r6 subb a, #0bbh;計(jì)算時(shí)間差 mov 31h, a ;存儲(chǔ)結(jié)果 mov a, r7 subb a, #3ch mov 30h, a setb ex0 ;開(kāi)外部中斷 0 pop acc pop psw reti 4.2 主程序流程圖 軟件分為兩部分,主程序和中斷服務(wù)程序,如圖 4-1(a)(b) (c) 所示。主程序完成初始化工作、各路超聲波發(fā)射和接收順序的控制。 定時(shí)中斷服務(wù)子程序完成三方向超聲波的輪流發(fā)射,外部
29、中斷服務(wù)子 程序主要完成時(shí)間值的讀取、距離計(jì)算、結(jié)果的輸出等工作。 主程序首先是對(duì)系統(tǒng)環(huán)境初始化,設(shè)置定時(shí)器 t0 工作模式為 16 位定 時(shí)計(jì)數(shù)器模式。置位總中斷允許位 ea 并給顯示端口 p0 和 p1 清 0。然后 調(diào)用超聲波發(fā)生子程序送出一個(gè)超聲波脈沖,為了避免超聲波從發(fā)射器直 接傳送到接收器引起的直射波觸發(fā),需要延時(shí)約 0.1 ms(這也就是超聲波 測(cè)距儀會(huì)有一個(gè)最小可測(cè)距離的原因)后,才打開(kāi)外中斷 0 接收返回的超 聲波信號(hào)。由于采用的是 12 mhz 的晶振,計(jì)數(shù)器每計(jì)一個(gè)數(shù)就是 1s, 當(dāng)主程序檢測(cè)到接收成功的標(biāo)志位后,將計(jì)數(shù)器 t0 中的數(shù)(即超聲波來(lái) 回所用的時(shí)間)按式(2
30、)計(jì)算,即可得被測(cè)物體與測(cè)距儀之間的距離, 設(shè)計(jì)時(shí)取 20時(shí)的聲速為 344 m/s 則有: d=(ct)/2=172t0/10000cm (2) 其中,t0 為計(jì)數(shù)器 t0 的計(jì)算值。 測(cè)出距離后結(jié)果將以十進(jìn)制 bcd 碼方式送往 led 顯示約 0.5s,然后 再發(fā)超聲波脈沖重復(fù)測(cè)量過(guò)程。為了有利于程序結(jié)構(gòu)化和容易計(jì)算出距離, 主程序采用 c 語(yǔ)言編寫(xiě)。 4.3 超聲波發(fā)生子程序和超聲波接收中斷程序 超聲波發(fā)生子程序的作用是通過(guò) p1.0 端口發(fā)送 2 個(gè)左右超聲波脈沖信 圖 4-1 超聲波測(cè)距系統(tǒng)的軟件設(shè)計(jì) 號(hào)(頻率約 40khz 的方波) ,脈沖寬度為 12s 左右,同時(shí)把計(jì)數(shù)器 t0
31、 打 開(kāi)進(jìn)行計(jì)時(shí)。超聲波發(fā)生子程序較簡(jiǎn)單,但要求程序運(yùn)行準(zhǔn)確,所以采用 匯編語(yǔ)言編程。 超聲波測(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。如果當(dāng) 計(jì)時(shí)器溢出時(shí)還未檢測(cè)到超聲波返回信號(hào),則定時(shí)器 t0 溢出中斷將外中 斷 0 關(guān)閉,并將測(cè)距成功標(biāo)志字賦值 2 以表示此次測(cè)距不成功。 前方測(cè)距 電路的輸出端接單片機(jī) int0 端口,中斷優(yōu)先級(jí)最高,左、右測(cè)距電路的 輸出通過(guò)與門 ic3a 的輸出接單片機(jī) int1 端口,同時(shí)單片機(jī) p1.3
32、和 p1.4 接到 ic3a 的輸入端,中斷源的識(shí)別由程序查詢來(lái)處理,中斷優(yōu)先級(jí)為先 右后左。部分源程序如下: receive1:push psw push acc clr ex1 ;關(guān)外部中斷 1 jnb p1.1, right ;p1.1 引腳為 0,轉(zhuǎn)至右測(cè)距電路中斷服務(wù)程序 jnb p1.2, left ;p1.2 引腳為 0,轉(zhuǎn)至左測(cè)距電路中斷服務(wù)程序 return:setb ex1;開(kāi)外部中斷 1 pop acc pop psw reti right: . ;右測(cè)距電路中斷服務(wù)程序入口 ajmp return left:. ;左測(cè)距電路中斷服務(wù)程序入口 ajmp return 4.
33、4 系統(tǒng)的軟硬件的調(diào)試 超聲波測(cè)距儀的制作和調(diào)試都比較簡(jiǎn)單,其中超聲波發(fā)射和接收采用 15 的超聲波換能器 tct40-10f1(t 發(fā)射)和 tct40-10s1(r 接收) ,中 心頻率為 40khz,安裝時(shí)應(yīng)保持兩換能器中心軸線平行并相距 48cm, 其余元件無(wú)特殊要求。若能將超聲波接收電路用金屬殼屏蔽起來(lái),則可提 高抗干擾能力。根據(jù)測(cè)量范圍要求不同,可適當(dāng)調(diào)整與接收換能器并接的 濾波電容 c0 的大小,以獲得合適的接收靈敏度和抗干擾能力。 硬件電路制作完成并調(diào)試好后,便可將程序編譯好下載到單片機(jī)試運(yùn) 行。根據(jù)實(shí)際情況可以修改超聲波發(fā)生子程序每次發(fā)送的脈沖寬度和兩次 測(cè)量的間隔時(shí)間,以適
34、應(yīng)不同距離的測(cè)量需要。根據(jù)所設(shè)計(jì)的電路參數(shù)和 程序,測(cè)距儀能測(cè)的范圍為 0.075.5m,測(cè)距儀最大誤差不超過(guò) 1cm。系 統(tǒng)調(diào)試完后應(yīng)對(duì)測(cè)量誤差和重復(fù)一致性進(jìn)行多次實(shí)驗(yàn)分析,不斷優(yōu)化系統(tǒng) 使其達(dá)到實(shí)際使用的測(cè)量要求。 4.4.1 超聲波測(cè)距誤差分析 1、發(fā)射接收時(shí)間對(duì)測(cè)量精度的影響分析 采用 tr40 壓電超聲波傳感器,脈沖發(fā)射由單片機(jī)控制,發(fā)射頻率 40khz ,忽略脈沖電路硬件產(chǎn)生的延時(shí),可知由軟件生成的起始時(shí)間對(duì) 于一般要求的精度是可靠的。對(duì)于接收到的回波,超聲波在空氣介質(zhì)的傳 播過(guò)程中會(huì)有很大的衰減,其衰減遵循指數(shù)規(guī)律。 設(shè)測(cè)量設(shè)備基準(zhǔn)面距被測(cè)物距離為 h,則空氣中傳播的超聲波波動(dòng)方
35、 程為: k ht +ktet +kt 2 0 aacosacos 由以上公式可知,超聲波在傳播過(guò)程中存在衰減,且超聲波頻率越高, 衰減越快,但頻率的增高有利于提高超聲波的指向性。 經(jīng)以上分析,超聲波回波的幅值在傳播過(guò)程中衰減很大,收到的回波 信號(hào)可能十分微弱,要想判斷捕獲到的第一個(gè)回波確定準(zhǔn)確的接受時(shí)間, 必須對(duì)收到的信號(hào)進(jìn)行足夠的放大,否則不正確的判斷回波時(shí)間,會(huì)對(duì)超 聲波測(cè)量精度產(chǎn)生影響。 2、當(dāng)?shù)芈曀賹?duì)測(cè)量精度的影響分析 當(dāng)?shù)芈曀賹?duì)超聲波測(cè)距測(cè)量精度的影響遠(yuǎn)遠(yuǎn)要比收發(fā)時(shí)間的影響嚴(yán)重。 超聲波在大氣中傳播的速度受介質(zhì)氣體的溫度、密度及氣體分子成分的影 響,即: s rt c m 由上式知
36、,在空氣中,當(dāng)?shù)芈曀僦粵Q定于氣體的溫度,因此獲得準(zhǔn)確 的當(dāng)?shù)貧鉁乜梢杂行У奶岣叱暡y(cè)距時(shí)的測(cè)量精度。工程上常用的由氣 溫估算當(dāng)?shù)芈曀俚墓饺缦拢?0 cc1 t 273 式中 c0=331.4m/s;t 為絕對(duì)溫度,單位 k。 此公式一般能為聲速的換算提供較為準(zhǔn)確的結(jié)果。實(shí)際情況下,溫度 每上升或者下降 1oc,聲速將增加或者減少 0.607m /s,這個(gè)影響對(duì)于較高 精度的測(cè)量是相當(dāng)嚴(yán)重的。因此提高超聲波測(cè)量精度的重中之重就是獲得 準(zhǔn)確的當(dāng)?shù)芈曀佟?4.4.2 提高精度的方案及系統(tǒng)設(shè)計(jì) (1)溫度校正的方法提高測(cè)距精度 由上述的誤差分析知,如果能夠知道當(dāng)?shù)販囟?,則可根據(jù)公式求出當(dāng) 地聲速,
37、從而能夠獲得較高的測(cè)量精度。而問(wèn)題的關(guān)鍵在于獲得溫度數(shù)據(jù) 的方法。采用熱敏電阻、熱電耦、集成溫度傳感器都可以獲得較為準(zhǔn)確的 溫度值。 (2)標(biāo)桿校正的方法提高測(cè)距精度 在復(fù)雜環(huán)境下,如果難于獲得環(huán)境溫度,或者不便獲得環(huán)境溫度時(shí), 如果仍舊要求較高的測(cè)量精度,我們采用所謂標(biāo)桿校正的方法實(shí)現(xiàn)超聲波 測(cè)距精度的校正。標(biāo)桿校正的示意圖如圖 4-2 所示。 圖 4-2 標(biāo)桿校正的示意圖 超聲波測(cè)距裝置首先測(cè)量距離已知為 h 的基平面(標(biāo)桿)聲波往返所 用的時(shí)間,而后由測(cè)得的時(shí)間和距離 h 求出當(dāng)?shù)芈曀佟Mㄟ^(guò)這樣的方法, 我們也能夠順利的求出聲速,省去了使用傳感器測(cè)量溫度所帶來(lái)的麻煩。 因此,只用為測(cè)距設(shè)
38、備設(shè)定“標(biāo)定”和“測(cè)量”兩種狀態(tài),即能夠?qū)崿F(xiàn)溫 度校正所能實(shí)現(xiàn)的高精度測(cè)距功能。 總結(jié) 設(shè)計(jì)的最終結(jié)果是使超聲波測(cè)距儀能夠產(chǎn)生超聲波,實(shí)現(xiàn)超聲波的發(fā) 送與接收,從而實(shí)現(xiàn)利用超聲波方法測(cè)量物體間的距離。以數(shù)字的形式顯 示測(cè)量距離。 對(duì)所設(shè)計(jì)的電路進(jìn)行測(cè)量、校準(zhǔn)發(fā)現(xiàn)其測(cè)量范圍 15cm300cm 內(nèi)的平 面物體做了多次測(cè)量發(fā)現(xiàn),其最大誤差為 3cm,顯示最小分辨率為 0.01 m,測(cè)量盲區(qū)小于 0.15 米,且重復(fù)性好。 該測(cè)距儀具有準(zhǔn)雙向測(cè)距功能,穩(wěn)定性比較高、靈敏度比較高,盲區(qū) 范圍小,分辨率小于 0.01m,被測(cè)目標(biāo)不需要垂直于超聲波測(cè)距儀角度保 持在正負(fù) 30 度,被測(cè)目標(biāo)表面不需要平坦;
39、但是在檢測(cè)過(guò)程中會(huì)有一些 不便的地方: 1.測(cè)量時(shí)在超聲波測(cè)距儀周圍沒(méi)有其他可反射超聲波的物體,由于發(fā) 射功率有限,測(cè)距儀無(wú)法測(cè)量 5m 外的物體。 2.因?yàn)閷?shí)現(xiàn)雙向測(cè)距所以電路的電流相對(duì)比較大。 3.不能夠?qū)崿F(xiàn)不同溫度下的測(cè)距功能。 4.因?yàn)槌暡ㄊ菍⒖諝庾鳛槊浇樗允茈姶鸥蓴_比較大。 盡管采取了多種方法以減小測(cè)距誤差,但仍存在各種主客觀的偏差: 對(duì) t 的計(jì)數(shù)誤差;傳感器的反應(yīng)速度;對(duì)回波信號(hào)處理需要時(shí)間;聲速誤 差,當(dāng)前條件下的實(shí)傳播速度與程序中設(shè)置間的差別;數(shù)據(jù)處理中整數(shù)與小 數(shù)的相乘等等。經(jīng)多次測(cè)量發(fā)現(xiàn)對(duì)誤差影響因素最大的是溫度的變化,因 此,該儀器有待進(jìn)一步改進(jìn)和升級(jí):如采用溫度傳
40、感器補(bǔ)償聲速等,從而 使測(cè)量更精確。 本課題所設(shè)計(jì)的超聲波測(cè)距系統(tǒng)在許多工業(yè)現(xiàn)場(chǎng)和自動(dòng)控制場(chǎng)合,都 有很重要的作用。但由于經(jīng)驗(yàn)不足,電路硬件、軟件部分都有不夠完善的 地方,在今后的學(xué)習(xí)中會(huì)進(jìn)一步改進(jìn)。 致謝 四年的讀書(shū)生活在這個(gè)季節(jié)即將劃上一個(gè)句號(hào),而于我的人生卻只是 一個(gè)逗號(hào),我將面對(duì)又一次征程的開(kāi)始。四年的求學(xué)生涯在師長(zhǎng)、親友的 大力支持下,走得辛苦卻也收獲滿囊,在論文即將付梓之際,思緒萬(wàn)千, 心情久久不能平靜。 在本次論文設(shè)計(jì)過(guò)程中,劉力軍老師對(duì)該論文從選題,構(gòu)思到最后定 稿的各個(gè)環(huán)節(jié)給予細(xì)心指引與教導(dǎo),使我得以最終完成畢業(yè)論文設(shè)計(jì)。在 學(xué)習(xí)中,老師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、豐富淵博的知識(shí)、敏銳的
41、學(xué)術(shù)思維、精益 求精的工作態(tài)度以及侮人不倦的師者風(fēng)范是我終生學(xué)習(xí)的楷模,導(dǎo)師們的 高深精湛的造詣與嚴(yán)謹(jǐn)求實(shí)的治學(xué)精神,將永遠(yuǎn)激勵(lì)著我。這四年中還得 到眾多老師的關(guān)心支持和幫助。在此,謹(jǐn)向老師們致以衷心的感謝和崇高 的敬意! 最后,我要向百忙之中抽時(shí)間對(duì)本文進(jìn)行審閱,評(píng)議和參與本人論文 答辯的各位老師表示感謝。 附錄 程序清單 #include #define k1 p3_4 #define csbout p3_5 /超聲波發(fā)送 #define csbint p3_7 /超聲波接收 #define csbc=0.034 #define bg p3_3 unsigned char csbds,op
42、to,digit,buffer3,xm1,xm2,xm0,key,jpjs;/顯示標(biāo)識(shí) unsigned char convert10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6 f;/09 段碼 unsigned int s,t,i, xx,j,sj1,sj2,sj3,mqs,sx1; bit cl; void csbcj(); void delay(j); /延時(shí)函數(shù) void scanled(); /顯示函數(shù) void timetobuffer(); /顯示轉(zhuǎn)換函數(shù) void keyscan(); /健盤(pán)處理函數(shù) void k1cl(
43、); void k2cl(); void k3cl(); void k4cl(); void offmsd(); /延時(shí)子程序 void main() /主函數(shù) ea=1; /開(kāi)中斷 tmod=0x11; /設(shè)定時(shí)器 0 為計(jì)數(shù),設(shè)定時(shí)器 1 定時(shí) et0=1; /定時(shí)器 0 中斷允許 et1=1; /定時(shí)器 1 中斷允許 th0=0x00; tl0=0x00; th1=0x9e; /定時(shí)器 t1 置為 25ms tl1=0x57; csb ds=0; csb int=1; /p3.2 置位 csb out=1; /p2.7 置位 cl=0; pto=0xff; jpjs=0; sj1=45;
44、 sj2=200; sj3=400; k4cl(); tr1=1; while(1) keyscan(); if(jpjssj3) buffer2=0x76; buffer1=0x76; buffer0=0x76; else if(ssj1) buffer2=0x40; buffer1=0x40; buffer0=0x40; else timetobuffer(); else timetobuffer(); /將值轉(zhuǎn)換成 led 段碼 offmsd(); scanled(); /顯示函數(shù) if(ssj2) bg=0; bg=1; void scanled() /顯示功能模塊 digit=0x0
45、4; for( i=0; i=1; /循環(huán)右移 1 位 void timetobuffer() /轉(zhuǎn)換段碼功能模塊 xm0=s/100; xm1=(s-100*xm0)/10; xm2=s-100*xm0-10*xm1; buffer2=convertxm2; buffer1=convertxm1; buffer0=convertxm0; void delay(i) while(-i); void timer1int (void) interrupt 3 using 2 th1=0x9e; tl1=0x57; csbds+; if(csbds=40) csbds=0; cl=1; void csbcj() if(cl=1) tr1=0; th0=0x00; tl0=0x00; i=10; while(i-) csbout=!csbout; tr0=1; i=mqs; /盲區(qū) while
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年高中歷史第六單元中國(guó)社會(huì)主義的政治建設(shè)與祖國(guó)統(tǒng)一單元總結(jié)學(xué)案含解析岳麓版必修1
- 2025合同樣例pos機(jī)合作協(xié)定范本
- 2025的學(xué)校食堂用工合同范本
- 2025抵押房產(chǎn)轉(zhuǎn)讓合同
- 2025醫(yī)療服務(wù)合同范本醫(yī)療服務(wù)合同樣本
- 2025年六盤(pán)水貨運(yùn)上崗證考試
- 2025年北京資格證模擬考試
- 2025年青島交通運(yùn)輸從業(yè)資格證怎樣考試
- 2025年云浮貨運(yùn)考試
- 2025勞動(dòng)合同英文版范文
- 無(wú)人機(jī)路徑規(guī)劃與優(yōu)化
- 酒駕后雙方賠償收據(jù)范本
- 受性侵犯的女生的心理輔導(dǎo)方案
- (施工單位)投標(biāo)人承擔(dān)項(xiàng)目?jī)?yōu)勢(shì)
- 白酒行業(yè)生產(chǎn)數(shù)字化的方案課件
- 北京豐臺(tái)2023-2024學(xué)年四年級(jí)數(shù)學(xué)第一學(xué)期期末質(zhì)量跟蹤監(jiān)視試題含答案
- 預(yù)算與預(yù)算法課件
- 電梯使用單位電梯安全日管控、周排查、月調(diào)度制度和電梯安全總監(jiān)職責(zé)及電梯安全員守則
- 2023年藥學(xué)考試-執(zhí)業(yè)藥師(西藥)考試歷年真題集錦加答案
- 幼兒園優(yōu)質(zhì)課件-中班社會(huì)《電話禮儀》
- 2023年盛京銀行校園招聘人員筆試歷年難、易錯(cuò)考點(diǎn)試題含答案解析-1
評(píng)論
0/150
提交評(píng)論