汽车倒车防撞系统设计与实现.doc_第1页
汽车倒车防撞系统设计与实现.doc_第2页
汽车倒车防撞系统设计与实现.doc_第3页
汽车倒车防撞系统设计与实现.doc_第4页
汽车倒车防撞系统设计与实现.doc_第5页
免费预览已结束,剩余39页可下载查看

下载本文档

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

文档简介

XXXXXXX 学院 毕业设计 论文 毕业设计 论文 系系 所 所 电子工程系 专专 业 业 嵌入式系统工程 学生姓名 学生姓名 学生学号 学生学号 指导教师 指导教师 导师职称 导师职称 讲师 完成日期 完成日期 2013 年 5 月 2 日 论文题目论文题目 汽车倒车防撞系统设计与实现汽车倒车防撞系统设计与实现 Dalian Neusoft Institute of Information Technology 摘要 I 汽车倒车防撞系统设计与实现 摘 要 随着汽车的日益普及和停车场越来越拥挤 由于这些低速行驶的车辆与其它车辆 非常接近 而且驾驶员的视野也颇受限制 碰撞事故时有发生 在夜间时则更显突出 而本设计进行的汽车防撞设计可以在驾驶员对车尾与障碍物体的距离远近无法目测和 判断时利用单片机的实时控制和数据处理功能测量并显示汽车与障碍物之间的距离 将车辆行驶中被动防撞向主动预防的方向发展 体现了 以人为本 的驾驶理念 本系统采用 STC89C52 单片机作为主控制器 在智能循迹小车的基础上安装超声 波模块实现汽车倒车防撞系统设计 本设计主要由 STC89C52 单片机主控模块 TCRT5000 循迹模块 L298N 驱动模块 直流电机 小车底板 电源模块 超声波测 距模块等组成 主要完成自动循迹 无接触检测障碍物 防止小车碰撞等功能 关键词关键词 单片机 超声波传感器 智能循迹 Abstract II Design and Implementation of Vehicle Reversing Anti collision System Abstract Along with the increasing popularity of the automobile and car parks more crowded because of these low speed vehicles and other vehicles is very close and the driver s field of vision is pretty limited and collisions occur At night time it is even more prominent Design of automotive collision objects can car drivers and barriers of distance cannot be visually judged using single chip real time control and data processing functions to measure and display the distance between the car and obstacles Passive collision avoidance in vehicle driving the proactive direction reflecting the people oriented driving ideas The system uses STC89C52 as the primary controller intelligent traction trolley car reversing ultrasonic module installed on the basis of collision avoidance systems design Intelligent tracking cars mainly consists of STC89C52 single chip computer control module the TCRT5000 tracking module L298N driver module backplane power supply modules with DC motors trolley and other components Key words MCU ultrasonic sensor smart tracking 目录 III 目 录 摘 要 I ABSTRACT II 第 1 章 项目概述 1 1 1 项目背景 1 1 2 项目简介 2 1 3 应用范围 2 第 2 章 项目实施方案 4 2 1 概述 4 2 2 开发环境 4 2 3 硬件方案选择 4 2 3 1 硬件系统框图 4 2 3 2 单片机的选择 4 2 3 3 测距方案选择 6 2 4 硬件设计 7 2 4 1 单片机最小系统 7 2 4 2 循迹模块电路设计 8 2 4 3 超声波测距模块电路设计 9 2 4 4 驱动模块电路设计 14 2 5 软件设计 14 第 3 章 项目实施过程 17 3 1 硬件实现过程 17 3 2 软件实现过程 17 目录 IV 3 2 1 KEIL 集成开发环境介绍 17 3 2 2 主函数 19 3 2 3 超声波测距模块子程序 20 3 3 调试过程 21 3 3 1 硬件测试 21 3 3 2 软件调试 22 第 4 章 项目成果 23 4 1 硬件成果物 23 4 1 1 电路原理图 23 4 1 2 PCB 版图 25 4 1 3 实物图 27 4 2 软件成果物 27 第 5 章 结 论 28 参考文献 29 致 谢 30 附 录 31 1 第第 1 章章 项目概述项目概述 当前社会经济的不断发展和工业科学技术的不断提高 汽车已逐渐进入不少百姓 家 汽车使用数量的不断增加 从而由此导致的交通安全问题也非常严重 道路交通 压力增加 交通安全问题也是面临严峻挑战 在面临如此严峻的交通安全问题 许多 涉及安全问题的汽车辅助系统也纷纷现世 而本设计就是利用单片机知识 超声波传 感器知识等 进行汽车倒车防撞系统的设计 在汽车行驶时 这种装置可以在驾驶员 对车尾与障碍物体的距离远近无法目测和判断时进行测距 使驾驶员对距离有准确把 握 提前做出反应 增加了行车的安全性和可靠性 减少交通事故的发生 将车辆行 驶中被动防撞向主动预防的方向发展 体现了 以人为本 的驾驶理念 1 1 项目背景项目背景 我国社会经济的不断发展 人们对汽车这种交通工具的依赖性也越来越大 导致 了车辆的日益增加在给城市交通不断施加压力的同时 也引发了非常多行车的安全问 题 交通事故中由于没有把握好前后车辆的安全车距而导致的汽车相撞事故占有很大 的比例 如果驾驶员能提前知道障碍物的存在并且知道障碍物的距离 那么驾驶员就 能及时地采取措施 从而能避免事故的发生 在汽车高速行驶的过程中突发的紧急状 况是驾驶员很难即使反应并处理的 因为人对事情的处理都有一个反应时间 而在汽 车行驶过程中 这个反应时间往往决定着一个人的生死 因此能够识别前后车辆的距 离问题是防止交通事故发生的保证 与此同时 许多安全系统也应运而生 诸如为了 避免交通事故发生的主动安全系统和在发生事故时的防护安全的被动安全系统 而主 动安全系统对汽车交通事故的发生能起到避免的作用 所以 主动安全系统的研究更 为重要 而本设计的汽车倒车防撞系统就是主动安全系统 通过对汽车与障碍物之间 距离的自动避障使驾驶员对距离有准确把握避免汽车与障碍物之间的擦碰 本系统主 要为驾驶员 特别是货及公共汽车驾驶员服务 可有效地减少或避免些后视野不良的大型 汽车的如冷藏车 集装厢车 圾车 食品车 载货汽车 公共汽车等倒车交通事另外 还特别适于夜间辅助倒车 倒车入库及进入停场停车到位 甚至还能防止盗贼扒车 本 设计要求设计的自动避障系统能直接帮助驾驶员处理前后方车辆的情况 解除了驾驶 员行车时前后方车辆行驶所引起的困扰 减少驾驶员的驾驶压力和判断错误 使驾驶 员行车倒车更加安全方便 本设计将对提高交通安全起到重要作用 2 1 2 项目简介项目简介 本设计基于单片机实现汽车倒车防撞系统 将超声波测距和传感器联系在一起 利用单片机的实时控制和数据处理功能测量汽车与障碍物之间的距离 并在一定距离 时实现自动避障和倒车 这样驾驶员就能即使不看显示器和后车镜通仅通过也能实现 汽车的避障和倒库 本设计的设计简易 虽然精度不高 还不能测量过远的距离 但 规模小 外围电路简单 调试方便 成本低 器件更换容易 灵活性高 避免对汽车 整体的影响 为应用和普及创造了条件 而且能完全满足驾驶员泊车时的需要 可以 完全解除驾驶员在倒车过程中的顾虑和困扰 使驾驶员不用一直盯着显示器来观察车 距 大大提高泊车的安全 在夜间倒车 倒车入库及进入停场停车到位实现了方便简 洁化 汽车倒车防撞系统这种汽车安全辅助装置能大大减少汽车驾驶员在倒车的时候顾 虑和对距离判断的失误 从而能够避免倒车的安全问题的发生 故此装置对于提高交 通安全将起到重要的作用 所以 本课题所要求设计的基于单片机的车距语言提示器 将具有极大的现实意义和市场 1 3 应用范围应用范围 本汽车倒车防撞系统包含有单片机控制电路 超声波测距传感器等 装置将各部 件有机地结合起来 实现超声波测距及汽车自动避障倒车的功能 本设计和汽车倒车雷达系统有点类似 只不过是将倒车雷达系统靠蜂鸣器报警来 提醒驾驶员倒车升级为自动倒车防撞系统 倒车雷达系统中汽车离障碍物距离越近 蜂鸣器报警声越急 蜂鸣器报警虽然使驾驶员知道有障碍物的存在 但却不能确定汽 车车尾离障碍物有多远 所以 蜂鸣器报警对驾驶员帮助不是很大 之后一个质的飞 跃就是液晶屏显示的出现 特别是液晶显示开始出现动态显示系统 驾驶员就是只要 发动车辆 而且不用挂倒挡 液晶显示器上就会出现汽车图案以及汽车与周围的障碍 物的距离 液晶显示是动态显示 液晶显示器的外表美观 显示也很清晰 而且可以 直接粘贴在仪表盘上 安装也很方便 不过由于液晶显示的灵敏度比较高 而且它的 抗干扰能力也不是很强 所以误报的情况也较多 现在市面上的魔幻镜倒车雷达系统 属于比较先进的一款倒车雷达 结合了之前的产品优点 采用了仿生超声雷达技术 并用电脑控制 可全天准确地进行探测2 m以内的障碍物体 并用语音提示和距离显示 来提醒驾驶员 倒车雷达把后视镜 倒车雷达温度显示和车内的空气温度显示等多项 功能组合起来 并设计语音功能 其外形就如同一块倒车镜 可以不占用车内的空间 3 还可以直接安装在后视镜的位置上 而且它样式种类繁多 可以按照个人需求和车内 装饰选配 最新的一代倒车雷达是整合影音系统 还兼有影音系统 随着科学技术水平的迅速发展 相关电子技术也是飞跃前进 当然 汽车电子产 业也得到飞速发展 电子产业的飞速发展使得车载电子安全产品有很大的发展前景 倒车雷达当然是每辆车必备的电子安全产品 如今市面上的主流的汽车倒车雷达基本 都是以单片机芯片为控制核心的智能测距报警系统 这些的倒车雷达能够连续测距并 显示汽车与障碍物之间的距离 而且采用蜂鸣器的不同频率的鸣叫进行报警提示和距 离显示提示 从而能够尽量不占用驾驶员的视觉空间 此外 汽车电子系统的网络化 的发展还要求作为汽车行驶安全辅助系统的倒车雷达要具有通信功能 并能够把数据 发送到汽车总线上去 就目前市面上的产品来讲 目前的汽车倒车雷达主要是具备数码管或者液晶屏的 距离显示并且带有蜂鸣器的语音报警为主的汽车安全系统 这些系统主要采用的是以 单片机为控制核心的智能超声波测距传感器和蜂鸣器报警系统 这种汽车安全辅助系 统便宜耐用 而且达到了汽车电子系统网络化的发展需求 而本设计将原来的蜂鸣器 报警改为自动倒车防撞 将倒车雷达进一步升级 更加符合现代社会的高科技要求 4 第第 2 章章 项目实施方案项目实施方案 2 1 概述概述 采用超声波测距 防止小车碰撞障碍物是本设计的核心 本系统主要由单片机模 块电路 超声波发射电路 超声波接收电路 TCRT5000 循迹模块 L298N 驱动模块 直流电机 小车底板 电源模块等模块组成 测距模块是采用超声波传感器 之后选 择合适的单片机作为主控制器 2 2 开发环境开发环境 硬件环境 笔记本电脑 USB 转串口线 电源线 单片机系统板 小车模型 软件环境 Keil 编程软件 Altium Designer 电路绘制软件 Windows7 操作系统 2 3 硬件方案选择硬件方案选择 2 3 1 硬件系统框图硬件系统框图 系统由红外循迹模块 超声波测距模块 单片机最小系统 电机模块组成 硬件 系统框图如图 2 1 所示 红外循迹模块 单片机最小系统 电机模块 超声波测距模块 图 2 1 硬件系统框图 2 3 2 单片机的选择单片机的选择 一般在系统的设计当中 能否完成设计任务最重要的就在于系统的核心器件是否 选择合适 而单片机更是是系统控制的核心 所以对单片机的选择更是异常重要 如 果选择了一个合适的单片机不仅可以最大地简化系统的操作 而且其功能可能是最好 的 可靠性也比较高 对整个系统来说更方便 目前 市面上的单片机的种类繁多 并且他们在功能方面也是各自有各自的特点 在一般的情况下来讲 在选择单片机时 要需要考虑的几个方面有 1 单片机最基本性能参数指标 例如 执行一条指令的速度 程序存储器的容 量 I O 口的引脚数量等 2 单片机的某些增强的功能 3 单片机的存储介质 例如 对于程序存储器来说 最好选用的是 Flash 的存 储器 5 4 单片机的封装形式 封装的形式多种多样 例如 双列直插封装 PLCC 封 装及表面贴附等 5 单片机对工作的温度范围的要求 例如 在进行设计户外的产品时 就必须 要选用工业级的芯片 以达到温度范围的要求 6 单片机的功耗 例如 如果信号线取电只能提供几 mA 的电流 所以为了能 满足低功耗的要求这个时候选用 STC 的单片机是最合适的 7 单片机在市面上的销售渠道是否畅通 其价格是否便宜 8 单片机技术的支持网站如何 卖家提供的芯片资料是否足够完善 是否包含 了用户手册 设计方案举例 相关范例程序等 9 单片机的保密性是否很好 单片机的抗干扰的性能如何等 51 系列单片机它在指令系统 硬件结构和片内资源等方面与标准的 52 系列的单片 机可以完全的兼容 51 系列的单片机执行速率快 最高时钟频率为 90 MHz 功耗低 在系统 在应用可编程 不占用用户的资源 5 AT89S51 单片机具有以下几个特点 40 个引脚 8k Bytes Flash 的片内程序存储器 128 bytes 的随机存取数据存储器 32 个外部双向的 I O 口 5 个中断优先级的 2 层中 断嵌套中断 2 个 16 位可编程定时计数器 2 个全双工串行通信口 看门狗 WDT 电路 片内时钟振荡器 AT89S51 单片机与 AT89C51 单片机相比 外型管脚完全相 同 AT89C51 的 HEX 程序无须任何转换可直接在 AT89S51 运行 结果一样 AT89C52 比 AT89C51 新增了一些功能 支持在线编程和看们狗是其中主要特点 AT89C52 单片机的主要功能 与 MCS 51 单片机产品兼容 8K 字节在系统可编程 Flash 存储器 1000 次擦写周期 全静态操作 0Hz 33Hz 加密程序存储器 32 个可 编程 I O 口线 16 位定时器 计数器 八个中断源 全双工 UART 串行通道 低功耗空 闲和掉电模式 掉电后中断可唤醒 看门狗定时器系统 双数据指针 STC89C52 是一种低功耗 高性能 CMOS8 位微控制器 具有 8K 的系统可编程 Flash 存储器 使用 Atmel 公司高密度非易失性存储器技术制造 与 80C51 产品的指 令和引脚完全兼容 片上 Flash 允许程序存储器在系统可编程 亦适于常规编程器 在 单芯片上 拥有 8 位 CPU 和 8K 的系统可编程 Flash 在空闲模式下 CPU 暂停工作 而 RAM 定时计数器 串行口 外中断系统仍然可继续工作 掉电模式冻结振荡器而保 存 RAM 的数据 停止芯片的其它功能直到外中断激活或硬件复位 而且此芯片还含有 PDIP TQFP 和 PLCC 等三种封装形式 用来适应不同产品的需求 根据本系统设计 6 的实际要求 选择 AT89C52 单片机作为本设计的单片机使用 2 3 3 测距方案选择测距方案选择 对如何测量车距做了资料的搜集整理 当前已有超声波 毫米波雷达 激光 基 于图像处理的车距测量算法等技术被应用于车载系统以解决车辆对前方物体的测距问 题 而且就实现可行性而言初步选定了两种测量车距的方法 基于超声波测距原理和 基于图像处理的车距测量算法 1 基于图像处理的车距测量 1 运用双目视感系统来采集车辆前方实时图像 通过模板匹配的方式来对采集 到的图像进行车辆识别处理 在确认有车辆后运用视差原理的方法来进行车距计算 该算法运算的周期小于 30 ms 识别准确率高达 99 200 m 视距范围内距离检测误差 小于 1 m 主要分为三步 2 对前方车辆的识别 建立车辆背景模板数据库 收集与整理车辆背景图像作为模板 并事先在车载 系统的信号处理器中建立车辆背景模板数据库 3 判断前方车辆所处车道 计算前方车辆的行投影中心 当车载视感系统在主视场观测窗口内采用模hw 板寻找到匹配区域时 通过模板匹配区域计算前方车辆的行投影中心 计算方法是 对匹配区域作一根水平线相交于左 右边缘两个交点和 作两个交点连线 11 ii lr ii 的垂直平分线 则该垂直平分线与横坐标轴的交点即为前方车辆的行投影中心 P 4 车距测量 识别出前方与自己车辆所处车道一致后 利用双目视差测距原理检测当前车辆距 我车的距离 车距计算 利用外极线约束原理快速确定被匹配目标中心点在左右视图图像上的位置 所述外 极线约束 即外极线几何约束 就是指左视 或右视 图像上的任一点 在右视 或左视 图像上的对应点只可能位于一条特定的直线上 称为右外极线 或左外极线 2 基于超声波的测距方法 超声波测量距离的基本原理是利用超声波发射器不断发射出的 40kHz 超声波 遇到 障碍物后反射回反射波 超声波接收器将其接收到的反射波信号转变为电信号 因此 只要测得超声波的发射和接收回波的时间的差值 T 及现场环境温度 就可 以精确计算从出发点到障碍物之间的距离 这就是超声波测距仪的机理 7 根据对以上两种测距方案的比较 虽然能明显看出来基于图像处理的测距方案是 比较精确理想的选择 但是它的实现比较麻烦 而且汽车在行驶的过程中超声波传感 器测距时应具有较强的抗干扰能力和较短的响应时间 因此选用超声波测距原理并选 用超声波传感器作为此设计方案的传感器探头 2 4 硬件设计硬件设计 2 4 1 单片机最小系统单片机最小系统 STC89C52 是一款低功耗 高性能 CMOS8 位微控制器 具有 8K 系统可以编程 Flash 存储器 在单芯片上 拥有灵巧的 8 位 CPU 和在线系统可编程 Flash 使得 AT89C52 为众多嵌入式控制应用系统提供高灵活 超有效的解决方案 STC89C51 有 以下标准功能 8k 字节 Flash 256 字节 RAM 32 位 I O 口线 看门狗定时器 2 个数据指针 三个 16 位 定时器 计数器 一个 6 向量 2 级中断结构 全双工串行口 片内晶振和时钟电路 另外 STC89C52 可降至 0Hz 静态逻辑操作 支持 2 种软件可 选择节电模式 空闲模式下 CPU 停止工作 允许 RAM 定时器 计数器 串口 中 断继续工作 掉电保护方式下 RAM 内容被保存 振荡器被冻结 单片机一切工作停 止 直到下一个中断或硬件复位为止 单片机最小系统如图 2 2 所示 图 2 2 单片机最小系统 8 1 时钟电路 单片机的时钟产生有两种方法 内部时钟方式和外部时钟方式 系统里的时钟电路设计采用内部方式 利用芯片内部的振荡电路 AT89 单片机的 内部含有一个用来构成振荡器的高增益的反相放大器 引脚 XTAL1 和 XTAL2 依次是 这个放大器的输入端口和输出端 这个放大器和作为反馈元件的片外晶体谐振器一同 构筑成一个自激振荡器 外接晶体谐振器与电容 C1 C2 构成并联谐振电路 接在放 大器的反馈回路中 对外接电容的值虽然没有严格的要求 但电容的大小会影响震荡 器频率的高低 震荡器的稳定性 起振的快速性和温度的稳定性 此系统电路的晶体 振荡器的值为 12MHz 电容尽可能的选择陶瓷电容 电容值通常取 30PF 在焊接刷电 路板的时候 晶体振荡器和电容应安装得与单片机芯片靠近 以减少寄生电容 保证 震荡器能稳定可靠地工作 2 复位电路 复位电路是通过外部的复位电路来实现的 片内复位电路的复位引脚 RST 通过一 个触发器与复位电路相连 触发器用来抑制噪声 它的输出在每个机器周期中由复位 电路采样一次 复位电路通常采用上电自动复位和按钮复位两种方式 所谓上电复位 是指计算 机加电瞬间 要在 RST 引脚出现大于 10MS 的正脉冲 使单片机进入复位状态 按钮 复位是指用户按下 复位 按钮 使单片机进入复位状态 2 4 2 循迹模块电路设计循迹模块电路设计 此模块是使用红外线发射和接收管等分立元器件组成探头 并使用 LM339 电压比 较器作为核心器件构成中控电路 此系统具有的多种探测功能极大的满足各种自动化 智能化的小型系统的应用 4 路分别独立工作 工作时不受数量限制 中控板与探头分 开 安装位置不受限制模块高度 10 毫米 安全工作电压范围在 3 伏特至 6 伏特之间 4 路全开工作电流 30 毫安至 55 毫安之间 VCC GND 电源接线端 IN 1 4 OUT 探头与中控板连接端 OUT1 OUT2 OUT3 OUT4 对应输出端 LED1 LED2 LED3 LED4 对应输出指示 R1 R2 R3 R4 对应比较电压调节 输 出端为集电极开路 板载 5 1 千欧上拉电阻测试探头 移开探头前面的所有物体 且 探头不要指向阳光的方向 将探头板接上电源后用万用表测最输出端电压 此时的电 压应当在 1 伏特左右 用白纸挡在探头前 用万用表测输出端电压应当接近电源电压 测试中探板 将测试好的探头按板上所标示的接入输入端子 移开探头前面的所有物 9 体 且探头不要指向阳光的方向 将中探板接上电源后用万用表测输出端子 此时输 出端输出的电压应当接近电源电压 用白纸挡在探头前 万用表测输出端电压应当接 近 0 伏特 调整所在通道的电位器可以改变探测的距离 TCRT5000 循迹模块电路如 图 2 3 所示 图 2 3 TCRT5000 循迹模块 2 4 3 超声波测距模块电路设计超声波测距模块电路设计 超声波测距的基本原理是超声波发射器不断地发射出 40kHz 超声波 遇到障碍物 后反射回反射波 超声波接收器接收到反射波信号 并将其转变为电信号 结合各方 面的因素考虑 依据设计的要求 查阅相关数据资料 选用了 HC SR04 超声波集成模 块 此超声波模块的最大探测距离为 4m 盲区为 2cm 而且发射扩散角不大于 15 更有利于测距的准确性 而且 此模块的工作频率范围为 39kHz 41kHz 左右 完全 能在 40kHz 工作频率工作 由于超声波的发射和接收是分开发送和接收的 所以发射探头和接收探头必须在 同一条水平行直线上 这样才能准确地接收反射的回波 而由于测量的距离不同和发 射扩散角所引起的误差以及超声波信号在空气中传播的过程中的超声波衰减问题 发 射探头和接收探头距离不可以太远 而且还要避免发射探头对接收探头在接收信号时 产生的干扰 所以二者又不能靠得太近 根据对相关资料查阅 将两探头之间的距离 定在 5cm 8cm 最为合适 本设计所用的 HC SR04 模块的超声波探头之间的距离大约 在 6cm 左右 HR SR04 超声波集成模块是将超声波发射探头 超声波接收探头 CX20106A 芯片电路 74LS04 芯片放大电路集成到的一起的一个超声波集成模块 本 模块性能稳定 测度距离精确 模块高精度 盲区小 产品应用领域 机器人避障 物体测距 液位检测 公共安防 停车场检测 10 1 基本工作原理 1 采用I O口TRIG触发测距 给至少10us的高电平信号 2 模块自动发送8个40khz的方波 自动检测是否有信号返回 3 有信号返回 通过IO口ECHO输出一个高电平 高电平持续的时间就是超声 波从发射到返回的时间 测试距离 高电平时间 声速 340m s 2 本模块使用方法简单 一个控制口发出一个 10us 以上的高电平 就可以在接收口 等待高电平输出 一有输出就可以开定时器计时 当此口变为低电平时就可以读定时 器的值 此时就为此次测距的时间 就能够算出距离 这样不断的循环周期测 就可 以在不停地移动的过程中测量距离值了 但是 为防止发射信号对回收信号的影响 本超声波集成模块的测量周期最好定在 60ms 以上 所以本设计将测量周期定在 80ms 2 超声波模块实物图 HR SR04 超声波集成模块正面外观如图 3 6 所示 HR SR04 超声波实物图如图 2 4 图 2 5 图 2 6 所示 图 2 4 HR SR04 超声波集成模块正面外观图 11 图 2 5 HR SR04 超声波集成模块背面外观图 图 2 6 HR SR04 超声波集成模块实物图 VCC 供电为 5V 电源 GND 为地线 TRIG 触发控制信号输入 ECHO 回响信 号输出 1 电气参数表如表 2 1 所示 表 2 1 HR SR04 超声波模块电气参数 电气参数HC SR04超声波模块 工作电压DC5V 工作电流15mA 工作频率 40kHz 最远射程4m 最近射程2cm 测量角度15 度 输入触发信号10uS 的TTL脉冲 输出回响信号输出TTL输出 电平信号 与射程成比例 规格尺寸45 20 2 超声波的时序图如图 2 7 所示 12 图 2 7 超声波时序图 以上时序图表明你只需要提供一个 10us 之上的脉冲触发信号 此模块内部将会发 出 8 个 40kHz 周期的电平并检测回波 一旦检测到有回波信号则立刻输出回响信号 回响信号的脉冲宽度与所测的距离成正比 由此通过发射信号到收到的回响信号时间 间隔可以计算得到距离 公式 us 58 厘米或者 us 148 英寸 或是 距离 高电平时间 声速 340m s 2 建议测量周期为 60ms 以上 以防止发射信号对回响信号的影响 注 a 此模块不宜带电连接 若要带电连接 则先让模块的 GND 端先连接 否则会影 响模块的正常工作 b 测距时 被测物体的面积不少于 0 5 平方米且平面尽量要求平整 否则影响测量 的结果 3 超声波发射电路设计 超声波发射电路是由超声波探头和超声波放大器组成 超声波探头将电信号转换 为机械波发射出去 而单片机所产生的 40 kHz 的方波脉冲需要进行放大才能将超声波 探头驱动将超声波发射出去 所以发射驱动实际上就是一个信号的放大电路 本设计 选用 74LS04 芯片进行信号放大 超声波发射电路如图 2 8 所示 13 1K R3 Res2 56 U1C SN74LS04N 34 U1B SN74LS04N 89 U1D SN74LS04N 12 U1A SN74LS04N 1011 U1E SN74LS04N 1K R1 Res2 LS1 VCC 图 2 8 超声波发射电路 4 超声波接收电路 由于超声波在空气中的传播过程中是有衰减的 如果距离较远 那么超声波接收 电路所接收到的超声波信号就会比较微弱 因此需要对接收到的信号进行放大而且放 大的倍数也要比较大 超声波接收电路主要是由集成电路 CX20106A 芯片电路构成的 CX20106A 芯片电路可以对超声波信号进行放大 限幅 带通滤波 峰值检波 整形 比较等功能 比较完之后超声波接收电路会输出一个低电平到单片机去请求中断 当 即单片机停止计时 并开始去进行数据的处理 CX20106A 芯片的前置放大器具有自动增益控制的功能 当测量的距离比较近时 放大器不会过载 而当测量距离比较远时 超声波信号微弱 前置放大器就有较大的 放大增益效果 CX20106A 芯片的 5 脚在外接电阻对它的带通滤波器的频率进行调节 而且不用再外接其他的电感 能够很好地避免外加磁场对芯片电路的干扰 而且它的 可靠性也是比较高的 CX20106A 芯片电路本身就具有很高的抗干扰的能力 而且灵 敏度也比较高 所以 能满足本设计的要求 超声波接收电路如图 2 9 所示 CX20106A 1 2 3 4 5 6 7 8 LS2C11 330p C11 473 C11 104 1K R3 C8 1uf C8 47uf 1K R3 1K R3 VCC 图 2 9 超声波接收电路 14 2 4 4 驱动模块电路设计驱动模块电路设计 本设计采用 L298N 电机专用驱动芯片带动两个 6V 的直流电动机 直流电机由定子和转子两部分组成 直流电机运行时静止不动的部分称为定子 定子的主要作用是产生磁场 由机座 主磁极 换向极 端盖 轴承和电刷装置等组 成 运行时转动的部分称为转子 其主要作用是产生电磁转矩和感应电动势 是直流 电机进行能量转换的枢纽 通常又称为电枢 由转轴 电枢铁心 电枢绕组 换向器 等组成 其中 L298N 是 ST 公司的产品 比较常见的是 15 脚 Multiwatt 封装的 L298N 内 部包含 4 通道逻辑驱动电路 可以驱动两个直流电机或驱动两个二相电机 也可单独 驱动一个四相电机 输出电压最高可达 50V 直接通过电源来调节输出电压 直接通 过单片机的 IO 端口提供信号 使得电路简单 使用更方便 L298N 可接受标准的 TTL 逻辑电平信号 VSS VSS 通常接 4 5 7V 的电压 4 脚 VS 接电压源 VS 可接电压范围 VIH 为 2 5 46V L298N 芯片输出电流可达 2 5 A 可驱动电感负载 L298N 是一个内部有两个 H 桥的高电压大电流全桥式驱动芯片 可以用来驱动直 流电动机 步进电动机 使用标准逻辑电平信号控制 直接连接单片机管脚 具有两 个使能控制端 使能端在不受输入信号影响的情况下不允许器件工作 L298N 有一个 逻辑电源输入端 使内部逻辑电路部分在低电压下工作 驱动电路原理图如图 2 10 所 示 图 2 10 驱动电路原理图 2 5 软件设计软件设计 系统主程序流程图如图 2 11 所示 主程序由单片机初始化程序 判断路况程序 15 避障程序三部分组成 开始 单片机初始化 判断路况 判断是否进行避障 N 判断是否到终点 Y 结束 图 2 11 系统主流程图 循迹程序流程图如图 2 12 所示 程序由判断路况函数和电机驱动函数组成 判断路况并设定状态 小车右 小车左 小车前 小车停 延迟 16 图 2 12 循迹程序流程图 避障程序流程图如图 2 13 所示 避障程序由中断处理 距离数据计算和避障判断 函数组成 判断是否进行避障 发出超声波信号启动 T0 开中断 等着接收信号 中断停止 计算时间 计算距离 Y 进入避障子程序 判断是否超限 N 图 2 13 避障程序流程图 17 第第 3 章章 项目实施过程项目实施过程 3 1 硬件实现过程硬件实现过程 本设计由 51 单片机 超声波发射探头 超声波接收探头 TCRT5000 循迹模块 驱动电路组成 车距的测距是利用超声波测距的原理 在单片机内部程序的控制下 由超声波发射探头发射超声波 在超声波遇到障碍物时反射到超声波接收探头 由此 回应到单片机 由单片机进行中断处理和数据的处理 计算出距离 由单片机控制驱 动电路实现自动避障 本设计的硬件电路分为五部分 单片机最小系统 超声波发射 和接收电路 TCRT5000 循迹模块 驱动电路 用 Keil 集成开发环境编写软件 使用 Altium designer 设计原理图并绘制 首先根据原理图列出元件清单 按元件清单购回元件后接着就可以开始电路板 的焊接 焊接完成以后应该认真的检查焊接的电路 对照焊接用的原理图检查 用 万用电表多次检查后方可通电试验 试验中如果发现失败了 则需要细致的进一步 检测电路 1 是否有虚焊 2 是否漏焊 3 是焊接错误的连接 3 2 软件实现过程软件实现过程 3 2 1 Keil 集成开发环境介绍集成开发环境介绍 目前 52 系列单片机使用的编程语言主要有汇编语言和 C 语言这两种 最接近机器的语言是汇编语言 其常用来编制与系统硬件相关的程序 如访问 I O 口 中断处理程序等 它是一种最快而又最有效的语言 在对于程序的空间和时间要 求很高的场合中 使用汇编语言是最佳的选择 然而汇编语言也有其自身的缺点 比如 程序开发周期较长 浮点运算处理复杂 程序移植性差等不利因素 在程序设计过程中 C 语言编程设计思想被称为模块化程序设计思想 有的时候为 了有效地完成任务 把所要完成的任务分割成若干个相互独立但相互又仍然有所联系 的模块 这些模块使得任务变得相对简单 对外的数据交换相对简单 容易编写 容 易检测 容易阅读和维护 本设计采用 C 语言来编译程序 模块化结构程序的设计 可以使系统软件便于调 试与优化 也使其他人更好地理解和阅读系统的程序设计 因此 软件的设计上 运 用了模块化程序的结构对软件进行设计 使得程序变得更加直观易懂 程序的主要模 18 块有 主程序 定时溢出中断服务程序 外部中断服务程序 随着单片机开发技术不断的发展 从汇编语言到逐渐使用的高级语言 单片机的 开发软件也在不断更新 Keil 软件是目前流行的开发 MCS 51 系列单片机的软件 这 几年来各大仿真机厂商相续宣布全面支持 Keil 便可看出 Keil 提供了包括 C 语言编译 器 宏汇编 连接器 库管理及功能强大全面的仿真调试器等在内的开发方案 通过 集成开发环境的方法将这些部分组合在一起 掌握这一门软件的使用对于使用 51 系列 单片机的朋友来说是十分必要的 如果使用 C 语言编程 Keil 就是不二之选 即便不 使用 C 语言而用汇编语言编程 其方便易用的集成环境 强大的软件仿真调试工具等 也会事半功倍 Keil C51 软件提供庞大的库函数和功能强大的集成开发调试工具及全 Windows 界 面 另外重要的一点 只要看一下编译后所生成的汇编代码 就能感受到 Keil C51 生 成的目标代码效率之高 生成的汇编代码很紧致 容易理解 Keil C51 单片机软件开发系统可用于编辑 C 或汇编源文件 然后分别由 C51 编译 器编译生成目标文件 OBJ 目标文件和库文件一起由 LIB51 连接定位生成绝对目标 文件 ABS ABS 文件由 OH51 转换成标准的 Hex 文件 由仿真器使用直接对目标 板进行调试 也可以通过直接写入程序存贮器如 EPROM 中 打开 Keil 软件后 出现 如图 3 1 所示界面 图 3 1 Keil 软件主界面 19 点击 Project New Project 可以新建一个工程 点击会出现的对话框中选择工程存 在路径 单击 保存 后 出现界面 在此界面上选择电路板上所用的单片机型号单击 确定 设置完成后 软件会提示是否将 8051 上电初始化程序添加入工程 这个一般 选 否 这样就建立好了一个空的 51 工程 点击 File New 便建立了一个空的文本框 到现在为止 就可以开始在里面输入代码了 保存时注意 如果是用 C 语言写的程序 则将文本保存成 c 将写完的程序添加到工程里面 如图 4 8 所示 在左边 Project Workspace 里的 Source Group 1 上右击 选择 Add Files to Group Source Group 1 在 打开的对话框中 选择刚存的文件路径和对应的扩展名 此时 程序就添加进了这个 工程 下一步 就开始编译刚输入进去的代码 接着 Keil 会打出下面的提示 0 Error s 0 Warning s 建立工程的时候 默认是不生成 HEX 文件的 得在编译做如下设 置 在 Project Workspace 里 Target 1 上右击 选择 Options for Target Target 1 出现 如图 3 2 所示对话框 选择 Output 按图示 将箭头所指的多选框勾上 点 确定 现 在再点击重新编译 就会在工程所在文件夹里生成 HEX 文件 图 3 2 生成 HEX 文件界面 3 2 2 主函数主函数 主函数对整个单片机系统进行初始化后 将定时器 T0 启动 然后启动使能 A B 端 让汽车前进 进入黑线后进行 IF 语句判断路况和是否进行避障 判断完后主程序就返 回到初始端重新进行 IF 语句判断 就这样连续不断地运行循环作来实现自动循迹和避 障 void main init en1 1 IN1 0 IN2 1 en2 1 IN3 0 IN4 1 while 1 temp P1 20 if temp 0 xd8 motor 1 30 motor 2 30 if temp 0 x00 motor 1 0 motor 2 0 delayMS 500 if temp 0 xb8 temp 0 x78 temp 0 x98 motor 2 25 motor 1 0 if bizhang 0 motor 2 25 motor 1 25 delayMS 150 3 2 3 超声波测距模块子程序超声波测距模块子程序 先将超声波的回波接收标志位置位并且使单片机端口输出一个高电平用来启动超 声波发射电路 同时将定时器 T0 启动 然后调用距离计算的子程序 根据定时器 T0 所记录的时间计算出所需要测量的距离 然后再调用避障子程序 将测出的距离进行 IF 语句判断 最后将判断结果返回主程序通过对回波信号的接收 完成后续的工作 如果标志位清零则说明接收到了回波信号 那么主函数就返回到初始端重新将回波接 收标志位置位并且在单片机的端口上发送低电平到超声波发射电路 就这样连续不断 地运行 循环不断地工作来实现测距 超声波测距距离的计算方法是按 S 17 N 1000 0 017 N cm 进行计算的 其中 N 为计数器的值 声速的值取为 340 m s void Conut unsigned int time S time 1 7 100 算出来是 cm if S 700 flag 1 超出测量范围显示 flag 0 disbuff 0 10 disbuff 1 10 disbuff 2 10 21 else disbuff 0 S 1000 100 disbuff 1 S 1000 100 10 disbuff 2 S 1000 10 10 3 3 调试过程调试过程 3 3 1 硬件测试硬件测试 选取万用表的 200 欧姆档来测试电路板 用红 黑表笔来测试电路板上每条走线 如果测量的电阻值非常小时 证明走线没有断开 当其电阻值很大时 证明该条走线 断了 应该重新制作走线 使电路板在电气上得到正确地连接 1 晶振电路的测试 在单片机正常运行的必要条件是单片机系统的时钟稳定正常 实际中 因为各种 原因导致系统时钟不正常而出现系统无法正常运行的情况时有 因此系统时钟是否振 是通电检查的首要环节 在系统通电的状况下 用万用表的直流电压档 20V 分别测 量 XTAL1 和 XTAL2 引脚的电压 看是否正常 在调试过程中 测得电压 XTAL1 引 脚应为 2 05V XTAT2 应为 2 15V 2 复位电路的测试 复位不正常也会导致系统不能工作 如果复位引脚始终为高电平 系统将始终处 于复位状态 如果始终为低电平 不能产生复位所需的高电平信号脉冲 则系统也可 能无法正常工作 单片机正常工作时 RST 复位引脚应为 0V 按下复位按键时 复位 引脚为高电平 5V 左右 超声波测距时需要测的是从发射开始到接收到回波信号的这段时间里的声波往返 的时间差 由于需要对接收到的回波信号进行检测 而检测的有效信号为反射的回波 信号 所以应该要尽量避免检测到余波信号而超声波检测中最小测量盲区存在的主要 原因也是因为余波干扰的缘故 因为超声波测距所能测的距离的大小与传感器的驱动 功率 测量方法有很大关系 而从理论上来讲 本设计系统采用的超声波模块测距时 存在的盲区大约为 2 cm 左右 而且本设计理论上的测量距离范围为 2 cm 5 m 测量 的误差比较小 测量显示值稳定 可以精确到 0 3 cm 能满足设计要求 测距模块工 作时 在已知既定的 0 5m 距离 用此装置测量的距离测量情况误差为 2cm 在允许范 22 围内 距离基本能测准 且比较稳定 3 3 2 软件调试软件调试 软件的烧录 第一步 安装并运行 Microcontroller ISP Software 软件 第二步 点 击 Options 栏的 select device 选项 这时出现一个对话窗口 按图选择后 点击 OK 按 键 如出现所示窗口 则说明电脑与开发板没连接好或单片机没插好等 需重装检查 硬件连接 如果没有出现则说明初始化成功 第三步 点击 File 栏的 Load Buffer 选项 打开已经编译好的 HEX 文件 点击载入 出现对话框点确定 再点击图 A 字图标 出现对话框后 按软件默认选项 点击 OK OK OK 烧录完成 否则重新检查 硬件连接后再重新烧录 大连东软信息技术职业学院毕业设计 论文 23 第第 4 章章 项目成果项目成果 4 1 硬件成果物硬件成果物 4 1 1 电路原理图电路原理图 1 采样原理图如图 4 1 所示 由 TCRT5000 和 LM339 电压比较器组成 图 4 1 采用原理图 2 驱动原理图如图 4 2 所示 主要器件是 L298N 电机专用驱动芯片 图 4 2 驱动原理图 大连东软信息技术职业学院毕业设计 论文 24 3 电源原理图如图 4 3 所示 主要器件是 LM2576 图 4 3 电源原理图 4 主板原理图如图 4 4 所示 由 STC89C52 和 MAX232 组成 图 4 4 主板原理图 大连东软信息技术职业学院毕业设计 论文 25 4 1 2 PCB 版图版图 1 主板 PCB 版图如图 4 5 所示 图 4 5 主板 CB 版图 2 驱动 PCB 版图如图 4 6 所示 图 4 6 驱动 PCB 版图 大连东软信息技术职业学院毕业设计 论文 26 3 电机 PCB 版图如图 4 7 所示 如图 4 7 电机 PCB 版图 4 采样 PCB 版图如图 4 8 所示 如图 4 8 采样 PCB 版图 大连东软信息技术职业学院毕业设计 论文 27 4 1 3 实物图实物图 图 4 13 实物图 4 2 软件成果物软件成果物 Keil 运行结果图如图 4 10 所示 图 4 10 Keil 运行结果图 大连东软信息技术职业学院毕业设计 论文 28 第第 5 章章 结结 论论 这个汽车车距语言提示器的设计主要是基于 STC89C52 单片机控制核心的 同时 以超声波测距为主 TCRT5000 红外循迹为辅的自动循迹避障小车系统 通过对理论 和实际情况的分析 本设计的设计方案是基本可行 实现了以单片机为主要的控制核 心 本系统在工作时是通过测距传感器采集数据 由单片机控制核心快速地计算出距 障碍物距离并通过单片机控制电机实现自动避障 从而达到汽车防撞的目的 本设计

温馨提示

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

评论

0/150

提交评论