基于超声波的检测设计_第1页
基于超声波的检测设计_第2页
基于超声波的检测设计_第3页
基于超声波的检测设计_第4页
基于超声波的检测设计_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、摘要 本科毕业设计(论文) 题 目 _ 超声波测距仪_ 姓 名 郭战科 专 业 电子科学与技术 学 号 200931032 指导教师 陈慧丽 郑州科技学院电气工程系 二0一三年五月摘 要本文阐述了超声波测距仪的工作原理,介绍了如何用AT89C52单片机实现超声波测距,分析了各个部分的工作原理,并给出了原理图和源程序。此设计电路由超声波传感器、单片机、发射/接收电路和数码管显示器等组成。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因此超声波被广泛应用于距离的测量。同时,利用超声波检测比较迅速、方便,计算简单,已做到实时控制,并且在测量精度方面能达到工业实用要求,测量时与被测物体无直

2、接接触等这些优点,使其广泛应用于倒车雷达、建筑施工工地等场合。超声波与光波、电磁波、射线等检测相比,其最大特点是穿透力强,几乎可以在任何物体中传播,了解被测物体内部情况,有利于工程实际使用。近十年来,由于微机技术,现代电子技术,信号处理技术以及超声波产生和接收技术的发展,突破了常规超声测量的限制,又进一步开拓了其适用范围。关键词:超声波 单片机 测距I ABSTRACT This paper expounds the working principle of ultrasonic range finder, introduces how to use microcomputer AT89C52

3、 ultrasonic ranging, analyses the working principle of each part, and the principle diagram and the source program is given. The designed circuit by the ultrasonic sensor, microcontroller, transmitting/receiving circuit and digital pipe display, etc. Due to the ultrasonic directionality is strong, e

4、nergy consumption slow, in the medium transmission distance is farther, so ultrasonic wave is widely used in distance measurement. At the same time, using the ultrasonic detection is rapid, convenient, simple calculation, have to do real-time control, and on measurement accuracy can meet the require

5、ments of industrial utility, measured with no direct contact with the object to be tested, etc. These advantages, make its widely application in the back-draft radar, construction site, etc. Ultrasound compared with light wave and electromagnetic wave, radiation detection, its biggest characteristic

6、 is to strong penetrating power, almost can spread in any object, understand the contents, object to be tested for practical use. In nearly a decade, because of computer technology, modern electronic technology, signal processing technology and the development of the ultrasonic wave and receiving te

7、chnology, breakthrough the limitation of the conventional ultrasound measurement, and further open up its applicable scope.Keywords: Ultrasound; Single chip microcomputer; Ranging目录目 录摘 要IABSTRACTII1 前言11.1 超声波的发展11.1.1 国际方面11.1.2 国内方面11.2 研究超声波测距仪的意义12 设计方案32.1 任务要求32.2 超声波测距整体设计方案33 硬件部分53.1 超声波模块

8、53.1.1 超声波测距原理53.1.2 超声波传感器结构63.1.3 超声波传感器工作原理73.2 超声波发射电路设计93.3超声波接收电路的设计103.4 显示电路的设计123.5 报警电路设计133.6 AT89C51单片机控制模块143.6.1 AT89C51单片机的原理与性能143.6.2 AT89C51引脚功能153.6.3复位电路184 软件部分194.1 程序设计总体分析194.2 程序流程图194.3 电路程序设计204.3.1 超声波发射程序204.3.2 超声波接收中断子程序214.3.3 计算超声波传播时间显示程序225 电路仿真235.1 软件编译调试环境Keil23

9、5.2 系统仿真环境Proteus235.3 系统仿真235.3.1 源程序的录入245.3.2 仿真的实现245.4 误差及特性分析256 电路调试27结论29致谢30参考文献31附录1 超声波测距仪元件清单32附录2 超声波测距仪原理图33附录3 超声波测距仪源程序3461 前言1 前言1.1 超声波的发展1.1.1 国际方面1793年意大利科学家斯帕拉捷的瞎眼蝙蝠实验奠定了超声波被发现的基础。在此基础上,许多科学家经过不懈的努力发现了超声波的一系列特性。自19世纪末到20世纪初,在物理学上发现了压电效应与反压电效应之后,人们解决了利用电子学技术产生超声波的办法,从此迅速揭开了发展与推广超

