超声波测距仪设计实验报告(共20页)_第1页
超声波测距仪设计实验报告(共20页)_第2页
超声波测距仪设计实验报告(共20页)_第3页
超声波测距仪设计实验报告(共20页)_第4页
超声波测距仪设计实验报告(共20页)_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上超声波测距仪设计实验报告 课题设计目的及意义随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。但就目前技术水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。展望未来,超声波测距仪作为种新型的非常重要有用的工具在各方面都将有很大的发展空间,它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求,如声纳的发展趋势基本为:研制具有更高定位精度的被动测距声纳,以满足水中武器实施全隐蔽攻击的需要;继续发展采用低频线谱检测的潜艇拖曳线列阵声纳,实现超远程的被动探测和识别;研制更适合于浅海工作的潜艇声纳,特别是解

2、决浅海水中目标识别问题;大力降低潜艇自噪声,改善潜艇声纳的工作环境。无庸置疑,未来的超声波测距仪将与自动化智能化接轨,与其他的测距仪集成和融合,形成多测距仪。随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能,最终发展到具有创造力。在新的世纪里,面貌一新的测距仪将发挥更大的作用。随着科技的发展,人们生活水平的提高,城市发展建设加快,城市给排水系统也有较大发展,其状况不断改善。但是,由于历史原因合成时间住的许多不可预见因素,城市给排水系统,特别是排水系统往往落后于城市建设。因此,经常出现开挖已经建设好的建筑设施来改造排水系统的现象。城市污水给人们带来了困扰,因此箱涵的排污疏通对大

3、城市给排水系统污水处理,人们生活舒适显得非常重要。而设计研制箱涵排水疏通移动机器人的自动控制系统,保证机器人在箱涵中自由排污疏通,是箱涵排污疏通机器人的设计研制的核心部分。控制系统核心部分就是超声波测距仪的研制。因此,设计好的超声波测距仪就显得非常重要了。这就是我设计超声波测距仪的意义。实验原理超声波在液体、固体中衰减小、穿透力强、对某些固体、穿透深度能达到几十米的范围;另外,超声波方向性好,能够定向传播。因此,可以作为物体探查和进行测量的可靠手段。超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停 止计时

4、。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2。整体电路设计整体电路的控制核心为单片机STC89C52。超声波发射和接收电路中都对相应信号进行整形及放大,以保证测量结果尽可能精确。超声波探头接OUT口实现超声波的发射和接收。整体结构图包括超声波发射电路,超声波接收电路,单片机电路,显示电路和语音提示电路等几部分模块组成。而超声波发射与接收电路还要加入放大电路。在发射后把信号放大,接收前也要把还再次放大。整体电路结构图如图4-1。图4-1超声波测距原理图单片机发出40kHZ的信号,经放大后通过超声波发射器输出;超声波

5、接收器将接收到的超声波信号经放大器放大,用锁相环电路进行检波处理后,启动单片机中断程序,测得时间为t,再由软件进行判别、计算,得出距离数并送液晶显示。系统的硬件电路设计硬件电路的设计主要包括单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分。单片机采用 STC89C52 或其兼容系列。采用 12MHz 高精度的晶振,以获得较稳定时钟频率,减小测量误差。单片机用 P3.0 端口输出超声波换能器所需的40kHz的方波信号,利用外中断 0口监测超声波接收电路输出的返回信号。显示电路采用简单实用的12864液晶屏。一、 单片机的功能特点及应用 5l系列单片机中典型芯片(STC89C52)采

6、用40引脚双列直插封装(DIP)形式,内部由CPU,4kB的ROM,256 B的RAM,2个16b的定时计数器TO和T1,4个8 b的工O端I:IP0,P1,P2,P3,一个全双功串行通信口等组成。特别是该系列单片机片内的Flash可编程、可擦除只读存储器(EPROM),使其在实际中有着十分广泛的用途,在便携式、省电及特殊信息保存的仪器和系统中更为有用。该系列单片机引脚与封装如图2-1所示。 5l系列单片机提供以下功能:4 kB存储器;256 BRAM;32条工O线;2个16b定时计数器;5个2级中断源;1个全双向的串行口以及时钟电路。 空闲方式:CPU停止工作,而让RAM、定时计数器、串行口

