基于单片机的烟感报警器毕业设计论文1_第1页
基于单片机的烟感报警器毕业设计论文1_第2页
基于单片机的烟感报警器毕业设计论文1_第3页
基于单片机的烟感报警器毕业设计论文1_第4页
基于单片机的烟感报警器毕业设计论文1_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要本设计设计一个烟感报警器,通过传感器 (包括温感和烟感)将现场温度、烟雾等信号转化为可检测的电信号,放大和滤波电路将传感器输出的电信号送入a /d转换电路 ,完成烟雾传感器和温度传感器输出的模拟信号到数字信号的转换,单片机判断现场是否发生火灾。若发生火灾,系统会驱动蜂鸣器和指示灯报警。由于系统采用高性能的单片机芯片为核心和高灵敏度的烟感传感器,而且利用声音和指示灯两种报警形式进行报警提示,大大的提好了系统的精确性和可靠性。关键词 单片机 at89c51 adc0809 传感器 summarythe design of the design of a smoke alarm, the sc

2、ene temperature, smoke, etc. signal into electrical signal detected by the sensors (including temperature sensitive and smoke), amplification and filtering circuit of the sensor output electrical signal fed to the a / d converter circuit, the completion of the smoke sensor and temperature sensor out

3、put analog signal to digital signal conversion, the microcontroller to determine whether the site fire. if a fire occurs, the system will drive the buzzer and the alarm indicator. as the system uses high-performance microcontroller chip as the core and high sensitivity smoke sensors, and the use of

4、sound and light form of two alarm alarm, much of the good accuracy and reliability of the system.keywords at89c51 mcu; adc0809 sensor 目 录1 引言31.1 课题研究的背景和意义31.2本文内容的结构安排32 火灾报警系统整体方案设计42.1火灾的烟雾产生过程和温度升高过程42.2.1 系统硬件总体构架52.2.2 系统软件总体构架62.3系统主要器件的选择62.3.1 传感器的选择62.3.2 单片机芯片的选择112.3.3a/d转换芯片的选择123 火灾自动

5、报警系统硬件设计133.1 信号放大和滤波电路133.2晶振电路与复位电路153.2.1晶振电路153.2.2 复位电路153.3声光报警电路163.3.1声音报警器163.3.2光报警器173.4 数据采集电路174 火灾报警系统程序设计204.1软件开发环境204.2火灾报警系统程序设计204.2.1 据采集程序214.2.2火灾判断与报警程序224.3软件调试245 总结24参考文献25附录26致谢271 引言1.1 课题研究的背景和意义 随着社会和科技的发展,人们越来越多的使用电子产品和煤气,天然气,由此导致的火灾隐患也越来越多,再者还有吸烟和烟花导致的火灾给人类、社会和自然造成的危害

6、越来越大,它不仅毁坏物质财产,而且还直接危胁人们的生命安全,给人们的心灵造成极大的伤害。大量残酷的火灾教训让人器的话可以大大降低人员的伤亡,减少不必要的财富和生命损失。火灾报警器就是为了满足这一需求而研制的,并且火灾报警器得自身功能随科技的发展和人们需求也在不断地提高,在功能、结构、形式等方面不断地完善。们逐渐认识到火灾预防,火灾报警和消防工作的重要性,如果有火灾报警有的火灾自动报警器能在火灾发生之前提前检测到火灾的即将发生,它能根据火灾的早期特征烟雾或温度的变化检测到火情并及时报警告知人们做好预防,可将火灾带来的生命财产损失降到最低限度。火灾自动报警系统能对火灾进行实时监测和准确报警,有着防

7、止和减少火灾危害、保护人身安全和财产安全的重要意义,减少了不必要的经济损失和人员伤亡。1.2本文内容的结构安排1:绪论。主要介绍课题的研究背景和意义和论文的章节安排。2:介绍了烟感报警器的原理,选择合适的传感器 ,给出烟感自动报警系统的总体设计构架,分别给出硬件和软件的整体构架,并一一介绍硬件系统的主要器件选型。3:烟感报警系统硬件设计,详细介绍了传感器信号放大电路,滤波电路,单片机处理电路及声光报警电路,并给出相应的设计原理图。4:烟感报警器的软件程序设计,介绍主程序,初始化程序,数据采集子程序火灾判断与报警子程序等。5:对本次论文的撰写进行总结,并对烟感报警器的发展前景进行展望。2 火灾报

