基于单片机的超声波测距系统的设计与实现._第1页
基于单片机的超声波测距系统的设计与实现._第2页
基于单片机的超声波测距系统的设计与实现._第3页
基于单片机的超声波测距系统的设计与实现._第4页
基于单片机的超声波测距系统的设计与实现._第5页
已阅读5页,还剩93页未读 继续免费阅读

下载本文档

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

文档简介

1、本科毕业设计(论文)基于单片机的超声波测距系统的设计与实现段炼燕山大学2012年6月基于单片机的超声波测距系统的设计与实现学院(系):专业:学生姓名: 学号:081308061167指导教师:答辩日期:2012-6燕山大学毕业设计(论文)任务书学院:里仁学院系级教学单位:电子与通信工程系学 号081308061167学生 姓名段炼专业 班级电子信息工程08-3 班题 目题目名称基于单片机的超声测距系统设计与实现题印性质1. 理工类:工程设计(V );工程技术实验研究型();理论研究型();计算机软件型();综合型()2. 管理类();3.外语类();4.艺术类()题目类型1.毕业设计(V )2

2、.论文()题目来源科研课题()生产实际(V )自选题目()主 要 内 容在深入学习单片机的基础上,利用声波传播的延时设计无线测距系统。 系统由单片机、超声波发射电路、超声波接收模块、显示电路组成。为提高 精度,应考虑温度补偿问题。要求设计系统电路图及系统软件。基 本 要 求1. CPU采用与51兼容的STC系列单片机2 要求设计硬件电路图及系统软件3 测距氾围5m,误差10cm参 考 资 料单片机原理数字信号处理基于AT89S51单片机的超声测距系统设计,北京电力高等专科学校学报,2011.9中国期刊全文数据库及相关电子资源周次1 4周57周7 12 周1314 周15 17 周应宀 完 成

3、的 内 容查阅资料熟悉内容方案设计硬件调试软件编程软件调试系统联调撰写论文指导教师:练秋生职称:教授 2012年3月1日系级教学单位审批:顾广华2012年3月10日摘要摘要超声波测距是无线测距的一种,由于其可以直接测量近距离目标,纵向 分辨率高,适用范围广,方向性强,并具备不受光线、烟雾、电磁干扰等因 素影响,且覆盖面较大等优点。本次课题的主要内容是在深入学习单片机的 基础上,设计并实现利用超声波进行距离测量的系统。系统主要原理是系统控制超声波发射器发生超声波的同时开始计时,之后超声波接收器接到超声波到达被测物体的反射信号后产生外部中断停止 计时,在已知超声波的速度的情况下通过测量超声波的运动

4、时间来进行计算 从而测量出测距系统与被测物之间的距离。整个系统硬件电路采用模块化设 计,包括单片机核心板,超声波测距模块,液晶显示模块和温度测量模块四 部分。软件部分包括温度测量程序、液晶显示程序、超声波发送和接收程序 以及主程序。经过系统联调,本系统成功实现了在一定距离范围内的准确距 离测量,具有迅速、方便、易于操作等特点,可应用于移动机器人避障和汽 车倒车雷达等领域中。关键词 超声波;测距;单片机;温度补偿I燕山大学本科生毕业设计(论文)AbstractUltras onic ranging is a kind of wireless ranging. Because of ultras

5、onic ranging can measure n ear objective directly, have a high len gthways resolutio n ratio, its wide range of applicati on, have strong direct ion, and have not affected by light, smog, electromag netic in terfere nee and some other factor, and the coverage of ultras onic ranging is bigger tha n o

6、ther wireless ranging.Main content of this topic is on the basis of deep lear ning Sin gle Chip Microcomputer, used acoustic wave propagatio n to desig n a wireless ranging system. The principle of this system is use the timer measurement of ultrasonic emissi on to reach the obstacle reflect ion bac

7、k to the time of the ultras onic receiver to measure the data. The hardware of whole system is formed by Sin gle Chip Microcomputer, ultras onic ranging measuri ng modular, display modular and temperature measureme nt modular. The software is formed by display program, temperature measureme nt progr

8、am, ultras onic tran smitter and receiver program and main program. From the associative debugg ing, the system achieves the ultrasonic ranging in a near distance successfully, s so quick, convenient and easy to operate, can be applied to the field of mobile robots and car revers ing radar.Key Words

9、 Ultras onic; Ranging; MCU; Temperature Compe nsati onii目录摘要 IAbstract I.I.目录 III第 1 章 绪论 11.1 课题背景 11.1.1 超声波测距技术的国内外现状 11.1.2 超声波测距技术研究的主要成果 21.1.3 超声波测距技术的主要发展趋势 31.1.4 超声波测距技术存在的问题 31.2 本文的结构和主要内容 4第 2 章 超声波测距硬件设计 62.1超声波测距基本原理 62.2 单片机核心部分 72.2.1 电源供电电路 92.2.2 单片机时钟电路 92.2.3 单片机复位电路 102.3 液晶显示模

