at89s51超声波测距报警系统_第1页
at89s51超声波测距报警系统_第2页
at89s51超声波测距报警系统_第3页
at89s51超声波测距报警系统_第4页
at89s51超声波测距报警系统_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

AT89S51超声波测距报警系统摘要超声波具有指向性强,能量消耗缓慢,传播距离较远等优点,所以,在利用传感器技术和自动控制技术相结合的测距方案中,超声波测距是目前应用最普遍的一种,它广泛应用于防盗、倒车雷达、水位测量、建筑施工工地以及一些工业现场。关键词超声波单片机测距报警器1引言超声波测距是利用超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340M/S,根据计时器记录的时间T,就可以计算出发射点距障碍物的距离S,即S340T/2。超声波测距具有指向性强,能量消耗缓慢,传播距离较远等优点,所以,在利用传感器技术和自动控制技术相结合的测距方案中,超声波测距是目前应用最普遍的一种,它广泛应用于防盗、倒车雷达、水位测量、建筑施工工地以及一些工业现场。超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际距离。传感器技术是现代信息技术的主要内容之一。信息技术包括计算机技术、通信技术和传感器技术,计算机技术相当于人的大脑,通信相当于人的神经,而传感器就相当于人的感官。比如温度传感器、光电传感器、湿度传感器、超声波传感器、红外传感器、压力传感器等等,其中,超声波传感器在测量方面有着广泛、普遍的应用。利用单片机控制超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且测量精度较高。本课题详细介绍了超声波传感器的原理和特性,以及ATMEL公司的AT89S51单片机的性能和特点,并在分析了超声波测距的原理的基础上,指出了设计测距系统的思路和所需考虑的问题,给出了以AT89S51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。这种以单片机为核心的超声波测距系统通过单片机记录超声波发射的时间和收到反射波的时间。当收到超声波的反射波时,接收电路输出端产生一个负跳变,在单片机的外部中断源输入口产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离,结果输出给LED显示。利用单片机准确计时,测距精度高,而且单片机控制方便,计算简单,电路设计合理、工作稳定、性能良好、检测速度快、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,许多超声波测距系统都采用这种设计方法。超声波测距系统由单片机主控模块、显示模块、超声波发射模块、接收模块、报警处理模块共五个模块组成。单片机使用51系列AT89S51单片机,该单片机工作性能稳定,同时也是在单片机课程设计中经常使用到的控制芯片。发射电路由单片机输出端直接驱动超声波发送。接收电路使用三极管组成的放大电路,该电路简单,调试工作小较小。超声波测距系统硬件电路的设计主要包括单片机系统及显示电路、超声波发射电路和超声波接收电路、报警输出电路、供电电路等几部分。单片机系统晶振采用12MHZ高精度的晶振,以获得较稳定时钟频率,减小测量误差。单片机用P00端口输出超声波换能器所需的40KHZ的方波信号,P37端口监测超声波接收电路输出的返回信号。显示电路采用简单实用的3位共阳LED数码管,段码输出端口为单片机的P2口,位码输出端口分别为单片机的P02、P03、P04口,数码管位驱运用PNP三极管S9012三极管驱动。所需材料如下超声波测距系统主要应用于汽车的倒车雷达、机器人自动避障行走、建筑施工工地以及一些工业现场例如液位、井深、管道长度等场合。因此研究超声波测距系统的原理有着很大的现实意义。对本课题的研究与设计,还能进一步提高自己的电路设计水平,深入对单片机的理解和应用。2方案论证测距的方法有多种,如超声波测距传感器和激光测距传感器等。激光距离传感器可用于其它技术无法应用的场合。例如,当目标很近时,计算来自目标反射光的普通光电传感器也能完成大量的精密位置检测任务。但是,当目标距离较远内或目标颜色变化时,普通光电传感器就难以应付了。超声波传感器虽然也经常用于检测距离较远的物体,而且由于它不是光学装置,所以不受颜色变化的影响。21方案一激光测距激光在检测领域中的应用十分广泛,技术含量十分丰富,对社会生产和生活的影响也十分明显。激光测距是激光最早的应用之一。这是由于激光具有方向性强、亮度高、单色性好等许多优点。激光测距虽然原理简单、结构简单,但以前主要用于军事和科学研究方面,在工业自动化方面却很少见。因为激光测距传感器售价太高,一般在几千美元,现在国产测距传感器一般你只需要几千RMB(深圳市量子通科技有限公司)。实际上,很多工业用户都在寻找一种能在较远距离实现精密距离检测的传感器。因为许多情况下近距离安装传感器会受物理位置及生产环境的限制,如今的激光测距传感器将为这类场合的工程师排忧解难。激光传感器工作时,先由激光二极管对准目标发射激光脉冲。经目标反射后激光向各方向散射。部分散射光返回到传感器接收器,被光学系统接收后成像到雪崩光电二极管上。记录并处理从光脉冲发出到返回被接收所经历的时间,即可测定目标距离。激光传感器必须极其精确地测定传输时间。激光距离传感器可用于其它技术无法应用的场合。例如,当目标很近时,计算来自目标反射光的普通光电传感器也能完成大量的精密位置检测任务。但是,当目标距离较远内或目标颜色变化时,普通光电传感器就难以应付了。22方案二超声波测距超声波是由机械振动产生的,可在不同介质中以不同的速度传播。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。超声测距是一种非接触式的检测方式。与其它方法相比,如电磁的或光学的方法,它不受光线、被测对象颜色等影响。对于被测物处于黑暗、有灰尘、烟雾、电磁干扰、有毒等恶劣的环境下有一定的适应能力。因此在液位测量、机械手控制、车辆自动导航、物体识别等方面有广泛应用。特别是应用于空气测距,由于空气中波速较慢,其回波信号中包含的沿传播方向上的结构信息很容易检测出来,具有很高的分辨力,因而其准确度也较其它方法为高而且超声波传感器具有结构简单、体积小、信号处理可靠等特点。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求。超声波测距的方法有多种,如相位检测法、声波幅值检测法和渡越时间检测法等。相位检测法虽然精度高,但检测范围有限声波幅值检测法易受反射波的影响;超声波渡越时间检测法简单方便,其原理为检测从超声波发射器发出的超声波,经气体介质的传播到接收器的时间,即渡越时间。渡越时间与气体中的声速相乘,就是声波传输的距离。超声波在空气中的传播速度随温度变化,其对应值如表21,根据计时器记录的时间T见图21,就可以计算出发射点距障碍物的距离S,即SVT/2。表21声速与温度的关系温度3020100102030100声速M/S313319325323338344349386图21超声波测距时序图根据设计要求如下1测量范围小于等于5米;2测量误差小于03CM;3进行温度补偿;4以LED显示,显示温度和距离;利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,故选择了第二种方案,即超声波渡越时间测距检测法。考虑实际情况,采用异地脉冲反射式来测距,即需测距离是声波传输距离的一半测出发射和接收回波的时间差T,然后求出距离。在速度V已知的情况下,距离的计算公式如公式1SVT/2(1)超声波属于声波范围,而声速与温度有密切的关系,因此测量环境温度可以提高测量精度。声速和温度的关系为V3314061TM/S(2)其中T为环境温度。根据以上要求,测距仪的设计方案如下本系统利用单片机控制超声波的发射和对超声波自发射至接收往返时间的计时。系统定时发射超声波,在启动发射电路的同时启动单片机内部的定时器,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波的反射波时,接收电路输出端产生一个负跳变,单片机检测到这个负跳变信号后,停止内部计时器记时,读取时间,计算距离,测量结果输出给LED显示。利用本测距系统测量范围应在40CM599CM,其误差1CM。超声波测距原理图3各电路设计和论证按照系统设计的功能的要求,初步确定设计系统由单片机主控模块、显示模块、超声波发射模块、接收模块共四个模块组成。单片机采用单片机主控芯片使用51系列AT89S51单片机,该单片机工作性能稳定,同时也是在单片机课程设计中经常使用到的控制芯片,采用12MHZ高精度的晶振,以获得较稳定时钟频率,减小测量误差。单片机用P00端口输出超声波换能器所需的40KHZ的方波信号,P37端口监测超声波接收电路输出的返回信号。显示电路采用简单实用的3位共阳LED数码管,段码输出端口为单片机的P2口,位码输出端口分别为单片机的P02、P03、P04口,数码管位驱运用PNP三极管S9012三极管驱动。发射电路由单片机输出端直接驱动超声波发送。接收电路使用三极管组成的放大电路,该电路简单,调试工作小较小。超声波接收头接收到反射的回波后,经过接收电路处理后,向单片机P37输入一个低电平脉冲。单片机控制着超声波的发送,超声波发送完毕后,立即启动内部计时器T0计时,当检测到P37由高电平变为低电平后,立即停止内部计时器计时。单片机将测得的时间与声速相乘再除以2即可得到测量值,最后经3位数码管将测得的结果显示出来。AT89S51单片机AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4KBYTES的可系统编程的FLASH只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集FLASH程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。主要性能参数与MCS51产品指令系统完全兼容4K字节在系统编程(ISP)FLASH闪速存储器1000次擦写周期4055V的工作电压范围全静态工作模式0HZ33MHZ三级程序加密锁1288字节内部RAM32个可编程IO口线2个16位定时计数器6个中断源全双工串行UART通道低功耗空闲和掉电模式中断可从空闲模唤醒系统看门狗(WDT)及双数据指针掉电标识和快速编程特性灵活的在系统编程(ISP字节或页写模式)功能特性概述AT89S51提供以下标准功能4K字节FLASH闪速存储器,128字节内部RAM,32个IO口线,看门狗(WDT),两个数据指针,两个16位定时计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89S51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。引脚功能说明VCC电源电压GND地P0口P0口是一组8位漏极开路型双向I0口,也即地址数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“L”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在F1ASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口PL是一个带内部上拉电阻的8位双向IO口,PL的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“L”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。FLASH编程和程序校验期间,PL接收低8位地址。端口引脚第二功能P2口P2是一个带有内部上拉电阻的8位双向IO口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVXRI指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中P2寄存器的内容),在整个访问期间不改变。FLASH编程或校验时,P2亦接收高位地址和其它控制信号。P3口P3口是一组带有内部上拉电阻的8位双向I0口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“L”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的I0口线外,更重要的用途是它的第二功能,如下表所示P3口还接收一些用于FLASH闪速存储器编程和程序校验的控制信号。AT89S51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图。外接石英晶体(或陶瓷谐振器)及电容CL、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容CL、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性。如果使用石英晶体,推荐电容使用30PF10PF,而如使用陶瓷谐振器选择40PF10F。用户也可以采用外部时钟。采用外部时钟的电路右图所示。这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。图为晶体接线图和外接时钟线路图。31电源电路设计和论证在电子设备中,有时需要一种能向负载提供恒定输出电流的电源设备,简称为恒流源,当负载电阻在一定范围内变化时,从恒流源输出流过RL的电流IO不随RL的改变而改变。即,从负载短路以及RL变到最大允许值时IO保持恒定。311方案一由LM7805集成稳压器组成的恒流源电路如下该集成稳压器工作在悬浮状态,在其5V输出端与公共端之间接有电阻R,由于R两端电压稳定在5V上,所以流经R的电流IR5V,是十分恒定的。IR在经过负载RL后回到负极。从图中可以看到,调节电阻R的大小,可以控制要求输出恒流源,负载电阻RL实际电流为5(V)IOID(MA)R()式中,ID是稳压器的静态电流,一般是几毫安,此电流在稳压源工作过程中会上下波动,因此当IO输出较小时,ID不能忽略,它会影响恒流精度,而且此电路不能提供小于ID的恒流输出。INOUTGND01UF033UFRU1IDILRL_312方案二方案一的改进电路如下LM7805R9012U1033UFILIBIL经改进,在公共端增加了晶体管,这样流过负载电阻的电流IB仅为集成稳压器静态电流ID的1/1,负载电阻RL上实际电流为LM7805LM7805(506)VID(506)VIOR1R此电路克服了ID随输入电压及负载而影响IO的稳定,并可以提供小于ID的稳流输出,但有一定的温漂。为了提高供电的质量和稳定性,我选择了第二种方案。本测距系统由于采用的是LED数码管用为显示方式,正常工作时,系统工作电流约为3045MA,为保证系统统计的可靠性,系统的供电主要是交流AC69V,同时为了调试方便,设计时直接由电脑的USB口供电。6V交流是经过整流二极管D1D4整流成脉动直流后,经滤波电容C1、C2滤波后形成直流电,为保证单片机系统的用电,供电电路中采用5V的集成稳压电路进行稳压后输出5V的直流电供给整个系统用电,为了进一步提高电源质量,经C3、C4再次滤波。这是一个输出正5V直流电压的稳压电源电路。IC采用集成稳压器7805,当输出电阻较大时,7805应配上散热板。32超声波测距单片机系统电路设计和论证超声波测距单片机系统主要由AT89S51单片机、晶振、复位电路、电源滤波部份构成。由K1、K2、K3组成测距系统的按键电路,用于设定超声波测距报警值。如图321方案一超声波测距作为一种非接触性的检测方法,因其结构简单紧凑、可靠性高、价格低廉、实时性强等优点,近年来已经得到了广泛应用,如液位测量,修路过程中路面平整检测,汽车倒车雷达,机器人辅助视觉识别系统等。但因超声波在空气中传播时受到诸如环境温度、湿度、风速等影响,传统的超声波测距系统精度普遍较低。基于单片机与FPGA系统测距单片机系统与FPGA系统测距是一种控制精度高,适用范围宽的高精度系统。工作原理谐振频率高于20KHZ的声波被称为超声波。超声波测距的基本工作原理是发射探头发出超声波,在介质中传播遇到障碍物反射后再通过介质返回到接收探头,测出超声波从发射到接收所需的时间,然后根据介质中的声速,利用公式S05CT就能算得从探头到障碍物的距离,式中S为所测的距离,C为超声波在介质中的传播速度T为超声波从发到收所经过的时间。一般情况下,超声波测距系统常采用频率为40KHZ的方波信号由单片机内部产生。为了避免温度对声波传播速度的影响,都采用温度补偿以适应在不同环境下正常工作的需求。时间的精确测量可由单片机内部单独的计数器完成,也可由外部的计时电路完成。单片机系统与FPGA系统测距系统由单片机、FPGA模块、6对收发同体的超声波换能器、功率放大电路、回波高增益放大电路、带通滤波电路以及比较整形电路等组成。系统组成框图如图2。ERRORREFERENCESOURCENOTFOUND本系统中,单片机系统与FPGA系统是测距仪的核心部件,用来协调各部分元件工作。单片机控制器单元主要是启动超声波发射与计时计数器开始计数的同步以及接收到回波后对其计时计数器的值进行处理等运算。FPGA单元主要用来产生超声波的发射脉冲频率125KHZ与计时计数器的频率170KHZ,通过微控制器MCU来启动超声波的发射,FPGA发射一定数量这里选择8至10的脉冲串之后,停止发射同时启动计时计数器计数,超声波途经障碍物返回。当超声波换能器接收到回波信号之后,将其信号送入FPGA内部,用来控制计时计数器的停止,将所得的计数值送入单片机。第一路到第五路超声波换能器用于测量距离,测量距离的五路超声波换能器按等间距分别安装在测距仪的固定板上,系统采用收发同体的探头,其波束角很小,有效的保证了各探头到被测物体的垂直测量距离。第六路超声波换能器安装在测距仪的左侧,在测距仪的右侧安装一块标准档板,较准确的测量当时环境下的声速,用于温度补偿。控制或显示模块用于调整平衡或输出显示测量距离的目的。发射电路发射电路如图3A所示。发射电路将接收到的方波脉冲信号送入乙类推挽放大电路,用其输出信号驱动CMOS管,接着将其脉冲信号加到高频脉冲变压器进行功率放大,使幅值增加到100多伏,最后将放大的脉冲方波信号加到超声波换能器上产生频率为125KHZ的超声波并将其发射出去。接收电路接收电路由OP37构成的两级运放电路,TL082构成的二阶带通滤波电路以及LM393构成的比较电路三部分组成。因本系统频率较高,回波信号非常弱,为毫伏级,因此设计成两级放大电路,第一级放大100倍,第二级放大50倍,共放大5000倍左右。ERRORREFERENCESOURCENOTFOUND另外考虑到本系统要适应各种复杂的工作环境,因此设计了由TL082构成的高精度带通滤波电路,以供回波信号放大后进行进一步滤波,将滤波后的信号输入到LM393构成的比较器反相输入端,与基准电压相比较,并且对其比较输出电压进行限幅,将其电压接至D触发器,比较器将经过放大后的交流信号整形出方波信号,将其接至FPGA,启动接收模块计数,达到脉冲串设定值时,关闭计时计数器停止计数。FPGA模块FPGA主要实现125KHZ的超声波的发射与接收以及六路超声波从发射到接收之间时间的测量。FPGA主要由发射模块、顺序执行计数器、数据选择器、计时计数器与接收模块五部分组成。其中发射模块完成脉冲串的发射与计数器的启动,主要由96分频器、发射脉冲串计数器和发射脉冲串的控制器三部分组成。顺序执行计数器模块主要由六与非门、计数器和非门组成。所有的接收模块接收完数据后,通过与非门及非门输出高电平FINISH端口,以触发单片机使单片机处于接收数据状态,单片机发出信号使顺序执行计数器开始计数,计数值每次加1,输出端口便是相应的计时计数器,单片机便从相应的计时计数器中读取计数值。数据选择器与顺序执行计数器完成计数值数据的读取。计时计数器模块主要完成测量脉冲发出去到接收到的时间间隔和脉冲的计数,主要由启动与关闭计数器控制、12分频器、16位计时计数器、二选一数据选择器及8位数据锁存器组成。接收模块主要接收回波信号和关闭计数器,当接收模块接收到信号以后,便启动计数,达到计数值,就输出高电平,用来关闭计时计数器停止计数。为防止信号串扰,在信号发射时,CUAN端输入高电平,对其信号进行屏蔽。322方案二基于单片机的超声波测距基于单片机的超声波测距仪由单片机定时器产生40KHZ的频率信号、超声波传感器、接收处理电路和显示电路等构成。单片机是整个系统的核心部件,它协调和控制各部分电路的工作。工作过程开机,单片机复位,然后控制程序使单片机输出载波为40KHZ的10个脉冲信号加到超声波传感器上,使超声波发射器发射超声波。当第一个超声波脉冲群发射结束后,单片机片内计数器开始计数,在检测到第一个回波脉冲的瞬间,计数器停止计数,这样就得到了从发射到接收的距离,由显示装置显示出来。下面分别介绍各部分电路超声波发射、接收电路超声波发射、接收电路如图。超声波发射电路由电阻R2、三极管BG1、超声波脉冲变压器B及超声波发送头T40构成,超声波脉冲变压器,在这里的作用是提高加载到超声波发送头两端的电压,以提高超声波的发射功率,从而提高测量距离。接收电路由BG1、BG2组成的两组三级管放大电路构成;超声波的检波电路、比较整形电路由C7、D1、D2及BG3组成。40KHZ的方波由AT89S51单片机的P00输出,经BG1推动超声波脉冲变压器,在脉冲变压器次级形成60VPP的电压,加载到超声波发送头上,驱动超声波发射头发射超声波。发送出的超声波,遇到障碍物后,产生回波,反射回来的回波由超声波接收头接收到。由于声波在空气中传播时衰减,所以接收到的波形幅值较低,经接收电路放大,整形,最后输出一负跳变,输入单片机的P37脚。P00VCCP37R456KR656KR256KBG49013R350KC6R5150KC7BG19012D21N4148D11N4148BG29013BG39013BT40R40PE超声波测距发送发射单元、接收单元该测距电路的40KHZ方波信号由单片机AT89S51的P00发出。方波的周期为1/40MS,即25S,半周期为125S。每隔半周期时间,让方波输出脚的电平取反,便可产生40KHZ方波。由于单片机系统的晶振为12M晶振,因而单片机的时间分辨率是1S,所以只能产生半周期为12S或13S的方波信号,频率分别为4167KHZ和3846KHZ。本系统在编程时选用了后者,让单片机产生约3846KHZ的方波。由于反射回来的超声波信号非常微弱,所以接收电路需要将其进行放大。接收电路如图所示。接收到的信号加到BG2、BG3组成的两级放大器上进行放大。每级放大器的放大倍数为70倍。放大的信号通过检波电路得到解调后的信号,即把多个脉冲波解调成多个大脉冲波。这里使用的是1N4148检波二极管,输出的直流信号即两二极管之间电容电压。该接收电路结构简单,性能较好,制作难度小。显示电路本系统采用三位一体LED数码管显示所测距离值,如图。数码管采用动态扫描显示,段码输出端口为单片机的P2口,位码输出端口分别为单片机的P02、P03、P04口,数码管位驱运用PNP三极管S9012三极管驱动。报警输出电路为提高测测距系统的实用性,本测距系统的报警输出提供开关量信号及声响信号两种方式。报警信号由单片机P36口输出,提供声响报警信号,电路由电阻R10、三极管BG8、蜂鸣器BY组成,当测量值低于事先设定的报警值时,单片机P36口输出高电平,三极管BG8导通,蜂鸣器发出“滴、滴、滴”报警声响信号,测量值高于设定的报警值时,停止发出报警声响。报警输出电路如图。图报警输出电路由以上两种方案可以看出第二种方案简单易行,成本低,易于操作,单片机是整个系统的核心部件,它协调和控制各部分电路的工作。4软件设计41程序流程系统主程序流程图100YNNNY显示值开始初始化启动定时器测量标志超声波测距距离上限值距离盲区值测量断码转换距离报警值显示报警输出显示值设定断码转换各子程序流程图NYNNYY42程序超声波测距标志1发送超声波启动计时器T0延时避开盲区是否收到回波预设时间停止计时计算测量值结束主程序超声波测距的软件设计主要由主程序、超声波发生子程序、超声波接收程序及显示子程序组成。超声波测距的程序既有较复杂的计算(计算距离时),又要求精细计算程序运行时间(超声波测距时),所以控制程序可采用C语言编程。主程序首先是对系统环境初始化,设定时器0为计数,设定时器1定时。置位总中断允许位EA。进行程序主程序后,进行定时测距判断,当测距标志位EC1时,测量一次,程序设计中,超声波测距频度是45次/秒。测距间隔中,整个程序主要进行循环显示测量结果。当调用超声波测距子程序后,首先由单片机产生4个频率为3846KHZ超声波脉冲,加载的超声波发送头上。超声波头发送完送超声波后,立即启动内部计时器T0进行计时,为了避免超声波从发射头直接传送到接收头引起的直射波触发,这时,单片机需要延时约152MS时间(这也就是超声波测距仪会有一个最小可测距离的原因,称之为盲区值)后,才启动对单片机P37脚的电平判断程序。当检测到P37脚的电平由高转为低电平时,立即停止T0计时。由于采用单片机采用的是12MHZ的晶振,计时器每计一个数就是1S,当超声波测距子程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按式(2)计算,即可得被测物体与测距仪之间的距离。设计时取15时的声速为340M/S则有DCT/2172T0/10000CM其中,T0为计数器T0的计算值。测出距离后结果将以十进制BCD码方式送往LED显示约05S,然后再发超声波脉冲重复测量过程。主程序VOIDMAINUCHARCS/扫描循环次数变量TMOD0X11/T0工作在16位计时状态,最高计时65MSTH00X00TL00X00TR00/先关闭T0ET01/开T0中断EX00/循环程序中再打开PX01/INT0中断高优先级EA1WHILE1WHILEP3_2/P32为低则等待,不发送DELAY5WHILEP3_2/如果P32仍为低,等待,直到为高,在发EX00/开始发送前保证INT0是关闭状态ET00/先关闭T0中断TH00X00TL00X00/保证发射前初值为0FLAT0ET01/重新打开/DELAY1/稍作延时100USWHILEP3_2TR01/T0计时开始FASONG2/发送2个40KHZ脉冲DELAY3/300US延时,防止直波干扰EX01/开始接收信号WHILEFLAT/如果FLAT0,等待IFFLAT1/INT0中断完成后进入FLAT0/重新清0TR00EX00ET00JISUAN/计算总时间和来回距离ZHUANHUAN/各位分离处理ELSEIFFLAT2/如果超时,进入,FLAT0QW10BW10SW10GW10/显示FORCS0CSINCLUDEDEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTDEFINEULONGUNSIGNEDLONGULONGTIME/总时间UCHARQW,BW,SW,GW/千、百、十、个位UCHARFLAT/标志位UCHARIJUCHARCODESHU0X0C,0X6F,0X54,0X45,0X27,0X85,0X84,0X4F,0X04,0X05,0XF7VOIDDELAYUCHARUS/US100US延时UINTI,JFORIUSI0IFORJ11J0JFANSONGDISPIWHILE

温馨提示

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

评论

0/150

提交评论