基于单片机的火灾报警系统的设计与制作本科毕业设计说明书Word文件下载.docx
《基于单片机的火灾报警系统的设计与制作本科毕业设计说明书Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的火灾报警系统的设计与制作本科毕业设计说明书Word文件下载.docx(40页珍藏版)》请在冰豆网上搜索。
感烟探测器可分为离子型、光电型、激光型和红外线束型四种。
感温探测器根据其感热效果和结构形式可分为定温式、差温式及差定温式三种。
目前,大多数消防系统中使用的是离子感烟探测器、光电感烟探测器及感温探测器[7]。
c)火灾探测器的工作原理
下面就几种常用的探测器的工作原理做简要介绍。
感烟探测器:
该种探测器主要响应燃烧或热解产生的固件、液体微粒即烟雾粒子,主要用来探测可见或不可见的燃烧产物及起火速度缓慢的初期火灾。
离子型主要是利用烟雾粒子改变电离室电流原理而设计的,探测器内部装有放射源的电离室为传感器件;
光电型主要是应用烟雾粒子对光线产生散射及折射、吸收或遮挡的原理而设计,有减光型和散射型,探测器内部有光学系统和红外线光源做探测器件;
红外光束型应用烟雾粒子吸收或散射红外光束的原理而设计,主要包括一个光源,一套光线照准装置和一个接受装置。
感温探测器:
该种探测器主要是利用热敏元件来探测火灾。
在火灾初期阶段,除了有大量烟雾产生外,物质在燃烧过程中会释放出大量的热量,周围环境温度急剧上升。
该种探测器中热敏元件的阻值随温差发生变化,从而将温度信号转变成电信号,并进行报警处理。
1.3.2火灾探测器发展特点
随着应用领域的不断扩大,应用需求不断提高,普通类型的感温、感烟火灾探测报警系统已不能满足需要,运用高新技术的新型探测器在不断研发,其特点是:
a)功能更新
现代火灾探测器的最大特征之一就是判别功能和判别决定权不仅从观念上分离,而且在实际应用中已经分别执行。
早期的判别功能和判别决定权合二为一,由设置在探测器中的传感器件实现,因而处理问题死板且易受干扰。
而现代火灾探测传感器的判别功能和判别决定权由软件控制,能滤除干扰,识别真假火灾,实现火灾智能判断。
b)可靠性提高
火灾探测报警系统可靠性的提高首先体现在用智能技术处理传感器提供的火灾信息。
人们采用多种火灾探测算法和复合多传感等传感方式,为判断火灾提供了更加充分可靠的信息。
模糊逻辑、神经网络等高新技术用于火灾的判别,大大提高了火灾探测的可靠性[8]。
c)报警时间的提前
新型火灾探测器已不局限于对已发生的火灾及时报警,可以在火灾发生前的几小时或几天内,识别潜在的火灾危险性,实现超早期火灾报警。
2总体设计及方案论证
火灾智能监测系统是由传感器、信号变换、单片机及相应的信号显示、输出部分组成。
通过温度、烟雾传感器和红外传感器采集信号,根据差值和内部的软件设计来对温度高低、烟雾浓度和红外辐射等进行检测及控制,及时准确的报警和灭火,实现物资损失降低到最小。
2.1系统设计思想
系统硬件及信号由AT89C51单片机提供,显示模块选用LCD1602,传感器选用温度传感器、烟雾传感器、红外传感器,报警模块是发光二级管和蜂鸣器。
其中LCD1602用来显示温度,当烟雾传感器和红外传感器监测到异常的时候,会点亮发光二级管,同时蜂鸣器长时间发出声响。
2.2方案论证
2.2.1火灾报警系统结构
一个完整的火灾报警系统,应包括以下几个部分:
系统控制模块、火灾探测模块、数据转换模块以及报警模块,其中最重要的应属系统控制模块和火灾探测模块。
系统控制模块主要由MCS-51单片机控制,可显示现场温度和烟雾浓度等;
火灾探测模块则包括温度探测器、烟雾探测器、红外探测器等。
在火灾探测模块探测到火情后,经数据转换模块转换为电信号,传达至系统控制模块并发出火警信号。
系统控制模块是设计的中心,主要由单片机控制,由液晶显示屏显示数据。
在控制模块接收到火警信号后,会发出声光报警,此时可从显示屏上观测火灾现场的温度。
在火灾被扑灭后,会及时解除声光报警。
火灾探测模块是本设计的重要组成部分之一,它至少应含有一个能连续或以一定频率周期探测物质燃烧过程中所产生的各种物理现象、化学现象的传感器,并可向系统控制模块发送探测信号。
其基本功能是对物质燃烧过程中产生的各种热度、烟雾、红外等物理或化学量做出及时响应,通过温度、烟雾传感器和红外传感器采集信号后,供系统控制模块分析处理。
经过单片机与其设定值进行比较后,根据差值和内部的软件设定对温度高低、烟雾浓度和红外辐射进行检测及调控,及时准确的报警。
根据检测的火灾特性不同,火灾探测器可以分为感烟、感温、感光、复合和监测可燃气体等多种类型。
本设计中的火灾探测器的基本功能为感烟、感温和红外探测,其中感烟探测器主要用来探测可见和不可见的燃烧产物,感温探测器主要利用热敏元件来探测火情,红外探测器则用以监测红外辐射。
2.2.2单片机的选择
单片机是本方案的灵魂,所以我们的选择务必慎重。
在众多的单片机中,51系列单片机以其高性能、高速度啊、体积小、价格低廉、可重复编程和方便功能扩展等优点,在市场上得到广泛的应用[9]。
这其中,AT89C51是这几年我国非常流行的单片机,由ATMAL公司开发生产,在原基础上增强了许多特征,如时钟频率更高,使运行速度更快;
采用CHMOS工艺,功耗更低;
工作电压范围更广[10]。
其最大的提高还是其内部程序存储器由原来的ROM或EPROM,转变成Flash存储器,使用更方便,寿命更长,可以反复擦写1000次以上[10]。
综上所述,我们选择AT89C51单片机作为本设计的中心。
3单片机AT89C51概述
AT89C51是美国ATMEL公司生产的低电压、高性能8位单片机。
其片内含4Kbytes的可反复擦写的只读程序存储器(ROM)和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。
单片机的可擦除只读存储器可以反复擦除1000次。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL公司的AT89C51是一种高效微控制器,它为许多嵌入式控制系统提供了一种灵活性高且价廉的方案。
3.1AT89C51单片机简介
3.1.1AT89C51单片机功能概述
AT89C51内部含有8位CPU,片内振荡器,4K字节FLASH程序指令存储器,128字节RAM,21个特殊功能寄存器,32根I/O口线,可寻址各64K的外部数据、程序存储器空间,2个16位的定时器/计数器,5个中断源,2个优先级,1个全双工串行口,位寻址功能,适用于位运算的布尔处理机[11]。
除了128×
8的片内数据存储器、4K×
8程序存储器、中断、串行口、定时器/计数器模块以外,还有4个I/O(P0、P1、P2、P3),其余部分构成了中央处理器CPU。
CPU、存储器、I/O口三部分由片内总线紧密地联系在一起[11]。
3.1.2AT89C51方框图
AT89C51方框图如图3.1所示
图3.1AT89C51内部结构图
3.1.3AT89C51引脚图
AT89C51的引脚图排列如图3.2所示
图3.2AT89C51的引脚排列
3.1.4引脚功能说明
a)电源引脚:
Vcc:
电源引脚。
GND:
地。
b)外接晶体引脚:
XTAL1:
反向振荡放大器的输入端及内部时钟工作电路的输入端。
XTAL2:
反向振荡器的输出端[12]。
c)控制信号引脚:
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/
:
当访问外部存储器时,ALE输出脉冲用于锁存地址的低8位字节。
ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6,因此它可用作对外部输出的脉冲或用于定时。
需要注意的是:
每当用作外部数据存储器时将跳过一个ALE脉冲。
在FLASH编程期间,此引脚用于输入编程脉冲。
若想禁止ALE的输出可在特殊功能寄存器(SFR)区中8EH单元的D0位置位,此时,只有在执行MOVX和MOVC指令时ALE才起作用。
另外,该引脚被略微拉高,单片机执行外部程序时,应设置ALE无效。
外部程序存储器的选读信号。
在外部程序存储器取指令期间,每个机器周期两次
有效,即输出两个脉冲。
在此期间访问外部数据存储器时,这两次有效的
信号将不出现。
/Vpp:
外部访问允许位。
欲使CPU仅访问外部程序存储器(0000H-FFFFH),
必须保持低电平(接地)。
若加密位被编程,复位时内部会锁存
端状态。
当
端保持高电平时(接Vcc),CPU执行内部程序存储器的指令。
在FLASH编程期间,此引脚也用于施加12V编程电源(Vpp)。
d)输入/输出端口引脚:
P0口:
是一个8位漏级开路双向I/O口,每脚可接收8个TTL门电流。
当P0口的管脚第一次写“1”时,被定义为高阻输入。
P0口用于数据存储器或外部程序存储器时,可定义为数据/地址的低8位。
在FLASH编程时,P0口作为原码输入口;
当FLASH进行校验时,P0口输出原码,此时P0口外部必须被拉高。
P1口:
是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收、输出4个TTL门电流。
P1口管脚写入“1”后,通过内部上拉电阻把端口拉到高电平,可用作输入口;
P1口被外部下拉为低电平时,将输出电流。
在FLASH编程和校验时,P1口接收低8位地址。
P2口:
是一个带内部上拉电阻的8位双向I/O口,P2口缓冲器可接收、输出4个TTL门电流。
当P2口被写“1”时,其管脚被内部上拉电阻拉高,此时作为输入口;
作为输入口使用时,由于内部上拉的缘故,P2口的管脚被外部拉低,将输出电流。
当用于访问外部程序存储器或16位地址外部数据存储器时,P2口输出高8位地址数据。
P2口在FLASH编程和校验时接收高8位地址信号和控制信号。
P3口:
P3口是带内部上拉电阻的8位双向I/O口,可接收、输出4个TTL门电流。
当P3口写入“1”后,它被内部上拉为高电平,并用作输入口;
作为输入口时,由于外部下拉为低电平,P3口将输出电流。
P3口也可作为AT89C51的一些特殊功能口,其功能如表3.1所示[13]
表3.1P3口第二功能
端口引脚
第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
(外中断0)
P3.3
(外中断1)
P3.4
T0(定时器/计数器0)
P3.5
T1(定时器/计数器1)
P3.6
(外部存储器写选通)
P3.7
(外部存储器读选通)
3.2AT89C51部分工作特性介绍
3.2.1时钟振荡器
AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。
这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器。
外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈电路中构成并联振荡电路,对外电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度以及温度稳定性。
如果选择使用石英晶体,推荐电容使用30pF(±
10pF);
如果使用陶瓷谐振器建议选择40pF(±
10pF)。
用户也可以采用外部时钟。
采用外部时钟的电路如下图3.3右图所示。
这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。
由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,电脑最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。
图3.3振荡电路
图3.3中左图为内部震荡方式,右图为外部震荡方式。
3.2.2空闲节电模式
AT89C51有两种可用软件编程的省电模式,它们是空闲模式和掉电模式。
这两种方式是控制专用寄存器PCON(即电源中指寄存器)中的PD(PCON.1)和IDL(PCON.0)位来实现。
PD是掉电模式,当PD=1时,激活掉电工作模式,单片机进入掉电工作状态。
IDL是空闲等待方式,当IDL=1时,激活空闲工作模式,单片机进入睡眠状态。
如需同时进入两种工作模式,即PD和IDL同时为1,则先激活掉电模式。
在空闲工作模式状态,CPU保持睡眠状态而所有片外的外设仍保持激活状态,这种方式由软件产生。
此时,片内RAM和所有特殊功能寄存器的内容保持不变。
空闲模式可由任何允许的中断请求或硬件复位终止。
终止空闲工作模式的方法有两种,其一是任何一条被允许的中断事件被激活,IDL被硬件清除,即可终止空闲工作模式,程序会首先响应中断,进入中断服务程序,执行完中断服务程序并紧随RET1指令后,下一条要执行的指令就是使单片机进入空闲模式那条指令后面的一条指令。
其二是通过硬件复位也可将空闲工作模式终止,需要注意的是,当通过硬件复位来终止空闲工作模式时,CPU通常是从激活空闲模式那条指令的下一指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期有效,在这种情况下,内部禁止CPU访问片内RAM,而允许访问其它端口,为了避免可能对端口产生意外写入,空闲模式的那条指令后一条指令不应是一条对端口或外部存储器的写入指令。
3.2.3掉电模式
在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。
退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但不包括RAM中的内容,在Vcc恢复到正常工作电平前,复位应无效,且必须保持一定时间使振荡器重启动并稳定工作。
3.2.4数据查询
AT89C51单片机用数据查询方式来检测一个写周期是否结束,在一个写周期中,如需读取最后写入的那个字节,则读出的数据的最高位(P0.7)是原来写入字节最高位的反码。
写周期完成后,有效的数据就会出现在所有输出端上,此时,可进入下一个字节写周期。
写周期开始后,可在任意时刻进行数据查询。
4报警器硬件设计
设计原理:
温度传感器实时监测温度并将获取的信息传送给单片机,然后在液晶显示屏上显示实时温度;
同时单片机借助烟雾传感器和红外传感器巡回监测烟雾和红外(由中断控制),一旦检测到异常就立刻发出声光报警,只有两项异常全部被排除,系统才能解除声光报警。
当系统出现异常的时候,可以通过复位键对单片机进行控制,使整个系统复位,重新开始检测。
4.1硬件组成
如图4.1,本系统主要由单片机控制模块、温度采集模块、烟雾探测模块、红外探测模块、温度显示模块、声光报警模块几个部分组成。
图4.1硬件组成
4.2单片机控制模块
图4.2单片机控制模块连线
经过综合考虑,本系统的中心控制器选择为AT89C51单片机。
如图4.2所示,P0口用于控制液晶显示屏,显示温度;
P1.0连接温度传感器,用于温度采集;
中断口P3.2、P3.3分别连接烟雾传感器和红外传感器,用于烟雾采集和红外探测;
P2.0是发光二级管,用来显示液晶显示屏是否正常工作;
P1.1、P1.2连接的发光二级管分别用来表示烟雾指标和红外指标是否超标,同P1.3连接的蜂鸣器一起用来实现声光报警。
除此以外,单片机的20脚接地,40脚接电源,18、19脚接12MHz晶振输入端,31脚接电源。
4.3温度采集模块
本系统要求实时显示环境温度,当温度高于常态时发出声光报警。
为了更准确更快速地采集到环境温度,采用温度传感器DS18B20作为温度敏感元件。
4.3.1DS18B20简介
DS18B20是常用的温度传感器,具有独特的单总线接口方式,支持多节点,使分布式温度传感器设计大为简化。
测温时无需任何外围元件,可以通过数据线直接供电,具有超低功耗工作方式。
测温范围为-55℃至+125℃,精度为0.5℃,可直接将温度转换值以16位二进制数字码的方式串行输出,因此特别适合单线多点温度测量系统。
由于传送的是串行数据,可以不需要放大器和A/D转换器,因而这种测温方式大大提高了各种温度测控系统的可靠性,降低了成本、缩小了体积[14]。
DS18B20采用3脚PR35封装或8脚SOIC封装,其内部结构框图如图4.3所示。
其外形小巧,便于使用。
图4.3DS18B20内部结构框图
DS18B20主要包括4个数据部件。
(1)64位激光ROM;
(2)非易失性温度报警触发器TH和TL;
(3)高速暂存器;
(4)CRC的发生器。
DS18B20有两种工作模式,寄生电源工作方式和外接电源工作方式。
与单片机的接口电路如图4.4和图4.5所示,其中图4.4中的DS18B20采用寄生电源方式,其VDD和GND端均接地;
图4.5中DS18B20采用外接电源方式,其VDD端用VPU(+3V至+5V)电源供电[14]。
图4.4寄生电源方式
图4.5外接电源方式
DS18B20是一种可编程的数字温度传感器,它的工作是靠计算机给它发控制命令进行的。
根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:
每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM存储器操作指令,这样才能对DS18B20进行预定的操作。
复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16-60微秒左右,后发出60-240微秒的存在低脉冲,主CPU收到此信号后表示复位成功。
主机检测到DS18B20的存在,便可以向ROM操作命令之一,这些命令及作用如表4.1所示。
可以发现其指令简单,便于操作。
表4.1ROM指令表
指令
约定代码
功能
读ROM
33H
读DS18B20ROM中的编码(即64位地址)
匹配ROM
55H
发出此命令后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS18B20使之响应,为下一步对该DS18B20的读写做准备
跳过ROM
CCH
忽略64位ROM地址,直接向DS18B20发温度变换命令。
适用于单片工作
搜索ROM
F0H
用于确定挂接在同一总线上DS18B20的个数和识别64位ROM地址,为操作各器件作好准备
报警搜索
ECH
执行后只有温度超过设定值上限或下限的片子才做出相应
RAM存储器操作指令主要用于对DS18B20进行读、写、启动等操作。
在DS18B20中有8个随机存储器,和温度测量有关的主要是前4个。
其中第0字节是温度转换值的低8位寄存器,第1字节是温度转换值的高8位寄存器,第2字节是温度报警值的上限寄存器,第3字节是温度报警值的下限寄存器[14]。
可以通过下述指令对它们进行操作,如表4.2所示。
表4.2RAM指令表
写随机存储器
4EH
向DS18B20的温度报警值的上、下限寄存器中写温度报警限值
读随机存储器
BEH
读DS18B20的8个随机存储器
启动温度转换
44H
该命令发出后,DS18B20开始进行温度变换。
转换完毕后,DS18B20把测得的温度值存入编号为0号或者1号的两个8位RAM存储器
复制随机存储器
48H
用于把DS18B20中的报警值存入非易失的EEPROM中
重新调出
B8H
用于把EEPROM中的报警值再次调入随机存储器中
读电源
B4H
该命令发出后,DS18B20将提供其电源模式信息,如果是数据总线供电方式则返回一个“0”,如果是外部供电方式则返回一个“1”
4.3.2DS18B20时序
a)初始化时序
图4.6初始化时序图
b)写时序
图4.7写时序图