基于单片机的灭火机器人模型的设计说明_第1页
基于单片机的灭火机器人模型的设计说明_第2页
基于单片机的灭火机器人模型的设计说明_第3页
基于单片机的灭火机器人模型的设计说明_第4页
基于单片机的灭火机器人模型的设计说明_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

1、 PAGE40 / NUMPAGES46 常 州 大 学 毕业设计(论文)(2013届)题 目 基于单片机的灭火机器人模型的设计学 生 学 院 信息科学与工程学院 专 业 班 级 校指导教师 专业技术职务 校外指导老师 专业技术职务 二一三年六月基于单片机的灭火机器人模型的设计摘要:该文设计了一款基于单片机的灭火机器人模型的设计。系统以STC89C52单片机为控制核心,创新自制火焰传感器用于火焰探测,红外光电传感器用于探测障碍物,L298驱动电机前后转动,LCD1602液晶显示器用于显示灭火个数。 该系统火焰探测采用自制六路火焰传感器,是由五路远红外接收二极管和一路近红外接收二极管构成,它相对

2、于目前其他火焰探测器,具有火焰探测精确度高、结构简单,性能可靠等优点。避障采用E18-D50NK型号的光电传感器,该传感器具有探测距离远、受可见光干扰小、价格便宜、易于装配、使用方便等特点。此设计以数字集成电路技术为基础并以单片机技术为核心,依据传感器的信号传入单片机实现各种指令处理。系统加入液晶显示器,使得系统具有可查看灭火的次数的人性化特点。 实验结果表明,该设计具有成本低、可靠性高、灭火速度快、安装调试方便等特征,非常适用于危险系数较大的火场,具有较好的应用前景。关键词:STC89C52单片机、光敏晶体管、红外光电开关、1602液晶模块、L298NDESIGN OF THE FIREFI

3、GHTING ROBOT BASED ON THE MICROCONTROLLERABSTRACT :In this paper, the design model for the design of a microcontroller-based fire-fighting robot. System to STC89C52RC microcontroller for control core, innovation homemade flame sensor is used to measure the source of fire, use infrared receiverdiode

4、to detect the roadblock ,the L298 drive motor rotation LCD1602 display the number of fires which are put out.The system use six innovation homemade flame sensors which consist of five remote Infrared receiverdiodes and one close Infrared receiverdiode to measure the source of fire,which compare othe

5、r measurements with high precision, simple structure, reliable performance characteristics. Obstacle avoidance usesthe E18 - D50NK models of photoelectric sensor, the sensor has a long detection distance, small interference by visible light, the price is cheap, easy to assemble and convenient use, e

6、tc.This design is based on digital integrated circuit technology and single-chip microcomputer technology as the core, according to the sensor signal to microcontroller processing all kinds of instructions. Add liquid crystal display, making the system in extinguishing View extinguishing the number

7、of user-friendly features.The experimental results show that the design of low cost, high reliability, fire fast, easy installation features, very suitable for large fire risk coefficient, has a good application prospect.Key words:STC89C52 microcontroller, photosensitive transistor, infrared photoel

8、ectric switch, 1602 LCD module, L298N目录 TOC o 1-3 u 摘要 PAGEREF _Toc23507 I目录 PAGEREF _Toc9482 III1引 言 PAGEREF _Toc8933 11.1课题的开发背景 PAGEREF _Toc5378 11.2课题的研究现状 PAGEREF _Toc21263 11.3 课题的研究意义 PAGEREF _Toc5487 11.4 课题任务 PAGEREF _Toc27558 22系统基本原理与总体方案设计 PAGEREF _Toc6186 32.1灭火机器人的基本原理 PAGEREF _Toc1218

9、2 32.2灭火机器人的整体设计 PAGEREF _Toc21273 32.3灭火机器人模型的测量方案 PAGEREF _Toc10540 42.3.1避障模块 PAGEREF _Toc11088 42.3.2 火焰检测方案 PAGEREF _Toc1342 53系统硬件电路设计 PAGEREF _Toc3867 73.1控制电路 PAGEREF _Toc14815 73.1.1电机控制电路 PAGEREF _Toc7531 73.1.2灭火驱动电路 PAGEREF _Toc27439 83.2火焰测量电路 PAGEREF _Toc27867 93.3避障模块 PAGEREF _Toc2722

10、6 113.4液晶显示模块 PAGEREF _Toc24584 133.5 直流电源设计 PAGEREF _Toc4975 153.6单片机系统 PAGEREF _Toc24348 153.6.1单片机选型 PAGEREF _Toc8410 153.6.2单片机晶振电路和复位电路 PAGEREF _Toc10746 184 软件设计 PAGEREF _Toc11645 194.1系统主程序设计 PAGEREF _Toc26748 194.2寻火模块的设计 PAGEREF _Toc16474 204.3 避障模块设计 PAGEREF _Toc20963 214.4显示模块的设计 PAGEREF