8、警系统整体方案设计2.1火灾的烟雾产生过程和温度升高过程一般可燃物在燃烧时先产生燃烧气体,继而产生烟雾,在氧气充足的条件下就会完全燃烧而产生火焰,发出可见光和不可见光,并散发出大量的热,使环境温度升高。起火过程中,刚开始会产生大量的烟雾且持续的时间相对较长,而此时现场的环境温度还不是太高没有骤变,若此时烟感传感器感应到了烟雾就可以及时报警并在火势没扩大之前让人们提前预防和撤离,这样就可以把火灾损失控制在最小限度。等到火焰燃烧后,它会快速蔓延,产生大量的热而导致环境温度的升高,若能感受到温度的变化而报警提醒人们就可以比较及时地控制火灾。若以此硬件设计中我会加入温度传感器和烟感传感器配合工作,互补

9、各自的不足,大大的降低了报警器的误报率 ,起火过程曲线如图2.1所示。图2.1 起火过程曲线2.2系统总体方案设计2.2.1 系统硬件总体构架单片机a/d转换 电路放大,滤波 电路烟感,温度 传感器烟感报警系统主要由烟感数据采集模块、单片机控制模块、驱动声光报警模块组成。图2.2为火灾报警系统的结构框图。声光报警电路 2.2 系统结构框图 单片机是整个报警系统的控制核心,它的工作原理是:先通过传感器 (包括温感和烟感)将现场温度、烟雾等信号转化为可检测的电信号,放大和滤波电路将传感器输出的电信号送入a /d转换电路 ,完成烟雾传感器和温度传感器输出的模拟信号到数字信号的转换,单片机判断现场是否

10、发生火灾。若发生火灾,系统会驱动蜂鸣器和指示灯报警。本火灾自动报警系统具有以下功能:(1)声音和灯光双重报警功能。(2)系统自故障提醒功能:硬件发生故障时,会发出故障提醒信号。(3)异常报警功能:环境中的烟雾浓度或温度较高时,能发出提示信号提醒人们注意,使人们早有防范。(4)火灾报警功能:火灾真正发生时也就是温度和烟雾都较高时,会发出声光报警信息。2.2 系统软件总体构架系统采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序的调用实现的。主要包括数据采集子程序、火灾判断程序,指示灯显示程序和驱动蜂鸣器报警子程序等,系统程序流程图如图2.3所示。.图2.3 程序流程图维了降低误报率,

11、本系统对信号进行多次采集多次判断,最后再综合判断的结果做出最终的控制。主程序是一个无限循环体,其流程是:先对系统的各部分包括单片机各个端口输入输出的设置、外围驱动电路和数据存储电路等完成初始化,再对程序进行初始化,最后执行火灾报警系统中的数据采集任务,数据转换任务,查询判断任务和判断后的驱动各状态。2.3系统主要器件的选择2.3.1 传感器的选择l)烟感传感器简介烟感探测器可以分为离子感烟探测器和光电感烟探测器,.烟感传感器是火灾报警系统的重要组成部分,具有非常好的预警功能,它是整个系统正常运行的关键。当有火灾时,它会把火灾产生的烟雾非电量信号转变为电量信号送给单片机控制器。其特点是模拟量传输

12、,跟随非电量参数的变化而变化16。以下对几种常见烟感传感器作一介绍.(a)半导体烟雾传感器(半导体气敏传感器)半导体烟雾传感器一般包括用氧化物半导体陶瓷材料作为敏感体制作的烟雾传感器和用半导体器件制作的烟雾传感器。半导体烟雾传感器的原理是:气体在半导体表面的氧化和还原反应导致敏感元件阻值变化。半导体烟雾传感器一般可分为电阻式和非电阻式。当气敏元件接触到气体时,半导体的阻值会发生变化,利用传感器输出端阻值的变化来测定或控制气体的有关参数,这种类型的传感器称为电阻式半导体气敏传感器;当场效应管在接触到气体时,场效应管的电压将随周围气体状态的不同而发生变化,利用这种原理制成的传感器被称为非电阻式半导

