ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:234.33KB ,
资源ID:24711444      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24711444.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(超声波测距器设计.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

超声波测距器设计.docx

1、超声波测距器设计目录1 引言 12 超声波测距器硬件电路设计 22.1单片机计时及控制系统设计 32.1.1 单片机芯片的选择 32.1.2 AT89C51基本电路 32.1.3 AT89C51定时计数应用电路 52.2 超声波发射电路设计 52.3 超声波接收电路设计 62.4 显示电路设计 72.5 电源电路设计 92.6总体硬件结构与工作原理 93系统软件设计 103.1超声波测距器的算法设计 103.2 系统的主控制程序设计 113.3超声波发生子程序设计 113.4超声波接收中断程序设计 114系统调试及性能分析 124.1 系统调试 124.2 系统性能分析 12结束语 13附录

2、16附录1 元件清单 16附录2 电路总原理图 17附录3 电源电路原理图 18附录4 电路PCB版图 19附录5 超声波测距器源程序清单 201 引言超声波就是频率超过声波频率的机械波,一般频率在20KHz40KHz的范围内1。由于超声波的速度较光速小,其传播时间容易检测,且其传播方向性及强度均好,易于控制等,使得超声波检测技术在物体位置测量、物体识别、空间导航等方面应用越来越广泛。本人选择设计题目:超声波测距器设计。主要技术指标:(1)能应用于汽车倒车,建筑施工工地以及一些工业现场的位置监控;(2)显示模块采用LED数码管,能清晰稳定地显示测量结果;(3)测量范围在0.504.00 m,测

3、量精度1 cm,测量时与被测物体无直接接触。2 超声波测距器硬件电路设计超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距离。路程、波速、时间之间的关系,可用下列简单的公式表示: 上式中,d为超声波传播单边的路程,s为超声波来回的路程, c为超声波波速, t为超声波来回所用的时间。当声速确定后,只要测得超声波往返的时间,即可求得距离。这就是超声波测距的原理。超声波测距的原理如图1所示。图1 超声波测距原理根据超声波测距原理,超声波测距器需要有超声波发生器、超声波接收器、超声波传播的计时器。按照系统设计功能的要求,硬件电路由单片机计时及控制电

4、路、超声波发射电路、超声波检测接收电路、显示电路及电源五部分组成。系统原理总框图见图2。图2 超声波测距器的原理总框图2.1单片机计时及控制系统设计单片机控制电路核心是单片机芯片,其加上工作基本电路,就可以展开控制工作。2.1.1 单片机芯片的选择MCS8031和AT89C51都具有4个8位I/O接口,但MCS8031没有内部程序存储器,需要外接,增加电路复杂性;AT89C2051和AT89C51都具有Flash ROM2,可以省去外接程序存储器;但AT89C2051接口少,不利于功能扩展;故选用AT89C51。AT89C51单片机内部结构及主要性能特点:40个引脚,双列直插式封装;有4个8位

5、I/O接口,有全双工增强型UART,可编程串行通信;2个16位定时计数器;5个中断源,2个中断优先级;有片内时钟振荡器(全静态工作方式,0-24 MHz);有128字节内部RAM,4 KB Flash ROM(可以擦除1000次以上,数据保存10年);电源控制模式灵活(时钟可停止和恢复,空闲模式,掉电模式)。其内部结构图如图3所示。图3 AT89C51/AT89C52内部结构图2.1.2 AT89C51基本电路AT89C51单片机要正常工作,必须有其基本电路,包括晶振电路、复位电路。(1) 晶振电路单片机的时钟信号通常有两种产生方式3:一是内部时钟方式,二是外部时钟方式。内部时钟方式是利用单片

6、机内部的振荡电路产生时钟信号。外部时钟方式是把外部已有的时钟信号引入到单片机内。本设计采用内部时钟方式,电路如图4所示。图4 晶振电路在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振),作为单片机内部振荡电路的负载,构成自激振荡器,可在单片机内部产生时钟脉冲信号。C1和C2的作用是稳定振荡频率和快速起振。根据经典电路选择参数,本电路选用晶振12 MHz, C1=C2=30PF2。(时钟频率为6MHz)其中晶振周期(或外部时钟信号周期)为最小的时序单位。(2) 复位电路复位电路如图5所示。 图5 按键与上电复位电路复位是使单片机处于某种确定的初始状态。单片机工作从复位开始。在单片机RS

