已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【毕业设计】超声波测距器的设计超声波测距器的设计 学 院信息技术学院 姓 名王富娟 学 号0943090227 班 级Z0902 1 目 录 第一章 前言? 2 1.1 超声波测距器的当前发展情况?2 第二章 方案论证? 3 2.1 提出方案? 3 第三章 超声波测距的原理? 4 3.1 超声波的介绍? 4 3.1.1 什么是超声波? 4 3.1.2 超声波的特点? 4 3.1.3 超声波的应用? 4 3.2 超声波测距器的原理? 4 3.2.1 超声波发生器? 4 3.2.2 压电式超声波发生器原理? 4 3.2.3 超声波测距原理 ? 5 第四章 系统的组成? 6 4.1 硬件部分 ? 6 4.2 软件部分 ? 6 4.2.1 主程序 ? 6 4.2.2 超声波发生子程序和超声波接收中断程序 ? 7 第五章 系统硬件电路设计? 8 5.1 单片机系统及显示电路? 8 5.2 超声波发射电路原理图? 9 5.3 超声波检测接收电路? 9 第六章 系统程序设计.11 6.1 超声波测距器的算法设计 ? 11 第七章 结论? 12 第八章 致谢?13 附总电路图? 14 附程序清单? 15 2 1前言 1.1超声波测距器的当前发展情况 超声波测距器可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控也可用于如液位、井深、管道长度的测量等场合。应用范围十分的广泛。超声波是指频率高于20KHz的机械波。为了以超声波作为检测手段必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应的原理将电能和超声波相互转化即在发射超声波的时候将电能转换发射超声波而在收到回波的时候则将超声振动转换成电信号。 3 2.方案论证 2.1提出方案 由于超声波的指向性强能量消耗缓慢在介质中传播的距离较远因而超声波经常用于距离的测量。利用超声波检测的距离设计比较方便计算处理也比较简单并且在测量精度方面也能达到日常使用的要求。根据设计要求提出如下方案。 方案选用STC89C52单片机作为主控制器用动态扫描法实现LED数字显示超声波驱动信号用单片机的定时器完成。 超声波测距器系统设计框图 4 3.超声波测距的原理 3.1超声波的介绍 3.1.1什么是超声波 超声波是指频率高于20KHz的机械波。 3.1.2超声波的特点 1、超声波在传播时方向性强能量易于集中。 2、超声波能在各种不同媒质中传播且可传播足够远的距离。 3、超声与传声媒质的相互作用适中易于携带有关传声媒质状态的信息 3.1.3超声波的应用 在全球超声波广泛运用于诊断学、治疗学、工程学、生物学等领域。 1、工程学方面的应用水下定位与通讯、地下资源勘查等 2、生物学方面的应用剪切大分子、生物工程及处理种子等 3、诊断学方面的应用A型、B型、M型、D型、双功及彩超等 4、治疗学方面的应用理疗、治癌、外科、体外碎石、牙科等 3.2超声波测距器的原理 3.2.1超声波发生器 为了研究和利用超声波人们已经设计和制成了许多超声波发生器。总体上讲超声波发生器可以分为两大类一类是用电气方式产生超声波一类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各不相同因而用途也各不相同。目前较为常用的是压电式超声波发生器。 本设计属于近距离测量可以采用常用的压电式超声波换能器来实现。 3.2.2压电式超声波发生器原理 压电式超声波发生器实际上是利用压电晶体的谐振来工作的。超声波发生器内部结构如图所示它有两个压电晶片和一个共振板。当它的两极外加脉冲信号其频率等于压电晶片的固有振荡频率时压电晶片将会发生共振并带动共振板振动便产生超声波。反之如果两电极间未外加电压当共振板接收到超声波时将压迫压电晶片作振动将机械能转换为电信号这时它就成为超声波接收 5 器了。 3.2.3超声波测距原理 超声波发射器向某一方向发射超声波在发射时刻的同时开始计时超声波在空气中传播途中碰到障碍物就立即返回来超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s根据计时器记录的时间t就可以计算出发射点距障碍物的距离(s)即s=340t/2 超声波测距的原理一般采用渡越时间法TOFtime of flight。首先测出超声波从发射到遇到障碍物返回所经历的时间再乘以超声波的速度就得到二倍的声源与障碍物之间的距离 测量距离的方法有很多种短距离的可以用尺远距离的有激光测距等超声波测距适用于高精度的中长距离测量。因为超声波在标准空气中的传播速度为331.45米/秒由单片机负责计时单片机使用12.0M晶振所以此系统的测量精度理论上可以达到毫米级。 6 4.系统的组成 4.1硬件部分 主要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。采用ST89C51来实现对CX20106A红外接收芯片和TCT40-10系列超声波转换模块的控制。单片机通过P1.6引脚经反相器来控制超声波的发送然后单片机不停的检测INT0引脚当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。计数器所计的数据就是超声波所经历的时间通过换算就可以得到传感器与障碍物之间的距离。 4.1.1 AT89C51简介 AT89C51是一种带4K字节FLASH存储器FPEROMFlash Programmable and Erasable Read Only Memory的低电压、高性能CMOS 8位微处理器俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中ATMEL的AT89C51是一种高效微控制器AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 外形及引脚排列如图所示 7 主要特性 与MCS-51 兼容 4K字节可编程FLASH存储器 寿命1000写/擦循环 数据保留时间10年 全静态工作0Hz-24MHz 三级程序存储器锁定 1288位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 管脚说明 VCC供电电压。 GND接地。 P0口P0口为一个8位漏级开路双向I/O口每脚可吸收8TTL门电流。当P0口的管脚第一次写1时被定义为高阻输入。P0能够用于外部程序数据存储器它可以被定义为数据/地址的第八位。在FIASH编程时P0 口作为原码输入口当FIASH进行校验时P0输出原码此时P0外部必须被拉高。 P1口P1口是一个内部提供上拉电阻的8位双向I/O口P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后被内部上拉为高可用作输入P1口被外部下拉为低电平时将输出电流这是由于内部上拉的缘故。在FLASH编程和校验时P1口作为第八位地址接收。 P2口P2口为一个内部上拉电阻的8位双向I/O口P2口缓冲器可接收输出4个TTL门电流当P2口被写“1”时其管脚被内部上拉电 8 阻拉高且作为输入。并因此作为输入时P2口的管脚被外部拉低将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时P2口输出地址的高八位。在给出地址“1”时它利用内部上拉优势当对外部八位地址数据存储器进行读写时P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口P3口管脚是8个带内部上拉电阻的双向I/O口可接收输出4个TTL门电流。当P3口写入“1”后它们被内部上拉为高电平并用作输入。作为输入由于外部下拉为低电平P3口将输出电流ILL这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口如下表所示 口管脚 备选功能 P3.0 RXD串行输入口 P3.1 TXD串行输出口 P3.2 /INT0外部中断0 P3.3 /INT1外部中断1 P3.4 T0记时器0外部输入 P3.5 T1记时器1外部输入 P3.6 /WR外部数据存储器写选通 P3.7 /RD外部数据存储器读选通 P3口同时为闪烁编程和编程校验接收一些控制信号。 RST复位输入。当振荡器复位器件时要保持RST脚两个机器周期的高电平时间。 ALE/PROG当访问外部存储器时地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间此引脚用于输入编程脉冲。在平时ALE端以不变的频率周期输出正脉冲信号此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是每当用作外部数据存储器时将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时 ALE只有在执行MOVXMOVC指令是ALE才起作用。另 9 外该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止置位无效。 /PSEN外部程序存储器的选通信号。在由外部程序存储器取指期间每个机器周期两次/PSEN有效。但在访问外部数据存储器时这两次有效的/PSEN信号将不出现。 /EA/VPP当/EA保持低电平时则在此期间外部程序存储器0000H-FFFFH不管是否有内部程序存储器。注意加密方式1时/EA将内部锁定为RESET当/EA端保持高电平时此间内部程序存储器。在FLASH编程期间此引脚也用于施加12V编程电源VPP。 XTAL1反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2来自反向振荡器的输出。 振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器因此对外部时钟信号的脉宽无任何要求但必须保证脉冲的高低电平要求的宽度。 4.1.2 CX20106A 红外接收芯片简介 应用原理图如下 10 引脚号 说明 1 超声信号输入端该脚的输入阻抗约为40k。 2 该脚与地之间连接RC串联网络它们是负反馈串联网络的一个组成部分改变它们的数值能改变前置放大器的增益和频率特性。增大电阻R1或减小C1,将使负反馈量增大放大倍数下降反之则放大倍数增大。但C1的改变会影响到频率特性一般在实际使用中不必改动推荐选用参数为R1=4.7C1=1F。 3 该脚与地之间连接检波电容电容量大为平均值检波瞬间相应灵敏度低若容量小则为峰值检波瞬间相应灵敏度高但检波输出的脉冲宽度变动大易造成误动作推荐参数为3.3f。 4 接地端。 5 该脚与电源间接入一个电阻用以设置带通滤波器的中心频率f0阻值越大中心频率越低。例如取R=200k时f042kHz若取R=220k则中心频率f038kHz。 6 该脚与地之间接一个积分电容标准值为330pF如果该电容取得太大会使探测距离变短。 7 遥控命令输出端它是集电极开路输出方式因此该引脚必须接上一个上拉电阻到电源端推荐阻值为22k没有接受信号是该端输出为高电平有信号时则产生下降。 8 电源正极4.55.5V。 4.2软件部分 主要由主程序、超声波发生子程序、超声波接收中断程序等部分。 4.2.1 主程序 主程序首先对系统环境初始化设置定时器T0工作模式为16位的定时计数器模式置位总中断允许位EA并给显示端P0和P2清0。然后调用超声波发生子程序送出一个超声波脉冲为避免超声波从发射器直接传送到接收器引起的直接波触发需延迟0.1ms(这也就是测距器会有一个最小可测距离的原因)后才打开外中断0接收返回的超声波信号。由于采用12MHz的晶振机器周期为1us,当主程序检测到接收成功的标志位后将计数器T0中的数即超声波来回所用的时间按下式计算即可测得被测物体与测距仪之间的距离,设计时取20时的声速为344 m/s则有 d=(C*T0)/2 =172T0/10000cm其中T0为计数器T0的计数值 测出距离后结果将以十进制BCD码方式LED,然后再发超声波脉冲重复测量过程。主程序框图如下 11 4.2.2 超声波发生子程序和超声波接收中断程序 超声波发生子程序的作用是通过P1.6端口发送2个左右的超声波信号频率约40KHz的方波脉冲宽度为12us左右同时把计数器T0打开进行计时。超声波测距器主程序利用外中断0检测返回超声波信号一旦接收到返回超声波信号INT0引脚出现低电平)立即进入中断程序。进入该中断后就立即关闭计时器T0停止计时并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号则定时器T0溢出中断将外中断0关闭并将测距成功标志字赋值2以表示此次测距不成功。 12 13 5.系统硬件电路设计 5.1单片机系统及显示电路 单片机采用89S51或其兼容系列。采用12MHz高精度的晶振以获得较稳定的时钟频率减小测量误差。单片机用P1.6端口输出超声波转化器所需的40KHz方波信号利用外中断0口检测超声波接受电路输出的返回信号。显示电路采用简单实用的1602液晶显示。 5.2超声波发射电路原理图 超声波发射电路原理图 压电超声波转换器的功能 利用压电晶体谐振工作。内部结构上图所示它有两个压电晶片和一个共振板。当它的两极外加脉冲信号其频率等于压电晶片的固有振荡频率时压电晶片将会发生共振并带动共振板振动产生超声波这时它就是一超声波发生器;如没加电压当共振板接受到超声波时将压迫压电振荡器作振动将机械能转换为电信号这时它就成为超声波接受转换器。超声波发射转换器与接受转换器其结构稍有不同。 5.3超声波检测接收电路 采用集成电路CX20106A这是一款红外线检波接收的专用芯片常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38KHz与测距超声波频率40KHz较为接近可以利用它作为超声波检测电路。实验证明其具有很高的灵敏 14 度和较强的抗干扰能力。适当改变C4的大小可改变接受电路的灵敏度和抗干扰能力。 超声波接收电路图 15 6.系统程序设计 超声波测距软件设计主要由主程序超声波发射子程序超声波接受中断程序及显示子程序组成。C语言程序设计有利于实现较复杂的算法汇编语言程序则具有较高的效率并且容易精确计算程序运行的时间下面对超声波测距器的算法主程序超声波发射子程序和超声波接受中断程序逐一介绍。 6.1超声波测距器的算法设计 下图示意了超声波测距的原理即超声波发生器T在某一时刻发出的一个超声波信号当超声波遇到被测物体后反射回来就被超声波接收器R所接受。这样只要计算出发生信号到接受返回信号所用的时间就可算出超声波发生器与反射物体的距离。 距离计算公式d=s/2=(c*t)/2 *d为被测物与测距器的距离 s为声波的来回路程c为声速t为声波来回所用的时间 声速c与温度有关如温度变化不大则可认为声速是基本不变的。如果测距精度要求很高则应通过温度补偿的方法加以校正。声速确定后只要测得超声波往返时间即可求得距离。在系统加入温度传感器来监测环境温度可进行温度被偿。这里可以用DS18B20测量环境温度根据不同的环境温度确定一声速提高测距的稳定性。为了增强系统的可靠性应在软硬件上采用抗干扰措施。 不同温度下的超声波声速表 16 7.结论 本设计采用ST89C51单片机作为计时及主控制器、用TCT40l0Fl作超声波发射器、用TCT40l0Sl和CX20106A构成超声波检测接收电路。将相关控制编程写入单片机实现了以单片机控制的超声波测距器。 本超声波测距器采用硬件电路和软件控制相结合电路结构简单低成本操作方便工作稳定测量精度较。 可用于日常生活及工农业生产中距离的测量及位置监控。例如管道长度、油井深度、液面高度建筑施工各点定位等。 本超声波测距器只具有测量显示功能没有反馈与控制功能。其设计思想可以应用于智能安全系统。例如在车辆智能自动安全系统中, 检测车辆左、右动、静态障碍物并显示距离至危险区域后与智能模糊控制器通信以采取最佳避让措施等。 17 8、致谢 首先我要感谢张老师在毕业设计中对我给予的悉心指导和严格要求同时也感谢本校的一些老师在毕业设计期间所给予我得帮助。在我毕业论文写作期间各位老师给我提供了种种专业知识上的指导和日常生活上的关怀没有您们这样的帮助和关怀我不会这么顺利的完成毕业设计借此机会向您们表示由衷的感激。同时还要感谢系实验室在毕业设计期间提供给我们优越的实验条件。 接着我要感谢和我一起做毕业设计的同学。在毕业设计的短短几个月里你们给我提出很多宝贵的意见给了我不少帮助还有工作上的支持在此也真诚的谢谢你们。同时我还要感谢我的寝室同学和身边的朋友正是在这样一个团结友爱相互促进的环境中在和他们的相互帮助和启发中才有我今天的小小收获。 还有许许多多给予我学业上鼓励和帮助的朋友在此无法一一列举在此也一并表示忠心地感谢 18 附录 总电路图 19 源程序清单 #include #include #define uint unsigned int #define uchar unsigned char /引脚定义 sbit RX = P3 2; sbit TX = P1 6; sbit CS = P3 3; /片选 高电平有效 单片LCD使用时可固定高电平 sbit SID = P3 4; /数据 sbit SCLK = P3 5; /时钟 sbit E=P12; sbit RW=P11; sbit RS=P10; unsigned int time=0; long S=0; bit flag =0; unsigned char disbuff4 = 0,0,0,0,; void delay() int i,j; for(i=0; i=10; i+) for(j=0; j=2; j+) ; void enable(uchar del) P0 = del; RS = 0; RW = 0; E = 0; delay(); E = 1; delay(); void write(uchar del) P0 = del; RS = 1; RW = 0; E = 0; delay(); 20 E = 1; delay(); void L1602_init(void) enable(0x01); enable(0x38); enable(0x0c); enable(0x06); enable(0xd0); void L1602_char(uchar hang,uchar lie,char sign) uchar a; if(hang = 1) a = 0x80; if(hang = 2) a = 0xc0; a = a + lie - 1; enable(a); write(sign); void L1602_string(uchar hang,uchar lie,uchar *p) uchar a; if(hang = 1) a = 0x80; if(hang = 2) a = 0xc0; a = a + lie - 1; enable(a); while(1) if(*p = 0) break; write(*p); p+; void Delaynms(unsigned int di) /延时 unsigned int da,db; for(da=0;dadi;da+) for(db=0;db10;db+); void Conut(void) time=TH0*256+TL0; TH0=0; 21 TL0=0; S=time*1.87/10; /算出来是CM disbuff1=S/1000; disbuff2=S%1000/100; disbuff3=S%1000%100/10; disbuff4=S%10; L1602_cha
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025有关企业用房借款合同范例
- 2025个人借款合同协议书范本
- 汽车试验安全规范知识竞赛题库
- 品牌策划中级考试题库
- 消毒技术师岗位面试常见问题及参考答案
- 物业租售岗位行为面试题
- 市场助理数据分析能力考试题及解析
- 代驾司机考核评估及奖惩制度
- 细胞培养室团队协作考核指标
- 碳资产管理师中级考试模拟题库及解析
- 2024年共青团入团积极分子团校结业考试试题库及答案
- CJT 340-2016 绿化种植土壤
- 《校园科技节》 人教版初中综合实践活动七年级上册
- MOOC 自然保护与生态安全:拯救地球家园-暨南大学 中国大学慕课答案
- 建筑物理课件光学
- 全国中小学生安全教育日班会课件
- 中国人日本人礼仪不同点
- 智能科技引领未来
- 多组学数据的整合与分析
- 广东省通用安装工程综合定额(2018)Excel版
- 思想道德与法治2023版教学设计第二章 追求远大理想 坚定崇高信念
评论
0/150
提交评论