13、体气敏传感器。 (b)接触燃烧式传感器 原理:当易燃烟雾接触这种被催化物覆盖的传感器表面时会发生氧化反应而燃烧。接触燃烧式气体传感器的检测元件一般为铂金属丝(也可表面涂铂、钯等稀有金属催化层),使用时对铂丝通以电流,保持300400的高温,此时若与可燃性气体接触,可燃性气体就会在稀有金属催化层上燃烧,因此铂丝的温度会上升,铂丝的电阻值也上升;通过测量铂丝的电阻值变化的大小,就知道可燃性气体的浓度。使用接触燃烧式传感器,其最大的缺点是探头很容易发生阻缓和中毒现象。一般在连续使用两个月后应对该传感器进行维护。这无形中加大了工作人员的工作量,同时增加了报警器的维护成本。(c)电化学传感器 电化学传感

14、器由膜电极和电解液封装而成。电化学气敏传感器原理:利用液体(或固体、有机凝胶等)电解质,其输出形式可以是气体直接氧化或还原产生的电流,也可以是离子作用于离子电极产生的电动势,即烟雾浓度信号把电解液分解成阴阳带电离子,通过电极将信号传输出。它的优点是:反映速度快、准确、稳定性好、能够定量检测,但寿命较短(大约两年)。它主要适用于毒性烟雾检测。目前国际上绝大部分毒气检测采用该类型传感器。 (d)高分子烟雾传感器 高分子烟雾传感器最近几年发展很快。高分子气敏元件在遇到特定烟雾时,电阻、介电常数、材料表面声波传播速度和频率、材料重量等物理性能会相应发生变化。高分子气敏元件由于具有易操作性、工艺简单、常

15、温选择性好、价格低廉、易与微结构传感器和声表面波器件相结合,在检测毒性烟雾和食品鲜度等方面具有重要作用。高分子烟雾传感器灵敏度高,选择性好,且结构简单,能在常温下使用,可以弥补其它烟雾传感器的不足。 (e) 离子感烟传感器离子感烟传感器对于烟雾气颗粒检测很有效,可测烟雾粒的直径范围为0.03um-10um,它在内外电离室里面有放射源镅241。它会使两极板间空气分子电离为正、负离子,使原来不导电的空气带电。当火灾发生时,正离子和负离子被吸附到烟雾粒子上,使正、负离子相互中和的概率增加,这样烟雾粒子浓度大小可以以电流变化量大小表示出来,实现对火灾参数的检测。 (g)光电式感烟传感器 光电式感烟传感

16、器由光源、光敏元件和电子开关组成。正常情况下,光源发出的光,通过透镜射到光敏元件上,使电路维持正常,如果有烟雾,到达光敏元件上的光就显著减弱,光敏元件根据光强弱的变化变成电的变化,光电式感烟探测器发展很快,种类不断增多,就其功能而言,它能实现早期火灾报警,除应用于大型建筑物内部外,还特别适用于电气火灾危险性较大的场所,如计算机房、仪器仪表室和电缆沟、隧道等处。 (2)温度传感器温度传感器一般分为定温式和差温式。温度传感器只有在温度发生较为大的变化时才能检测到,而温度突然升高时火灾已经发生,火苗已经出现,所以温度传感器检测不适用于火灾发生的早期,但可在火灾发生时烟雾较少时再次报警,它往往感测的范

17、围较小,一般安装在不宜安装感烟探测器的区域。这里就不一一介绍了。2)烟感传感器的选择本设计中烟感传感器采用的是离子型感烟传感器,它的内部有微量的放射性物质媚(am)241,由于金属电极覆盖着传感器,所以放射物质不会泄露。它对灰白、白色和黑色烟雾都比较敏感,最大不足是受环境湿度对它影响比较大。 nis-09c传感器的功耗比较低也普遍适用,灵敏度也比较高。nis-09c离子烟雾探测器探测到的是烟雾浓度模拟量,烟雾浓度p和输出电压v之间是近似线性的关系,其特性曲线方程:v=-0.3p+5.6。3)温度传感器温度探测器使用的是集成温度传感器lm94022,因为它工作电压低且工作电压范围宽,又能与模数转