7、和中断系统继续工作。掉电方式:保存RAM的内容,振荡器停振,禁止芯片所有的其他功能直到下一次硬件复位。 5l系列单片机为许多控制提供了高度灵活和低成本的解决办法。充分利用他的片内资源,即可在较少外围电路的情况下构成功能完善的超声波测距系统。二、单片机在本实验中的应用本实验中AT89C51单片机及P3.0用于超声波发射电路,P3.2用于接收电路,18和19脚照例接晶振。P1系列与语音芯片部分相接,P0和P2系列主要用于液晶屏的显示。剩余管脚依照设计接开关、按键等器材用于控制。 三、超声波发射电路为了研究和利用超声波,人们已经设计和制成了许多超声波发生器。总体上讲,超声波发生器可以分为两大类:一

8、类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生 的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。目前较为常用的是压电式超声波发生器。压电式超声波发生器实际上是利用压电晶体的谐振来工作的.它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。超声波发射换能器与接收换能器在结构

9、上稍有不同,使用时应分清器件上的标志。超声波发射电路原理图如下图所示,发射电路主要由反相器74LS04和超声波发射换能器T构成,单片机P3.0端口输出的40kHz的方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推换形式将方波信号加到超声波换能器的两端,可以提高超声波的发射强度。输出端采用两个反向器并联,用以提高驱动能力。上位电阻R1O、R11一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可增加超声波换能器的阻尼效果,缩短其自由振荡时间。四、超声波接收电路 集成电路CX20106A是一款红外线检波接收的专用芯片,常用

10、于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38 kHz与测距的超声波频率40 kHz较为接近且当 CX20106A 接收到40KHz的信号时,会在第7脚产生一个低电平下降脉冲,这个信号可以接到单片机的外部中断引脚作为中断信号输入,因此可以利用它制作超声波检测接收电路。实验证明用CX20106A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。其原理图如下:五、12864液晶显示电路液 晶 显 示 器 (LCD/Liquid Crystal Display)的 显 像原理,是将液晶置于两片导电玻璃之间,靠两个电极间电场的驱动,引起液晶分子扭曲,以控制光源透射或遮蔽功

11、能,在电源关开之间产生明暗而将影像显示出来,若加上彩色滤光片,则可显示彩色影像。 常见的液晶显示器分为 TNLCD(扭曲向列 LCD)、STNLCD(超扭曲向列 LCD)、DSTNLCD(双层超扭曲向列 LCD)和 TFTLCD(薄膜晶体管 LCD)四种。它们的显示原理主要是利用液晶的扭曲向列型(TN)效应配合偏光板来实现对光线通过路径的开和关的。12864液晶显示电路如下所示,EDM12864 是内置了 HD61202 控制器的 128×64 点阵式液晶显示器,EDM12864 与单片机接口简单,这一特点使其广泛的应用于各种工业控制当中。计算机 89C52 通过高位地址 A11 控

12、制 CSB;A10控制 CSA 选通液晶显示屏上各区的控制器 HD61202;89C52 用地址 A9 作为 R/W 信号控制数据总线的数据流向;用地址 A8 作为D/I 信号控制寄存器的选择;E 信号由 89C52 的读信号 RD 和写信号 WR 合成产生,实现计算机对内置 HD61202 图形液晶显示模块的电路连接。电位器用于显示对比度的调节。液晶显示器与传统的显像管显示器相比,其优点如下:一、显示质量高由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不象阴极射线管显示器(CRT)那样需要不断刷新亮点。因此,液晶显示器画质高而且绝对不会闪烁,把眼睛疲劳降到最低。二、