10、块 102.4 温度测量模块 1.1.2.5 超声波测量模块 132.5.1 超声波的特性 132.5.2 超声波传感器原理 132.5.3 超声波发射部分 152.5.4 超声波接收部分 152.6 各部分连接方案 162.7 本章小结 17第 3 章 超声波测距软件设计 193.1 软件设计方法 193.2 软件系统流程介绍 203.3 液晶显示模块 203.4 温度测量模块 2.2.3.5 超声波测量模块 2.3.3.6 主程序部分 2.4.3.7 本章小结 2.5.第 4 章 系统联调过程及结果分析 2.63.1 系统联调过程及结果 2.6.3.2 存在的问题及原因 3.0.3.2.1

11、 无法测量过近距离 3.03.2.2 测量结果不够精确 3.13.2.3 测量距离不够远 3.23.3 本章小结 3.2.结论3.3.参考文献 3.4.致谢3.5.附录 13.6.附录 24.4.附录 35.0.附录 45.9.III第1章绪论第1章绪论1.1课题背景1.1.1超声波测距技术的国内外现状无线测距指用无线电测量载机与某个目标或反射面之间的信号传播延 迟、频率、相位差来测定两点之间直线距离的方法。目前,测量距离的方法 主要采用测量波在介质中传播速度与时间的关系。随着传感器和单片机控制 技术的不断发展,无线检测技术已被广泛应用于多个领域。目前,典型的无线测距方法有超声波测距、CCD探

12、测、雷达测距、激光测距等。其中,CCD 探测具有使用方便、无需信号发射源、同时获得大量的场景信息等特点,但 视觉测距需要额外的计算开销。雷达测距具有全天候工作,适合于恶劣的环 境中进行短距离、高精度测距的优点,但容易受电磁波干扰。激光测距具有 高方向性、高单色性、高亮度、测量速度快等优势,尤其是对雨雾有一定的 穿透能力,抗干扰能力强,但其成本高、数据处理复杂。与前几种测距方式相比,超声波测距可以直接测量近距离目标, 纵向分 辨率高,适用范围广,方向性强,并具备不受光线、烟雾、电磁干扰等因素 影响,且覆盖面较大等优点11 目前,超声波测距已普遍应用在液位测量、 移动机器人定位和避障等领域,应用前

13、景广阔。超声波是指频率在20kHz以上的声波。当声的频率高到超过人耳听觉 的频率极限时,人们就会觉察不出周围声的存在,因而称这种高频率的声为 超”声,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传 播规律,如在介质的分界面处发生反射和折射现象, 在进入介质后被介质吸 收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量 中。超声波测距方法主要有相位检测法、声波幅值检测法和渡越时间法三种。 其中,相位检测法精度高,但检测范围有限;声波幅值检测法易受反射介质21的影响。因此,当前超声波测距一般使用渡越时间法2 O超声波测距的工作原理是发射换能器向外发射超声波,超声波在介质

14、中传播,遇到障碍物后反射,产生回波,接收换能器接收回波。渡越时间法就是通过检测发射超声波与接收回波之间的时间差求出目标障碍物距信号发 射源的距离。从技术上看,超声波测距系统在上个世纪 70年代已经实用化从上个世 纪70年代末期已经广泛应用于各个领域。近十年来,国内科研人员在超声 波回波信号处理方法、新型超声波换能器研发、超声波发射脉冲选取等方面 进行了大量理论分析与研究,并针对超声测距的常见影响因素提出温度补 偿、接收回路串入自动增益调节环节等提高超声波测距精度的措施。1.1.2超声波测距技术研究的主要成果超声波测距凭借其原理简单、易于实现以及成本低等优点,在液位测量、 移动机器人定位和避障、

15、汽车防撞、曲面仿形检测和导盲系统等领域得到了 广泛的应用。接触式液位测量存在易渗漏、易腐蚀、不便于检修和维护等问题,利用 超声波测距可以实现液位的非接触式测量,解决上述问题。与其他测位方法相比,超声波液位测量具有结构简单、非接触、安装和维护方便、性能稳定 可靠等优势。移动机器人需要装备多种传感器来获取环境信息以确定自身的位置和 绕开障碍物,其中比较常用的传感系统是视觉系统和超声波测距系统。超声波传感器已经被广泛用作测距传感器,并应用于机器人的定位和避障。随着汽车拥有量的增长,汽车的安全和使用便捷性能受到了空前的关 注。由于存在视觉盲区,人们在倒车时无法看清楚车子后面的障碍物, 很容 易刮伤汽车