18、换器配合使用。该传感器属于高精度模拟输出cmos温度传感器,其主要特性如下:(1)工作电压低,在1.5v电压下就可工作;且工作电压范围宽,是1.55.5v;(2)静态电流小(3)末级为推挽输出,输出电压与感测的温度成反比,确保芯片即使在较高的温度范围内仍可保持极高的灵敏度;(4)可提供4个不同增益让用户自行选择,其中包括-5.5mv/ 、-8.2 mv / 、-10.9mv /及-13.6mv /;(5)可检测的温度范围宽, -50至150都可以;gs0、gs1是lm94022的灵敏度选择输入端,当给它们施加不同电平时,就会有有4种不同的灵敏度,用户可以选择适合的灵敏度,如表2.3所示(温度升

19、高输出的电压反而减小,所以灵敏度为负值)。根据测量温度的范围和系统电路的工作电压选择比较合理的。要求高电平大于0.5v ;低电平小于0.5v。表2.3 lm94022的4种灵敏度gs0gs1灵敏度典型值(mv/)00-5.5 01-8.210-10.911-13.6lm94022的输出特性如图2.5所示,测量温度与输出电压在不同灵敏度时的特性。输出电压随温度升高而下降,其灵敏度为负值。从图可看出,lm94022的输出电压与感测的温度是反比关系,并且其线性度极好。在vdd为5v时,不同灵敏度的几个特定温度值时的输出电压如表2.5所示(典型值)。图2.5lm94022的输出特性表2.4 vdd为5

20、v,t为25时的输出电压值被测温度gs=00(mv)gs=01(mv)gs=10(mv)gs=11(mv)-501299195526163277-251168176723662965010341565210026332589813651831229850760115915581958续表2.4 vdd为5v,t为25时的输出电压值被测温度gs=00(mv)gs=01(mv)gs=10(mv)gs=11(mv)75619949129016091004767379971257125332521711901150183301420593按表2.4的数据计算出的灵敏度值与表2.3给出的典型灵敏度有一些

21、差值。例如,在gs=00时,-25时的输出电压为1168 mv,-50时的输出电压为1299 mv,则其平均灵敏度为-5.24 mv /;50时的输出电压为760 mv,75时的输出电压为619 mv,则其平均灵敏度为5.64 mv /。表2中gs=00时,灵敏度为-5.5 mv /。2.3.2 单片机芯片的选择单片机是烟感报警器系统最重要的部分,可以说是它的心脏。它用来接收信号并根据判断结果驱动报警装置。51系列单片机的优点是价钱便宜,程序空间大,i/o口多,它是检测系统中比较理想的选择。本设计使用的控制芯片是atmel公司生产的at89c51,高性能cmos8位微处理器。at89c51是一

22、个低功耗高性能单片机,片内置通用8位中央处理器(cpu)和flash存储单元,可灵活应用于各种控制领域。40个引脚, 2个全双工串行通信口。at89c51的引脚图如图2.6所示。芯片可以按照常规方法进行编程,也可以在线编程,其将通用的微处理器和flash存储器结合在一起,能反复擦写有效地降低开发成本。要性能参数如下:本设计主要采用at89c51芯片。at89c51具有如下特点:40个引脚,4k bytes flash片内程序存储器,128 bytes的随机存取数据存储器(ram),32个外部双向输入/输出(i/o)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通

23、信口,看门狗(wdt)电路,片内时钟振荡器。图2.6 at89c51芯片的引脚图2.3.3a/d转换芯片的选择 a/d转换电路采用的数模转换芯片是adc0809,adc0809是8位8通道的,由8路模拟开关、地址锁存与译码器、8位a/d转换器和三态输出锁存缓冲器组成,芯片引脚图如图2.7所示。图2.7 adc0809芯片的引脚图adc0809具有以下功能:(1)8位分辨率。(2)1lsb的不可调误差范围。(3)供电电压为+5v,外部提的供基准电压,+5v是典型值,此时允许输入模拟电压范围为05v。(4)多路开关可选通8个模拟通道,允许8路模拟信号分时输入。(5)输出锁存器可存放和输出转化得到的

