基于51单片机超声波测距仪设计

上传人:gbs****77 文档编号:10679121 上传时间:2020-04-13 格式:DOCX 页数:23 大小:209.06KB
返回 下载 相关 举报
基于51单片机超声波测距仪设计_第1页
第1页 / 共23页
基于51单片机超声波测距仪设计_第2页
第2页 / 共23页
基于51单片机超声波测距仪设计_第3页
第3页 / 共23页
点击查看更多>>
资源描述
基于51单片机超声波测距仪设计 基于51单片机超声波测距仪设计系 别 : 电子信息工程系班 级 : 电信四班 小组成员 :施鹏 1512220405 磨国强 1512220407 胡广富 1512220430指导老师 : 周光祥 桂林电子科技大学职业技术学院摘要超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量中。随着科技水平的不断提高,超声波测距技术被广泛应用于人们日常工作和生活之中。系统的设计主要包括两部分,即硬件电路和软件程序。硬件电路主要包括单片机电路、发射电路、接收电路、显示电路和电源电路,另外还有复位电路和LED控制电路等。我采用以AT89C51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路。整个电路采用模块化设计,由信号发射和接收、供电、温度测量、显示等模块组成。发射探头的信号经放大和检波后发射出去,单片机的计时器开始计时,超声波被发射后按原路返回,在经过放大带通滤波整形等环节,然后被单片机接收,计数器停止工作并得到时间。温度测量后送到单片机,通过程序对速度进行校正,结合两者实现超声波测距的功能。软件程序主要由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。它控制单片机进行数 据发送与接收,在一定温度下对超声波速度的校正,还有实现数据正确显示在LED上。另外程序控制单片机消除各探头对发射和接收超声波的影响。相关部分附有硬件电路图、程序流程图。 实际的环境对超声波有很大的影响,如外部电磁干扰电源干扰信道干扰等等,空气的温度对超声波的速度影响也很大。此外供电电源也会使测量差生很大的误差。再设计的过程中考虑了这些因素,并给出了一些解决方案。 关键词: AT89C51 超声波测距目 录1绪论11.1设计背景12 电路总体设计方案22.1电路总体框图23 单片机概述33.1 AT89C51单片机主要性能33.2 AT89C51内部组成34超声波概述44.1 超声波传感器介绍44.2 超声波时序图44.3 超声波测距原理55硬件设计65.1硬件设计原理图65.2 复位电路6 5.3 晶振电路75.4 LED数码管显示电路76软件设计86.1程序设计流程图86.2 程序源代码97总结127.1设计总结12致谢13参考文献141 绪论1.1设计背景及重要意义近年来,随着电子测量技术的发展,运用超声波作出精确测量已成可能。随着经济发展,电子测量技术应用越来越广泛,而超声波测量精确高,成本低,性能稳定则备受青睐。超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量中。随着科技水平的不断提高,超声波测距技术被广泛应用于人们日常工作和生活之中。一般的超声波测距仪可用于固定物位或液位的测量,适用于建筑物内部、液位高度的测量等。由于超声测距是一种非接触检测技术,不受光线、被测对象颜色等的影响,较其它仪器更卫生,更耐潮湿、粉尘、高温、腐蚀气体等恶劣环境,具有少维护、不污染、高可靠、长寿命等特点。因此可广泛应用于纸业、矿业、电厂、化工业、水处理厂、污水处理厂、农业用水、环保检测、食品(酒业、饮料业、添加剂、食用油、奶制品)、防汛、水文、明渠、空间定位、公路限高等行业中。可在不同环境中进行距离准确度在线标定,可直接用于水、酒、糖、饮料等液位控制,可进行差值设定,直接显示各种液位罐的液位、料位高度。因此,超声在空气中测距在特殊环境下有较广泛的应用。利用超声波检测往往比较迅速、方便、计算简单、易于实现实时控制,并且在测量精度方面能达到工业实用的指标要求,因此为了使移动机器人能够自动躲避障碍物行走,就必须装备测距系统,以使其及时获取距障碍物的位置信息(距离和方向)。因此超声波测距在移动机器人的研究上得到了广泛的应用。同时由于超声波测距系统具有以上的这些优点,因此在汽车倒车雷达的研制方面也得到了广泛的应用。2电路总体方案2.1电路总体框图电路总体框图包括51单片机最小系统,HC-SR04超声波测距模块,LED数码管显示电路,蜂鸣器报警电路和按键电路。图2.1 电路基本框图3 单片机概述3.1 STC89C51主要性能STC89C51 是STC公司推出的一款超强抗干扰,加密性强,在线可编程,高速,低功耗CMOS 8位单片机。片内含 4k bytes 的可反复擦写Flash只读程序存储器和256 bytes 的随机数据存储器(RAM),器件采用STC公司的高密度、非易失性存储技术生产,与标准MCS51指令系统及8052产品引脚兼容, 片内置通用8位中央处理器 (CPU)和Flash存储单元, 功能强大的STC89C51单片机适合于许多较为复杂控制应用场合。3.2 STC89C51内部组成STC89C51单片机的框图如图3.2所示,各功能部件由内部总线连接在一起。图3.2 STC89C51单片机框图4 超声波概述4.1 超声波传感器介绍超声波是一种频率比较高的声音,由于其指向性强、能量消耗缓慢、传播距离较远等优点,而经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。超声波测距主要应用于倒车雷达、建筑施工工地以及一些工业现场,例如液位、井深、管道长度等场合。超声波测距的利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在测控系统的研制上得到了广泛应用。超声传感器是一种将其他形式的能转变为所需频率的超声能或是把超声能转变为同频率的其他形式的能的器件。目前常用的超声传感器有两大类,即电声型与流体动力型。电声型主要有:1 压电传感器;2 磁致伸缩传感器;3 静电传感器。4.2超声波时序图图4.2超声波时序图4.3 超声波测距原理超声波测距是借助于超声脉冲回波渡越时间法来实现的,设超声波脉冲由传感器发出到接收所经历的时间为t,超声波在空气中的传播速度为c,则从传感器到目标物体的距离D可用下式求出:D=ct/2。其系统框图如图4.3所示。障碍物图4.3 系统框图基本原理:经发射器发射出长约6mm,频率为40khz的超声波信号。此信号被物体反射回来由接收头接收,接收头实质上是一种压电效应的换能器。它接收到信号后产生mV级的微弱电压信号。5 硬件设计5.1硬件设计原理图图5.2复位电路单片机的复位电路在刚接通电时,刚开始电容是没有电的,电容内的电阻很低,通电后,5V的电源通过电阻给电解电容进行充电,电容两端的电会由0V慢慢的升到4V左右(此时间很短一般小于0.3秒),正因为这样,复位脚由低电位升到高电位,引起了内部电路的复位工作;当按下复位键时,电容两端放电,电容又回到0V了,于是又进行了一次复位工作。电路图如图5.1。图5.1 复位电路5.3 晶振电路它是单片机系统正常工作的保证,如果振荡器不起振,系统将会不能工作。假如振荡器运行不规律,系统执行程序的时候就会出现时间上的误差,这在通信中会体现的很明显:电路将无法通信。一般单片机的晶振工作于并联谐振状态,也可以理解为谐振电容的一部分。它是根据晶振厂家提供的晶振要求负载电容选值的,换句话说,晶振的频率就是在它提供的负载电容下测得的,能最大限度的保证频率值的误差,也能保证温漂等误差。它是由一个晶振和两个瓷片电容组成的,晶振和瓷片电容是没有正负的,两个瓷片电容相连的那端一定要接地,如图5.2所示。图5.2 晶振电路5.4 LED数码管显示电路本电路的显示模块主要由一个4位一体的7段LED数码管构成,用于显示测量到的电压值。它是一个共阴极的数码管,每一位数码管的a,b,c,d,e,f,g和dp端都各自连接在一起,用于接收单片机的P1口产生的显示段码。S1,S2,S3,S4引脚端为其位选端,用于接收单片机的P2口产生的位选码。具体原理图如图5.3 图5.3 显示电路6 软件设计6.1程序设计流程图系统程序主要包括主程序、显示数据子程序、报警子程序和按键子程序等。 主程序的主要功能是负责距离的显示、读出并处理HC-RS04的测量距离值,按键控制有效距离限制,当测量的值超过预设值时,蜂鸣器发声报警。主程序流程图如图6.1所示。图6.1主流程图6.2 软件程序#include /器件配置文件#include /传感器接口sbit RX = P23;sbit TX = P22;sbit DIAN=P05;/变量声明unsigned int time=0;unsigned int timer=0;unsigned char posit=0;unsigned long S=0;char num=0;bit flag=0;unsignedchar const discode =0x5F,0x44,0x9D,0xD5,0xC6,0xD3,0xDB,0x47,0xDF,0xD7,0x80;/数码管显示码0123456789-和不显示unsigned char disbuff4 =0,0,0,0; /数组用于存放距离信息sbit W0=P24;sbit W1=P25;sbit W2=P26;sbit W3=P27;/*/扫描数码管void Display(void) num+;if(num=1)W3=1;W0=1;P0=discodedisbuff0;DIAN=0;W1=0;else if(num=2)W1=1;P0=discodedisbuff1;W2=0;else if(num=3)W2=1;P0=discodedisbuff2;W3=0;num=0;/*/计算void Conut(void)time=TH0*256+TL0; /读出T0的计时数值TH0=0;TL0=0; /清空计时器S=(time*1.7)/100; /算出来是CMif(S=700)|flag=1) /超出测量范围显示“-”flag=0;disbuff0=10; /“-”disbuff1=10; /“-”disbuff2=10; /“-”elsedisbuff0=S%1000/100; /将距离数据拆成单个位赋值disbuff1=S%1000%100/10;disbuff2=S%1000%10 %10;/*/定时器0void zd0() interrupt 1 /T0中断用来计数器溢出,超过测距范围flag=1; /中断溢出标志/*/定时器1void zd3() interrupt 3 /T1中断用来扫描数码管和计800MS启动模块TH1=0xf8;TL1=0x30; /定时2msDisplay();/扫描显示timer+;/变量加if(timer=400)/400次就是800mstimer=0;TX=1; /800MS 启动一次模块_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();_nop_(); _nop_(); _nop_(); _nop_();TX=0; /*/主函数void main(void) TMOD=0x11; /设T0为方式1,GATE=1;TH0=0;TL0=0; TH1=0xf8; /2MS定时TL1=0x30;ET0=1;/允许T0中断ET1=1; /允许T1中断TR1=1; /开启定时器EA=1;/开启总中断while(1)while(!RX);/当RX为零时等待TR0=1;/开启计数while(RX);/当RX为1计数并等待TR0=0;/关闭计数Conut();/计算设计总结施鹏: 本次设计我们是以AT89C51为核心,借助于模数电技术和单片机技术的结合,解决了超声波测距的一些难题。灵活的运用超声波换能集成电路作为超声波的接收电路,在讨论了超声波测距原理、硬件电路实现和软件设计方法基础上,完成了超声波测距的设计要求。利用单片机的运算和控制功能,利用超声波的特性设计出的一种简单的测距系统。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,随着科学技术的快速发展,超声波的应用将越来越广。但就目前技术水平来说,人们可以具体利用的超声波技术还十分有限,因此,这是一个正在蓬勃发展而又有无限前景的技术及产业领域。从方案论证到具体设计,我查阅了大量的资料。对一些疑难的问题,我得到了老师和同学的帮助。也始终感受着导师的精心指导和无私的关怀,我受益匪浅。在此向老师们表示深深的感谢和崇高的敬意。磨国强:本次设计我们在讨论了超声波测距原理、硬件电路实现和软件设计方法基础上,以AT89C51为核心,完成了超声波测距的设计要求。利用单片机的运算和控制功能,设计出的一种筒单实用的超声波测距系统,利用超声波测距系统比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面达到了一定的要求。本次设计主要单片机系统,显示电路和超声波模块三个部分。从方案论证到具体设计,我查阅了大量的资料。对一些疑难的问题,我得到了老师和同学的帮助。也始终感受着导师的精心指导和无私的关怀,我受益匪浅。在此向老师们表示深深的感谢和崇高的敬意。胡广富:本次设计我们在讨论了超声波测距原理、硬件电路实现和软件设计方法基础上,以AT89C51为核心,借助于模数电技术和单片机技术的结合,解决了超声波测距的一些难题。灵活的运用超声波换能集成电路作为超声波的接收电路,在讨论了超声波测距原理、硬件电路实现和软件设计方法基础上,完成了超声波测距的设计要求,利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,随着科学技术的快速发展,超声波的应用将越来越广。设计过程中查阅了大量资料,得到了老师的帮助,在此向老师们表示深深的感谢和深深的敬意。 致 谢首先,我们要感谢我的导师周光祥老师在此次设计中对我给予的悉心指导和严格要求,同时也感谢本校的一些老师在设计期间所给予我得帮助。在论文写作期间,各位老师给我提供了种种专业知识上的指导和日常生活上的关怀,没有您们这样的帮助和关怀,我不会这么顺利的完成此次设计,借此机会,向您们表示由衷的感激。同时还要感谢系实验室在此次设计期间提供给我们优越的实验条件。接着,我要感谢和我一起做此次设计的同学。在此次设计中,你们给我们提出很多宝贵的意见,给了我不少帮助还有工作上的支持,在此也真诚的谢谢你们。同时,我还要感谢我的寝室同学和身边的朋友,正是在这样一个团结友爱,相互促进的环境中,在和他们的相互帮助和启发中,才有我今天的小小收获。 最后我要深深地感谢我的家人,正是他们含辛茹苦地把我养育成人,在生活和学习上给予我无尽的爱、理解和支持,才使我时刻充满信心和勇气,克服成长路上的种种困难,顺利的完成大学学习。 还有许许多多给予我学业上鼓励和帮助的朋友,在此无法一一列举,在此也一并表示忠心地感谢!参考文献1宋雪臣,单振清.传感器与检测技术(第2版).北京:人民邮电出版社,2012年4月.2谢维成,杨加国.单片机原理与应用及C51程序设计.北京:清华大学出版社,20063张齐等.单片机应用系统设计技术-基于C语言编程.北京:电子工业出版社,20044吴延海.微型计算机接口技术.重庆:重庆大学出版社,19975李丽霞.单片机在超声波测距中的应用J.电子技术,20026姜道连,宁延一,袁世良.用AT89C2051设计超声波测距仪J.国外电子元器件,20007李学海.PIC单片机实用教程基础篇(第1版)M.北京航天航空大学出版社.北京:2002年2月8贾伯年.传感器技术.南京:东南大学出版社,2000第 18 页
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!