16、或发生事故。通过在车身前后安装超声测距传感器可以有效测量 车身距障碍物间距离,解除了驾驶员泊车、倒车和起动车辆时前后左右探视 所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高驾驶的安全性。大多数曲面外形尺寸很难通过传统测量方式获得, 而超声波测距可以通 过采用多传感器多角度测距,确定其外形特征,以实现对曲面的检测。目前市场上有多种导盲设备,但大多原理简单、功能单一、较机械化,出 现的问题也较多,给经常出门的盲人使用者带来不便。而利用超声波测距系统制作的导盲系统操作简单方便;超声测距、无线传输让整个导盲设备更轻 便;具有语音告知功能,兼带振动功能,更加人性化、智能化。1.1.3超声

17、波测距技术的主要发展趋势超声波测距中,超声波回波处理方法的优劣,直接关系到回波前沿的定 位精度和渡越时间的测量精度,进而决定着超声波探测定位系统的精度和反 应速度。因而今后超声波测距信号处理方法的改进是超声波测距的主要研究 方向之一。目前,国内学者对超声波回波信号处理算法的研究已经日渐成熟, 但其作为超声波探测定位的关键技术,仍将是一个重要的研究方向。随着超声波回波信号处理方法的不断完善,如何研发新型、高性能超声 波换能器以进一步拓宽超声波测距的应用空间, 作为解决超声波测距系统不 足的根本手段,越来越受到国内学者关注。现阶段,国内一些科研人员在超 声波发射电路的简化、发射功率和频率的控制、最

18、大探测距离的提高等方面 对新型超声波换能器进行研究并取得了一定成果,但对新型超声换能器制作 材料、超声波发生机理创新等方面的研究尚有不足。目前市场上普通的超声波测距系统,一般采用发射单超声脉冲的方法, 这种方法在测距精度和可靠性等方面的研究已较成熟。但是当它采用较高频 率超声波时,会因空气吸收而较快衰减,导致有效测量距离降低;在通过降 低频率以增大测距范围时,测距的绝对误差又会增大。因而该方法存在测量 分辨力和有效作用距离的矛盾,极大制约了超声波传感器应用领域的拓宽。 近年来,如何合理选择超声发射脉冲,可以使超声波测距系统在提高有效作 用距离的同时,相应提高测量精度与抗干扰能力,成为超声波测距

19、技术的又 一个重要研究方向。1.1.4超声波测距技术存在的问题超声波传播波速不恒定,超声波在介质中的传播速度随周围环境(温度、 压力等)的变化而变化,其中温度的影响最为明显。常温下,超声波的传播 速度为340m/s,温度每升高1C,声速增加约为0.6 m/s,因此超声波测距 中一般采用温度补偿的方法,即在数据处理中对超声波传播速度进行实时温 度补偿3。回波信号幅值随传播距离增大呈指数规律衰减,使得接收传感器接收到 的回波信号随着测量距离的增大而大幅减小,给回波前沿的准确定位带来困 难,造成测量精度降低。在回路上串入自动增益调节环节(AGV),使得电路放大倍数随着测量距离的增大而相应规律地增加,

20、可有效解决该问题。发射超声波时,超声波换能器在驱动脉冲结束后,会由于惯性继续振动, 产生余振。余振期间,由于无法区分回波信号与余振信号,因此必须等余振 停止或衰减到足够小后,才能允许接收传感器接受信号。这段时间由于无法 检测超声波传播距离,从而出现盲区。接收传感器在超声波发射结束后接收到的第一个波一般是串扰直通波。 它是超声波信号由近源的波束旁瓣或通过换能器绕射,直接到达接收传感器造成的。因此,安装传感器过程中,两个探头之间距离应大于3cm,从而降低超声波旁瓣对测距系统精度的影响。混响信号是由于水中介质及界面等非目标物对发射信号的反向散射波 在接收点叠加而产生的。其本身是一种回波,且包含的信号

21、频率与发射信号 相近,不能被一般滤波电路或算法消除。 特别在近距离探测中,它是主要背 景干扰。测距时,可以根据时间变化,控制接收放大电路的增益,以实现对 混响信号幅值的抑制。1.2本文的结构和主要内容本文研究的主要内容是利用 51单片机设计一种超声波测距的设备。基 本内容如下:系统由单片机核心系统、超声波发送和接收部分、显示部分和 温度部分模块四部分组成。超声波发送和接收部分就是超声波传感器。当系统运行时,超声波发送部分发出超声波传至被测物后经反射由接收器接收, 通过控制单片机的外部中断来实现计时。 论文共分为五章,章节主要内容如 下:第2章主要说明超声波测距系统的硬件构成,包括超声波测距的原