24、数字量。(6)转换时间为100s左右,。3 火灾自动报警系统硬件设计3.1 信号放大和滤波电路由于传感器输出的模拟信号比较微弱,且含有干扰信号,所以需要把感应到的信号进行放大和滤波。3.1.1温度传感器的放大与滤波电路温度传感器使用的是高精度模拟输出cmos温度传感器lm94022,该传感器的末级为推挽输出,检测的温度与输出的电压成反比关系,也就是输出电压越低温度越高;本设计温度传感器灵敏度选择-5.5mv/,所以lm94022的gs0和gs1端口都接地,温度传感器的放大和滤波电路如图3.1所示。图3.1 温度传感器的放大和滤波电路电路设计中要求高输入低输出,故放大电路、滤波电路的前置电阻r4

25、、r8的阻值设为10k。由于运放lm324的输入级是差动放大电路,它的两端输入回路参数要求对称,即,故,。依据运算放大器“虚短”、“虚断”特性,知。故电压放大倍数为:, (3-1)3.1.2烟雾传感器的滤波电路选择的nis-09c烟雾传感器输出电压较大,所以不需要放大烟雾信号,所以对信号只进行滤波处理就可以了,烟雾信号滤波电路如图3.2所示。由于温度、烟雾信号调理电路运放lm324接直流电源,电路中有直流,所以在电路中设计了起隔直通交的电容。系统采用固定门限检测法判断火灾是否发生,温度限制值设定为57,烟雾浓度阈值设定为3.2%每英尺,超过此值就会报警。图3.2 烟雾信号滤波电路低通滤波器lp

26、f电路的电压放大倍数为: (3-2) 用取代s,且令,得出电压放大倍数为: (3-3) 由于为信号频率二次幂的函数式,故为二阶lpf。设带通截止频率为,则当时,上式的分母的模等于,可解出二阶lpf的上限截止频率为: , (3-4)二阶低通滤波电路的衰减斜率可达-40db/十倍频,但是又由于远离,即在处,信号的放大倍数已急剧下降,所以该滤波电路以降低滤波器通频带为代价来获得滤波器衰减斜率。3.2晶振电路与复位电路3.2.1晶振电路晶振电路视为单片机at89c51工作提供时钟信号的,芯片中有一个高增益反相放大器,该放大器的输入端引脚是xtal1,输出端引脚是xtal2。这个放大器与作为反馈元件的片

27、外石英晶体或陶瓷谐振荡器一起构成自激振荡器。电路中的外接石英晶体这一感性原件及电容c1,c2接在放大器的反馈回路中构成并联振荡回路,系统的晶振电路如图3.3所示。由于外接电容c1、c2的容量大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性,如果使用石英晶体,电容的容量大小范围为;如果使用陶瓷谐振,则电容容量大小为。本设计中使用石英晶体,电容的容值设定为30pf。3.2.2 复位电路 复位是单片机硬件初始化操作,经复位操作后,单片机系统才能开始正常工作.系统在启动时都需要复位,这样cpu和系统各部件就处于需要的初始状态以便从初始状态开始工作。at89c51的复位信号由

28、芯片的rest引脚输入。当输入的复位信号延续两个机器周期以上的高电平时为有效则这时cpu就可以完成系统的复位。单片机系统的复位操作比较简单,只有两种复位方式,即手动复位和加电复位,本设计采用的是手动复位方式。手动按钮复位通过专用的复位电路来实现, vcc当人为按下按钮时,产生的复位信号通过rest引脚送入单片机进行系统复位操作。复位电路中s2为手动复位开关,电容c1可避免高频谐波对电路的干扰。at89c51的复位电路如图3.3所示。图3.3 晶振电路与复位电路3.3声光报警电路3.3.1声音报警器声光报警电路在at89c51的控制下,可以根据不同的情况(火灾、异常、故障),发出不同的声光信号报