13、没有电磁辐射传统显示器的显示材料是荧光粉,通过电子束撞击荧光粉发光显示,电子束在打到荧光粉上的一刹那间会产生强大的电磁辐射,尽管目前有许多显示器产品在处理辐射问题上进行了比较有效的处理,尽可能地把辐射量降到最低,但要彻底消除是困难的。相对来说,液晶显示器在防止辐射方面具有先天的优势,因为它根本就不存在辐射。三、可视面积大对于相同尺寸的显示器来说,液晶显示器的可视面积要更大一些。液晶显示器的可视面积跟它的对角线尺寸相同。阴极射线管显示器显像管前面板四周有一英寸左右的边框不能用于显示。五、数字式接口液晶显示器都是数字式的,不像阴极射线管显示器采用模拟接口。也就是说,使用液晶显示器再也不需要像往常那

14、样把数字信号转化成模拟信号再行输出了。理论上,这会使色彩和定位都更加准确完美。七、“身材”匀称小巧传统的阴极射线管显示器,后面总是拖着一个笨重的射线管。液晶显示器突破了这一限制,给人一种全新的感觉。传统显示器是通过电子枪发射电子束到屏幕,因而显像管的管颈不能做得很短,当屏幕增加时也必然增大整个显示器的体积。而液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示目的,即使屏幕加大,它的体积也不会成正比的增加,而且在重量上比相同显示面积的传统显示器要轻得多。八、功率消耗小传统的显示器内部由许多电路组成,这些电路驱动着阴极射线显像管工作时,需要消耗很大的功率,而且随着体积的不断增大,其内部电路消耗

15、的功率肯定也会随之增大。相比而言,液晶显示器的功耗主要消耗在其内部的电极和驱动 IC 上,因而耗电量比传统显示器也要小得多。六、语音提示电路语音提示电路有芯片isd1420和各种电容电阻、极性电容以及录音器,扬声器,发光二级管等构成。芯片特点:ISD1420芯片采用直接模拟存储技术,且录放音质极好,并有一定的混响效果;它的外围元件简单,仅需简单的阻、容元件即可组成简单的录、放电路;单电源供电,典型电压+SV。待机时低功耗(0.5林A),放音电流巧mA;放音时间205,可扩充级联;可持续放音,也可分段录放,最小分段:205/160段=0.1255/段,可分段160段;录、放次数达10万次;断电信

16、息存储,无需后备电池,信息可存储100年;不需要专用的编程器及语音开发器;高优先级录音,低电平或负边沿放音。引脚介绍:ISD142O芯片封装为DIP硬封装28引脚。其中,AO一A7为地址或操作模式控制端; Vssd为数字地;Vssa为模拟地;SP十、SP-为音频信号输出端,可以驱动8一16扬声器;Vcca为模拟电源;Vccd为数字电源;MIC为话筒输人端,可用驻极体话筒,通过电容祸合;MICREF为话筒输人参考端,若不用应悬空;AGC为自动增益控制端,调整芯片内部前置放大器增益,使录人信号不失真;ANAIN、ANAOUT为两端间接电容,该端用于模拟信号的直接输人、输出;XCLK为外部时钟或接地

17、(一般用户接地即可);REC为录、放音控制,低电平为录音。系统的软件设计程序框图主程序段:#include <REGX52.H>#include<intrins.h>#defineucharunsigned char#defineuintunsignedint数据定义ucharcodetab="本次测量结果为:" "测试状态: 发 " " m " " 未锁定 "ucharcodetab1="单连 未"ucharcodetab2=".-"ucharcod

18、ewarning="锁定中.未收到回波"ucharcodewarn1="连发中"uchar code DIS1 = " 欢迎使用 "uchar code DIS2 = " 超声波测距仪 "uchar code DIS3 = "生医01班超声小组"uchar code DIS4 = " 设计制作"bitback,next0;ucharsa,ge=11,p1=11,p=11,mo,nosign,outge,outp1,outp2; /sa:统计发送40KHZ信号的个数=0.5sa