22、理, 单片机核心与各部分电路的芯片介绍与方案设计以及各部分电路与单片机 核心之间的连接方式。第3章主要说明超声波测距软件的设计方法和过程, 包括编程软件的使 用方法,系统整体的工作流程以及各个模块软件的主要内容及其注释。第4章主要说明超声波测距系统的调试过程, 包括测量方法的介绍,测 量数据的整理和总结,从测量数据中发现的问题以及修正手段。5第2章超声波测距硬件设计13第2章超声波测距硬件设计2.1超声波测距基本原理超声波测距的主要方法有脉冲回波法、 共振法和频差法等。其中脉冲回 波法最为常用,它主要基于超声测距回波信号的识别, 多采用模拟方法,用 电路来实现。其原理如右图所示,发射器发出的超

23、声波以速度 v在空气中传 播,在空气中传播至被测物,经反射后由超声传感器接收反射脉冲, 可得其 往返时间t即可算出被测物体与超声波发射器的距离s=vt/2(2-1)设超声波发射器与接收器之间角度为9,则如下图所示,被测物体实际距离(2-2)其中对于9有将(2-1)、(2-2)、(2-3)三式整理合并得1L(2-3)H vtcosarctg (2-4)v - arctg *当需要测量的距离H远远大于L时,近似认为H与S相等,可得1H vt2(2-5)由式(2-5)可知,只要测得超声波从发射到接受所需时间,即可测出 所需距离H。测距原理如图2-1所示。按照系统设计的功能要求,初步确定设计系统由单片

24、机主控模块、显示 模块、超声波发射模块、接收模块共四个模块组成。在常温下,超声波的传播速度为340m/s,但其传播速度v易受到空气中温 度、湿度、压强等因素的影响,其中温度的影响最大。一般温度每升高1C,声速增加约为0.6m/s。由此可见温度对于超声波测距系统的影响是不可忽略 的。为了得到较为精确的测量结果,必须对波速进行温度补偿。图2-1超声波测距系统原理图波速与温度之间的关系如表2-1所示。表2-1波速与温度关系表温度(C)-30-20-100102030100波速(m/s)313319325323338344349386由表2-1可得温度与波速得经验模型如下:v =331.5 0.607

25、T( 2-6)式中T现场温度;v 实际波速,从上式可以看出,要获得准确的波速,必须首先获取现场温度T的大小。 一般采用DS18B20温度传感器测量现场温度。2.2单片机核心部分单片机也叫做 微控制器”或者嵌入式微控制器”它不是完成某一个逻 辑功能的芯片,而是把一个微型计算机系统集成到一个芯片上。概括的讲, 一块芯片就成了一台计算机。它体积小、质量轻、价格便宜,为学习、应用 和开发提供了便利条件。近年来,微处理器已广泛应用于多种领域, 尤其是 在智能仪器仪表中的应用更是如此, 这不仅引起了产品本身的变革,也深深 地影响设计的理念的变革。智能仪器仪表作为一种智能系统,其核心在于微 处理器。基于微处

26、理器的智能系统设计,已成为目前电子设计领域的一个热 点。智能系统是一个复杂的系统,一般包含微处理器、按键与显示人机界面、 A/D转换、D/A转换等基本功能部件,同时也包含与应用领域相关的其他特 殊部件。智能系统一般需要在恶劣的环境下长期连续地工作,因此在满足功能的基础上,其可靠性也是设计时需要考虑的一个方面, 目前已经普遍应用 于通信、雷达、遥控和自动控制等各个领域中。 在本次毕业设计中我选用的 是AT89C51单片机,是一种带4K字节FLASH存储器的低电压、高性能的 CMOS微处理器。WCU1RESETO 1 %, - 3 4 5 6 7 popopo.w2popo1OK*SP20P21P

27、22PMP24P25P26P27PIO pH pH pTJP24 pH pi5RXDIXDALE7PPSENPSEN12C5A60S2图2-2单片机核心板电路单片机核心板电路原理图如图2-2所示。本次毕业设计中单片机核心板的主要实现芯片为STC12C5A60S2,该系列单片机是宏晶科技生产的单时钟/机器周期的高速/低功耗/超强抗干扰的 新一代8051单片机。该系列单片机的主要特点有以下几个方面:指令代码完全兼容传统8051,但速度快8-12倍;工作电压为5.5V - 3.3V ;工作频率范围为0 - 35MHz ;用户应用程序空间为8k字节;片上集成1280字节RAM ;含通用I/O 口, 每

