

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> ********* 大 學(xué) ****學(xué) 院</p><p> 本 科 生 課 程 設(shè) 計</p><p> 課 程 名 稱: 單片機課程設(shè)計 </p><p> 題 目: 超聲波測距儀 </p><p> 專 業(yè) 班 級: 08 電信
2、 </p><p> 學(xué) 生 姓 名: ******* </p><p> 學(xué) 生 學(xué) 號: ******* </p><p> 日 期: 2011年6月14 </p><p> 指 導(dǎo) 教 師:
3、 ******* </p><p> 指導(dǎo)教師簽字: </p><p> 年 月 日</p><p><b> 目 錄</b></p><p><b> 目 錄I</b></p><p>&
4、lt;b> 摘 要I</b></p><p> AbstractII</p><p><b> 1 緒論1</b></p><p><b> 1.1設(shè)計背景1</b></p><p><b> 1.2設(shè)計目的1</b></p>
5、<p> 1.3 基本原理1</p><p> 2 設(shè)計方案簡述2</p><p><b> 2.1方案討論2</b></p><p><b> 2.2方案論證2</b></p><p><b> 3 詳細(xì)設(shè)計3</b></p>
6、<p><b> 3.1硬件設(shè)計3</b></p><p> 3.1.1 AT89S52外圍電路設(shè)計3</p><p> 3.1.2數(shù)碼管顯示電路設(shè)計4</p><p> 3.1.3超聲波發(fā)射電路設(shè)計5</p><p> 3.1.4超聲波接收6</p><p><
7、;b> 3.2軟件部分7</b></p><p> 3.2.1系統(tǒng)軟件設(shè)計說明7</p><p> 3.2.2編程語言的選擇7</p><p> 3.2.3超聲波測距儀的算法設(shè)計7</p><p> 3.2.4主程序流程圖8</p><p> 3.2.5超聲波發(fā)生子程序和超聲波接
8、收中斷程序9</p><p> 3.2.6系統(tǒng)的軟硬件的調(diào)試10</p><p> 4 設(shè)計結(jié)果及分析11</p><p><b> 5 總結(jié)12</b></p><p><b> 參考文獻13</b></p><p><b> 附錄114&l
9、t;/b></p><p><b> 附錄22</b></p><p><b> 摘 要</b></p><p> 由于超聲波指向性強,能量消耗緩慢,在介質(zhì)中傳播的距離較遠(yuǎn),因而超聲波經(jīng)常用于距離的測量。利用超聲波檢測距離,設(shè)計比較方便,計算處理也較簡單,并且在測量精度方面也能達(dá)到日常使用的要求。</
10、p><p> 設(shè)計的超聲波測距器利用超聲波傳輸中距離與時間的關(guān)系,采用以AT89S52單片機為核心進行控制及數(shù)據(jù)處理,最終完成低成本、高精度、微型化數(shù)字顯示超聲波測距器的硬件電路和軟件設(shè)計。該測距器主要由超聲波發(fā)射器電路、超聲波接收器電路、單片機控制電路、系統(tǒng)電源電路及顯示電路構(gòu)成。整個程序采用模塊化設(shè)計,由主程序、發(fā)射子程序、接收子程序、顯示子程序等模塊組成。各探頭的信號經(jīng)單片機綜合分析處理,實現(xiàn)超聲波測距器的各
11、種功能。在此基礎(chǔ)上設(shè)計了系統(tǒng)的總體方案,最后通過硬件和軟件實現(xiàn)了各個功能模塊。</p><p> 經(jīng)過實驗表明,這套系統(tǒng)軟硬件設(shè)計合理、抗干擾能力強、實時性良好,經(jīng)過系統(tǒng)擴展和升級,可應(yīng)用于汽車倒車、建筑施工工地以及一些工業(yè)現(xiàn)場的位置監(jiān)控,還能有效地解決汽車倒車,液位、水深、管道長度的測量問題。</p><p> 關(guān)鍵詞:超聲波;AT89S52;數(shù)碼管;測距</p>&l
12、t;p><b> Abstract</b></p><p> The strong point of ultrasonic energy consumption is slow, the spread in the medium distance, and therefore frequently used ultrasonic distance measurement. Dist
13、ance using ultrasonic testing, the design is more convenient, computing is also relatively simple, and precision in the measurement can achieve the requirements of daily use.</p><p> Design of ultrasonic di
14、stance measurement device using ultrasonic transmission distance of time, with the AT89S52 microcontroller as the core for control and data processing, the final completion of low-cost, high precision, miniature digital
15、display ultrasonic ranging device hardware and software design . The probe by the single chip integrated analysis of signal processing, and ultrasonic ranging device features. On this basis, the overall design of the sys
16、tem program, and finally achieved thr</p><p> Experimental results show that the system software and hardware designed, anti-interference ability, good real-time, after the system expansion and upgrades, ca
17、n be applied to car parking, construction sites and the location of some industrial-site monitoring, but also effectively solve the vehicle Reverse, liquid level, water depth, pipeline length measurements.</p><
18、;p> Key words: ultrasonic; AT89S52; digital; location</p><p><b> 1 緒論</b></p><p><b> 1.1設(shè)計背景</b></p><p> 隨著科學(xué)技術(shù)的快速發(fā)展,超聲波將在測距儀中的應(yīng)用越來越廣。但就目前技術(shù)水平來說,人們可以具
19、體利用的測距技術(shù)還十分有限,因此,這是一個正在蓬勃發(fā)展而又有無限前景的技術(shù)及產(chǎn)業(yè)領(lǐng)域。展望未來,超聲波測距儀作為一種新型的非常重要有用的工具在各方面都將有很大的發(fā)展空間,它將朝著更加高定位高精度的方向發(fā)展,以滿足日益發(fā)展的社會需求,如聲納的發(fā)展趨勢基本為:研制具有更高定位精度的被動測距聲納,以滿足水中武器實施全隱蔽攻擊的需要;繼續(xù)發(fā)展采用低頻線譜檢測的潛艇拖曳線列陣聲納,實現(xiàn)超遠(yuǎn)程的被動探測和識別;研制更適合于淺海工作的潛艇聲納,特別是
20、解決淺海水中目標(biāo)識別問題;大力降低潛艇自噪聲,改善潛艇聲納的工作環(huán)境。無庸置疑,未來的超聲波測距儀將與自動化智能化接軌,與其他的測距儀集成和融合,形成多測距儀。隨著測距儀的技術(shù)進步,測距儀將從具有單純判斷功能發(fā)展到具有學(xué)習(xí)功能,最終發(fā)展到具有創(chuàng)造力。在新的世紀(jì)里,面貌一新的測距儀將發(fā)揮更大的作用。</p><p><b> 1.2設(shè)計目的</b></p><p>
21、 通過該課程設(shè)計使學(xué)生進一步了解和加深智能化儀器設(shè)計的一般原則;熟練掌握智能化儀器與裝置的軟、硬件設(shè)計方法;掌握儀器的軟件調(diào)試及軟硬件聯(lián)合統(tǒng)調(diào)方法與技能。掌握儀器的接口技術(shù)和程控方法;熟練掌握儀表總線的工作原理、設(shè)計步驟、編程及調(diào)試;掌握C語言設(shè)計軟件的編程與調(diào)試方法;掌握網(wǎng)絡(luò)化儀器設(shè)計編程與調(diào)試方法。</p><p><b> 1.3 基本原理</b></p><p&
22、gt; 超聲波傳感器的工作原理是陶瓷的壓電效應(yīng)。超聲波傳感器在測量過程中,超聲測距器是根據(jù)超聲波遇到障礙物反射回來的特性進行測量的。超聲波發(fā)射器向某一方向發(fā)射超聲波,在發(fā)射同時開始計時,超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波就立即中斷停止計時。 通過不斷檢測產(chǎn)生波發(fā)射后遇到障礙物所反射的回波,從而測出發(fā)射超聲波和接收到回波的時間差△T,然后求出距離L。</p><p> 基本的
23、測距公式為:L=(△T/2)*V 式中 L——被測距離;△T——發(fā)射波和反射波之間的時間間隔;V——超聲波在空氣中的聲速,常溫下取為340m/s 。聲速確定后,只要測出超聲波往返的時間,即可求得L。 為測試更精確,鑒于聲波受溫度影響最大,測距數(shù)據(jù)處理過程可以采用了溫度補償,以提高測量精度。</p><p><b> 2 設(shè)計方案簡述</b></p><p><
24、b> 2.1方案討論</b></p><p> 超聲波測距的原理是利用超聲波的發(fā)射和接受,根據(jù)超聲波傳播的時間來計算出傳播距離。實用的測距方法有兩種,一種是在被測距離的兩端,一端發(fā)射,另一端接收的直接波方式,適用于身高計;一種是發(fā)射波被物體反射回來后接收的反射波方式,適用于測距儀。此次設(shè)計采用反射波方式。</p><p> 超聲波發(fā)生器可以分為兩大類:一類是用電氣方
25、式產(chǎn)生超聲波,一類是用機械方式產(chǎn)生超聲波。電氣方式包括壓電型、電動型等;機械方式有加爾統(tǒng)笛、液哨和氣流旋笛等。它們所產(chǎn)生的超聲波的頻率、功率和聲波特性各不相同,因而用途也各不相同。目前在近距離測量方面常用的是壓電式超聲波換能器。根據(jù)設(shè)計要求并綜合各方面因素,本文采用AT89S52單片機作為控制器,用動態(tài)掃描法實現(xiàn)LED數(shù)字顯示,超聲波驅(qū)動信號用單片機的定時器。</p><p> 圖2.1 超聲波測距器系統(tǒng)設(shè)計框
26、圖</p><p><b> 2.2方案論證</b></p><p> 測距儀的分辨率取決于對超聲波傳感器的選擇。超聲波傳感器是一種采用壓電效應(yīng)的傳感器,常用的材料是壓電陶瓷。由于超聲波在空氣中傳播時會有相當(dāng)?shù)乃p,衰減的程度與頻率的高低成正比;而頻率高分辨率也高,故短距離測量時應(yīng)選擇頻率高的傳感器,而長距離的測量時應(yīng)用低頻率的傳感器。</p>&l
27、t;p><b> 3 詳細(xì)設(shè)計</b></p><p><b> 3.1硬件設(shè)計</b></p><p> 硬件電路的設(shè)計主要包括單片機系統(tǒng)及顯示電路、超聲波發(fā)射電路和超聲波檢測接收電路四部分。單片機采用AT89S52,采用12MHz高精度的晶振,以獲得穩(wěn)定時鐘頻率,減小測量誤差。單片機用P1.0端口輸出超聲波換能器所需的40kHz的
28、方波信號,利用外中斷0口監(jiān)測超聲波接收電路輸出的返回信號。顯示電路采用簡單實用的4位共陽LED數(shù)碼管,位碼用PNP三極管9013驅(qū)動。</p><p> 3.1.1 AT89S52外圍電路設(shè)計</p><p> 單片機AT89S52作為主控芯片,控制整個電路的運行。單片機外圍需要一個復(fù)位電路,復(fù)位電路的功能是:系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤消復(fù)位信號。為可靠起見,電源穩(wěn)
29、定后還要經(jīng)一定的延時才撤銷復(fù)位信號,以防電源開關(guān)或電源插頭分-合過程中引起的抖動而影響復(fù)位。該設(shè)計在電源電壓瞬間下降時可以使電容迅速放電,可令系統(tǒng)可靠復(fù)位。</p><p> 圖3.1.1 復(fù)位電路圖 圖3.1.2 時鐘電路</p><p> AT89S52中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別為該反向放大器的輸入
30、端和輸出端。這個反向放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器。</p><p> 外接石英晶體(或陶瓷諧振器)及電容C1、C2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對外接電容C1、C2雖然沒有十分嚴(yán)格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性。如果使用石英晶體,電容應(yīng)該使用30pF。</p><p> 還可
31、以使用外部時鐘。這種情況下,外部時鐘脈沖接XTAL1端,即內(nèi)部時鐘發(fā)生器的輸入端, XTAL2應(yīng)懸空。</p><p> 由于外部時鐘信號是通過一個2分頻觸發(fā)器后作為內(nèi)部時鐘信號的,所以外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)條件的要求。</p><p> 3.1.2數(shù)碼管顯示電路設(shè)計</p><p> 該設(shè)計中
32、有4個八段數(shù)碼顯示管,由于單片機本身端口驅(qū)動能力有限,所以,在單片機AT89S52外圍需要接入4個三極管來驅(qū)動數(shù)碼顯示管。八段數(shù)碼顯示管有兩種,一種是共陽數(shù)碼管,其內(nèi)部是由八個陽極相連接的發(fā)光二極管組成;另一種是共陰數(shù)碼管,其內(nèi)部是由八個陰極相連接的發(fā)光二極管組成。二者原理不同但功能相同,本設(shè)計選用四位共陽極數(shù)碼管。</p><p> 圖3.1.3 數(shù)碼管顯示及其驅(qū)動電路</p><p>
33、; 3.1.3超聲波發(fā)射電路設(shè)計</p><p> 單片機發(fā)出超聲波測距是通過不斷檢測超聲波發(fā)射后遇到障礙物所反射的回波,從而測出發(fā)射和接收回波的時間差△T,然后求出距離S=V△T/2,式中的V為超聲波波速。限制該系統(tǒng)的最大可測距離存在4個因素:超聲波的幅度、反射的質(zhì)地、反射和入射聲波之間的夾角以及接收換能器的靈敏度。接收換能器對聲波脈沖的直接接收能力將決定最小的可測距離。為了增加所測量的覆蓋范圍、減小測量誤
34、差,可采用多個超聲波換能器分別作為多路超聲波發(fā)射/接收的設(shè)計方法。由于超聲波屬于聲波范圍,其波速V與溫度有關(guān)。</p><p> 測距系統(tǒng)中的超聲波傳感器采用壓電陶瓷傳感器,因為超聲波在空氣中傳播時衰減很大,衰減的程度與頻率成正比,但是頻率越高則分辨力也會越高,頻率為40kHz左右的超聲波在空氣中傳播的效率最佳,工作所需40kHz的脈沖信號,由單片機執(zhí)行相應(yīng)程序來產(chǎn)生。關(guān)于40KHz信號的產(chǎn)生,利用單片機定時器
35、中斷產(chǎn)生,要特別注意中斷服務(wù)程序的編寫。中斷服務(wù)不能過長,如果過長單片機在前一個中斷服務(wù)程序還沒執(zhí)行完之前又會有下一個中斷產(chǎn)生。所以單片機將會產(chǎn)生一個錯誤頻率的信號,往往這個錯誤的頻率會比預(yù)期的值偏低。測距系統(tǒng)由單片機系統(tǒng)、超聲波發(fā)射電路和超聲波檢測接收電路三部分組成。AT89S52輸出超聲波換能器所需的40K方波信號,利用外中斷0口監(jiān)測超聲波接收電路輸出的返回信號, 并實現(xiàn)對CX20106接收芯片和TCT40-10系列超聲波轉(zhuǎn)換模塊的
36、控制。</p><p> 超聲波發(fā)射電路原理圖如圖3.6所示。發(fā)射電路主要由反相器4069和超聲波發(fā)射換能器T構(gòu)成,單片機P1.0端口輸出的40kHz的方波信號一路經(jīng)一級反向器后送到超聲波換能器的一個電極,另一路經(jīng)兩級反向器后送到超聲波換能器的另一個電極,用這種推換形式將方波信號加到超聲波換能器的兩端,可以提高超聲波的發(fā)射強度。輸出端采兩個反向器并聯(lián),用以提高驅(qū)動能力。上位電阻R6、R8一方面可以提高反向器40
37、69輸出高電平的驅(qū)動能力,另一方面可以增加超聲波換能器的阻尼效果,縮短其自由振蕩時間。</p><p> 圖3.1.4 超聲波發(fā)射電路</p><p> 壓電式超聲波換能器是利用壓電晶體的諧振來工作的。超聲波換能器內(nèi)部有兩個壓電晶片和一個換能板。當(dāng)它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片會發(fā)生共振,并帶動共振板振動產(chǎn)生超聲波,這時它就是一個超聲波發(fā)生器;反之,
38、如果兩電極問未外加電壓,當(dāng)共振板接收到壓電式超聲波換能器是利用壓電晶體的諧振來工作的。超聲波換能器內(nèi)部有兩個壓電晶片和一個換能板。當(dāng)它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片會發(fā)生共振,并帶動共振板振動產(chǎn)生超聲波,這時它就是一個超聲波發(fā)生器;反之,如果兩電極問未外加電壓,當(dāng)共振板接收到超聲波時,將壓迫壓電晶片作振動,將機械能轉(zhuǎn)換為電信號,這時它就成為超聲波接收換能器。超聲波發(fā)射換能器與接收換能器在結(jié)構(gòu)上稍有不同,
39、使用時應(yīng)分清器件上的標(biāo)志。</p><p> 3.1.4超聲波接收</p><p> 集成電路CX20106A是一款紅外線檢波接收的專用芯片,常用于電視機紅外遙控接收器??紤]到紅外遙控常用的載波頻率38 kHz與測距的超聲波頻率40 kHz較為接近,可以利用它制作超聲波檢測接收電路。實驗證明用CX20106A接收超聲波(無信號時輸出高電平),具有很好的靈敏度和較強的抗干擾能力。適當(dāng)更改
40、電容C8的大小,可以改變接收電路的靈敏度和抗干擾能力。</p><p> 使用CX20106A作為超聲波檢測接收電路,原理圖如圖3.7所示。CX20106A的第5腳的電阻決定接收的中心頻率,220k的電阻決定了接收的中心頻率為40KHz。CX20106A接收到40KHz的信號時,會在第7腳產(chǎn)生一個低電平下降脈沖,這個信號可以接到單片機的外部中斷引腳作為中斷信號輸入。R3和C13 是控制CX20106A內(nèi)部放大增
41、益,R5控制帶通濾波器的中心頻率。一般取R3=4.7歐,C13=1Uf.。其余元件按圖3.7取值。OUT_INT當(dāng)收到超聲波是產(chǎn)生一個下降沿,接到單片機的外部中斷上。只要通過單片機來來計算發(fā)射信號時到收到信號是產(chǎn)生下降沿這段時間的長度,再通過數(shù)學(xué)計算得出當(dāng)前距離,程序?qū)⒋藬?shù)值與設(shè)定的閾值相比較并作出相應(yīng)動作。</p><p> 圖3.1.7 超聲波接收電路</p><p><b&g
42、t; 3.2軟件部分</b></p><p> 3.2.1系統(tǒng)軟件設(shè)計說明</p><p> 進行測量控制系統(tǒng)設(shè)計時,除了系統(tǒng)硬件設(shè)計外,大量的工作就是如何根據(jù)每個測量對象的實際需要設(shè)計應(yīng)用程序。因此,軟件設(shè)計在微機測量控制系統(tǒng)設(shè)計中占重要地位。對于本系統(tǒng),軟件設(shè)計更為重要。</p><p> 在單片機測量控制系統(tǒng)中,大體上可分為數(shù)據(jù)處理、過程控
43、制兩個基本類型。數(shù)據(jù)處理包括:數(shù)據(jù)的采集、數(shù)字濾波、標(biāo)度變換等。過程控制程序主要是使單片機按一定的方法進行計算,然后再輸出,以便達(dá)到測量控制目的。</p><p> 本軟件設(shè)計主要是對距離進行測量、顯示。因此,整個軟件可分為按照硬件電路對單片機位定義;發(fā)射子程序;接收子程序;顯示子程序;延時子程序等。</p><p> 3.2.2編程語言的選擇</p><p>
44、 本設(shè)計是硬件電路和軟件編程相結(jié)合的設(shè)計方案,選擇合適的編程語言是一個重要的環(huán)節(jié)。在單片機的應(yīng)用系統(tǒng)程序設(shè)計時,常用的是匯編語言和C語言。匯編語言是一種用文字助記符來表示機器指令的符號語言,是最接近機器碼的一種語言。其主要優(yōu)點是占用資源少、程序執(zhí)行效率高,而且執(zhí)行速度快。但是不同的CPU,其匯編語言可能有所差異,即依賴于計算機硬件,程序可讀性和可移植性比較差。</p><p> C語言是編譯型程序設(shè)計語言,兼
45、顧高級語言的特點,并具備匯編語言的功能。C語言是一種結(jié)構(gòu)化程序設(shè)計語言,它支持當(dāng)前程序設(shè)計中廣泛采用的由頂向下結(jié)構(gòu)化程序設(shè)計技術(shù)。此外,C語言程序具有完善的模塊程序結(jié)構(gòu)。C語言執(zhí)行效率沒有匯編語言高,但語言簡潔,使用方便,靈活,運算豐富,表達(dá)化類型多樣化,數(shù)據(jù)結(jié)構(gòu)類型豐富,具有結(jié)構(gòu)化的控制語句,程序設(shè)計自由度大,有很好的可重用性,可移植性等特點?;贑語言的眾多優(yōu)點本設(shè)計選擇此語言來編程。</p><p> 3
46、.2.3超聲波測距儀的算法設(shè)計</p><p> 圖3.2.1示意了超聲波測距的原理,即超聲波發(fā)生器T在某一時刻發(fā)出一個超聲渡信號,當(dāng)這個超聲波遇到被測物體后反射回來,就被超聲波接收器R所接收到。這樣只要計算出從發(fā)出超聲波信號到接收到返回信號所用的時間,就可算出超聲波發(fā)生器與反射物體的距離。</p><p> 距離的計算公式為:L=S/2=(V×△T)/2
47、 (1)</p><p> 其中,L為被測物與測距儀的距離,s為聲波的來回的路程,V為聲速,△T為聲波來回所用的時間。</p><p> 圖3.2.1 超聲波測距原理圖</p><p> 由于超聲波也是一種聲波,其聲速V與溫度有關(guān),表3.1列出了幾種不同溫度下的超聲波聲速。在使用時,如果溫度變化不大,則可認(rèn)為聲速是基本不變的
48、。如果測距精度要求很高,則應(yīng)通過溫度補償?shù)姆椒右孕U?。聲速確定后,只要測得超聲波往返的時間,即可求得距離。</p><p> 表3.1 不同溫度下超聲波聲速表</p><p> 在啟動發(fā)射電路的同時啟動單片機內(nèi)部的定時器T0,利用定時器的計數(shù)功能記錄超聲波發(fā)射的時間和收到反射波的時間。當(dāng)收到超聲波反射波時,接收電路輸出端產(chǎn)生一個負(fù)跳變,在INT0或INT1端產(chǎn)生一個中斷請求信號,單
49、片機響應(yīng)外部中斷請求,執(zhí)行外部中斷服務(wù)子程序,讀取時間差,計算距離。</p><p> 3.2.4主程序流程圖</p><p> 軟件分為兩部分,主程序和中斷服務(wù)程序。主程序完成初始化工作、各路超聲波發(fā)射和接收順序的控制。外部中斷服務(wù)子程序主要完成時間值的讀取、距離計算、結(jié)果的輸出等工作。</p><p> 圖3.2.2 主程序 圖3.2
50、.3定時中斷服務(wù)子程序 圖3.2.4 外部中斷服務(wù)子程序</p><p> 主程序首先是對系統(tǒng)環(huán)境初始化,設(shè)置定時器T0工作模式為16位定時計數(shù)器模式。置位總中斷允許位EA并給顯示端口P1和P3清0。然后調(diào)用超聲波發(fā)生子程序送出一個超聲波脈沖,為了避免超聲波從發(fā)射器直接傳送到接收器引起的直射波觸發(fā),需要延時約0.1 ms(這也就是超聲波測距儀會有一個最小可測距離的原因)后,才打開外中斷0接收返回的超聲波信
51、號。由于采用的是12 MHz的晶振,計數(shù)器每計 一個數(shù)就是1μs,當(dāng)主程序檢測到接收成功的標(biāo)志位后,將計數(shù)器T0中的數(shù)(即超聲波來回所用的時間)按式(2)計算,即可得被測物體與測距儀之間的距離,設(shè)計時取20℃時的聲速為344 m/s則有:L=(V×△T)/2=172T0/10000cm (2)</p><p> 測出距離后結(jié)果將以十進制BCD碼方式送往LED
52、顯示約0.5s,然后再發(fā)超聲波脈沖重復(fù)測量過程。</p><p> 3.2.5超聲波發(fā)生子程序和超聲波接收中斷程序</p><p> 超聲波發(fā)生子程序的作用是通過P1.0端口發(fā)送2個左右超聲波脈沖信號(頻率約40kHz的方波),脈沖寬度為12μs左右,同時把計數(shù)器T0打開進行計時。超聲波發(fā)生子程序較簡單,但要求程序運行準(zhǔn)確,所以采用C語言編程。</p><p>
53、 超聲波測距儀主程序利用外中斷0檢測返回超聲波信號,一旦接收到返回超聲波信號(即INT0引腳出現(xiàn)低電平),立即進入中斷程序。進入中斷后就立即關(guān)閉計時器T0停止計時,并將測距成功標(biāo)志字賦值1。如果當(dāng)計時器溢出時還未檢測到超聲波返回信號,則定時器T0溢出中斷將外中斷0關(guān)閉,并將測距成功標(biāo)志字賦值2以表示此次測距不成功。</p><p> 3.2.6系統(tǒng)的軟硬件的調(diào)試</p><p> 超
54、聲波發(fā)射和接收采用Φ15的超聲波換能器TCT40-10F1(T發(fā)射)和TCT40-10S1(R接收),中心頻率為40kHz,安裝時應(yīng)保持兩換能器中心軸線平行并相距4~8cm,其余元件無特殊要求。若能將超聲波接收電路用金屬殼屏蔽起來,則可提高抗干擾能力。根據(jù)測量范圍要求不同,可適當(dāng)調(diào)整與接收換能器并接的濾波電容C4的大小,以獲得合適的接收靈敏度和抗干擾能力。</p><p> 硬件電路制作完成并調(diào)試好后,便可將程
55、序編譯好下載到單片機試運行。根據(jù)實際情況可以修改超聲波發(fā)生子程序每次發(fā)送的脈沖寬度和兩次測量的間隔時間,以適應(yīng)不同距離的測量需要。根據(jù)所設(shè)計的電路參數(shù)和程序,測距儀能測的范圍為0.10~5.00m,測距儀最大誤差不超過1cm。系統(tǒng)調(diào)試完后應(yīng)對測量誤差和重復(fù)一致性進行多次實驗分析,不斷優(yōu)化系統(tǒng)使其達(dá)到實際使用的測量要求。</p><p><b> 4 設(shè)計結(jié)果及分析</b></p>
56、;<p> 設(shè)計的最終結(jié)果是使超聲波測距儀能夠產(chǎn)生超聲波,實現(xiàn)超聲波的發(fā)送與接收,從而實現(xiàn)利用超聲波方法測量物體間的距離,以數(shù)字的形式顯示測量距離。</p><p> 它的硬件電路的設(shè)計主要包括單片機系統(tǒng)及顯示電路、系統(tǒng)電源、超聲波發(fā)射電路和超聲波檢測接收電路四部分。單片機采用AT89S52,采用12MHz高精度的晶振,以獲得較穩(wěn)定時鐘頻率,減小測量誤差。單片機用P1.0端口輸出超聲波換能器所需
57、的40kHz的方波信號,利用外中斷0口監(jiān)測超聲波接收電路輸出的返回信號。顯示電路采用簡單實用的4位共陽LED數(shù)碼管,段碼用單片機直接驅(qū)動,位碼用NPN三極管9013驅(qū)動。實現(xiàn)測距,并且在數(shù)碼管上顯示距離。。</p><p> 超聲波測距器的軟件設(shè)計主要由主程序、超聲波發(fā)生子程序、超聲波接收中斷程序及顯示子程序組成。 超聲波測距的算法設(shè)計原理為超聲波發(fā)生器T在某一時刻發(fā)出一個超聲波信號,當(dāng)這個超聲波遇到被測物體后
58、反射回來,就被超聲波接收器R所接收到。這樣只要計算出從發(fā)出超聲波信號到接收到返回信號所用的時間,就可算出超聲波發(fā)生器與反射物體的距離。</p><p> 經(jīng)過實驗表明,這套系統(tǒng)軟硬件設(shè)計合理、抗干擾能力強、實時性良好,實驗結(jié)果完全符合預(yù)期要求。</p><p><b> 5 總結(jié)</b></p><p> 這幾周的方向課程設(shè)計分為兩個部分
59、:硬件制作和軟件設(shè)計。學(xué)院出于這樣安排也是基于一些現(xiàn)實的原因:隨著科學(xué)技術(shù)發(fā)展的日新日異,單片機已經(jīng)成為當(dāng)今計算機應(yīng)用中空前活躍的領(lǐng)域,。課本上的理論知識無法滿足實際生活中工程項目的開發(fā)需要,而我們平時又缺乏工程實踐。課程設(shè)計過程是培養(yǎng)我們綜合運用所學(xué)知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對實際工作能力的具體訓(xùn)練和考察過程。所以安排了我們進行了這一次硬件制作和軟件設(shè)計的課程設(shè)計。</p><
60、p> 前期我們主要是進行硬件的設(shè)計制作與焊接,由于我們以前做過很多硬件焊接與制作相關(guān)的練習(xí),所以焊接這一塊兒我們并沒有遇到太多問題。這一塊兒主要是得耐心細(xì)致。需要注意各個輸入、輸出引腳,因為每個引腳都是不一樣的,只有讓各個引腳互相對應(yīng),才能得出準(zhǔn)確的結(jié)果,任何一點小的誤差都不可能得出正確的運行結(jié)果。</p><p> 回顧起此次單片機課程設(shè)計,我仍感慨頗多,的確,在這幾個星期中,可以說得是苦多于甜,但是
61、可以學(xué)到很多很多的的東西,不僅鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次的課程設(shè)計作品的制作讓我對單片機的理論有了更加深入的了解,同時在具體的制作過程中我們發(fā)現(xiàn)現(xiàn)在書本上的知識與實際的應(yīng)用存在著不小的差距,書本上的知識很多都是理想化后的結(jié)論,忽略了很多實際的因素,或者涉及的不全面,可在實際的應(yīng)用時這些是不能被忽略的,我們不得不考慮這方面的問題,這讓我們無法根據(jù)書上的理論就輕易得到預(yù)想中的結(jié)果,有時結(jié)果甚至
62、很差別很大。在設(shè)計的過程中也遇到過很多問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說不懂一些元器件的使用方法,對C語言掌握得不全面等等。這次的課程設(shè)計讓我受益匪淺,無論從知識上還是其他的各個方面。上課時候的學(xué)習(xí)只是從理論的角度去理解枯燥乏味。但在課程設(shè)計中使用了單片機及其系統(tǒng)進行實際項目的開發(fā)。能夠理論聯(lián)系實際的學(xué)習(xí)
63、,開闊了眼界,提高了單片機知識的理</p><p><b> 參考文獻</b></p><p> 1.謝自美. 電子線路設(shè)計-實驗-測試[M] .武漢:華中科技大學(xué)出版社, 2000</p><p> 2.樓然苗,李光飛.單片機課程設(shè)計指導(dǎo)[M].北京航天航空大學(xué)出版社,2007</p><p> 3.張齊,朱寧
64、西.單片機應(yīng)用系統(tǒng)設(shè)計技術(shù)[M].電子工業(yè)出版社,2010</p><p> 4.周新華.手把手叫你學(xué)單片機C程序設(shè)計[M].北京航天航空大學(xué)出版社,2009</p><p><b> 附錄1</b></p><p> 超聲測距器單片機程序(部分)</p><p> #include <reg51.h>
65、;</p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> #define ulong unsigned long</p><p> extern void cs_t(void);</p><p> ex
66、tern void delay(uint);</p><p> extern void display(uchar*);</p><p> data uchar testok;</p><p><b> /*主程序*/</b></p><p> void main(void)</p><p&g
67、t;<b> {</b></p><p> data uchar dispram[5];</p><p> data uint i;</p><p> data ulong time;</p><p> P0 = 0xff;</p><p> P2 = 0xff;</p>
68、<p> TMOD = 0x11;</p><p> IE = 0x80;</p><p><b> while (1)</b></p><p><b> {</b></p><p><b> cs_t();</b></p><p>
69、;<b> delay(1);</b></p><p> testok = 0;</p><p><b> EX0 = 1;</b></p><p><b> ET0 = 1;</b></p><p> while (!testok) display(dispram)
70、;</p><p> if (1 == testok)</p><p><b> {</b></p><p> time = TH0;</p><p> time = (time<<8) | TL0;</p><p> time *=172;</p><p
71、> time /= 10000;</p><p> dispram[0] = (uchar) (time % 10);</p><p> time /= 10;</p><p> dispram[1] = (uchar) (time % 10);</p><p> time /= 10;</p><p>
72、; dispram[2] = (uchar) (time % 10);</p><p> dispram[3] = (uchar) (time / 10);</p><p> if (0 == dispram[3]) dispram[3] = 17;</p><p><b> } else</b></p><p>
73、;<b> {</b></p><p> dispram[0] = 16;</p><p> dispram[1] = 16;</p><p> dispram[2] = 16;</p><p> dispram[3] = 16;</p><p><b> }</b&g
74、t;</p><p> for (i=0; i<300; i++) display(dispram);</p><p><b> }</b></p><p><b> }</b></p><p><b> //</b></p><p>
75、/*超聲接收程序(外中斷0)*/</p><p> void cs_r(void) interrupt 0</p><p><b> {</b></p><p><b> TR0 = 0;</b></p><p><b> ET0 = 0;</b></p>
76、<p><b> EX0 = 0;</b></p><p> testok = 1;</p><p><b> }</b></p><p> /*超時清除程序(內(nèi)中斷T0)*/</p><p> void overtime(void) interrupt 1</p>
77、<p><b> {</b></p><p><b> EX0 = 0;</b></p><p><b> TR0 = 0;</b></p><p><b> ET0 = 0;</b></p><p> testok = 2;<
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機超聲波測距儀設(shè)計課程設(shè)計
- 單片機課程設(shè)計--超聲波測距儀的設(shè)計
- 單片機課程設(shè)計超聲波測距儀的設(shè)計
- 單片機課程設(shè)計---基于單片機的超聲波測距儀
- 基于單片機的超聲波測距儀課程設(shè)計
- 課程設(shè)計--- 基于51單片機的超聲波測距儀設(shè)計
- 基于單片機的超聲波測距儀設(shè)計
- 基于51單片機超聲波測距儀設(shè)計
- 超聲波測距儀課程設(shè)計
- 超聲波測距儀課程設(shè)計
- 基于單片機的超聲波測距儀
- 基于51單片機的超聲波測距儀設(shè)計
- 單片機課程設(shè)計-超聲波測距
- 單片機課程設(shè)計--超聲波測距
- 單片機課程設(shè)計-超聲波測距
- 基于51單片機超聲波測距儀
- 超聲波測距儀課程設(shè)計 (2)
- 基于單片機的超聲波測距儀畢業(yè)設(shè)計
- 基于單片機的超聲波測距儀設(shè)計畢業(yè)設(shè)計
- 基于單片機控制超聲波測距儀畢業(yè)設(shè)計
評論
0/150
提交評論