7、T引脚引入高电平并保持2个机器周期,单片机就执行复位操作。复位操作有两种基本方式:一种是上电复位,另一种是上电与按键均有效的复位。本设计采用后一种复位电路。电路如图5所示。开机瞬间RST获得高电平,随着电容C3的充电,RST引脚的高电平将逐渐下降。若该高电平能保持足够2个机器周期,就可以实现复位操作。根据经典电路选择参数,选取C3=10F,R9=10K2。?2.1.3AT89C51定时计数应用电路AT89C51单片机片内集成有两个可编程的定时/计数器T0和T14。它们既可以工作于定时模式,也可以工作于外部事件计数模式。本设计采用定时计数器T0,根据需要,让其工作于方式1。方式1的计数位数是16

8、位,由TL0作为低8位,TH0作为高8位,组成16位加1计数器。其初值在65 5350范围,计数范围为165 536。具体应用见程序设计部分。2.2 超声波发射电路设计(1)选择超声波发生器类型超声波发生器可以分为两大类1:一类是用机械方式产生超声波,另一类是电气方式产生超声波。机械方式有加尔统笛,液哨和气流旋笛等,它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。电气方式包括压电型,电动型等;目前在近距离测量方面较为常用的是压电式超声波换能器。压电式超声波换能器利用压电晶体的谐振来工作,其内部结构如图6所示。超声波换能器有两个压电晶片和一个共振板。当它的两极外加电脉冲信号

9、,其频率等于压电晶片的固有振荡频率时,压电晶片将发生共振,从而带动共振板振动,产生超声波。反之,如果在共振板上外加适当的机械振动,使压电晶片发生共振,将在压电晶片之间产生交变的电信号。这时它就成为了超声波接收器。图6 超声波换能器内部结构图(2) 超声波发射电路设计超声波发射电路主要由反向器74LS04和超声波发射换能器T构成,如图7所示。图中T为超声波发射器,采用TCT40l0Fl,外型尺寸15 。输出端采用两个反向器并联,用以提高驱动能力。上拉电阻R2,R3一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡的时间。?工作时,单片机的

10、定时器T0产生40 KHz方波信号,从P1.3端口输出,一路经过一级反向器后送到超声波发射器T的一个电极,另一路经过两极反向器后送到超声波发射器T的另一个电极,从而将40 KHz电脉冲信号加到超声波发射器T,使T发射超声波。?电路采用推挽形式,向超声波发射器T提供电脉冲信号,可以提高超声波的发射强度。图7 超声波发射电路原理图2.3 超声波接收电路设计超声波接收电路主要由超声波接收换能器R和超声波检测接收模块构成,如图8所示。图中R为超声波接收器,采用TCT40l0Sl,外型尺寸15 。U3是超声波检测接收模块,设计时选用了红外线检波接收专用集成电路芯片CX20106A。选用的原因是CX201

11、06A常用的载波频率为38KHz,与测距的超声波频率40KHz较为接近,可以将发射的超声波频率控制为38KHz。电路中设置的电容C4,适当更改其大小,可以改变接收电路的抗干扰能力;适当改变电路中的电容C6,可改变电路的灵敏度。工作时,接收的超声波信号经R转换为电信号,加到CX20106A的输入端(1脚),处理后由CX20106A的输出端(7脚)送达单片机的中断口INT0,申请CPU处理。图8 超声波检测接收电路2.4 显示电路设计显示电路采用LED数码管显示。LED数码管显示有静态显示方式和动态显示方式,本系统采用并行输出的动态显示方式。(1)动态显示原理七段LED显示器由8个发光二极管组成,

