基于STC89C52的家用天然气自动报警显示装置的设计

2016-12-27 16:10余华星孙增丽仓啦旦增多吉普布卓玛
科技传播 2016年19期
关键词:存器数码管低电平

余华星+孙增丽+仓啦+旦增多吉+普布卓玛+何志权

摘 要 本文将立足于简易、实用和高效的基本特点设计一个家用天然气自动报警显示装置,根据MQ-2气体传感器能够探测天然气中的主要成分甲烷的特点,通过ADC0804芯片将MQ-2传感器模块的输出模拟电压变化转换为数值变化,再将数值传送给STC89C52单片机中,同时单片机将数据传给数码管显示。并且在MQ-2气体检测模块中加入了一个LM393比较器,即当检测到天然气体时LM393比较器会发出一个低电平信号给单片机,单片机将会立即发出指令打开继电器使警报器、排风扇、电磁阀工作.本装置使用模块化设计,设计成本低,响应速度快,易于后期维修,做到了实用与实惠。从实验的模型来看,系统工作稳定、准确、易操纵,当然若做成产品还需要一些优化与改进。

关键词 MQ-2气体传感器;ADC0804芯片;单片机;LM393;数码管显示

中图分类号 TP3 文献标识码 A 文章编号 1674-6708(2016)172-0276-03

1 天然气泄漏报警换气装置概述

本项目主要设计的是一个家用的天然气泄漏报警换气装置,在核心控制线路外会联接一个MQ-2天然气体检测模块,该模块由于内部气敏电阻的阻值会随被检测空气中的天然气含量的增加而减小,故我们可以通过简单地放大电路,将阻值的变化改变为电压的变化,通过放大电路后,输出的电压会随被检测空气中天然气含量的增加而增大。我们再联接一个ADC0804模块,由于ADC0804芯片是一个8位模数转换芯片,故该模块可以将电压的变化转变为数值的变化,利用一个4位共阳数码管对当前所采集到的浓度进行显示,再利用单片机控制报警,在报警系统中加入一个LM393比较器,可以对报警器的灵敏度进行调节,在单片机判断出危险信号后,单片机就会启动继电器来使排风扇、电磁阀、报警器工作(图1为概述图)。

2 系统原理图

3 气体检测模块设计

原理概述:最左边有圆形区域1、2、3、4、5、6为MQ-2传感器的6个引脚,其中5、2是为电热丝提供电压,因为在MQ-2工作前要对气敏电阻进行加热。原理图中的R1是限流电阻,R2是与MQ-2气敏电阻联接的分压电阻,RP可变电阻器,三角形部分是LM393芯片的其中1、2、3、4、VCC引脚,因为只需要进行一组电压的比较,故只需利用到这4个引脚,发光二极管是用来给外界提示的信号灯,不难看出,只要LM393的1引脚输出低电平,也就是检测到一定浓度的天然气时,发光二极管会发光。最后P1的VCC和GND为该电路供电,DOUT输出TTL电平,即高电平或者低电平,AOUT输出电压变化的模拟信号。

4 AD转换模块设计

原理概述:在该芯片的生产厂家的说明书上很容易就可以得到ADC0804芯片进行模数转换的最经典接法,即为图4所示。6、7引脚分别是VIN(+)和VIN(-)引脚,输入信号;8引脚是AGND引脚即模拟信号地引脚;10引脚是DGND数字信号地引脚;4引脚即CLK引脚是时钟信号输入端;1引脚即CS片选信号输入端引脚,低电平有效,一旦CS有效,表明AD转换器被选中,可启动工作;3引脚是WR即写信号输入引脚,低电平启动A/D转换;2引脚是RD即读信号输入端,低电平有效;9引脚是VREF/2引脚即参考电平输入引脚,决定量化单位;20引脚为VCC引脚,芯片电源输入引脚。可在单片机程序中通过控制1、2、3引脚的点位变化控制A/D转换,即先让单片机给ADC0804芯片的CSAD引脚一个低电平选中AD,再给WR引脚一个低电平启动A/D转换,再给RD引脚一个低电平将读信号给ADC0804芯片,最后单片机通过ADC0804芯片的11-18引脚读取数据。

5 数据显示模块设计