28、个I/O驱动能力均可达20mA,复位后为普通8051传统I/O 口,可设置成 普通、推挽、高阻、开漏4种模式;ISP/IAP,无需专用编程器,无需专用 仿真器;可通过串口直接下载用户程序,数秒即可完成一片;有 EEPROM 功能;看门狗;内部集成 MAX专用复位电路、2路PWM、8路高速10为 A/D转换;在P4.6 口有一个低压门槛比较器;时钟源为外部高精度晶体(晶 振22.1184MHz),内部R/C振荡器,用户在下载程序时可选择使用类型; 有两个与传统8051兼容的定时器/计数器;外部中断I/O 口 7路,传统的下 降沿终端或低电平触发中断;工作温度范围是075 C。2.2.1电源供电电

29、路本单片机系统采用电源供电电路,即通过变压器将单片机与220V电压直接相连,则单片机核心板的 VCC端能够接收到约5V的直流稳压电源, 对于本系统来说简单方便。C1 | +C2 12r7ulOlu 11g EXTPl图2-3电源供电电路Header 2电源供电电路原理图如图2-3所示。2.2.2单片机时钟电路对于单片机时钟电路,用于产生单片机工作所需要的时钟信号, 而时序 所研究的是指令执行中各信号之间的相互关系。单片机本身就如一个复杂的 同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号的 严格控制下。单片机内部有一个高增益反相放大器,其输入端为芯片引脚 XTAL1, 其输出端

30、为引脚XTAL2。而在芯片的外部,XTAL1和XTAL2之间跨接晶 体振荡器和微调电容,从而构成一个稳定的自激振荡器。电容器C1和C2的作用是稳定频率和快速起振,电容值的范围在5pF到30pF典型值为30pF。晶振的频率为22.1184MHz。只要在单片机的XTAL1 和XTAL2引脚外接晶体振荡器就构成了自激振荡器并在单片机内部产生时 钟脉冲信号。图2-4单片机时钟电路单片机时钟电路原理图如图2-4所示。2.2.3单片机复位电路复位电路是使单片机的CPU或系统中的其他部件处于某一确定的初始 状态,并从这上状态开始工作。本单片机的复位电路有两种,即上电复位电路和按键复位电路。上电复 位是单片机

31、上电时复位操作,保证单片机上电后立即进入规定的复位状态。 按键复位电路即要实现复位的话,只要按下 RESET键即可。它主要是利用 电阻的分压来实现的。上电复位要求接通电源后,单片机自动实现复位操作。上电瞬间RESET 引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可 以进行复位操作。上电与按键均有效的复位电路不仅在上电时可以自动复位,而且在单片机运行期间,利用按键也可以完成复位操作。单片机复位电路的原理图如图2-5所示。2.3液晶显示模块液晶显示部分主要采用LCD1602液晶显示器。该模块具有如下特点: 可

32、分为2行共显示32个字符,每行16个字符;其可与8位或4位微处理器I图2-5单片机复位电路可分为2行共显示32个字符,每行16个字符;其可与8位或4位微处理器 连接;内藏式字符发生器 ROM,可提供160种工业标准字符,包括全部大 小写字母、阿拉伯数字及片假名,以及 32个特殊字符与符号的显示;内藏 式ROM可根据用户的需要由用户自定义字符或符号;需 +5V单电源供电; 低功耗。对于LCD1602液晶显示模块,它的指令系统包括清显示指令、光标返 回指令、输入模式设置指令、显示开关控制指令、光标或字符移位指令、功 能设置指令、字符发生存储器地址设置指令、数据存储器地址设置指令、读 忙标志或光标地

33、址指令、写数据指令和读数据指令。本次毕业设计的内容主要是显示超声波测量的距离,使用LCD1602不但可以成功用数字表示距离显示,还可以显示温度以确认测距精准度。 模块 功耗小、体积小、显示内容丰富、超薄轻巧。可在本系统中作为显示设备显 示出准确、有序而美观的测量结果。液晶驱动电路原理图如图2-6所示。2.4温度测量模块温度测量采用DS1820温度传感器,该传感器提供9位温度读数,指示 器件温度。该芯片有如下特性:具有独特的单线接口,只需一个接口即可通 信;多点能力使分布式温度检测应用得以简化;不需要外部元件;可用数据线供电;不需备份电源;测量范围为-55C至+125T,增量值为0.5C ;以9

34、第2章超声波测距硬件设计21LCD1602位数字值方式读出温度。DS18B20温度测量模块的内部结构主要由 64位光刻ROM、温度传感 器、非挥发的温度报警触发器 TH和TL以及配置寄存器四部分组成。本次超声波测距只统计温度值即可,使用DS18B20芯片具有测温系统简单、测温精确度高、与单片机核心板连接方便、占用线口少等优点,可简 单高效地达到本系统的要求。温度测量部分电路原理图如图2-7所示。GKDDS18B2O1GNDDQ2.5超声波测量模块2.5.1超声波的特性声音是与人类生活紧密相关的一种自然现象。当声的频率高到超过约 20kHz时,人耳听觉的频率达到极限,人们就会觉察不出周围声的存在