12、通常构成字形“日”,其中有一个发光二极管用来显示小数点。各段LED显示器由驱动电路驱动,控制相应的二极管导通,相应的一个笔画或一个点就发光,由此就能显示出对应字符。通常将各段发光二极管的阴极或阳极连在一起作为公共端;将各段发光二极管阳极连在一起的叫共阳极显示器,用低电平驱动;将阴极连在一起的叫共阴极显示器,用高电平驱动。动态显示,就是一位一位地轮流点亮显示器的各个位。LED显示器工作于动态显示方式时,所有位的段码线相应段并联在一起,由1个8位I/O口驱动控制,形成段码线多路复用。各位的共阴极或共阳极选择线分别由相应的1条I/O线控制,形成各位的分时选通。对显示器的每一位而言,每隔一段时间点亮一

13、次。虽然在同一时刻只有一位显示器点亮,但由于人眼的视觉暂留效应和发光二极管熄灭时的余辉,我们看到的却是多个字符“同时”显示。显示器亮度既与点亮时的导通电流有关,也与点亮时间长短和点亮的间隔时间有关。对于确定的LED,调整点亮时的导通电流和点亮的间隔时间参数,即可实现亮度较高较稳定的显示。动态显示的优点是大大简化了硬件电路,但控制程序更复杂,控制时占用大量CPU时间;实质就是牺牲CPU时间换取器件减少。(2)显示电路结构根据本超声波测距器显示测距数据的需要,采用4位LED动态显示电路。 其中2位显示小数部分,2位显示整数部分。显示信息输入部分由单片机P0输出端,连接74LS244相应输入端,驱动

14、器输出端经限流电阻连接相应字段码端;字位控制部分分别由三极管驱动,选用PNP型晶体管9012,其基极经限流电阻连接单片机的P2口相关端子,集电极连接数码管的共用端,发射极连接电源。显示电路如图9所示5。图9 超声波测距动态显示电路(3)显示电路工作过程工作中某时段,P0口输出相关位显示的段码,由P2口相应端输出位控信号,控制相应的显示位显示数据,同理,另一时间段,相应的另外的显示位显示数据,从而实现动态扫描显示。2.5 电源电路设计电源电路由变压器、单相桥式电路、滤波电路和三端稳压电路构成。其电路如图10所示。电子设备中常使用输出电压固定的集成稳压器。三端式稳压器只有输入、输出和公共引出端,由

15、启动电路、基准电压电路、取样比较放大电路、调整电路和保护电路等部分组成。在本系统中,要求电源电压为5V,由于三端式稳压器输出电压固定,故在设计中选择三端式稳压器7805。7805电路参数6:当,输入为,时,输出,本设计稳压输出5V。三端式稳压器的输入与输出之间电压差为2-3V7 ,整流桥的输出电压是输入电压(有效值)的1.2倍(这里选择IN4007组成的单相桥式整流电路),故选择220V/ 6V的变压器。由于7805的最大输出电流为1A,电压为稳定的+5V,最大输出功率为5W,考虑电源消耗,故本系统选择8W的变压器。图8中C7、C9为低频滤波电容,根据经验选择电解电容,其容值分别为C8=C10

16、=1000F;C9、C11为高频滤波电容,均选0.1F的贴片电容。发光二极管用于指示电源是否接通,选择FG1112004 发光二极管,根据正向电流If=5mA,选择限流电阻R19= 620。图10 电源电路2.6总体硬件结构与工作原理超声波测距器工作原理:打开电源,整个电路通电,单片机执行程序,对系统环境初始化,设置定时器T0工作模式,启动T0, 调用超声波发生子程序,等待反射超声波,计算距离,显示距离;重复。工作过程中,相关的子程序和中断程序被执行,相应硬件配合行动,显示测量结果。3系统软件设计超声波测距器的软件主要由主程序,超声波发生子程序,超声波接收中断程序以及显示子程序组成。C语言程序

17、有利于实现较复杂的算法,汇编语言程序则具有较高的效率且容易计算程序运行时间。本系统的程序既有较复杂的计算(计算距离时),又要求精确计算程序运行时间(超声波测距时),所以控制程序采用C语言和汇编语言混合编程。3.1超声波测距器的算法设计从前面距离的计算公式可知,c为声速,对于超声波,在常温20时,其数值为344米/秒;若能准确测量出超声波从发射到返回所用时间,则可以计算出发射点到被测障碍物之间的距离。测量距离时,由超声波测距器的主控制器中定时器记录时间,设计中要求超声波测距时精确计算程序运行时间。测量超声波来回所用的时间,当送出一个超声波脉冲后,需要延时约0.1ms,才打开外中断0接收返回的超声