11、_Toc30412 215 系统的调试 PAGEREF _Toc19641 235.1 硬件的调试 PAGEREF _Toc18792 235.2软件调试 PAGEREF _Toc12967 235.3避障的实现 PAGEREF _Toc2294 235.4 寻找火源的实现 PAGEREF _Toc14 245.5遇到的问题 PAGEREF _Toc23592 255.6实验现象与结果分析 PAGEREF _Toc13673 266实物展示 PAGEREF _Toc3052 277结束语 PAGEREF _Toc8384 29致 PAGEREF _Toc7067 30参考文献 PAGEREF

12、_Toc14262 31附件一 PAGEREF _Toc21328 32附件二 PAGEREF _Toc12020 331引 言1.1课题的开发背景 火灾在现实生活中是非常普遍的,它被称为三大自然灾害之一。随着经济的迅速增长,各种危险场所不可避免的火灾频繁出现,给社会安全造成了很多隐患。一旦发生灾害事故,消防员面对高温、黑暗、有毒和浓烟等危害环境时,若没有相应的设备贸然冲进现场,不仅不能完成任务,还会徒增人员伤亡,这方面公安消防部队已历经诸多血的教训。尤其是当新消防法出台后,抢险救援已成为公安消防部队的法定任务,面对新时期面临的新情况新任务,也为了更好地解决前述难题,消防机器人的配备显得日益重

13、要。消防部队将面对的火灾和应急救援的形势相当复杂。尤其是在高温、有毒、易燃易爆等复杂环境中,为切实增强消防部队扑救大火的能力,也为更好地保护广大官兵的生命安全,配备消防机器人已势在必行。1.2课题的研究现状智能小车方面:智能小车,也称轮式机器人,是一种以汽车电子为背景,涵盖控制、模式识别、传感技术、电子、电气、计算机、机械等多学科的科技创意性设计。智能汽车作为一种智能化的交通工具,体现了车辆工程、人工智能、自动控制、计算机等多个学科领域理论技术的交叉和综合,是未来汽车发展的趋势。机器人技术方面:目前已经开发出了多种类型机器人机构,其结构有串联、并联与垂直关节和平面关节多种。目前研究重点是机器人

14、新的结构、功能与可实现性,其目的是使机器功能更强、柔性更大、满足不同目的的需求。同时机器人机构向着模块化、可重构方向发展。机器人控制技术现已实现了机器人的全数字化控制,基于传感器的控制技术已取得了重大进展。目前重点研究开放式、模块化控制系统,人机界面更加友好,具有良好的语言与图形编辑界面。同时机器人的控制器的标准化和网络化以与基于PC机网络式控制器已成为研究热点。机器人已经实现了全数字交流伺服驱动控制,绝对位置反馈。目前正研究利用计算机技术,探索高效的控制驱动算法,提高系统的响应速度和控制精度;同时利用现场总线技术,实现的分布式控制1。1.3 课题的研究意义智能避障灭火机器人实现了对安全防护的

15、质的提高,也大减低了消防人员的危险。在智能灭火系统中应用单片机来代替人的思考,还可以实现自动化控制,简化了灭火的工作流程,使单片机代替多余的消防人员,节省了国家不必要的支出,降低了危险。自动灭火避障智能小车可以理解为机器人的一种特例,它是一种能够通过编程手段完成特定任务的小型化机器人。与普遍意义上的机器人相比该智能小车制作成本低廉,电路结构简单,程序调试方便,此设计在前人研究的基础上,通过不断地学习相关的知识,力求对消防机器人设计达到更深的了解和研究,促进消防机器人在火灾中的应用并推广在相关领域的研究,使消防研究工作不断向前发展,具有很大的学术价值。1.4 课题任务根据自动控制的基本要求,自动

16、灭火避障智能小车必须在无人干预的情况下依靠处理器自动完成所有的系统设计要求。灭火通过火焰检测传感器找到蜡烛,控制电机引导小车走向蜡烛附近并吹灭蜡烛。自动避障通过红外光电开关感应前方的障碍物,程序判断处理控制小车转弯避开障碍物。系统具体设计要求如下:实现直流减速电机的启、停、正、反控制;利用直流减速电机实现对小车的运动控制;利用稳压芯片为单片机电路系统提供稳定电压;利用红外线光电开关对障碍物的检测;利用光敏晶体管对火源的检测;通过单片机控制小车运动状态实现小车的灭火避障;利用1602液晶的工作状态显示;通过编程实现系统程序的模块化设计;2系统基本原理与总体方案设计2.1灭火机器人的基本原理灭火机