35、,因 而称这种高频率的声为 超”声。超声波的特性有以下四个方面:首先是束射特性。由于超声波的波长短,超声波射线可以和光线一样, 能够反射、折射,也能聚焦,而且遵守几何光学上的所有定律。即超声波射 线从一种物质表面反射时,入射角等于反射角,当射线透过一种物质进入另 一种密度不同的物质时就会产生折射现象, 也就是要改变它的传播方向,两 种物质的密度差别愈大,则折射率也愈大。其次是吸收特性。声波在各种介质中传播时,随着传播距离的增加,其 强度会逐渐减弱,这是因为介质要吸收掉它的部分能量。 对于同一介质,声 波的频率越高,介质吸收就越强。对于一个频率一定的声波,在气体中传播 时吸收尤为历害,在液体中传

36、播时吸收就比较弱,在固体中传播时吸收是最 小的。再次是能量传递特性。超声波之所以能在各个工业部门中得到广泛的应 用,主要原因还在于比声波具有强大得多的功率。为什么有这么强大的功率 呢?因为当声波进入某一介质中时,由于声波的作用使物质中的分子也随之 振动,振动的频率和声波频率 一样,分子振动的频率决定了分子振动的速度。 频率愈高速度愈大。物资分子由于振动所获得的能量除了与分子本身的质量 有关外,主要是由分子的振动速度的平方决定的,所以如果声波的频率愈高, 也就是物质分子愈能得到更高的能量。超声波的频率比普通声波要高出很 多,所以它可以使物质分子获得很大的能量;换句话来说,超声波本身就可以供给物质

37、分子足够大的功率。最后是声压特性。当声波进入某物体时,由于声波振动使物质分子相互 之间产生压缩和稀疏的作用,将使物质所受的压力产生变化。由于声波振动 引起附加压力现象叫声压作用。2.5.2超声波传感器原理为了研究和利用超声波,人们已经设计和制成了许多超声波发生器。 总 体上讲,超声波发生器可以分为两大类,一类是用电气方式产生超声波,一 类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等; 机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功 率和声波特性各不相同,因而用途也各不相同。完成产生超声波和接收超声 波这种功能的装置就是超声波传感器,习惯上称为超声换能器,

38、或者超声波 探头。超声波探头主要由压电晶片组成, 既可以发射超声波,也可以接收超 声波。小功率超声探头多用作探测方面。它有许多不同的结构,可分直探头、 斜探头、表面波探头、兰姆波探头、双探头等。超声探头的核心是其塑料外套或者金属外套中的一块压电晶片。构成晶片的材料可以有许多种。由于晶片的大小,如直径和厚度也各不相同,因此 每个探头的性能都是不同的,我们使用前必须预先了解清楚该探头的性能参 数。超声波传感器的主要性能指标包括以下几点:第一,工作频率。工作频率就是压电晶片的共振频率。 当加到它两端的 交流电压的频率和晶片的共振频率相等时,输出的能量最大,灵敏度也最高。第二,工作温度。由于压电材料的

39、居里点一般比较高, 特别时诊断用超 声波探头使用功率较小,所以工作温度比较低,可以长时间地工作而不失效。 医疗用的超声探头的温度比较高,需要单独的制冷设备。第三,灵敏度。主要取决于制造晶片本身。机电耦合系数大,灵敏度高。人类能听到的声音频率范围为 20Hz20kHz,即为可听声波,超出此频 率范围的声音,即20Hz以下频率的声音称为低频声波,20kHz以上频率的 声音称为超声波。超声波为直线传播方式,频率越高,绕射能力越弱,但反 射能力越强。为此,利用超声波的这种性能就可制成超声波传感器。为了研究和利用超声波,人们已经设计和制成了许多种超声波发生 器。总体上讲,超声波发生器大体可以分为两大类,

40、一类是用电气方式产 生超声波,一类是用机械方式产生超声波。电气方式包括压电型、磁致伸 缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。目前较为常用的是压电式超声波发生器。压电式超声波发生器实际上是利用压电晶体的谐振来工作的。它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时, 压电晶片将会发生共振, 并带动共振板振动, 便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为 超声波接收器了。压电式超声波发生器示意

41、图如图2-8所示。2.5.3超声波发射部分发射电路主要由反相器74LS04和超声波发射传感器T构成。由于在距 离较远的情况下,超声波的回波很弱,因而转换为电信号的幅值也较小,为 此要求将信号放大。单片机端口输出的 40kHz的方波信号一路经一级反相 器后送到超声波换能器的一个电极,另一路经两级反相器后送到超声波换能 器的另一个电极,用这种推挽形式将方波信号加到超声波换能器的两端,可以提高超声波的发射强度。输出端采用两个反相器并联,用以提高驱动能力。 上位电阻R1O、R11 方面可以提高反向器74LS04输出高电平的驱动能力, 另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡时间。超声波发

