一种基于单片机设计的高精度超声波测距系统的改进

发布者:PeacefulSoul最新更新时间:2014-01-07 来源: eefocus关键字:超声波测距  收发一体  回波包络 手机看文章 扫描二维码
随时随地手机看文章
在现代工业生产过程中,利用超声波进行近距离非接触式测量越来越广泛,例如液位的测量、煤层的测厚、机器人定位、辅助视觉系统、车辆的定位与导航、汽车防撞雷达、井深及管道长度测量等方面。根据超声波纵向分辨力高、对色彩和光照度不敏感、抗电磁干扰能力强等特点,可以设计出精度较高的超声波测距系统,应用于漫反射差和有毒等恶劣环境中。但传统的超声波测距仪由于采用固定阈值的比较器比较输出,测量精度普遍较低[1]。本文从回波信号处理的角度出发,分析了超声波回波曲线的特性,利用回波包络的峰值检测以确定回波到达时刻的方法,并介绍一种以89C52单片机为核心、具有自动增益控制和峰值包络检测、高精度的收发一体式超声波测距系统的硬件电路和软件设计。

1 回波信号包络研究

传统的利用固定电平判断回波到达时刻的超声波测距方法存在较大误差。针对这种误差提出的可变阈值的超声波测距方法,由于干扰信号的存在,超声波测距主芯片会产生误判回波时刻的到来,从而导致测量数据不准确。

超声传感器通过压电晶片的逆效应——电致伸缩,在空气介质中产生超声波。测距所用超声波一般都是以间断的高压单脉冲发射,每测距一次,需要发射、接收一次。所以在测距脉冲的发射过程中,传感器晶片经历了起震、加强和衰减三种状态,并产生多个谐振周期的超声波;接收过程中,传感器晶片在多个谐振周期的超声脉冲作用下,通过压电效应在晶片两端产生起伏电压。厦门大学的童峰等研究了单脉冲发射时超声回波的起伏特性,并根据声的发射、反射理论及应用力——声类比,推导出了理想条件下的测距回波包络曲线方程[2]。在此理论基础上,通过大量实验,每次发射1个脉冲宽度为时间?子的脉冲,来验证这种超声波回波起伏特性。图1为通过放大、带通滤波、AGC电路以后,用Tektronix数字存储示波器存储得到的回波波形。


可以验证:超声回波在脉宽时间处,电压峰值达到最大,和童峰的理论分析基本吻合,这也为本文应用在判断回波到达时刻的处理方法提供了理论和事实依据。根据上述对超声回波波形特性的分析,本文提出了一种确定回波到达时刻的思路:在接收电路中加入精密的绝对值转换电路,把回波信号的负电压翻转为正电压,然后通过检波电路,对波形进行包络,接着输入到微分电路,求出包络曲线的峰值点,再通过过零检测电路,向单片机发出外部中断信号,停止计数器计时。单片机在发射完1个脉冲后,启动内部计数器计时到外部中断触发计数器停止计时,这段时间即为超声波脉冲的渡越时间t。

2 超声波测距原理及系统组成

超声波测距是借助于超声脉冲回波渡越时间法来实现的。设超声波脉冲由传感器发出到接收所经历的时间为t,超声波在空气中的传播速度为c,则从传感器到目标物体的距离d可用下式求出:


从式(1)可知,只要知道超声波在空气中的传播速度c,则测出传播声时t就可求出传感器到目标物体的距离d。本超声波测距系统原理框图如图2所示。

 

 


该系统由ATMEL公司生产的AT89C52单片机、超声波发射电路、发射接收转换电路、接收前置放大电路、带通滤波电路、自动增益控制(AGC)电路、绝对值变换电路、检波电路、过零检测电路、环境温度采集电路、E2PROM存储电路、显示电路和超声波传感器组成。AT89C52单片机为整个系统的核心部件,协调各部分电路的工作。传感器选用TCF40-16型收发一体式超声波传感器,谐振频率为40kHz;单片机产生脉冲信号,经三极管和变压器放大后,通过发射接收转换电路驱动超声波传感器;每次发射1个脉冲,当脉冲发射后,启动计数器开始计数;回波信号经过发射驱动接收转换电路、前置放大电路、带通滤波电路、自动增益控制(AGC)电路、绝对值变换电路、检波电路、过零检测电路后输入AT89C52单片机中,触发外部中断,单片机AT89C52停止计数器计数并计算出渡越时间t;环境温度采集电路将现场温度数据送到单片机中,通过计算来补偿声速,最后利用公式(1)计算出距离,并由显示电路显示出来。