17、器人灭火原理如图1所示。单片机采集火焰检测模块和避障模块的信号,通过控制电机驱动模块使小车避障行驶去找寻火源,在找到火源之后,单片机控制电机停止,开启风扇灭火,液晶显示小车行进状态和总扑灭火源个数,从而实现对整个火灾点灭火的过程。图1 系统原理方框图2.2灭火机器人的整体设计灭火机器人由四部分组成:1、数据采集模块,主要由火焰采集模块和避障模块构成,实现了灭火机器人的对各类参数的采集,是控制器核心部分。2、信息处理单元,用单片机作为信息处理单元,实现对数据的采样与数据分析运算,并发出控制指令。3、人机交互单元,由按键与显示单元组成。按键实现人机交互;显示采用LCD1602液晶模块,可以提供丰富

18、、直观、友好的信息界面。4、控制模块,控制模块主要由电机驱动电路、灭火模块等组成,实现对驱动电机运转与开启风扇灭火。图2灭火机器人系统框图图2中,数据采集模块对障碍物方位、火焰数据进行采集,并将数据送给MCU进行数据处理。MCU根据接收的信息发出控制指令控制电机或风扇工作,显示单元可显示当前灭火的次数和行进状态。按键用于用户启动灭火机器人。2.3灭火机器人模型的测量方案避障与火焰测量是灭火机器人最重要部分之一,它是实现其他功能的基本条件,这一部分性能好坏将关系到整个系统的性能,所以设计一个成本低、可靠性高、灭火效率高、调试简便的测量方案是该设计的关键。2.3.1避障模块方案1:用超声波传感器进

19、行避障。超声波传感器的原理如图3所示:超声波由压电瓷超声波传感器发出后,遇到障碍物便反射回来,再被超声波传感器接收。然后将这信号放大后送入单片机。超声波传感器在避障的设计中被广泛应用2。但是超声波传感器需要40KHz的方波信号来工作,因为超声波传感器对工作频率要求较高,偏差在1,所以用模拟电路来做方波发生器比较难以实现。而用单片机来作方波发生器未免有些浪费资源。因此我们考虑其他的方案。 图3超声波传感器原理图方案2: 用红外光电开关进行避障。光电开关的工作原理如图4所示:根据投光器发出的光束,被物体阻断或部分反射,受光器最终据此作出判断反应,是利用被检测物体对红外光束的遮光或反射,由同步回路选

20、通而检测物体的有无,其物体不限于金属,对所有能反射光线的物体均能检测。红外光电开关操作简单,使用方便。当有光线反射回来时,输出低电平。当没有光线反射回来时,输出高电平47。考虑到本系统只需要检测简单障碍物,没有十分复杂的环境。为了使用方便,便于操作和调试,我们最终选择了方案2。图4 红外光电对管测量系统图2.3.2 火焰检测方案火焰检测有温度传感器、烟雾传感器、红外传感器、紫外传感器以与CCD传感器。综合论证这几种传感器,因本设计使用蜡烛模拟火源,对环境温度影响小,烟雾少,排除了烟雾传感器。考虑到易用性,排除了CCD传感器,从而主要考虑以下三种方案。NTC热敏电阻和光敏晶体管测量方案图5 NT

21、C热敏电阻和光敏电阻测量系统图如图5所示,利用热敏或光敏电阻的阻值随温度光亮变化的特性,将热敏或光敏电阻与线性电阻构成分压电路,当温度光亮变化时其阻值变化,进而分压变化,然后将这电压信号经过运放放大调理成05V的电压信号,经A/D转换变成数字信号送给单片机。实验中发现在一定距离围,空气温度变化非常小,热敏电阻几乎不发生任何变化。光敏电阻在灯光下,易受干扰在一定围空气温度变化非常小,热敏电阻几乎不发生变化,光敏电阻受外界干扰比较大,抗干扰能力极差,误差偏大,不能准确测定火源位置56。使用紫外传感器识别火焰方案图6 紫外线传感器识别方案紫外线传感器只对185260nm狭窄围的紫外线进行响应,而对其

22、它频谱围的光线不敏感,利用它可以对火焰中的紫外线进行检测。具有灵敏度高,检测与时准确、抗干扰性强的特点。主要缺点是价格是红外传感器的8-10倍。红外接收二极管识别火焰方案图7 红外接收二极管原理图红外接收二极管可以用来探测波长在700nm 1000nm围的红外线,探测角度为60;,其中红外线波长在880nm附近时,其灵敏度达到最大。红外火焰探头将外界红外光的强弱变化转化为电压的变化,通过电位比较器来反应高低电平的变化。外界红外光越强,数值越小;红外光越弱,数值越大。经验证红外接受二极管检测距离远,线性度好,检测准确,且体积较小在机器人设计中,红外火焰探头起着非常重要的作用,它可以用作机器人的眼

