基于單片機的超聲波測距儀的設計_第1頁
基于單片機的超聲波測距儀的設計_第2頁
基于單片機的超聲波測距儀的設計_第3頁
基于單片機的超聲波測距儀的設計_第4頁
基于單片機的超聲波測距儀的設計_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于單片機的超聲波測距儀的設計摘要:此系統(tǒng)采用STC89C51RC為控制核心;用超聲波發(fā)射和接收模塊來測量物體離測試儀的距離;用數碼管顯示模塊來顯示當前測試的距離;用報警模塊發(fā)出不同的信號來提示當前物體距離測試儀的遠近,用人機交互模塊來實現對系統(tǒng)的有關設置;我們還設計了輸出為+5V和+12V的穩(wěn)壓電源。通過以上各模塊來測量物體離測試儀的距離,并實時顯示和發(fā)出報警信號。關鍵字:STC89C51RC 超聲波 數碼管一、 超聲波測距儀的簡單介紹(一)、有關超聲波傳感器的介紹1、超聲波的定義:頻率超過20KHz的聲波,稱為超聲波;低于20Hz的稱為次聲波。2、超聲波傳感器利用超聲波的特性研制而成的傳感

2、器。超聲波傳感器圖片如圖1、圖2:圖1 圖2主要由換能晶片在電壓的激勵下發(fā)生振動產生的,它具有頻率高、波長短、繞射現象小,特別是方向性好、能夠成為射線而定向傳播等特點。3、40KHz超聲波的選擇超聲波可以在不同的介質中傳播,但傳播速度不同。超聲波在空氣中傳播時衰減很大,而在液體及固體中傳播,衰減較小,傳播較遠。其中衰減程度與頻率成正比,但頻率越高分辨率也越高,所以短距離測量時一般選用頻率高的傳感器,長距離測距只能用頻率低的傳感器。故本產品選用40KHz超聲波傳感器。4、主要影響因素超聲波傳感器的測量精度主要受溫度影響,因而許多超聲波傳感器具有溫度補償特性。5、應用超聲波對液體、固體的穿透本領很

3、大,尤其是在陽光不透明的固體中,它可穿透幾十米的深度。超聲波碰到雜質或分界面會產生顯著反射形成反射成回波,碰到活動物體能產生多普勒效應。因此超聲波檢測廣泛應用在工業(yè)、國防、生物醫(yī)學等方面。(二)、STC89C51RC單片機具有ISP(在系統(tǒng)編程)/IAP(在應用編程)功能,無需專用的編程器或仿真器,通過串口直接下載程序,有專門的下載軟件STC-ISP 。具有看門狗功能,內部Flash擦寫次數在100,000以上,而且STC89C51RC單片機還有加密功能。(三)、超聲測距儀電路說明1、基本工作原理通過不斷檢測反射的回波,而測出發(fā)射與接收回波的時間差t,然后求出距離s。 在已知速度v的情況下,用

4、以下公式可以求出距離s=1/2vt。2、電路組成硬件電路主要包括主控電路、發(fā)射、接收電路和數碼管顯示電路等電路。二、 本測距儀系統(tǒng)各電路模塊介紹()、系統(tǒng)概述設計并制作的超聲測距儀指標要求1. 設計制作5V穩(wěn)壓電源模塊;2. 設計完善超聲測距儀控制電路并編寫相關程序;3. 制作超聲測距儀電路板;4. 測量范圍:0.31.5m ;5. 測量誤差小于10cm(1%);6. 由蜂鳴器的緩急鳴叫指示距離的遠近 ;7. 采用STC89C51RC單片機作為系統(tǒng)核心控制器件。(二)、電路框圖電路框圖如圖3所示:圖3 系統(tǒng)組成框圖1、核心控制模塊STC89C51RC此模塊中使用了STC89C51RC單片機為控

5、制核心,它是由復位電路和時鐘電路組成。它不僅可以用串口在線下載且可靠性高,價格便宜。模塊電路圖如圖4所示。圖4 核心控制模塊STC89C51RC2、超聲波發(fā)射模塊超聲波發(fā)射電路由超聲發(fā)射頭、放大電路、振蕩電路等組成。由于超聲發(fā)射距離的不同,所以要求放大電路有足夠的功率來驅動超聲發(fā)射頭,信號放大電路的前級是由74HC04串聯(lián)而成,后級為增大電路的驅動能力,采用74HC04三個非門并聯(lián)和中功率三極管SD1815組成。電路圖如圖5所示:圖5 超聲波發(fā)射模塊3、超聲波接收電路超聲波接收電路由超聲接收頭、放大電路、波形整形電路等組成。由于超聲接收頭輸出的正弦波幅度較小,所以需要放大電路進行放大,并且單片