3 系统硬件电路设计

3.1 超声波发射驱动及接收转换电路

本系统的发射驱动及接收转换电路如图3所示。

 

 


工作原理为:由AT89C52单片机产生40kHz的TTL脉冲信号通过P1.0输出,再经过三极管Q1和变压器TR1进行功率放大,在变压器副线圈上将电压10倍放大,这时换能器上加载的正弦电压幅值约为100V。在变压器TR1原线圈上,串联了限流电阻R2;变压器TR1副线圈上,R3是与超声波换能器进行阻抗匹配的电阻,在副线圈导通时,由于加在换能器上的电压很大(100V),接地的两个反向并联的二极管对后面接收电路的前置放大电路输入端进行钳位,使其电压最大不超过0.7V,以免前置放大电路的输入端电压因为过高而发生阻塞。

超声波在空气中传播,遇到目标物体反射的回波信号加载到超声波换能器上,换能器由于压电效应产生微弱电压信号,输出的这种回波信号是mV级的电压信号。由于二极管的导通电压为0.7V,回波信号不能经过两个反向并联的IN4148和变压器副线圈构成回路,只能经过电阻R4、电容C3送入前置放大电路的输入端。

3.2 自动增益控制(AGC)电路

超声波回波信号随着被测距离的变化,其幅值变化也很大,必须经过增益控制,以满足整形电路的要求。实现增益随时间呈指数变化的AGC电路有多种,本文设计了通过软、硬件结合的AGC电路,它由可编程放大器AD620AN、数字电位器MAX5400结合单片机联合实现。

AD620AN是一种电阻可编程放大器,内部由三运放组成,具有很高的精度和共模抑制比。增益范围为1~1000,由管脚1、8之间的电阻调节。增益公式为:

MAX5400是一种具有256抽头的数字电位器,端-端阻值为,温度系数小于5ppm/℃,并带有SPI接口。在本文中管脚3、4、5与单片机相连,实现电阻阻值的变化,管脚1、8与AD620AN的1、8端相连,从而实现增益的调节。[page]

事先通过实验,在0~3米的距离内,每隔30厘米测量一次,把较为理想的放大倍数换算成数字电位器的抽头位置,并把这些位置参数列表并固化到E2PROM中。单片机以计时器中断的方式来设置增益,到了一定时刻就由内部定时器产生一次中断,中断服务子程序通过查表方式获得对应的增益,然后通过SPI接口设置对应增益。

3.3 温度补偿

超声波在固体中传播速度最快,在气体中传播速度最慢,而且声速c与温度有关[3]。如果环境温度变化显著,必须考虑温度补偿问题。空气中声速与温度的关系可以表示为:

 

 

式中,T为环境摄氏温度℃。

为了提高系统的测量精度,本文设计了温度补偿电路。系统采用数字温度计DS1820采集温度。DS1820是美国DALAS公司推出的单线串行数字温度计,可直接与单片机连接,并且接线形式简单[4],测量范围为-55~+125℃,在-10~+85℃范围内测量精度为0.5℃。传感器输出的是用9位二进制编码表示的温度值。根据实际温度的值,利用公式(3)可计算补偿声速。

3.4 绝对值变换和包络电路

本系统的绝对值变换和包络电路原理图如图4所示。

 

 


绝对值变换电路中,当输入信号Vin为负时,D7导通,U13B为倒相放大器;Vin为正时,D8导通,U13A为非倒相放大器。无论输入信号的电压极性如何,其输出总是正电压,且幅值不变[5]。如前所述,回波信号经过绝对值变换电路以后,负电压被翻转为正电压,且频率倍增,然后通过二极管D9、电容C56组成的检波电路对新波形进行包络。根据超声波回波起伏特性,频率倍增后包络曲线更加平滑。在本电路中,检波电路中的电容值要匹配合适,绝对值变换电路中集成运算放大器选用TL082。波形包络原理如图5所示。


3.5 微分电路和过零检测

回波包络信号通过微分电路,电压峰值点处取导数为零,过零检测电路在信号的过零点时刻发送脉冲信号给单片机外部中断INT0,单片机停止计时,从而捕捉到回波信号到达时刻。包络信号微分和过零检测原理如图6所示。