23、睛来寻找火源或其他物体。利用它可以制作灭火机器人、足球机器人等。综合考虑此处选用红外接受二极管。同时在火焰传感器模块的设计中,在车体的前头离地大约1520cm(相当于火焰高度)处安装5个远红外火焰传感器,各个传感器之间呈45度角隔开。由于火焰传感器的检测距离很远,为了避免小车判断不了火焰的远近的情况出现,我们设计了一路近距离火焰传感器。只有当这路检测到火焰,灭火电机才启动。经实验验证,系统工作稳定。3系统硬件电路设计3.1控制电路本设计要实现对路径的准确定位和精确测量采用直流减速电机。直流减速电机转动力矩大,体积小,重量轻,装配简单,使用方便。由于其部由高速电动机提供原始动力,带动变速(减速)

24、齿轮组,可以产生大扭力。我们所选用的直流电机减速比为1:74,减速后电机的转速为100r/min。我们的车轮直径为6cm,因此我们的小车的最大速度可以达到V=2rv=2*3.14*0.03*100/60=0.314m/s能够较好的满足系统的要求;实现灭火工作的是采用12V直流风扇,试验所采用的火源为小蜡烛产生的火焰,火势较小,直流风扇产生的风力足够在几秒灭火。3.1.1电机控制电路电机控制电路由L298电机驱动芯片、7805芯片、电机等组成。L298驱动芯片结构如图8所示。图8 L298驱动芯片 L298N是SGS公司的产品,部包含4通道逻辑驱动电路,是一种二相和四相电机的专用驱动器,即含二个

25、H桥的高电压大电流双全桥式驱动器,接受标准TTL逻辑电平信号,即可驱动46V、2A以下的电机。图9 电机控制原理图如图9所示,OUT1和OUT2,OUT3和OUT4分别接2个直流电机,IN1、IN2、IN3、IN4引脚从单片机接输入控制电平,控制电机的正反转,ENA、ENB接控制器使能端,控制电机的停转,L298的逻辑功能表如表1所示:表1电机转动状态编码左电机右电机左电机右电机电动车运行状态IN1IN2IN3IN41010正转正转前行1001正转反转左转1011正转停以左电机为中心原地左转0110反转正转右转1110停正转以右电机为中心原地左转0101反转反转后退对于电机的调速,我们采用PW

26、M调速的方法,其原理就是开关管在一个周期的导通时间为t,周期为T,则电机两端的平均电压U=Vcc*(t/T)=aVcc。其中,a=t/T(占空比),Vcc是电源电压,电机的转速与电机两端的电压成正比例,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比成比例,占空比越大,电机转的越快。在硬件电路的连接上,我们将单片机的IO口分别连接到L298的IN1和IN2上,通过改变单片机IO口上的高低电平变化以控制小车的前进方向,通过改变单片机IO口上的高低电平的占空比以控制电机的转速8。PWM配合桥式驱动电路L298N实现直流电机调速,非常简单,且调速围大。另外本设计特别在直流电机的电枢两

27、端并联一个0.1uF的瓷片电容,以稳定电机,不至于对单片机造成干扰,实际的使用效果不错,省掉了通过光耦隔离TPL521实现单片机输出信号与电机驱动信号隔离的环节,节约了成本。3.1.2灭火驱动电路 如图10所示,灭火电机驱动采用B772三极管驱动,单片机P1.1口接三极管Q1基极,当单片机给低电平信号时,三极管导通,接通灭火电机的电源,开启风扇灭火。图10 灭火电机驱动灭火风扇的安装灭火风扇固定一根弯曲的铝合金长条上,可以上下搬动控制灭火风扇的角度。灭火风扇的安装实物图如图11和图12所示:图11 灭火风扇安装实物前视图图12 灭火风扇俯视图3.2火焰测量电路火焰测量电路用来检测火源点,该设计

28、采用红外接收二极管,它能够探测到波长在700纳米1000纳米围的红外光,探测角度为60,其中红外光波长在880纳米附近时,其灵敏度达到最大。红外接收二极管将外界红外光的强弱变化转化为电流的变化,通过电压反应数值的变化。外界红外光越强,数值越小;红外光越弱,数值越大。红外接收二极管结构如图13所示:图13 红外接收二极管红外接收二极管又叫红外光电二极管,也可称红外光敏二极管,英文名Infrared receiverdiode。它广泛用于各种家用电器的遥控接收器中,如音响、 HYPERLINK :/baike.baidu /view/1095025.htm t _blank 彩色电视机、空调器、

29、HYPERLINK :/baike.baidu /view/7313.htm t _blank VCD视盘机、 HYPERLINK :/baike.baidu /view/6066.htm t _blank DVD视盘机以与录像机等。它广泛用于各种家用电器的遥控接收器中,如 HYPERLINK :/baike.baidu /view/68529.htm t _blank 音响、彩色电视机、空调器、VCD视盘机、DVD视盘机以与录像机等。红外接收二极管能很好地接收 HYPERLINK :/baike.baidu /view/1381541.htm t _blank 红外发光二极管发射的波长为94

30、0nm的红外光信号,而对于其他波长的光线则不能接收。因而保证了接收的准确性和灵敏度12。 红外接收二极管的结构如图13所示。最常用的型号为RPM-301B。红外接收管是一种光敏二极管。在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。红外接收二极管一般有圆形和方形两种。由于红外发光二极管的发射功率一般都较小(100mW左右),所以 HYPERLINK :/baike.baidu /view/4335011.htm t _blank 红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。前些年常用PC1373

31、H、CX20106A等红外接收专用放大电路。最近几年不论是业余制作还是正式产品,大多都采用成品 HYPERLINK :/baike.baidu /view/1284692.htm t _blank 红外接收头。如表2所示,下面为红外接收二极管实测数据,一根蜡烛为火源,室正常日光灯环境实测结果。表2 火焰传感器实测结果无火源时,对着日光灯0.35V-0.12V10cm4.98V20cm4.88V30cm4.72V40cm3.77V50cm2.89V60cm2.34V70cm1.92V80cm1.45V90cm1.15V100cm0.96V图14 火焰测量电路原理图在该电路中,当火焰传感器没有检测

32、到火焰时,火焰传感器不导通而使得火焰传感器的阳极上拉电阻R4上拉为高电平,经电压器比较器比较后输出低电平,LED灯亮。当检测到火焰时,火焰传感器导通,电压比较器输出高电平,LED灯灭。经试验验证,本电路工作性能稳定,能耗较低,能够较好的满足题目的需要。因此我们选择此电路作为我们的传感器检测与调理电路。3.3避障模块如图15所示,本设计对障碍物的检测采用E18-D50NK型号的红外传感器。E18-D50NK传感器是一种红外线反射式接近开关传感器,用于物体的反射式检测,该传感器具有体积小,功耗低,应用方便,稳定可靠等优点。输出信号为数字量,不需要进行A/D转换,可直接与单片机的I/O口相连,检测到

33、目标时信号线输出是低电平,正常状态时为高电平。为能让对测量距离的调节,在信号输出端需外接一个1K上拉电阻,调节电位器,即可调节测量的距离。图15 E18-D50NK红外传感器光电开关E18-D50NK的技术参数:1、输出电流 DC/SCR/继电器 Control output:100mA/5V供电2、消耗电流 DC25mA3、响应时间 2ms4、指向角:15,有效距离3-50CM可调5、检测物体:透明或不透明体6、工作环境温度:-25+557、标准检测物体:太10000LX以下 白炽灯3000LX以下图16 避障原理原理分析如图16所示,E18-D50NK红外光电开关发射出红外线,被物体阻断或

34、部分反射,E18-D50NK部红外接收管接收到反射回来的红外线,然后有一个由高到低的电压变化,E18-D50NK部电压比较器根据这个电压的变化输出数电信号给单片机处理。当有光线反射回来时E18-D50NK信号脚输出低电平11。避障模块接口电路如图17。图17 避障模块接口电路避障模块的安装在避障传感器的设计中,我们在车体底盘的前端装有二个避障传感器,用来起到避开障碍物的作用。两个传感器微微向两边倾斜一点,防止有障碍物时擦边。具体的安装位置实物图如图18所示:图18 避障传感器安装实物图3.4液晶显示模块显示电路是灭火机器人与用户交互的接口,用户通过显示来观察灭火次数和小车行进状态。为了显示更人

35、性化和美观化,选择LCD1602液晶,工业字符型液晶,能够同时显示16*02即32个字符,微功耗、体积小、显示容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的 HYPERLINK :/baike.baidu /view/545607.htm t _blank 点阵型液晶模块。它由若干个5X7或者5X11等 HYPERLINK :/baike.baidu /view/545607.htm t _blank 点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和

36、行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。1602LCD是指显示的容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全一样的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。液晶结构如图19图20所示:图19 1602液晶结构图图20 HYPERLINK :/baike.baidu /picview/5881209/5943668/0/7acb0a46f21fbe090bc813a86b600c338644adfc.html o

