火灾自动报警救生系统.docx
- 文档编号:7192875
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:25
- 大小:288.51KB
火灾自动报警救生系统.docx
《火灾自动报警救生系统.docx》由会员分享,可在线阅读,更多相关《火灾自动报警救生系统.docx(25页珍藏版)》请在冰豆网上搜索。
火灾自动报警救生系统
摘要
即使在科技高速发展的今天,人们仍然需要面对各种各样的安全问题。
但是因为有科技的进步,使人们有了能有效处理它们的手段。
本篇课程设计主要是为人们在日常生活中应对火灾提供一种可行的火灾报警救生控制系统的解决方案。
该火灾报警救生控制系统是为了帮助人们在日常生活中发现并通报火灾,另外可及时对火灾采取有效的控制措施的一种自动消防设施。
它是由火灾检测电路、主控单元电路、声光报警电路和继电器控制消防电路组成。
它可以在火灾发生的初期对燃烧所产生的烟雾,热量等物理量进行检测,并通过检测电路将物理信号转换成电信号交给主控单元进行处理,从而控制报警器和消防电路动作对火灾进行处理。
当对多点进行火灾远程监控时,亦可向监控室上传火灾发生地点和时间。
使人员能够及时、迅速的的对火灾进行处理。
本课程设计主要运用单片机并结合传感器等进行设计,对设计进行了详细的介绍和说明。
关键词:
火灾报警,单片机,检测
第一章火灾自动报警救生系统概述·····························2
1.1系统原理·························································2
1.2系统原理简图·····················································2
1.3系统元件选型·····················································2
第二章硬件电路设·············································5
2.1主控单元电路设计·········································5
2.2火灾检测电路设计·········································7
2.3声光报警电路和继电器控制电路·····························10
第三章系统软件的设计········································11
3.1主要集成器件程序设计流程································12
3.2系统程序流程图··········································14
3.3程序代码················································15
第一章火灾自动报警救生系统概述
1.1系统原理
本火灾报警救生控制系统主要由火灾检测电路、主控单元电路、继电器控制电路和声光报警电路组成。
其工作原理是,在火灾发生时由火灾检测电路对火灾发生时所产生的热量和烟雾进行检测,并将它们转换成电信号交由主控单元电路进行处理主控单元电路对信号进行响应,控制声光报警器进行报警并且使继电器进行动作对火灾进行处理。
1.2系统原理简图
.
依据所要设计系统的原理,确定如图1.1所示。
以主控单元为核心,对外部检测信号做出相应的动作。
1.3系统元件选型
1.3.1主控单元电路
主控芯片选择控制电路中常用的单片机,具体型号选择低成本的,且性能可以满足设计要求的51系列单片机。
这里选择Atmel公司生产的89C51系列单片机。
其主要特性如下:
◎与MCS-51兼容
◎4K字节可编程闪烁存储器
◎寿命:
1000写/擦循环
◎三级程序存储器锁定
◎128*8位内部RAM
◎32可编程I/O线·两个16位定时器/计数器
◎可编程串行通道
◎低功耗的闲置和掉电模式
◎片内振荡器和时钟电路
综上,该单片机可以完美的配合所提供的A/D转换器—ADC0898芯片,满足设计的要求。
1.3.2火灾检测电路
在火灾发生时会产生大量的热量和烟雾,这是最常见的用来检测火灾的物理量。
因此,这里设计火灾检测电路时需要选取可以检测热量和烟雾的传感器。
一、烟雾传感器
烟雾传感器是通过监测烟雾的浓度来实现火灾防范的,常见的烟雾传感器类型有离子式烟雾传感器,光电式烟雾传感器和气敏式烟雾传感器。
若按照检测原理上划分又可以分成下面三类:
(a)利用物理化学性质的烟雾传感器:
如半导体烟雾传感器、接触燃烧烟雾传感器等。
(b)利用物理性质的烟雾传感器:
如热导烟雾传感器、光干涉烟雾传感器、红外传感器等。
(c)利用电化学性质的烟雾传感器:
如电流型烟雾传感器、电势型气体传感器等。
但是不管是什么类型的烟雾传感器,都应符合以下的要求:
(1)能选择性地检测某种单一烟雾,而对共存的其它烟雾不响应或低响应;
(2)对被测烟雾具有较高的灵敏度,能有效地检测允许范围内的烟雾浓度;
(3)对检测信号响应速度快,重复性好;
(4)长期工作稳定性好;
(5)使用寿命长;
(6)制造成本低,使用与维护方便。
因此,这里选用常用的气敏式烟雾传感器MQ-2气体传感器,它属于二氧化锡半导体气敏材料,是表面离子式N型半导体。
当处于200-300°C温度时,二氧化锡吸附空气中的氧,形成氧的负离子吸附,使半导体中的电子密度减少,从而使其电阻值增加。
当与烟雾接触时,如果晶粒间界处的势垒受到该烟雾的调制而变化,就会引起表而电导率的变化。
利用这一点就可以获得这种烟雾存在的信息,烟雾浓度越大,电导率越大输出电阻越低。
另外MQ-2主要还有有以下两个优点:
1)可用于家庭和工厂的气体泄漏监测装置,适宜于液化气、丁烷、丙烷、甲烷、酒精、氢气、烟雾等的探测。
(注意:
更确切的说MQ-2是一款可燃气体探测器。
)
2)广泛的探测范围,高灵敏度/快速响应恢复,优异的稳定性/寿命长,简单的驱动电路。
二、温度传感器
温度传感器是指能感受温度并转换成可用输出信号的传感器。
温度传感器是温度测量仪表的核心部分,品种繁多。
按测量方式可分为接触式和非接触式两大类,按照传感器材料及电子元件特性分为热电阻和热电偶两类。
这里选用常用的数字式温度传感器--DS18B20。
它具有体积小,硬件开销低,抗干扰能力强,精度高的特点。
封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。
耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。
DS18B20的主要技术特性如下:
①、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
②、测温范围-55℃~+125℃,固有测温误差(注意,不是分辨率,这里之前是错误的)1℃。
③、支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。
④、工作电源:
3.0~5.5V/DC(可以数据线寄生电源)
⑤、在使用中不需要任何外围元件。
⑥、测量结果以9~12位数字量方式串行传送。
⑦、不锈钢保护管直径Φ6。
⑧、适用于DN15~25,DN40~DN250各种介质工业管道和狭小空间设备测温。
⑨、标准安装螺纹M10X1,M12X1.5,G1/2”任选。
⑩、PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。
1.3.3声光报警电路和继电器控制电路
声光报警选用常见的发光二极管和蜂鸣器。
继电器控制选用可以由单片机直接控制的继电器。
1.4系统主要结构图
第二章硬件电路设计
2.1主控单元电路设计
本课程设计选用的是ATMEL公司的AT89C51系列单片机,它兼容MCS-51指令集。
管脚图如下:
图2.1AT89C51引脚图
管脚说明:
VCC:
供电电压。
VSS:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P0口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为低八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
表2.1P3口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2INT0(外部中断0)
P3.3INT1(外部中断1)
P3.4T0(计时器0外部输入)
P3.5T1(计时器1外部输入)
P3.6WR(外部数据存储器写选通)
P3.7RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次PSEN有效。
但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。
EA/VPP:
当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
根据AT89C51的技术参数,设计出可以使单片机正常工作的最小系统,包括复位电
路和晶振。
如图2.2和图2.3所示,选用按钮复位电路。
其中
C1和C3用22pF,C1=10Uf,XTAL是12Mhz,R1=1K,R2=10K。
2.2火灾检测电路设计
2.2.1烟雾传感器电路
这里选用的是MQ-2烟雾传感器,其内部原理图如图2.4所示。
MQ-2烟雾传感器有6个引脚,其中中2、5为电阻丝,剩下的4个引脚中1、3为输入引脚,4、6为输出引脚。
其输出为模拟电压量,由气体传感器敏感体表面电阻Rs和负载电阻RL决定。
其连接方式如图2所示。
该传感器需要施加2个电压:
加热电压VH(引脚2)和回路电压VC(引脚1)。
其中VH用于为传感器提供特定的工作温度。
VC则用于为器件提供工作电压。
这里提供的VCC为5v,输出引脚输出的模拟量用ADC0809转化为数字量提供给单片机。
2.2.2ADC0809电路设计
ADC0809是+模数转换芯片,在本设计中主要是通过它将烟雾传感器输出的模拟量转化成可以供单片机处理的数字量,它的引脚如图2.5所示。
1)主要技术指标和特性
(1)分辨率:
8位。
(2)总的不可调误差:
ADC0809为±1LSB。
(3)转换时间:
取决于芯片时钟频率,如CLK=500kHz(不高于640kHz)时,TCONV=128μs。
(4)单一电源:
+5V。
(5)模拟输入电压范围:
单极性0~5V;双极性±5V,±10V(需外加一定电路)。
(6)具有可控三态输出缓存器。
(7)启动转换控制为脉冲式(正脉冲),上升沿使所有内部寄存器清零,下降沿使A/D转换开始。
(8)使用时不需进行零点和满刻度调节。
2)各引脚功能说明
(1)IN0~IN7——8路模拟输入,通过3根地址译码线ADDA、ADDB、ADDC来选通一路。
(2)D7~D0——A/D转换后的数据输出端,为三态可控输出,故可直接和微处理器数据线连接。
8位排列顺序是D7为最高位,D0为最低位。
(3)ADDA、ADDB、ADDC——模拟通道选择地址信号,ADDA为低位,ADDC为高位。
地址信号与选中通道对应关系如表2.2所示。
(4)VR(+)、VR(-)——正、负参考电压输入端,用于提供片内DAC电阻网络的基准电压。
在单极性输入时,VR(+)=5V,VR(-)=0V;双极性输入时,VR(+)、VR(-)分别接正、负极性的参考电压。
(5)ALE——地址锁存允许信号,高电平有效。
当此信号有效时,A、B、C三位地址信号被锁存,译码选通对应模拟通道。
在使用时,该信号常和START信号连在一起,以便同时锁存通道地址和启动A/D转换。
(6)START——A/D转换启动信号,正脉冲有效。
加于该端的脉冲的上升沿使逐次逼近寄存器清零,下降沿开始A/D转换。
如正在进行转换时又接到新的启动脉冲,则原来的转换进程被中止,重新从头开始转换。
(7)EOC——转换结束信号,高电平有效。
该信号在A/D转换过程中为低电平,其余时间为高电平。
该信号可作为被CPU查询的状态信号,也可作为对CPU的中断请求信号。
在需要对某个模拟量不断采样、转换的情况下,EOC也可作为启动信号反馈接到START端,但在刚加电时需由外电路第一次启动。
(8)OE——输出允许信号,高电平有效。
当微处理器送出该信号时,ADC0809的输出三态门被打开,使转换结果通过数据总线被读走。
在中断工作方式下,该信号往往是CPU发出的中断请求响应信号。
表2.2地址信号与通道选择关系
ADDCADDBADDA选中通道
000IN0
001IN1
010IN2
011IN3
100IN4
101IN5
110IN6
111IN7
由于ADC0809无片内时钟且其本身需要一定的时钟信号,所以这里利用AT89C51提供的地址锁存允许信号ALE经D触发器四分频后获得。
单片机ALE脚的频率是其时钟频率的1/6,这里采用12MHz的晶振。
故为12MHz的1/24,为500kHz。
分频电路如图2.6所示。
这里选用集成双D触发器74LS74芯片,其内部集成了两个D触发器,其引脚图如图2.7所示。
2.2.3温度传感器电路设计
DS18B20芯片只有三个引脚,连接方式较为简单,其引脚图如图2.8所示。
这里将DS18B20的VCC引脚接上电源,GND接地即可通过DQ端口读取温度数据,将DQ与单片机I/O口相连接就可以通过单片机进行数据处理。
2.3声光报警电路和继电器控制电路
2.3.1声光报警电路
声光报警电路是在火灾发生时,对人们提供警示的。
这里本着简单可靠的原则进行设计。
(1)光报警电路
这里采用红色的发光二极管,通过三极管搭建的开关电路进行控制,电路图如图2.9所示。
R3=R4=R7=10K
通过单片机的I/O口来控制电路通断,从而控制LED的发光与否。
(2)声报警电路
本设计采用有源蜂鸣器,同样通过三极管搭建开关电路,从而通过单片机的I/O口来进行开关,这样蜂鸣器就可以按照要求进行工作了。
R5=R6=10K,R8=1K
2.3.2继电器控制电路
通过继电器控制电路,可以控制在火灾发生时采取相应的灭火措施,这里同样采用三极管开关。
R9=R10=10K
第三章系统软件的设计
3.1主要集成器件程序设计流程
3.1.1ADC0809程序设计流程
图3.1ADC0809的时序逻辑图
根据ADC0809的时序图,可以进行ADC0809程序的设计,程序的流程图如3.2所示。
图3.2AD0809程序流程图
3.1.2DS18B20程序设计流程
通过阅读DS18B20的数据手册,可以知道其的使用方法,并且根据官方所提供的时序图,可以直观的看出如何控制DS18B20.也可以知道如何对它进行读写操作,这样就可以进行程序的设计了。
下面是DS18B20的时序逻辑图。
图3.3上电初始化时序图
图3.4数据读取时通讯总线的时序图
图3.5数据写入时通讯总线的时序图
根据图3.3、3.4、3.5的时序图,知道了DS18B20工作时需要的条件,首先需要对DS18B20进行初始化,写入转换命令,然后就可以等待转换完成后读取温度,这样就可得到当前的室内温度了。
图3.6就是驱动DS18B20的程序流程图。
3.2系统程序流程图
通过前面对需要编程器件的学习,可以确定出编写系统程序的流程,这里汇总出系统程序的流程图。
图3.7系统程序流程图
3.3程序代码
3.3.1主程序
#include
#include"temp.h"
#include"0809.h"
/***************************************************************************
*函数名:
main
*函数功能:
主函数
*输入:
无
*输出:
无
***************************************************************************/
floatTM;
floatAD;
inttp;
sbitLED=P2^0;
sbitBEEP=P2^5;
sbitREALY=P2^6;
voidmain()
{
ADC0809Init();
LED=0;
BEEP=0;
REALY=0;
while
(1)
{
tp=Ds18b20ReadTemp();
TM=tp*0.0625;
AD=ADC0809ReadValue();
if(TM>=100.0||AD>=3.0)
{
LED=1;
BEEP=1;
REALY=1;
while
(1)
{
LED=0;
Delay1ms(500);
LED=1;
Delay1ms(500);
}
}
}
}
3.3.2温度传感器DS18B20驱动程序
#include"temp.h"
/***************************************************************************
*函数名:
Delay1ms
*函数功能:
延时函数
*输入:
无
*输出:
无
***************************************************************************/
voidDelay1ms(uinty)
{
uintx;
for(;y>0;y--)
{
for(x=100;x>0;x--);
}
}
/***************************************************************************
*函数名:
Ds18b20Init
*函数功能:
初始化
*输入:
无
*输出:
初始化成功返回1,失败返回0
***************************************************************************/
ucharDs18b20Init()
{
uchari;
DSPORT=1;
for(i=0;i<2;i++);
DSPORT=0;//将总线拉低480us~960us
for(i=0;i<250;i++);//延时642us
DSPORT=1;//然后拉高总线,如果DS18B20做出反应会将在15us~60us后总线拉低
for(i=0;i<28;i++);
while(DSPORT)//等待DS18B20拉低总线
{
i++;
if(i>5)//等待>5MS
{
return0;//初始化失败
}
Delay1ms
(2);
}
return1;//初始化成功
}
/***************************************************************************
*函数名:
Ds18b20WriteByte
*函数功能:
向18B20写入一个字节
*输入:
com
*输出:
无
***************************************************************************/
voidDs18b20WriteByte(uchardat)
{
uinti,j;
for(j=0;j<8;j++)
{
DSPORT=0;//每写入一位数据之前先把总线拉低1us
for(i=0;i<1;i++);
DSPORT=dat&0x01;//然后写入一个数据,从最低位开始
i=7;
while(i--);//延时68us,持续时间最少60us
DSPORT=1;//然后释放总线,至少1us给总线恢复时间才能接着写入第二个数值
dat>>=1;
}
}
/***************************************************************************
*函数名:
Ds18b20ReadByte
*函数功能:
读取一个字节
*输入:
com
*输出:
无
***************************************************************************/
ucharDs18b20ReadByte()
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 火灾 自动 报警 救生 系统