毕业设计:灭火机器人设计_第1页
毕业设计:灭火机器人设计_第2页
毕业设计:灭火机器人设计_第3页
毕业设计:灭火机器人设计_第4页
毕业设计:灭火机器人设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

灭火机器人设计 学学 院:自动化学院院:自动化学院 班班 级:级: 姓姓 名:名: 指导老师:指导老师: 目录目录 第一章第一章 引言引言 .1 1.1 课题背景.1 1.2 实现功能 .1 1.3 模拟房子介绍.1 第二章第二章 系统整体方案设计系统整体方案设计 .2 2.1 系统硬件设计.2 2.2 系统软件设计.2 第三章第三章 硬件设计硬件设计.3 3 3.1 电源管理模块.3 3.1.1 稳压芯片 LM7805CV .3 3.1.2 电源模块电路原理图 .3 3.2 电机驱动芯片 L298N.4 3.2.1 L298N 的逻辑功能: .4 3.2.2 外形及封装:.4 3.2.3 L298N 电路原理图: .4 3.3 避障检测传感器 HS0038.5 3.3.1 HS0038 简介:.5 3.3.2 HS0038 特点:.5 3.3.3 检测原理:.5 3.3.4 HS0038 与单片机连接原理图:.6 3.4 地面灰度检测传感器 ST188.6 3.4.1 ST188 特点:.6 3.4.2 检测原理:.6 3.4.3 应用范围:.6 3.4.4 外形尺寸(单位 mm): .7 3.4.5 ST188 原理图:.7 3.5 火焰传感器 .7 3.5.1 火焰传感器使用 .8 第四章第四章 软件设计软件设计.8 8 4.1 灭火机器人行进路线分析.8 4.2 软件流程图.10 第五章第五章 调试记录及实验心得调试记录及实验心得.1111 5.1 调试记录 .11 5.2 实验心得 .11 参考文献参考文献 .1414 附录附录 1:1: 程序清单程序清单 .2929 附录附录 2:2: 灭火机器人实物图及灭火场地灭火机器人实物图及灭火场地.2929 灭火机器人设计 第 1 页 共 26 页 第一章第一章 引言引言 1.1 课题背景 随着社会的进步,机器人技术的不断发展使得机器人的应用领域不断扩展,从以往多 应用于工业领域而渐渐融入人们的生活。灭火机器人作为消防部队中的新兴力量,加入了 抢险救灾的行列。灭火机器人是一个集信号检测、传输、处理和控制于一体的控制系统, 代表了智能机器人系统的发展方向。 1.2 实现功能 制造一个自主控制的机器人在一间平面结构房子模型里运动,找到一根蜡烛并尽快将 它熄灭,这个工作受地面摩擦、机器人惯性、机器人电机的转数差、齿轮箱与轮子的摩擦、 电压变化等多个因素影响,它模拟了现实家庭中机器人处理火警的过程,蜡烛代表家里燃 起的火源,机器人必须找到并熄灭它。 1.3 模拟房子介绍 模拟房子平面图单位:mm 图 1.1 灭火机器人比赛场地(国际赛制) 比赛场地的墙壁 33cm 高,由木头做成。墙壁刷成白色。比赛场地的地板将是被漆成 黑色的光滑木制表面。在所有的房间和走廊的地板上,可能会铺有小地毯,不会有粗毛地 灭火机器人设计 第 2 页 共 26 页 前进子程序 转弯子程序 灰度子程序 壁障子程序 火焰子程序 停止子程序 毯。场地中所有的走廊和门口宽都是 46cm。门口并没有门,而是一个 46cm 的开口,将 会有一个白色的 2.5cm 宽的白色带子或白漆印迹表示房间入口。 第二章第二章 系统整体方案设计系统整体方案设计 2.1 系统硬件设计 本次设计的目的是设计一个在规定区域能自主搜索火源并实施灭火的智能机器人小车, 本次设计使用的主控芯片使用了 STC89C52 单片机,所以设计重点在传感器和电机驱动 上。系统总体设计框图如图 2.1: MCU 小车电 机驱动 传感器 模块 传感器 模块 电源部分 风扇 电机 图 2.1 系统总体设计框图 2.2 系统软件设计 软件设计方案是以上述硬件电路为基础的,包括电机控制模块、传感器模块的程序设 计与实现。程序设计采用 C 语言编写,编程环境是集成 Keil C51 编译器的集成编译环境。 灭火机器人设计的软件设计结构框图如图 2.2 所示。 灭火机器 人系统软 件 电机控 制模块 传感器 模块 灭火机器人设计 第 3 页 共 26 页 图 2.2 系统软件设计框图 第三章第三章 硬件设计硬件设计 3.1 电源管理模块 电源是任何一个系统稳定运行的前提条件,为了使机器人运行稳定,单片机和电机的 供电系统采用独立供电的方法。 3.1.1 稳压芯片 LM7805CV、LM7812CV LM7805CV 的技术指标如下表: 表 3-1 稳压芯片 7805 参数 LM7812CV 的技术指标如下表: 表 3-2 稳压芯片 7812 参数 3.1.2 电源模块电路原理图 由于单片机及所有的传感器系统供电采用的是 5V 的电源,而车体要良好的运行电机 的供电电压应该达到 12V,所以在电源的处理上采用了稳压芯片 7805CV 和 7812CV。 灭火机器人设计 第 4 页 共 26 页 图 3.1 电源部分电路图 3.2 电机驱动芯片 L298N L298N 是 SGS 公司的产品,内部包含 4 通道逻辑驱动电路。是一种二相和四相电机 的专用驱动器,即内含二个 H 桥的高电压大电流双全桥式驱动器,接收标准 TTL 逻辑电 平信号,可驱动 46V、2A 以下的电机。其引脚排列如图 1 中 U4 所示,1 脚和 15 脚可单 独引出连接电流采样电阻器,形成电流传感信号。L298 可驱动 2 个电机,OUT1、OUT2 和 OUT3、OUT4 之间分别接 2 个电动机。5、7、10、12 脚接输入控制电平,控制电机 的正反转,ENA,ENB 接控制使能端,控制电机的停转。也利用单片机产生 PWM 信号 接到 ENA,ENB 端子,对电机的转速进行调节。 3.2.1 L298N 的逻辑功能: 表 3-3 SHARP GP2D12 实物图 3.2.2 外形及封装: 图 3.2 L298N 实物图 灭火机器人设计 第 5 页 共 26 页 3.2.3 L298N 电路原理图: 由于一片 L298N 可以直接驱动两个电机,但是为了加大驱动力,我们采用两路并联 的方式来驱动电机。 图 3.3 L298N 电路图 3.3 避障检测传感器 HS0038 3.3.1 HS0038 简介: HS0038B -系列微型接收机红外遥控器控制系统。 PIN 二极管和前置上组装引线框 架,环氧包被设计成红外过滤器。该解调输出信号可直接解码的微处理器。HS0038B 是 标准的红外遥控接收器系列,支持所有主要传输代码。 3.3.2 HS0038 特点: 1、光检测器和放大器一体封装 2、内部可集成 PCM 频率过滤器 3、与 TTL 和 CMOS 电平兼容 4、改进的屏蔽电场,抗干扰能力强 灭火机器人设计 第 6 页 共 26 页 3.3.3 检测原理: 红外发射管发射出经过调制过的 38KHZ 的红外光,当前方没有障碍物时,接收器收 不到红外光,相反当前方有障碍物时,接受器可以收到红外光。根据此原理,机器人可以 感知前方的路况从而决定是否前行。 3.3.4 HS0038 与单片机连接原理图: 图 3.4 H0038 电路图 HS0038 内部集成了红外接收运放验波电路带通滤波(中心频率)整形 电路驱动电路,通过加入 38k 的调制信号可使该电路抗干扰能力增强,减少了自然光 的影响。其实在红外发射和 VCC 之间有一变位器,阻值为 25 欧左右此图没标上. 3.4 地面灰度检测传感器 ST188 3.4.1 ST188 特点: 1、采用高发射功率红外二极管和高灵敏度光电晶体管组成。 2、检测距离可调整范围大,4-13 mm 可用。 3、采用非接触方式。 3.4.2 检测原理: ST188 是红外收发一体的器件,发射管发射出红外光线,接收管就可以根据接收的红 外光线的强弱,感知地面的灰度。由于此模拟房间的地面被处理成为黑白两种颜色,通过 比较器设置灰度的门限值,可以很方便的感知地面的颜色,从而做出相应的决策。 3.4.3 应用范围: 1、IC 卡电度表脉冲数据采样。 灭火机器人设计 第 7 页 共 26 页 2、集中抄表系统数据采集。 3、传真机纸张检测。 4、地面灰度检测,正反转速测量、行程测量等。 3.4.4 外形尺寸(单位 mm): 图 3.5 ST188 实物图 3.4.5 ST188 原理图: 123456 A B C D 654321 D C B A Title NumberR evisionS ize B Date:18-Oct-2008S heet of F ile:C :PR OGR AM F ILES DES IGN E XPLOR ER 99 S EEXAM PLES M yDesign.ddbDrawn B y: U1 S T188 R 1 120R R 2 10K R 5 R ES 2 R 3 1K VC C 1 2 67 8 U2A LM 324 116 2 R 4A 10K D1 LED VC C VC C Port VC C 图 3-6 ST188 电路图 图 3-7 L324 图 LM324 是四运放集成电路,它采用 14 脚双列直插塑料封装,外形如图所示。 它的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相 互独立。 灭火机器人设计 第 8 页 共 26 页 3.5 火焰传感器火焰传感器 此传感器本品可广泛应用于灭火机器人比赛中测量火焰值、足球比赛时,用于确定足 球的方向。下图为火焰传感器实物图。 图 3.8 火焰传感器实物图 3.5.1 火焰传感器使用 此传感器具有优良的火焰探测性能,可根据可见光、红外光强弱变化输出电平的大小。 其输出端口是一个四针的插头,其中黑色线为地线、红色线为电源线(+5V) 、黄色线为 信号线,用于输出测量的红外光强度电平、棕色线为信号线,用于输出可见光强度电平。 第四章第四章 软件设计软件设计 4.14.1 灭火机器人行进路线分析灭火机器人行进路线分析 当小车处于起点,小车要开始搜索房间有两种路径可以选择,一是不过台阶,绕着 4 号房间向外搜索。二是直接过台阶,然后开始搜索。显然直接过台阶可以节省很多的时间, 路径更短,因为我们制作的小车为履带结构,结合我们小车的特点和前面分析,我们选择 过台阶。 过台阶后,小车处于 3 号和 4 号房间中间,由图可知,沿着右走的方案比较好,因此 我们采用是右手规则,首先搜索的是 3 号房间,如图中的红色箭头。当在 3 号房间发现 火源时,小车进入房间并灭火,灭火后按原路返回;如没有发现火源,小车继续按右手规 灭火机器人设计 第 9 页 共 26 页 则搜索房间,直到搜索 4 号房间,不管有没有搜索到火源,从 4 号房间出来都绕着 4 号 房间返回起点,因为回家过程中的时间不记入总时间,而绕行比较安全,小车比较好控制。 1 2 3 4 灭灭火火路路线线回回家家路路线线 图 4.1 灭火机器人行进路线 灭火机器人设计 第 10 页 共 26 页 4.24.2 软件流程图软件流程图 开开始始 搜搜索索3 3号号房房间间 是是否否有有火火 搜搜索索2 2号号房房间间 是是否否有有火火 搜搜索索1 1号号房房间间 是是否否有有火火 搜搜索索4 4号号房房间间 是是否否有有火火 灭灭火火 火火已已灭灭 3 3号号房房间间回回家家 4 4号号房房间间回回家家 停停止止 灭灭火火 火火已已灭灭 2 2号号房房间间回回家家 灭灭火火 火火已已灭灭 3 3号号房房间间回回家家 灭灭火火 火火已已灭灭 3 3号号房房间间回回家家 是 是 是 是 否 否 否 否 否 否 否 否 是 是 是 是 图 4.2 灭火小车软件设计流程图 灭火机器人设计 第 11 页 共 26 页 第五章第五章 调试记录调试记录及实验心得及实验心得 5.15.1 调试记录调试记录 前方传感器检测最佳距离 12cm ,500R 的电位器逆时钟旋转可加大发射管的发射功 率,检测距离可变远。 地面灰度传感器:测试距离 2.5cm,黑地面输出电压 1.3-1.5V;白纸输出 3.8-4.5V; 前方火焰传感器最远测试距离 2.5m,此次使用有效距离 0.8m,输出电压 0.6V,探 测角度+30。 转弯: 动作延时常数动作延时常数 原地右转 90 18 原地左转 90 19 右后转 180 37 左后转 180 37 电池电压:5V 供电的电压不得低于 7.2V。 5.25.2 实验心实验心得得 伊超:伊超: 本次的灭火机器人小车设计主要涉及驱动模块 壁障模块,灰度模块,灭火模块,单 片机开发,程序设计等等。在这次试验中硬件部分和软件部分基本是我一个人完成的。在 硬件焊接时,我遇到了很多问题,比如两个电机不能同时驱动,H0038 不能检测,没有 A/D 转换,单片机引脚不够用等等,通过我解决这些问题,我也学会了实验室的许多仪器 的使用,我也体会到一个人的力量是有限的,在软件设计当中,我也遇到了许多问题,比 如不能产生 38KHZ 方波,还有在调车时,不知怎么就是车跑的不稳定,原来是在整个系统 当中没有反馈的设计,所以我又令设计了一下传感器位置,加了一个反馈调节,这样系统 才能运行的稳定,这时我才知道系统反馈是多么的重要,在程序编程方面,我体会到硬件 设计如果比较好的话,软件编程是比较容易的,所以这才启发我如果想搞好硬件,软件必 须要懂,要想编出一个比较漂亮的程序,硬件设计也要必须懂,只有软硬兼顾,这才能开 发出一个比较好的系统。 在智能车的设计中,电源部分可以说是核心的核心,电源设计显得尤为重要,特别是 使用电池供电的系统。电池在充电后,电压会变的很高,额定 7.2V 电压冲完电电压会达 到 8.5V,但在使用初,电压降的会很快,对系统的稳定性造成很大威胁,所以必须使用 稳压芯片,而稳压芯片的压差在 2V 左右;另外,电源部分的滤波电容也是非常重要的, 一般采用 10uF 的电解电容和 104 瓷片电容构成滤波电路。稳压芯片的采用虽然能减小电 压的波动,但是并不能消除。所以,电压的变化还是对机器人的运动有一定的影响。 灭火机器人设计 第 12 页 共 26 页 此外,由于地面的摩擦、机器人惯性、机器人电机的转数差、齿轮箱与轮子的摩擦等 因素,控制机器人直行和转 90 度有一定的难度,要经过反复的调试、降低机器人的速度、 通过传感器矫正等才能达到比较精确的控制。所以在做的过程中,选择一个好的、稳定的 车模是必须的。 通过这次比赛,我不仅学到的好多知识,而且锻炼了我分析问题和处理问题的能力及 组织策划能力,我编程能力大大的提到了,并且焊接电路我也进一步提高了很多。同时, 一个人的能力及思想是有限的,团结就是力量,通过这次合作,进一步加强了我们的团队 合 刘少龙刘少龙: 这次弄灭火机器人,收获真的不小,学到了不少东西,学会了如何去思考问题,如何 设计一个比较简洁的方法,去实现机器人的动作,同时兼顾可能出现的一些特殊情况,还 有程序执行的复杂度,与小车动作的流畅。写一个比较完整的程序真的很锻炼思维。关于 硬件电路的设计,我没有从一开始接触,但基本上就是数字电路,51 单片机的一个小系 统,运行很稳定,倒是红外传感器让人还学了点东西,三极管与滑动变阻器的接法红外接 收管与单片机的连接。这次用的是 HS38B20,直接输出数字量。调试过程中发现灵敏度不 好调,可能是提前没有计算好滑动变阻器的阻值吧。最终采用了特殊方法调试好了。接继 电器时也遇到了一些实际问题,单片机的 I/O 口电流太小不能驱动 NPN 三极管。最终加到 了带上拉电阻的 P0 口上问题解决,其实在其他口上接上适当的上拉电阻问题也应该解决。 关于火焰传感器也是同灰度一样加在了四路集成运放上,做的电压比较器,所以数模转化 问题简化了。调试过程中发现太阳光对火焰传感器的影响很大,所以白天要在传感器上加 一个罩子或者通过调节滑动变阻器调节 LM324 输入引脚的比较电压。第一次写出一个真 正实用程序 梁瑞华: 通过灭火机器人的制作,我对机器人的组成和原理,传感器有了全新的认识。 本次的灭火机器人小车设计主要涉及到单片机开发、机器人组成和原理、电机与驱动、传 感器知识及程序算法设计等。使用最多的是传感器,传感器是机器人的眼睛,只有传感器 正确的识别道路,机器人才能正确搜寻房间。因此传感器的设置很重要,须多次调试得出 最佳参数值,如电压值、测试距离、探测角度等。在整个实验过程中是最关键、最麻烦的 就是系统的整体调试,我们要调节各个参数,保证车子能正常完成各个功能。同时还要考 虑出现的各种不良因素,这要求制作的机器人的适应能力好,到达现场时需要调整的参数 越少越好。 在控制机器人小车精确转弯时一定要使用相关硬件器件进行控制,比如指南针或者采 用好的算法不需要进行精确转弯。还要考虑机器人的行走路径的选择,因为我们制作的小 灭火机器人设计 第 13 页 共 26 页 车为履带结构,结合我们小车的特点和前面分析,我们选择过台阶直接过台阶,然后开始 搜索。显然直接过台阶可以节省很多的时间,路径更短。 需要注意的是在平时调试时尽量在自己的比赛场地调试,虽然在现场比赛时,所有的 比赛场地采用的都是相同的材料,各个部分看起来都是一样的,实际中却会有很大差异。 通过本次设计,将我把所学的理论知识真正应用到实际当中,不仅加深了对理论知识 的理解,同时还进行了拓展、发散。在整个过程中,我还体会到团队合作的无穷力量。 灭火机器人设计 第 14 页 共 26 页 参考参考文献文献 1 国际赛制机器人灭火比赛规则.PDF 2 李全利、迟荣强. 单片机原理及接口技术. 北京:高等教育出版社,2004.1 3 谭浩强. C 程序设计(第二版). 北京:清华大学出版社,1999.12 4 童诗白、华成英. 模拟电子技术基础(第三版). 北京:高等教育出版社,2003.12 5 康华光. 电子技术基础 数字部分(第四版). 北京: 高等教育出版社,1900.1 6 黄智伟. 全国大学生电子设计竞赛电路设计. 北京:北京航空航天大学出版社, 2006.12 7 黄智伟. 全国大学生电子设计竞赛系统设计. 北京:北京航空航天大学出版社, 2006.12 8 文艳、谭鸿. Protel 99 SE 电子电路设计. 北京:机械工业出版社,2006.8 灭火机器人设计 第 15 页 共 26 页 程序请单附录程序请单附录 1:1: #include #include #define uchar unsigned char #define uint unsigned int sbit led1=P15; /红外发射管 sbit led2=P16; / sbit led3=P37; sbit s1=P11; /红外接收管用于壁障检测 sbit s2=P12; sbit s3=P14; sbit styou=P00; /灰度 sbit stzuo=P01; sbit huo=P20; /火 sbit feng=P07; /风 sbit en1=P22; /电机 1 /* L298 的 Enable A */ sbit en2=P25; /电机 2 sbit in1_1=P23; /* L298_1 的 Input 1 *左* */ sbit in1_2=P24; /* L298_1 的 Input 2 */ sbit in2_1=P26; /* L298_2 的 Input 1 *右* */ sbit in2_2=P27;/* L298_2 的 Input 2 */ uchar t=0; /* pwm 调速中断计数器 */ uchar suozuo=100; /* 电机速度值 参数:0100 */ uchar suoyou=57; uchar i=0 ; uchar k=0; /房间标志变量 uchar h=0;/火焰标志 灭火机器人设计 第 16 页 共 26 页 uchar m=0;/寻找灰度标志 uchar z=0; /回家灰度标志 void stop();/停止函数 void tiaoyou();/ void tiaozuo();/微调右 void qian()/前进函数 void delay(uint); void zuo();/左 90 void you(); void si();/左 60 void tiaohuo();/调火 void pao();/跑函数 void init();/定时器 void dus(uchar);/小延时 void tiaohui();/灰度调节 void xun1();/房间里寻函数 void hui1();/回家函数 void hui2();/ void hui3();/ void hui4();/ void zhao();/在房间里找函数 void qian()/ in1_1=1; in1_2=0; in2_1=1; in2_2=0; void xun1() in1_1=0; in1_2=1; in2_1=1; in2_2=0; 灭火机器人设计 第 17 页 共 26 页 delay(15); while (m=0)|(m=1)|(m=2)|(m=3) if(styou=1)|(stzuo=1) if (huo=1) stop(); delay(1); feng=1; delay(20); feng=0; h=1; si(); else m+; break; else if(s1=1) delay(1); 灭火机器人设计 第 18 页 共 26 页 else if(s1=0) else if(s1=1) else tiaoyou(); void zhao() if(k=2) else pao(); void si() in1_1=1; in1_2=0; in2_1=0; in2_2=1; delay(12); void tiaohuo() in1_1=0; in1_2=1; in2_1=1; in2_2=0; 灭火机器人设计 第 19 页 共 26 页 delay(1); void zuo() /90 in1_1=0; in1_2=1; in2_1=1; in2_2=0; delay(18); /更改参数可调节角度 void you() /90 in1_1=1; in1_2=0; in2_1=0; in2_2=1; delay(19); /更改参数可调节角度 void hui1() if(stzuo=1) z+; qian(); delay(5); else 灭火机器人设计 第 20 页 共 26 页 if(s1=1) delay(2); else if(s1=1) delay(7); you(); qian(); delay(50); else if(s1=1) else if(s1=0) else tiaoyou(); void hui2() 灭火机器人设计 第 21 页 共 26 页 suozuo=100; suoyou=70; if(stzuo=1) z+; qian(); delay(5); else if( (s1=0) else if( (s1=1) else qian(); delay(1); void hui3() if( stzuo=1) z+; qian(); delay(5); else if(s1=1) delay(1); else if(s1=1) delay(); zuo(); qian(); delay(45); else if(s1=1) else if(s1=0) else tiaoyou(); void hui4() if(stzuo=1) z+; qian(); 灭火机器人设计 第 23 页 共 26 页 delay(5); else if(s1=1) delay(1); else if(s1=1) delay(7); zuo(); qian(); delay(40); else if(s1=1) else if(s1=0) else tiaoyou(); 灭火机器人设计 第 24 页 共 26 页 void stop() in1_1=0; in1_2=0; in2_1=0; in2_2=0; void tiaozuo() /微调 in1_1=0; in1_2=1; in2_1=1; in2_2=0; dus(50); /更改参数可调节角度 void ti

温馨提示

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

评论

0/150

提交评论