37、 查看图片 t _blank LCD1602引脚图管脚功能如表3所示:表3引脚接口说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极液晶特性如下:3.3V或5V工作电压,对比度可调含复位电路提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能有80 HYPERLINK :/baike.baidu /view/60408.htm t _blank 字节显示数据存储器DDRAM建有192个5X7 HY

38、PERLINK :/baike.baidu /view/545607.htm t _blank 点阵的字型的字符发生器 HYPERLINK :/baike.baidu /view/3365733.htm t _blank CGROM8个可由用户自定义的5X7的字符发生器CGRAM图21 液晶接口原理图如图21所示,采用电位器调节液晶的辉度,单片机的IO口分别接液晶的D0D7总线,与RS、RW、EN的读写使能端。3.5 直流电源设计电源部分的设计主要采用7805芯片,使用7805芯片搭建的电路的优点是简单、实用,78系列三端稳压IC组成稳压电源所需的外围元件极少,电路部还有过流、过热与调整管的保

39、护电路,使用起来可靠、方便,而且价格便宜。并且完全能够满足壁障小车单片机控制系统和L298N芯片的逻辑供电的供电需要。7805芯片有3个引脚,分别为输入IN端、输出OUT端和接地GND端,通常情况下可以提供1.5A的电流,在散热足够的情况下可以提供大于1.5A的电流。7805芯片的输入电压可以为9V、12V、15V不等,输出电压稳定在5V,正负误差不超过0.2V10。基于这样的情况再结合电机的工作电压,本设计选取了6节干电池9V作为7805的输入电源,搭建的电源部分电路如图22所示。图22 直流电源输出电路3.6单片机系统单片机亦称单片微电脑或单片微型计算机,它是把中央处理器(CPU)、随机存

40、取存储器(RAM)、只读存储器(ROM)、输入/输出端口(I/0)等主要计算机功能部件集成在一块电路芯片上的微型计算机。3.6.1单片机选型现在可以说单片机是百花齐放,百家争鸣的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,有与主流C51系列兼容的,也有不兼容的,但它们各具特色,相辅相成,为单片机的应用提供广阔的天地。本设计采用宏晶公司的增强型系列的STC89C52(其引脚图如图23所示)。STC89C52是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only M

41、emory)的低电压,高性能CMOS的8位微处理器,俗称单片机。该器件与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,STC89C52是一种高效微控制器, STC89C52单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图23 STC89C52引脚图主要特性:与MCS-51 兼容 8K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-40Hz三级程序存储器锁定128*8位部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片振荡器和时钟电路管脚说明:1

42、、VCC:供电电压;2、GND:接地;3、P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 4、P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 5、P2

43、口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。6、P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被部上拉为高

44、电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为STC89C52的一些特殊功能口,如下表4所示:表4 P3口的第二功能引 脚第二功能信 号 名 称P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2INT0外部中断0请求P3.3INT1外部中断1请求P3.4T0定时器/计数器0计数输入P3.5T1定时器/计数器1计数输入P3.6WR外部RAM写选通P3.7RD外部RAM读选通P3口同时为闪烁编程和编程校验接收一些控制信号。7、RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。8、ALE/PROG:

45、当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。9、/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存

46、储器时,这两次有效的/PSEN信号将不出现。10、/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。11、XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。12、XTAL2:来自反向振荡器的输出。3.6.2单片机晶振电路和复位电路(1)晶振电路晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,给单片机提供工作所需要的时钟信号,本设计中采用了12 MHZ的晶振。如图2

47、4所示。(2)复位电路系统采用硬件复位,STC89C52RC复位高电平有效,有效复位要保证RST端至少100ms的高电平,电容的作用就是缓冲使RST端保持高电平一段时间,以达到有效复位,电容越大,保持的时间就越久。图24 时钟电路图25 复位电路单片机的复位需要至少持续两个机器周期以上的高电平的时间,所以在刚开始上电的时候图25中的电容充电,所以在单片的复位引脚RST上会出现大于2个机器周期的高电平,给单片机复位,在单片机的运行过程中上电单片机就会自动复位。4 软件设计一个应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天

48、,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单,如数字滤波,信号处理等。因此需充分利用其部丰富的硬件资源和软件资源,采用与S51系列单片机相对应的程序设计语言和结构化程序设计方法进行软件编程。程序设计语言有三种:机器语言、汇编语言和高级语言。机器语言是机器唯一能“懂”的语言,用汇编语言或高级语言编写的程序(称为源程序)最终都必须翻译成机器语言的程序(成为目标程序),计算机才能“看懂”,然后逐一执行。高级语言是面向问题和计算过程的语言,它可通过于各种不同的计算机,用户编程时不必仔细了解所用的计算机的具体性能与指令系统,而

