单片机课程设计之超声波测距-电子工程系单片机课程设计报告.doc
《单片机课程设计之超声波测距-电子工程系单片机课程设计报告.doc》由会员分享,可在线阅读,更多相关《单片机课程设计之超声波测距-电子工程系单片机课程设计报告.doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、湖南科技学院电子工程系单片机课程设计报告项目登记表项目名称: 超声波的测距设计 对应课程: 单片机课程设计指导 系别年级: 电子工程系2010级 专业班级: 电子信息工程电信1002班 项目负责人: 唐建军 (201006002215) : 夏林波 (201006002230) 联系电话: 15211649249 2013 年 上 期摘要该设计主要用于测量两辆运输小车之间的实时距离,以防其相撞。该系统应能实时测量两个物体之间的距离,并通过显示来提醒操作者。在适当距离内通过声光系统报警并给出信号以进行适当操作。控制系统核心部分就是超声波测距仪的研制。因此,设计好的超声波测距仪就显得非常重要了。本
2、设计采用以AT89S51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。整个电路采用模块化设计,由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。目录一、功能要求.4二、方案论证.4三、系统硬件电路设计.51. 单片机系统及显示电路.52.超声波发射电路.63.超声波检测接收电路.7四、 系统程序的设计.81. 超声波测距器的算法设计.82.主程序算法设计.83.超声波发生子程序和超声波接收中断程序.10五、 遇
3、到的问题以及解决办法.191. 当把硬件电路连接好后,接到电源,发现LED灯不亮.19 1).单片机不工作.192).LED显示模块的硬件电路设计有问题.203).LED显示模块的硬件电路连线有问题.202. LED全部显示8888的问题.203.晶振不能正常工作的问题.214.复位电路.21六、 总结.21七、 仿真结果.22八、 实物拍摄.23九、参考文献.25一、功能要求超声波测距器可应用于汽车倒车。建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度、物体厚度等的测量。其测量范围为0.104.00m,测量精度为1cm。测量时与被测物体无直接接触,能够清晰、稳定地显示测
4、量结果。二、方案论证 由于超声波指向性强,能量消耗慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。利用超声波检测距离设计比较方便,计算处理也比较简单,并且在测量精度方面也能达到使用的要求。 超声波发生器可以分为两大类:一类是使用电气方式产生超声波;另一类是用机械方式产生超声波。电气方式包括电压型、电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波各不相同,因而用途也各不相同。目前在近距离测量方面较为常用的是压电式超声波换能器。 根据设计要求并综合各方面因素,本例决定采用AT89C52单片机作为主控器,用动态扫描法实现LED数字显示,超声波驱动信号用单
5、片机的定时器完成。超声波测距器系统设计框图如下:三、系统硬件电路设计硬件电路主要分为以下三个部分:1. 单片机系统及显示电路单片机采用89C51或其兼容系列。系统采用12MHZ高精度的晶振,以获得较稳定的时钟频率,并减小测量误差。单片机用P1.0端口输出超声波换能器所需的40kHz方波信号,利用外中断0口监测超声波接收电路输出的返回信号。显示电路采用简单实用的4位共阳LED数码管,段码用74LS244驱动,位码用PNP三极管驱动。单片机系统及显示电路如图:LED的工作原理:四位共阳LED的一边是段选端,一边是位选端。同名段选端各自相连,然后7位段选端口接到P0口,位选端接到P2口。通过位选可以
6、控制每一个LED亮,通过段选端可以控制LED亮什么,其中段选端还要接上拉电阻,其作用是为了保证LED能够点亮。在位选端加一个高电压,段选端加一个低电压,那么再加上上拉电阻的作用,便可以保证LED的两端形成一个压差,这样LED就点亮了。2.超声波发射电路 超声波发射电路原理图如下图。发射电路主要由反向器74LS04和超声波换能器构成,单片机P1.0端口输出的40kHz方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推挽形式将方波信号加到超声波换能器两端可以提高超声波的发射速度。输出端采用两个反向器并联,用以提高驱动能力。两个上拉电阻一
7、方面可以提高反向器74LS04输出高电平的驱动能力;另一方面可以增加超声波换能器的阻尼效果,以缩短其自由振荡的时间。 超声波换能器的工作原理 压电式超声波换能器是利用压电晶体的谐振来工作的。超声波换能器内部结构如下图所示,它有两个压电晶片和一个共振板。当它的两极加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动产生超声波,这时它是一个超声波发生器;反之,如果两极间未加外电压,当共振板接收道超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收换能器了。超声波发射换能器与接收换能器在结构上稍有不同,使用时应分清器件上的标志。超声波发射换能
8、器上标有字母T,而接收换能器上标有字母R。超声波换能器结构图 3.超声波检测接收电路 集成电路CX20106A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38kHz与测距的超声波频率40kHz较为接近,可以利用它制作超声波检测接收电路,如图所示。实验证明,用CX20106A接收超声波(无信号的输出高电平)具有很高的灵敏度和较强的抗干扰能力。适当地更改电容C4的大小,可以改变接收电路的灵敏度和抗干扰能力。超声波检测接收电路四、 系统程序的设计 超声波测距器的软件设计主要由主程序、超声波程序发生子程序、超声波接收中断程序及显示子程序组成。由于C语言程序有
9、利于实现较复杂的算法,汇编语言程序则具有较高的效率并且容易精确计算程序运行的时间,而超声波测距器的程序既有较复杂的计算(计算距离时),又要求精确计算程序运行时间(超声波测距时),所以控制程序可采用C语言和汇编语言混合编程。下面对超声波测距器的算法。1. 超声波测距器的算法设计 距离计算公式:d=s/2=(vt)/2其中d是被测物与测距器的距离;s是超声波的来回路程,v是超声波在当前温度下的速度,t是发送和接收超声波所经历的时间。超声波测距器原理图TR障碍物2.主程序算法设计主程序首先要对系统环境初始化,设置定时器工作模式为16位定时、计数器模式,置位总中断允许位EA并对显示端口P0和P2清0;
10、然后调用超声波发生子程序送出一个超声波脉冲。为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延迟0.1ms后才打开外中断0,接收返回的超声波信号。由于采用12MHZ晶振,计数器每记一个数就是1us,取20时的超声波传输速度v=344m/s,则d=(vt)/2=344t/2=(172T0/106)m=(172T0 /10000)cm其中T0为中断T0的计数值。测出距离后,结果以十进制BCD码方式送往LED显示约0.5S,然后再发出超声波脉冲重复测量。开始系统初始化发送超声波脉冲等待反射超声波计算距离显示结果主程序流程图如下:3.超声波发生子程序和超声波接收中断程序 超声波发生子程序的
11、作用是通过P1.0端口发送两个左右的超声波脉冲信号(频率约40KHZ的方波),脉冲宽度为12us左右,同时把计数器T0打开进行计时。超声波发生子程序较简单,但要求程序运行时间准确,所以采用汇编语言程序编程。超声波测距主程序利用外中断0检测返回超声波信号,一旦接收到返回的超声波信号(即INT0引脚出现低电平),立即进入超声波接收中断程序。进入该中断后,就立即关闭计时器T0,停止计时,并将测距成功标志字赋1。如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志字赋值2,表示本次测距不成功。源程序代码:#include#include/*数码管为共阳数码管
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 超声波 测距 电子 工程系 报告
限制150内