打印

基于MSP430单片机的家用烟雾报警器的设计

[复制链接]
1360|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
51xlf|  楼主 | 2014-5-4 23:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
 0 引言

  近年来,全球每年发生火灾600~700万起,其中住宅火灾约占80%以上。根据2003-2006年期间的一份统计报告《美国家庭火灾烟雾报警器》发现:每1000场报道的火灾中,如果有烟雾报警器和湿式喷头存在,火灾导致的死亡率就能降低84%。国外对家庭火灾报警系统的安装早已开始推广并实行,并有许多国家以相应的法律法规严格规定执行。而我国现行的《建筑设计防火规范》(GB 50016-2006)未对住宅部分安装火灾自动报警系统有所规定。通过调研发现,现有烟雾探测器容易失效、连接断开或电池损坏,缺少电池欠压检测,存在误报警的情况,工作极不稳定。因此,本文设计了一款功耗低、可靠性高、实时性强的家用烟雾报警器。

  1 系统总体设计方案

  系统由主控芯片、烟雾检测模块、报警模块和电源模块四部分组成。主控芯片采用16位超低功耗单片机MSP430F2012,每隔8s进行一次烟雾检测,通过F2012芯片I/O口输出32768Hz信号驱动红外发射部分发出红外线,同时使用片内10位ADC对经过放大的红外信号进行连续4次的数据采集转换,取平均值作为检测结果。同时将检测结果与预设报警门限值进行比较,从而发送预警信息。同时还利用了430内部低频时钟VLO准确定时,高频时钟DCO高速工作,在降低系统成本的同时提高了系统的可靠性。


相关帖子

沙发
51xlf|  楼主 | 2014-5-4 23:21 | 只看该作者
 2 系统硬件电路的设计

  2.1 主控芯片MSP430F2012

  MSP430F2012是TI公司新推出的一款高性能16位微控制器。其特点如下:电源电压采用1.8~3.6V的低电压;超低功耗,活动模式(1MHz,2.2V时为200 μA),待机模式(0.7μA),掉电模式(RAM数据保持,0.1 μA);5种省电模式;从待机到唤醒不超过1μs;16位精简指令集,指令周期125ns;带有两个捕获/比较寄存器的16位定时器(TIMERA);A/D转换器;10位200-ksps,通用串行接口USI;支持SPI和I2C;程序代码熔丝保护;零功耗BOR复位保护功能。本文采用Spy-Bi-Wire的JTAG调试接口,只需连接四根线,即可实现用仿真器在线编程调试程序。同时,MSP430F2012拥有2kB+256B的FLASH存储器,128B的RAM,足够系统代码量的需求。

  2.2 烟雾检测模块电路

  烟雾检测方式主要有离子感烟探测和光电感烟探测。离子感烟探测对电路和工艺要求高,探测器受湿度和气流等影响大,维护费用高于制造费用。本文采用光电感烟探测方式,电路如图2所示。采用特制的光学迷宫作为烟雾接收装置,内装有红外发射二极管(IRdiode)和红外接收二极管(IR receiver),主控芯片MSP430F2012的P2.7口定期驱动红外发射部分发射红外线,若有烟雾进入光学迷宫,则产生光的散射,红外接收二极管接收光信号后产生电流信号,经运算放大器LM358转换为电压信号,送入主控芯片ADC模块通道A3进行采样转换,当判断迷宫内出现烟雾后,主控芯片驱动压电蜂鸣器发出烟雾报警声音。


使用特权