49、且语句的功能强,常常一个语句已相当于很多条计算机指令,于是用高级语言编制程序的速度比较快,也便于学习和交流。13本系统就选用了C语言来编制本设计的程序。使用C语言,大大减少程序的指令,可以快速地完成本设计的程序。灭火机器人的软件部分可以分成主程序设计、寻火模块、避障模块、液晶显示模块、控制模块等。4.1系统主程序设计该方案的编程思路是先确定主程序,之后根据各硬件电路功能来设计子程序模块,最后再将各模块嵌入主程序中。这样编程结构简单,由于子程序模块与硬件电路一一对应,所以调试起来十分方便。本设计软件方框图如图27所示,小车初始化后主程序开始判断是否有火源,若没有火,小车直线行驶,进行避障,继续寻

50、找火源;若有火就调用寻火程序模块,找到火源并灭火。图27 灭火小车系统总体流程图4.2寻火模块的设计图28寻火模块程序框图 如图28所示,单片机不断读火焰传感器的信号,当有火时,单片机判断火源位置。当左边的两个传感器有信号时,单片机控制电机左转;当右边的两个传感器有信号时,单片机控制直流电机右转;当中间的远红外接收二极管有信号时,单片机控制电机直行;当中间的近红外接收二极管有信号时,主程序调用灭火模块熄灭火焰。4.3 避障模块设计图29避障模块流程图如图29所示,单片机采集红外光电对管的信号,判断障碍的位置。没有障碍,小车就直行寻光。有障碍时,首先判断前面有无火源,如果有火源就进行避障,会影响

51、灭火。在判定没有火源时,(1)两个传感器都有信号,小车停止,后退之后右转90;(2)右边传感器有信号时,就停下来再左转45;(3)当左边传感器有信号时,小车停下并右转45。4.4显示模块的设计1602显示控制程序框图如图30所示,液晶的数据接口是P0,P2.5定义为EN使能信号口,每次对液晶的操作必须先拉高EN信号,P2.6和定义为1602的读写选择口,P2.7定义为RS数据/命令选择口。开始先对液晶显示初始化,功能主要是对液晶的背光时间,背光等级,字符显示格式,汉字显示格式,和界面的初始化。初始化完毕,下一步对各项参数显示。图30 液晶显示控制流程图5 系统的调试5.1 硬件的调试硬件调试主

52、要是对红外接收二极管、红外光电对管、直流电机进行调试。这一部分硬件调试主要分成两大块:上电前的调试和上电后的调试。上电前的调试在上电前,必须确保电路中不存在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或者短路情况等。上电后的调试在确保硬件电路正常,无异常情况(断路或短路)方可上电调试,上电调试的目的是检验电路是否接错,还要检验原理是否正确。同时针对以下各部分进行特别调试。1、红外接收部分硬件调试:这一部分调试主要是检查测量环境光线与火源的输出电压等一系列问题。2、光电管部分硬件调试:这部分调试主要是

53、检查测量当光电管检测到障碍物后的输出信号。 3、电机部分硬件调试:这部分调试时检查电机驱动部分是否正确。5.2软件调试单片机程序调试主要针对电机驱动模块、避障模块、寻火模块、显示模块的调试,小车进行模块化设计之后,非常容易调试,易于发现问题。调试各模块主要实现一下各功能:(1)电机驱动模块:主要用来控制两个直流电机,实现前进、后退、左转,右转,停止等功能,这个模块是实现避障和寻火模块的基本条件;(2)避障模块:通过检测P1.6和P1.7口的红外光电对管输出的信号,实现小车的左避障、右避障和后退右转避障;(3)寻火模块:通过检测P1.0P1.5口的红外接收二极管输出的信号,单片机控制电机行进到火

54、源的位置;(4)显示模块:在LCD1602上分别显示小车的灭火次数和行进状态5.3避障的实现根据红外传感器工作原理,当检测到前方障碍物时信号线将被置为低电平,信号线均与单片机相连,提供单片机检测。本系统共使用两个红外传感器,放置在小车车头,左右各一个,用来判断前方障碍物;表5 小车运动状态表左避障头右避障头小车运动状态传感器状态00后退,右转9001右转4510左转4511前进如表5所示,红外传感器检测到障碍时,小车将根据障碍物的方向控制转向;在无障碍的情况下,单片机控制电机向前走;当右侧光电开关检测到障碍时,单片机控制电机向左转;当左侧光电开关检测到障碍时,单片机控制电机向右转;当左、右两侧