29、警。声音报警电路如图3.4所示。由于蜂鸣器的工作电流一般比较大,以致于单片机的i/o 口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管来放大电流就可以了。声报警电路由单片机的p10引脚进行控制,当p10输出的电平为高电平时,三极管导通,蜂鸣器的电流形成回路,蜂鸣器响;否则,三极管截止,蜂鸣器不发出声音。图3.4 蜂鸣器报警3.3.2光报警器光报警电路路如图3.5,由单片机的p2口进行控制,p2口的p2.3p2.6分别控制4个发光二极管,予以光报警,如图所示。p2.3p2.6控制的灯依次为红色(火灾信号灯)、红色(异常信号灯) 、黄色(故障信号灯)和绿色(正常信号灯) 。当p2.3p

30、2.6输出低电平时,对应的信号灯便会发光报警。图3.5 光报警3.4 数据采集电路本设计中的a/d转换器使用的是通用8位芯片adc0809,芯片的几个重要管脚功能如下:(1)ale:地址锁存允许信号,对应ale上跳沿,a,b,c地址状态送入地址锁存器中。(2)地址锁存与译码电路完成对a,b,c三条地址位进行锁存和译码,其译码输出用于通道选择。(3)a,b和c为地址线,模拟通道的选择信号。 (4)start:转换启动信号,当start上跳沿时,所有内部寄存器清零;下跳沿时,开始进行a/d转换;在转换期间,start应保持低电平。(5)eoc:转换结束信号。当eoc=0时,正在进行a/d转换;eo

31、c=1时转换停止。(6)oe:输出允许信号,用于控制三态输出锁存器向单片机输出转换得到的数据。oe1,输出转换得到的数据;oe0,输出数据线呈高电阻。由于本设计中数模转换芯片使用的是adc 0809,其工作的时钟信号频率为500khz,此芯片中无时钟电路,时钟信号由外部at89c51的ale端口提供。系统at89c51与adc0809接口电路如图3.6所示。图3.6 at89c51与adc0809接口电路当at89c51的ale端口不访问外部存储器时,at89c51的ale端以时钟振荡频率的1/6输出固定的正脉冲信号,故晶振设定12mkz,再经过二分频电路,单片机即可向adc0809输出500

32、khz的时钟信号。二分频电路由d触发器实现,r、s端接地,d接q非,q端作为输出端,clk接at89c51的aled端。d触发器的特性方程为 (3-5)由于当cp=1时,d触发器有效;cp=0时,触发器保持原来状态。故d触发器能实现对ale端口的信号二分频28。由于本火灾报警系统只采集温度、烟雾信号,经过调理的温度、烟雾信号分别进入adc0809的in-0和in-1端口,其余输入引脚接地,8个数字量输出引脚接at89c51的p3口。单片机的p3口接受adc0809传输来8位数字量,向a/d输出的8位地址经地址锁存器74ls373锁存,选择低3位地址作为a/d的通道选通地址。adc0809通道选

33、通如表3.1。表3.1 adc0809通道选通通入通道in0in1in2in3in4in5in6in7a00001111b00110011c01010101本设计使用地址锁存器是74ls373,当三态允许控制端oe为低电平时,输出端o0o7为正常逻辑状态,可用来驱动负载或总线。当oe为高电平时,o0o7呈高阻态,既不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。图中三态允许控制端oe接地,表示三态门一直打开。锁存允许端le为高电平时,输出端o0o7 状态与输入端d0d7状态相同;当le由“1”变为“0”时,数据输入锁存器中。le端接至单片机的地址锁存允许ale端。当p11=0时,

34、与写信号wr共同选通adc0809。图中ale信号与start信号连在一起,在wr信号的前沿写入地址信号,在其后沿启动转换。当ale端口变为高电平,将74ls373输出端的低3位地址存入a/d的地址锁存器中,此地址经译码选通8路模拟输入之一到比较器。start上升沿将a/d内的寄存器清零,下降沿启动 a/d转换,之后eoc端变成低电平,指示转换正在进行。例如,输出地址f8h可选通通道in0,实现对温度传感器输出的模拟量进行转换;输出地址f9h可选通通道in1,实现对烟雾传感器输出的模拟量进行转换。adc0809的转换结束状态信号eoc接到at89c51的int1引脚,当a/d转换完成后,eoc

