目 录 摘要 I Abstract II 引言 3 第一章 智能灭火小车整体设计 4 1.1 整体设计任务 4 1.2 整体设计要求 4 1.3 智能灭火小车系统整体方案设计 4 1.3.1 智能灭火小车整体模块设计 4 1.3.2 智能灭火小车整体设计方案选择 5 第二章 智能灭火小车的硬件设计 7 2.1 智能灭火小车系统硬件基本组成部分的设计方案 7 2.1.1 控制器模块 7 2.1.2 火源检测模块 8 2.1.3寻光电路模块 9 2.1.4电机驱动模块 10 2.1.5灭火模块 12 2.1.6电源模块 12 2.2智能灭火小车系统控制部分的设计思想 12 2.2.1 控制部分 12 2.2.2控制部分单元电路图 13 2.3智能灭火小车系统检测部分的设计思想 13 2.4系统各模块的最终方案 14 第三章 智能灭火小车的软件设计 15 3.1 智能灭火小车系统的软件设计 15 3.2智能灭火小车主程序流程图 15 3.3火焰探测子程序流程图 16 结 论 19 致 谢 20 参 考 文 献 21 附录 A 22 附录 B 26 附录 C 27 附录 D 28 基于单片机的智能灭火小车设计 摘要:当今社会,火灾在现实生活中普遍存在,被称为自然界三大灾害之一。当火灾发后,灭火工作坏境恶劣时,人工不能完成一些灭火任务,此时便可以使用智能灭火小车去完成相应的任务。本文设计了一个以单片机为核心的智能灭火小车。本设计是利用单片机作为灭火的控制中心,检测火源用火焰传感器,小车行驶由直流减速电机驱动行驶。电机驱动电路部分使用L293D芯片,小车行驶使用舵机控制方式。实现的功能是:从安全区出发,沿着路线前进,火焰传感器检测到火源之后,启动水泵进行灭火。
关键词:STC89C52;
舵机控制;
吹灭火源 Design of Intelligent Fire Extinguishing Car Based on Single Chip Microcomputer Abstract:Nowadays, fire is one of the three natural disasters. When the fire fighting environment is bad after the fire, the artificial can not complete some fire fighting tasks, at this time can use the intelligent fire fighting car to complete the corresponding tasks. In this paper, an intelligent fire fighting car with single chip microcomputer as the core is designed. The design is the use of single-chip microcomputer as the fire control center, fire source detection with the flame sensor, the car driving by dc deceleration motor driving. The motor drive circuit part USES L293D chip, and the steering gear control mode is used in the car driving. The realized functions are: starting from the safety zone, moving forward along the route, after the fire sensor detects the source of fire, start the water pump to extinguish the fire. Key words:STC89C52; Steering gear control; Blow the source 引言 近几十年中,高层建筑、地下建筑与大型工厂越来越多。由于这些的特殊性,当火灾发生时,不能进行快速有效的灭火从而造成各种灾难的发生。无论是在国内还是国外,火灾救援绝大多数时候仍然是设备辅助人工救援,但是救援人员在救援过程中承担一定的风险以及设备存在一定的缺陷,而在火灾现场又要面临巨大的生命危险,为解决这一问题,人们开始人工智能化救援方面的研究。如今,人工智能已经广泛应用到各个领域。灭火技术种类有很多,但大都遵循灭火原理进行设计,当前还没有通用有效的灭火技术来改善救援人员的伤亡。在实际灭火操作中,需要针对具体起火原因和火灾环境,采用合适类型的灭火技术进行灭火。目前,对于改善救援的方案大都倾向于智能化救援。
在灭火和救援的过程中,消防机器人发挥着重大的作用。在上个世纪八十年代中期,第一个用于灭火的机器人被日本设计出来并且制造成功。在七年前,美国的弗吉尼亚理工大学设计了一款用于消防工作的机器人并且将其制造出来,可以在战舰发生火灾的时候协助消防人员工作。而在2002年,上海交通大学、上海市消防局、应急管理部上海消防研究所联合起来,经过3年的研究,设计并制作了“履带式、轮式消防灭火机器人”。截至到目前,灭火机器人已经向第三代高端智能机器人稳步发展。目前,世界最新消防机器人有日本用于掌握火灾现场情况的侦察机器人、美国Pandora侦察机器人、挪威形似蟒蛇的消防机器人等。
第一章 整体设计方案 1.1 整体设计任务 本设计是制作一个智能灭火小车,使其能够沿着指定路线进行灭火工作。其工作原理如下图:
图1.1 灭火实验场地 1.2 整体设计要求 综合考虑实际工作的要去提出下列的设计目标:
(1)在启动以后能够自动探测火源的位置并且前往火源处 (2)在到达目的地以后停止前进,开始灭火装置扑灭火源。
(3)检测火源的存在状态,一直到被扑灭为止,扑灭之后探测下一个火源并前往灭火 1.3 系统整体方案设计 1.3.1 整体模块设计 本设计的整体设计方案:火源是通过火焰传感器来检测的,然后单片机STC89C52接收到火焰传感器输出的热源信号并进行处理。电机驱动方式采用舵机控制。本设计方案大致由6个部分组成,其系统构成如图1.2:
图1.2系统模块示意图 系统各个功能模块简介:
1.控制器模块:作为整个控制系统的核心器。
2.寻光模块:主要用来给灭火小车做导航作用。
3.电源模块:主要用来给整个控制进行供电。
4.火焰检测模块:主要用来对火焰进行检测。
5.电机驱动模块:主要用来驱动小车的行驶。
6.灭火模块:主要是用来控制水泵进行灭火。
1.3.2 整体设计方案选择 方案一:在智能灭火小车的两侧各安装两个轮子并由两个普通直流减速电机驱动,方便智能灭火小车行驶并起平衡支撑作用。用传感器来探测是否存在火源,可以将其安装位置选择在小车两侧,通过比较其来火焰距离小车的距离,在左侧的传感器上安装放大器,用来寻找远处的火源,右侧的传感器用来寻找近处的火源。为了能够精确的定位火源的位置,在小车的中部也安置两个传感器,两个之间的距离稍稍超过前后的两个传感器之间的距离。小车启动后,从安全区行驶出来,到达中线以后左转弯,然后通过左侧的传感器来寸照是否在一侧存在火源,如果存在火源的时候下一次转弯的时候向左转,如果在这个时候刚好前方不远有障碍物存在则沿着之前行走的路程往回行使,一直到前一个路口在向左转,无论是在左侧探测到存在火源还是在右侧探测到存在火源,就前往火源处将其扑灭。接下来继续回到中线上行使,在行使过程中随时监测火源,在行驶到了墙边的位置以后,通过一个一百八十度的转角探询另一侧的火情。此设计方案中,需要用的硬件并不复杂,在软件方面,也有很清晰的编写思路,然而实际上其未必能够达到足够的避障效果,目前的情况是,如果障碍物是静止不变的话,那么在探测到其位置可以实现良好的避障效果,但是如果障碍物会发生移动,则避障效果就难以保证,从而灭火任务也有可能无法完成。
方案二:比方案一相比,车身不变,在小车前方添加一个红外测距仪,用来探测障碍物的位置,在两侧安装火焰传感器,传感器发出信号,信号通过比较器的时候会被探测出距离大小。两侧的传感器都能够检测到何处存在火源。小车启动以后,出发到达中线处,然后想作转动,同时开启左侧的传感器探测火情,如果不存在火源的话,就继续前行,如果存在火源的话,就在下个转角处左转,前往货源出扑灭火源。接下来继续向前行驶一直到发现下一个火源。结合实际情况以及两种方案的特点综合考虑以后在这里选择方案二。
第二章 系统的硬件设计 2.1 系统硬件基本组成部分的设计方案 2.1.1 控制器模块 本设计中,系统的控制中心是STC89C52单片机。STC89C52是宏晶科技生产的低能耗、高速可靠、低抗干扰、价格低的8位微处理器。
STC89C52具有的优点:
(1)高抗静电(ESD保护);
(2)32位I/O口线;
(3)内置2KB EEPOM;
(4)4个外部中断;
(5)3个16位定时器;
(6)
最高运作频率35MHZ,6T/12T可选;
(7)
晶振频率为11.0592MHZ;
(8)
内部集成A/D、D/A转换;
(9)
可直接进行串口下载。
STC89C52单片机引脚图如图2.1所示:
图2.1 STC89C52单片机引脚图 2.1.2 火源检测模块 火源检测模块的设计在设计中是一项重要的内容,小车前往火源灭火的前提就是能够准确的探测到火源的位置。若是此部分出现问题,则灭火小车在火源的寻找过程中无法寻找到火源从而导致整个设计任务的失败。所以在设计此模块的时候考虑了两种方案。
第一种方案是通过一个火焰传感器来完成寻找火源的任务。将其安装位置选择在车底板前方,自其收集到信号开始,在通过单片机内部的A/D转换确定火焰的位置,小车停在火焰前方,开启水泵将火焰熄灭。这个方案在硬件选择使用上比较简单方便,但火焰位置与火焰传感器距离较近,容易造成因停靠位置不当而导致火焰传感器损坏,不过编程过于困难,同时A/D转换又缺乏足够的稳定性,并且精确程度也不够,所以这里将这种方案排除在外。
第二种方案是通过2个传感器结合外部电路来完成寻找火源的任务。将其安装位置选择在小车的小车的主板两端,其和火源距离比较远,在检测到存在火源之后,在通过单片机内部的A/D转换确定火焰的位置,小车停在火焰前方,开启水泵将火焰熄灭。这个方案可以准备寻找到火焰位置,避免因为停靠位置不当而导致火焰传感器损坏,而且两个火焰传感器检测火焰更加准确,综合考虑各种因素最终选择的是此项方案。
在对两种方案进行对比选择了第二种方案,通过两个火焰传感器来寻到火源位置。
2.1.3寻光电路模块 此模块的作用在于控制小车的运动轨迹,使小车沿着既定的路径运动。这里将小车所要行驶的路径设计为白色亮线,除了这条亮线以外的其他地方设计为黑色,然后通过色彩传感器便可以控制小车沿着既定的路径运动。有以下几种备选方案:
第一种方案是使用一左一右两个红外发射接收对管。在小车启动的时候,将其放置在一条白色纸带之上。这一左一由连个红外发射接收对管的安装位置选择在小车底板挣前方,根据小车在路径上偏离程度的不同输出高低不同的电压。此方案如果能够实现可能看起来会取得比较好的效果,但是其实现起来,设计比较复杂,耗电量比较高,稳定性也不一定多好,受各种因素,必反说电源、环境等等的影响比较大,在这里并不适用。
第二种方案是通过颜色传感器来指导行驶。现在的颜色传感器种类越来愈多,用途越来越广。不过其电路设计相对比较复杂,而且还要考虑光线明暗的影响。因此这个方案也被排除。
第三种方案是以发光和光敏二极管来组成发射-接收电路。这种方法容易实现但是受到外界光源的影响比较大。
经过考虑,决定选用方案三,比较容易实现。
在该电路中,加入双电压比较器LM393,通过电位器的调整电压,来控制小车的寻光电路模块。寻光电路如图2.2所示:
图2.2 寻光电路原理图 2.1.4电机驱动模块 此模块是小车的动力系统,作用相当于汽车中的发动机。在此模块中没有考虑传感器,确定当前处于哪个位置完全依赖于软件,从而导致其控制要求比较高,有以下几种备选方案:
方案一:采用专用芯片L293D作为电机驱动芯片。采用舵机控制方式,舵机控制具有体积小、便于控制的优点。采用舵机控制控制两个直流电机驱动灭火小车进行灭火工作。
L293D芯片输入和输出原理图如图2.3所示:
图2.3 L293D芯片输入和输出原理图 方案二:使用直流减速电机构成差分驱动电路。但此方案电路设计较为复杂,其对差模输入信号和输出信号分析起来较为复杂,故不采取此设计方案。
因此选用了方案一。
电机驱动模块电路图如图2.4所示:
图2.4 L293D驱动电机原理图 2.1.5灭火模块 可以选择的灭火方式装置有很多种,包括小型灭火器,喷水灭火器等等,不过因为实现起来过于复杂,而且对小车提出了很高的稳定性要求,因此这些都没有选择,而是选择的水泵。
使用水泵既能达到一定的灭火效果,而且实现起来也简单,对小车的稳定性也没有过高的要求。其工作原理如下图2.5:
图2.5 灭火模块原理图 2.1.6电源模块 对电源的要求不高,使用普通电池组即可,预计将会用到四节六伏的电池。在两个电机上各安装一节,这样因为电压相同,其转速也一致;
红外传感器上安装一节,水泵上安装一节。
2.2系统控制部分的设计思想 2.2.1 控制部分 (1)车身动力部分 通过直流电机的PWM模式来控制电机,这种模式对电机的转速和拐弯的控制力比较强,使用双电机驱动的话则可以完成一些相对复杂的操作。比方说如果要原地向左转,则使左边的电机反向转动,右边的电机正向转动即可。
(2)单片机控制部分 这里选择的单片机的型号为STC89C52,作为火焰探测和路面检测的信号的控制中心, 用来控制电机转动,进而控制小车移动,还能控制水泵的开关,是最核心的一个控制元件。
2.2.2控制部分单元电路图 舵机控制是实现单片机控制的基础,调节控制脉宽可以控制加速时间,从而将速度控制在需要的范围之呢,实现难度低。舵机控制部分电路图如图2.6所示:
图2.6 舵机控制原理图 2.3系统检测部分的设计思想 小车移动和灭火操作都是以这个模块的成功为前提的,传感器将采集到的信息传送到单片机,单片机处理过后发出控制信号,电机根据控制信号来转动,从而控制智能灭火小车行驶,基本原理可用如图2.7来表示:
图2.7 检测部分基本原理图 (1)细分又可以分为两个部分,其一是红外火焰传感器检测,外界温度的变化会影响传感器的电流大小,同时距离也有一定的影响,将变化的电压与参考电压对比,便能够判断出火源在哪个位置以及两者间的距离,这是火焰传感器的工作机理;
红外传感器用于检查周围行驶路线上是否存在障碍物,直接使用集成模块,如果障碍物和小车的距离接近到 10厘米以内,电平便会升高。其二是光电寻线传感器检测。依靠路径和周围区域颜色灰度的不同来探测行驶路线,受到外界光源的影响较大。
(2)此外,避障和路程测量是通过软件来自动进行的,可以在一定程度上降低硬件技术在实现上的困难。
2.4系统各模块的最终方案 经过分析和论证,设计的原器件清单如附录D所示,实物图如附录E。系统6个模块的最终方案如下:
(1)
控制器模块:采用STC89C52单片机作为智能灭火小车系统的控制中心。
(2)火源探测模块:用了两个火焰传感器来准确的检测火源的位置所在。
(3)寻光电路模块:用了两个光敏电阻来调整小车的行为使其能够按照既定的路线行驶。
(4)智能灭火小车电机驱动模块:电机类型为普通直流减速电机,双驱动、四接口、PWM脉宽调速。
(5)灭火模块:以水泵作为灭火装置通过单片机控制来灭火。
(6)电源模块:直接采用6V电池盒。
第三章 系统的软件设计 3.1 系统的软件设计 对于整个系统进行编程时,选择使用C语言来实现单片机的各项功能。具体代码可以附录A中查找。
对于整个系统进行原理图设计时,决定采用较为熟悉的Altium Designer16软件来将所设计的整个控制系统的工作原理图绘制出来。原理图见附录B。
根据设计工作中做选择的各项方案此次设计的设计目标,在进行软件设计的时候,应该使其能够实现下面的功能。
1. 寻迹模块主程序:传感器收集路况信息,单片机进行处理,处理过后发出控制信号控制电机转动。
2.机驱动模块主程序:通过此模块开控制电机转动,从而控制小车行驶。
3.火焰检测模块主程序:其作用在于将有段温度的一些执行模块传递给单片机。
4.水泵模块程序:其作用在于控制水泵的启动或者关闭,从而实现灭火功能。
3.2主程序流程图 主程序主是整个设计的重要部分,能够确定小车的运动状态。小车的各项具体功能主要是通过其他子程序来实现的。绘制出主程序的流程图如下图3.1所示:
图3.1 智能灭火小车主程序流程图 主程序的意义在于引导或者是决策,在整个设计内容中都有着重要地位,小车在什么时候调用哪个模块,进行哪个操作,往哪个方向转,是移动还是开启水泵,这些都是由主程序来进行控制的。
3.3火焰探测子程序流程图 图3.2 智能灭火小车火焰探测子程序流程图 3.4 寻找火源子程序流程图 图3.3 智能灭火小车寻找火源子程序流程图 结论 在进行设计和反复调试的过程当中,火焰传感器调试最为困难,其对精度要求相当高,通过对电位器的不断调整最终终于调试成功。小车整体制作布局美观与结实,不易出现接触不良等问题。从元器件的购买到小车的组装与调试中出现了各种问题,经过不断的阅读资料与对设计方案的调整最终基本完成了预定目标。
本设计采用STC89C52单片机作为整个控制系统的核心,其具有低能耗、高速可靠高 速可靠、低抗干扰、价格低等特点,以火焰传感器来监测周围的火情,并且实时的将其所采集到的数据传送给单片机,在单片机中经过A/D转换便可以确定火源在何处,单片机发出控制信号,电机接收到信号信号开始转动,小车向火源方向运动,在运动过程中通过红外传感器实时检测周围的障碍物,到达火源处以后停在一个适当的位置开始启动灭火装置来灭火,单片机发出控制信号,水泵在接收到信号以后开启,保持开启状态一直到火被扑灭,然后小车再次进入实施检测状态寻找下一个火源。
本次设计中经过不断努力,在不懂的时候及时查阅资料,已经基本完成了预定目标。
致谢 首先要在这里感谢范老师,本文是在她的悉心指导下完成的。范老师强烈的责任心,认真的治学态度,严谨的科学工作方法给我留下了深刻的印象,也始终感染和激励着我, 并且使我得到很多有益的启示。在此谨向范老师表达我真诚的谢意。
要特别感谢本专业的兄弟姐妹,从他们那里我学到了很多东西,得到了许多良好的建议。没有他们的帮助,我的课题存在很多的细节问题都将难以解决。
另外,还要感谢我其他的老师在两年中为付出的辛勤劳动。感谢朝夕相处的室友。两年来互相帮助、共同学习、共同进步。在实验室工作、学习的过程中,你们给予我的关怀和帮助让我永远难忘,这份友情将陪伴我走过今后的每一天。
最后,衷心感谢所有支持和帮助过我的老师、同学。
参考文献 [1] 李晶皎.嵌入式语音技术及凌阳16位单片机应用[M].北京航天航空大学出版社,2003.11 [2] 蒋敦斌,李文英.非电量测量与传感器应用[M].国防工业出版社,2005.5 [3] 全国大学生电子设计竞赛组委会.第四届全国大学生电子设计竞赛获奖作品选编[M].北京理工大学出版社,2001.4 [4] 郁友文,常建,程继红.传感器原理及工程应用[M].西安电子科技大学出版社,2003.3 [5] 沈红卫.基于单片机的智能系统设计与实现[M].电子工业出版社,2005.8 [6] 籍顺心,张凯,马岩等.单片机的C语言应用程序设计[M](第三版).北京航空航天大学出版,.2003.10 [7] 戴伏生.基础电子电路设计与实践[M].国防工业出版社,2002.10 [8] 梁长垠.传感器应用技术[M]北京:高等教育出版社,2018. [9] 黄智伟.全国大学生电子设计竞赛训练教程[M].电子工业出版社,2005 [10] 罗亚非.凌阳十六位单片机应用基础[M].北京航天航空大学出版社,2003.12 [11] 谢子梅,阎淑兰,赵云娣等.电子线路设计实验测试[M](第二版).华中理工大学出版社,2000 [12]张宏林.Visual C++串口通信与工程实践[M]北京:人民邮电出版社,2008. [13]赖寿宏.微型计算机控制技术[M]北京:机械工业出版,2004 [14]徐爱钧.单片机高级语言C51 应用程序设计[M]北京:电子工业出版社,2002. [15]杨欣.51单片机从零开始[M]北京:清华大学出版社,2009. [16]谢自美.电子线路设计实验测试第二版[M]武汉:华中科技大学出版社,2000.
扩展阅读文章
推荐阅读文章
推荐内容
留琼范文网 www.bjcnart.com
Copyright © 2002-2018 . 留琼范文网 版权所有