

已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科自主创新设计本科自主创新设计 题目题目: : 基于基于 msp430_launchpadmsp430_launchpad 超声波测距系统超声波测距系统 姓姓 名名 学学 院院 电子工程学院电子工程学院 专专 业业 电子信息科学与技术电子信息科学与技术 班班 级级 2013211202 学学 号号 2013210849 班内序号班内序号 指导教师指导教师 2015 年年 5 月月 目录 第第 1 1 章章 绪论绪论.3 1.1 项目简介.3 1.2 项目功能目标.3 第第 2 2 章章 超声波测距原理超声波测距原理.3 2.1 超声波简介.3 2.2 超声波测距原理.4 第第 3 章章 方案论证方案论证.4 3.1 设计思路.4 3.2 硬件系统结构设计.4 第第 4 章章 主要元件介绍主要元件介绍.5 4.1 单片机 msp430 launchpad m430g25535 4.2 超声波传感器 hc-sr046 4.3 5110lcd 液晶显示屏6 第第 5 章章 软件设计软件设计.7 5.1 主程序流程.7 5.2 子程序设计.8 5.2.1 超声波发送子程序及超声波接收中断子程序声波发送子程序及超声波接收中断子程序8 5.2.2 距离计算子程序8 5.2.3 液晶显示程序9 第第 6 章章 系统调试及误差分析系统调试及误差分析.10 6.1 系统焊接.10 6.2 误差及特性分析.10 附录一:主要程序附录一:主要程序.12 第 1 章 绪论 1.1 项目简介 本设计介绍了基于单片机控制的超声测距仪的原理:由 msp430 单片机控制定时器 产生超声波脉冲并计时,计算超声波自发射至接收的往返时间,从而得到实测距离。 用四位 lcd 液晶屏显示距离。整个硬件电路由超声波发射模块、超声波接收模块、单 片机控制模块、显示模块组成。在此基础上设计了系统的总体方案,最后通过硬件和 软件实现了各个功能模块。相关部分附有硬件电路图、程序流程图,给出了系统构成、 电路原理及程序设计。此系统具有易控制、可读性强和流程清晰等优点。但稳定性有 待提高,后续有待实现显示数据实时刷新的功能 1.2 项目功能目标 采用单片机作为主控制器,可实现低成本、高精度、微型化测距系统。实现 50cm- 300cm 的基本指标的障碍物距离测试,能够实现障碍物距离的实时显示,精确到厘米。 当被测距离小于预设报警值是,红灯亮起,提示距离过近。在测距系统中加入蜂鸣器 后可以实现预设的距离报警功能,进一步改进成为智能车倒车报警系统。 第 2 章 超声波测距原理 2.1 超声波简介 我们知道,当物体振动时会发出声音。科学家们将每秒钟振动的次数称为声音的 频率,它的单位是赫兹。我们人类耳朵能听到的声波频率为 2020000 赫兹。当声波 的振动频率大于 20000 赫兹或小于 20 赫兹时,我们便听不见了。因此,我们把频率高 于 20000 赫兹的声波称为“超声波” 。通常用于医学诊断的超声波频率为 15 兆赫。 超声波具有方向性好,穿透能力强,易于获得较集中的声能,在水中传播距离远等特 点。可用于测距,测速,清洗,焊接,碎石等。在医学,军事,工业,农业上有明显 的作用。 2.2 超声波测距原理 超声波是利用反射的原理测量距离的,被测距离一端为超声波传感器,另一端必 须有能反射超声波的物体。测量距离时,将超声波传感器对准反射物发射超声波,并 开始计时,超声波在空气中传播到达障碍物后被反射回来,传感器接收到反射脉冲后 立即停止计时,然后根据超声波的传播速度和计时时间就能计算出两端的距离。测量 距离 d 为 ctd 2 1 式中 c超声波的传播速度; t 2 1 超声波发射到接收所需时间的一半,也就是单程传播时间。 第 3 章 方案论证 3.1 设计思路 超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后 遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际 距离。由于超声波易于定向发射、方向性好、强度易控制、与被测量物体不需要直接 接触的优点,超声波测距仪可应用于倒车提醒、建筑工地、工业现场等的距离测量。 本实验设计并制作了了一款基于单片机的低成本、高精度、微型化的超声波测距仪。 采用单片机作为主控制器,控制发射触发脉冲的开始时间及脉宽,响应回波时刻并测 量、计数发射至往返的时间差。控制产生超声波信号,通过输出引脚输入至驱动器, 经驱动器驱动后推动生超声波;一旦探头接到回波,则其输出引脚的电平将从“1”变 为“0” ,这种电平变化可以作为单片机对接收探头的接收情况进行实时监控。同时还 控制显示电路,实现数字显示。 3.2 硬件系统结构设计 超声波测距仪系统结构如下图所示。它主要由单片机、超声波发射及接收模块、 lcd 显示电路及电源电路组成。系统主要功能包括: 1)超声波的发射、接收,并根据计时时间计算测量距离; 2)led 显示器显示距离; 3)当系统运行不正常时,用复位电路复位 第 4 章 主要元件介绍 4.1 单片机 msp430 launchpad m430g2553 msp430 launchpad 是一款易于使用的闪存编程器和调试工具,它提供了在 msp430 超值系列器件上进行开发所需的一切内容。它提供了具有集成仿真功能的 14/20 引脚 dip 插座目标板,可通过 spy bi-wire(2 线 jtag)协议对系统内置的 msp430 超值系列器件进行快速编程和调 试。由于 msp430 闪存的功耗极低,因此 无需外部电源即可在数秒内擦除闪存并对 其进行编程。launchpad 将 msp430 器件 与 code composer studio 版本 4 或 iar 嵌入式工作平台等集成软件环境相连接。 msp430 超值系列器件上的这些 ide 是免 费且非受限的软件。launchpad 支持所有 采用 14 或 20 引脚 dip 封装(ti 封装 代码:n)的 msp430g2xx 闪存器件。 launchpad 还采用用于定制项目和应用的板载可编程 led 和按钮!10 引脚 pcb 连 接器还可用于连接 launchpad 和附加器件。实现在采用 14 或 20 引脚 dip (n) 封装 的所有 msp430 超值系列器件上的开发。launchpad 的集成仿真器接口将基于闪存的 msp430 超值系列器件与 pc 相连接,可通过 usb 实现实时系统内编程和调试。 4.2 超声波传感器 hc-sr04 接线方式,vcc、trig(控制端) 、 echo(接收端) 、gnd 模块工作原理: (1)采用 io 触发测距,给至少 10us 的高电平信号; (2)模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回; (3)有信号返回,通过 io 输出一高电平,高电平持续的时间就是 超声波从发射到返回的时间测试距离=(高电平时间*声速(340m/s)/2; 4.3 5110lcd 液晶显示屏 nokia 公司生产的可用于其 5110、6150,6100 等系列移动电话的液晶显示模块。 该产品除应用于移动电话外,也可广泛应用于 各类便携式设备的显示系统。nokia5110 是一款 经典机型,可能由于经典的缘故,旧机器很多, 所以很多电子工程师就把旧机器的屏幕拆下来, 自己驱动 nokia5110,用于开发的设备显示 1) 性价比高, nokia5110 可以显示 15 个 汉字,30 个字符。 2) 接口简单,仅四根 i/o 线即可驱动, lcd1602 需 11 根 i/o 线,lcd12864 需 12 根。 3) 速度快,是 lcd12864 的 20 倍,是 lcd1602 的 40 倍。 4) nokia5110 工作电压 3.3v,正常显示时工作电流 200ua 以下,具有掉电模式, 适合电池供电的便携式移动设备 第 5 章 软件设计 5.1 主程序流程 系统上电后,首先系统初始化,定时器开始定时,控制超声波传感器发出超声波, 同时使定时器开始定时。当出发管脚为低电平时接收到回波,立即使定时器停止工作, 保存定时器的计数值。然后根据传输时间计算距离计算出距离后调用距离显示子程序, lcd 显示距离。 n 开始 系统初始化 时钟配置 发射超声波,计时器打开 接收到反射信号 定时器停止,保存定时值 根据时间计算距离 显示测量距离 5.2 子程序设计 5.2.1 超声波发送子程序及超声波接收中断子程序声波发送子程序及超声波接收中断子程序 超声波发生子程序的作用是通过 p2.2 端口发送超声波脉冲信号(频率约 40khz 的 方波) ,脉冲宽度为 12s 左右,同时把计数器 t1 打开进行计时。 void send_15us()/超声波发送 15us 的高电平 p2out delay_us(20); p2out|=bit0; delay_us(20); p2out while(1) send_15us(); delay(100); 5.2.2 距离计算子程序 当前温度和超声波往返时间均测量出来后,用 c 语言根据公式计算距离来编程是 比较简单的算法。 time1 = ta1ccr0; if (time1 time0) time1 = time1 - time0; else time1 = time1 + (65535 - time0); distance0 = time1*170; distance_test = (distance0/10000)-7; ge = distance_test % 10 + 48; shi = (distance_test /10) % 10 + 48; bai = (distance_test /100) % 10 + 48; qian = (distance_test /1000) % 10 + 48; 5.2.3 液晶显示程序 #define lcd5110_ce_h p1out |= 0x80 /5110 片选 p1.7 置位 1 #define lcd5110_ce_l p1out /延时 ms 函数 extern void lcd5110_set_xy(char x, char y); /写坐标函数 extern void lcd5110_init(void); /屏幕初始化 extern void lcd5110_clear(unsigned char l); /清除指定行 extern void lcd5110_clear_all(void); /清除全屏 extern void write_char(char c); /写一个 ascii 字符 extern void write_string(const char *p); /写字符串 第 6 章 系统调试及误差分析 6.1 系统焊接 以万用板做载板,将 lcd 显示模块,单片机控制模块以及超声波发射接收模块组 合在一起。用杜邦线连接各模块的管脚。 6.2 误差及特性分析 根据超声波的特性,距离测量时必须满足条件: 被测目标必须垂直于超声波测距仪。 被测目标表面必须平坦。 测量时在超声波测距仪周围没有其他可反射超声波的物体。因此在测量过程中 稍不小心就会接收不到超声波,而导致没有测量结果。 由于超声波的往返时间由单片机 msp430 的定时器 t1 来记,定时器 t1 工作在方 式 1,其最大定时时间为 65.536ms,可得出最大的测量距离在 10m 以内。且因为发射 功率有限,测距仪也无法测量 10m 外的物体。在实际的测试中 3m 之内有较高的测量 精度。由于程序设计的问题,在移动测距装置的过程中,lcd 液晶屏上显示的数据无 法实时刷新,需要在测试时按下复位按键实现距离数据的刷新。 附录一:主要程序附录一:主要程序 #include #include“header.h“ char flag_time = 0; long time0 = 0, time1 = 0; long distance_test = 0; long distance0 = 0; char ge,shi,bai,qian; /时钟初始化 void clk_init(void) if (calbc1_1mhz =0xff | caldco_1mhz = 0xff) while(1); bcsctl1 = calbc1_1mhz; dcoctl = caldco_1mhz; /端口初始化 void gpio_init(void) p1dir |= bit4+bit5+bit6+bit7; p2dir |= bit0+bit1; p2dir /p2.3 作为捕获输入 p2sel |= bit3; /主功能模块触发 p2dir |= bit2; /p2.2 作为触发端,设为输出 p2out /p2.2 输出低电平 p1ren |=bit3 ; /启用 p1.3 内部上下拉电阻 p1out |=bit3 ; /设置为上拉电阻 p1ies |bit3; /p1.3 为下降沿触发中断 p1ie |bit3; /p1.3 中断允许 /定时器 time1_a3 初始化函数 void time1_a3_init(void) ta1ctl |= tassel1 + mc_2; /smclk 作为时钟源,连续计数模式 ta1cctl0 |= cm_3 + ccis_1 + scs + cap + ccie; /上升沿与下降沿都捕获,输入源为 cci0b,同步捕获模式,使能中断 ta1ccr0=0; const char table1=“distance:“; const char table2=“cm(+-)1cm“; /主函数 int main(void) wdtctl = wdtpw + wdthold; /关闭看门狗定时器 clk_init(); gpio_init(); time1_a3_init(); lcd5110_init(); lcd5110_clear_all(); lcd5110_set_xy(0, 1); write_string(table1); lcd5110_bl_h; _eint(); /中断使能 while(1) lpm0; _nop(); /定时器 timer1_a ccr0 中断服务函数 #pr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 换房操作流程培训
- 视觉SLAM中的关键帧匹配增强
- 创意美术精美课件
- 学校中层政治素养提升培训
- 纺织工艺过程的优化和模拟
- 口罩防疫知识培训
- 2025年中考物理答题技巧与模板《特殊方法测量密度》含答案解析
- 培训讲师的专业知识要求
- 党建问题面试题目及答案
- 培训行业知识书籍排行榜课件
- 黄冈初一上数学试卷
- 2025年中国花盆人参行业市场发展前景及发展趋势与投资战略研究报告
- QGDW11337-2023输变电工程工程量清单计价规范
- 航天飞行器模型设计教学
- 边坡稳定性分析评价报告
- 记账实操-节能环保企业的全盘账务处理实例
- 居间合同协议书范本txt下载
- 卵巢癌类器官规范化建立及临床转化初步应用专家共识(2025年版)解读
- 2024-2025学年三年级英语下册期末试卷(PEP版)(含答案含听力原文无音频)
- 解剖学基础课程全册教案
- 2024-2025学年江苏省南京市联合体九年级上学期期中化学试题及答案
评论
0/150
提交评论