截图
简介
这是一个关于高精度超声波测距仪的设计报告和实现答辩介绍PPT,主要介绍了超声测距技术方案分析、超声波测距系统硬件部分设计、超声波测距系统软软部分设计、系统实现与检验等内容。超声波测距是一种传统而实用的非接触测量方法,和激光、涡流和无线电测距方法相比,具有不受外界光及电磁场等因素的影响的优点,在比较恶劣的环境中也具有一定的适应能力,且结构简单,成本低,因此在工业控制、建筑测量、机器人定位方面得到了广泛的应用。但由于超声波传播声时难于精确捕捉,温度对声速的影响等原因,使得超声波测距的精度受到了很大的影响,限制了超声测距系统在测量精度要求更高的场合下的应用。距离是在不同的场合和控制中需要检测的一个参数,测距成为数据采集中要解决的一个问题。而由于超声波的速度相对光速小的多,其传播时间比较容易检测,并且易于定向发射,方向性好,强度好控制,因而人类采用仿真技能利用超声波测距。超声波测距是一种利用超声波特性、电子技术、光电开关相结合来实现非接触式距离测量的方法。因为它是非接触式的,所以它就能够在某些特定场合或环境比较恶劣的情况下使用。比如要测量有毒或有腐蚀性化学物质的液面高度或高速公路上快速行驶汽车之间的距离。如油库和水箱液面的精确测量和控制,物体内气孔大小的检测和机械内部损伤的检测等,欢迎点击下载高精度超声波测距仪的设计报告和实现答辩介绍PPT哦。
高精度超声波测距仪的设计报告和实现答辩介绍PPT是由红软PPT免费下载网推荐的一款答辩PPT模板类型的PowerPoint.
超声波测距仪的设计与实现
专业: 应用物理系
姓名:
指导教师:
1.1 选题背景及意义
超声波测距是一种传统而实用的非接触测量方法,和激光、涡流和无线电测距方法相比,具有不受外界光及电磁场等因素的影响的优点,在比较恶劣的环境中也具有一定的适应能力,且结构简单,成本低,因此在工业控制、建筑测量、机器人定位方面得到了广泛的应用。但由于超声波传播声时难于精确捕捉,温度对声速的影响等原因,使得超声波测距的精度受到了很大的影响,限制了超声测距系统在测量精度要求更高的场合下的应用。距离是在不同的场合和控制中需要检测的一个参数,测距成为数据采集中要解决的一个问题。而由于超声波的速度相对光速小的多,其传播时间比较容易检测,并且易于定向发射,方向性好,强度好控制,因而人类采用仿真技能利用超声波测距。超声波测距是一种利用超声波特性、电子技术、光电开关相结合来实现非接触式距离测量的方法。因为它是非接触式的,所以它就能够在某些特定场合或环境比较恶劣的情况下使用。比如要测量有毒或有腐蚀性化学物质的液面高度或高速公路上快速行驶汽车之间的距离。如油库和水箱液面的精确测量和控制,物体内气孔大小的检测和机械内部损伤的检测等。
1.2 本设计相关说明
根据设计要求并综合各方面因素,可以采用AT89S52单片机作为主控制器,超声波驱动信号用单片机的定时器完成,其中硬件部分主要由单片机主系统及超声波发射模块、超声波接受模块、温度补偿模块、语音播报模块、LCD显示模块几部分组成。采用AT89S52来实现对各个子模块的控制。由单片机计数器所计的数据就是超声波所经历的时间,结合超声波声速通过换算就可以得到传感器与障碍物之间的距离,并将距离和温度补偿模块所测得的环境温度在LCD屏幕上予以显示。软件部分主要有主程序、超声波发生子程序、超声波接收中断程序及显示子程序。
项目概述
2.1 超声与超声的特性
声音是与人类生活紧密相关的一种自然现象。当声的频率高到超过人耳听觉的频率极限(根据大量实验数据统计,取整数为20000赫兹)时,人们就会觉察不出周围声的存在,因而称这种高频率的声为“超”声。
超声波的特性有:
(1)束射特性
由于超声波的波长短,超声波射线可以和光线一样,能够反射、折射,也能聚焦,而且遵守几何光学上的所有定律。即超声波射线从一种物质表面反射时,入射角等于反射角,当射线透过一种物质进入另一种密度不同的物质时就会产生折射现象,也就是要改变它的传播方向,两种物质的密度差别愈大,则折射率也愈大。
(2)吸收特性
声波在各种介质中传播时,随着传播距离的增加,其强度会逐渐减弱,这是因为介质要吸收掉它的部分能量。对于同一介质,声波的频率越高,介质吸收就越强。对于一个频率一定的声波,在气体中传播时吸收尤为历害,在液体中传播时吸收就比较弱,在固体中传播时吸收是最小的。
(3)超声波的能量传递特性
超声波之所以能在各个工业部门中得到广泛的应用,主要原因还在于比声波具有强大得多的功率。为什么有这么强大的功率呢。因为当声波进入某一介质中时,由于声波的作用使物质中的分子也随之振动,振动的频率和声波频率—样,分子振动的频率决定了分子振动的速度。频率愈高速度愈大。物资分子由于振动所获得的能量除了与分子本身的质量有关外,主要是由分子的振动速度的平方决定的,所以如果声波的频率愈高,也就是物质分子愈能得到更高的能量。超声波的频率比普通声波要高出很多,所以它可以使物质分子获得很大的能量;换句话来说,超声波本身就可以供给物质分子足够大的功率。
(4)超声波的声压特性
当声波进入某物体时,由于声波振动使物质分子相互之间产生压缩和稀疏的作用,将使物质所受的压力产生变化。由于声波振动引起附加压力现象叫声压作用。
2.2 超声测距原理
最常用的超声测距的方法是回声探测法,超声波发射器向某一方向发射超声波,在发射时刻的同时计数器开始计时,超声波在空气中传播,途中碰到障碍物面阻挡就立即反射回来,超声波接收器收到反射回的超声波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物面的距离S,即:S=340t/2。
由于超声波也是一种声波,其声速V与温度有关。V=331.4+0.607T在使用时,如果传播介质温度变化不大,则可近似认为超声波速度在传播的过程中是基本不变的。如果对测距精度要求很高,则应通过温度补偿的方法对测量结果加以数值校正。声速确定后,只要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的基本原理。
3.1 概述
整体电路的控制核心为单片机AT89S52。另外还有温度测量电路测量当时的空气温度,等到把数据送到单片机后使用软件对超声波的传播速度进行调整,使测量精度能够达到要求。整体结构图包括超声波发射电路,超声波接收电路,单片机电路,显示电路,语音播报电路和温度补偿电路等几部分模块组成。单片机控制发射模块发出40kHZ的超声波信号并开始记时,通过超声波发射器输出超声波信号;超声波接收器将接收到的超声波返回信号送至接收模块,经处理后,送至中断信号至单片机,单片机启动中断程序,测得时间为t,再由软件进行判别、计算和修正,得出距离数并送LCD显示。显示内容包含当前温度值和所测距离。
3.2 单片机处理单元
单片机正常工作时,都需要一个时钟电路和一个复位电路来构成单片机的最小系统。时钟电路用于产生单片机工作时所需的时钟信号,其有两种时钟方式:外部时钟和内部时钟。外部始终是使用外部振荡脉冲信号,常用于多片单片机同时工作,以便于同步。本设计只有一片单片机,采用内部时钟方式。AT89S52内部有一个可控制的负反馈反向大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与反馈元件的片外石英晶体或陶瓷谐振器构成一个自激振荡器。外接晶体以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容值虽然没有严格的要求,但是电容的大小多少会影响振荡器频率的高低、震荡器的稳定性、快速性以及温度稳定性。出于对测距精度的考虑,本设计采用12MHZ的晶体振荡器,c1和c2的电容值约为100PF。
复位是单片机的初始化操作,只要RST引脚出至少保持两个机器周期的高电平就可以实现复位。在RST端出现高电平后的第二个周期,执行内部复位,以后每个周期重复一次,直至RST端变低。单片机的复位电路有两种:上电复位和手动复位。本设计采用手动复位方式。当按下复位按钮时,电容迅速放电,使RST端迅速变为高电平,复位按钮松开后,电容通过电阻充电,逐渐使RST端恢复低电平。
3.3 发射模块
超声波发射部分是为了让超声波发射换能器TCT40-16T能向外界发出40 kHz左右的方波脉冲信号。发射模块的核心是MAX232集成块。由于单片机端口输出功率不够,故需要通过发射模块来实现推动超声波发射探头工作的效果,通过编程由单片机P3.1端口输出脉冲信号至发射模块,发射模块随即控制超声波发射器TCT40-16T以将超声波发射到空气中。
资料
3.4 接收模块
TCT40-16T发射的超声波在空气中传播,遇到障碍物就会返回,返回的部分有超声波接收器接收。超声波接收部分是为了将反射波(回波)顺利接收到,超声波接收换能器TCT40-16R将接收到的反射波转换变成电信号,并对此电信号进行放大、滤波、整形等处理后得到一个负脉冲送给单片机的3.2(INT0)引脚,以产生一个中断。 在这里我采用的是集成电路CX20106A,这是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38KHz与测距超声波频率40KHz较为接近,可以利用它作为超声波检测电路。实验证明其具有很高的灵敏度和较强的抗干扰能力。
3.5 语音播报模块
3.6 温度补偿模块
DS18B20是美国DALLS公司推出的温度传感器芯片。为提高测距精度,采用温度检测电路。温度测量电路是基于DS18B20单线式数字温度传感器,电路非常简单,可直接将其DS-D端与单片机P3.3口(详见图3.6)相连。利用温度检测电路实时的测量环境温度T并将结果送至单片机,单片机分析计算超声波的修正后速度。
4.1 概述
超声波测距仪的软件设计主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序组成。采用C语言编程,翻译成汇编语言写入单片机。
4.2 发射程序和接收中断程序
void send()//脉冲波发送
{
uchar i;
TH0=0;
TL0=0;//清定时0
TR0=1;//开定时0
ET0=1;
for(i=0;i<10;i++)
{
sg=~sg;//超声波发送引脚
_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();
_nop_();_nop_();_nop_();
}
sg=1;
delay(36);
EX0=1; //开外部中断
}
void rec() interrupt 0 using 2
{
Tout=0; //超时标志
flag=1; //外部中断标志位
TR0=0; //关定时器0
ET0=0;
EX0=0;
time=256*TH0+TL0;
}
void TimeOut(void) interrupt 1 using 2
{
Tout=1;
flag=0;
TR0=0;
ET0=0;
}
4.3 通过温度修正速度程序
uint get_temp()
{float wendu;
init18b20();
wr18b20(0xcc);
wr18b20(0x44);
init18b20();
wr18b20(0xcc);
wr18b20(0xbe);
temp_data[0]=read18b20();
temp_data[1]=read18b20();
tvalue=temp_data[1];
tvalue<<=8;
tvalue|=temp_data[0];
if(tvalue<0x0fff)
tflag=0;
else
{tvalue=~tvalue+1;
tflag=1;
}
wendu=tvalue*(0.625);
tvalue=wendu*100;
return(tvalue);
}
float computerv(void)
{float v;
v=331.4+0.607*tvalue/1000;
return(v);
}
4.4 主程序
{ ulong s;
uchar flag1;
TMOD=0x11;//定时0方式1
TH0=0;
TL0=0;//清定时值;//EX0=1;//开外部中断0
IT0=1;//外部中断0下降沿触发
EA=1; //开总中断
lcd_init();
flag=0;
while(1)
{ flag1=1;
if(flag1==1)
{ tvalue=get_temp();
display2(tvalue);
print(1,1,"温度:");
printstr(4,1,disbuft,7);
c=computerv();
send();
while(Tout==0)
{if(flag==1)
{s=computers(c);
if(s<1462)
{print(3,2,"盲区");
sound_play3();}
else
{display(s);
print(1,2,"前方距离:");
printstr(3,3,distance,7);
sound_play1();
sound_play2();}
flag=0;
while(1);}}
if(Tout==1)
{Tout=0;ErrorDisplay(); }
}
}
5.1 硬件实物组图
5.2 功能测试
测试结果表
5.3 误差分析
1.发射接收时间误差
2.实际声速获得上的误差
3.测试过程中出现的误差
谢谢观看
展开