[讨论]
(转)MSP430单片机的家用烟雾报警器的设计
摘要:介绍了基于MSP430单片机的家用烟雾报警器的总体设计方案,详细阐述了系统的硬件组成和软件实现,给出了关键部分的电路图和系统的主程序流程图。实验表明,该报警器功耗低,灵敏度高,可靠性强。
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高速工作,在降低系统成本的同时提高了系统的可靠性。
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进行采样转换,当判断迷宫内出现烟雾后,主控芯片驱动压电蜂鸣器发出烟雾报警声音。
2.3 报警电路
系统报警电路采用RE46C100来驱动压电蜂鸣器,该芯片电压工作范围宽(6~16V),低功耗(空闲电流小于100nA),采用9V电池供电。该芯片使能端HRNEN与MSP430的P2.6口连接,当HRNEN为高电平时,压电蜂鸣器产生自激振荡而发出报警声音。通过软件设置Timer A不同的定时输出,可使之发出烟雾检测、电池欠压两种不同方式的报警信号。
2.4 电源电路
系统需要提供9v和3.3V两个工作电压,9V供给RE46C100,3.3V是单片机MSP430F2012的工作电压,本电路选用稳压器TPS715333。
TPS71533是一款采用SC-70封装的高输入电压LDO(低压降)稳压器,其与微处理芯片MSP430F1232同属于美国的TI公司。该稳压器的特点是:高输入、低压降、低功耗和小型封装。芯片的输入电压范围为2.5~24V,低压降和低静态电流(最大静态电流为3.2 μA)使该芯片的功耗处于极低的水平,适用于电池供电的场合。
同时系统还实现了电池欠压检测,将电源电压直接引入MSP430F2012 ADC模块的输入P1.2口,与程序中预先设定的阀值电压进行比较,当电源电压过低时,通过报警电路提醒用户及时更换电池。
3 系统软件的设计与实现
为了便于系统维护和功能扩展,系统软件采用了模块化的设计方法,采用了C语言编程。系统软件包括主程序、中断唤醒子程序、烟雾信号检测子程序和电池电压检测子程序。主程序流程图如图3所示。
初始化时,将校准的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转换的平均值,主程序调用计算结果确定是否探测到烟雾信号。
4 结束语
本文设计了一款基于MSP430单片机的家用烟雾报警器,实现了对烟雾信号和电池欠压的精确检测。在硬件选型和软件设计中,充分考虑家用系统低成本、低功耗的要求。此系统符合国标GB20517-2006《独立式感烟火灾探测报警器》认证的要求。实践证明,此系统具有体积小、功耗低、灵敏度高、应用灵活、可靠性高、实时性强等特点,是高性能家用烟感的最佳选择方案。
暂无评论,赶紧抢沙发吧