单片机测距系统.doc_第1页
单片机测距系统.doc_第2页
单片机测距系统.doc_第3页
单片机测距系统.doc_第4页
单片机测距系统.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 数理与信息工程学院数理与信息工程学院 单片机原理及应用单片机原理及应用 期末课程设计期末课程设计 题题 目 目 基于单片机超声波测距系统的设计 专专 业 业 计算机科学与技术 专升本 班班 级 级 计算机 081 班 姓姓 名 名 阮 程 程 学学 号 号 08191109 指导老师 指导老师 余 水 宝 成成 绩 绩 2009 6 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 目目 录录 第第 1 1 节节 引引 言言 1 1 1 超声波测距系统概述 2 1 1 1 超声波传感器 2 1 1 2 超声波测距的基本原理 2 1 2 本设计任务和主要内容 3 1 2 1 设计任务 3 1 2 2 主要内容 3 第第 2 2 节节 系统主要硬件电路设计系统主要硬件电路设计 4 2 1 方法论证与比较 4 2 2 单片机系统电路 5 2 3 单片机硬件电路 5 2 3 1 单片机系统及显示电路 5 2 3 2 超声波发射电路 6 2 3 3 超声波检测接受电路 7 第第 3 3 节节 系统软件设计系统软件设计 9 3 1 超声波测距器的算法设计 9 3 2 主程序设计 10 3 3 超声波发射和接收子程序 11 3 4 显示子程序 14 3 5 超声波测距控制源程序 15 结束语结束语 16 参考文献参考文献 17 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 1 基于单片机超声波测距系统的设计基于单片机超声波测距系统的设计 数理与信息工程学院 08 计算机专升本 阮程程 指导教师 余水宝 第第 1 节节 引引 言言 18 世纪 意大利传教士兼生物学家斯帕兰 扎尼在研究蝙蝠夜间活动时 发现 将蝙蝠眼睛蒙上 在伸手不见五指的黑夜里 它仍能穿梭飞行 可是把蝙蝠的双耳 塞住 它就会到处瞎撞 原来 蝙蝠飞行时能发出高频率的尖叫 由它特大的耳廓 接收回波 来判定出目标或障碍物及其距离 蝙蝠是靠高频率的尖叫来确定障碍物 的位置的 蝙蝠尖叫声的声波频率在每秒 2 万到 10 万赫兹之间 我们的耳朵对这样 频率范围内的声波是听不到的 这样的声波被称之为超声波 蝙蝠发出超声波 然 后借助物体反射回来的回声 就能判断出所接近的物体的大小 形状和运动方式 在自然界中除了蝙蝠还有很多其它动物能发出超声波 如海洋中的海豚也具备很强 的超声定位本领 人们正是从自然界生物中获得了灵感 开始了仿生学研究并取得卓著成果 第 二次世界大战时 军舰已使用回声探测术来侦察水下的潜艇 50 年代 科学家们将 超声波探测技术应用到医学上 到 70 年代以来 以 B 型超声成像为代表的医学超声 诊断技术已经取得了很快的发展 超声诊断由于安全 简单 经济 信息量丰富而 受到医学界的特别赏识 现在超声波已广泛应用于无损探伤物位测量测厚测距等领 域 近二 三十年 特别是近十年来 由于电子技术及压电陶瓷材料的发展 使超 声检测技术得到了迅速的发展 超声技术是一门以物理 电子 机械 及材料学为 基础的通用技术之一 超声技术是通过超声波产生 传播及接收的物理过程而完成 的 超声波具有聚束 定向及反射 透射等特性 超声检测技术是利用超声波在媒质中的传播特性 声速 衰减 反射 声阻抗 等 来实现对非声学量 如密度 浓度 强度 弹性 硬度 粘度 温度 流速 流量 液位 厚度 缺陷等 的测定 它的基本原理是基于超声波在介质中传播时 遇到不同的界面 将产生反射 折射 绕射 衰减等现象 从而使传播的声时 振 幅 波形 频率等发生相应变化 测定这些规律的变化 便可得到材料的某些性质 与内部构造情况 目前 超声波测距在各种场合均已经得到广泛的应用 如汽车倒车 海洋测量 物体识别 工业自动控制 建筑工程测量和机器人视觉识别等 1 11 1 超声波测距系统概述超声波测距系统概述 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 2 1 1 11 1 1 超声波传感器超声波传感器 超声波是指频率高于 20KHz 的机械波 为了以超声波作为检测手段 必须产生 超生波和接收超声波 完成这种功能的装置就是超声波传感器 习惯上称为超声波 换能器或超声波探头 超声波传感器有发送器和接收器 但一个超声波传感器也可 具有发送和接收声波的双重作用 超声波传感器是利用压电效应的原理将电能和超 声波相互转化 即在发射超声波的时候 将电能转换 发射超声波 而在收到回波 的时候 则将超声振动转换成电信号 由于超声波指向性强 能量消耗缓慢 在介质中传播距离远 因而超声波可以 用于距离的测量 利用超声波检测距离 设计比较方便 计算处理也较简单 并且 在测量精度方面也能达到要求 测量距离的方法有很多种 短距离的可以用尺 远距离的有激光测距等 超声 波测距适用于高精度的中长距离测量 因为超声波在标准空气中的传播速度为 331 45 米 秒 由单片机负责计时 单片机使用 12 M 晶振 所以此系统的测量精度 理论上可以达到毫米级 超声波发生器可以分为两类 一类是用电气方式产生超声波 一类是用机械方 式产生超声波 本课题属于近距离测量 可以采用常用的压电式超声波换能器来实 现 1 1 21 1 2 超声波测距的基本原理超声波测距的基本原理 超声波发生器在某一时刻发出超声波信号 遇到被测物体后反射回来 被超声 波接收器接收到 只要计算出超声波信号从发射到接收到回波信号的时间 知道在 介质中的传播速度 就可以计算出距被测物体的距离 1 22 T VS D 1 式中 D 为被测物到测距仪之间的距离 S 为超声波往返通过的路程 V 为超声波 在介质中的传播速度 T 为超声波从发射到接收所用的时间 为了提高精度 需要 考虑不同温度下超声波在空气中传播速度随温度变化的关系 1 TV61 0 4 331 2 式中 T 为实际温度 v 的单位为 m s 1 21 2 本设计任务和主要内容本设计任务和主要内容 1 2 11 2 1 设计任务设计任务 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 3 设计一个超声波测距器 可以应用于汽车倒车 建筑施工工地以及一些工业现 场的位置监控 也可用于如液位 井深 管道长度的测量等场合 要求测量范围在 0 10 4 00m 测量精度 1cm 测量时与被测物体无直接接触 能够清晰稳定地显示 测量结果 1 2 21 2 2 主要内容主要内容 该系统主要由单片机系统及显示电路 超声波发射电路和超声波检测接收电路 三部分组成 其主要内容如下 硬件电路的设计 1 根据超声波测距的特点 进行系统的整体规划和设计 2 针对系统的整体功能 对各个模块电路进行具体设计 3 对超声波发生电路进行论证和设计 产生用于测量的超声波 4 对超声波接收电路进行论证和设计 接收反射回来的超声波 5 对数据采样电路进行设计和分析 测量发送和接收的时间 并计算距离 6 LED 数码显示测量的距离值 以文字显示的方式显示测量的距离 系统软件的设计 1 超声波测距器的算法设计 2 系统主程序的设计 3 发送子程序的设计 4 接收中断程序的设计 5 显示子程序的设计 6 超声波测距控制源程序的设计 第 2 节 系统主要硬件电路设计系统主要硬件电路设计 2 12 1 方法论证与比较方法论证与比较 目前 非接触式测距仪常采用超声波 激光和雷达 激光测距仪是利用激光对目标的距离进行准确测定的仪器 激光测距仪在工作 时向目标射出一束很细的激光 由光电元件接收目标反射的激光束 计时器测定激 光束从发射到接收的时间 计算出从观测者到目标的距离 虽然激光测距比较精确 但是需要注意人体安全 制做的难度较大 成本也较高 并且光学系统需要保持干 净 否则将会影响测量 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 4 雷达是利用极短的无线电波进行探测的 雷达的组成部分有发射机 天线 接 收机和显示器等 由于无线电波传播时 遇到障碍物就能反射回来 雷达就根据这 个原理把无线电波发射出去 再用接收装置接收反射回来的无线电波 这样就可以 测定目标的方向 距离 高度等 雷达被称为 千里眼 白天黑夜均能探测远距离 的目标 且不受雾 云和雨的阻挡 具有全天候 全天时的特点 并有一定的穿透 能力 因此 它常常是军事上必不可少的电子装备 但是 雷达却存在致命的的三 大弱点 一是对超低空目标有盲区 千里眼 实际是远视眼 头顶和鼻子底下有盲 区 二是雷达是主动用电波去搜寻目标的 易暴露自身 三是雷达很容易受到干扰 频率相同的电波它不分敌我 一律可以入内 超声波测距是利用超声波在空气中的传播速度为已知 测量声波在发射后遇到 障碍物反射回来的时间 根据发射和接收的时间差计算出发射点到障碍物的实际距 离 其测距原理与雷达原理相一致 但是在测距方面 超声波却比雷达和激光更有 明显的优势 激光和雷达测距仪造价偏高 不利于广泛的普及应用 在某些应用领 域有其局限性 一般仅用于军事和工业领域 相比之下 超声波测距系统电路不仅 易实现 结构简单和造价低 而且穿透力强 指向性强 传输过程中衰减少 能量 消耗缓慢 在介质中传播的距离较远 在传播过程中也不受烟雾 空气能见度等因 素的影响 对外界光线 色彩和电磁场不敏感 更适于黑暗 电磁干扰强 有毒 有灰尘或烟雾的恶劣环境 在识别透明及漫反射性差的物体上也更有优势 另外 超声波与一般声波比较 它的振动频率高 而且波长短 因而具有束射 特性 方向性强 可以定向传播 其能量远远大于振幅相同的一般声波 并且具有 很高的穿透能力 2 22 2 单片机系统电路单片机系统电路 根据设计要求并综合各方面因素 可以采用 AT89S51 单片机作为主控制器 用 动态扫描法实现 LED 数字显示 超声波驱动信号用单片机的定时器完成 超声波测 距器的系统设计框图如图 2 1 所示 超声波接收 超声波发送 单片机 控制器 LED 显示 扫描驱动 图 2 1 超声波测距器系统设计框图 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 5 2 32 3 系统硬件电路系统硬件电路 本系统主要由单片机系统及显示电路 超声波发射电路和超声波检测接收电路 三部分组成 采用 AT89S51 来实现对 CX20106A 红外接收芯片和 TCT40 10 系列超声 波转换模块的控制 单片机通过 P1 0 引脚经反相器来控制超声波的发送 然后单片 机不停的检测 INT0 引脚 当 INT0 引脚的电平由高电平变为低电平时就认为超声波 已经返回 计数器所计的数据就是超声波所经历的时间 通过换算就可以得到传感 器与障碍物之间的距离 其原理图如图 2 2 所示 图 2 2 超声波测距板原理框图 2 3 12 3 1 单片机系统及显示电路单片机系统及显示电路 单片机采用 AT89S51 或其兼容系列 采用 12MHz 高精度的晶振 以获得较稳定 的时钟频率 减小测量误差 单片机使用 P1 0 端口输出超声波转化器所需的 40KHz 方波信号 利用外中断 0 口检测超声波接受电路输出的返回信号 显示电路采用简 单实用的 4 位共阳 LED 数码管 段码用 74LS244 驱动 位码用 PNP 三极管驱动 单片机系统如图 2 3 所示 定时器 控 制 显示器 调制器振荡器超声发射器 计时器接收检测超声接收器 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 6 图 2 3 AT89S5 1 单片 机图 2 3 22 3 2 超声波发射电路超声波发射电路 图 2 4 超声波发射电路原理图 发射电路主要硬件单元的功能 单片机 OC1 端输出的 40kHz 方波信号一路经一级反向器后送到超声波换能器的 一个电极 另一路经两级反向器后送到超声波换能器的另一个电极 用这种推挽形 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 7 式将方波信号加到超声波换能器两端 可以提高超声波的发射强度 输出端采用两 个反向器并联 用以提高驱动能力 上拉电阻 R10 R20 一方面可以提高反向器 74LS04 输出高电平的驱动能力 另一方面可以增加超声波换能器的阻尼效果 缩短 其自由振荡的时间 因为本课题属于近距离测量 所以本系统的超声波发生器采用常用的压电式超 声波换能器来实现 压电超声波转换器的功能是利用压电晶体谐振工作 其内部结 构如图 2 4 所示 它由两个压电晶片和一个共振板共同组成 当它的两极外加脉冲 信号 其频率等于压电晶片的固有振荡频率时 压电晶片将会发生共振 并带动共 振板振动产生超声波 这时它就是一超声波发生器 如果没加电压 当共振板接受 到超声波时 将压迫压电振荡器做振动 将机械能转换为电信号 这时它就成为超 声波接受转换器 另外 超声波发射转换器和接受转换器的结构稍有不同 共振板 电极 压电晶片 图 2 5 超声波转化结构图 2 3 32 3 3 超声波检测接受电路超声波检测接受电路 参考红外转化接收期刊的电路采用集成电路 CX20106A 这是一款红外线检波接 收的专用芯片 常用于电视机红外遥控接收器 考虑到红外遥控常用的载波频率 38KHz 与测距超声波频率 40KHz 较为接近 可以利用它作为超声波检测电路 实验 证明其具有很高的灵敏度和较强的抗干扰能力 适当改变 C4 的大小 可改变接受电 路的灵敏度和抗干扰能力 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 8 图 2 6 超声波接收电路原理图 第第 3 3 节节 系统的软件设计系统的软件设计 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 9 超声波测距软件设计主要由主程序 超声波发射子程序 超声波接受中断程序 及显示子程序组成 下面对超声波测距器的算法 主程序 超声波发射子程序和超 声波接受中断程序逐一介绍 3 13 1 超声波测距器的算法设计超声波测距器的算法设计 图 3 1 示意了超声波测距的原理 即超声波发生器 T 在某一时刻发出的一个超 声波信号 当超声波遇到被测物体后反射回来 就被超声波接收器 R 所接受 这样 只要计算出发生信号到接受返回信号所用的时间 就可算出超声波发生器与反射物 体的距离 距离计算公式如下 3 22 T CS D 1 D 为被测物与测距器的距离 S 为声波的来回路程 C 为声速 T 为声波来回所 用的时间 T R 图 3 1 超声波测距原理图 声速 c 与温度有关 如温度变化不大 则可认为声速是基本不变的 如果测距 精度要求很高 则应通过温度补偿的方法加以校正 声速确定后 只要测得超声波 往返时间 即可求得距离 在系统加入温度传感器来监测环境温度 可进行温度被 偿 这里可以用 DS18B20 测量环境温度 根据不同的环境温度确定一声速提高测距 的稳定性 为了增强系统的可靠性 应在软硬件上采用抗干扰措施 表 3 1 不同温度下的超声波声速表 温度 30 20 100102030100 声速 c m s 313319325323338344349386 3 23 2 主程序设计主程序设计 首先对系统环境初始化 设置定时器 T0 工作模式为 16 位的定时计数器模式 置位总中断允许位 EA 并给显示端口 P0 和 P2 清 0 然后调用超声波发生子程序送出 一个超声波脉冲 为避免超声波从发射器直接传送到接收器引起的直接波触发 需 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 10 延迟 0 1ms 这也就是测距器会有一个最小可测距离的原因 后 才打开外中断 0 接 收返回的超声波信号 由于采用 12MHz 的晶振 机器周期为 1us 当主程序检测到接 收成功的标志位后 将计数器 T0 中的数 即超声波来回所用的时间 按下式计算即 可测得被测物体与测距仪之间的距离 设计时取 20 时的声速为 344 m s 则有 3 cm T T C D 10000 0172 2 0 2 T0 为计数器 T0 的计数值 测出距离后结果将以十进制 BCD 码方式 LED 然后再发超声波脉冲重复测量过 程 主程序框图如图 3 2 所示 显示结果 0 5s 计算距离 等待发射超声波 开始 系统初始化 发送超声波脉冲 图 3 2 主程序框图 主程序代码如下 START MOV SP 4FH MOV R0 40H 40 43H 为显示数据存放单元 40 为最高位 MOV R7 0BH CLEARDISP MOV R0 00H INC R0 DJNZ R7 CLEARDISP MOV 20H 00H MOV TMOD 21H T1 为 8 位自动重装模式 T0 为 16 位定时器 MOV TH0 00H 65ms 初值 MOV TL0 00H 40KHz 初值 MOV TH1 0F2H MOV TL1 0F2H 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 11 MOV P0 0FFH MOV P1 0FFH MOV P2 0FFH MOV P3 0FFH MOV R4 04H 超声波脉冲个数控制 为赋值的一半 SETB PX0 SETB ET0 SETB EA CLR 00H SETB TR0 开启测距定时器 START1 LCALL DISPLAY JNB 00H START1 收到反射信号时标志位为 1 CLR EA LCALL WORK 计算距离子程序 SETB EA CLR 00H SETB TR0 重新开启测距定时器 MOV R2 64H 测量间隔控制 约 4 100 400ms LOOP LCALL DISPLAY DJNZ R2 LOOP SJMP START1 3 33 3 超声波发射和接收子程序超声波发射和接收子程序 超声波发生子程序的作用是通过 P1 0 端口发送 2 个左右的超声波信号频率约 40KHz 的方波 脉冲宽度为 12us 左右 同时把计数器 T0 打开进行计时 超声波测 距器主程序利用外中断 0 检测返回超声波信号 一旦接收到返回超声波信号 INT0 引脚出现低电平 立即进入中断程序 进入该中断后就立即关闭计时器 T0 停止计 时 并将测距成功标志字赋值 1 如果当计时器溢出时还未检测到超声波返回信号 则定时器 T0 溢出中断将外中断 0 关闭 并将测距成功标志字赋值 2 以表示此次测距 不成功 超声波测距系统的软件设计流程如图 3 3 所示 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 12 外部中断子程序 开始 单片机初始化 定时中断子程序 有回波吗 N Y a 主程序流程图 发送超声波 定时中断入口 定时器初始化 三方向均发射 完否 N Y 停止发射 返回 b 定时中断服务子程序 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 13 读取时间值 外部中断入口 关外部中断 开外部中断 返回 计算距离 结果输出 c 外部中断服务子程序 图 3 3 超声波测距系统的软件设计流程 中断程序如下 T0 中断 65ms 中断一次 INTT0 CLR EA CLR TR0 MOV TH0 00H MOV TL0 00H SETB ET1 SETB EA SETB TR0 启动计时器 T0 用以计算超声波来回时间 SETB TR1 开启发超声波用定时器 T1 OUT RETI T1 中断 发超声波用 INTT1 CPL VOUT DJNZ R4 RETIOUT CLR TR1 超声波发送完毕 关 T1 CLR ET1 MOV R4 04H SETB EX0 开启接收回波中断 RETIOUT RETI 外中断 0 收到回波时进入 PINT0 CLR TR0 关计数器 CLR TR1 CLR ET1 CLR EA CLR EX0 MOV 44H TL0 将计数值移入处理单元 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 14 MOV 45H TH0 SETB 00H 接收成功标志 RETI 延时程序如下 DL1MS MOV R6 14H DL1 MOV R7 19H DL2 DJNZ R6 DL2 DJNZ R6 DL1 RET 3 43 4 显示子程序显示子程序 显示程序如下 40H 为最高位 43H 为最低位 先扫描高位 DISPLAY MOV R1 40H MOV R5 0F7H PLAY MOV A R5 MOV P0 0FFH MOV P2 A MOV A R1 MOV DPTR TAB MOVC A A DPTR MOV P0 A LCALL DL1MS INC R1 MOV A R5 JNB ACC 0 ENDOUT RR A MOV R5 A AJMP PLAY ENDOUT MOV P2 0FFH MOV P0 0FFH RET TAB DB 0C0H 0F9H 0A4H 0B0H 99H 92H 82H 0F8H 80H 90H 0FFH 88H 0BFH 共阳数码管 0 1 2 3 4 5 6 7 8 9 不亮 3 53 5 超声波测距控制源程序超声波测距控制源程序 数理与信息工程学院 单片机原理及应用 期末课程设计 基于单片机超声波测距系统的设计 15 以下是用汇编语言编写的超声波测距控制源程序 采用 AT89S51 12MHz 晶振 显示缓冲单元在 40H 43H 使用内存 44H 45H 46H 用于计算距离 20H 用于标志 VOUT EQU P1 0 脉冲输出端口 中断入口程序 ORG 0000H LJMP START ORG 0003H LJMP PINT0 ORG 000BH LJMP INTT0 ORG 0013H RETI ORG 001BH LJMP INTT1 ORG 0023H RETI ORG 002BH RETI 结结 束束 语语 以前以为只有雷达才能够远距离测量距离 对测距仪器的认识也是知之甚少 在这次实验中 我收集了很多有关测距的知识 也从中学到了很多 包括有哪些常 用的测距方式 它们各自的工作原理是什么 它们又存在哪些优势和弱点等等 在系统设计过程中 每一个步 我都做得很小心 什么时候是用几号字体 公 式的输入格式应该如何 图表的应该放在哪个更合适的位置以及图表的标注应该如 何把握 第一次 我真正体会到了什么是标准的规范化 而在这个过程中 我也 一直朝着这个规范化的目标不断努力 并且努力做得更好 经过这次设计 可以说 对系统设计的整个流程有了比较深刻的认识 从不知 道 到慢慢了解 再到一点点深入认

温馨提示

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

评论

0/150

提交评论