10、声技术的历史篇章。1922年,德国出现了首例超声波治疗的发明专利。1939年发表了有关超声波治疗取得临床效果的文献报道。40年代末期超声治疗在欧美兴起,直到1949年召开的第一次国际医学超声波学术会议上,才有了超声治疗方面的论文交流,为超声治疗学的发展奠定了基础。1956年第二届国际超声医学学术会议上已有许多论文发表,超声治疗进入了实用成熟阶段。1.1.2 国内方面国内在超声治疗领域的发展起步较晚,于20世纪50年代初才只有少数医院开展超声治疗工作,从1950年首先在北京开始用800KHz频率的超声治疗机治疗多种疾病,至50年代开始逐步推广,并有了国产仪器。公开的文献报道始见于1957年。到了

11、70年代有了各型国产超声治疗仪,超声疗法普及到全国各大型医院。20世纪80年代初出现的超声体外机械波碎石术和超声外科,是结石症治疗史上的重大突破。如今已在国际范围内推广应用。高强度聚焦超声无创外科,已使超声治疗在当代医疗技术中占据重要位置。而在21世纪(HIFU)超声聚焦外科已被誉为是21世纪治疗肿瘤的最新技术。1.2 研究超声波测距仪的意义随着社会的发展,人们对距离或长度测量的要求越来越高。超声波在气体、液体及固体中以不同速度传播,定向性好、能量集中、传输过程中衰减较小、反射能力较强。超声波能以一定速度定向传播、遇障碍物后形成反射,利用这一特性,通过测定超声波往返所用时间就可计算出实际距离,

12、从而实现无接触测量物体距离。超声波测距由于其能进行非接触测量和相对较高的精度,越来越被人们所重视。超声波与光波、电磁波、射线等检测相比,其最大特点是穿透力强,几乎可以在任何物体中传播,了解被测物体内部情况。超声检测设备还具有结构简单,成本低廉,使用方便的优点,有利于工程实际使用。目前国际国内,在超声波测距方面的研究方向和水平的不同,主要体现在对测距原理、超声波信号处理方法和超声波测距处理器的选用上。常见的超声波测距原理分为渡越时间法和相位差法两种。信号的处理方法大致分为阈值检验法、互相关延时估计法、伪随机码扩频测距法和最小均方法四种。在处理器方面大多以单片机为主,其中以51系列应用最为广泛,采

13、用运算速度更快,效率更高dsp芯片作为处理器,也正成为一个非常活跃的研究方向。目前已研制的超声波测距仪中,量程一般为3-12m,美国AIRMAR公司生产的airducer AR30超声波传感器的作用距离可达30m,但价格昂贵,准确度方面已控制在测量误差的0.4%左右,与真值的差距在厘米级的范围内,若采用互相关或伪随机法,最高可控制在0.05m内,在提高精确度方面,超声波测距还有很大的发展潜力和上升空间。2 设计方案2 设计方案2.1 任务要求超声波测距仪发出超声波遇到前方障碍物时,能够测出与障碍之间的距离,并能够通过显示屏显示出相应的数据,且达到安全距离时能够自动报警。1.探测障碍物的范围为0

14、.3m1.5m。2.具有显示模块,显示所测量的距离。3具有复位装置。4.小于设定安全距离自动报警。2.2 超声波测距整体设计方案本设计是基于51单片机的基础设计的,单片机采用AT89C51。发射信号采用12MHZ高精度晶振,得到较为稳定的时钟频率以减小测量误差。用单片机P1.0端口输出40KHZ方波信号,再经过放大电路,驱动超声波发射探头发射超声波。发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的检波放大、积分整形及一系列处理,送至单片机,利用外中断0检测接收返回的超声波信号。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控

