资源预览内容
第1页 / 共10页
第2页 / 共10页
第3页 / 共10页
第4页 / 共10页
第5页 / 共10页
第6页 / 共10页
第7页 / 共10页
第8页 / 共10页
第9页 / 共10页
第10页 / 共10页
亲,该文档总共10页全部预览完了,如果喜欢就下载吧!
资源描述
基于单片机的超声波测距控制系统1、总体方案设计本文所研究的超声波测距仪利用超声波指向性强、能量消耗缓慢、传播距离较远等优点,即用超声波发射器向某一方向发送超声波,同时在发射的时候开始计时,在超声波遇到障碍物的时候反射回来,超声波接收器在接收到反射回来的超声波时,停止计时。设超声波在空气中的传播速度为V,在空气中的传播时间为T,汽车与障碍物的距离为S,Error! No bookmark name given.S=VT/2,这样可以测出汽车与障碍物之间的距离,然后在LED显示屏上显示出来。其工作机理是依据压电材料的正逆压电效应,利用逆压电效应产生超声波,即逆压电效应是在压电材料上加上某种特定频率的交变正弦信号,材料就会产生随所加电压的变化规律而变化的机械形变,这种机械形变推动周围介质振动,产生疏密相间的机械波,如果其振动频率在超声范围内,这种机械波就是超声波。本文所设计的超声波测距仪主要由AT89C52单片机、超声波发射电路、超声波接收放大电路、显示电路。首先由单片机驱动产生12MHZ晶振,由超声波发射探头发送出去,在遇到障碍物反射回来时由超声波接收探头检测到信号,然后经过滤波、放大、整形之后送入单片机进行计算,把计算结果输出到LED液晶显示屏上。它们所产生的超声波的频率,功率和声波特性各不相同,因而用途也各不相同。目前在近距离测量方面较为常用的是压电式超声波换能器。根据设计要求并综合各方面因素,本例决定采用AT89C51单片机作为主控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完成。超声波测距器系统设计如图1所示。单片机AT89C51发射电路超声波换能器障碍物 计时LED显示接收电路超声波换能器图1 超声波测距器系统设计框图主程序流程图:计算距离显示结果开始系统初始化发送超声波脉冲等待反射超声波 图22、具体电路设计2.1 系统硬件设计系统由AT89S51单片机、超声波发射电路、接收放大电路及显示电路组成。AT89S51单片机是整个系统的核心部件,用来协调各部件的工作,单片机采用AT89C51或其兼容系列。采用12MHz高精度的晶振,以获得较稳定时钟频率,减小测量误差。先由单片机控制的振荡源产生40kHz的频率信号以驱动超声波换能器,持续发射超声波20ms。当第一个超声波脉冲发射后,计数器开始计数,在检测到第一个回波脉冲的瞬间,计数器停止计数,这样就能够得到从发射到接收的时间差t;根据所采集到的数据最终利用单片机计算出被测距离,并由显示器显示出来,显示电路采用简单实用的4位共阳LED数码管,段码用74LS244驱动,位码用PNP三极管9012驱动。测距电路的输出端接单片机中断端口,中断源的识别由程序查询来处理。在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,INT0出现低电平,立即产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离。并将测距成功标志位赋值1。当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志赋值0,表示本次测距不成功。2.2 超声波发生电路超声波发射电路主要由超声波换能器和反向器74LS04构成,单片机P1.0端口输出的40KHz方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推挽形式将方波信号加到超声波换能器两端可以提高超声波的发射强度。输出端采用两个反向器并联,用以提高驱动能力。上拉电阻R1、R2一方面可以增加超声波换能器的阻尼效果,以缩短其振荡的时间,提高反向器74LS04输出高电平的驱动能力;另一方面可以提高反向器74LS04输出高电平的驱动能力。超声波发射原理图如图3所示。图32.3 超声波接收电路集成电路CX20106A是一款红外线检波接收的专用芯片,常用于电视机的红外接收器。因为红外遥控常用的载波频率38KHz与测距的超声波频率40KHz比较接近,所以本设计利用它制作超声波检测接收电路,如图3所示。实验证明,用CX20106A超声波(无信号时输出高电平)具有很高的灵敏度和较强的抗干扰能力。适当改变电容C1的大小,可以改变接收电路的灵敏度和抗干扰能力。 2.4 数据显示电路显示电路采用简单实用的4位共阳LED数码管,断码用74LS244驱动,位码用PNP三极管9012驱动。由P0口输出显示数据,P2.0P2.3用来位选。2.5 单片机测距原理本设计采用超声波渡越时间检测法。其原理为:检测从超声波发射器发出的超声波,经气体介质的传播到接收器的时间,即渡越时间。渡越时间与气体中的声速相乘, 就是声波传输的距离。考虑实际情况,采用异地脉冲反射式来测距,即需测距离是声波传输距离的一半。测出发射和接收回波的时间差t,然后求出距离S。在速度V已知的情况下,距离S的计算公式如下:S=V*t/2限制该系统的最大可测距离存在4个因素:超声波的幅度、反射的质地、反射和入射声波之间的夹角以及接收换能器的灵敏度。接收换能器对声波脉冲的直接接收能力将决定最小的可测距离。为了增加所测量的覆盖范围、减小测量误差,可采用多个超声波换能器分别作为多路超声波发射接收的设计方法。3、整体电路设计图44、软件程序设计超声波测距器的软件设计主要由主程序,超声波发生子程序,超声波接收中断程序及显示子程序组成,由于C语言程序有利于实现较复杂的算法,汇编语言程序则具有较高的效率并且容易精确计算程序行动的时间,而超声波测距器的程序既有较复杂的计算(计算距离时),又要求精确计算程序运行时间(超声波测距时),所以控制程序可采用C语言和汇编语言混合编程。下面对超声波测距器的算法,主程序,超声波发生子程序和超声波接收中断程序逐一介绍。4.1 主程序主程序流程图:计算距离显示结果开始系统初始化发送超声波脉冲等待反射超声波图5程序首先要对系统环境初始化,设置定时器T0工作模式为16位定时/计数器模式,置位总中断允许位EA并对显示端口P0和P2清0;然后调用超声波发生子程序送出一个超声波脉冲。为了避免超声波从发射器直接传到接收器引起的直射波,需要延时约0.1ms(这也就是超声波测距器会有一个最小可测距离的原因)后才可打开外中断0接收返回的超声波信号。由于采用的是12MHz的晶振,计数器每计一个数就是1us,所以当主程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按式(32)计算,即可得被测物体与测距器之间的距离。设计时取20时的声速为344m/s,则有d=(vt)/2=(172T/10000)cm (32)其中:T为计数器T0的计数值。测出距离后,结果将以十进制BCD码方式送往LED显示约为0.5s,然后再发超声波脉冲重复测量过程。图5所示为主程序流程图。4.2 超声波发生子程序和超声波接收中断程序 超声波发生子程序的作用是通过P1.0端口发送两个左右的超声波脉冲信号(频率40KHz的方波),脉冲宽度为12us左右,同时把计数器T0打开进行时。超声波发生子程序较简单,但要求程序运行时间准确,所以采用汇编语言编程。ORG 0000H LJMP START ORG 0003H LJMP PINT0 ORG 000BH LJMP INTT0 ORG 0013H RETI ORG 001BH LJMP INTT1 ORG 0023H RETI ORG 002BH RETI超声波测距器主程序利用外中断0检测返回超声波信号,一旦接收到返回超声波信号(即INT0引脚出现低电平),立即进入超声波接收中断程序。进入该中断后,就立即关闭计时器T0,停止计时,并将测距成功标志字赋值1。-中断程序-INTT0: CLR EA CLR TR0 MOV TH0,#00H MOV TL0,#00H SETB ET1 SETB EA SETB TR0 ;启动计数器T0,用以计算超声来回时间 SETB TR1 ;开启发超声波用定时器T1OUT: RETIINTT1: CPL VOUT DJNZ R4,RETOUT CLR TR1 ;超声波发完毕,关T1 CLR ET1 MOV R4,#04H SETB EX0 ;开启接收回波中断RETIOUT: RETIPINT0: CLR TR0 ;关计数器 CLR TR1 CLR ET1 CLR EA CLR EX0 MOV 44H,TL0 ;将计数值移入处理单元 MOV 45H,TH0 SETB 00H ;接收成功标志 RETI如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志字赋值2,以表示本次测距不成功。5、设计验证超声波测距仪的制作和调试,其中超声波发射和接收采用15的超声波换能器TCT40-10F1(T发射)和TCT40-10S1(R接收),中心频率为40kHz,在安装时应当要保持两换能器中心轴线平行并相距48cm,其余元件无特殊要求。若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容C4的大小,以获得合适的接收灵敏度和抗干扰能力。 硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。根据实际情况可以修改超声波发生子程序每次发送的脉冲宽度和两次测量的间隔时间,以适应不同距离的测量需要。根据所设计的电路参数和程序,测距仪能测的范围为0.210m,测距仪最大误差不超过5cm。系统调试完后应对测量误差和重复一致进行多次实验分析,不
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号