基于單片機超聲波測距器設計(參考論文_第1頁
基于單片機超聲波測距器設計(參考論文_第2頁
基于單片機超聲波測距器設計(參考論文_第3頁
基于單片機超聲波測距器設計(參考論文_第4頁
基于單片機超聲波測距器設計(參考論文_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、論文題目 基于單片機超聲波測距器設計 學生姓名 學 號 專 業(yè) 班 級 指導教師 2011年5月摘 要本文介紹了一種基于STC89C52單片機的超聲波液位測量系統(tǒng),闡述了超聲波液位測量系統(tǒng)的硬件電路構成、工作原理及軟件設計方法。超聲波發(fā)生器在某一時刻發(fā)出一個超聲波信號,當超聲波遇到被測液體后反射回來,就被超聲波接收器所接收。這樣只要計算出從發(fā)射信號到接收返回信號所用的時間,就可算出超聲波發(fā)生器與反射物體之間的距離。硬件部分采用STC89C52 單片機作為主控單片機 ,電路部分主要有發(fā)射電路、接收電路、顯示電路幾部分組成。超聲波發(fā)射電路和接收電路主要超聲波模塊HC-SR04組成,顯示電路用動態(tài)掃

2、描法實現LED數字顯示。設計出的超聲波測量系統(tǒng)精度可達厘米數量級,電路具有結構簡單、操作方便、精度高、應用廣泛的特點。關 鍵 詞:超聲波測距;STC89C52單片機;數字顯示ABSTRACTThe paper describes an ultrasonic measuring system based on the STC89C52 , it described an ultrasonic measuring liquid-level system hardware circuit structure, working principle and software design methods

3、. Ultrasonic generator at a time sent an ultrasonic signal, when the ultrasonic wave reflected back upon the detected objects encountered, they were received ultrasonic receiver. So as long as calculated from the emission signal to the receiver to return the signal used in the time, you can calculat

4、e the ultrasonic generator and the distance between the reflective object. Hardware using STC89C52 microcontroller as a master MCU, the circuit part of the main transmitter, receiver circuit, display circuit of several parts. Ultrasonic transmitter device mainly integrated circuits, display circuits

5、 using the LED digital display at the real time. The system hardware structure is simple, reliable, good accuracy and sensitivity.The systems accuracy could reach centimeter orders of magnitude.Circuits were simply structure,easy to use,high accuracy and wide application.KEY WORDS: Ultrasonic; measu

6、ring;STC89C52 MCU;Digital display目 錄1 緒論11.1 課題設計的目的和意義11.2 課題設計的研究范圍和成果11.3 課題設計的任務和要求22 總體設計方案33 硬件電路各部分設計53.1 單片機系統(tǒng)及顯示電路53.1.1 主控芯片STC89C5253.1.2 數碼管顯示原理83.2 超聲波發(fā)射電路93.3 超聲波檢測接收電路103.4 超聲波的硬件電路設計124 系統(tǒng)軟件設計134.1 超聲波測距器的算法設計134.2 主程序設計134.3 超聲波發(fā)生子程序和接收中斷程序145 調試及性能分析175.1 調試175.2 性能分析176 結論與展望197 致

7、謝218 參考文獻23附錄25附錄1超聲測距器單片機程序25附錄2超聲波硬件原理圖31附錄3硬件實物圖331 緒論隨著科技的迅猛發(fā)展,越來越多科技成果被廣泛的運用到人們的日常生活當中,給我們的生活帶來了諸多便利。目前測量距離一般都采用波在介質中的傳播速度和時間關系進行測量。主要有激光測距、微波雷達測距和超聲波測距三種常用的技術。由于超聲波具有指向性強、能量消耗緩慢、在介質中傳播的距離較遠等優(yōu)點,因而經常用于距離的測量,如測距儀和物位測量儀等都可以通過超聲波來實現。本文設計的這種測距裝置,利用了超聲波傳感器和單片機。采用超聲波傳感器用于發(fā)射和接收電路,利用聲波在空氣中的傳播速度和發(fā)射脈沖到接收反

8、射脈沖的時間間隔計算出障礙物到超聲波測距器之間的距離。超聲波測距技術,是一種有源非接觸性測距技術,利用超聲波在空氣中的定向傳播特性和固體反射特性,通過接收自身反射的超聲波反射信號。根據超聲波發(fā)出及回波接收時間差及傳播速度,計算出傳播距離。由于超聲波傳感器具有成本低廉、采集速度快、距離分辨率高、質量輕、體積小和易于裝卸的優(yōu)點,并且超聲波傳感器在采集環(huán)境信息時不存在復雜的圖象匹配技術,不需要通過大量的計算就可獲得數據,因而其測距速度快,實用性好。同時超聲波傳感器不易受到天氣條件、環(huán)境光照及障礙物陰影、表面粗糙等因素影響。因此超聲波測距技術不僅可應用于汽車倒車、建筑施工工地以及一些工業(yè)現場的位置監(jiān)控

9、,也可用于如液位、井深、管道長度的測量等場合,在移動機器人的應用中具有很大的優(yōu)勢。國內的超聲波測量主要集中在對0l0m固體和液體的測量,一般測量精度高,回波穩(wěn)定由于高精度的超聲波測距儀所采用的專用集成電路成本較高,本設計嘗試用價格更低廉的STC89S52為核心設計一款低成本、高精度、具有動態(tài)顯示的超聲波測距系統(tǒng),同時給出了硬件電路和軟件設計方法。實際使用表明該儀器工作穩(wěn)定,性能良好。1.1 課題設計的目的和意義學習使用單片機的控制功能和用超聲波傳感器實現測量距離,理解超聲波傳感器的超聲波發(fā)生機制及發(fā)射、接收和以單片機STC89C52為中心控制單元,實現超聲波發(fā)射及其遇到障礙物發(fā)生反射形成回波信

10、號,并根據超聲波在介質中的傳播速度及超聲波從發(fā)射到接收到回波的時間,計算出發(fā)射點距障礙物的距離,以完成設計目標,熟悉51單片機軟件編程及調試環(huán)境KeilC51軟件。1.2 課題設計的研究范圍和成果本課題研究的超聲波傳感器測距技術是一種非接觸式的測量物體間距離的方法, 利用超聲波在空氣等媒質中傳播, 通過遇到障礙物反射回來的時間間隔長短及被反射超聲波的強弱判斷障礙物性質和位置的方法。本課題設計的一種基于STC89C52 單片機的低成本、高精度、小型化數字顯示超聲波傳感器測距模塊,其硬件電路和軟件程序設計思路清晰,方案簡單可行。1.3 課題設計的任務和要求(1)了解超聲波測距原理;根據其測距原理,

11、設計出硬件結構電路。(2)對設計的電路進行分析。(3)要求測量范圍在0.07-5.50m,測量精度1cm;并以數字的形式顯示測量距離。2 總體設計方案超聲波是指頻率高于20KHz 的機械波,一般由壓電效應或磁致伸縮效應產生,它沿直線傳播、強度大、方向性好,所以超聲波常用于距離的測量。利用超聲波檢測距離設計比較方便,計算處理也較簡單。超聲波發(fā)生器可以分為兩類:一類是用電氣方式產生超聲波,一類是用機械方式產生超聲波。電氣方式包括壓電型、電動型等;機械方式有加爾統(tǒng)笛、液哨和氣流旋笛等。它們產生的超聲波的頻率、功率和聲波特性各不相同,因而用途也各不相同。目前在近距離測量方面較為常用的是壓電式超聲波傳感

12、器。本課題屬于近距離測量,所以采用常用的壓電式超聲波傳感器來實現。本課題采用的超聲波傳感器是利用壓電效應的原理將電能和超聲波相互轉化,即在發(fā)射超聲波的時候,將電能轉換成超聲波發(fā)射出去;而在收到回波的時候,則將超聲波振動轉換成電信號。超聲波測距的原理一般采用渡越時間檢測法。渡越時間與空氣中的聲速相乘就是聲波傳輸的距離,根據設計要求和綜合各方面的因素,本設計采用SC89C52單片機作為控制核心,用動態(tài)掃描法實現LED數字顯示,超聲波驅動信號用單片機定時器完成。超聲波測距器系統(tǒng)設計框圖如圖2.1所示超聲波發(fā)送電路LED顯示掃描驅動單片機控制器超聲波接收電路圖2.1 超聲波測距器的系統(tǒng)設計框圖3 硬件

13、電路各部分設計硬件電路主要分為單片機系統(tǒng)及顯示電路、超聲波發(fā)射電路和超聲波檢測接收電路三部分。3.1 單片機系統(tǒng)及顯示電路本課題的主控芯片采用的是STC89C52。系統(tǒng)采用12MHz的高精度晶振,以獲得較穩(wěn)定的時鐘頻率,并減小測量誤差。單片機用P1.7口輸出超聲波傳感器所需要的40kHz方波信號,利用外中斷0口監(jiān)測超聲波接收電路輸出的返回信號。顯示信號采用簡單實用的4位一體共陰極LED數碼管,并用PNP三極管8550驅動位碼,設有報警距離,并有蜂鳴器驅動電路。單片機系統(tǒng)及顯示電路如圖3.1所示圖3.1 單片機系統(tǒng)及顯示電路3.1.1 主控芯片STC89C52STC89C52單片機式一種低功耗,

14、高性能的CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。其引腳結構如圖3.2所示。使用高密度非易失性存儲器技術制造,與工業(yè)51產品指令和引腳完全兼容。片上的Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得其為眾多嵌入式控制應用系統(tǒng)提供高靈活、有效的解決方案。主要性能:與MCS-51單片機產品兼容8K字節(jié)在系統(tǒng)可編程Flash存儲器1000次擦寫周期全靜態(tài)操作:0Hz33Hz三級加密程序存儲器32個可編程I/O口線三個16位定時器/計數器八個中斷源全雙工UART串行通道低功耗空閑和掉電模標準功能STC89S52具有以

15、下標準功能:8K字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時器,2個數據指針,三個16位定時器/計數器,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,STC89S52可降至0HZ靜態(tài)邏輯操作,支持兩種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。圖3.2 STC89C52單片機引腳圖各主要管腳介紹如下:VCC:電源GND:地P0口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅動8個TTL邏輯電平。

16、對P0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和數據存儲器時,P0口也被作為低8位地址/數據復用。在這種模式下,P0具有內部上拉電阻。在flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。P1口:P1口是一個具有內部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅動4個TTL邏輯電平。對P1端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。此外,P1.0和P1.2分別作定時器/計數器2的外部計數輸入(P1.0/T2)和時器/計數器 2 的觸發(fā)輸入(P

17、1.1/T2EX)。P2口:P2口是一個具有內部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅動 4 個TTL邏輯電平。對P2端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用16位地址讀取外部數據存儲器(例如執(zhí)行MOVX DPTR)時,P2口送出高八位地址。在這種應用中,P2口使用很強的內部上拉發(fā)送1。在使用8位地址(如 MOVX RI)訪問外部數據存儲器時,P2口輸出P2鎖存器的內容。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。P3口:P3口是一個具有內部

18、上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅動4個TTL邏輯電平。對P3端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。P3口亦作為STC89S52特殊功能(第二功能)使用,在flash編程和校驗時,P3口也接收一些控制信號。如下表4-1所示。表 3-1 P3口的引腳號及其第二功能引腳號第二功能P3.0RXD(串行輸入)P3.1TXD(串行輸出)P3.2INT0(外部中斷 0)P3.3INT0(外部中斷 0)P3.4T0(定時器0外部輸入)P3.5T1(定時器1外部輸入)P3.6WR(外部數據存儲器寫選

19、通)P3.7RD(外部數據存儲器寫選通) RST:復位輸入。晶振工作時,RST腳持續(xù)2個機器周期高電平將使單片機復位。看門狗計時完成后,RST腳輸出96個晶振周期的高電平。特殊寄存器AUXR(地址8EH)上。ALE/PROG:地址鎖存控制信號(ALE)是訪問外部程序存儲器時,鎖存低8位地址的輸出脈沖。在flash編程時,此引腳(PROG)也用作編程輸入脈沖。在一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時器或時鐘使用。然而,特別強調,在每次訪問外部數據存儲器時,ALE脈沖將會跳過。如果需要,通過將地址為8EH的SFR的第0位置“1”,ALE操作將無效。這一位置“1”,A

20、LE僅在執(zhí)行MOVX或MOVC指令時有效。否則,ALE將被微弱拉高。這個ALE使能標志位(地址為8EH的SFR的第0位)的設置對微控制器處于外部執(zhí)行模式下無效。PSEN:外部程序存儲器選通信號(PSEN)是外部程序存儲器選通信號。當STC89S52從外部程序存儲器執(zhí)行外部代碼時,PSEN在每個機器周期被激活兩次,而在訪問外部數據存儲器時,PSEN將不被激活。EA/VPP:訪問外部程序存儲器控制信號。為使能從0000H到FFFFH的外部程序存儲器讀取指令,EA必須接GND。為了執(zhí)行內部程序指令,EA應該接VCC。在flash編程期間,EA也接收12伏電壓。XTAL1:振蕩器反相放大器和內部時鐘發(fā)

21、生電路的輸入端。XTAL2:振蕩器反相放大器的輸出端。3.1.2 數碼管顯示原理數碼管按段數分為七段數碼管和八段數碼管,八段數碼管比七段數碼管多一個發(fā)光二極管單元(小數點);按能顯示多少個“8”可分為1位、2位、4位或多位數碼管;按發(fā)光二極管單元連接方式分為共陽極數碼管和共陰極數碼管。本課題中使用的就是四位一體共陽極數碼管,其引腳圖如下圖3.3所示。圖3.3 四位共陽極LED數碼管引腳圖共陽數碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數碼管,它在應用時應將公共極COM接到0V,當某一字段發(fā)光二極管的陰極為高電平時,相應字段就點亮。當某一字段的陰極為低電平時,相應字段就不亮。

22、數碼管邏輯功能圖如圖3.4所示。 圖3.4 數碼管邏輯功能圖3.2 超聲波發(fā)射電路超聲波發(fā)射電路原理圖如圖3.5所示。單片機P1.7端口輸出的40kHz方波信號一路經一級反向器后送到超聲波傳感器的一個電極,另一極經兩級反向器后送到超聲波傳感器的另一個電極,用這種推挽的形式將方波信號加到超聲波傳感器的兩端可以提高超聲波的發(fā)射強度。輸出端采用兩個反向器并聯(lián),用以提高驅動能力。上拉電阻R10、R11一方面可以提高反向器74LS04輸出高電平的驅動能力;另一方面可以增加超聲波傳感器的阻尼效果,以縮短起自由振蕩的時間。圖3.5 超聲波發(fā)射電路原理圖 超聲波發(fā)射電路主要由反向器74LS04和超聲波傳感器構

23、成,74LS04是一個高速CMOS六反相器,具有放大作用。其引腳圖如圖3.6;其邏輯圖如3.7所示 圖3.6 反向器74LS04引腳圖 圖3.7 反向器74LS04邏輯圖引腳端符號1A-6A 輸入端1Y-6Y 輸出端壓電式超聲波傳感器是利用壓電晶體的諧振來工作的。超聲波傳感器內部結構如圖3.8所示,它有兩個壓電晶片和一個共振板。當它的兩極外加脈沖信號,其頻率等壓電晶片的固有振蕩頻率時,壓電晶片將會發(fā)生共振,并帶動共振板振動產生超聲波,這時它就是一個超聲波發(fā)生器;反之,如果兩電極間未外加電壓,當共振板接收到超聲波時,將壓迫壓電晶片作振動,將機械能轉換為電信號,這時它就成為超聲波接收傳感器。超聲波

24、發(fā)射轉換器與接收轉換器其結構稍有不同,器件上有不同的標志。超聲波探頭主要技術參數中心頻率:401KHz超聲波探頭反射靈敏度:1.0mVp-p.Min.余振時間1.5msec.Max.指向性:水平探測角度(6dB)12010,垂直探測角度(6dB)6010。絕緣阻抗:100M.(100V DC)最大輸入電壓:140Vp-p Max.(正弦波,40KHZ,施加超聲波時間0.5msec,間隔時間100msec.).工作溫度:-3085儲存溫度:-4085 圖3.8 超聲波傳感器內部結構圖3.3 超聲波檢測接收電路集成電路CX20106A是一款紅外接收的專用芯片,常用于電視機紅外遙控接收器。由于紅外遙

25、控的載波頻率38khz與測距的超聲波頻率40khz較為接近,可以利用它制作超聲波的接收電路,如圖3.9所示。CX20106A接收超聲波具有很高的靈敏度和抗干擾能力,其內部電路由前置放大器、自動偏置電平控制電路、限幅放大器、帶通濾波器、峰值檢波器和整形輸出電路組成。可以利用它作為超聲波檢測電路。接收的回波信號先經過前置放大器和限幅放大器,將信號調整到合適的幅值;再經過帶通濾波器濾波得到有用信號,濾除干擾信號;最后由峰值檢波器和整形電路輸出到鎖相環(huán)路,實現準確的計時。圖3.9 超聲波檢測接收電路圖CX20106A接收超聲波具有很高的靈敏度和抗干擾能力,其引腳圖如下圖3.10所示,適當地改變電容C4

26、的大小,可以改變超聲波檢測接收電路的靈敏度和抗干擾能力。圖3.10 CX20106A引腳圖CX20106A的引腳功能:1腳:超聲信號輸入端。2腳:該腳與地之間連接RC串聯(lián)網絡,它們是負反饋串聯(lián)網絡的一個組成部分,改變它們的數值能改變前置放大器的增益和頻率特性。增大電阻R或減小C,將使負反饋量增大,放大倍數下降,反之則放大倍數增大。3腳:該腳與地之間連接檢波電容,電容量大為平均值檢波,瞬間相應靈敏度低;若容量小,則為峰值檢波,瞬間相應靈敏度高,但檢波輸出的脈沖寬度變動大,易造成誤動作。4腳:接地端。5腳:該腳與電源間接入一個電阻,用以設置帶通濾波器的中心頻率f0 ,阻值越大,中心頻率越低。6腳:

27、 該腳與地之間接一個積分電容,標準值為330pF,如果該電容取得太大,會使探測距離變短。7腳:遙控命令輸出端,它是集電極開路輸出方式,因此該引腳必須接上一個上拉電阻到電源端,沒有接受信號是該端輸出為高電平,有信號時則產生下降。8腳:電源正極,4.55V。3.4 超聲波的硬件電路設計超聲波測距儀硬件電路的設計主要包括單片機系統(tǒng)及顯示電路、超聲波發(fā)射電路和超聲波檢測接收電路三部分。單片機采用STC89C52或其兼容系列。采用12MHz高精度的晶振,以獲得較穩(wěn)定時鐘頻率,減小測量誤差。單片機用P1.0端口輸出超聲波換能器所需的40kHz的方波信號,利用外中斷0口檢測超聲波接收電路輸出的返回信號。超聲

28、波發(fā)射電路主要由反相器74LS04和超聲波發(fā)射換能器T構成,超聲波檢測接收電路主要是由集成電路CX20106A組成,顯示電路采用簡單實用的LED數碼管顯示。超聲波硬件電路圖如附錄1所示。3.5 按鍵設置報警距離總共三個按鍵,一個設置鍵,一個加鍵,一個減鍵。當按下設置鍵的時候,我們可以設置超聲波的報警距離,默認是50cm,設置完成后,按鍵設置鍵退出,三個按鍵如下圖所示:36報警電路設計 當超聲波測到距離小于設定距離的時候,超聲波會發(fā)出報警,此報警有蜂鳴器,pnp三極管和電阻組成,如下圖所示: 4 系統(tǒng)軟件設計超聲波測距器的軟件設計主要由主程序、超聲波發(fā)生子程序、超聲波接收中斷程序及顯示子程序組成

29、。由于C語言程序有利于實現較復雜是算法,匯編語言程序則具有較高的效率并且容易精確計算程序運行的時間,而超聲波測距器的程序既有較復雜的計算(計算距離時),有要求精確計算程序運行時間(超聲波測距時),所以控制程序可采用C語言和匯編語言混合編程。 4.1 超聲波測距器的算法設計圖4.1表述了超聲波測距的原理,即超聲波發(fā)生器T在某以時刻發(fā)出一個超聲波信號,當這個超聲波遇到被測物體后反射回來,就會被超聲波接收器R接收到。這樣,只有計算出從發(fā)出超聲波信號到接收返信號所用的時間,就可以計算出超聲波發(fā)生器與反射物體的距離。該距離計算公式如下: (4-1)圖4.1 超聲波測距原理圖其中:為被測物與測距器的距離;

30、為聲波的來回路程;為聲速;為聲波來回所用的時間。超聲波也是一種聲波,其聲速與溫度有關。表4.1列出了幾種溫度下的超聲波聲速。在使用時,如果聲速變化不大,則可認為聲速是基本不變的。表4.1 不同溫度下超聲波聲速表溫度/-30-20-100102030100聲速/m/s3133193253233383443493864.2 主程序設計主程序首先要對系統(tǒng)環(huán)境初始化,設置定時器T0工作模式為16位定時/計數器模式,置位總中斷允許EA并對顯示端口P0和P2清零;然后調用超聲波發(fā)生子程序送出一個超聲波脈沖。為了避免超聲波從發(fā)射直接傳送到接收器引起的直射波觸發(fā),需要延時0.1ms,后才打開外中斷點接收返回的

31、超聲波信號。由于采用的12MHz的晶振,計數器每計一個數就是1us,所以當主程序檢測到接收成功的標志位后,將計數器T0的數(即超聲波來回所用的時間)按式(4-1)計算,即可得被測物體與測距器之間的距離。設計時取20時的聲速為344m/s,則有 (4-2)其中:T0為計數器T0的計數值。測出距離后,結果將以十進BCD碼方式發(fā)送往LED顯示約0.5s,然后再發(fā)送超聲波脈沖重復測量過程。圖4.1所示為主程序流程圖。圖4.1 主程序流程圖4.3 超聲波發(fā)生子程序和接收中斷程序超聲波發(fā)生子程序流程圖和超聲波接收子程序流程圖分別如下圖4.2和圖4.3所示 圖4.2 超聲波發(fā)射子程序流程圖 圖4.3超聲波接

32、收子程序流程圖如果當計時器溢出時還未檢測到超聲波返回信號,則定時器T0溢出中斷將外中關閉,并將測距成功標志字賦值2,以表示本次測距不成功。超聲波發(fā)生子程序的作用是通過P1.0端口發(fā)送兩個左右的超聲波脈沖信號(頻率約40kHz的方波),脈沖寬度為12s左右,同時把計數器T0打開進行計時。超聲波發(fā)生子程序比較簡單,但要求程序運行時間準確,所以采用匯編語言編程。超聲波測距器主程序利用外中斷0檢測返回超聲波信號,一旦收到返回超聲波信號(即INT0腳出現低電平),立即進入超聲波接收中斷程序。進入中斷后,就立即關閉計時器T0,停止計時,并將測距成功標志字賦值1。5 調試及性能分析5.1 調試超聲波發(fā)射和接

33、收采用15#的超聲波換能TCT40-10F1(發(fā)送)TCT40-10S1(接收),中心頻率40kHz,安裝時應保持兩換能器中心軸平行并相距4-8cm。若能將超聲波接收電路用金屬殼屏蔽起來,則可提高抗干擾能力。根據測量范圍要求不同,可適當地調整與接收換能器連接的濾波電容C20的大小,以獲得合適的接收靈敏度和抗干擾能力。5.2 性能分析根據系統(tǒng)電路參數和程序,測距器可測量的范圍為0.075.50m。實驗中,對測量范圍為0.07-3.00m的平面物體做了多次測試,測距器的最大誤差不超過1cm,重復性很好。6 結論與展望超聲波測距已廣泛的應用8于工業(yè)定位檢測、移動機器人、汽車防碰撞和海洋捕撈作業(yè)等領域

34、。隨著信號處理技術和計算機技術的發(fā)展,超聲波測距的應用范圍越來越廣,測量精度和響應速度也越來越高。這種測距方法不僅可以避免人為因素帶來的影響,而且系統(tǒng)測量精度高,適用性強。由于測量的過程全都式是電子化,可實時存貯測量結果,并生成自動報表方便技術人員進行質量分析與管理,且容易實現聯(lián)網,通過聯(lián)網實現數據共享,技術管理人員不用到生產現場就能及時掌握生產狀況,實現品質管理?;谶@些優(yōu)點,這類非接觸的測量方法有著廣泛的應用前景。利用超聲波測距技術的倒車雷達,也稱“泊車輔助裝置”,是汽車泊車安全輔助裝置,能以聲音或者更為直觀的顯示告知駕駛員周圍障礙物的情況,解除了駕駛員泊車和起動車輛時前后左右探視所引起的

35、困擾,并幫助駕駛員掃除了視野死角和視線模糊的缺陷,提高了安全性。倒車雷達系統(tǒng)是保障汽車倒車安全的輔助系統(tǒng),通過超聲波探頭發(fā)出超聲波,使用單片機計算距離,提高了距離計算的精度。系統(tǒng)安裝的LED顯示器可以直觀的顯示距離,給駕駛員提供了方便。倒車時當汽車與障礙物的距離小于我們所設定的安全距離時,系統(tǒng)便通過語音集成電路發(fā)出報警,提醒駕駛員,防止汽車的碰撞或擦傷,具有很強的實用性。7 致謝在本次畢業(yè)設計過程中,XX老師對該論文從選題、資料收集到最后定稿的各個環(huán)節(jié)給予細心指導,X老師對我的構思以及論文的內容不厭其煩的進行多次指導和悉心指點,使我在完成論文的同時也深受啟發(fā)和教育,使我對超聲波傳感器及單片機等

36、知識有了深刻的認識,并得以完成畢業(yè)設計,在此表示衷心感謝。從X老師那里我學會了如何去發(fā)現、分析并解決問題的方法,X老師治學態(tài)度嚴謹、學識淵博,他誨人不倦的師者風范是我終生學習的楷模。感謝大學四年來,班主任XXX老師陪我們一起走過,感謝X老師對我們的關心和幫助,在我們迷茫時給予我們的鼓勵和支持;感謝X書記,X院長等學校領導給我們的幫助,使我們確定了以后的方向考研或者工作,幫助我們端正了心態(tài),以正確的態(tài)度去對待以后的人生;感謝寢室室友的幫助和鼓勵,因為有了他們,我的大學生活增添很多樂趣。在四年的大學生涯里,還得到眾多老師的關心支持和幫助,他們不但交給我專業(yè)知識,更讓我懂得了做人的道理。在此,謹向老

37、師們致以衷心的感謝和崇高的敬意! 感謝X級電子信息科學與技術本科班的全體同學,是你們陪我度過了這寶貴的四年!特別要感謝的是我的家人,一直給予我各方面的關懷和支持!最后,我要向在百忙之中抽時間對本文進行審閱、評議和參加本人論文答辯的各位老師表示感謝!8 參考文獻1 謝自美.電子線路設計實驗測試M. 第二版. 武漢:華中科技大學出版社,2004.2 譚浩強. C程序設計M.第四版.北京:清華大學出版社,2010 年6 月3 邱關源.電路.第四版M.北京:高等教育出版社,19994 康華光.電子技術基礎數字部分M.第五版,北京:高等教育出版社,2006.15 孫余凱等編著.傳感器應用電路300例M.

38、北京:電子工業(yè)出版社,2008.36 張毅剛主編. 單片機原理及應用M.北京: 高等教育出版社,2003.7 樓然苗,李光飛. 單片機課程設計指導M. 北京: 北京航空航天大學出版社,2007.78 郭天祥. 新概念51單片機C語言教程M.北京:電子工業(yè)出版社,2009.19 陳大欽主編.電子技術基礎實驗M.第二版,北京:高等教育出版社,200010寧鐸等編著.電子工藝實訓教程M. 西安:西安電子科技大學出版社,2006.211 彭介華主編.電子技術課程設計指導M.北京:高等教育出版社,199712陳志旺等編著.51系列單片機系統(tǒng)設計與實踐M.北京:電子工業(yè)出版社,2010.113楊欣,王玉鳳

39、,劉湘黔編著.51單片機應用從零開始M.北京:清華大學出版社,2008.114 Shirley P A.An introduction to ultrasonic sensingJ.EDN,1989,12(11):15-18.15朱士虎,何培忠,王立巍.基于AT89S52超聲波測距儀設計D.徐州師范大學物理與電子工程學院16 趙亮,王余.基于AT89S51單片機的超聲波測距儀器設計D.西南科技大學城市學院機電科學系附錄附錄1超聲測距器單片機程序/晶振=12M/MCU=STC89C52/P0.0-P0.7共陰數碼管引腳/Trig = P17/Echo = P32#include /包括一個52標

40、準內核的頭文件#define uchar unsigned char /定義一下方便使用#define uint unsigned int#define ulong unsigned long/*sbit Trig = P17; /產生脈沖引腳sbit Echo = P32; /回波引腳sbit test = P11; /測試用引腳sbit butter=P35;sbit jia=P10;sbit jian=P12;sbit caidan=P16;double dd;unsigned flag1=0; /是否進入設置距離標志 等于1進入設置 等于0進入測距unsigned char num=0

41、;/防干擾計數unsigned int dis=50;/設定報警距離uchar code SEG710=0x5f,0x44,0x9d,0xd5,0xc6,0xd3,0xdb,0x45,0xdf,0xd7;/數碼管0-9uchar ge,shi,bai,temp,flag,outcomeH,outcomeL,i; /自定義寄存器bit succeed_flag; /測量成功標志/*函數聲明void conversion(uint temp_data);void delay_20us();void delayms(int x) /延時函數char i;while(x-) for(i=500;i0;

42、i-); void main(void) / 主程序 uint distance_data,a,b; uchar CONT_1; i=0; flag=0;test =0;Trig=0; /首先拉低脈沖輸入引腳TMOD=0x11; /定時器0,定時器1,16位工作方式TR0=1; /啟動定時器0 IT0=0; /由高電平變低電平,觸發(fā)外部中斷ET0=1; /打開定時器0中斷 /ET1=1; /打開定時器1中斷EX0=0; /關閉外部中斷EA=1; /打開總中斷0 while(1) /程序循環(huán)/設置距離 if(caidan=0) /開始按鍵按下 delayms(5); /此處表示出去抖動, if(

43、caidan=0) /再次判斷是否按下停止按鍵 while(!caidan); /表示確實按下按鍵,松開按鍵后 先下執(zhí)行 flag1=1;/進入計時模式 delayms(20); EA=0; while(flag1) P2=0XFF; P0=0X00; P0=SEG7dis%10; P2=0xdf; delayms(3); P0=0X00; P2=0XFF; P0=SEG7dis%100/10; P2=0xf7; delayms(3); P0=0X00; P2=0XFF; P0=SEG7dis/100; P2=0xfd; delayms(3); if(jia=0) /暫停鍵被按下 delaym

44、s(3); /此處表示出去抖動, if(jia=0) /再次判斷是否按下停止按鍵 while(!jia); /表示確實按下按鍵,松開按鍵后 先下執(zhí)行 if(dis3) dis-; if(caidan=0) /開始按鍵按下 delayms(5); /此處表示出去抖動, if(caidan=0) /再次判斷是否按下停止按鍵 while(!caidan); /表示確實按下按鍵,松開按鍵后 先下執(zhí)行 flag1=0;/進入計時模式 delayms(20); EA=1; / EA=0; Trig=1; delay_20us(); Trig=0; /產生一個20us的脈沖,在Trig引腳 while(Ech

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論