15、制七段数码管显示出来。其时序图如图2.1所示。图2.1 时序图单片机在T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。计算时间差,即可得到超声波在媒介中传播的时间t,由此便可计算出距离。 通过单片机控制发射电路发出40kHZ的信号,经放大后通过超声波发射器输出;超声波接收器将接收到的超声波信号经放大器放大,用锁相环电路进行检波处理后,启动单片机中断程序,测得时间为t,再由软件进行判别、计算,得出距离数并送LED显示。超声波发射器放大电路超声波接收器放大电路锁相环检波电路定时器单片机控制显示器图2.2 测距系统原理图超声传感

16、器是一种将其他形式的能转变为所需频率的超声能或是把超声能转变为同频率的其他形式的能的器件。目前常用的超声传感器有两大类,即电声型与流体动力型。硬件电路的设计主要包括单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分。单片机采用AT89C51或其兼容系列。采用12MHz高精度的晶振,以获得较稳定时钟频率,减小测量误差。单片机用P1.0端口输出超声波换能器所需的40kHz的方波信号,利用外中断0口监测超声波接收电路输出的返回信号。显示电路采用简单实用的4位共阴LED数码管,段码用74LS04驱动,位码用PNP三极管8550驱动。单片机发出超声波测距是通过不断检测超声波发射后遇到障碍物所

17、反射的回波,从而测出发射和接收回波的时间差t,然后求出距离dct2,式中的c为超声波波速。限制该系统的最大可测距离存在4个因素:超声波的幅度、反射的质地、反射和入射声波之间的夹角以及接收换能器的灵敏度。接收换能器对声波脉冲的直接接收能力将决定最小的可测距离。为了增加所测量的覆盖范围、减小测量误差,可采用多个超声波换能器分别作为多路超声波发射接收的设计方法。由于超声波属于声波范围,其波速c与温度有关。3 硬件部分3 硬件部分3.1 超声波模块超声波模块是本设计的主要模块之一。本模块主要包含超声波测距的原理、超声波传感器的结构以及传感器的工作原理。3.1.1 超声波测距原理超声波在气体、液体及固体

18、中以不同速度传播,定向性好、能量集中、传输过程中衰减较小、反射能力较强。超声波能以一定速度定向传播、遇障碍物后形成反射,利用这一特性,通过测定超声波往返所用时间就可计算出实际距离,从而实现无接触测量物体距离。超声波测距迅速、方便,且不受光线等因素影响,广泛应用于水文液位测量、建筑施工工地的测量、现场的位置监控、振动仪车辆倒车障碍物的检测、移动机器入探测定位等领域。本文采用单片机作为主控制器,用LED数码管作为显示仪器来显示所测的距离。由超声波传感器发射和接受超声波信号,再经过单片机计算输出显示被测距离,即超声波发生器T在某一时刻发出一段超声波信号,当超声波遇到障碍物(被测物体)后返回被接收器R

19、接受。测距的原理如图3.1。RTT2T1 图3.1 测距的原理这样只要计算出发射超声波和接收到超声波之间的时间,就可以计算出超声发射器与反射物体的距离。距离计算公式为: 其中:d为被测物与测距器的距离 s为声速的来回路程 c为声速 t为声波来回所用的时间超声波是指频率高于20KHZ的机械波。为了以超声波作为检测手段,必须产生超声波和接收超声波,完成这种功能的装置就是超声波传感器,习惯称之为超声波换能器或超声波探头。超声波传感器有发送器和接收器两种,但是一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器利用压电效应的原理将超声波和电能相互转换,即在发射超声波的时候,将电能转换为超声波

20、,而在收到回波的时候,则将超声振动转换为电信号。超声波测距的原理一般采用渡越时间法。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的生源与障碍物之间的距离,超声波测距适用于高精度的中长距离测量,因为超声波在标准空气中的传播速度为332.45m/s。单片机使用12MHZ晶振,所以此系统的测量精度理论可以达到毫米级。超声波传感器是根据超声波的特性而研制成的传感器。超声波是一种机械波,其振动频率高于声波,由换能晶片在电压的激励下发生振动产生。超声波的频率高、波长短、绕射现象小,方向性好、能够成为射线而定向传播。超声波传感器是利用压电效应的原理将电能和超声波相互转换,即