4 系统软件设计

本测距系统软件包括主程序、温度采集子程序、发射子程序、计算子程序、数码显示子程序、外部中断子程序和定时器中断子程序。主程序完成初始化后调用发射子程序,由P1.0口发射1个脉冲,驱动超声波传感器发射超声波,并关外部中断,计数器T0、T1同时开始计时;为防止虚假回波的干扰,在延时一段时间后,开中断,此时判断计数器T1有否溢出中断,单片机根据不同的时间,以查表的方式设置自动增益控制电路的增益;当有外部中断信号时,单片机就停止T0的计时,计算出渡越时间t并存储到E2PROM中;然后调用测温子程序,采集超声波测距时的环境温度,并换算出准确的声速c,存储到E2PROM中;单片机再调用计算子程序,计算出传感器到目标物体之间的距离,最后把测量结果存储并通过数码管电路显示出来,完成一次测量。主程序流程如图7。

 

 


本超声波测距系统采用新的设计方法,并在实验室环境中进行测量,测量精度较高。由于采用收发一体式的测距电路,换能器振子必须在余震消除后才能进行接收,因此该测距系统有很大的盲区。因为电路的延迟及包络峰值点后移,导致测量计时有所增大,进而导致测量数据的偏大。本系统采用前置放大器、AGC电路、过零检测等电路对接收信号进行处理,取得了良好的效果。在近距离测量范围内,这种方法可以达到厘米级。

关键字:超声波测距  收发一体  回波包络 引用地址:一种基于单片机设计的高精度超声波测距系统的改进

上一篇:基于单片机设计调试的数字式指针温度计
下一篇:多功能发动机转速模拟器设计

推荐阅读最新更新时间:2024-03-16 13:33

