新型煤气泄漏报警装置设计Word文件下载.docx
《新型煤气泄漏报警装置设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《新型煤气泄漏报警装置设计Word文件下载.docx(19页珍藏版)》请在冰点文库上搜索。
![新型煤气泄漏报警装置设计Word文件下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/4/850a30e2-b4ff-47d7-b4a3-3b29158e7e69/850a30e2-b4ff-47d7-b4a3-3b29158e7e691.gif)
图2.1系统框图
具体技术指标如下:
应用范围:
工业生产和人民生活中的CO检测;
检测对象:
CO及他们的混合气体;
检测范围:
CO:
0~1000ppm;
检测精度:
CO优于20ppm;
报警浓度:
100ppm~300ppm
响应时间:
≤30ms;
电池电压:
+12V;
工作温度范围:
-20~+70℃;
工作湿度范围:
10~95%RH。
3煤气泄漏自动检测硬件设计
3.1传感器
3.1.1气体传感器介绍
气体传感器是气体与气味检测的关键元件。
根据其气敏特性,气体传感器可以分为六大类:
半导体气体传感器、固体电解质气体传感器、接触感染式气体传感器、电化学式气体传感器、光学式气体传感器、高分子气体传感器。
气体传感器应满足的基本条件:
能选择性地检测某种单一气体,对共存的其它气体不响应;
对被测气体有较高灵敏度,能有效地检测允许范围内气体浓度;
对检测信号响应速度快,重复性好;
长期工作稳定性好,使用寿命长,制造成本低,使用与维护方便。
3.1.2气体传感器的选定
气体传感器是本系统检测的起点也是系统的核心和重点,选择合适的传感器成为决定系统成功的关键。
CO气体传感器属于气敏传感器,通过A/D转换电路将模拟量转换成数字量后送到单片机,进而由单片机完成数据处理、浓度处理及报警控制等工作。
传感器作为煤气泄露测试装置报警器的信号采集部分,是仪表的核心组成部分之一。
由此可见,传感器的选型是非常重要的。
图3.1传感器管脚与基本测量电路图
其中2、4端为加热器的电源接线端,1、3为传感器输出端,其工作原理是把传感器置于CO气体环中,SnO2薄膜层的电阻会随着CO浓度的变化而变化,CO浓度越大,SnO2薄膜层阻值越小。
图3-1(b)为取得传感器输出信号的基本电路图,Vh为加热电压,传感器电阻RS与负载电阻RL串联接到工作电压VCC两端,由此可得关系:
VRL=RL·
VCC/(RL+RS)
传感器阻值RS随着CO浓度的增大而减小时,输出负载电压VRL逐渐变大,所以通过测量负载电压即可反应出被测对象的CO浓度。
MGS1100型一氧化碳气体传感器的特点:
测量浓度范围为0-1000PPM,测量精度为3%,分辨率为1PPM,工作温度-20~70°
,零点漂移为PPM<
10。
3.1.3传感器非线性信号处理
在本系统中测量得到的是经传感器和采集电路变换的电压信号,为了真实地反映被测量的CO浓度值,需要将根据系统特性在测量范围内将环境浓度与采集电压之间的关系作一个误差尽可能小的标定,依据此标定关系,将测量得到的电压信号真实地转化成被测环境的CO浓度值。
本系统采用分段插值法对系统测量值和目标值进行标定的。
3.2传感器输出特性曲线图
3.3传感器加温度补偿所需的加热电压曲线
3.1.4温度补偿电路
如图3-1所示为温度补偿电路,由于元件的本身特性决定了其阻值会随着周围环境温度的变化产生明显的漂移,致使测量电路的输出产生零点漂移,漂移过大会造成测量的不灵敏或过灵敏,使整机的可靠性下降。
为此,我们增加了温度补偿电路,其中RT为热敏电阻,RS为传感器电阻。
图3.4温度补偿电路
3.2模/数转换器
3.2.1模/数转换器的介绍
现在市场的模数转换器的种类各种各样,基本有一下几种:
积分型(如TLC7135),逐次比较型(如TLC0831),并行比较型/串并行比较型(如TLC5510),调制型(如AD7705),电容阵列逐次比较型,压频变换型(如AD650),逐次逼近型(如ADC0908,ADC0816)等,综合考虑其性价比及技术参数,选择ADC0809较足本系统的设计要求。
3.2.2引脚功能
ADC0809芯片有28条引脚,采用双列直插式封装。
图3.5ADC0809管脚图
3.2.3主要特性
8路8位A/D转换器,即分辨率8位;
具有转换起停控制端;
转换时间为100μs;
单个+5V电源供电;
模拟输入电压范围0~+5V,不需零点和满刻度校准;
工作温度范围为-40~+85摄氏度;
低功耗,约15mW。
3.3单片机
3.3.1单片机的简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C51是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
3.3.2主要性能参数
·
与MCS-51兼容
4K字节可编程闪烁存储器
寿命:
1000写/擦循环
数据保留时间:
10年
全静态工作:
0Hz-24Hz
三级程序存储器锁定
128×
8位内部RAM
32可编程I/O线
两个16位定时器/计数器
5个中断源
可编程串行通道
低功耗的闲置和掉电模式
片内振荡器和时钟电路
功能特性概述:
AT89C51提供以下标准功能:
4K字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时器,一个5向量两级中断机构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51可降至0HZ的静辑操作,并支持两种软件可选的节电工作模式,空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
3.3.3管脚说明
图3.6AT89C51管脚图
3.4声光报警与LED显示
3.4.1声光报警单元
作为煤气泄露测试装置,声光报警部分不可缺少。
本设计中的声光报警部分包括蜂鸣器以及红、黄、绿三个LED报警指示灯。
声光报警表现形式如下:
(1)绿色灯点亮表示传感器检测到CO气体,但没达到下限值,一切正常,此时红色和黄色熄灭,蜂鸣器不发声;
(2)黄色灯点亮表示传感器检测到CO气体浓度超过下限值,但没有达到报警值,此时红色灯和绿色灯熄灭,蜂鸣器不发声;
(3)红色灯点亮时表示被测得CO气体含量已经达到报警值,此时黄色和绿色灯熄灭,蜂鸣器发出报警,通知用户;
声光报警单元与单片机的连接图如下:
图3.7声光报警电路
3.4.2LED显示
LED数码显示器是一种由LED发光二极管组合显示字符的显示器件。
它使用了8个LED发光二极管,其中7个用于显示字符,1个用于显示小数点,故称之为7段发光二极管数码显示器。
本设计通过观察LED数码显示器显示CO浓度值,判断CO浓度值是否超过上限值,如果超过,自动报警,同时打开排气扇,使CO浓度降低。
如果超过下限值,切断阀闭合,以便达到正常状态。
3.5排气扇控制系统与切断
3.5.1光电隔离器
在开关量控制中,最常用的器件是光电隔离器。
光电隔离器的种类繁多,常用的有发光二极管/光敏三极管,发光二极管/光敏复合晶体管,发光二极管/光敏电阻,以及发光二极管/光触可控硅等。
光电隔离器有GaAs红外线二极管和光敏三极管组成。
当发光二极管正向电流通过时,即产生人眼看不见的红外光,其光谱范围为700~1000nm。
光敏三极管接收光照以后便导通。
而当该电流撤去时,发光二极管熄灭,三极管随即截止。
利用这种特性即可达到开关控制的目的。
3.5.2光电隔离电路
图3.8光电隔离技术电路
3.6接口总线
图3.8MAX232接口的硬件接口电路
本设计中系统采用11.0592MHz晶振,波特率采用1200b/s,通过RS-232串口单片机系统可以和PC机进行通信。
4软件部分设计
4.1软件部分的设计
图4.1软件流程图
如图所示,整个报警器程序上分成中断取值转换、调零、报警、显示
4.2主程序
整个程序一共使用了两个中断,一个外部中断即INT0中断,一个定时/计数器中断即IT0中断.这两个中断各有其作用,INT0中断是用来判断A/D转换器ADC0809对模拟信号的转换是否完成,当A/D转换结束后,ADC0809发出结束EOC(高电平)信号,该信号可供单片机查询,也可反相后作为向单片机发出中断信号,而本设计正是用的这个方法,使得程序进入中断取值程序.而程序中所用到的IT0中断,是为产生一个周期为2S的方波而设计的,其作用是为看门狗产生喂狗子信号.具体程序如下:
ORG00H
JMPSTART;
主程序入口地址
ORG03H
JMPINTO;
外中断INTO入口
ORG0BH
JMPITOP;
定时器0中断入口
ORG0100H
START:
MOVIE,#10000001B;
INT0中断使能
MOVIP,#00000001B;
INT0中断优先
MOVTCON,#00000000B;
设置INT0为电平触发
MOVSCON,#00000000B;
串行口发送,接收标志位请0
MOVSP,#60H;
设堆栈指针
MOVTMOD,#01H;
设置T0为方式1
CALLPT0M0
HERE:
AJMPHERE;
自身跳转
PT0M0:
MOVTL0,#0CH;
T0中断服务程序,T0重新置初值
MOVTH0,#0FEH
SETBTR0;
启动T0
SETBET0;
允许T0中断
SETBEA;
CPU开中断
RET
ITOP:
T0中断服务程序,T0置初值
MOVTH0,0FEH
CPLP1.0;
P1.0状态取反
RETI
ACALLLED;
调用LED自检子程序
MOV33H,#00H;
设置中断完成标志为0
MOVDPTR,#0FEFFH;
ADC0809的端口地址
MOVX@DPTR,A;
使BUS为高阻抗,令ADC0809
开始转换
WAIT:
MOVA,33H;
等待A/D转换完成信号
JNZINTOK
JMPWAIT;
未完成则跳回等待
INTOK:
MOVA,32H;
将最新的浓度值存入累加器中,(若A/D未工作,则A=0)
JNZL1
MOVA,30H
JMPL2
L1:
MOV30H,31H
MOVA,31H;
将新浓度载入累加器
L2:
CALLBCD;
调用BCD码调整程序
CALLDISP;
显示当前浓度
CALLADZERO;
调用零点调整子程序
CALLALARM;
调用判断报警程序
CALLBCD
调用显示子程序
CLRA;
清除累加器值
返回
在主程序通过对33H中数值的判断断定A/D是否转换完成,当33H中为1时,转换完成,程序调用调零、报警、显示模块对输入数据进行处理。
4.3调零子程序
由于未知问题,可能造成送入单片机中显示的模拟电压量与真实电压存在区别,这种误差可以通过在中断处理中对A/D转换的数值加上一个调整值来解决。
这样,我们就能根据实际情况来对报警器输出的数值进行控制,使其记数更加精确,使用更方便。
我们可以利用对端口的电平高低来判断是否需要进行调零处理,故可将按键开关接于端口P2.2.若开关按下,则说明有调零需要,于是进入调零处理程序;
若开关没有按下,则说明没有调零需要,系统进入下一步.通过设置一个按键,既可保证程序顺利进行,又方便用户使用.具体程序如下:
ADZERO:
CALLDELAY
JBP2.2,JMP1;
判断调零按钮是否按下,没按则跳JMP1
………..
JMP1:
通过对P2.2位的判断来分辨是否有调零请求,若有则跳入调零模式,调零模式中程序如下:
LOOP1:
JNBP2.2,$;
消除抖动延时
MOVA,40H;
将调零预设值40H送入
CLRC;
清除进位标志
SUBBA,#01H;
调零值减1
JNCLOOP2;
未借位则跳LOOP2
MOVA,#05H;
有借位则重设调零值为5
LOOP2:
MOV40H,A;
将调零值送回40H保存
MOVA,R3;
将当前浓度值送入A
JZXEND
DECA;
当前浓度值减1(响应调整变化)
XEND1:
MOV30H,A;
送回30H保存
MOV31H,A;
送回31H保存
调用BCD码调整
JMPLOOP
XEND:
MOVA,#63H
JMPXEND1
进入调零模式后,若有按键则,LED数码管示数响应按键变化。
若3秒无任何按键,则退出调零模式返回主程序。
4.4显示子程序
因为通过A/D转换进入单片机8051的浓度值以十六进制存在,为了让LED显示需要转换为BCD码,其BCD码转换程序如下:
BCD:
MOV55H,#00H;
存放BCD转换中的百位数
MOV56H,#00H;
存放BCD转换中的十位数
清除进位标志为下面的SUBB准备
MOVR2,#00H;
清除R2
CHAN:
SUBBA,#64H;
减100
JCCHAN1;
不能减,转
INCR1;
百位值
JMPCHAN;
循环判断百位
CHAN1:
ADDA,#64H;
还原百位数
CLRC;
CHAN2:
SUBBA,#0AH;
减10
JCCHAN3;
不够减,跳
INCR2;
够减十位加1
JMPCHAN2;
重复减10
CHAN3:
ADDA,#0AH;
还原十位数
MOV60H,R2;
把十位数放60H中
MOV61H,A;
把个位数放61H中
RET
这样把转换成的BCD码,个位存于61H中,十位存入60H中,再编写显示模块如下:
DISP:
MOVR7,#03H
MOVR0,#60H
LED1:
MOVA,@R0
MOVDPTR,#TABLE
LED2:
MOVCA,@A+DPTR
MOVSBUF,A
JNBTI,$
CLRTI
INCR0
DJNZR7,LED1
将数值送入到LED显示
由于本设计采用的是机械按键,与地线想连,按键按下,输入为低电平,释放按键则输入为高电平。
实际上,机械式按键的落片存在着轻微的弹跳现象其时间由操作员按键的动作所确定,为了确保CPU对按键的一次闭合仅做一次处理,必须去除抖动,一般通过调用子程序延时来解决,在键的稳定闭合或释放时才读出键的状态,具体程序如下:
DELAY:
MOVR5,#60设定30毫秒
D1:
MOVR6,#248;
设定0.5毫秒
DJNZR6,$
DJNZR5,D1
因为石英晶体为12MHZ,一个机器周期为1微秒,这样如上程序可达到延时30毫秒的目的。
4.5报警子程序
本设计采用了声光报警,当探测器探测的浓度超过报警设定值时就会同时产生音乐报警和灯光报警,此时红灯亮启,喇叭发出音乐,而正常时,喇叭关闭,红灯关闭,而显示正常的绿色LED亮启,本设计为了安全起见,还设置了事故处理装置,即出现危险使,探测器除了报警外,还会使排气扇的阀门打开,对室内进行排气,以免产生气体爆炸或是中毒.具体程序如下:
ALARM:
MOVA,30H;
将当前浓度值送如累加器
SUBBA,50H;
与预警值进行判断
JNCGOOD1;
若无借位,则当前浓度值高于或者等于预警值,跳GOOD1报警
SETBP1.6;
关闭声光报警
SETBP1.7
CLRP2.3;
关闭排气阀门
SETBP1.5;
关闭黄色LED
CLRP1.4;
打开绿色LED(显示正常)
GOOD1:
CLRP1.6;
打开声光报警(危险报警)
CLRP1.7
打开排气阀门
SETBP1.4;
关闭绿色LED(显示不正常?
5总结
参考文献
[1]李华.MCS一51系列单片机实用接口技术[M].北京:
北京航空航天大学出版社,1993.
[2]张毅坤等.单片微型计算机原理及应用[M].西安:
西安电子科技大学出版社,2006.
[3]吴金戊等.8051单片机实践与应用[M].北京:
清华大学出版,2002.
[4]刘迎春.传感器原理设计及应用[M].哈尔滨:
哈尔滨工业大学出社,1997.
[5]吕璠.热释电红外报警器的设计[J].廊坊师范学院学报,2009,23(7):
62-64
[6]刘舒祺等.基于热释电红外传感器的报警系统[J].国外电子元器件,2005,3:
18-20
[7]朱明程等.一氧化碳传感MGS1100原理及应用[J].电子技术,
1998,1:
39-40
附 录
系统大图