21、在发射超声波的时候,转换电能,发射超声波,在收到回波的时候,则将超声波振动转换为电信号。超声波发生器一般分为两类:一类是用电气方式产生超声波,另一类使用机械的方式产生超声波。超声波测距器属于近距离测量,可以采用常用的压电式超声波换能器来实现。3.1.2 超声波传感器结构超声波探头主要由压电晶片组成,既可以发射超声波,也可以接收超声波。小功率超声探头多作探测作用。它有许多不同的结构,可分直探头、斜探头、表面波探头、兰姆波探头、双探头等。超声波传感器结构如图3.1所示。超声探头的核心是其外套中的一块压电晶片。构成晶片的材料可以有许多种。晶片的大小,如直径和厚度也各不相同,因此每个探头的性能是不同的

22、,使用前必须预先了解它的性能。共振板压电晶片电极 图3.2 超声波传感器结构图3.3 16mm分体超声波收发器 超声波传感器超声波探头3.1.3 超声波传感器工作原理压电型超声波传感器是利用压电效应的原理,压电效应有逆效应和顺效应,由于超声波传感器是一种可逆元件,超声波发送器就是利用压电逆效应的原理。在压电元件上施加电压,元件随之变形,即称应变,压电逆效应如图3.3所示。如果在图a所示的已被极化的压电陶瓷上加一个图b所示极性的电压,压电陶瓷的极化正电荷与外部正电荷相互排斥,同时,外部负电荷与极化负电荷相互排斥。由于相互排斥的作用,压电陶瓷的厚度变小,长度伸长。若外部施加相反极性的电压,如图c所

23、示那样,则压电陶瓷厚度变厚,长度缩短。图3.4 压电逆效应图超声波传感器采用的是双晶振子,即把双压电陶瓷片以相反极化方向背向粘在一起,则在长度方向上,一片伸长,另一片缩短。在双晶振子的两面涂敷薄膜电极,其上面用引线通过金属板接到一个电极端,下面用引线直接接到另一个电极端。双晶振子为正方形,正方形的左右两边由圆弧形凸起部分支撑着。这两处的支点就成为振子振动的节点。金属板的中心有圆锥形振子。发送超声波时,圆锥形振子有较强的方向性,因而能高效率地发送超声波;接收超声波时,超声波的振动集中于振子的中心,所以,能产生高效率的高频电压。采用双晶振子的超声波传感器,若在发送器的双晶振子(谐振频率为40kHz

24、)上施加40kHz的高频电压,压电陶瓷片就根据所加的高频电压极性伸长与缩短,于是就能发送40kHz频率的超声波。超声波以疏密波形式传播,传送给超声波接收器。超声波接收器是利用压电效应的原理,即在压电元件的特定方向上施加压力,元件就发生应变,则产生一面为正极,另一面为负极的电压。若接收到发送器发送的超声波,振子就以发送超声波的频率进行振动,于是,就产生与超声波频率相同的高频电压,当然这种电压是非常小的,必须采用放大器放大4。 图3.5 传感器的方向性该测距装置是由超声波传感器、单片机、发射/接收电路和LED显示器组成。传感器输入端与发射接收电路相连,接收电路输出端与单片机相连接,单片机的输出端与

25、显示电路输入端相连接。3.2 超声波发射电路设计 超声波发射采用推挽形式将P1.0端口发出的方波加到超声波换能器两端以提高超声波发射的强度。发射电路主要有74HC04和超声波换能器构成用单片机P1.0端口输出40KHZ方波信号一路经一级反向后送到超声波换能器的一个电极,另一路经两级反向后送到超声波换能器的另一个电极3。图3.6为发射电路。 图3.6 超声波发射电路3.3超声波接收电路的设计超声波接收采用的是常用于电视红外遥控接收器的芯片CX20106A。考虑到红外遥控常用的载波频率38KHZ与测距超声波频率40KHZ较为接近,可以利用它作为超声波检测电路。实验证明其具有很高的灵敏度和较强的抗干

