《单片机课程设计-火灾报警器设计(30页).docx》由会员分享,可在线阅读,更多相关《单片机课程设计-火灾报警器设计(30页).docx(30页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-单片机课程设计-火灾报警器设计-第 24 页河南科技大学课 程 设 计 说 明 书课程名称 单片机原理课程设计 题 目 火灾报警器 学 院 农业装备工程学院 班 级 农电131 学生姓名 指导教师 日 期 2016年6月3日 课程设计任务书设计题目: 火灾报警器 一、设计目的结合单片机课程所学知识,课程设计将进一步培养学生的自学能力,动手能力和独立解决实际问题的能力;其目的在于加深对单片机的理解,掌握单片机应用系统的设计方法,掌握常用接口芯片的正确使用方法,强化单片机应用电路的设计与分析能力,提高学生在单片机应用方面的实践技能和科学作风,培育学生综合运用理论知识解决实际问题的能力,力求实现理
2、论结合实际、学以至用。二、设计任务 (1)装置对火灾能自动探测报警和控制; (2)装设感烟传感器及感温的差温传感器,能对室内的烟雾及温度的突变进行报警; (3)对传感器的布线故障、内部元件的损坏能进行声、光报警; (4)如果两个传感器中有一个动作表示室内有异常现象(如烟雾浓度过大或室内温差大于设定值),装置能发出异常报警信号,令值班人员到现场处理; (5)如烟感、温感同时动作,说明有火灾,装置能发出火灾报警;三、 设计要求(1)根据应用系统的要求,初步掌握总体结构设计的方法和构思,从中选择一种最佳设计方案;通过课题设计,掌握单片机系统总体方案设计方法并画出框图。(2)设计并绘制出系统电路原理图
3、及PCB图,编写软件流程图,编写C语言程序,用一种单片机软件仿真调试并得到正确结果。(3)学生应抱着严谨认真的态度积极投入到课程设计过程中,认真查阅相应献给出单片机系统的设计和实现。,能正确阐述设计和实验结果。四、设计时间安排查找相关资料确定总体方案(1天)、设计并绘制系统原理图及PCB图(2天)、编写C语言程序(2天)、仿真调试(2天)、编写设计报告(2天)和答辩(1天)。五、主要参考文献1 张毅刚 彭喜元,彭宇.单片机原理及应用.北京:高等教育出版社,2010.52 郭天祥 新概念51单片机C语言教程.北京:电子工业出版社,2009.13 张毅刚 基于Proteus的单片机课程的基础实验与
4、课程设计 北京:人民邮电出版社,20124 Alan B. Marcovitz Introduction to logic Design.北京:电子工业出版社,2003指导教师签字: 高春艳 2016 年 5 月23 日摘 要科学技术的飞速发展与进步给人们的生活带来了前所未有的便利。如电力技术的迅猛发展与应用,新能源的不断涌现,自动化程度的不断提高等等,使人们的衣食住行条件得到了极大的改善。但是,随着电子产品在人类生活中的使用越来越广泛,由此引起的火灾也越来越多,在我们生活得四周到处潜伏着火灾隐患。为了避免火灾以及减少火灾造成的损失,我们必须按照“隐患险于明火,防患胜于救灾,责任重于泰山”的概
5、念设计和完善火灾自动报警系统,将火灾消灭在萌芽状态,最大限度地减少社会财富的损失。本文设计了一种以单片机为基础,同时集成了A/D转换器、温度传感器AD590和气体传感器TGS202等,利用多传感器信息融合技术,火灾探测器通过对火灾发出的物理、化学现象燃烧气体、烟雾粒子、温度的探测,将探测到的火情信号转化成火警电信号传递给火灾报警控制器,火灾报警器再发出报警信号。若长时间报警不解除,则启动灭火器。这是一种结构简单、使用方便、价格低廉、智能化的报警器系统,具有一定实用价值。关键字 AT89C51单片机 温度 烟雾传感器 A/D转换器 目录第一章 绪 论41.1研究背景41.2 设计目的和意义4第二
6、章 系统工作原理62.1 火灾成因62.2 系统总体功能概述72.3 火灾报警器的类型82.4技术实现的方法92.4.1系统硬件的总体结构92.4.2系统软件的总体结构10第三章 火灾报警系统的硬件设计113.1核心芯片选择113.1.1单片机选择113.1.2模数转换芯片选择123.2传感器选择133.2.1温度传感器的选择133.2.2烟雾传感器的选择143.3 A/D转换电路153.4 声音报警电路153.5 信号处理电路153.6 状态指示灯电路163.7 报警器故障自诊断电路17第四章 火灾报警系统的软件设计184.1 软件开发环境184.2 主程序流程184.3 主程序初始化流程2
7、14.4 数据采集子程序224.5 滤波子程序244.6火灾判断与报警程序25第五章 火灾报警系统的仿真265.1关于仿真与编程软件265.2 Protues仿真原理27结论29参考文献30附录31第一章 绪 论1.1研究背景 火灾是威胁公众安全和社会发展的主要灾害之一。火,在给人类带来文明进步、光明和温暖的同时也在其失去控制之时给人类造成了巨大的灾难。在各种灾害中,火灾是最经常、最普遍地威胁到公众安全和社会发展的主要灾害之一。它威胁着人们的健康、生命和财产安全,一旦引发火灾,就能使成千上万的财产瞬间变为灰烬,其所造成的损失约为地震的5倍,仅次于干旱和洪涝灾害。据瑞士保险公司调查报告,1970
8、年1985年世界平均每周发生3起大火,15年共造成150万人丧生,使全球5000万人无家可归,如果说天灾是人类共同面对的大敌,那么在尚不发达的发展中国家则是天灾与人祸并重,火灾隐患日益严重。据统计,我国70年代火灾平均损失不到2.5亿元,80年代火灾平均损失接近3.2亿元。进入90年代,特别是1993年以来,火灾造成的直接损失上升到年均十几亿元,年均死亡2000多人。1.2 设计目的和意义残酷的现实让人们逐渐认识到监控预警和消防工作的重要性。火灾监测预防工作已变得日益紧迫,寻找一种及时有效的预防火灾产生的方法已经变成人们迫切需要解决的问题。良好的监控系统和及时的报警机制可以大大降低人员的伤亡,
9、为社会减少不必要的损失。智能火灾自动报警系统就是为了满足这一需求而研制出的,并且其自身的技术水平也在随着人们需求的不断地提高,不断地完善。火灾自动报警系统能迅速监测火情,可发现人们不易发觉的火灾早期特征,可将火灾带来的生命财产损失降到最低限度。智能型火灾报警系统是一个集信号检测、传输、处理、报警于一体的系统。随着经济和城市建设的快速发展,城市高层、地下建筑以及大型综合性建筑日益增多,火灾隐患也大大增加,火灾的数量及其造成的损失呈逐年上升趋势。基于社会和经济方面的需求,本课题研发一个能够对监测点实时监控、报警的智能火灾报警系统。第二章 系统工作原理2.1 火灾成因 火灾是一种失去人为控制的由燃烧
10、造成的灾害,产生火灾的基本要素是可燃物、助燃物和点火源。可燃物以气态、液态和固态三种形态存在,助燃物通常是空气中的氧气。它们燃烧的基本过程是当从外部获取一定的能量时,液体或固体先蒸发成蒸汽或分解出可燃气体(如CO、H2等)的分子团、灰烬和未燃烧的物质颗粒悬浮在空气中,称之为气溶胶。在产生气溶胶的同时,产生分子较大的液体或固体微粒,称为烟雾。着火后,燃烧产生的热量使液体或固体的表面继续放出可燃气体,并形成扩散燃烧。同时,发出含有红、紫外线的火焰,散发出大量的热量。形成火灾。其中的气溶胶、烟雾、火焰和热量都称为火灾参量,通过对这些参量的测定便可确定是否存在火灾。总的来说,普通可燃物在燃烧时表现为以
11、下形式:首先是产生燃烧气体,然后是烟雾,在氧气充足的条件下才能达到全部燃烧,产生火焰,发出可见光和不可见光,并散发出大量的热,使环境温度升高。起火过程中,起初和阴燃两个阶段所占的时间比较长,虽然产生大量的烟雾,但是环境温度不太高,若探测器就应该从此阶段开始进行探测,就可以火灾损失控制在最小限度。火焰燃烧后,迅速蔓延,产生大量的热使得环境温度升高。图2-1 火灾成因曲线2.2 系统总体功能概述火灾报警系统一般由火灾探测器、区域报警器和集中报警器组成。火灾探测器通过对火灾发出的物理、化学现象气(燃烧气体)、烟(烟雾粒子)、热(温度)、光(火焰)的探测,将探测到的火情信号转化成火警电信号传递给火灾报
12、警控制器。区域报警器将接收到火警信号后经分析处理发出声光报警信号,警示消防控制中心的值班人员,并在屏幕上显示出火灾的房间号。集中报警是将接收到的信号以声光形式表现出来,其屏幕上也显示出着火的楼层和房间号,利用本机专用电话还可迅速发出指示和向消防队报警。此外,也可以控制有关的灭火系统或将火灾信号传输给消防控制室。整体电路的框图如图2-2所示: 传感器放 大 器AD转换器 单片机状态指示灯声音报警温度显示按键通信接口图2-2 总体功能概述 火灾报警系统,一般由火灾探测器、联动单元和控制器三部分组成。由火灾探测器首先探测到火灾的萌芽而后通过联动单元传输至控制器分析其形势从而实现是否报警。火灾报警系统
13、除了具有预防报警之外,还有遥控检测功能,它能够根据总台的监测预防的要求而有所对其功能模块进行远程调节。2.3 火灾报警器的类型根据火灾报警系统中所使用的探测器种类的不同,火灾报警系统可以分为四种:(1)感温型火灾报警系统 由于火灾发生时燃烧物会产生大量的热量,使得周围温度迅速变化。感温型火灾报警系统就是通过判断周围温度变化而产生响应的火灾报警系统,再把温度的变化转换为电信号以达到判断报警的目的。根据探测温度参数的不同,一般可以将感温型火灾报警系统分为定温式、温差式等几种。 (2) 感烟型火灾报警系统烟雾是早期火灾的重要特征之一。在火灾发生的初期,由于温度比较低,许多物质都处于阴燃阶段,产生大量
14、的烟雾。感烟型火灾报警系统就是对空气中可见或不可见的烟雾粒子进行探测,然后将烟雾浓度的变化转换为电信号来触发报警。感烟型火灾报警系统主要有激光感烟式、光电感烟式和离子感烟式等。(3)感光型火灾报警系统 物质燃烧不但会产生烟雾和热量,同时也会产生可见或不可见的光辐射。感光型火灾报警系统就是通过响应火灾中产生的光特性,即扩散火焰的光强度和闪烁频率,来触发报警系统的。根据感应的敏感波长,可以将感光型火灾报警系统分为对波长较短的光辐射敏感的紫外报警系统和对波长较长的光辐射敏感的红外报警系统。 (4)图像火灾探测 对于物质燃烧产生的火焰,除了可以分析它的光谱特征外,还可以对其火焰形状进行利用,这样就产生
15、了图像火灾探测器。火焰是高温物体,而它的周围环境则是处于常温状态。火灾火焰在发展的过程中其形状有一个不断变化和持续的过程,而普通火焰以及高温发光源,如白炽灯、电炉等,则没有这个变化过程。这样就形成了火灾识别和探测算法的重要基础。国内已有研究表明利用液晶片和 CCD 摄像机可对火灾图像进行有效的探测9。2.4技术实现的方法2.4.1系统硬件的总体结构该火灾报警系统主要由数据采集模块、控制模块、声光报警模块组成。单片机是此报警系统的核心,其原理是通过现场的传感器(烟感和温感)将非电信号变成电信号,再通过信号调理电路进行调理(放大、滤波等),使之满足A/D转换器的要求,最后A/D转换器在将模拟信号转
16、化为数字信号 ,在由单片机判断现场是否发生火灾。如果发生火灾,就以声光进行报警。其硬件结构图如下图2图2-4-1硬件结构图本文设计的单片机火灾报警系统具有以下特点:(1)能对室内烟雾(CO2,CO) 及温度突变进行报警,具有声、光双重报警功能。(2)系统故障报警功能。当系统出现硬件故障时,能发出故障报警信号。(3)异常报警功能。当环境出现异常(如烟雾浓度过大或是温度较高)时,能发出异常报警信号,引起人们注意,尽可能避免火灾的发生。(4)火灾报警功能。一旦真出现火灾(烟雾和温度同时出现异常)时,能立即发出语音、光火灾警报 。据类似本系统的报警器现场模拟实验表明,本系统安全可靠,误报率低。且由于其
17、体积小、操作维护方便、成本低廉等,具有广阔的应用前景。2.4.2系统软件的总体结构 为了便于系统维护和功能扩充,采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。本系统主要包括数据采集子程序、滤波子程序、火灾判断与报警子程序等,系统程序流程图如图2-4-2所示。 为了降低误报率,系统采用多次采集、多次判断的方法。每次数据采集后根据得到的数据对现场情况进行判断,然后综合多次判断结果做出最终的火情判断。主程序是一个无限循环体,其流程是:首先在上电之后系统的各部分包括单片机各个端口输入输出的设置、外围驱动电路和数据存储电路等完成初始化,其次是对芯片内的程序进行初始化,接下来执
18、行火灾报警系统中的数据采集任务,数据通信任务和查询判断任务。 其软件程序流程图如下图所示Y开始初始化 温度烟雾信号采集报警判断正常火灾报警N图2-4-2软件程序流程图第三章 火灾报警系统的硬件设计3.1核心芯片选择3.1.1单片机选择在火灾报警器的设计中,单片机是其核心部件。它一方面要接收来自传感器送来的温度、烟雾对应的模拟信号和故障检测信号,另一方面要对这两种信号分别进行处理,以控制后续电路进行相应动作;与此同时查询是否有键按下的请求。在单片机完成这些工作的过程中,尤其是信号处理中,比较浓度值后送入显示的软件实现比较复杂,要求单片机具备较快的运算速度,使检测人员能够较准确地观测到烟雾浓度,鉴
19、于此,对比了8031和AT89C51的区别。 8031片内不带程序存储器,使用时用户需外接程序存储器和一片逻辑电路373,外接的程序存储器多为EPROM的2764系列。用户若想对写入到EPROM中的程序进行修改,必须先用一种特殊的紫外线灯将其照射擦除,之后再可写入。写入到外接程序存储器的程序代码没有什么保密性可言。 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的
20、MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图3-1-1 AT89C51芯片各引脚图3.1.2模数转换芯片选择大多数单片机本身只能识别和处理数字量,因此必须经过模拟量到数字量的转换(A/D转换),才能够实现单片机对被控对象的识别和处理。完成A/D转换的器件即为A/D转换器。模数转换(ADC)亦称模拟一数字转换,与数/模(D/A)转换相反,是将连续的模拟量(如象元的灰阶、电压、电流等)通过取样转换成离散的数字量。A/D转换器的主要性能参数有:(1)分辨率
21、分辨率表示A/D转换器对输入信号的分辨能力。A/D转换器的分辨率以输出二进制数的位数表示;(2) 转换时间 转换时间指A/D转换器从转换控制信号到来开始,到输出端得到稳定的数字信号所经过的时间。不同类型的转换器转换速度相差甚远;(3)转换误差转换误差表示A/D转换器实际输出的数字量和理论上的输出数字量之间的差别,常用最低有效位的倍数表示;综合各方面因素最终采用ADC0809。ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D模数转换器。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。ADC0809由8路模
22、拟开头、地址锁存与译码器、8位A/D转换器和三态输出锁存缓冲器组成。图3.1.2 ADC0809芯片各引脚图3.2传感器选择3.2.1温度传感器的选择AD590温度传感器测量热力温度、摄氏温度、两点温度差、多点平均温度的具体电路,广泛应用不同的温度控制场合。由于AD590精度高、价格低、不需要辅助电源、线性好,常用于测温和热电偶冷端补偿。所以选择AD590温度传感器。AD590是美国Analog Devices公司生产的一种电流型二端温度传感器。电路如图3-1所示。由于AD590 是电流型温度传感器,他的输出同绝对温度成正比,即1A/k,而数模转换芯片ADC0809 的输入要求是电压量,所以在
23、AD590 的负极接出一个1k的电阻R和一个100的可调电阻W,将电流量变为电压量送入ADC0809。通过调节可调电阻,便可在输出端VT获得与绝对温度成正比的电压量,即10 mV/K。图3-2-1 AD590温度传感器的应用电路AD590的规格如下:(1)其输出电流是以绝对温度零度(-273)为基准,温度每增加1,它会增加1输出电流。(2)可测量范围-55到+150。(3)供电电压范围+4V到+30V。(4) 精度高。AD590共有I、J、K、L、M五档,其中M档精度最高,在-55+150范围内,非线形误差0.3。3.2.2烟雾传感器的选择 火灾中气体烟雾主要是CO2 和CO。TGS202气体
24、传感器能探测CO2、CO、甲烷、煤气等多种气体,它灵敏度高,稳定性好,适合于火灾中气体的探测。如图3-2所示,当TGS202探测到CO2或者CO时,传感器的内阻变小,VA迅速上升。选择适当的电阻阻值,使得当气体浓度达到一定程度(如CO浓度达到0.06%)时,VA端获得适当的电压(设为5V)。电路图如下图示图3-2-2 TGS202应用电路图3.3 A/D转换电路 经温度传感器和气敏传感器所检测的电压信号为模拟信号,无法直接被单片机所识别,所以在经过放大电路对信号进行放大后要A/D装换,将模拟信号转化为数字信号输入单片机。3.4 声音报警电路 由AT89S52的21脚实现声音报警控制。当可燃性气
25、体浓度或温度超过限定值时,将P2.0置为低电平,三极管导通,扬声器发出鸣叫报警。图3-4 声音报警电路3.5 信号处理电路 传感器输出信号一般比较微弱,需要经过前置电路对其进行放大、滤波、电平调整,满足单片机对输入信号的要求。本系统采用的半导体烟雾传感器属于电阻型,因此只需要串联一个参考电阻,在经过一个放大电路即可发送给ADC采集。由于系统采用的是单极性供电,所以采用同向比例放大电路,可以减少硬件的开销。常见的运算放大器中,LM324价格低廉、使用简单等优点比较突出,所以本设计中的前置放大电路采用LM324作为电路的运算放大器。LM324是单片机高增益四运算放大器,可在较宽电压范围的单电源或双
26、电源下工作,其电源电流很小且与电源电压无关,四个运放一致性好;其输入流电阻式文档补偿的,也不需要外接频率补偿,可做到输出电平与数字电路的兼容。图3-5 LM324电路图 电路图如上图3-3所示,运算放大器接成电压放大电路。从传感器采集过来的微弱电压信号,经过电压放大器的放大,得到较强的模拟电压信号。采样时,把相应的模拟电压信号从Vi端送进LM324A进行放大处理后,从Vo端输出送入A/D转换电路。3.6 状态指示灯电路AD转换器输出的数字信号传输给P0口,读取P0口的内容跟设定的值进行判定,如果大于设定值,P2.3、P2.4输出高电平,P2.2输出低电平,控制黄色发光二级管的发光,说明发生火灾
27、。如果小于设定值,P2.2、P2.3输出高电平,P2.4输出低电平,控制绿色发光二级管的发光,说明正常,没有火灾发生。如果出现异常情况,P2.2、P2.4输出高电平,P2.3输出低电平,控制红色发光二级管的发光。图3-6状态指示灯电路3.7 报警器故障自诊断电路 判断传感器电源连接情况。在传感器的地端串联一个电阻R,当传感器正常连接时,电阻和传感器分压,此时电阻两端有微弱的电压,单片机可以通过P2.1口检测到:如果如果传感器电源连接不正常,则会产生断路,检测到电阻两端电压为0。第四章 火灾报警系统的软件设计4.1 软件开发环境 本系统摒弃了传统的汇编语言而采用C语言进行程序设计。因为C语言的描
28、述由函数组成,是一种结构化的程序设计语言,所以更容易实现模块化,而且具有可读性好,易于移植等优点,同时还有汇编语言一样的位操作功能的硬件详细控制指令。数据结构方面,可以使用结构体和数组,能够处理复杂的数据,可用于实时处理系统。4.2 主程序流程 为了便于系统维护,在火灾报警系统的软件设计中采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。既使得程序结构清晰,又便于以后进一步扩展其功能。本系统主要包括主程序、温度烟雾数据采集子程序、火灾判断与报警子程序等。系统程序流程图如图4-1所示。 在执行主程序前首先要给传感器预热。 首先给传感器预热三分钟,因为传感器需要预热一段时间
29、才能正常采集烟雾和温度信息。预热同时,对传感器加热丝故障检测,采用软件方式检测传感器加热丝或电缆线是否断线或者接触不良。程序初始化结束后,系统进入监控状态。AT89S52单片机对传感器检测到的烟雾浓度和温度信号进行A/D转换、平均值法滤波、线性化处理后,将检测值与报警限设定值相比较,判断是否报警。同时送入显示器显示通道及相应的数字量。主程序还包括状态指示灯及按键功能,中断子程序等,使报警器功能更加完善,给用户带来便利。Y开始初始化传感器预热、故障检测键盘处理报警限设置报警子程序平均值法滤波线性化处理设置指示灯状态YN是否按下式切换A/D转换N是否超过报警限浓度显示图4-2 主程序流程图4.3
30、主程序初始化流程主程序初始化流程图如下示开始定时器初始化开中断关闭蜂鸣器,打开绿灯设定初值YN是否保持报警初值返回图4-3 主程序初始化流程图4.4 数据采集子程序数据采集是火灾报警系统中的重要环节。为了降低误报率,系统设计时对温度烟雾采用了两次采集、两次判断的方法。每次采集温度烟雾数据后,将数据存入单片机的寄存器,然后在火灾判断程序中,将采集的数据与设定的阈值进行比较,判断现场是否发生火灾。具体流程是:系统和程序初始化后,驱动ADC0809的IN0对温度信号进行A/D转换,单片机接受转换好的数据,存入寄存器,由INT0中断服务程序完成;系统延时10ms,驱动ADC0809的IN1对烟雾信号进
31、行A/D转换,转换完成后存入寄存器。系统延时50ms,进行第二次温度烟雾信号采集,将转换好的数据存入寄存器中。单片机每次驱动A/D转换后等待外部中断,当ADC0809的EOC端变为1时,说明A/D转换已经完成,再通过中断服务程序读取转换得到的数据。由于设计采用的是模块化设计,系统实现报警功能是通过调用子程序实现的。在数据采集子程序中,一次温度烟雾信号采集延时10ms,是让ADC0809准备好进行下一次信号转换。当系统采集2次温度烟雾信号后,转换好的数据存入单片机的寄存器中,系统再调用火灾判断子程序。系统温度烟雾信号采集程序流程图如图4-3所示:在火灾自动报警系统的程序设计中使用了延时程序,延时
32、10s的程序如下:void delay_10s (uint i) while (i-) uchar i , j , k ; for (i=5 ;i0 ;i- ) for (j=4 ;j0 ;j- ) for (k=248 ;k0 ;k- ) ;检查EOC OE赋值1第二次采集完检查EOC OE赋值1采集温度信号接受温度数据延时200ms采集烟雾信号接受烟雾数据图4-4 数据采集流程开始返回图4-4 数据采集子程序4.5 滤波子程序在对气体浓度采样时,可能会遇到尖脉冲干扰的现象。干扰通常只影响个别采样点的数据,此数据与其他采样点的数据相差比较大。如果采用一般的平均值法,则干扰将“平均”到计算结果
33、上去,故平均值法不易消除由于脉冲干扰而引起的烟雾浓度采样值的偏差。 为此,先对N个采样数据进行比较,去掉其中的最大值和最小值,然后计算余下的N2个数据的算术平均值。这种方法既可滤去脉冲干扰又可滤去小的随机 干扰。保证报警器检测烟雾浓度的准确性,减小误报、错报的可能。开始设定采样次数调用A/D采样求第二个到第九个采样值的累加和将累加和求平均值送入寄存器NY已达到设定次数将采样值排序图4-5滤波子程序4.6火灾判断与报警程序 (1)火灾报警数据处理方法固定门限检测法是使用最早,且应用最广泛的火灾探测方法,优点是计算量小且易于实现,其原理是根据火灾探测器的信号幅值作为火灾报警的依据,并与固定的阈值进
34、行比较:当信号幅值超过报警阈值时,则发出报警,否则解除报警。 火灾报警系统中使用的是温度传感器DS18B20和烟雾传感器NIS-09,烟雾传感器输出电压v与烟雾浓度p关系为:v=-0.3p+5.6。在本设计中报警温度设为57,烟雾报警浓度设为3.2FS(参照市面销售的火灾报警器温度烟雾的报警临界值)。经过换算可得出温度烟雾传感器输出火灾报警临界电压值为: (2)火灾判断与报警系统对温度和烟雾进行了两次数据采集与判断,每次信号采集后根据得到的数据与设定的阈值比较,当温度57,温度异常,置寄存器变量w为1,否则为0;当烟雾浓度3.2,烟雾浓度异常,置寄存器变量s为1,否则为0。综合两次温度烟雾信号
35、的采集,根据温度和烟雾的寄存器变量w和s的状态,判断现场情况:2个寄存器变量均为0,表示情况正常;2个中仅有1个为1,表示情况异常;2个均为1,表示有火灾发生。系统对现场进行报警判断后,间隔20s后(通过系统的延时程序实现),再一次采集现场的温度烟雾信号进行判断,即每一次语音报警持续10s,直到系统做出下一次判断结果。当系统状态为00时,表示正常,80C51的P2.4口变成低电平,绿灯亮。当系统状态为01或10时,表示异常,P2.3口变为低电平,红灯亮,蜂鸣器报警。当系统状态为11时,表示发生火灾,P2.2口变为低电平,黄灯亮,蜂鸣器报警。如果两次采集同一种信号寄存器变量不相同,说明系统出现故
36、障,P24口变为低电平,P10口变为高电平,红灯亮,蜂鸣器报警。第五章 火灾报警系统的仿真5.1关于仿真与编程软件本次设计首先用KeilC51进行编程开发,然后通过proteus软件进行仿真调试,最后根据调试得出应有的结果。(1)Keil C51开发系统Keil C51的相关介绍见软件介绍,本章不再赘述。(2)Protues软件概述Protues软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。5.2 Protues仿真原理 本系统采用单片机常用的仿真软件Proteus进行仿真,Proteus的ADC
37、0809不具有仿真模型,所以在此借用ADC0808来代替。由于此软件也没有温度传感器和烟雾传感器,所以在此用可调电位器进行仿真来分别代替温度传感器和烟雾传感器。IN1和IN0分别接烟雾探测和温度探测,将烟雾的临界值为3.7V,温度的临界值为2.85V并且以及47为报警值,通过滑动电位器来改变输入值的大小。P0-P2口则分别接的是报警指示灯,分别代表当前情况正常、异常、火灾。P3口接的是数码管输入信号,P0.3-P0.6接的是数码管的位控制,数码管显示的是温度的电压值。P0.7口则是接的报警输出信号。仿真图见附录一结论火灾报警器可保障生产与生活的安全,避免火灾和爆炸事故以及煤气中毒的发生,它是防
38、火、防爆和安全生产所必备的仪器,具有广阔的市场空间与发展前景。此外本系统的软件设计方面,采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。既使得程序结构清晰,又便于以后进一步扩展其功能,也便于系统的维护。本文设计了一种基于单片机AT89C51的火灾自动报警系统,抛弃了传统的使用单一传感器探测报警,采用了温度传感器DS18B20和烟雾传感器NIS-90C相结合的多传感器探测方法,使系统灵敏度高、响应时间短,在火灾发生的早期就能准确的报警。系统使用了8位A/D转换芯片ADC0809,以通用芯片AT89C51作为系统的控制器。系统在采集温度烟雾信号时,采用多次采集,多次判断的
39、方法,降低了误报率。通过这次设计,我更加深入的理解和掌握了单片机在实践应用方面的知识,对本专业的认识也更加深入,使自己对本专业更加的热爱,对理论学习做了进一步的总结,更加明确了自己学习的目标和方向。在设计过程中,遇到了很多问题,在解决问题的过程中,自己也学到了许多新的知识,有很多感悟和体验心得,而且,对工程设计的流程和步骤有了清晰的认识,为自己日后的学习和研究打下了坚实的基础。知识的积累不是一朝一夕就能完成的,它通过初步认识,思考,理解,掌握,复习巩固等一系列过程,才能达到灵活应用的程度。 所以今后的学习中,要注重知识的迁移能力,学会将自己所学与实际生活相结合,达到学习与应用的完美结合。参考文
40、献1 孙育才MCS-51系列单片微型计算机及其应用第4版,东南大学出版社,20062 王庆99 SE&DXP电路设计教程电子工业出版社,20083 康华光电子技术基础模拟部分第4版,高等教育出版社,20064 孙健基于ARM7的火灾自动报警控制器研制:浙江大学,20075 雍静,李北海,杨岳等建筑智能化技术M北京:科学出版社,20086 王忠民,郝静,张瑜等基于单片机的语音数字联网火灾报警器设计.西安邮电学院7 张向亮智能建筑火灾自动报警系统的设计与研究:武汉理工大学,2010附录一 火灾报警器的仿真图(一)正常情况下(二) 发生火灾附录一 火灾报警器的原理图附录二 火灾报警器的PCB板附录三
41、 仿真图所对应的C语言程序#include #define uchar unsigned char#define uint unsigned intuint Tem1,Tem2,Smok1,Smok2;uint Tem=2.6;Smok=5; /设定温度烟雾报警阈值uchar a,a1,a2,b,b1,b2;void caiji_wenyan();void delay_10ms(uint i); /程序声明void panduan ();void baojing();sbit P21=P21;sbit P23=P23;sbit P24=P24;sbit P25=P25;sbit EOC=P33
42、;sbit E=P20;sbit W=P36;sbit R=P37;void main() /主程序P21=0,W=0,R=0;P23=1,P24=1,P25=0; /初始化P0=0XFF;delay_10ms(500);while(1)caiji_wenyan(); /第一次采集温度烟雾信号Tem2=Tem1;Smok2=Smok1;delay_10ms(50); caiji_wenyan(); /第二次采集温度烟雾信号panduan(); /将转换的数据与设定的报警阈值比 baojing(); /报警程序void caiji_wenyan()P0=0XF8; /选通IN-0,转换温度信号W
43、=0;W=1;W=0;if (EOC=0) E=0;R=0;Tem1=P1; /当ADC0809转换结束,AT89C51打开AD的三态门,AD输出数据else R=1;delay_10ms(10);P0=0XF9; /选通IN-1,转换烟雾信号W=0;W=1;W=0;if (EOC=0) E=0;R=1;Smok1=P1;else R=0;void delay_10ms(uint i) while(i-)uchar i,j,k;for(i=5;i0;i-)for(j=4;j0;j-)for(k=248;k0;k-);void panduan()if(Tem1Tem) a1=1; /当采集的温度
44、高于阈值置1,否则,置0else a1=0;if(Tem2Tem) a2=1;else a2=0;if(Smok1Smok) b1=1; /当采集的烟雾浓度高于阈值置1,否则,置0else b1=0;if(Smok2Smok) b2=1;else b2=0;void baojing()if(a1=a2&b1=b2) /两次采集数据的标志位相同a=a1;b=b1;if(a=1&b=1)P23=0;P21=1;P25=1; /温度烟雾标志位都是1,发生火灾if(a=1&b=0)P24=0;P21=1;P25=1;if(a=0&b=1)P24=0;P21=0;P25=1; /温度烟雾标志位只有一个1,异常if(a=0&b=0) /温度烟雾标志位都为0,正常P25=0;else P21=1;P25=1;