18、波信号,这是为了避免超声波从发射器直接传送到接收器引起直射波触发。单片机工作时晶振频率为12MHz,计数器每计1个数就是1 s,当主程序检测到接收成功的标志位后,将停止计数器T0计数。计算距离,将计数器T0中的计数值T0带入距离的计算公式计算,即可得被测物体与测距器之间的距离。具体为计算的结果,以十进制BCD码方式送往LED显示,显示时间约0.5s,然后再发超声波脉冲重复测量过程。3.2 系统的主控制程序设计主程序包括对系统环境初始化,设置定时器T0工作模式,调用超声波发生子程序,等待反射超声波,计算距离,显示距离;重复。主程序流程图如图11。图11. 主程序流程图3.3超声波发生子程序设计超

19、声波发生子程序,主要功能是单片机控制,通过P1.3端口发送2个左右超声波脉冲信号,频率为约40kHz的方波,其脉冲宽度为12s左右,同时把计数器T0打开进行计时。3.4超声波接收中断程序设计超声波接收中断程序,主要功能是单片机控制,检测外中断0返回超声波信号,一旦接收到返回超声波信号(即INT0引脚出现低电平),立即进入中断程序。进入该中断后就立即关闭计时器T0停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0关闭,并将测距成功标志字赋值2以表示本次测距不成功。4系统调试及性能分析4.1 系统调试超声波测距器的硬件制作注意:安装超声波

20、发射换能器和接收换能器时,应保持两换能器中心轴线平行并相距48 cm,其余元件无特殊要求。可以将超声波接收电路用金属壳屏蔽起来,以提高抗干扰性能。硬件调试首先检查电路的焊接是否正确,并用万用表测试或通电检测电路是否接通。硬件电路制作完成并调整好以后,便可将程序编译好下载到单片机试运行。根据实际情况修改超声波发生子程序每次发送的脉冲宽度和两次测量的间隔时间,以适应不同距离的测量需要。4.2 系统性能分析根据设计指标:测量范围在0.10-4.00m,测量精度1cm的要求,实验时,可以考查比0.10m更小距离和比4.00m更大距离。进行试测,用标准工具对比检验。结果应该是测量范围更大、测距最大误差不

21、超过1cm,重复一致性好。结束语本设计采用AT89C51单片机作为计时及主控制器、用TCT40l0Fl作超声波发射器、用TCT40l0Sl和CX20106A构成超声波检测接收电路。将相关控制编程,写入单片机,实现了以单片机控制的超声波测距器。本超声波测距器采用硬件电路和软件控制相结合,电路结构简单,低成本,操作方便,工作稳定,测量精度高,可达0.01米。可用于日常生活及工农业生产中距离的测量及位置监控。例如管道长度、油井深度、液面高度,建筑施工各点定位等。本超声波测距器只具有测量显示功能,没有反馈与控制功能。其设计思想可以应用于智能安全系统。例如,在车辆智能自动安全系统中, 检测车辆左、右动、

22、静态障碍物,并显示距离,至危险区域后与智能模糊控制器通信以采取最佳避让措施等。参考文献1 余成波传感器与自动检测技术M北京高等教育出版社,2004:1242 李全利单片计原理及接口技术M北京高等教育出版社,2004:233 张毅刚单片机原理及应用M 北京高等教育出版社,2004:31 4 周航慈单片机应用程序设计技术M 北京北京航空航天大学出版,200:115 陈明荧8051单片机课程实训教材M 北京清华大学出版社,2004:506 廖先芸电子技术实践与训练M 北京高等教育出版社,2000:15-177 康华光电子技术基础模拟部分M 北京高等教育出版社,2003:4598 刘道兴电子技术培训教

23、学讲义M 内部资料,200附录1电路总原理图附录2 电源电路原理图附录4 电路PCB版图附录5 超声波测距器源程序清单超声波测距器源程序清单: /文件1 :cscjmain.c/超声测距器单片机程序/MCU AT89C51 XAL 12 MHz/Builde By Gavin Pei, 2006. 5. 28;#include #define uchat unsigned char#define uint unsigned int#define ulong unsigned longextern void cs_t(void);extern void delay(uint);extern vo