26、扰能力。适当改变超声波接收探头两端电容的大小,可以接收电路的灵敏度和抗干扰能力。其中,CXA20106A为红外线接收专用芯片,可以用于超声波的接收。各引脚说明如表3.1。图3.7为接收电路。表3.1 CXA20106A各引脚说明引脚号说 明 1超声信号输入端,该脚的输入阻抗约为40k。 2该脚与地之间连接RC串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。增大电阻R1或减小C1,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。但C1的改变会影响到频率特性,一般在实际使用中不必改动,推荐选用参数为R1=4.7,C1=1F。 3该脚与地之间连接检波

27、电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则为峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,推荐参数为3.3f。 4接地端。 5该脚与电源间接入一个电阻,用以设置带通滤波器的中心频率f0,阻值越大,中心频率越低。例如,取R=200k时,f042kHz,若取R=220k,则中心频率f038kHz。 6该脚与地之间接一个积分电容,标准值为330pF,如果该电容取得太大,会使探测距离变短。 7遥控命令输出端,它是集电极开路输出方式,因此该引脚必须接上一个上拉电阻到电源端,推荐阻值为22k,没有接受信号是该端输出为高电平,有信号时则产生下降。 8电源正极,4.55

28、.5V。 图3.7 超声波接收电路3.4 显示电路的设计数码管的结构数码管由7个发光二极管组成,行成一个日字形,它门可以共阴极,也可以共阳极,通过解码电路得到的数码接通相应的发光二极而形成相应的字,这就是它的工作原理。数码管按各发光二极管电极的连接方式分为共阳数码管和共阴数码管两种。数码管符号和引脚如图3.8(a),共阳数码管内部连接如图3.8(b),共阴数码管内部连接如图3.8(c)。 图3.8 数码管数码管要用驱动电路来驱动数码管的各个段码,可以分为静态显示和动态显示两类。(1) 动态显示:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8 个显示笔划“

29、a, b, c, d, e, f, g, dp“的同名端连在一起,另外为每个数码管的公共极COM 由位选通控制电路控制,位选通由各自独立的I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速

30、度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,但是能够节省大量的I/O 端口,功耗更低。(2)静态显示驱动:静态驱动是指每个数码管的每一个段码都由一个单片机的I/O 端口进行驱动,或者使用如BCD 码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O 端口多,如驱动5个数码管静态显示则需要5×840 根I/O 端口来驱动,要知道一个89c52单片机可用的I/O 端口才32 ,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。此设计显示电路采用简单实用的4位共阳LED数码管,段码输出端口为单片机

31、的P0口,位码输出端口分别为单片机的P2.1、P2.3、P2.5、P2.7口。为了减少硬件开销,提高系统可靠性并降低成本,此超声波测距的单片机控制系统采用动态扫描显示,并且软件消影。显示电路如图3.9。图3.9 数码管显示电路图3.5 报警电路设计 超声换能器是超声测距报警系统必备的元器件之一,选择合适的超声换能器对系统的性能有着重要的意义。目前最常用的是压电式超声波传感器,它是利用电致伸缩现象制成的,在压电材料切片上施加交变电压,使它产生电致伸缩振动而产生超声波,同样,当超声波作用到压电晶片上时使晶片伸缩,在晶片的两个界面上便产生交变电荷,这种电荷被转换成电压并经过放大后送到测量电路,最终可

32、以被记录或显示。 本系统采用的是收发分离的压电式超声传感器TX40-16和RX40-16。超声测距的系统原理方法一般包括三种:相位检测法,声波幅值检测法和渡越时间检测法。本系统采用渡越时间检测法,也就是我们通常所说的时间差法,即超声波从发射到接收的时间段内所走的距离为待测距离的2倍,所以:其中:D-待测距离(m);c-声波在该介质中的速度(m/s);t-测得的时间差(s)。图3.11 报警系统电路3.6 AT89C51单片机控制模块本设计所采用的控制模块主要是采用AT89C51单片机进行控制。本模块主要介绍AT89C51单片机的构成以及引脚的功能分析。3.6.1 AT89C51单片机的原理与性