一种智能汽车防撞报警器的设计开发
   摘 要:设计并开发了应用于汽车的防撞系统。基于超声波原理,防撞系统通过发射和接收超声波信号,测算出时间差,再利用控制系统换算成距离,判断处理。该系统采用发生器电路、换能器、线性功率放大器。另外,系统采取了三个防干扰措施。由于防干扰措施的实施,使系统能在工业现场中有较小的稳态误差,有效防止了碰撞事故的发生。 0 引 言   汽车防撞报警器的核心部件是汽车防撞雷达。汽车防撞雷达(俗称电子眼)之所以能实现防撞报警功能,主要有超声波这把无形尺子,它测量最近障碍物的距离,并告知车主。超声测距原理简单:它发射超声波并接收反射回波,通过单片机计数器获得两者时间差t,利用公式S=Ct/2计算距离(S为汽车与障碍物之间的距离;C为声波在
[汽车电子]
一种智能汽车防撞报警器的设计开发
超声波测距电路+汇编程序
我现在在做超声波测距,用的是非门 + CX20106A方案。发射部分用非门驱动,如下: (原文件名:超声波发射电路原理图.gif) 我手上没有74ALS04或74LS04,所以用74HC04和HCF4069UBE代替。 超声波接收采用CX20106A,如下: (原文件名:接收电路 .jpg) 我用的CX20106A是拆机件。 用万用板搭好电路之后,在网上找到了一些参考汇编程序,我修改后可以通过串口发到PC显示超声波往返的时间: ;/////////////////////////////////////////////////////// ; USE BY :超声波测距器
[单片机]
<font color='red'>超声波测距</font>电路+汇编程序
基于AT89S52单片机的超声波测距系统电路设计
  超声波是一种频率在20KHz 以上的机械波,在空气中的传播速度约为340 m/s(20 C时)。超声波可由超声波传感器产生,常用的超声波传感器两大类:一类是采用电气方式产生超声波,一类是用机械方式产生超声波,目前较为常用的是压电式超声波传感器。由于超声波具有易于定向发射,方向性好,强度好控制,对色彩、光照度不敏感,反射率高等特点,因此被广泛应用于无损探伤,距离测量、距离开关、汽车倒车防撞、智能机器人等领域。   本设计的整体框图如图所示,主要由超声波发射,超声波接收与信号转换,按键显示电路与温度传感器电路组成。超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差T,然后求出距离S=CT/2,
[单片机]
基于AT89S52单片机的<font color='red'>超声波测距</font>系统电路设计
基于换能器解卷积的高精度超声波测距系统
    摘要: 针对窄带超声换能器对测距精度影响,采用基于横向滤波器的解卷积处理方法扩展了接收信号带宽,并利用LMS算法进行解卷积滤波器的构造。实验结果表明,这种处理方案有效提高的系统的测距精度。     关键词: 超声波测距 解卷积 LMS算法 超声测距系统由于具有不受光线烟雾影响、抗电磁干扰能力强、距离信息直观、成本低、使用方便等特点,广泛应用于液位物位测量、位置角度跟踪、移动机器人定位等场合 。为了进一步用于需要高的测距、定位精度的场合,国内外提出了多种高精度超声波测距处理方法 。这些处理方法更多地针对接受到的超声信号,没有考虑到超声换能器对测距精度的影响。在“移动机器人超声导航传感器” 和863项目“超
[嵌入式]
泛华测控受邀参加第12届国际电子测量与仪器学术会议
近日,由中国电子学会、IEEE Beijing Section主办的第12届国际电子测量与仪器学术会议(12thICEMI)在青岛落下帷幕,北京中科泛华测控技术有限公司(简称:泛华测控)作为受邀企业全程参与了会议。 本着“产学研”合作的目的,泛华测控现场向参会嘉宾展示了适用于教学演示用的“多功能数据采集仪”,该产品在教学中可通过直观的数据和动态图像的变化,轻松实现电压采集、电压输出、电流输出、温度采集、超声波测距等测试项目的演示,吸引了众多高校师生的目光。   泛华测控多功能数据采集仪   会议期间,泛华另一款产品“便携式测振仪”引起了英国剑桥光电子与传感器组教授、主任初大平的兴趣,他来到展位前,认真观看了产品
[测试测量]
51单片机项目设计:超声波测距、智能小车(keil+proteus)
项目展示: 仿真展示 : 一、项目要求 (一)项目内密 本课题的主要内容是,将超声波传感器安装在一台沿直线行走的小车上,由AT89C51 控制超声波传感器,发出超声信号,记录超声液从发射到接收的所需要的时间,得到其与|被测物体之间的能离。在小车行走的过程中,不断重复测距,得到一组距离数据。由单片机记录测得的距离,经过数据处理,将其显示在液晶屏上。同时,将一组距离数据,由串口传到上位机,由VB程序保存距离数据,并画出曲线,就得到了被测物体的单边轮廓。 (二)课题研究方需 超声波测距仪系统主要由单片机最小系统、超声波模块、LCO显示电路及电源电路组成。系统的主要功能如下: 超声波传感器发射和接收超声波,依据计时
[单片机]
51单片机项目设计:<font color='red'>超声波测距</font>、智能小车(keil+proteus)
基于STC51单片机超声波测距
基于STC51单片机超声波测距精简设计只需三个元件(测距模块暂且算做是一个元件吧) 1.所需元件:STC单片机+超声波模块+4位共阳数码管 2.原理:单片机向测距模块trig脚发送20us的高电平触发测距,Echo 测距结束时会输出高电平,电平时长为超声波信号往返时间之和。Echo 脚开始输出高电平时启动定时计数器计时,当Echo 脚高电平结束时停止计数,根据定时器的时间可算出距离。 3.连接:单片机插在面包板上数码管直接插在单片机上面(引脚一一对应见原理图)测距模块trig脚接P5.4Echo 脚接P5.5 实物图 参考C程序代码如下: /*********************************
[单片机]
基于STC51单片机<font color='red'>超声波测距</font>
固定阈值在超声波测距车载中的应用
引言 在超声波测距车载应用中,例如:超声波泊车辅助 (UPA) 和盲点探测 (BSD) 等,系统发射的超声波被周围物体反射回来。系统接收反射波(回波),然后将物体的回波振幅与某个阈值比较,从而实现探测物体的目的。物体越靠近系统,其回波也越强。因此,阈值随时间而变化,是一种相对常见的情况。本文将向您论述,该阈值无需变化,可以保持固定不变。 超声波测距 小轿车中使用的高级驾驶员辅助系统 (ADAS) 便是一种超声波测距应用。安装在车载前后保险杠和后视镜上的超声波传感器发射出超声波,然后接收周围物体反射回来的超声波。超声波的传播时间(飞行时间)用于计算到物体的距离,从而帮助驾驶员泊车:寻找泊车点,或者探测驾驶员盲点区域内的物体。车载前后
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved