第二章 總體方案
2.1 方案選擇
采用單片機來控制超聲波測距,信號線發射到與超聲波發射器相連的信號端,超聲波發射器向既定方向發射,在發射的同時開始計時,超聲波在空氣中傳播,途中碰到障礙物將產生回波。
2.2 超聲波測距儀的設計思路
2.2.1 超聲波測距原理
超聲波測距的方法有多種,如相位檢測法、聲波幅值檢測法和渡越時間檢測法等。相位檢測法雖然精度高,但檢測范圍有限,聲波幅值檢測法易受反射波的影響。
本測距系統采用超聲波渡越時間檢測法。其原理為:檢測從發射傳感器發射的超聲波經氣體介質傳播到接收傳感器的時間t,這個時間就是渡越時間,然后求出距離l。設l為測量距離,t為往返時間差,超聲波的傳播速度為c,則有l=ct/2。超聲波接收器收到反射波就立即停止計時。再由單機計算出距離,送數碼管顯示測量結果。
超聲波測距的算法設計: 超聲波在空氣中傳播速度為每秒鐘340米(15℃時)。t2是接收超聲波時刻,t1是超聲波聲波發射時刻,t2-t1得出的是一個時間差的絕對值,假定t2-t1=0.03S,則有340m×0.03S=10.2m。由于在這10.2m的時間里,超聲波發出到遇到返射物返回的距離如下: 如圖2-2-1為測距原理[4]
1.001.jpg (4.84 KB, 下載次數: 100)
下載附件
2017-6-13 16:43 上傳
|
|
因為θ/2角度較小,可以忽略不計,所以L≈S。
超聲波發出到遇到返射物返回的距離如下:
L=C x ( t2 -t1 )/ 2
由于超聲波也是一種聲波,其聲速c與空氣溫度有關,一般來說,溫度每升高1攝氏度,聲速增加0.6米/秒。表2-1列出了幾種溫度下的聲速。
表2-1 聲速與溫度的關系表
在使用時,如果溫度變化不大,則可認為聲速c是基本不變的,計算時取c為340m/s。如果測距精度要求很高,則可通過改變硬件電路增加溫度補償電路的方法或者在硬件電路基本不變的情況下通過軟件改進算法的方法來加以校正。
2.2.2 超聲波測距原理框圖
超聲波測距模塊用HC-SR04,溫度傳感器使用DS18B20,微處理器使用STC89C52單片機,顯示部分采用共陽數碼管。HC-SR04集成的發射電路模塊發出超聲波,遇到障礙物產生回波,被接收電路模塊接收,STC89C52單片機統計出聲波傳輸所用時間,經過溫度補償溫,計算出正確的待測距離,同時ISD1730A根據相關數據處理進行組合播報當前測試距離,并且由數碼管顯示。
1.002.jpg (20.73 KB, 下載次數: 98)
下載附件
2017-6-13 16:43 上傳
|
|
2.3 使用元件選擇由于測量距離的精度和長度要求不是很高,精度達到2cm,測量距離達到2m即可,因此超聲波模塊選用價格低廉且實用的HC-SR04即可。
控制核心部分選擇實用的STC89C52單片機即可滿足計算和控制要求。
溫度補償的溫度傳感器選擇普遍且實用的DS18B20。
語音播報:ISD1730A是華邦公司新推出的語音芯片,用來替代已經停產的ISD1400 系列及ISD2500 系列芯片。ISD1730A不僅在錄音時間上有更多的選擇(從20秒到240 秒),而且在功能上繼承14及25系列的所有錄放功能,并增加了一些更加人性化的提示功能及對存儲地址的精確操作。根據我們經營 ISD 系列芯片多年的經驗來看,ISD1700 的音質也較14及25系列有明顯的提高
ISD1700 系列芯片是華邦公司新推出的單片優質語音錄放電路,該芯片提供多項新功能,包括內置專利的多信息管理系統,新信息提示(vAlert ),雙運作模式(獨立&嵌入式),以及可定制的信息操作指示音效。芯片內部包含有自動增益控制、麥克風前置擴大器、揚聲器驅動線路、振蕩器與內
存等的全方位整合系統功能。。
顯示部分:選擇了四位數碼管。
第五章超聲波測距接收
5.1 HC-SR04模塊
HC-SR04超聲波測距模塊可提供2cm-400cm的非接觸式距離感測功能,其結構簡單,使用單片機控制電路簡單容易,而且價格便宜。該模塊包括超聲波發射、接收與控制電路。實物如圖5-1。
1.011.jpg (22.05 KB, 下載次數: 125)
下載附件
2017-6-13 16:43 上傳
|
|
基本工作原理
①采用IO口TRIG觸發測距,給至少10us的高電平信號;
②模塊自動發送8個40khz的方波,自動檢測是否有信號返回;
③有信號返回,通過IO口ECHO輸出一個高電平,高電平持續時間就是超
聲波從發射到返回的時間。
電氣參數
HC-SR04模塊參數如下表5-1所示。
表5-1模塊參數
超聲波時序圖
超聲波時序圖如圖5-2所示
1.012.jpg (16.78 KB, 下載次數: 115)
下載附件
2017-6-13 16:43 上傳
|
|
以上時序圖表明只需要提供一個10us以上脈沖信號,該模塊內部將發出8個40khz周期電平并檢測回波。一旦檢測到有回波信號則輸出回響信號。回響信號的脈沖寬度與測量的距離成正比。由此通過發射信號到收到的回響信號時間間隔可以計算得到距離:
距離=高電平時間*聲速(340m/s)/2。
為防止發射信號對回響信號的影響,測量周期一般要60ms以上。
模塊主要由Em78p153單片機、MAX232、TL074、超聲波傳感器:T40-16、R40-16組成。
Em78p153單片機
①概況描述
Em78p153是采用高速CMOS工藝制造的8位單片機。其內部有512*13位一次性ROM(OTPROM)。因此,用戶可以方便改進完善程序。程序代碼可用EMC編程器寫入芯片。有13位選項位可滿足用戶要求,其中的保護位可用來防止程序被讀出。
②功能特點
工作電壓范圍:2.0V~6.0V;
工作溫度范圍:0℃~70℃;
工作頻率范圍:DC~8MHz;
512×13位片內ROM;32×8位片內寄存器(SDRAM);
片內有4MHz校準RC振蕩器;
2個雙向I/O端口;
8位實時定時/計數器(TCC),信號源、觸發沿可編程選擇,溢出產生中斷;
掉電模式(SLEEP模式);
3個中斷源:TCC溢出中斷、輸入引腳狀態變化中斷、外部中斷;
EM78P153為14腳封裝;封裝形式:SOP、SSOP和DIP。
③引腳分配
Em78p153單片機引腳分配如圖5-3。
1.013.jpg (12.82 KB, 下載次數: 96)
下載附件
2017-6-13 16:43 上傳
|
|
MAX232
MAX232芯片是美信公司專門為電腦的RS-232標準串口設計的單電源電平轉換芯片,使用+5v單電源供電。MAX232多用于串口通信,起到電平轉換的作用,而本設計只用到其電平轉換,將40kHz的方波由5V轉換成20V,提高發射功率。超聲波發射頭采用共振頻率為40kHz的TCT40-16探頭,接收頭采用RCT40-16。
①MAX232引腳圖
芯片引腳如圖5-4。
1.014.jpg (24.28 KB, 下載次數: 98)
下載附件
2017-6-13 16:43 上傳
|
|
②引腳介紹
第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構成。功能是產生+12v和-12v兩個電源,提供給RS-232串口電平的需要。
第二部分是數據轉換通道。由7、8、9、10、11、12、13、14腳構成兩個數據通道。其中13腳(R1IN)、12腳(R1OUT)、11腳(T1IN)、14腳(T1OUT)為第一數據通道;8腳(R2IN)、9腳(R2OUT)、10腳(T2IN)、7腳(T2OUT)為第二數據通道。
第三部分是供電。15腳GND、16腳VCC(+5v)。
TL074
常用的低噪聲JFET輸入運算放大器,引腳如圖5-5。
1.015.jpg (21.33 KB, 下載次數: 91)
下載附件
2017-6-13 16:43 上傳
|
|
1、2、3腳是通道1的輸出端、反相輸入端、同相輸入端,5、6、7腳是通道2的同相輸入端、反相輸入端、輸出端,8、9、10腳是通道3的輸出端、反相輸入端、同相輸入端,12、13、14腳是通道4的同相輸入端、反相輸入端、輸出端,4腳是正電源,11腳是負電源。TL074內部組件數量如下表5-2所示
表5-2 TL074組件
T40-16與R40-16
為了研究和利用超聲波,人們已經設計和制成了許多超聲波發生器。總體上講,超聲波發生器可以分為兩大類:
電氣方式產生超聲波, 主要包括壓電型、磁致伸縮型和電動型等;
機械方式產生超聲波,主要包括加爾統笛、液哨和氣流旋笛等。
它們所產生的超聲波的頻率、功率和聲波特性各不相同,因而用途也各不相同。目前較為常用的是壓電式超聲波發生器。
壓電式超聲波發生器實際上是利用壓電晶體的諧振來工作的。其內部有兩個壓電晶片和一個共振板。當它的兩極外加脈沖信號,其頻率等于壓電晶片的固有振蕩頻率時,壓電晶片發生共振,帶動共振板振動,便產生超聲波。反之,如果兩電極間未外加電壓,當共振板接收到超聲波時,將壓迫壓電晶片作振動,將機械能轉換為電信號,這時它就成為超聲波接收器了。模塊使用T40-16T/R超聲波換能器即為壓電型。
①器件說明
名 稱:壓電陶瓷超聲波傳感器;
型 號:T40-16T/R;
類 別:通用型;
中心頻率:40KHZ;
外 徑:16mm;
使用方式:T為發射頭,R為接收頭,TR為收發兼用;
適用范圍:家用電器及其它電子設備的超聲波遙控裝置;超聲波測距及汽車倒車防撞裝置;液面探測;超聲波接近開關及其它應用的超聲波發射與接收。
②器件性能
1.標稱頻率(KHz):40KHz;
2.發射電壓at10V(0dB=0.02mPa):≥110dB;
3.接收靈敏度at40KHz(0dB=V/ubar):≥-70dB;
4.靜電容量at1KHz,<1V(PF):2000±30%;
5.探測距離(m):0.02-10。
傳感器實物如圖5-5 所示。
1.016.jpg (11.46 KB, 下載次數: 106)
下載附件
2017-6-13 16:43 上傳
|
|
HC-SR04模塊集成了發射和接受電路,硬件上不必再自行設計繁復的發射及接收電路,軟件上也無需再通過定時器產生40Khz的方波引起壓電陶瓷共振從而產生超聲波。使用時,只要在控制端‘Trig’發一個大于10us寬度的高電平,就可以在接收端‘Echo’等待高電平輸出。單片機一旦檢測到有輸出就打開定時器開始計時。當此口變為低電平時就停止計時并讀出定時器的值,此值就為此次測距的時間,再根據傳播速度方可算出障礙物的距離。
5.2 T40、R40超聲波傳感器簡介
1.017.jpg (12.65 KB, 下載次數: 89)
下載附件
2017-6-13 16:43 上傳
|
1.018.jpg (10.75 KB, 下載次數: 81)
下載附件
2017-6-13 16:43 上傳
|
| |
5.2.1 超聲波傳感器的基本介紹
超聲波測距換能器是利用超聲波的特性研制而成的換能器。超聲波是一種振動頻率高于聲波的機械波,由換能晶片在電壓的激勵下發生振動產生的,它具有頻率高、波長短、繞射現象小,特別是方向性好、能夠成為射線而定向傳播等特點。超聲波對液體、固體的穿透本領很大,尤其是在陽光不透明的固體中,它可穿透幾十米的深度。超聲波碰到雜質或分界面會產生顯著反射形成反射成回波,碰到活動物體能產生多普勒效應。因此超聲波檢測廣泛應用在工業、國防、生物醫學等方面。
以超聲波作為檢測手段,必須產生超聲波和接收超聲波。完成這種功能的裝置就是超聲波換能器,或者探頭。
超聲波換能器主要由壓電晶片組成,既可以發射超聲波,也可以接收超聲波。小功率超聲探頭多作探測作用。它有許多不同的結構,可分直探頭(縱波)、斜探頭(橫波)、表面波探頭(表面波)、蘭姆波探頭(蘭姆波)、雙探頭(一個探頭反射、一個探頭接收)等。
5.2.2 超聲波傳感器的主要應用
超聲波傳感技術應用在生產實踐的不同方面,而醫學應用是其最主要的應用之一,下面以醫學為例子說明超聲波傳感技術的應用。超聲波在醫學上的應用主要是診斷疾病,它已經成為了臨床醫學中不可缺少的診斷方法。超聲波診斷的優點是:對受檢者無痛苦、無損害、方法簡便、顯像清晰、診斷的準確率高等。因而推廣容易,受到醫務工作者和患者的歡迎。超聲波診斷可以基于不同的醫學原理,我們來看看其中有代表性的一種所謂的A型方法。這個方法是利用超聲波的反射。當超聲波在人體組織中傳播遇到兩層聲阻抗不同的介質界面是,在該界面就產生反射回聲。每遇到一個反射面時,回聲在示波器的屏幕上顯示出來,而兩個界面的阻抗差值也決定了回聲的振幅的高低。
在工業方面,超聲波的典型應用是對金屬的無損探傷和超聲波測厚兩種。過去,許多技術因為無法探測到物體組織內部而受到阻礙,超聲波傳感技術的出現改變了這種狀況。當然更多的超聲波傳感器是固定地安裝在不同的裝置上,“悄無聲息”地探測人們所需要的信號。在未來的應用中,超聲波將與信息技術、新材料技術結合起來,將出現更多的智能化、高靈敏度的超聲波傳感器。
超聲波距離傳感器技術應用
超聲波對液體、固體的穿透本領很大,尤其是在陽光不透明的固體中,它可穿透幾十米的深度。
超聲波碰到雜質或分界面會產生顯著反射形成反射成回波,碰到活動物體能產生多普勒效應。因此超聲波檢測廣泛應用在工業、國防、生物醫學等方面。超聲波距離傳感器可以廣泛應用在物位(液位)監測,機器人防撞,各種超聲波接近開關,以及防盜報警等相關領域,工作可靠,安裝方便, 防水型,發射夾角較小,靈敏度高,方便與工業顯示儀表連接,也提供發射夾角較大的探頭。
5.2.3 超聲波傳感器的工作原理
超聲波是一種在彈性介質中的機械振蕩,有兩種形式:橫向振蕩(橫波)及縱向振蕩(縱波)。在工業中應用主要采用縱向振蕩。超聲波可以在氣體、液體及固體中傳播,其傳播速度不同。另外,它也有折射和反射現象,并且在傳播過程中有衰減。在空氣中傳播超聲波,其頻率較低,一般為幾十KHZ,而在固體、液體中則頻率可用得較高。在空氣中衰減較快,而在液體及固體中傳播,衰減較小,傳播較遠。利用超聲波的特性,可做成各種超聲傳感器,配上不同的電路,制成各種超聲測量儀器及裝置,并在通迅,醫療家電等各方面得到廣泛應用。
超聲波傳感器主要材料有壓電晶體(電致伸縮)及鎳鐵鋁合金(磁致伸縮)兩類。電致伸縮的材料有鋯鈦酸鉛(PZT)等。壓電晶體組成的超聲波傳感器是一種可逆傳感器,它可以將電能轉變成機械振蕩而產生超聲波,同時它接收到超聲波時,也能轉變成電能,所以它可以分成發送器或接收器。有的超聲波傳感器既作發送,也能作接收。這里僅介紹小型超聲波傳感器,發送與接收略有差別,它適用于在空氣中傳播,工作頻率一般為23-25KHZ及40-45KHZ。這類傳感器適用于測距、遙控、防盜等用途。該種有T/R-40-60,T/R-40-12等(其中T表示發送,R表示接收,40表示頻率為40KHZ,16及12表示其外徑尺寸,以毫米計)。另有一種密封式超聲波傳感器(MA40EI型)。它的特點是具有防水作用(但不能放入水中),可以作料位及接近開關用,它的性能較好。超聲波應用有三種基本類型,透射型用于遙控器,防盜報警器、自動門、接近開關等;分離式反射型用于測距、液位或料位;反射型用于材料探傷、測厚等。
由發送傳感器(或稱波發送器)、接收傳感器(或稱波接收器)、控制部分與電源部分組成。發送器傳感器由發送器與使用直徑為15mm左右的陶瓷振子換能器組成,換能器作用是將陶瓷振子的電振動能量轉換成超能量并向空中輻射;而接收傳感器由陶瓷振子換能器與放大電路組成,換能器接收波產生機械振動,將其變換成電能量,作為傳感器接收器的輸出,從而對發送的超進行檢測.而實際使用中,用發送傳感器的陶瓷振子的也可以用做接收器傳感器社的陶瓷振子。控制部分主要對發送器發出的脈沖鏈頻率、占空比及稀疏調制和計數及探測距離等進行控制
5.3 超聲波發射電路
HC-SR04模塊內部超聲波發射電路如圖5-6所示,主要由Em78p153單片機、MAX232及超聲波發射換能器T40組成。
1.019.jpg (28.14 KB, 下載次數: 92)
下載附件
2017-6-13 16:43 上傳
|
|
5.4 超聲波接收電路
HC-SR04模塊內部超聲波接收電路如圖5-3所示,主要由TL074運算放大器及超聲波接換能器R40組成。
1.020.jpg (27.94 KB, 下載次數: 94)
下載附件
2017-6-13 16:43 上傳
|
|
5.5 超聲波接收過程
單片機初始化,HC-SR04內部ECHO接口與單片機P1.1的引腳相連,發射接口TRIG與單片機的P1.2引腳相接。
單片機開啟中斷,單片機P1.1給“Trig”接口一個約為20us的高電平,經過HC-SR04模塊內EM78P153發送8個連續的40KHz脈沖的信號,經過MAX232電平轉換,提高發射功率。換能器將電脈沖信號轉換為超聲波發射。
當單片機的給一個20us的觸發信號時,TRIG由低電平轉換為高電平,TRIG=1,
單片機開時計時,開啟中斷,并記錄時間為T1,接收換能器等待接收回波,ECHO持續為高電平的時間為發射時間。換能器接收回波將超聲波轉換為電信號,送至單片機,記錄時間為T2。超聲波發射的時間為:T2-T1,
計算發射距離為:
L = (T2-T1)xC/2
如果等待回波時間超過65ms時,則無法接收到回波,單片機初始化,重新發射接收下一次回波。
5.6 接收數據處理
單片機初始化函數
1.021.jpg (38.57 KB, 下載次數: 96)
下載附件
2017-6-13 16:43 上傳
|
|
接收過程:上電后先進行初始化,主要是對各變量即定時器0進行初始化,然后單片機給‘Trig’端一個約為20us的高電平,此后在‘Echo’端等待一個高電平,一旦檢測到高電平,則立即打開定時器,開始計時。此后只要定時器0中的值不超過約為65ms(65.5536ms)的計時上限,則認為仍處在有效測量范圍內,并未進入盲區,則在‘Echo’等待低電平的產生,一旦檢測到低電平,立即讀出此時的TH0和TL0,并關閉定時器0。則超聲波從發射到返回總共所用時間為:time=TH0*256+TL0(us),再根據超聲波常溫下(27℃)在空氣中的傳播速度,(約為344m/s)計算出障礙物的距離,在數碼管上進行動態的實時顯示即可。
接收數據處理子程序如下:
c_send = 1; //10us的高電平觸發
delay();
c_send = 0;
TH0 = 0; //給定時器0清零
TL0 = 0;
TR0 = 0; //關定時器0定時
flag_hc_value = 0;
while(!c_recive); //當c_recive為零時等待
TR0=1;
while(c_recive) //當c_recive為1計數并等待
{
flag_time0 = TH0 * 256 + TL0;
if((flag_hc_value > 1) || (flag_time0 > 65000)) //當超聲波超過測量范圍時,顯示3個888
{
TR0 = 0;
flag_csb_juli = 2;
distance = 888;
flag_hc_value = 0;
break ;
}
else
{
flag_csb_juli = 1;
}
}
if(flag_csb_juli == 1)
{
TR0=0; //關定時器0定時
distance = TH0; //讀出定時器0的時間
distance = distance * 256 + TL0;
distance +=( flag_hc_value * 65536);//算出超聲波測距的時間 得到單位是ms
distance *= 0.017; // 0.017 = 340M / 2 = 170M = 0.017M 算出來是米
if(distance > 350) //距離 = 速度 * 時間
{
distance = 888; //如果大于3.8m就超出超聲波的量程
}
}
第六章總結
本次設計介紹了一種基于單片機的超聲波測距系統的設計,給出了相應的軟件和硬件的設計方案。
超聲波測距的原理與雷達測距原理相似,通過超聲波發射裝置發出超聲波,根據接收器接到超聲波時的時間差就可以知道距離,也就是說超聲波發射器向某一方向發射超聲波,在發射時刻的同時單片機開始計時,超聲波在空氣中傳播,途中碰到障礙物就立即返回來,超聲波接收器收到反射波單片機就立即停止計時,再利用對應的計算公式就可以求出物體間的間距,這是根據反射原理利用了超聲波指向性強,在介質中傳播距離較遠的特性。
超聲波測距儀硬件電路的設計主要包括單片機的基本電路、超聲波發射接收模塊控制電路、顯示電路、語音模塊,溫度補償五部分部分組成。單片機采用了STC89C52,晶振為12MHz,單片機P1.3端口輸出10us的觸發信號,由定時器T0計得時間間隔,顯示電路采用1602,語音芯片WTD588D。
本次設計的超聲波測距系統滿足倒車測距等所需的測量精度,而且反映速度快、控制簡單、成本低廉等,測距范圍為2cm到350cm。但由于經驗不足還有些地方有待完善。在要求精度較高的地方時,由于超聲波在空氣中的傳播速度受溫度影響有點大,則需考慮到不同溫度時超聲波的傳播速度變換。
總體來說,經過本次設計讓我學到了很多,從中受益匪淺。了解了超聲波測距的原理,并對單片機的開發和電路設計有了更進一步的了解。
致 謝
經過幾個月的努力本次畢業設計已經接近尾聲。畢業設計是對我們知識運用能力的一次全面的考核,培養我們綜合運用所學知識和獨立分析問題并且解決問題的能力。
首先,我要感謝王老師在畢業設計中對我給予的悉心指導和嚴格要求,我要感謝和我一起做畢業設計的同學。在畢業設計的短短3個月里,你們給我提出很多寶貴的意見,給了我不少幫助還有工作上的支持,在此也真誠的謝謝你們。同時,我還要感謝我的寢室同學和身邊的朋友,正是在這樣一個團結友愛,相互促進的環境中,在和他們的相互幫助和啟發中,才有我今天的小小收獲
經過幾個月的努力本次畢業設計已經接近尾聲。畢業設計是對我們知識運用能力的一次全面的考核,培養我們綜合運用所學知識和獨立分析問題并且解決問題的能力。最后再次深深感謝我的導師趙老師以及給予我幫助的同學和朋友。
參考資料
[1] 張國熊. 測控電路[M]. 北京:機械工業出版社,2003.
[2] 閻石. 數字電子技術基礎[M]. 北京:高等教育出版社,2004.
[3] 侯媛彬等. 凌陽單片機原理及其畢業設計精選[M]. 科學出版社,2006.
[4] 李建忠. 單片機原理及應用[M]. 西安:西安電子科技大學出版社,2008.
[5] 霍孟友等. 單片機原理與應用[M]. 北京:機械工業出版社,2004.
[6] 高惠芳.單片機原理及系統設計 杭州電子科技大學電子信息學校,2009
[7] 王安敏,張凱基于STC89C52 單片機的超聲波測距系統 儀表技術與傳感器
[8] 張珩,劉亞杰STC89C52 超聲波測距倒車防撞報警系統 現代電子技術
[9] 彭偉.單片機C語言程序設計設計實訓[M].西安:電子工業出版社,2009.
[10] 徐江海.數碼管顯示電路設計制造[M].合肥:機械工業出版社,2003.
[11] Maurice Wilkes.Progress in Computers.Prestige Lecture delivered to IEE, Cambridge, on 5 February 2004