6、機不能直接接收正弦波信號,因此需要波形整形電路,將正弦波變換為脈沖信號。電路采用AS4558運放完成波形放大,用LM311完成了波形變換,電路中的74HC04是為增強信號驅動而設置的,并且有整形作用。電路圖如圖6所示:圖6 超聲波接收模塊4、數碼管顯示模塊在數碼管顯示模塊中我們采用了三極管作為驅動電路,每當三極管導通時都處于飽和狀態(tài),這樣設計可以增加數碼管的亮度。我們采用數碼管動態(tài)顯示可以節(jié)省I/O資源。電路圖如圖7所示圖7 數碼管顯示模塊5、報警電路模塊報警電路模塊由小功率三極管8550、9013和蜂鳴器組成。此電路將單片機產生的脈沖信號放大并驅動蜂鳴片緩急報警。由此判斷距離遠近,電路圖如圖

7、8所示:圖8 報警電路模塊6、人機交互模塊4個獨立按鍵與單片機通信,完成設計的功能,如圖9。K1K3的功能由使用者自主發(fā)揮,按鍵K4的功能:將采集到的數據固定顯示一段時間,以便清楚的看到顯示距離。圖9 獨立鍵盤模塊7、電源模塊電源電路是各模塊工作的基本條件,下面的穩(wěn)壓電源固定輸出+12V、+5V電壓,各模塊的供電由本模塊引出,如圖10.圖10 電源電路模塊(三)、功能要求與技術指標該產品由220V交流電直接供電;該產品由超聲波傳感器實現距離的測量;該產品由數碼管顯示距離測量結果,顯示結果單位為米;該產品由蜂鳴器的緩急鳴叫指示距離的遠近;該產品測距基本指標應在0.31.5m,發(fā)揮指標為0.15m

8、 ;該產品在有效測距范圍內測量誤差應<10cm,發(fā)揮指標<1cm 。三、元器件說明(一)、超聲波傳感器超聲波傳感器是利用超聲波的特性研制而成的傳感器。超聲波是一種振動頻 率高于聲波的機械波,由換能晶片在電壓的激勵下發(fā)生振動產生的,它具有頻率高、波長短、繞射現象小,特別是方向性好、能夠成為射線而定向傳播等特點。超聲波對液體、固體的穿透本領很大,尤其是在陽光不透明的固體中,它可穿透幾十米的深度。超聲波碰到雜質或分界面會產生顯著反射形成反射成回波,碰到活動物體能產生多普勒效應。因此超聲波檢測廣泛應用在工業(yè)、國防、生物醫(yī)學等方面以超聲波作為檢測手段,必須產生超聲波和接收超聲波。完成這種功能

9、的裝置就是超聲波傳感器,習慣上稱為超聲換能器,或者超聲探頭。超聲波探頭主要由壓電晶片組成,既可以發(fā)射超聲波,也可以接收超聲波。小功率超聲探頭多作探測作用。它有許多不同的結構,可分直探頭(縱波)、斜探頭(橫波)、表面波探頭(表面波)、蘭姆波探頭(蘭姆波)、雙探頭(一個探頭反射、一個探頭接收)等。圖11 超聲波傳感器(二)、CD4511七段譯碼/驅動器4511,引腳排列如圖12所示。其中A、B、C、D為 BCD 碼輸入,A為最低位。LT為燈測試端,加高電平時,顯示器正常顯示,加低電平時,顯示器一直顯示數碼“8”,各筆段都被點亮,以檢查顯示器是否有故障。BI為消隱功能端,低電平時使所有筆段均消隱,正