33、能单片机即单片微型计算机SCMC(Single Chip MicroComputer),它是构成一台计算机的主要功能器件。相对于普通微机,单片机的体积要小得多,一般嵌入到其他仪器设备里,实现自动检测与控制,因此也称为嵌入式微控制器EMCU(Embedded Microcontroller Unit)1。 本设计采用的是DIP(Dual In-line Package塑料双列直插式)封装的AT89C51高性能8位单片机。AT89C51是一个低电压,高性能CMOS 8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用A

34、TMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。 AT89C51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程2。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。其结构如图3.12。 图3.12 AT89C51单片机引脚图3.6.2 AT89C51

35、引脚功能本系统所采用单片机系统控制模块如图3.13图3.13单片机控制模块1) 主电源引脚VSS第20脚,电路接地电平。VCC第40脚,正常运行和编程校验+5V电源。2) 时钟源XTAL1第19脚,一般外接晶振的一个引脚,它是片内反相放大器的输入端口。当直接采用外部信号时,此引脚应接地。XTAL1第18脚,接外部晶振的另一个引脚,它是片内反相放大器的输出端口。当采用外部振荡信号源泉时,此引脚为外部振荡信号的输入端口,与信号源相连接。3) 控制、选通或复用RST/VPD第9脚,RESET复位信号输入端口。当单片机正常工作时,由该引脚输入脉宽为2个以上机器周期的高电平复位信号到单片机。在VCC掉电

36、期间,此引脚(即VPD)可接通备用电源,以保持片内RAM信息不受破坏。第30脚,输出允许地址锁存信号。当单片机访问外部存储器时,ALE信号的负跳变将P0口上的低8位地址送入锁存器。在非访问外部存储器期间,ALE仍以1/6振荡频率固定不变地输出,因此它可对个输出或用于定时目的。要注意的是:每当访问外部存储器时将跳过一个ALE脉冲。为第二功能,当对片内程序存储器编程写入时,此引脚作为编程脉冲输入端。第29脚,访问外部程序存储器选能信,低电平有效。当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的 信号不出现。:外部

37、访问允许。欲使CPU公访问外部程序存储器(地址0000H-FFFFH),端必须保持低电平(接地)。需注意的是:如果加密位LBI被编程,复位时内部会锁存端状态。Flash存储器编程时,该引脚加上+12V的编程允许电源VPP,当然这必须是该器件是使用12V编程电压VPP。4) 多功能I/O端口P0口第3239脚,8位漏极开路双向I/O端口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问数据存储器或程序存储器时,这组口线分时转换地址和数据总线复用,在访问期间激活内部上拉电阻。P1口第18脚,具有内部上拉电路的8位准双向I/O端口。在对片内程序

38、存储器(EPROM型)进行程序编程和校验时,用做低8位地址总线。P2口第2128脚,具有内部上拉电路的8位准双向I/O端口。当单片机访问存储器时,用做高8位地址总线;在对片内程序存储器(EPROM型)进行程序编程和校验时,亦用做高8位地址总线。P3口第1017脚,具有内部上拉电路的8位准双向I/O端口。它还提供特殊的第二功能。它的每一位均可独立定义为第一功能的I/O口或第二功能。第二功能的具体含义如表3.2:表3.2 P3口的第二功能端口引脚第二功能P3.0RXD (串行输入口)P3.1TXD (串行输出口)P3.2 (外中断0)P3.3 (外中断1)P3.4T0 (定时/计数器0)P3.5T

39、1 (定时/计数器1)P3.6 (外部数据存储器写选通)P3.7 (外部数据存储器读选通)3.6.3复位电路AT89C51复位有一个专用的外部引脚RESET,外部可通过此引脚输入一个正脉冲使单片机复位。所谓复位,就是强制单片机系统恢复到确定的初始状态,并使系统重新从初始状态开始工作。本设计采用的是电平式开关与上电复位电路,为了能使运行中的系统,经人工干预,强制系统进行复位。其电路如图3.11所示:图3.10 复位电路4 软件部分4 软件部分4.1 程序设计总体分析超声波测距仪软件设计主要由主程序、超声波发射子程序、超声波接收中断程序及显示子程序组成。超声波主程序首先对系统初始化,设置定时器的初