55、光电开关都检测到障碍物时,单片机控制电动机使其后退,再右转90;当两侧光电开关都没检测到障碍物时,单片机控制电动机直走。为了简化算法,本系统对传感器的检测都使用软件查询的方式。5.4 寻找火源的实现根据前面介绍的火源检测电路工作原理,当检测到前方火源信号时将输出低电平,这里将6个信号线均与单片机相连,提供单片机检测。本系统共使用6个火焰传感器,装在小车车头,每隔45度角装载一个,正前方装有两个,一个近距离的,一个远距离的。近距离火焰传感器用来判断是否启动灭火风扇;表6 小车检测到火焰运动状态表传感器状态左1左2中近中远右2右1小车运动状态111111前进011111左转101111左转1110

56、11前进110011停止111110右转111101右转111011前进001111左转111100右转如表6所示,火焰传感器检测到火源时,小车将根据火源的方向控制转向;在无火源的情况下,单片机控制电机向前走;当右侧火焰传感器检测到火源时,单片机控制电机向右转;直到中间火源传感器检测到火源,然后前进到中间近距离火源传感器检测到火源。当左侧火源检测到火源时,单片机控制电机向左转;直到中间火源传感器检测到火源,然后前进到中间近距离火源传感器检测到火源。5.5遇到的问题1、电路焊接完后进行进行上电测试,发现电源指示灯都没有亮,然后就闻到一股焦味,用手一摸稳压电源芯片发现很烫,于是赶紧拔掉电源。用外用

57、表测量电源的正负极,发现电阻很小。仔细检查一看原来是单片机供电的稳压芯片7805接反了。1脚本来是电压输入端,结果接成了1脚输出端。把稳压芯片取下,换上新的,并且把引脚接对后,通电电源指示灯也亮了,测量电压符合要求5.01V,并且芯片也不发热。2、如图31所示,灭火传感器的安装,开始设计的时候,只设计了4个火焰检测传感器,分别是前面装两个,一个近距离的一个远距离的,然后左右各装一个。这样做发现小车在寻找火源的时候很容易出现偏差,因为火焰传感器之间是相隔90度,检测的围广但是不够细,在90度中间的检测不到,在车子行走很长一段路后才能找到,这样导致车头对不准蜡烛,也就不好吹灭蜡烛。最后把电路重新设

58、计,采用5个远距离的火焰检测传感器,一个近距离检测传感器的方案。这样就把180度的平面划分为45度一个火焰检测传感器。小车在行驶过程中就很容易发现火源。图31六路火焰传感器图32 电机安装的小电容3、在小车吹蜡烛的过程中发现只要灭火电机一转动,单片机就会复位,然后小车就会碰上蜡烛,开始以为是电源电压太低,于是把电源模块的滤波电容加大些,防止灭火电机启动时瞬间拉低电源,这样处理后没有效果,还是和之前一样。于是用示波器测量,灭火电机在启动的时候,没火电机两端电压有什么变化。用示波器测量发现灭火电机启动的时候,有很大的杂波出来,于是怀疑是电机转动的时候产生的高频电磁波干扰了电源,导致单片机复位。于是

59、在灭火电机的电源端加了0.1UF的瓷片滤波电容,如图32所示。把电容接上后,发现杂波明显减少。然后再测试小车,没有出现复位的情况了。避障传感器调试,开始的时候避障传感器只安装了一个,发现一个避障时遇到障碍物不知道是左边遇到的还是右边遇到的,程序里无法判断,也就没法控制小车准确的避开障碍物。经过调试发现两个避障头可以解决这个问题,在小车车头左右各装一个。5.6实验现象与结果分析图33测试场地 在如图33所示的场地放置小车、两个障碍物和三个火源,总共进行了6次实验,实验结果如表7所示。在前三次的实验中,小车全部实现无碰撞灭火,在第四次的实验中小车在灭了第二个火源之后倒车撞倒了中间的障碍物,之后小车

60、没有检测到第三个火源。在第六次实验中,小车灭掉第二个火源倒车右转之后就没有找到火源。在第四次实验中,小车缺少后面缺少避障。在第六次实验中,小车在灭掉第二个火源之后,可能是电量不足,没有检测到火源。表7灭火测试结果实验组别灭火个 数未扑灭火源位置碰撞障碍物个数13无023无033无042左上153无062左上06实物展示L298N驱动板图34小车的底层图图35背面焊接图STC89C52主控器图36俯视小车图小车行进状态第一行显示已经扑灭火源个数图37液晶显示图图38小车侧视图图39小车正视图7结束语本次毕业设计按照课题 “基于单片机的灭火机器人模型的设计”的要求设计了所需的硬件电路,以STC89

温馨提示

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

评论

0/150

提交评论