10、常顯示時, B1端應加高電平。另外 4511有拒絕偽碼的特點,當輸入數據越過十進制數9(1001)時,顯示字形也自行消隱。LE是鎖存控制端,高電平時鎖存,低電平時傳輸數據。ag是 7 段輸出,可驅動共陰LED數碼管。圖12 七段譯碼/驅動器4511(三)、共陰極數碼管七段數碼管是由a、b、c、d、e、f、g七個LED組成,其引腳說明如圖13所示。通過使不同的LED組合發(fā)光,達到數字和字母的顯示效果,如圖14所示。一般的LED額定電壓為直流2.7V左右,因此我們在使用時要串聯(lián)一個分壓電阻。阻值一般選400左右,如果需要高亮顯示或者掃描顯示,可以適當減小。圖13 七段數碼管引腳說明圖14 七段數碼

11、管顯示效果四、程序設計(一)、程序流程圖程序流程圖如圖15所示。圖15 程序流程圖(二)、程序清單:/* * *基于STC89C51RC單片機的超聲波測距* * */#include <reg51.h>#define uint unsigned int#define uchar unsigned char#define DUAN P0#define WEI P2/管腳定義sbit BUZZ = P11;sbit TX = P10;sbit KEY1 = P12;sbit KEY2 = P13;sbit KEY3 = P14;sbit KEY4 = P15;void display(

12、uint juli);void delay(uchar k);uint shuju=0;uint shuju_new=0;uchar xianshi1=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; /不帶點uchar xianshi2=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10; /帶點的uchar temp4;bit sign;/*主程序*/main()uchar ii;EA=1;TMOD=0x21;TL0=0x00; TH0=0x00; /開總中斷 /設置定時模式 T0測距用:方

13、式1 ,T1方式2TL1=0x00; TH1=0x00; ET1=1;/允許T1中斷 /電平觸發(fā) /外部中斷設置為最高優(yōu)先級 /開始計數 IT0=0; IP=0x01; TR1=1;while(1)sign=1; EX0=1; TR0=1; TX =1; /開外部中斷0 /開始發(fā)送超聲波 while(sign=1); /如果沒有進行測距,不會往下執(zhí)行 shuju=TH0*256+TL0;shuju=shuju*0.017;if(shuju<=70)&&(shuju>=10) shuju_new=shuju;if(shuju>=71)&& (sh

14、uju_new-shuju)>=3)|(shuju-shuju_new)>=3) ) shuju_new=shuju-5;if(shuju_new>=250) shuju_new=(shuju_new/10)+250;for( ii=0;ii<10;ii+)display(shuju_new);/計算出來的是以厘米為單位的; 理想狀態(tài)最小測距0.017CM 最大測距11M 顯示程序約需 21mswhile(KEY4=0) display(shuju_new); for(ii=0;ii<200;ii+) display(shuju_new); TL0=0x00; /

15、數據清零 TH0=0x00; TH1=TL1=shuju/3+130; if(TL1>200) /數據越大,頻率越高 TH1=TL1=200; /最遠的測距 頻率最大/*一毫秒延時*/ void delay(uchar k)uchar t;for(;k>0;k-)for(t=0;t<125;t+);/*外部中斷0中斷程序*/ void INT () interrupt 0EX0=0; TR0=0; /關INT0 /停止計數 /停止發(fā)送P1.0 /外部中斷 TX = 0;sign=0;/*定時器1中斷程序*/ void time1() interrupt 3ET1=0; /控制

16、蜂鳴器鳴響B(tài)UZZ=BUZZ;/*數碼管顯示程序*/ void display(uint juli)uchar i,n,c; temp0=(juli%10000)/1000; temp1=(juli%10000)%1000)/100; temp2=(juli%10000)%1000)%100)/10; temp3=(juli%10000)%1000)%100)%10; for(n=0;n<2;n+) c=0xFE; for(i=0;i<4;i+) P2=0xFF; P0=0xFF; P2=c; if(i=1) P0=xianshi2tempi; ET1=1; else P0=xianshi1tempi; delay(1); c=c<<1; c=c|0x01;五、結束語用超聲波發(fā)射和接收模塊來測量物體離測試儀的距離;用數碼管顯示模塊來顯示當前測試的距離;用報警模塊發(fā)出不同的信號來提示當前物體距離測試儀的遠近,用人機交互模塊來實現對系統(tǒng)的有關設置;我們還設計了輸出為+5V和+12V的穩(wěn)壓電源。通過以上各模塊來測量物體離測試儀的距離,并實時顯示和發(fā)出報警信號。參考文獻1李國興,李偉:單片機開發(fā)

溫馨提示

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

評論

0/150

提交評論