40、值和工作方式,使总中断允许位EA=1,并给显示端口清零。然后调用超声波发生子程序送出一个超声波脉冲,为避免超声波从发射器直接传送到接收器引起的直接波触发,需延时0.1ms(这也就是测距器会有一个最小可能测距的原因)后,才能打开外中断0接收返回的超声波信号。由于采用12MHZ的晶振,机器周期为1us,当主程序检测到接收成功的标志位后,将计数器T0中的数(即超声波来回所用的时间)按下式计算即可测得被测物体与测距器之间的距离,设计时取20摄氏度时的声速340m/s,则有:,(其中T0为计数器T0的计数值)。4.2 程序流程图超声波测距器程序流程图如图4.1所示。系统初始化开始发射超声波脉冲接收超声波

41、脉冲计算距离显示结果 图4.1 超声波测距器程序流程图4.3 电路程序设计电路程序部分包括超声波发射程序、超声波中断程序、超声波显示程序三部分。4.3.1 超声波发射程序 测距系统中的超声波传感器采用UCM40的压电陶瓷传感器,它的工作电压是40kHz的脉冲信号,这由单片机执行下面程序来产生。PUZEL: MOV 14H, #12H;超声波发射持续200msHERE: CPL P1.0 ;输出40kHz方波 NOP ; NOP ; NOP ; DJNZ 14H,HERE; RET前方测距电路的输入端接单片机P1.0端口,单片机执行上面的程序后,在P1.0 端口输出一个40kHz的脉冲信号,经过

42、三极管T放大,驱动超声波发射头UCM40T,发出40kHz的脉冲超声波,且持续发射200ms。右侧和左侧测距电路的输入端分别接P1.1和P1.2端口,工作原理与前方测距电路相同。4.3.2 超声波接收中断子程序超声波发生子程序的作用是通过P1.0端口发送左右超声波脉冲信号(频率约40kHz的方波),脉冲宽度为12s左右,同时把计数器T1打开进行计时,定时器T1工作在方式0。超声波测距仪主程序利用外中断1检测返回超声波信号,一旦接收到返回超声波信号(即引脚出现低电平),立即进入中断程序。进入中断后就立即关闭计时器T1停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,

43、则定时器T1溢出中断将外中断1关闭,并将测距成功标志字赋值0表示此次测距不成功。T0中断服务程序如下:sbit send=P10;void timer0(void)interrupt 1 send=!send; TH0=0x1f; TL0=0xf4;超声波接收(外部中断1)程序:void int1(void)interrupt 2 if(TH1!=0x00&&TH0!=0x00) b=1; TR1=0; TR0=0; t=TH1*256+TL1; t=t/1000000; TH0=0x1f; TL0=0xf4; TH1=0x00; TL1=0x00;else b=0; TR1=

44、0; TR0=0; TH0=0x1f; TL0=0xf4; TH1=0x00; TL1=0x00; 4.3.3 计算超声波传播时间显示程序 RECEIVE0:PUSH PSWPUSH ACCCLR EX0 ;关外部中断0MOV R7, TH0 ;读取时间值MOV R6, TL0? CLR CMOV A, R6SUBB A, #0BBH;计算时间差MOV 31H, A ;存储结果MOV A, R7SUBB A, #3CHMOV 30H, A? SETB EX0 ;开外部中断0POP ACC? POP PSWRETI5 电路仿真 5 电路仿真5.1 软件编译调试环境Keil单片机开发中除必要的硬件

45、外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分

46、组合在一起。5.2 系统仿真环境ProteusProteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件具有如下特点:实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。支持主流单片机系统的仿真。目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、P

47、IC18系列、Z80系列、HC11系列以及各种外围芯片。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。5.3 系统仿真由于Proteus里没有超声波传感器,也没有能够完全代替它功能元件,所以本设计只叙述其能仿真出来一部分。5.3.1 源程序的录入先右击AT89C51,再左击AT89C51,会出现如图5.1所示