42、射部分如图2-9所示。2.5.4超声波接收部分超声波检测接收电路主要是由集成电路 CX20106A组成,这是一款应 用广泛的红外线检波接收的专用芯片, 其具有功能强、性能优越、外围接口 简单、成本低等优点,常用于电视机红外遥控接收器。考虑到红外遥控常用图2-9超声波发送部分电路图的载波频率38kHz与测距的超声波频率40kHz (超声波传感器的声压能级、 灵敏度在40kHz时最大)较为接近,可以利用它制作超声波检测接收电路。 适当更改电容C4的大小,就可以改变接收电路的灵敏度和抗干扰能力。CX20106A内部由前置放大器、限幅放大器、带通滤波器、检波器、 积分器及整形电路构成。使用 CX201

43、06A集成电路对接收探头受到的信号 进行放大、滤波,其总放大增益80db。当CX20106A接收到40KHz的信号 时,会在第7脚产生一个低电平下降脉冲,单片机外部中断接到这个信号并 采取相应动作,使测距结果在1602液晶上显示出来。超声波接收部分如图2-10所示。2.6各部分连接方案本次所用元器件包括STC12C5A60S2单片机,LC D1602液晶显示模块,HC-SR04超声波测距模块和DS18B20温度传感器。LCD1602液晶显示屏采用标准的16脚接口,其连接方式如下:第1脚 VSS为电源地;第2脚VDD接5V电源;第3脚V0为液晶显示器对比度 调整端,接地;第4脚RS为寄存器选择引

44、脚,高电平时选择数据存储器, 低电平时选择指令存储器;第5脚RW为读写信号线,高电平时进行读操图2-10超声波接收部分电路图作,低电平时进行写操作;第6脚E端为使能端,当E端由高电平跳变成 为低电平时液晶模块执行命令;第714脚DOD7为8位双向数据线;第 1516脚为背光。温度模块采用DS18B20温度传感器。该传感器提供9位温度读数指示 器件温度,信息经过单线接口送入或送出传感器。 DS1820温度传感器为单 线接口,因此从中央处理器到 DS1820仅需连接一条线。超声波发射和接收模块采用HC-SR04超声波测距模块,该模块性能稳 定,测度距离精确。其接线方式如下:第1脚VCC接5V电源;

45、第2脚trig 超声波发射控制端接单片机任意I/O 口,主要任务是接收脉冲以控制超声波 发射器发出超声波以及单片机定时器开始计时;第3脚echo超声波接收控制端接单片机外部中断口 INT0,当接收到外部中断时停止计时并进行数据 处理;第4脚GND接地。系统的总电路图如图2-10所示。2.7本章小结这一章主要对超声波测距系统的硬件设计进行了详细的说明。首先是系Em卩2M芝SS+ :TH?ISH-IPrT?PST5 PJ7AU JU WI 1U -JW3jTJ .1AU jbW7图2-10系统总电路图统的原理,然后是系统各个模块的内部构造、 工作特性和使用方法,最后是 各个模块之间的连接方式。为下

46、一章软件设计提供基础。第3章超声波测距软件设计3.1软件设计方法本次单片机的软件采用Keil uVision2软件进行C语言编程。Keil提供 了丰富的库函数和功能强大的集成开发调试工具,可以完成编辑、编译、连 接、调试、仿真等整个开发流程。Keil软件的优点主要有以下几点:首先,Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代 码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows界面。操作十分方便。其次,汇编语言是一种面向机器的低级的程序设计语言。它直接利用机器提供的指令系统编写程序,

47、该类程序的可执行指令是与机器语言程序的指 令一一对应的。汇编语言由于是面向机器的程序设计语言, 与具体的计算机 硬件有着密切的关系,因此,可移植性差。但由于汇编指令与机器语言指令 一 一对应,即一条汇编语言的可执行指令对应着一条机器语言指令,反之亦然。因此,汇编语言可直接利用机器硬件系统的许多特性,如寄存器、标志 位以及一些特殊指令等,具有执行速度快、占用内存少等优点。汇编语言的 缺点是程序的通用性和可移植性差; 程序比较繁琐,调试困难;目标程序比 较庞大,运行速度慢。而C语言是一种编译型的程序设计语言,它兼顾了多种高级语言的特 点,并具备汇编语言的功能。C语言有功能丰富的库函数,运算速度快,