35、变为高电平,表示转换结束,结果数据已存入锁存器,并产生产生中断。当at89c51知道a/d转换完成后,a/d端口oe电平变为高电平时,输出三态门打开,转换结果的数字量输出到单片机上。4 火灾报警系统程序设计4.1软件开发环境本系统采用c语言进行程序设计。因为c语言的描述由函数组成,是一种结构化的程序设计语言,所以更容易实现模块化,而且具有可读性好,易于移植等优点,数据结构方面,可以使用结构体和数组,能够处理复杂的数据,可用于实时处理系统。本系统的软件编程使用的是keil c51,系统兼容单片机c语言软件开发。 此软件不但具有丰富的库函数而且集成开发调试工具功能强大。还有keil c51生成的目

36、标代码有非常高的效率,容易理解。在开发大型软件时更能 体现高级语言的优势。4.2火灾报警系统程序设计火灾报警系统控制器上采用at89c51作为主控芯片,其主要功能包括:控制io端口、逻辑判断处理、驱动外部电路和a/d采样信号等,该部分是火灾报警系统智能化的集中体现和关键。为了便于系统维护,在火灾报警系统的软件设计中采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。既使得程序结构清晰,又便于以后进一步扩展其功能。本系统主要包括主程序、温度烟雾数据采集子程序、火灾判断与报警子程序等。系统程序流程图如图4.1所示。图4.1 程序流程图主程序是一个无限循环体,其流程是:首先在上

37、电之后系统的各部分包括单片机输出输入端口的设置、数据存储电路、外围驱动电路等完成初始化,接下来执行火灾报警系统的数据采集程序、火灾判断、报警程序。系统初始化后,at89c51的p20和p30口为低电平,p21、p22和p23口为高电平,所以只有绿灯d2亮,d1、d3、d4不亮,蜂鸣器不报警。4.2.1 据采集程序数据采集是火灾报警系统中的重要环节。为了降低误报率,系统设计时对温度烟雾采用了两次采集、两次判断的方法。每次采集温度烟雾数据后,将数据存入单片机的寄存器,然后在火灾判断程序中,将采集的数据与设定的阈值进行比较,判断现场是否发生火灾。具体流程是:系统和程序初始化后,驱动adc0809的i

38、n0对温度信号进行a/d转换,单片机接受转换好的数据,存入寄存器,由int1中断服务程序完成;系统延时10ms,驱动adc0809的in3对烟雾信号进行a/d转换,转换完成后存入寄存器。系统延时50ms,进行第二次温度烟雾信号采集,将转换好的数据存入寄存器中。单片机每次驱动a/d转换后等待外部中断1,当adc0809的eoc端变为1时,即中断到来,说明a/d转换已经完成,通过中断服务程序读取转换得到的数据。由于设计采用的是模块化设计,系统实现报警功能是通过调用子程序实现的。在数据采集子程序中,一次温度烟雾信号采集延时10ms,是让adc0809准备好进行下一次信号转换。当系统采集2次温度烟雾信

39、号后,转换好的数据存入单片机的寄存器中,系统再调用火灾判断子程序。系统温度烟雾信号采集程序流程图如图4.2所示。图4.2 数据采集流程图4.2.2火灾判断与报警程序1.火灾报警数据处理方法固定上限值比较法是使用最早,且应用最广泛的火灾探测方法,优点是计算量小且易于实现,它有个固定的温度和烟雾信号的上限值,当检测到的温度和烟雾信号幅值大于固定上限值时发出报警,小于则不报警。此烟感传感器信号是,与固定上限值比较信号为,间函数为t ,用固定上限检测如下式: , (4-1)其中,说明有火灾发生,说明没有火灾发生,s为报警上限值。火灾报警系统中使用的是温度传感器lm94022和离子烟雾传感器nis-09

