基于单片机的超生波测距系统课程设计正文--学位论文.doc
《基于单片机的超生波测距系统课程设计正文--学位论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的超生波测距系统课程设计正文--学位论文.doc(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 JIANGXINORMALUNIVERSITY传感器原理课程设计题目: 基于超声波传感器的测距系统院系名称:物理与通信电子学院学生姓名: 黄路瑶 学生学号: 1208063015 专 业: 电子信息工程 任课老师: 刘刚 完成时间: 2015年6月 摘要本文主要介绍了基于超声波传感器的测距系统的工作原理、硬件电路的设计和软件设计。该测距系统由单片机最小系统模块、温度采集模块、超声波测距模块,LCD显示模块组成。能够完成距离和温度的测量、显示等功能。关键词:超声波测距,单片机最小系统,温度采集摘要I1引言22 设计要求23 方案论证23.1 方案论证与比较33.2 单片机最小系统模块的方案33
2、.3温度采集模块的方案43.4超声波测距模块的方案43.5 显示模块的方案45 系统设计55.1单片机最小系统模块的设计55.1.1复位电路的设计55.1.2 时钟电路设计65.1.3单片机的I/O口的分配65.2 LCD1602显示模块的设计75.2.1 1602接口信号说明85.2.2 1602操作时序85.3 DS18B20温度采集模块的设计95.3.1 DS18B20的分辨率105.3.2 DS18B20工作时序图105.4超声波测距模块的设计116 软件设计126.1 程序流程图136.1.1 主程序流程图136.1.2 外部中断0流程图146.2子程序设计146.2.1温度采集模块
3、子程序146.2.2 LCD显示子程序167 误差分析187.1 温度187.2 障碍物表面材料187.3 超声波模块探头距离188总结18参考文献19附录一:源程序20附录二:实物图2601引言近年来,随着电子测量技术的发展,运用超声波作出精确测量已成可能。由于的经济发展,电子测量技术应用也越来越广泛,而超声波测量精确高,成本低,性能稳定则备受青睐。由于超声测距是一种非接触检测技术,不受光线、被测对象颜色等的影响,较其它仪器更卫生,更耐潮湿、粉尘、高温、腐蚀气体等恶劣环境,具有少维护、不污染、高可靠、长寿命等特点。因此可广泛应用于纸业、矿业、电厂、化工业、水处理厂、污水处理厂、农业用水、环保
4、检测、食品(酒业、饮料业、添加剂、食用油、奶制品)、防汛、水文、明渠、空间定位、公路限高等行业中。可在不同环境中进行距离准确度在线标定,可直接用于水、酒、糖、饮料等液位控制,可进行差值设定,直接显示各种液位罐的液位、料位高度。利用超声波检测往往比较迅速、方便、计算简单、易于实现实时控制,由于超声波测距系统具有以上的这些优点,因此在汽车倒车雷达的研制方面也得到了广泛的应用。2 设计要求设计并制作一个基于超声波传感器的测距系统,基本要求如下:测量范围为0.2-1m;测量精度为2mm;并能实时显示。3 方案论证 根据本题设计要求,确定了本系统的原理框图如图3-1所示。单片机最小系统模块:触发、中断接
5、收、距离计算超声波测距模块 Lcd显示模块温度采集模块 图3-1 原理框图3.1 方案论证与比较 根据题目的要求,我提出了以下的两种系统设计方案供选择:方案1:由单片机编程产生40kHz的方波,由IO口输出,再经过放大电路,驱动超声波发射探头发射超声波。发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的检波放大、积分整形及一系列处理,送至单片机。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。方案2:由单片机控制集成超声波测距模块HC-SR04,通过用一IO口发一个10us以上的高电平给集成模块控制口,就可以在接收
6、口等待高电平输出,一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,并由单片机实时检测。单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。由于超声波也是一种声波,其声速c与温度有关,所以温度的影响不能忽略不计,本方案中对声速c还添加了温度补偿。通过上述两种方案的比较,由于集成超声波测距模块HC-SR04提供2cm至400cm的非接触式距离感测功能,测距精度可达3mm,模块自身包括超声波发射器、接收器与控制电路,且编程和制作相比方案一容易许多。因此本超声波测距系统的设计采用方案2。3.2 单片机最小系统模块的方案方案1:采用PI
7、C单片机。PIC单片机的各个型号的兼容性强,功能全,型号多,抗干扰能力强。缺点:PIC单片机价格贵,烧写器较贵,烧写程序比较麻烦。方案2:采用MCS-51单片机。MCS-51系列单片机是8位增强型。51单片机具有功能强,体积小,可靠性好和价格便宜的优点,并且编程较为容易,程序的烧写也较为简单。综合上面两个方案以及本人日常学习到的单片机,选择方案二作为本设计的核心处理模块。3.3温度采集模块的方案采用温度传感器DS18B20。DS18B20具有体积小、质量轻、精密度高、全数字化、性能稳定等优点。它的测量范围在-50至+125,在-10至+85范围内精度为0.5,当电源电压在5-10V之间,稳定度
8、为1时,其各方面特性都满足了本系统的设计要求。此外DS18B20可直接将温度转化成串行数字信号供处理器处理,可以简化硬件电路和提高可靠性。3.4超声波测距模块的方案采用HC-SR04超声波模块。本模块性能稳定,测度距离精确,模块高精度,盲区小的优点。本模块使用方法简单,一个控制口发一个10US以上的高电平,就可以在接收口等待高电平输出.一有输出就可以开定时器计时,当此口变为低电平时就可以读定时器的值,此时就为此次测距的时间,这样就可算出距离。3.5 显示模块的方案方案一:选用数码管显示,用普通的数码管显示简单的数字、字母,数码管分时显示距离和温度。方案二:选用液晶显示,显示的内容更加的丰富。根
9、据所学知识与方案显示内容的设定,我选择了方案二。4 工作原理 测距原理如图4-1所示:超声波发射探头 s h d 测量目标 超声波接收探头图4-1被测距离。式中:s为超声波传播距离的一半,h为发射探头和接受探头之间的距离。由于s远大于h,因此可近似认为d=s,则d=s=ct2,t为发射超声波与接收超声波的时间间隔,c为超声波在空气中的传播速度。在空气中,常温下超声波的传播速度是334ms,但其传播速度c易受空气中温度的影响,声速与温度关系如表4-1所示,由此可修正超声波传播速度为 表4-1 声速与温度关系表温度()-30-20-10 0 10 20 30 40声速(m/s)313319325
10、332 338 344 350 356可见,只要测得超声波发射和接收回波的时间差t以及环境温度T,就能得到较为精确的距离。测温是通过DS18B20来实现,通过程序将温度读出并送到LCD显示,并将此温度作为测距的温度补偿。5 系统设计 本系统选用的模块包括:单片机最小系统模块、温度采集模块、超声波测距模块、LCD1602显示模块。5.1单片机最小系统模块的设计 此次的课程设计的核心部分是单片机的控制,本次选用的是ATMEL公司生产的芯片STC89C52,主要是它的价格便宜,而且在学习中接触较多比较熟悉,容易获得。 5.1.1复位电路的设计复位使单片机处于起始状态,并从该起始状态开始运行。STC8
11、9C52的RST引脚为复位端,该引脚连续保持2个机器周期(24个时钟振动周期)以上高电平,就可以使单片机复位。单片机的外部复位有上电复位和按键电平复位。由于单片机运行过程中,其本身的干扰或外界干扰会导致出错,此时我们可按复位键重新开始运行。考虑到本系统的运行和调试,复位电路采用按键复位方式,如图5-1所示。 图5-1 复位电路5.1.2 时钟电路设计时钟电路是单片机的心脏,它控制着单片机的工作节奏。STC89C52内部有一个反相振荡放大器,XTAL1和XTAL2分别是该反向振荡放大器的输入端和输出端。本设计采用的晶振频率为12MHZ。51系列单片机还可使用外部时钟,在使用外部时钟时,外部时钟必
12、须从XTAL1输入,而XTAL2悬空。图5-2为晶振电路图5-2 晶振电路5.1.3单片机的I/O口的分配首先对LCD和单片机的连接分配I/O口,LCD的E,RW,RS端分别为P0.0-P0.2,然后再对HC-SR04进行I/O口分配,HC-SR04的触发控制信号输入口Trig为P1.4,回响信号输出口Echo为P3.2;DS18B20温度传感器是单总线的结构,和单片机的通讯只需要一个I/O口,可以设置P1.3为DS18B20温度传感器的总线和单片机的通讯接口。5.2 LCD1602显示模块的设计在本设计中采用LCD 1602来充当显示的作用,对LCD模块的电路的设计得先了解LCD的各个引脚然
13、后再设置其各个引脚和单片机连接的的I/O口。LCD1602液晶显示模块的读写操作,屏幕和光标的操作都是通过指令编程来实现的。1602液晶模块内部的控制器共有11条控制指令,如表5-1所示:表5-1 LCD1602液晶模块内部的控制器共有11条控制指令序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志
14、或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容 根据LCD1602的引脚定义和资料设计了测距系统的显示模块,电路图如下图5-3图5-35.2.1 1602接口信号说明1602接口信号说明如表5-2所示表5-2 1602接口说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据口2VDD电源正极10D3数据口3VO液晶显示对比度调节端11D4数据口4RS数据/命令选择端12D5数据口5R/W读写选择端13D6数据口6E使能端14D7数据口7D0数据口8D1数据口5.2.2 1602操作时序1602的操作时序图(
15、见图5-4)图5-4 1602操作时序分析时序图可知1602液晶的流程如下(1) 通过RS确定是写数据还是写命令。写命令包括液晶的光标显示/不显示、光标闪烁/不闪烁、需不需要移动屏幕、在液晶什么位置显示等。写数据是指要显示什么内容。(2) 读/写控制端设置为写模式,即低电平。(3) 将数据或命令送至数据线。(4) 给E一个高脉冲将数据送入液晶控制器,完成写操作。5.3 DS18B20温度采集模块的设计DS18B20的管脚排列如图5-5所示,DQ为数字信号输入/输出端;GND 为电源地;VDD为外接供电电源输人端。本温度控制系统采用外接供电方式,电路图如下图5-6所示图5-5 DS18B20管脚
16、图图5-6 DS18B20电路图5.3.1 DS18B20的分辨率DS18B20温度传感器可完成对温度的测量,温度分辨率的设定能够影响到温度传感器的转换时间和转换的精确度。温度的分辨率设置如表5-3所示。表5-3:温度分辨率设置表R1R0分辨率温度最大转换时间009位93.75ms0110位187.5ms1011位375ms1112位750ms由于本系统的主要误差是温度影响声速,故对温度采集的精度要求较高,所以选择DS18B20的分辨率位12位,在12位分辨率的时候的温度采集精度是0.0625度,满足系统精度的要求,所以R1和R0的设置分别为R1=1,R0=1。5.3.2 DS18B20工作时
17、序图(1) 初始化(时序图见5-7)图5-7初始化时序(2)写数据(时序图见图5-8)图5-8写数据时序(3) 读数据(时序图见图5-9)图5-9读数据时序5.4超声波测距模块的设计超声波测距测距模块采用HC-SR04模块,其芯片如图5-10所示:图5-10HR-SR04超声波集成模块工作原理采用的是I/O触发测距,给至少10us的高电平信号。另外,此模块可以自动发送8个40kHz的方波脉冲,并能够自动检测是否有信号返回,如果检测到有信号返回则通过I/O口输出低电平,高电平的持续时间就是超声波从发射到返回所用的时间,则所测量的距离=(高电平时间声速)/2,时序图如图5-11。图5-11此模块不
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 超生 测距 系统 课程设计 正文 学位 论文
限制150内