48、编 译效率高,有良好的可移植性,而且可以直接实现对系统硬件的控制。C语言是一种结构化设计语言,支持支持由顶向下结构化程序设计技术。C语言 的模块化程序结构可以使程序模块实现共享。在C语言的可读性方面更容易借鉴前人的开发经验,提高程序的开发水平。C语言应用于单片机编程出了上述特点外, 还有以下突出特点:编译器 可以自动完成变量存储单元的分配, 省去了分配和纪录存储单元的繁琐;不 必对单片机和硬件接口的结构有很深入的了解,省去了单片机漫长的学习时间;具有良好的可移植性,只要将程序略加改动就可以将其应用与其他类型的单片机,省去了更改单片机型号时重新编写程序的无奈。因此利用C语言编写程序可以大大缩短目

49、标系统软件的开发周期,程序的可读性明显增 加,便于改进、扩充、研制规模更大、性能更完备的系统。对于本次编程,使用keil生成的hex文件可以用软件直接转化成机械码 编入STC12C5A60S2单片机,简单方便。3.2软件系统流程介绍超声波测距的原理为超声波发生器 T在某一时刻发出一个超声波信号, 当这个超声波遇到被测物体后反射回来,就被超声波接收器R所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。在启动发射电路的同时启动单片机内部的定时器T0,禾I用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波 时,接收电路

50、输出端产生一个负跳变,在INTO端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距 离。主程序首先是对系统环境初始化,设置定时器TO工作模式为16位定时计数器模式。置位总中断允许位 EA并给显示端口 P0和P1清0。然后调 用超声波发生子程序送出一个超声波脉冲, 为了避免超声波从发射器直接传 送到接收器引起的直射波触发,需要延时约0.1 ms (这也就是超声波测距仪 会有一个最小可测距离的原因)后,才打开外部中断0接收返回的超声波信 号。由于采用的是22 MHz的晶振,计数器每计一个数约 0.5卩当主程序 检测到接收成功的标志位后,将计数器 T0中的数(

51、即超声波来回所用的时 间)计算即可得被测物体与测距仪之间的距离。整个系统的流程如图3-1所示。3.3液晶显示模块显示模块主要控制LCD1602液晶显示屏显示,设计要点是先根据液晶 显示模块工作时序图设计写指令程序和写数据程序,然后根据上两个程序设 计初始化程序和显示程序。第3章超声波测距软件设计图3-1系统工作流程本部分包括延时若干毫秒程序delay(uchar c),写入指令程序Write In struct ion(un sig ned char dictate),写入数据程序 WriteData( un sig ned char y),LCD1602 初始化程序 lcdnit()和显示程

52、序 void show(uchar p,uchar *s,uint low) o其中显示程序如下:void show(uchar p,uchar *s, uint low)uint num;写入地址p/写入数组s作为数据/数组内字符的个数为lowWriteAddress(p); for(num=0;num low ;nu m+) WriteData(s num); delay(1);3.4温度测量模块温度测量模块主要是控制 DS18B20温度传感器完成温度测量,设计要 点是先设计温度测量模块读命令程序和写命令程序,再根据以上两个程序逐 步编写测温程序。经过单线访问DS18B20的ROM操作命令

53、包括读ROM命 令33h,符合ROM命令55h,跳过ROM命令CCh,搜索ROM命令F0h 和告警搜索ECh。存贮器操作命令包括温度变换命令 44h,读暂存存储器命 令Beh,写暂存存储器命令4Eh,复制暂存存储器命令43h,重新调出E2 命令E3h,读电源命令B4h。本部分包括延时若干微秒程序 delay1(uint z),DS18B20初始化程序 DS18B20nit(),DS18B20 读命令程序 read_bey(), DS18B20 写命令程序 write_bey(uchar det),读出温度程序 temperature(),温度处理程序 get_temp() 和温度数据转换程序T

54、empConvert(long int tep)。其中温度处理程序如下:uint get_temp()DS18B20nit(); delay(6); write_bey(0xcc); write_bey(0xbe); l=read_bey();uchar h,l;/初始化温度传感器/跳过rom发读内部9字节内容指令读前两个字即温度h=read_bey();temp仁h;/温度数值转换temp仁temp18;temp1=temp1|l;t_temp=temp1*0.0625;temp仁t_temp*10+0.5;return tempi;3.5超声波测量模块超声波发生子程序的作用是通过 P1.0端口发送2个左右超声波脉冲信 号(频率约40kHz的方波),脉冲宽度为12卩左右,同时把计数器T0打 开进行计时。超声波发生子程序较简单,但要求程序运行准确,所以采用汇 编语言编程。超声波测距仪主程序利用外中断0检测返回超声波信号,一旦接收到返 回超声波信号(即INT0引脚出现低电平),立即进入中断程序。进入中断 后就立即关闭计时器T0停止计时,并将测距成功标志字赋值 1。如果当计 时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外部中断1关闭,并将测距成功标志字赋值 2以表示此次测距不成功。前方测距电路的输出端接单片机INT0

温馨提示

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

评论

0/150

提交评论