40、c,烟雾传感器输出电压v与烟雾浓度p关系为:v=-0.3p+5.6,温度传感器使用的灵敏度是-5.5mv/。在本设计中报警温度设为57,烟雾报警浓度设为3.2英尺(参照市面销售的火灾报警器温度烟雾的报警临界值)。经过换算可得出温度烟雾传感器输出火灾报警临界电压值为: , (4-2)2.火灾判断与报警系统对温度和烟雾进行了两次数据采集与判断,每次信号采集后根据得到的数据与设定的阈值比较,当温度57,温度异常,置寄存器变量a为1,否则为0;当烟雾浓度3.2,烟雾浓度异常,置寄存器变量b为1,否则为0。综合两次温度烟雾信号的采集,根据温度和烟雾的寄存器变量a和b的状态,判断现场情况:2个寄存器变量均

41、为0,表示情况正常;2个中仅有1个为1,表示情况异常;2个均为1,表示有火灾发生。系统对现场进行报警判断后,间隔15s后(通过系统的延时程序实现),再一次采集现场的温度烟雾信号进行判断,即每一次声光报警持续15s,直到系统做出下一次判断结果。当系统状态为00时,表示正常,at89c51的p26口变成低电平,绿灯d8亮;当系统状态为01或10时,表示异常,p25口变为低电平,p10口变为高电平,黄灯d7亮,蜂鸣器报警;当系统状态为11时,表示发生火灾,p23口变为低电平,p10口变为高电平,红灯d5亮,蜂鸣器报警;如果两次采集同一种信号寄存器变量不相同,说明系统出现故障,p24口变为低电平,p1

42、0口变为高电平,红灯d6亮,蜂鸣器报警。4.3软件调试软件调试的主要任务是排查错误,错误主要包括逻辑和功能错误,这些错误有些是显性的,而有些是隐形的,可以通过仿真开发系统发现逐步改正。本系统的调试主要以软件为主,其中,系统电路图的绘制和仿真我采用的是proteus软件,而程序方面,采用的是c语言,用kiel软件将程序写入单片机 仿真原理图5 总结本文设计的基于单片机at89c51的烟感自动报警系统,系统安全可靠,误报率低,操作方便,成本低。本设计没有使用单一的烟感报警,而是使用了温度传感器和烟雾传感器共同检测报警的设计,这样大大提高了系统的灵敏度、缩小了响应时间。系统使用了8位a/d转换芯片a

43、dc0809,以通用芯片at89c51作为系统的控制器。系统在采集温度烟雾信号时,采用多次采集,多次判断的方法,降低了误报率。在系统的软件设计方面,采用了模块化程序设计方法,系统各个模块的具体功能都是通过子程序调用实现的。既使得程序结构清晰,又便于以后进一步扩展其功能,也便于系统的维护。当发生火灾,系统以声音灯光的形式发出报警。在系统中设置了1个蜂鸣器,实现声音报警;设置了4个发光二极管,分别对应系统的正常、异常、火灾、故障状态。如果系统出现硬件故障,能发出故障报警;如果只有一种信号参数出现异常(如烟雾浓度过大或是温度较高),能发出异常报警信号;如果烟雾和温度同时出现异常,则说明有火灾,发出火

44、灾警报信号。由于时间紧迫和个人能力有限,本文设计的火灾报警系统还存在许多需要完善和作进一步研究的问题,如:(1)火灾报警系统判断的算法有待进一步的研究改进,应用更先进的神经网络和模糊识别等智能算法,降低系统的误报率,提高灵敏度。(2)火灾报警系统没有联网,当发生火灾时不能通过电话网络向消防指挥中心报警或通知主人。(3)用户不能根据自己的需要设定火灾报警阈值。参考文献1.李广弟.单片机基础(第三版).北京航空航天大学出版社,20072.于永,戴佳,常江.51单片机c语言常用模块与综合系统设计实例精讲.电子工业出版社3.侯玉宝,陈忠平,李成群等.基于proteu的51系列单片机设计与仿真【m】.北京:电子工业出版社,20084.戴佳,戴卫恒.51单片机c语言应用程序设计【m】.北京:电子工业出版社,20065.林志琦,郎建军等. 基于proteus的单片机可视化硬件仿真. 北京航空航天大学出版社,2006附录 #include #define uint unsigned int#define uchar unsigned char sbit oe = p10; sbit

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论