原理概述:显示模块主要由两个74HC573锁存器以及一个4位共阳数码管组成,数码管的接口分为段选和位选两部分段选有8个接口,位选有4个接口。单片机的P0.0至P0.7口通过锁存器与数码管的段选接口a至b接口联接控制数码管显示的具体数字,再将单片机的P0.0至P0.3口通过锁存器与数码管的位选接口WE1至WE4联接,这里要注意的是51系列单片机的P0口没有上拉电阻,也就是说不能正常的输出高/低电平,必须要现在P0口外接一个10K欧姆阻值的9脚排阻才能正常的输出高/低电平而得以准确的控制。最后将单片机的P2.8和P2.7分别于管理段选的锁存器和管理位选的锁存器的11接口联接来控制两个锁存器的工作状态,这样就通过利用锁存器提高了单片机I/O口的利用率。联接好线路后我们就可以在单片机程序再对先前所得到的数据进行位的分离,再通过编码的方式传送给数码管,这样数据就会显示出来了,而且会根据当前检测的情况对数据进行实时的更新显示。

6 报警处理模块设计

原理概述:该设计在气体检测模块中加入了一个LM393比较器,通过一个可变电阻器可以改变LM393比较器的门槛电压,在将MQ-2传感器的4引脚输出的模拟电压与门槛电压进行比较,平时没有天然气泄漏时,由于MQ-2传感器4引脚输出的模拟电压低于门槛电压,故LM393比较器的输出端输出高电平,只要MQ-2传感器检测到天然气,它的4引脚输出的模拟电压就会升高,只要大于可调的门槛电压LM393比较器的输出端输出低电平进。然后我们将LM393比较器的输出端与单片机的P3.2口联接,再在单片机程序中先对P3.2口写1,这样单片机的P3.2口就会检测P3.2口的电平变化,在程序中设置只要P3.2口为低电平,我们就在与高电平触发的固态继电器联接的单片机P2.3口输出高电平使固态继电器工作而驱动报警器、排风扇、电磁阀工作。

7 单片机运行程序

程序技巧解读:刚进入主程序后,首先通过位选锁存器将ADC0804芯片的CS引脚置低电平,选中ADC0804芯片,此后不再改变。再在大循环中启动A/D转换,由于A/D转换需要一段时间越为100微秒,转换时间非常短暂,但是由于程序的运行速度与之相比速度非常快,所以在程序中还是需要延时,为了充分利用时间,提高反应速度,这里设计一个技巧,将显示子函数先运行,也就是说在没有读数时就运行(给A/D转换足够的时间),基于此,刚开始显示一定为零,虽然这样做了,但是对于我们宏观的观察是没有妨碍的,因为只要单片机一接收到检测的数据就立马会显示出来。这样做即省去了要延迟的时间又没有对显示造成错误,大大提高了系统反应速度。

8 系统调试结果

在焊接好电路板,联接好各个模块之后,我们将以上程序通过STC烧写软件下载到我们用的STC89C52芯片中,开始运行程序,因为MQ-2也可以检测到打火机中的主要气体成分丁烷,我们将打火机在MQ-2周围放气,我发现数码管不能够正常显示,看了程序也觉得没问题,通过查电路图才发现AD模块的10引脚没有和7、8引脚联接上并接地,于是重新焊接AD模块电路。重新焊接好后发现一切工作正常,整个系统的响应时间控制在0.5s以内,也就是说在检测到气体泄漏的0.5s内能够完成显示实时浓度、打开报警装置、排气扇和使管道电磁阀工作。同时我们试了一下通过调节可变电阻器也可以改变报警的灵敏度,我们对于这样的效果还是很理想的。

参考文献

[1]谭浩强.C语言程序设计[M].北京:清华大学出版社,2005:95-102,131-140.

[2]郭天祥.51单片机C语言教程[M].北京:电子工业出版社,2009:2-117.

[3]何书森,陈晶,何华斌.实用模拟电路原理设计与速成[M].福州:福建科学技术出版社,2002:1-164,284-292.

猜你喜欢
存器数码管低电平
低面积与低延迟开销的三节点翻转容忍锁存器设计
一种低成本的四节点翻转自恢复锁存器设计
铁道车辆高/低电平信号智能发生器设计
一种低功耗的容软错误锁存器设计
Arduino编程
MC9S08FL16单片机数码管静态显示分析
单片机控制的四位数码管动态显示编程
基于Qt的数码管数字编码系统的设计与实现
2017款凯迪拉克2.8L/3.0L/3.2L/3.6L车型低电平参考电压总线电路图
15-MeV电子直线加速器的低电平系统