24、id display(uchar *);,data uchar testokt;/*主程序*/void main(void)data uchar dispram5;data uint I;data ulongtime;P0 = 0xff;P2 = 0xff,TMOD=0x11;IE=0x80;while (1) cs_t(); delay(1), testok=0; EX0 = 1; ET0=1; while(!testok) display(dispmm); if (1= testok) time=TH0;time = (time8)|TL0; time*=172; time/=10000;

25、 disptamo=(uchar)(time%10); time/=10 disptam1=(uchar)(time%10); time/=10; dispram2=(uchar)(time%1o); dispram3=(uchar) (time/10);if (0=dispram3) diapram3=17; sele dispram0=16;dispram0=16;dispram0=16;dispram0=16; for (i=0; i300;i+) display(dispram); /*超声接收程序(外中断0)*/void cs_r(void) interrupt 0 TR0=0;ET

26、0 =0; EX0=0; Testok=1;/*超时清除程序(内中断T0)*/void overtime(void) interrupt 1 EX0 = 0; TR0=0; ET0=0; testok=2;/文件2:cs_t.asm*/;/超声发生子程序 (12 MHz晶振38.5 Hz) NAME CS_T?PR?CS_T?CS_T SEGMENT CODE PUBLIC CS_T RSEG ?PR?CS_T?CS_TCS_T : PUSH ACC MOV TH0,#00H MOV TL0,#00H MOV A, #4D SETB TR0CS-T1: CPL P1.3 NOP NOP NOP

27、 NOP NOP NOP NOP NOP NOP NOP DJNZ ACC, CS_T1 POP ACC RET;/文件3:rdieplay.asm*/;四位共阳LED动态扫描显示子程序;P0为段码口,P2为位选口(高电平有效);参数为要显示的字符串指针 NAME DISPLAY?PR?_DISPLAY?DISPLAY SEGMENT CODE?CO?-DISPLAY?DISPLAY SEGMENT DATA EXTRN CODE (_DELAY) PUBLIC DISPLAY RSEG ?CO?_DISPLAY?DISPLAY?-DISPLAY?BYTE: DISPBIT: DS 1DISP

28、NUM: DS 1 RSEG ?PR?_DISPLAY?DISPLAYDISPLAY: PUSH ACC PUSH DPH PUSH DPL PUSH PSW INC DISPNUM MOV A,DISPNUM CJNE A,#4D, DISP1DISP1: JC DISP2 MOV DISPNUM,#00H MOV DISPBIT,#0FEHDISP2: MOV A, R1 ADD A, DISPNUM MOV R0,A MOV A, R0 MOV DPTR,#DISPTABLE MOVC A,A+DPTR MOV P0,A MOV A, DISPNUM CINE A,#2D, DISP3

29、CLR P0.7DISP3: MOV P2,DISPBIT MOV R6,#00H MOV R7,#0AH LCALL DELAY MOV P0,#0FFHMOV P2,#0FFH MOV A, DISPBIT RL A MOV DISPBIT, A POP PSW POP DPL POP DPH POP ACC RETD15R1ABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82HDB 0F8H,S0H,90H,88H,83H,0C6H DB 0A1H,86H,8EH,0BFH,0FFH;”0”,”1”,”2”,”3”,“4,”5”,”6”,”7”,”8”,”9”,A,”B”,C,D,“E,“F”,”一”,“ ” ;/文件4:DELAY.ASM*/;延时100机器周*参数(1-65535) NAME DELAY?PR?_DELAY?DELAY SEGMENT CODE PUBLIC _PELAY RSEG ?PR?_DELAY?DELAYDELAY: PUSH ACC ;2 MOV A, R7 ;1 JZ DELA1 ;2 INC R6 ;1DELA1: MOV R5,#50D ;2 DJNZ R5,$ ;2 DJNZ R7,DELA1 ;2 DJNZ R6,DELA1 ;2 POP ACC ;2 RET END

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1