评论回复
板凳
51xlf|  楼主 | 2014-5-4 23:22 | 只看该作者
2.3 报警电路

  系统报警电路采用RE46C100来驱动压电蜂鸣器,该芯片电压工作范围宽(6~16V),低功耗(空闲电流小于100nA),采用9V电池供电。该芯片使能端HRNEN与MSP430的P2.6口连接,当HRNEN为高电平时,压电蜂鸣器产生自激振荡而发出报警声音。通过软件设置Timer A不同的定时输出,可使之发出烟雾检测、电池欠压两种不同方式的报警信号。

  2.4 电源电路

  系统需要提供9v和3.3V两个工作电压,9V供给RE46C100,3.3V是单片机MSP430F2012的工作电压,本电路选用稳压器TPS71533。

  TPS71533是一款采用SC-70封装的高输入电压LDO(低压降)稳压器,其与微处理芯片MSP430F1232同属于美国的TI公司。该稳压器的特点是:高输入、低压降、低功耗和小型封装。芯片的输入电压范围为2.5~24V,低压降和低静态电流(最大静态电流为3.2 μA)使该芯片的功耗处于极低的水平,适用于电池供电的场合。

  同时系统还实现了电池欠压检测,将电源电压直接引入MSP430F2012 ADC模块的输入P1.2口,与程序中预先设定的阀值电压进行比较,当电源电压过低时,通过报警电路提醒用户及时更换电池。

使用特权

评论回复
地板
51xlf|  楼主 | 2014-5-4 23:22 | 只看该作者
 3 系统软件的设计与实现

  为了便于系统维护和功能扩展,系统软件采用了模块化的设计方法,采用了C语言编程。系统软件包括主程序、中断唤醒子程序、烟雾信号检测子程序和电池电压检测子程序。主程序流程图如图3所示。


图3 主程序流程图

使用特权

评论回复
5
51xlf|  楼主 | 2014-5-4 23:22 | 只看该作者
  初始化时,将校准的1MHz DCO值送入DCO控制寄存器,再根据已校准的DCO时钟源校准VLO,MCU工作在低功耗模式LPM3。TA0每8s中断一次,MCU退出LPM3模式,调用烟雾信号检测子程序。为了避免误报警,系统只有连续3次探测到烟雾信号,才启动报警电路报警。第1次探测到烟雾信号后,VLO时钟源经4分频作为定时器A信号源,即第2次采样间隔4s;如果第2次仍探测到烟雾信号,定时器A时钟源直接由VLO输入1s采样;如果第3次仍探测到烟雾信号,系统开始警报,烟雾探测器继续以1s周期进行采样。为了降低系统功耗,在烟雾采样转换期间,MCU进入LPM3模式。

  在烟雾信号检测子程序中,首先通过P2.7和P1.4口分别打开LED和运放,将ADC10设定成4次单通道连续转换,通过ADC10的DTC特性将转换结果暂存到MCU的RAM中,运放经延时稳定后启动ADC,MCU进入LPM3模式,在完成4次AD转换后DTC中断,DTC中断服务程序返回,MCU进入活动模式,然后红外发射管打开,同样延时稳定后再进行一轮4次连续AD转换,采样结束后关闭运放、红外发射管、ADC及发光二极管,最后调用计算平均值子程序,计算两次连续4次AD转换的平均值,主程序调用计算结果确定是否探测到烟雾信号。

使用特权

评论回复
6
51xlf|  楼主 | 2014-5-4 23:22 | 只看该作者
  4 结束语

  本文设计了一款基于MSP430单片机的家用烟雾报警器,实现了对烟雾信号和电池欠压的精确检测。在硬件选型和软件设计中,充分考虑家用系统低成本、低功耗的要求。此系统符合国标GB20517-2006《独立式感烟火灾探测报警器》认证的要求。实践证明,此系统具有体积小、功耗低、灵敏度高、应用灵活、可靠性高、实时性强等特点,是高性能家用烟感的最佳选择方案。

使用特权

评论回复
7
brucedon| | 2014-12-3 17:24 | 只看该作者
写的不错,可否附上几张图片?“采用光电感烟探测方式”如何实现的??

使用特权

评论回复
8
songchenping| | 2014-12-5 07:46 | 只看该作者
为什么要分好几次发啊。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

534

主题

9557

帖子

23

粉丝