您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 综合/其它 > 基于单片机的测距仪设计.
基于单片机的超声波测距仪设计答辩人:指导教师:目录Contents选题的背景与意义超声波测距原理系统硬件设计系统软件设计总结超声波测距的应用选题的背景Thebackgroundofthetopic背景:近年来,电子测量技术应用越来越广泛,超声波测距作为一种典型的非接触测量方法,具有的高精度、损耗低、非接触等优点,使得超声测距在很多场合得到了运用。意义:超声波测距是利用声波反射原理,避免传感器直接与介质接触,是一种传统而实用的非接触测量方法。与红外、激光及无线电测距相比,它具有结构简单、可靠性能高、价格便宜等优异特性。在近距离范围内超声波测距具有不受光线、颜色以及电磁场的影响和指向性强的优点,更重要的是使用超声波检测能很大程度的降低劳动强度,可以避免工作人员在恶劣工作环境中可能受到的伤害,还能够提高距离结果的准确度;因此超声测距广泛应用于倒车雷达、机器人自动避障、地形地貌探测及一些工业现场等方面。超声波测距仪对电子测量技术发展是非常重要的。应用一倒车雷达:解除了驾驶员泊车、倒车和起动车辆时前后左右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷,提高驾驶的安全性。应用二超声波物位计是运用超声波在气体、液体或固体中的衰减、穿透能力和声阻抗不同的性质来测量两种介质的界面。此类仪表精度高、反应快,但成本高、维护维修困难,都用于要求测量精度较高的场合。应用三超声波测距仪:公英制转换;计算面积和体积;五组数据存储;长度累加测试。主要应用于:室内装潢设计,建筑施工,房地产公司房子丈量,工程监理现场查验,房地产开发建设,评估,施工,公共设施规划,园林。1.1基本参数工作电压:4.5V~5.5V。功耗电流:最小1mA,最大20mA;谐振频率:40KHz;探测距离范围:4毫米~4米。误差:4%距离数据格式:以毫米为最小数据单位,双字节16进制传输,前高后低;1.2原理经发射器发射出长约6mm,频率为40KHZ的超声波信号。此信号被物体反射回来由接收头接收,接收头实质上是一种压电效应的换能器。它接收到信号后产生mV级的微弱电压信号。Ultrasonicdistancemeasurementprinciple超声波测距原理`发射器发出的超声波以速度v在空气中传播,在到达被测物体是被反射返回,由接受器接受,其往返时间为t,有s=vt/2即可算出被测物体的距离。由于超声波也是一种声波,其声速v与温度有关,下表列出了几种不同温度下的声速。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应该通过温度补偿的方法加以校正。温度(℃)-30-20-100102030100声速(m/s)313319325323338344349386超声波波速与温度的关系超声波测距系统总体方案框图硬件设计ThehardwaredesignAT89C51介绍超声波发射电路单片机最小系统显示电路温度补偿电路超声波接收电路电源介绍AT89C51介绍1.主要性能参数与MCS—51产品指令系统完全兼容4K字节可以重复擦写Flash闪速存储器1000吃擦写周期全静态操作:0Hz—24Hz三级加密程序存储器128*8字节内部RAM32个可编程I/O口线6个中断源可编程串行UART通道低功耗空闲和掉电模式2.功能特性概述4k字节Flash闪速存储器128字节内部RAM32个I/O口线两个16位定时器/计时器一个5向量两级中断结构一个双工串行口通信片内振荡器及时钟电路各引脚功能a.主电源引脚VCCVCC电源输入端,工作电源和编程校验为+5V。b.时钟振荡电路引脚XTAL1和XTAL2XTAL1和XTAL2分别作为晶体振荡电路的反相器输入端和输出端。在使用外部振荡电路时,这两个端子用来外接石英晶体,振荡频率为晶体振荡频率,振荡信号送至时钟电路产生时钟脉冲信号。这个部分给单片机提供工作节拍,也可称作单片机的主频。c.控制信号引脚RST,ALE,PSEN和EARST为复位信号输入端。当RST端保持两个机器周期(24个时钟周期)以上的高电平时,单片机完成复位操作。ALE为地址锁存允许信号,在访问外部存储器时,ALE用来锁存P0口送出的低8位地址信号。PSEN为外部程序存储器的读选通信号。EA为访问外部程序存储器控制信号。对8051和8751,他们的片内有4KB的程序存储器。d.4个8位I/O端口——P0,P1,P2和P3P0口(P0.0~P0.7)是一个8位漏极开路型的双向I/O口,这时P0可看做用户数据总线P1口(P1.0~P1.7)——是一个带有内部上拉电阻R可以作为准双向I/O口(在引脚读入前,必须对该端口写入1,具有这种操作的I/O口称作准双向I/O口)P2口(P2.0~P2.7)——该端口内部有上拉电阻R又有切换开关MUX,所以P2端口在功能上兼有P1和P2口的功能。P3口(P3.0~P3.7)——P3口是一个多功能端口,除了可以做I/O口外,还具有第二功能。单片机最小系统单片机最小系统主要由AT89C51单片机、外部振荡电路、复位电路和+5V电源组成。在外部振荡电路中,单片机的XTAL1和XTAL2管脚分别接至由12MHZ晶振和两个30PF电容构成的振荡电路两侧,为电路提供正常的时钟脉冲。在复位电路中,单片机RESET管脚一方面经20F的电容接至电源正极,实现上电自动复位,另一方面经开关s接电源。其主要功能是把PC初始化为0000H,是单片机从0000H单元开始执行程序,除了进入系统的初始化之外,当由于程序出错或者操作错误使系统处于死锁状态时,为了摆脱困境,也需要按复位键重新启动超声波发射电路发射电路主要由反相器74LS04和超声波发射换能器T构成,如图3-3所示,单片机P2.7端口输出的40kHz的方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推换形式将方波信号加到超声波换能器的两端,可以提高超声波的发射强度。输出端采两个反向器并联,用以提高驱动能力。上位电阻R2、R3一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡时间。超声波接收电路超声波接收电路CX20106A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38kHz与测距的超声波频率40kHz较为接近,可以利用它制作超声波检测接收电路。实验证明用CX20106A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。适当更改电容C16的大小,可以改变接收电路的灵敏度和抗干扰能力温度补偿电路S18B20温度传感器是美国DALLAS半导体公司推出的一种改进型智能温度传感器,测温范围为-55~125℃,最大分辨率可达0.0625℃。DS18B20可以直接读出被测温度值,而且采用了一线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。测温电路图3-5所示。DS18B20温度传感器:独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯显示电路带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64。内置8192个16*16点汉字,和128个16*8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字。12864液晶模块可完成图形显示。低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。电源介绍电源变压器——由于各种电子设备要求直流稳压电源提供不同幅值的直流电压,而市电提供的交流电压一般为220V,因此需要变压器将市电的电压转换成所需要的交流电压,再将转换的电压经过整流、滤波、稳压最后获得所需要的直流电压。整流电压——利用具有单向导电性的器件,将大小、方向变化的正弦交流电变成单向脉动的直流电压。滤波电路——将整流后的单向脉动直流电压中的纹波尽可能地滤除掉,使其变成平滑的直流电,滤波电路由电容、电感等储能元件组成。当电容两端的电压升高时,电容充电;降低时,电容放电,从而起到滤波作用。稳压电路——在电网电压和负载电路变化时,起到保持输出直流电压稳压的作用。软件设计Thesoftwaredesign主程序首先是对系统环境初始化,设置定时器T0工作模式为16位定时计数器模式。置位总中断允许位EA并给显示端口P0和P1清0。然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1ms(这也就是超声波测距仪会有一个最小可测距离的原因)后,才打开外中断1接收返回的超声波信号。主程序流程图定时中断入口定时器初始化发射超声波发射完否?停止发射返回YN超声波发生子程序的作用是通过P1.0端口发送左右超声波脉冲信号(频率约40kHz的方波),脉冲宽度为12μs左右,同时把计数器T1打开进行计时,定时器T1工作在方式0。超声波测距仪主程序利用外中断1检测返回超声波信号,一旦接收到返回超声波信号(即引脚出现低电平),立即进入中断程序。进入中断后就立即关闭计时器T1停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,则定时器T1溢出中断将外中断1关闭,并将测距成功标志字赋值0表示此次测距不成功。超声波发生子程序的作用是通过P2.7端口发送2个左右超声波脉冲信号(频率约40kHz的方波),脉冲宽度为12μs左右,同时把计数器T0打开进行计时。超声波发生子程序较简单,但要求程序运行准确。超声波发射子程序外部中断入口关外部中断读取时间值计算距离结果输出开外部中断返回计算子程序超声波测距仪主程序利用外中断1检测返回超声波信号,一旦接收到返回超声波信号(即INT1引脚出现低电平),立即进入中断程序。进入中断后就立即关闭计时器T0停止计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断1关闭,并将测距成功标志字赋值2以表示此次测距不成功。当前温度和超声波往返时间均测量出来后,用C语言根据公式计算距离来编程是比较简单的算法。显示子程序总结由于时间和其它客观上的原因,此次设计没有成功做出实物。但是对设计有一个很好的理论基础。设计的最终结果是使超声波测距仪能够产生超声波,实现超声波的发送与接收,从而实现利用超声波方法测量物体间的距离。以数字的形式显示测量距离。感谢各位老师批评指正答辩人:答辩日期:2016年6月15日
本文标题:基于单片机的测距仪设计.
链接地址:https://www.777doc.com/doc-2536006 .html