基于51单片机的超声波测距系统设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 设计任务
本文采用超声波传感器,IAP15 单片机以及 LCD 显示模块设计了一种超声波测距显示 器,可以实现测量物体到仪器距离以及显示等功能。是一种结构简单、性能稳定、使用 方便、价格低廉的超声波距离测量器,具有一定的实用价值。
2 设计思路
2.1 超声波测距
2.1.1 超声波
超声波是指频率在 20kHz 以上的声波,它属于机械波的范畴。近年来,随着电子测 量技术的发展,运用超声波作出精确测量已成可能。随着经济发展,电子测量技术应用 越来越广泛,而超声波测量精确高,成本低,性能稳定则备受青睐。超声波也遵循一般 机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介 质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测 量中。
随着科技水平的不断提高,超声波测距技术被广泛应用于人们日常工作和生活之中。 一般的超声波测距仪可用于固定物位或液位的测量,适用于建筑物内部、液位高度的测 量等。超声在空气中测距在特殊环境下有较广泛的应用。利用超声波检测往往比较迅速、 方便、计算简单、易于实现实时控制,并且在测量精度方面能达到工业实用的指标要求, 因此为了使移动机器人能够自动躲避障碍物行走,就必须装备测距系统,以使其及时获 取距障碍物的位置信息(距离和方向)。因此超声波测距在移动机器人的研究上得到了广 泛的应用。同时由于超声波测距系统具有以上的这些优点,因此在汽车倒车雷达的研制 方面也得到了广泛的应用。
6
图 2-8 时钟电路
2.4.3 复位电路
按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST 也被拉 到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。如图 2-9:
图 2-9 复位电路
2.4 系统整体设计
系统主要由三部分组成:单片机,超声波测距模块和 LCD1602 显示屏构成。单片机 在控制中作为控制器,用于对超声波模块的控制和计时,显示电路主要实时显示测量数 值。系统框图如图 2-10 所示:
超声波测距程序见附录。
5.2 程序流程图
主程序流程图如图 5-1 所示:
开始
系统初始化
发射超声波脉冲
等待反射超声波
计算距离
显示结果 0.5s
图 5-1 主程序流程图
10
测距程序流程图如图 5-2 所示:
图 5-2 测距程序流程图
11
6 设计感想
在本次实训中,我们首先第一周进行了 FPGA 的学习,由老师带领我们学习 FPGA 的 基本操作以及简单电路的设计,其中我认为最为主要的就是让我们认识到了 FPGA 的发展 现状以及发展前景。通过了解,我们知道了 FPGA 的方便,可以用语言来实现我们需要的 功能,进而自动实现其电路的设计,帮助我们简化了很多步骤,在这一周的学习当中, 我们首先学会了如何用语言来实现流水灯的设计,以及其基本的设计思路和方法还有 quartus2 软件的使用方法,继而学会了如何捕捉上升沿,这个很重要,对于以后我们工作 能够起很大的作用,最主要的是我们学到了很多电路设计方面的经验,这些是我们平常 在书本上学不到的,能够帮助我们在以后的工作当中节省很多的时间,创造了很多捷径, 能够提高我们的效率。
在第二周的时间里,我设计了超声波测距电路,首先当我拿到这个题目时,对于这 个课题只有一些初步的想法,通过理论课的学习对此有一个初始的印象,然后就是去找 资料,了解到了我们要设计的这个电路具体的实现原理、所需模块等方面,以及他的组 成部分,基于这个单片机,我们首先就要设计它的最小系统,然后我们还需要超声波传 感器。并且还需要对于测完的距离进行显示,这时就需要显示装置,这里我们用的是 LCD 1602A 显示屏。拿到这些装置以后,我并不会连接,所以就需要认识每个器件的引脚功能, 工作原理,引脚的定义以及接法等等,然后我们就要进行绘制原理图,然后生成 PCB 板, 在确认无误之后才能进行焊接,在焊接过程当中我们要注意的是焊点是否焊严,焊锡不 能过多,走线要符合布局,在开始这次的设计工程当中,没有安排好布局,把 LCD1602 的数据口和单片机引脚接反,这是一个失误的地方,在老师指导下纠正过来。我在焊接 完板子之后,要进行测试,首先测试显示装置,由于没有电位器,我们就要计算电阻, 使显示器能够正常工作,有适当的对比度,亮度等等,在我们进行测试的时候,换了好 几个电阻才调整到了适当的亮度。在各模块都工作正常后,我们要进行程序的编写,要 考虑很多方面,例如接口,语法,逻辑等有没有错误,这些是很必要的,然后进行调试, 更改程序等等。本次设计的超声波测距电路经过测试,误差在 1CM 左右是 0-2CM 里可以 接受的范围。
8
4 PCB 图
生成 PCB 如图 4-1、4-2 所示:
图 4-1 PCB 原理图
图 4-2 Pwk.baidu.comB 图
9
5 程序流程图
5.1 主程序设计
这次软件设计使用的软件是 Keil uVision4。Keil 4 集成开发环境是一个窗口化的软件 开发平台,它集成了功能强大的编辑器、工程管理器以及各种编译工具 Keil 4 使用简单、 功能强大,是设计者完成设计任务的重要保证,还能加速单片机应用程序的开发过程。
2.1.3 超声波测距模块 HC-SR04
HC-SR04 超声波测距模块可提供 2cm 至 400cm 的非接触式距离感测功能,测距精度 可达 3mm;模块自身包括超声波发射器、接收器与控制电路。实物如图 2-1 所示:
图 2-1 HC-SR04 模块实物图
HC-SR04 工作原理及说明: 1、给 Trig 触发控制信号 IO 端口至少 10us 的高电平信号。 2、模块自动发送 8 个 40khz 的方波,并自动检测是否有信号返回。 3、有信号返回时,Echo 回响信号输出端口输出一个高电平,高电平持续的时间就是 超声波从发射到返回的时间。 4、两次测距时间间隔最少在 60ms 以上,以防止发射信号对回响信号的影响。 如图 2-2 所示:
2.1.2 超声波测距原理
最常用的超声测距的方法是回声探测法,超声波发射器向某一方向发射超声波,在
发射时刻的同时计数器开始计时,超声波在空气中传播,途中碰到障碍物面阻挡就立即
反射回来,超声波接收器收到反射回的超声波就立即停止计时。超声波在空气中的传播
速度为 340m/s,根据计时器记录的时间 t,就可以计算出发射点距障碍物面的距离 s,即:
经过本次实训,使我收获良多,首先我们认识到了 FPGA 的发展现状,然后我们了解 了电路设计制作的基本流程,让我对这方面的工作有了一定的认识,帮助我们规划以后 的工作,这些是我们本次实训的最大收获。而且,在设计超声波测距电路过程中我查阅
12
了很多的资料,自主的学习了很多以前没有注意但是实际需要的东西,帮助我们完善了 知识储备,也在一定程度上增强了了我们实际的工作能力,这些是我们在课堂学习当中 没办法实践的方面,然而在以后我们走上工作岗位上这些却是很重要的东西,所以很感 谢这次生产实习让我学到了这么多的东西,做出了实物也使我很有成就感,对这方面的 内容有了更大的兴趣以及了解,能够在我走上工作岗位之前给自己提个醒,未雨绸缪, 提早做好工作之前的准备。
s=340t/2。
由于超声波也是一种声波,其声速 V 与温度有关。在使用时,如果传播
介质温度变化不大,则可近似认为超声波速度在传播的过程中是基本不变的。如果对测
1
距精度要求很高,则应通过温度补偿的方法对测量结果加以数值校正。声速确定后,只
要测得超声波往返的时间,即可求得距离。
距离计算公式:
������ = ������ = ������ × ������
22
(2-1)
其中 d 为被测物与测距器的距离,s 为声波的来回路程,c 为声波,t 为声波来回所用
的时间。其中声速 c 与温度有关。 ������ = 331.5 + 0.607T
(2-2)
如果要提高测距精确度,则必须考虑温度的影响,也可取室温简化电路设计,将温
度传感器作为扩展电路,在力所能及的情况下完成。
4
图 2-5 IAP 单片机实物图
图 2-6 IAP 单片机引脚图
5
2.4 单片机最小系统
对于一个单片机系统,能够工作的前提是具有最小系统模块,最小系统一般包括单 片机、晶振电路、复位电路。单片机的复位及晶振电路都是常见的接法,电源用一个按 键控制接通与断开,使得程序下载变得方便。电路如图 2-7 所示:
参考文献
[1] 张岩,张鑫.单片机原理及应用.机械工业出版社,2015.6. [2] 范立南.单片机原理及应用教程.北京大学出版社,2013.
[3] 楼然苗,李光飞.单片机课程设计指导.北京航空航天大学出版社,2012. [4] 俞国亮.MCS-51 单片机原理及应用.清华大学出版社,2008. [5] 瞿金辉,周蓉生.超声波测距系统的设计.中国仪器仪表,2007. 8. [6] 谭浩强.C 语言程序设计(第四版).清华大学出版社,2011. 11 [7] 周凯,赵望达,赵迪. 高精度超声波测距系统. 测试技术卷,2007
图 2-7 单片机最小系统
2.4.2 电源电路
此最小系统中的电源供电模块的电源可以通过计算机的 USB 口供给,也可使用外部稳定的 5V 电 源供电模块供给。
2.4.1 时钟电路
单片机晶振的作用是为系统提供基本的时钟信号。内部时钟电路的晶振频率一般选 择在 4MHZ~12MHZ 之间(本设计选用 12MHZ),外接两个谐振电容,该电容的典型值为 30pF。如图 2-8 所示:
超声波接收 超声波发送
单片机 控制器
LCD 显示
图 2-10 系统框图
7
3 原理图
根据前面对设计的各个相关模块的分别讲述,再结合单片机的引脚功能,从而得到 系统整体电路图,如图 3-1 所示:
图 3-1 原理图
在图 3-1 中,LCD1602 的 D0 到 D7 连接 10K 上拉排阻并外接到单片机的 P2.0 到 P2.7 端口,用于显示所测量距离,超声波 HC-SR04 的 trig 端、echo 端分别接在单片机的 P0.0、P3.2 这两个端口,利用单片机的计时器将时间计算出来。最后通过程序设计将计算 出的距离显示到 LCD1602 液晶显示屏上。
主程序首先是对系统环境初始化,设定定时器 T0 工作模式为 6 位定时计数器模式, 置位总中断允许位 EA 并给显示端口 P2 清 0。然后调用超声波发生子程序送出一个超声 波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约 0.1ms(这也就是超声波测距器会有一个最小测距离的原因)后,才打开外中断 0 接收返 回的超声波信号。由于采用的是 12MHz 的晶振,计算器每计一个数就是 1us,,当主程序 检测到接收成功的标志位后,将计数器 T0 中的数(即超声波来回所用的时间)按计算公 式计算,即可得被测物体与测距器之间的距离,设计时取声速为 340m/s。
2
图 2-2 HC-SR04 工作原理
2.2 LCD1602 显示屏
LCD1602 显示屏实物如图 2-3 所示:
图 2-3 LCD1602 显示屏
3
LCD1602 电路原理图如图 2-4 所示:
图 2-4 LCD1602 电路原理图
2.3 IAP 单片机
IAP15F2K61S2 单片机为增强型 8051CPU,具有 1 个单时钟/机器周期,其工作电压 为 4.2V~5.5V,速度比普通的 8051 快 8~12 倍;61K 字节片内 FLASH 程序存储器,片 内大容量 2048 字节的 SRAM,大容量的片内 EEPPOM,擦写次数在 10 万次以上;一共 有 8 道 10 位高速 ADC,速度高达 30 万次/s,3 路 PWM 还可当 3 路 DA 使用;共有 3 通 道比较单元,内部高可靠复位,8 级可选复位门槛电压,彻底省掉外部复位电路;内部高 精度 RC 时钟,内部时钟从 5MHz~35MHz 可选,相当于普通 8051 的 60MHz~420MHz; 两组高速异步串行通信端口,可以在 5 组管脚之间进行切换,分时复用可当 5 组串口使 用;各种接口扩展齐全,一根 USB 线实现系统供电、程序下载及通信功能。单片机实物 图及引脚图如图 2-5、图 2-6 所示:
相关文档
最新文档