19、;ge:个位;p1小数点第一位;p小数点第二位long scount,stime_us,distance,disge,dispo;/scount:计数个数,stime_us:时间为多少微秒;distance:最终结果,但还要被分解成ge,p1,p;disge:最后结果的整数;dispo:最后结果的小数;sbit RS = P27; /寄存器选择输入 sbit RW = P26; /液晶读/写控制sbit EN = P25; /液晶使能控制sbit PSB = P23; /串/并方式控制sbit RST = P24; /液晶复位端口 externvoidDELAY(); voidinit();

20、/初始化voiddisplaylock(); voidtest(); /第一次检测各种状态voidtest0(); /连发状态下检测是否应该停止测量voidm_single();voidm_countinous();voidCalculation();voidlcd12864(uchar,uchar,uchar);voiddelay_ms(uint z);voiddelay_mus(uintz);voidwarning1(bit);voidopen();bitlcdbusy();voidinit1();voidstate();voidsendcd(bitcom,uchardat); /* 小延

21、时*/*/voiddisnop() _nop_();_nop_();_nop_();_nop_();/*中断初始化*/*/voidinit() /初始化总中断和INT0中断EA=1;EX0=1; /*检验*/*/voidtest()while(1)back=0;AGN:state();if(P3_1) /是否按下发射键 if(P3_1)gotoAGN;elseif(!P3_4)lcd12864(ge,p1,p);displaylock();gotoAGN;if(P3_3) /检查是单发还是连发状态 当开关为断开时为单发,闭合为连发m_single();elsem_countinous(); /

22、*复验*/*/voidtest0()ucharn;if(!P3_4) /是否锁定;若在连发状态下锁定(拨到on,为低电平)则停止测量back=1;return;if(P3_3) /是否更改为单发,若改了则停止测试back=1;sendcd(0,0x8f) ;sendcd(1,warn15);sendcd(1,warn16);elsesendcd(0,0x8d);delay_ms(1);for(n=0;n<6;n+)sendcd(1,warn1n);delay_ms(1);return; /用return 防止重入test()/* 单发*/*/ voidm_single()next0=0;

23、nosign=1;TMOD=0X10;DELAY();P3_0=0 ;delay_ms(2); while(nosign=1) /如果nosign=1即没收到超声波则等待if(next0)return;Calculation();TH1=0;TL1=0;if(P3_3) /if(P3_3) 若是单发则返回第一次检测,为连发则返回连发程序test(); /* 连发*/*/voidm_countinous()uintm;while (1)m_single(); for(m=0;m<2000;m+)delay_ms(1);test0();if(back)return; /*1MS的延时*/*/

24、voiddelay_ms(uintz)uintx;uchary;for(x=z;x>0;x-)for(y=120;y>0;y-); /*十微秒左右的延时*/*/voiddelay_mus(uintz)uintx;uchary;for(x=z;x>0;x-)for(y=5;y>0;y-); /*计算结果*/*/voidCalculation()/计算结果scount=TH1*0x0100+TL1; stime_us=scount/2;/上限32768,下限约为75distance=340*stime_us;/上限, 下限约为25500,未超出界限,数量级为10的-6次方,

25、换算成米为0.026到11.14米之间。disge=distance/; /上限11 ,下限0dispo=distance%; /小数位,共6位 上限 下限ge=disge;p1=dispo/;p=(dispo%)/10000;mo=(dispo%)/10000)%1000);if(mo>=5)p+;if(p=10)p=0;p1+; if(p1=10)p1=0;ge+; if(ge>=10)if(!P3_3)ge=11,p1=11,p=11; elsewarning1(1);delay_ms(3000);ge=11,p1=11,p=11; lcd12864(ge,p1,p); /*

26、锁定*/*/voiddisplaylock()uintk;warning1(0);for(k=0;k<8000;k+)delay_ms(1);if(P3_4)lcd12864(ge,p1,p);/若解除锁定,则显示刚才的数据并返回return; lcd12864(ge,p1,p); /* 开机画面*/*/voidopen()chari;delay_ms(200);init1();sendcd(0,0x80); /设置显示位置为第一行 for(i=0;i<16;i+) sendcd(1,DIS1i); delay_ms(20); sendcd(0,0x90); /设置显示位置为第二行

