烟雾传感器与单片机设计11

更新时间:2024-05-07 15:05:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

烟雾传感器

STC12C5410AD单片机和MQ-2型半导体电阻式烟雾传感器为核心设雾报器。

烟雾检测报警器是能够检测环境中的烟雾浓度,并具有报警功能的仪器,仪器的最基本组成部分应包括:烟雾信号采集电路、模数转换电路、单片机控制电路。

反烟雾信号采集电路一般由烟雾传感器和模拟放大电路组成,将烟雾信 号转化为模拟的电信号。模数转换电路将从烟雾检测电路送出的模拟信号 转换成单片机可识别的数字信号后送入单片机。单片机对该数字信号进行 滤波处理,并对处理后的数据进行分析,是否大于或等于某个预设值(也 就是报警限),如果大于则启动报警电路发出报警声音,之则为正常状 态。

烟雾传感器属于气敏传感器,是气-电变换器,它将可燃性气 体在空气中的含量(即浓度)转化成电压或者电流信号,通过A/D转换电路 将模拟量转换成数字量后送到单片机,进而由单片机完成数据处理、浓度 处理及报警控制等工作。 半导体烟雾传感器包括用氧化物半导体陶瓷材料作为敏感体制作的烟雾传感器以及用单晶半导体器件制作的烟雾传感器,它具有灵敏度高, 响应快、体积小、结构简单,使用方便、价格便宜等优点,因而得到广泛应用。半导体烟雾传感器的性能主要看其灵敏度、选择性(抗干扰性)和稳 定性(使用寿命)。而在众多半导体气体传感器中,本设计选用MQ-2型烟雾传感器,这种型号的传感器不但具备一般半导体烟雾传感器灵敏度 高、响应快、抗干扰能力强、寿命长等优点。

烟雾检测报警器的硬件设计

如今市面上比较普遍的单片机有8051系列与STC系列。

8051单片机虽然应用普遍,工具多,易上手,片源广,价格低,但 是速度慢,功耗大,适合民用,商用,不适合工业用途。

STC单片机是MICROCHIP公司的产品,其突出的特点是功耗低, 精简指令集 ,抗干扰性好,可靠性高,但是存在溢出隐患问题。8051系 列采用的是堆栈指针,STC采用硬件堆栈8级。当堆栈指针设定合理,局部变量少的情况下,8051系列用10层的程序嵌套不会出现问题。而STC单片机程序嵌套包括中断最多不能超过8层。所以如果用C语言进行STC编程设计容易堆栈溢出。汇编语言对于不同的CPU,其汇编语言可能有所差异,所以不易移 植。而C语言是一种结构化的高级语言,虽然占用资源较汇编多,但是可读性好,移植容易,是普遍使用的一种计算机语言。鉴于C语言的易读性和普遍性,本论文的软件设计选择C语言编程,所以STC系列单片机在此处不是非常适合。

为适用于本论文设计的烟雾检测报警器,应选择一种比8051系列速度快,功耗低,抗干扰性好,而又避免C语言编程溢出问题的单 片机。 宏晶科技新推出的STC12系列单片机具有高速、低功耗、超强抗干扰等优点,是的新一代8051单片机,指令代码完全兼容传统8051,速度 却比8051单片机快8~12倍。而且

STC12系列下属的STC12C54xxAD系 列单片机是低功耗Flash单片机,它的高效寻址方式、大容量Flash、 EEPROM、A/D转换、硬件乘法器、硬件脉宽调制器(PWM)等功能特点, 较好的实现了强大的功能与超低功耗的结合。而且在功能同样的情况下, 管脚较少封装体积小,价格比其他型号便宜,因此具有很好的性价比和应 用适应性。

STC12C54xxAD系列单片机有6种型号:分别是STC12C5412AD、 STC12C5410AD、STC12C5408AD、STC12C5406AD、STC12C5404AD、 和STC12C5402AD。 它们是以单片机内部集成Flash的大小区分的。在价格相同的情况下,尽量选择Flash较大的芯片,所以选择了STC12C5410AD单片机作为本论文设计的烟雾报警器的单片机核 心芯片。它体积小,价格低,非常适用于本设计,下面介绍STC12C5410AD的自身特点。

信号采集及前置放大电路

传感器输出信号一般比较微弱,需要经过前置电路对其进行放大、滤波、电平调整,满足单片机对输入信号的要求。常见的运算放大器中,L M324价格低廉、使用简单等优点 比较突出,所以本设计中的前置放大电路采用LM324作为电路的运算放大器。

