基于单片机的火灾报警系统.docx
《基于单片机的火灾报警系统.docx》由会员分享,可在线阅读,更多相关《基于单片机的火灾报警系统.docx(26页珍藏版)》请在冰豆网上搜索。
![基于单片机的火灾报警系统.docx](https://file1.bdocx.com/fileroot1/2022-11/28/f9563c6f-ab9a-4977-a6da-5db057390fad/f9563c6f-ab9a-4977-a6da-5db057390fad1.gif)
基于单片机的火灾报警系统
摘要
本文介绍一种基于单片机的火灾报警系统设计实例。
分别说明了系统的硬件电路设计、软件设计、系统的通讯方式及软件的设计思想。
该系统具有误报率低、性能稳定、传输距离远、实用性强等特点。
同国外相比,国内在智能型火灾报警系统的研究上还是有一定的差距的。
我国的智能型火灾报警系统还是存在诸如可靠性、稳定性差:
探测器信号处理方法单一,智能化程度低:
未能很好解决探测器灵敏度和误报率之间矛盾等问题。
基于火灾报警系统在国内外的的发展状况,这是一项迫切而有意义的设计。
关键词:
单片机火灾报警传感器
Abstract
Itisadesignofafirealarmsystembasedonsinglechip.Itshowsthesystemhardwarecircuitdesign,softwaredesign,communicationsystemsandthethoughtsofsoftwaredesignRespectively.Thesystemhaslowfalsepositive,stableperformance,transmissiondistance,practicalandsoon.Comparedwithotherdevolopedcountries,domesticfirealarmsystemintheintelligentofresearchhavesomedistance.Ourintelligentfirealarmsystemstillexist,suchasreliability,poorstability:
asingledetectorsignalprocessing,lowlevelofintelligence:
notwellresolved,andthefalsealarmratedetectorsensitivityandotherissuesbetweenthecontradictions.Basedonthedevelopmentofbothdomesticallyandinternationallyofthefirealarmsystem,thisisanurgentandmeaningfuldesign.
Keywords:
microcontroller,firealarm,sensor.
4.3.38155的工作方式与基本操作...................................16
概述
第1章引言
火灾自动报警系统,从发展过程来看,大体可分为三个阶段[1]:
第一阶段为多线型火灾自动报警系统,每个探测器除需提供两根电源线外,还需提供一根报警信号线,探测器电源由报警器提供,探测器的信号线均连接到报警显示盘上,报警时点亮相应的指示灯。
此类系统的功能一般以报警为主,辅以一些简单的联动功能(也为多线制),如驱动警铃等,其报警器对外围探测器,无故障检测功能,只会对电源线的断线作出故障反应,安装此类系统比较繁琐,特别是校线工作量较大[2]。
第二阶段为总线型火灾自动报警系统,已采用微处理器控制。
探测器和模块通过总线与控制器实现信号传送。
其探测器的报警形式为开关量,它的灵敏度不可调整,通过硬件决定。
此类系统通过各种模块对各联动设备实行较复杂控制。
此类系统对故障类型不能区分,但已具有系统自检以及对外围器件的故障检验等功能。
目前国内生产的火灾自动报警系统大多数为此类产品。
由于此类产品具有先进的报警和控制功能,施工、安装较为方便,且价格较低,己被大量使用。
第三阶段为智能型火灾自动报警系统,由于采用了先进的计算机控制技术,智能化程度大大提高,探测器的报警形式采用模拟量,并可通过软件对其灵敏度根据使用场合、时间进行设定和调整。
第一章方案论证
1.1系统的主要技术参数
1.报警功能:
系统对32路输入巡回检测,一旦有火情出现,32路声光报警可立刻做出反应,及时发现火情。
当系统处于警戒时,显示时间;报警状态时,记录报警时刻。
2.指示功能:
系统由上位机管理可以立即显示火警信息所在楼层位置及平面分布图。
3.信息反馈功能:
对任何楼层的火警信息,由喇叭或电铃发出报警,使值班人员及在场人员及时发现火警。
4.系统具有可扩展性。
1.2单片机的功能比较
MCS-51系列单片机[5],称为第二代单片机。
8为CPU,4个8位并行口,1个全双工串行口,2个十六位定时器/计数器,它是二级中断,5个中断源。
目前8051已成为第二代工业标准单片机。
ATMEL系列单片机[6],AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。
32条可编程I/O线,两个16位定时器/计数器,6个中断源,可编程串行通道,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
1.3方案的确定
ATMEL单片机在I/O功能[7],种类,数量及系统扩展和CPU处理上都有较高性能。
ATMEL系列单片机可靠性好,易扩展,控制功能强可谓是性价比最佳的八位单片机。
因此根据设计要求,选取ATMEL系列的AT89C51作为实际的单片机控制。
火灾报警系统集散控制需要设计的内容有:
前向通道设计、单片机控制系统硬件设计、人机通道设计、相互通道配置设计。
前向通道:
数据采集应用温度传感器AD590和TG202型离子感烟传感器。
当探测器处于警戒状态时,I/O线为“0”,报警时为“1”。
为了与单片机输入电平相配合,探头的I/O线经过电阻分压后输入,报警时可获得5V左右的电压值。
32路传感器的探测输入信号可通过两片ADC0816进入AT89C51单片机中,对32路信号进行巡回采样检测。
单片机部分[8][9][10]:
它以AT89C51单片机为核心,AT89C51单片机是一个内部有4k闪存微处理器芯片,由于可扩展的需要,要对其接口和存储器加以扩展。
对于接口扩展,由于AT89C51的P0口的负载能力强,它的输出缓冲器能驱动8个LSTTL输入,所以将P0口作数据总线使用。
程序存储器和数据存储器的扩展,是在P0口和P2口上外接一片2764和一片6264芯片即可。
键盘及显示:
8155芯片是一种管理键盘和LED显示器的专用智能控制芯片。
它能对8位共阴极LED显示器或64个LED发光管进行管理和驱动,同时能对多达8×8的键盘矩阵的按键情况进行监视,具有自动消除键抖动并识别按键代码的功能,从而可以提高CPU工作的效率。
8155和微处理器之间采用串行接口,其接口电路和外围电路简单,占用口线少,具有较高的性能价格比。
[11]
第二章前向通道的设计
2.1检测元件的选择
2.1.1温度传感器
AD590是美国模拟器件公司生产的单片集成两端感温电流源[14]。
AD590温度传感器是一种已经IC化的温度感测器,它会将温度转换为电流,在单片机的各种课本中经常看到。
其规格如下:
1、其输出电流是以绝对温度零度(-273℃)为基准,温度每增加1℃,它会增加1μA输出电流
2、可测量范围-55℃至150℃
3、供电电压范围+4V至+30V
图2-1实际应用电路
分析:
1、 AD590的输出电流I=(273+T)μA(T为摄氏温度),因此测量的电压V为(273+T)μA×10K=(2.73+T/100)V。
为了将电压测量出来又务须使输出电流I不分流出来,我们使用电压跟随器其输出电压V2等于输入电压V。
2、 由于一般电源供应较多器件之后,电源是带杂波的,因此我们使用齐纳二极管作为稳压元件,再利用可变电阻分压,其输出电压V1需调整至2.73V
3、 接下来我们使用差动放大器其输出Vo为(100K/10K)×(V2-V1)=T/10,如果现在为摄氏28℃,输出电压为2.8V,输出电压接AD转换器,那么AD转换输出的数字量就和摄氏温度成线形比例关系。
2.1.2TG202烟雾传感器
火灾中气体烟雾主要是CO2和CO。
TGS202气体传感器能探测CO2,CO,甲烷、煤气等多种气体,他灵敏度高,稳定性好,适合于火灾中气体的探测。
如图2-7所示,当TGS202探测到CO2或CO时,传感器的内阻变小,VA迅速上升。
选择适当的电阻阻值,使得当气体浓度达到一定程度(如CO浓度达到0.06%)时,VA端获得适当的电压(设为5V)。
应用电路如图2-4所示:
图2-2TG202应用电路
2.2A/D转换
2.2.1A/D转换器
实现模/数转换的设备称A/D转换器或ADC。
A/D转换接口是数据采集系统前向通道中的一个环节。
数据采集系统从一个或几个信号源中采集模拟信号,并将信号转换为数字形式,以便输入计算机。
只有模拟输量入通道,并且输入计算机接口不是频率量而是数字码时,才用到A/D转换器[16]。
A/D转换器中包括逐次逼近式、双积分式、并行式、跟踪比较式、串并式、电荷平衡式等,目前使用较多的是前三种。
逐次逼近式A/D转换器在精度、速度和价格上都适中,是目前最常用的A/D转换器。
2.2.2ADC0816简介
图2-3ADC0816管脚图
IN0~IN15:
16路模拟量输入端。
ABCD:
通道地址输入端。
ALE:
通道地址锁存信号输入端,在ALE的上升沿,将A,B,C,D的上地通道地址锁存到内部地址锁存器。
MULTIPLEXEROUT:
多路开关输出。
EXPAND:
模拟量输入通道扩展控制端,当EXPAND为低电平时,0816对IN0~IN15的输入通路断开,0816对COMPARATORIN的输入的模拟量进行转换,若再COMPARATORIN端外接一个多路模拟开关,那么输入通道数可根据系统需要加以扩大。
START:
启动信号输入端。
在START的上升沿复位逐次逼近寄存器SAR在STAR的下降沿启动A/D转换器开始新的一次转换。
EOC:
A/D转换结束标志输出线,A/D转换结束后,EOC上升为高电平,从START的下降沿起,经8个时钟周期后,EOC下降为低电平,EOC可作为A/D转换和结束中断请求信号。
CLK:
时钟输入信号,0816的时钟频率范围在10~1200kHz,典型之为640kHz。
D0~D7:
数据输出线。
Vcc:
主电源输入端,取值范围4.75~5.25V
REF(+):
正参考电源输入端REF(+)不大于Vcc。
REF(-):
负参考电源输入端REF(-)不低于地电平。
GND:
公共地线。
OE:
输出选通线,当此端为高电平时,允许数据输出。
REF(+)与REF(-)之间的电压在0.512和5.25之间选择,应与模拟量的变换范围一致。
第三章单片机控制系统硬件设计
3.1处理器AT89C51介绍
3.1.1AT89C51的主要性能
AT89C51的主要性能包括[5]:
(1)片内有4KB可在线重复编程的快闪擦写存储器(FlashMemory)。
(2)存储器可循环写入/擦除1000次。
(3)宽工作电压范围:
Vcc可为2.7V~6V。
(4)全静态工作:
可从0Hz至16MHz。
(5)程序存储器具有3级加密保护。
(6)128×8位内部RAM。
(7)32条可编程I/O线,可编程全双工串行通道。
(8)空闲状态维持低功耗和掉电状态保存存储内容。
[8]
3.1.2AT89C51硬件结构及引脚
图3-189C51引脚图
1.P0口:
P0口是一组8位漏极开路双向I/O口,也即是址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在FLASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
2.P1口:
P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
FLASH编程和程序校验期间,P1接收低8位地址。
本次设计中P1口用作传感器的输入口、加热部分的固态继电器的控制口、声光报警电路以及部分看门狗电路的接口。
3.P2口:
P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口线上的内容(也即特殊功能寄存器SFR区中R2寄存器的内容),在整个访问期间不改变。
FLASH编程或校验时,P2亦接收高位地址和其它控制信号。
4.P3口:
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
作输入端时,被外部拉低的P3口将用上拉电阻输出电流。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二个功能,如表3.2所示。
表3.2P3口第二功能
端口引脚
第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
INT0(外中断)
P3.3
INT1(外中断)
P3.4
T0(定时/计数器0)
P3.5
T1(定时/计数器1)
P3.6
WR(外部数据存储器写选通)
P3.7
RD(外部数据存储器读选通)
本次设计中我们用到了P3口的第二功能。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/
:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对FLASH存储器编程期间,该引脚还用于输入编程脉冲(
)。
如有必要,可通过支特殊功能寄存器区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令ALE才会被激活。
此外,该引脚会被微弱拉商,单片机执行外部程序时,应设置ALE无效。
:
程序储存允许(
)输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次
有效,即输出两个脉冲。
在此期间,当门市部外部数据存储器,这两次有效的
信号不出现。
EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址0000H~FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1:
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端[8]
3.2时钟电路
3.2.1内部时钟方式
利用芯片内部的振荡电路,在XTAL1、XTAL2引脚上外接定时元件,内部的振荡电路便产生自激振荡。
最常用的内部时钟方式采用外接晶体(在频率稳定性要求不高而希望尽可能廉价时,可采用陶瓷谐振器)和电容组成的并联谐振电路。
振荡晶体可在1.2MHZ~12MHZ之间选择。
电容值无严格要求,但电容取值对振荡频率输出的稳定性、大小、振荡电路起振速度有少许影响,电容值可在20PF~100PF之间取值,但在60PF~70PF之间时振荡器有较高的频率稳定性,如图3-2(a)所示。
(a)内部时钟方式(b)外部时钟方式
图3-2时钟电路
3.2.2外部时钟方式
外部时钟方式是利用外部振荡信号源直接接入XTAL1或XTAL2,图2-2(b)为H/WDS型单片机的外部振荡信号源的接入方法。
外部振荡信号接至XTAL2,而内部的反相放大器的输入端XTAL1应接地。
由于XTAL2端的逻辑电平不是TTL的,故外接一个上拉电阻。
在CHMOS电路中,外部振荡信号接至XTAL1,而XTAL2可不接地。
本系统设计采用内部时钟方式,时钟频率为6MHZ为使频率稳定性高,电容应为C1=C2=30PF。
3.3复位电路
3.3.1DS1232的结构
DS1232是美国DALLAS公司生产的微处理器监控电路,采用8脚DIP封装,如图3-3所示:
图3-3DS1232的引脚图
各引脚功能如下:
:
按钮复位输入端;
TD:
看门狗定时器延时设置端;
TOL:
5%或10%电压监测选择端;
GND:
电源地;
RST:
高电平有效复位输出端;
:
低电平有效复位输出端;
:
周期输入端;
Vcc:
电源。
3.3.2DS1232的功能
1、电源电压监视
DS1232能够实时监测向微处理器供电的电源电压,当电源电压VCC低于预置值时,DS1232的第5脚和第6脚输出互补复位信号RST和
。
预置值通过第3脚(TOL)来设定;当TOL接地时,RST和
信号在电源电压跌落至4.75V以下时产生;当TOL与VCC相连时,只有当VCC跌落至4.5V以下是才产生RST和
信号。
当电源恢复正常后,RST和
信号至少保持250ms,以保持微处理器的正常复位。
2、按键复位
在单片机产品中,最简单的按键复位电路是由电容和电阻构成的,如果系统扩展存在需要和微处理器同时复位的其他接口芯片,这种简单的阻容复位电路往往不能满足整体复位的要求。
DS1232提供了可直接连接复位按键的输入端PBRST(第1脚),在该引脚上输入低电平信号,将在RST和
端输出至少250ms的复位信号。
3、看门狗定时器
在DS1232内部集成有看门狗定时器,当DS1232的ST端在设置的周期时间内没有有效信号到来时,DS1232的RST和
端将产生复位信号以强迫微处理器复位。
这一功能对于防止由于干扰等原因造成的微处理器死机是非常有效的。
看门狗定时器的定时时间由DS1232的TD引脚确定,详见下表3.3。
表3.3看门狗定时器定时时间设置(单位:
ms)
TD引脚
连接至
定时时间
最小值
典型值
最大值
地(GND)
62.5
100
250
浮空
250
600
1000
电源(VCC)
500
1200
2000
看门狗定时器的周期输入信号ST可以从微处理器的地址信号、数据信号或控制信号中获得,不论哪种信号都必须能够周期性的访问DS1232,对于MCS51系列单片机,推荐使用ALE信号。
[2][26]本设计中的连线如图3-4所示:
图中RST接89C51的RST口,ST接89C51的ALE口.
图3-4DS1232与单片机的典型接口电路
3.4AT89C51单片机的系统扩展
系统扩展是指单片机内部各功能部件不能满足应用系统要求时,在片外连接相应的外围芯片以满足应用系统要求,它包括程序存储器(ROM)扩展、数据存储器(RAM)扩展、I/O扩展、定时/计数器扩展、中断系统扩展以及其它特殊功能扩展。
本系统进行了程序存储器2764及数据存储器6264的扩展。
3.4.1程序存储器的扩展[4]
单片机都是通过片外引脚进行系统扩展的,所有的外部芯片都通过地址总线控制总线数据总线进行扩展:
本设计采用2764(8K*8)作为外扩程序存储器芯片。
其引脚图和硬件连接如图3-5所示。
89C51的P0口经地址锁存器74LS373与2764的A0~A7相连,P2口的低5位P2。
0~P2。
4接2764的A8~A12,
与
相连,2764的片选信号来自与89C51的P2。
7,当P2。
7=0时,2764的片选信号有效。
2764共有13根地址线,分别与地址总线A0~A12相连,因此,2764所占地址空间为0000H~1FFFH。
A0~A12地址线CE片选线OE输出允许端PGM编程控制信号
(a)2764引脚图
(b)2764与89C51的接口电路
图3-52764的引脚图和与AT89C51的硬件连接图
3.4.2数据存储器的扩展设计[4]
1、数据存储器的扩展设计
6264是8K×8位的静态随机存储器芯片,它是采用CMOS工艺制作,由单+5v供电,额定功率200mW,典型存取时间为200ms,为28引脚双列直插式封装,[4][8]其管脚如图3-8所示:
图3-66264引脚图
6264的操作方式如表3.4所示:
表3.46264操作方式
OE
CE
WE
方式
D0~D7
H
X
X
未选中
高阻
L
L
H
读
DOUT
L
H
L
写
DOUT
L
L
L
写
DOUT
6264与89C51的硬件连接如图3-7所示。
图3-7626与AT89C51的接口电路图
第四章人机通道配置及接口
4.1键盘结构与接口
本设计采用行列式键盘结构,采用行列式键盘是用I/O口线组成行、列结构,按键设置在行、列的交点上。
因此,在按键数量较多时,可以节省I/O口线。
[2][14]
本设计的行列式键盘接口采用8155芯片,其原理将在4.2节中进行讲述。
4.2显示器与显示电路
LED显示器在单片机应用系统中通常使用的是七段LED。
LED显示器有静态显示与动态显示两种方式。
在多位LED显示时,为了简化电路,降低成本,将所有位的段选线并联在一起,由一个8位I/O口控制,而共阴极点或共阳极点分别由相应的I/O口线控制。
本设计便采用了动态显示方式。
图4-1就是一个8位LED动态显示器电路。
八位LED动态显示电路只需要两个8位I/O口。
其中一个控制段选择,另一个控制位选。
所有位的段选码皆由一个I/O控制,因此,在每个瞬间,八位LED只可能显示相同的字符。
要想每位显示不同字符,必须采用扫描显示方式。
即在每一瞬间只使某一位显示相应字符。
在此瞬间,段选控制I/O口输出相应字符段选码,位选控制I/O在该显示送入选通电平。
如此轮流,使每位显示该位应显字符,并保持延时一段时间,以造成视觉暂留效果。
[12]
图4-1LED动态显示器电路
4.38155的原理介绍
4.3.18155的引脚及功能介绍
8155包括256个字节的RAM存储器,最快存储时间400ns,二个可编程的14位定时器/计数器,6位并行口可采用“应管式信息交换”的工作方