27、 for(i=0;i<16;i+) sendcd(1,DIS2i); delay_ms(0); sendcd(0,0x88); /设置显示位置为第三行 for(i=0;i<16;i+) sendcd(1,DIS3i); delay_ms(0); sendcd(0,0x98); /设置显示位置为第四行 for(i=0;i<16;i+) sendcd(1,DIS4i); delay_ms(0); delay_ms(8000);ge=11,p1=11,p=11;lcd12864(ge,p1,p); /* 忙信号*/*/bitlcdbusy()bitbusy;RS=0;RW=1;EN

28、=1;disnop(); busy=(bit)(P0&0x80);EN=0;return(busy); /*发送数据或指令*/*/voidsendcd(bitcom,uchardat)while(lcdbusy(); RS=com;RW=0;EN=0;P0=dat;disnop();EN=1;disnop();EN=0; /* 12864初始化*/*/voidinit1()PSB=1;RST = 0; /液晶复位 delay_ms(3); RST = 1; delay_ms(3);sendcd(0,0x34);delay_ms(5);sendcd(0,0x30);delay_ms(5)

29、;sendcd(0,0x0c);delay_ms(5);sendcd(0,0x01);delay_ms(5);sendcd(0,0x10);delay_ms(5);sendcd(0,0x06);delay_ms(5); /*重新载入12864初始界面*/*/voidresetlcd()uchari;sendcd(0,0x80);for(i=0;i<32;i+)sendcd(1,tabi);delay_ms(1); sendcd(0,0x90);for(i=32;i<64;i+)sendcd(1,tabi);delay_ms(1); /若没延时重启会出现乱码 /* 12864结果显示

30、*/*/voidlcd12864(uchar outa,uchar outb,uchar outc)/delay_ms(100);/看情况这儿要不要sendcd(0,0x01);resetlcd();sendcd(0,0x93);sendcd(1,tab2outa);sendcd(1,tab210);sendcd(1,tab2outb);sendcd(1,tab2outc); /*显示错误*/*/voidwarning1(biti)ucharj=0;sendcd(0,0x01);delay_ms(5); sendcd(0,0x92);for(j=0;j<10;j+)sendcd(1,wa

31、rningi*10+j);delay_ms(1);return; /*接受信号后的中断*/*/voidint0()interrupt0 /装载中断服务程序INT0nosign=0;TR1=0; /*未收到信号的中断*/*/voidinterr()interrupt3/当计数器满却没收到回复时,显示错误 TR1=0;if(P3_3) warning1(1);delay_ms(8000);ge=11,p1=11,p=11;lcd12864(ge,p1,p);delay_ms(1);next0=1;delay_ms(20000); /防止未收到的信号对下次产生干扰/*显示状态*/*/voidstat

32、e()sendcd(0,0x8d);if(P3_3)sendcd(1,tab10);sendcd(1,tab11);elsesendcd(1,tab12);sendcd(1,tab13);sendcd(0,0x9a );if(!P3_4)sendcd(1,tab14);sendcd(1,tab15);elsesendcd(1,tab16);sendcd(1,tab17);/*主函数*/*/void main()init();open();sta te();test();延时程序delay:由于一句c语句会耗费多个机器周期的时间,因此不方便定时发射40KHZ左右的方波。所以我们采用汇编来进行延时,每隔13个机器周期输出端口取一次反,从而发出42KHZ左右的方波。?PR?DELAY SEGMENT CODE; PUBLIC DELAY; RSEG ?PR?DELAY; DELAY:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论