48、的对话框,点击,选择所需要的HEX文件。然后单击OK。 图5.1 录入源程序对话框 5.3.2 仿真的实现一切准备就绪后,点击,就开始仿真了。图5.2为本设计的系统仿真原理图。图5.2 系统仿真原理图5.4 误差及特性分析虽说在仿真时温度传感器DS18B20是可视调节,且全为整数,但LED显示时当温度达到一定范围便会出现小数误差。例如当DS18B20显示是28时,而LED显示是28.4;而当DS18B20显示是25时,而LED显示仍是25;而仿真表明随着温度的升高其误差大小也并不一致,且全都控制在1以内。说明这并不是固有误差,很难避免,可以忽略,其对距离测量的影响也微乎其微,并不会使距离测量精

49、度明显降低。根据超声波的特性,距离测量时必须满足条件:被测目标必须垂直于超声波测距仪。被测目标表面必须平坦。测量时在超声波测距仪周围没有其他可反射超声波的物体。因此在测量过程中稍不小心就会接收不到超声波,而导致没有测量结果。由于超声波的往返时间由单片机AT89C51的定时器T1来记,定时器T1工作在方式1,其最大定时时间为65.536ms,可得出在常温下最大的测量距离在10m以内。且因为发射功率有限,测距仪也无法测量10m外的物体。6 电路调试6 电路调试超声波测距器的制作和调试,其中超声波发射和接收采用16的超声波换能器TCT40-16F1(T发射)和TCT40-16S1(R接收),中心频率

50、为40kHz,安装时应保持两换能器中心轴线平行并相距48cm,其余元件无特殊要求。若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容C4的大小,以获得合适的接收灵敏度和抗干扰能力。 按照已经设计好的电路原理图将元器件焊成整机块版。硬件电路制作完成并调试好后,便可将程序编译好下载到单片机试运行。根据实际情况可以修改超声波发生子程序每次发送的脉冲宽度和两次测量的间隔时间,以适应不同距离的测量需要。根据所设计的电路参数和程序,测距器能测的范围为0.073m,测距器最大误差不超过1cm。系统调试完后应对测量误差和重复一致性进行

51、多次实验分析,不断优化系统使其达到实际使用的测量要求。图6.1、6.2、6.3分别为整块版通电调试时测试的不同的三个测距显示。图6.1 测试第一个测距显示图6.2 测试第二个测距显示图6.3 测试第三个测距显示结论结论本文主要介绍了以单片机AT89C51为处理器超声波测距器的设计过程,包括电路设计和程序的设计以及电路的搭建与调试。此设计电路由超声波传感器、单片机、发射/接收电路和LED显示器组成。以单片机AT89C51为主处理器,通过超声波传感器发射和接收超声波,再通过单片机中断测出单片机由发射到接收到超声波的时间,再计算出单片机与被测物体之间的距离,然后通过数码管显示出被测物体与单片机之间的

52、距离。发射电路主要有74LS04和超声波换能器构成用单片机P1.0端口输出40KHZ方波信号一路经一级反向后送到超声波换能器的一个电极,另一路经两级反向后送到超声波换能器的另一个电极。超声波接收采用的是常用于电视红外遥控接收器的芯片CX20106A。显示电路采用四位数码管的动态显示。此超声波测距电路的单片机程序采用C语言编写,包括主程序、显示程序、中断程序、超声波发射程序等。通过keil C软件编写调试,生成HEX文件通过软件烧至进单片机。本电路设计由于元器件及其成板误差,测量最大距离未能达到设计初衷要求,但对测量距离结果的误差影响不大,能满足日常生活、工业生产的测量要求,因此此设计有着很大的意义。同时通过这个设计能够提高我对单片机的认识、编程能力和电路设计能力。致谢致谢首先,我要感谢我的指导老师陈慧丽老师在毕业设计和写论文的过程中对我给予的指导和严格要求,从选题到查阅资料,开题报告的书写,后期论文的书写以及格式调整等各

温馨提示

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

评论

0/150

提交评论