1、基于单片机超声波测距基于单片机的超声波测距专业:09应用电子技术组长:叶现中 成员:叶现中 余永祥 陈海洋指导教师:范江波摘要摘要 本文利用超声波传输中距离与时间的关系,采用AT89C51单片机进行控制及数据处理,设计出了能精确测量两点间距离的超声波测距仪。该测距仪主要由超声波发射器电路、超声波接收器电路、单片机控制电路、环境温度检测电路及显示电路构成。利用所设计出的超声波测距仪,对不同距离进行了测试,并进行了详尽的误差分析。 关键词 超声波测距 单片机 温度传感器摘要2第一章概述4第二章 21 使用芯片介绍522 超声波测距的工作原理623 超声波测距仪的设计目标624 超声波测距仪的数据测
2、量与分析7第三章 硬件设计931 单片机最小系统9 32单片机系统及显示电路 1033超声波发射电路1134超声波接收电路1235系统程序设计13 36 原理图设计16 37 PCB设计17第四章 软件设计18 41 软件流程图设计18 42 软件编程18第五章 调试33第六章 总结33第七章 参考文献34第一章概述 随着社会的发展,人们对距离或长度测量的要求越来越高。超声波测距由于其能进行非接触测量和相对较高的精度,越来越被人们所重视。本设计的超声波测距仪,可以对不同距离进行测试,并可以进行详尽的误差分析。随着微控技术的日益完善和发展,单片机的应用在不断走向深入。它的应用比定导致传统的控制技
3、术从根本上发生变革。也就是说单片机应用的出现是对传统控制技术的革命。它在工业控制、数据采集、智能化仪表、机电一体化、家用电器等领路得到了广泛应用,极大的提高了这些领域的技术水平和自动化控制。因此单片机的开发应用已成为高技术工程领域的一项重大课题。因此了解单片机知识,掌握单片机的应用技术具有重大的意义。本文采用51系列单片机AT89C51为中心器件设计的超声波测距仪。第二章21使用芯片概述AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称
4、单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 22超声波测距的工作原理 超声测距仪是根据超声波遇到障碍物反射回来的特性进行测量的。超声波发射器向某一方向发射超声波,在发射同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即中断停止计时。 通过不断检测产生波发射后遇到障碍物所反射的回波,从而测出发射超声波和接收到回波的时间差T,然后求出距离L。基本
5、的测距公式为:L=(t/2)*C 式中 L要测的距离 T发射波和反射波之间的时间间隔 C超声波在空气中的声速,常温下取为340m/s 声速确定后,只要测出超声波往返的时间,即可求得L。23 超声波测距仪设计目标测量距离: 5米的范围之内;通过LED能够正确显示出两点间的距离;误差小于5%。 24超声波测距仪的数据测量与分析1.数据测量与分析 由于实际测量工作的局限性,最后在测量中选取了一米以下的30cm、50cm、70cm、80cm、90cm、100cm 六个距离进行测量,每个距离连续测量七次,得出测量数据(温度:29),如表所示。从表中的数据可以看出,测量值一般都比实际值要大几厘米,但对于连
6、续测量的准确性还是比较高的。 对所测的每组数据去掉一个最大值和最小值,再求其平均值,用来作为最终的测量数据,最后进行比较分析。这样处理数据也具有一定的科学性和合理性。从表中的数据来看,虽然对超声波进行了温度补偿,但在比较近的距离的测量中其相对误差也比较大。特别是对30cm和50cm的距离测量上,相对误差分别达到了5%和4.8%。但从全部测量结果看,本设计的绝对误差都比较小,也比较稳定。本设计盲区在22.6cm左右,基本满足设计要求。 2.误差分析 测距误差主要来源于以下几个方面: (1)超声波发射与接收探头与被测点存在一定的角度,这个角度直接影响到测量距离的精确值;(2)超声波回波声强与待测距
7、离的远近有直接关系,所以实际测量时,不一定是第一个回波的过零点触发;(3)由于工具简陋,实际测量距离也有误差。影响测量误差的因素很多,还包括现场环境干扰、时基脉冲频率等等。影响精度的因素分析 根据超声波测距式(1)可知测距的误差主要是由超声波的传播速度误差和测量距离传播的时间误差引起的。对于时间误差主要由发送计时点和接收计时点准确性确定,为了能够提高计时点选择的准确性,本文提出了对发射信号和加收信号通过校正的方式来实现准确计时。此外,当要求测距误差小于1 mm时,假定超声波速度C=344 ms(20室温),忽略声速的传播误差。则测距误差st0.000 002 907 s,即2.907 ms。根
8、据以上过计算可知,在超声波的传播速度是准确的前提下,测量距离的传播时间差值精度只要在达到微秒级,就能保证测距误差小于1 mm的误差。使用的12 MHz晶体作时钟基准的89C51单片机定时器能方便的计数到1s的精度,因此系统采用AT89S51的定一时器能保证时间误差在1 mm的测量范围内。超声波的传播速度主要受空气密度所的影响,空气的密度越高则超声波的传播速度就越快,而空气的密度又与温度有着密切的关系。温度与超声波的速度之间的近似公式为 式中:C0为零度时的声波速度332 ms;T为实际温度()。由此可见,测量精度与温度有着直接的关系,本文采用DS18B20温度传感器,对外界温度进行测量,并在软
9、件中实现温度补偿。第三章 硬件设计3.1单片机最小系统单片机的最小系统包括电源(地)(仿真图不显示),晶振(一般使用11.0592M或者12M)电路,复位电路,单片机内装入程序。有了以上三块内容,单片机就能够工作了。下图3.1就是单片机最小系统示意图: 3.2单片机系统及显示电路 单片机采用89S51或其兼容系列。采用12MHz高精度的晶振,以获得较稳定的时钟频率,减小测量误差。单片机用P1.0端口输出超声波转化器所需的40KHz方波信号,利用外中断0口检测超声波接受电路输出的返回信号。显示电路采用简单实用的4位共阳LED数码管,段码用74LS244驱动,位码用PNP三极管驱动33超声波发射电
10、路34超声波接收电路 35系统程序设计36原理图设计此原理图是根据老师提供的资料所绘,如图所示:37 PCB板设计在此设计过程中,应注意各个元件的封装和布线规则,电气连接,线宽要求。 第四章 软件设计41软件流程图设计 根据硬件设计,软件流程图设计如下: 4.2 软件编程根据流程图设计,软件流程图设计如下:第五章51调试52性能指标第六章 总结 总结本设计的测量距离符合市场要求,测量的盲区也控制在23cm以内。针对市场需求,本设计还可以加大发射功率,让测量的距离更加的远。在显示方面,也可以对程序做适当改动,使开始发射超声波时LED显示出温度值,到超声波回波接收到以后通过计算得出距离值时,LED
11、自动切换显示距离值,这样在视觉效果上得到更加直观的了解。本设计是围绕单片机而设计的,需要用到数电、模电、电路设计、C语言等方方面面的知识。而我们小组在设计过程中遇到很多困难,从硬件、软件设计和制板过程中中学会很多专业知识和设计所要注意事项。而我们在此设计中学会了理论和实践是相辅相成的。提高了我们的实践能力。在以后的学习实践中,我们会更不懈努力,勇攀高峰。在此,由衷感谢范老师及其他老师和同学的指导和支持。第七章 参考文献1胡萍,超声波测距仪的研制,计算机与现代化 2003.102时德刚,刘晔,超声波测距测量与控制 2002.103李兵,MCU51系列单片机实用接口技术 北京:北京航空航天大学 1993.64陈光东 陈退安 姚万生 单片机微型机原理及应用 哈尔滨:哈尔滨工业大学出版社 1999.65苏长赞 红外线与超声波遥控 北京:人民邮电出版社 1993.7
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1