LM324是单片高增益四运算放大器,可在较宽电压范围内的单电源 或双电源下工作,其电源电流很小且与电源电压无关,四个运放一致性好; 其输入偏流电阻是温度补偿的,也不需外接频率补偿,可做到输出电平与 数字电路兼容。

图3.2前置放大电路图

4.2.1主程序设计及流程图

主程序流程图如图4.1所示。首先要给传感器预热三分钟,因为MQ-2型半导体电阻式烟雾传感器在不通电存放一段时间后,再次通电时,传感器不能立即正常采集烟雾信息,需要一段时间预热。程序初始化结束后,系统进入监控状态。本论文的主程序设计先对传感器预热三分钟, 预热同时,对传感器加热丝故障检测,采用软件方式检测传感器加热丝或 电缆线是否断线或者接触不良。 STC12C5410AD单片机对传感器检测的烟雾浓度信号进行A/D转 换、平均值法滤波、线性化处理后,将浓度值与报警限设定值相比较,判断是否报警。同时送入段式液晶显示烟雾浓度值。主程序还包括状态指示灯及按键功能设置,中断子程序等,使报警器功能更加完善,给用户带来便利

图4.1 主程序流程图

4.2.3中位值平均滤波法数字滤波子程序设计及流程图

在烟雾传感器对烟雾浓度采样时,可能会遇到尖脉冲干扰的现象。干扰通常只影响个别采样点的数据,此数据与其他采样点的数据相差比较大。 如果采用一般的平均值法,则干扰将“平均”到计算结果上去,故平均值法不易消除由于脉冲干扰而引起的烟雾浓度采样值的偏差。

为此,可采取中位值平均滤波法(又称防脉冲干扰平均滤波法),先对N个采样数据进行比较,去掉其中的最大值和最小值,然后计算余下的N–2个数据的算术平均值。这种方法既可滤去脉冲干扰又可滤去小的随机 干扰。保证报警器检测烟雾浓度的准确性,减小误报、错报的可能。

在实际应用中,N可取任何值,但为了加快测量计算速度,本论文数字滤波的设计中N取10。即调用A/D连续进行10次采样,去掉其中的最大值和最小值,计算其余8个值的平均值,将这个平均值送入寄存器。 中位值平均滤波法的程序流程图如图4.3所示。

图4.3中位值平均滤波法程序流程图

4.2.4插值法线性化处理子程序设计及流程图

在单片机测控系统中,使用之前必须进行静态标定,以得到输出信号与被测信号的关系输出曲线,用来作为使用过程中的计量依据。但是标定时输出曲线往往不是一条理想的直线,所以要对标定曲线进行线性化处理,用一条拟合直线近似代替输出曲线,线性化是智能仪表的典型功能之一。该报警器主要针对甲烷烟雾检测,在软件线性化处理时,以传感器对甲烷的响应曲线为依据。 本论文报警器使用的MQ-2型传感器的电阻是随着烟雾浓的升高而降低的,因此输入单片机的电压也是随之降低的。图4.4为单片机采集电压值与烟雾浓度百分比的对应曲线,可以看出,电压值与烟雾浓度 之间是非线性的关系,为了实时显示烟雾浓度.需要对其进行线性化处理。 在误差许可范围内,根据标定曲线形状,以及单片机处理能力,把曲线分 成若干小段,对每小段分别线性化。

图4.4单片机采集电压值与烟雾浓度百分比线性化曲线

根据分段线性插值法求输入单片机的某一电压值对应的烟雾浓度的 公式如下:

f(x) = f(xi) + (x-xi)*(f(xi+1)-f(xi))/(Xi+1-Xi)i=1,2,3?N 式中,N为所分区间个数, f (x)为实际烟雾检测浓度,x为实际气体检测浓度对应的电压值,xi是区间的下限浓度对应电压值,xi是区间的上限浓度对应电压值, f (xi)为区间下限烟雾浓度值, f (xi )为区间上限烟雾浓度值。

根据公式4-1设计分段插值法线性化程序流程图如图4.5所示。 图4.5 分段插值法线形化程序流程图

图4.5 分段插值法线形化程序流程图

4.2.5报警子程序设计及流程图 (可以把报警换成照相——)

当烟雾浓度超过报警设定值时,报警器发出一种近似警笛的鸣叫声,对应通道的红灯闪亮,以提示操作人员采取安全对策或自动控制相关安全装置,从而保障生产安全,避免火灾和爆炸事故的发生。为防止误 报,在程序设计上,对烟雾浓度进行快速重复检测和延时报警,以区别出 是管道中烟雾的泄漏,还是由于暂短打开阀门产生的可燃烟雾的微 量散失,防止误报。报警子程序流程图如图4.7所示。

本文来源:https://www.bwwdw.com/article/42xg.html

Top