单片机的超声波传感器测距仪.doc
《单片机的超声波传感器测距仪.doc》由会员分享,可在线阅读,更多相关《单片机的超声波传感器测距仪.doc(36页珍藏版)》请在三一办公上搜索。
1、 目 录1 绪论1.1 选题背景及目的1.2 超声波介绍及其应用领域1.3 本设计的主要研究内容1.3.1 超声波测距的原理1.3.2 两种测距方案的选择2 AT89C51单片机简介2.1 单片机基础知识2.1.1 单片机的基本工作原理2.2 单片机的分类及发展2.3 单片机AT89C51的特性3 超声波传感器 3.1 超声波传感器的原理及特性3.1.1 超声波传感器的原理3.1.2 超声波传感器的特性3.2 超声波传感器的检测方式3.3 超声波传感器系统的构成3.4 超声波传感器系统主要参数的确定3.4.1 测距仪的工作频率3.4.2 声速3.4.3 发射脉冲宽度3.4.4 测量盲区4 超声
2、波测距硬件电路设计 4.1 超声波测距系统电路总体设计方案4.2 超声波测距系统电路各部分模块的设计4.2.1 超声波发射电路4.2.2 超声波接收电路4.2.3 温度补偿电路4.2.4 显示模块4.2.5 复位电路4.2.6 时钟电路4.2.7 最小系统电源5 系统的误差分析 5.1 声速引起的误差 5.2 单片机时间分辨率的影响6 超声波测距系统软件设计7 系统的分析 7.1 超声波测距系统设计的结论与展望 7.2 误差产生原因的系统改进方案8 心得参考文献1 绪论1.1 选题背景及目的随着社会的发展,人们对距离或长度测量的要求越来越高。超声波测距由于其能进行非接触测量和相对较高的精度,越
3、来越被人们所重视。本设计的超声波测距仪,可以对不同距离进行测试,并可以进行详尽的误差分析。对本设计的研究与设计,还能进一步提高自身的电路设计水平,深入对单片机的理解和应用。超声波传感器模块在测量方面有着广泛、普遍的应用。利用单片机控制超声波检测模块往往比较迅速、方便、计算简单、易于做到实时控制,并且测量精度较高。超声波测距系统主要应用于汽车的倒车雷达、机器人自动避障行走、建筑施工工地以及一些工业现场例如:液位、井深和管道长度等场合。因此研究超声波测距系统的原理有着很大的现实意义。1.2 超声波介绍及其应用领域当物体振动时会发出声音。科学家们将每秒钟振动的次数称为声音的频率,它的单位是赫兹。人类
4、耳朵能听到的声波频率为2020K赫兹。当声波的振动频率大于20K赫兹或小于20赫兹时,人们便听不见了。因此,把频率高于20K赫兹的声波称为“超声波”。通常用于医学诊断的超声波频率为15兆赫。超声波具有方向性好,穿透能力强,易于获得较集中的声能,在水中传播距离远等特点。可用于测距,测速,清洗,焊接和碎石等。在医学,军事,工业以及农业上有明显的作用。理论研究表明,在振幅相同的条件下,一个物体振动的能量与振动频率成正比,超声波在介质中传播时,介质质点振动的频率很高,因而能量很大。在我国北方干燥的冬季,如果把超声波通入水罐中,剧烈的振动会使罐中的水破碎成许多小雾滴,再用小风扇把雾滴吹入室内,就可以增加
5、室内空气湿度.这就是超声波加湿器的原理。应用领域1机械行业:防锈油脂的去除;量具刃具的清洗;机械零部件的除油除锈发动机、化油器及汽车零件的清洗,过滤器及滤网的疏通清洗等等。 2表面处理行业:电镀前的除油除锈;离子镀前清洗;磷化处理;清除积炭,氧化皮,抛光膏,金属工件表面活化处理等等。 3医疗行业:医疗器械的清洗,消毒,杀菌,实验器皿的清洗等等。4 仪器仪表行业:精密零件的高清洁度清洗,装配前清洗等等。5 机电电子行业:印刷线路板除松香,焊斑;高压触点,接线柱等机械电子零件的清洗等等。6 光学行业:光学器件的除油、除汗和清灰等。7 半导体行业:半导体晶片的高清洁度清洗。8 科教文化:化学生物等实
6、验器皿的清洗和除垢。9 钟表首饰:清除油泥、灰尘、氧化层和抛光膏等。10石油化工行业:金属滤网的清洗疏通、化工容器和交换器的清洗等等。11纺织印染行业:清洗纺织锭子和喷丝板等。12其它:超声清洗:清除污染物,疏通细小孔洞,如:清洁印章,古董修复和汽车电喷头疏通等。超声搅拌:加快溶解,提高均匀度,加快物理化学反应,防止过腐蚀和加速油水乳化,如:溶剂染料混合和超声磷化等。超声凝聚:加速沉淀,分离,如:种子浮选和饮料除渣等。超声杀菌:杀灭细菌及有机污染物,如:污水处理和除气等。超声粉碎:降低溶质颗粒度,如:细胞粉碎和化学检测等。超声封孔:排除间隙气体,提高整体密度,如:工件浸漆等。1.3 本设计的主
7、要研究内容1.3.1 超声波测距的原理超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波, 从而测出发射和接收回波的时间差t,然后求出距离 (1-1)式(1-1)中的c为超声波在空气中传播的速度。限制该系统的最大可测距离存在四个因素:超声波的幅度、反射物的质地、反射和入射声波之间的夹角以及接收装置的灵敏度。接收装置对声波脉冲的直接接收能力将决定最小可测距离。超声波的波速c与温度有关,表1-1列出了几种不同温度下的波速。表1-1 声速与温度的关系温度()3020100102030100声速(m/s)313319325331338344349386可以推导得出,温度和波速大概有c=331.
8、5+0.607T这样的规律,波速确定后,只要测得超声波往返的时间t,即可求得距离S。1.3.2 两种测距方案的选择1)第一种方案基于单片机的超声波测距系统,是利用单片机编程产生频率为40kHz的方波,经过发射驱动电路放大,使超声波传感器发射端震荡,发射超声波。超声波经反射物反射回来后,由传感器接收端接收,再经接收电路放大、整形,控制单片机中断口。其系统框图如图1-1所示。图1-1 基于单片机的超声波测距系统框图这种以单片机为核心的超声波测距系统通过单片机记录超声波发射的时间和收到反射波的时间。当收到超声波的反射波时,接收电路输出端产生一个负跳变,在单片机的外部中断源输入口产生一个中断请求信号,
9、单片机响应外部中断请求,执行外部中断服务子程序,读取时间差,计算距离,结果输出给LED显示1。利用单片机准确计时,测距精度高,而且单片机控制方便,计算简单。许多超声波测距系统都采用这种设计方法。2)第二种方案基于CPLD的超声波测距系统,这种测距系统采用CPLD(Complex Programmable Logic Device)器件,运用VHDL(Very High Speed Integrated Circuit Hardware Description Language)编写程序,使用MAX+plusII软件进行软硬件设计的仿真和调试,最终实现测距功能。CPLD器件内部的宏单元是其最基本
10、的模块,能独立地编程为D触发器、T触发器、RS触发器或JK触发器工作方式或组合逻辑工作方式。它的这种特性非常适用于本系统,可将本系统所需要的分频功能、计数功能、振荡器、七段码显示全部由MAX来实现,而只需在外部配上适当的超声波传感器、接收和发送电路,即可组成一个测量精度高、性能稳定、响应速度快且具有显示功能的超声波测距仪。本系统利用CPLD器件控制超声波的发射,并对超声波发射至接收的往返时间进行计数,将计算结果在LED上显示出来。配合使用MAX+plusII开发软件,可集设计输入、设计处理、设计校验和器件编程于一体,集成度高,开发周期短。其系统框图如图1-2所示。图1-2 基于CPLD的超声波
11、测距系统框图超声波发射器向某一方向发射40kHz的超声波,在发射超声波的同时,MAX7128S内的计数器开始计数。超声波在空气中传播,途中碰到障碍物就会立即返回来。超声波接收器收到反射波后就将回波信号送到CPLD,CPLD立即停止计数。CPLD所计的时间就是超声波从传感器到被测物的往返时间。超声波在空气中的传播速度如设定为332m/s,根据计数器记录的时间t,就可以计算出发射点距障碍物的距离s,即:s=332t/2。CPLD开始计数后,只要传感器收到回波,CPLD就立即停止计数,即只有最先返回的超声波才起作用,也就是说超声波测距仪总是测得离传感器最近的物体的距离2。本系统采用先进的CPLD器件
12、,高性能、低成本地实现了距离的测定。通过上节介绍我们知道,以单片机为核心的超声波测距系统设计简单、方便,而且测精度能达到工业要求。本课题研究的测距系统就是用单片机控制的。 2 AT89C51单片机简介本课题所设计的超声波测距系统是基于单片机控制的,在介绍电路设计之前,我们先来简单了解一下单片机的工作原理,由于本课题所设计的超声波测距系统是以Atmel公司的8位单片机AT89C51为核心的,所以,在本章先简单的介绍一下AT89C51的一些特性。2.1 单片机基础知识单片微型计算机简称单片机,特别适用于控制领域,故又称为微控制器(Microcontroller)。单片微型计算机是微型计算机的一个重
13、要分支,也是一种非常活跃且颇具生命力的机种。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:CPU(Central Processing Unit,中央处理器)、存储器和I/O接口电路等。因此,单片机只需要与适当的软件及外部设备相结合,便可成为一个单片机控制系统。2.1.1 单片机的基本工作原理单片机是通过执行程序来工作的,机器执行不同程序就能完成不同的运算任务。因此,单片机执行程序的过程实际上也体现了单片机的基本工作原理。为此,先从指令程序谈起。1.单片机的指令系统和程序编制前面已经介绍,指令是一种可以供机器执行的控制代码,故它又称为指令码(Instruction Cod
14、e)。指令码由操作码(Operation Code)和地址码(Address Code)构成:操作码用于指示机器执行何种操作;地址码用于指示参加操作的数在哪里。其格式为:操作码地址码 指令码的二进制形式既不便于记忆,又不便于书写,故人们通常采用助记符形式来表示,表2-1所列。表2-1 指令的三种形式指令的二进制形式指令的十六进制形式指令的汇编形式01110100 data174 data1MOV A,#data1;Adata100100100 data224 data2ADD A,#data2; Adata1+data210000000 111111080 FESJMP $;停机指令的集合或指
15、令的全体称为“指令系统”(Instruction System)。微处理器类型不同,它的指令系统也不一样。所谓程序就是采用指令系统中的指令根据题目要求排列起来的有序指令的集合。程序的编制称为“程序设计”。通常,设计人员采用指令的汇编符(即助记符)形式编程,这种程序设计称为“汇编语言程序设计”。显然,设计人员如果不熟悉机器的指令系统是无法编出优质高效的程序的。2.单片机执行程序的过程为了弄清单片机的工作原理,现以如下的Y=5+10求和程序来说明单片机的工作过程。7405HMOVA,#05H;A05H240AHADDA,#0AH;A5+1080FEHSJMP$;停机该程序由三条指令组成,每条指令均
16、为双字节指令(即第一字节为操作码,第二字节为地址码)。第一条指令的含义是把05H传送到累加器A中;第二条指令是加法指令,它把累加器A中的5和立即数10相加,结果保留到累加器A中;第三条是停机指令,机器执行后处于动态停机状态。2.3 单片机AT89C51的特性AT89C系列单片机是Atmel公司生产的一款标准型单片机。其中数字9表示内含Flash存储器,C表示CMOS工艺。其管脚图如图2-2所示。图2-2 AT89C51单片机管脚图AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory
17、)的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。1主要特性:与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:100写/擦循环数据保留时间:10年全静态工作:0Hz-24
18、Hz三级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 2管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后
19、,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编
20、程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流,这是由于上拉的缘故。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口
21、同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态AL
22、E禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3振荡器特性:XTAL1和XTAL2分别为反向放大器的输入
23、和输出。该反向放大器可以配置为片内振荡器。石英晶体振荡器和陶瓷振荡器均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。振荡器特性:石英晶体振荡器是高精度和高稳定度的振荡器,被广泛应用于彩电、计算机、遥控器等各类振荡电路中,以及通信系统中用于频率发生器、为数据处理设备产生时钟信号和为特定系统提供基准信号。石英晶体振荡器是利用石英晶体(二氧化硅的结晶体)的压电效应制成的一种谐振器件,它的基本构成大致是:从一块石英晶体上按一定方位角切下薄片(简称为晶片,它可以是正方形、矩形或圆形
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 超声波传感器 测距仪
链接地址:https://www.31ppt.com/p-4142949.html