气体泄漏报警装置设计含详细C源程序.docx
《气体泄漏报警装置设计含详细C源程序.docx》由会员分享,可在线阅读,更多相关《气体泄漏报警装置设计含详细C源程序.docx(34页珍藏版)》请在冰豆网上搜索。
气体泄漏报警装置设计含详细C源程序
课程设计(论文)
题目名称气体泄漏报警装置设计
课程名称智能仪器设计
学生姓名
学号
系、专业电气工程系测控技术与仪器
指导教师王跃球
2015年6月15日
邵阳学院课程设计(论文)任务书
年级专业
12测控
学生姓名
彭志雄
学号
1241203035
题目名称
气体泄漏报警装置设计
设计时间
2015年6月15日—2015年6月26日
课程名称
智能仪器设计
课程编号
1212012010
设计地点
智能仪器及开发实验室\创新实验室(214)(305)
一、课程设计(论文)目的
课程设计是在校学生素质教育的重要环节,是理论与实践相结合的桥梁和纽带。
现代测控技术课程设计,要求学生更多的动手实践方案,解决目前学生课程设计过程中普遍存在的缺乏动手能力的现象.《智能仪器设计课程设计》是继《电子技术》、和《单片机原理与应用》课程之后开出的实践环节课程,其目的和任务是训练学生综合运用已学课程“电子技术基础”、“智能仪器设计”的基本知识,独立进行智能仪器设计及开发工作。
二、已知技术参数和条件
运用所学单片机及智能仪器设计知识,设计一个厨房可燃性气体泄漏情况的检测报警装置。
三、任务和要求
设计一个厨房可燃性气体泄漏情况的检测报警装置。
当厨房中天然气(CH4)或液化石油气(C4H10)浓度大于某个数值(例1000ppm)时,用蜂鸣器报警并发出控制信号,启动抽油烟机。
注:
1.此表由指导教师填写,经系、教研室审批,指导教师、学生签字后生效;
2.此表1式3份,学生、指导教师、教研室各1份。
四、参考资料和现有基础条件(包括实验室、主要仪器设备等)
已学的《数字电子技术》、《模拟电子技术》、《单片机技术》、《智能仪器设计》
创新实验室
智能仪器及开发实验室
五、进度安排
2015年6月15日-17日:
收集和课程设计有关的资料,熟悉课题任务何要求总体方案设计
2015年6月18日-21日:
硬件电路设计
2015年6月22日-23日:
软件设计
2015年6月23日-24日:
系统调试改进
2015年6月25日:
整理书写设计说明书
2015年6月26日:
答辩并现场考核
六、教研室审批意见
教研室主任(签名):
年月日
七|、主管教学主任意见
主管主任(签名):
年月日
八、备注
指导教师(签字):
学生(签字):
邵阳学院课程设计(论文)评阅表
学生姓名彭志雄学号1241203035
系电气工程系专业班级测控技术与仪器
题目名称气体泄漏报警装置设计课程名称智能仪器设计
一、学生自我总结
回顾两周的课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课程设计使我懂得了理论与实际相结合是多么的重要,只有理论知识是远远不够的,正所谓“书上得来终觉浅,要知此事须躬行”。
只有把所学的理论知识与实践结合起来,从理论中得出结论,才真正是自己的知识,从而提高自己的实际动手能力和独立思考的能力。
在课程设计过程中遇到的问题,可以说得是困难重重,但可喜的是最终都得到了解决。
学生签名:
年月日
二、指导教师评定
评分项目
平时成绩
论文
答辩
综合成绩
权重
30
40
30
单项成绩
指导教师评语:
指导教师(签名):
年月日
注:
1、本表是学生课程设计(论文)成绩评定的依据,装订在设计说明书(或论文)的“任务书”页后面;
2、表中的“评分项目”及“权重”根据各系的考核细则和评分标准确定。
摘要
本设计利用单片机技术和传感检测技术,结合A/D转换芯片构建了一个可燃气体检测报警系统。
如果环境中可燃性气体比如液化气、甲烷、丙烷、丁烷泄露,当气敏传感器模块检测到可燃气体浓度达到报警系统设置的临界点时,可燃气体报警系统就会发出报警信号,同时开通抽油烟机排放可燃性气体。
本系统设计采用MQ-2气体传感器作为可燃气体的信号采集器件,采集到的模拟电压量经过ADC0832转换为数字信号。
单片机采集到ADC0832的数字信号后经过算法处理,并且将浓度值和设定值显示到LCD1602上,如果可燃气体浓度达到报警系统预设的报警值时单片机将驱动蜂鸣器发出报警信号,同时启动抽油烟机排气,直到可燃性气体浓度降到报警下限。
关键词:
STC89C52;ADC0832;MQ-2传感器;LCD1602显示
摘要………………………………..………………………………..I
1系统硬件芯片的介绍……….……………………………………1
1.1STC89C52单片机………...……..…………………………………1
1.2MQ-2气体传感器……………………………………………………3
1.3ADC0832模/数转换芯片………….....……………………………4
1.4LCD1602液晶显示屏………….......……………………………6
2设计要求及电路框图……………………………………………10
2.1设计要求……………..…....………………………………………10
2.2设计框图……………..…....………………………………………10
3电路单元模块………………..……………………………………11
3.1气体浓度检测模块………………………………………………11
3.2A/D模数转换模块……….………………………………………11
3.3蜂鸣器报警电路模块………….…………………………………12
3.4模拟排气模块…………….…………………………………………12
3.51602液晶显示模块…………….………………………………13
4电路仿真………………………………………………………14
总结…………………….....………………………………………15
参考文献……………………………………………………………16
附录I……………………………………………..……………..….17
附录II…………………………………………………………………….18
致谢………………………………......……………………………26
1系统硬件芯片的介绍
1.1STC89C52单片机
STC89C52是由深圳宏晶科技公司生产的与工业标准MCS-51指令集和输出管脚相兼容的单片机。
STC89C52主要功能如表1.1所示,其PDIP封装如图1.1所示。
表1.1STC89C52主要功能
主要功能特性
兼容MCS51指令系统
8K可反复擦写FlashROM
32个双向I/O口
256x8bit内部RAM
3个16位可编程定时/计数器中断
时钟频率0-24MHz
2个串行中断
可编程UART串行通道
2个外部中断源
共6个中断源
2个读写中断口线
3级加密位
低功耗空闲和掉电模式
软件设置睡眠和唤醒功能
1.1.1STC89C52引脚介绍
①主电源引脚(2根)
VCC(Pin40):
电源输入,接+5V电源
GND(Pin20):
接地线
②外接晶振引脚(2根)
XTAL1(Pin19):
片内振荡电路的输入端
XTAL2(Pin20):
片内振荡电路的输出端
③控制引脚(4根)
RST/VPP(Pin9):
复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):
地址锁存允许信号
PSEN(Pin29):
外部存储器读选通信号
EA/VPP(Pin31):
程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
④可编程输入/输出引脚(32根)
STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
P0口(Pin39~Pin32):
8位双向I/O口线,名称为P0.0~P0.7
P1口(Pin1~Pin8):
8位准双向I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):
8位准双向I/O口线,名称为P2.0~P2.7
P3口(Pin10~Pin17):
8位准双向I/O口线,名称为P3.0~P3.7
图1.1STC89C52PDIP封装图
1.1.2STC89C52最小系统
最小系统是指能进行正常工作的最简单电路。
STC89C52最小应用系统电路如图2.2所示。
它包含五个电路部分:
电源电路、时钟电路、复位电路、片内外程序存储器选择电路、输入/输出接口电路。
其中电源电路、时钟电路、复位电路是保证单片机系统能够正常工作的最基本的三部分电路,缺一不可。
①电源电路芯片引脚VCC一般接上直流稳压电源+5V,引脚GND接电源+5V的负极,电源电压范围在4~5.5之间,可保证单片机系统能正常工作。
为提高电路的抗干扰性能,通常在引角Vcc与GND之间接上一个10uF的电解电容和一个0.1uF陶片电容,这样可抑制杂波串扰,从而有效确保电路稳定性。
②时钟电路单片机引脚18和引脚19外接晶振及电容,STC89C52芯片的工作频率可在2~33MHz范围之间选,单片机工作频率取决于晶振XT的频率,通常选用11.0592MHz晶振。
两个小电容通常取值3pF,以保证振荡器电路的稳定性及快速性。
③复位电路一般若在引脚RST上保持24个工作主频周期的高电平,单片机就可以完成复位,但为了保证系统可靠地复位,复位电路应使引脚RST保持10ms以上的高电平。
如图复位电路带有上电自动复位功能,当电路上电时,由于C1电容两端电压值不能突变,电源+5V会通过电容向RST提供充电电流,因此在RST引脚上产生一高电平,使单片机进入复位状态。
随着电容C1充电,它两端电压上升使得RST电位下降,最终使单片机退出复位状态。
正常运行时,可按复位按钮对单片机复位
图1.2STC89C52最小系统
1.2MQ-2传感器
MQ-2/MQ-2S气体传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。
当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大。
使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。
MQ-2/MQ-2S气体传感器对液化气、丙烷、氢气的灵敏度高,对天然气和其它可燃蒸汽的检测也很理想。
这种传感器可检测多种可燃性气体,是一款适合多种应用的低成本传感器。
MQ-2/MQ-2S气敏元件的结构和外形如图1.3所示(结构A或B),由微型Al2O3陶瓷管、SnO2敏感层,测量电极和加热器构成的敏感元件固定在塑料或不锈钢制成的腔体内,加热器为气敏元件提供了必要的工作条件。
封装好的气敏元件有6只针状管脚,其中4个用于信号取出,2个用于提供加热电流。
基本电路如图1.4。
图1.3结构和外形
图1.4MQ-2基本电路
1.3ADC0832模/数转换芯片
ADC0832是美国国家半导体公司生产的一种8位分辨率、双通道A/D转换芯片。
由于它体积小,兼容性强,性价比高而深受单片机爱好者及企业欢迎,其目前已经有很高的普及率。
学习并使用ADC0832可是使我们了解A/D转换器的原理,有助于我们单片机技术水平的提高。
1.3.1ADC0832的主要特点
(1)8位分辨率;
(2)双通道A/D转换;
(3)输入输出电平与TTL/CMOS相兼容;
(4)5V电源供电时输入电压在0~5V之间;
(5)工作频率为250KHZ,转换时间为32μS;
(6)一般功耗仅为15mW;
(7)8P、14P—DIP(双列直插)、PICC多种封装;
(8)商用级芯片温宽为0°Cto+70°C,工业级芯片温宽为−40°Cto+85°C;
1.3.2ADC0832管脚介绍
图1.5ADC0832引脚图
(1)CS_片选使能,低电平芯片使能。
(2)CH0模拟输入通道0,或作为IN+/-使用。
(3)CH1模拟输入通道1,或作为IN+/-使用。
(4)GND芯片参考0电位(地)。
(5)DI数据信号输入,选择通道控制。
(6)DO数据信号输出,转换数据输出。
(7)CLK芯片时钟输入。
(8)Vcc/REF电源输入及参考电压输入(复用)。
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。
通过DI数据输入端,可以轻易的实现通道功能的选择。
1.4LCD1602液晶显示屏
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。
一般1602字符型液晶显示器实物如图
图1.61602字符型液晶显示器实物图
1602LCD分为带背光和不带背光两种,其控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别。
1602LCD主要技术参数:
显示容量:
16×2个字符;芯片工作电压:
4.5—5.5V;工作电流:
2.0mA(5.0V);模块最佳工作电压:
5.0V;字符尺寸:
2.95×4.35(W×H)mm
1.4.1引脚功能说明:
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表1所示:
第1脚:
VSS为地电源。
第2脚:
VDD接5V正电源。
第3脚:
VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:
R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第6脚:
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:
D0~D7为8位双向数据线。
第15脚:
背光源正极。
第16脚:
背光源负极。
表1.21602LCD引脚接口说明
编号
符号
引脚说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
数据
2
VDD
电源正极
10
D3
数据
3
VL
液晶显示偏压
11
D4
数据
4
RS
数据/命令选择
12
D5
数据
5
R/ W
读/写选择
13
D6
数据
6
E
使能信号
14
D7
数据
7
D0
数据
15
BL A
背光源正极
8
D1
数据
16
BL K
背光源负极
1.4.21602LCD的指令说明及时序
1602液晶模块内部的控制器共有11条控制指令,如表1.3所示。
表1.3控制命令表
序号
指令
RS
R/W
D7
D6
D5
D4
D3
D2
D1
D0
功能
1
复位显示器
0
0
0
0
0
0
0
0
0
1
清屏,光标归位
2
光标返回
0
0
0
0
0
0
0
0
1
*
设置地址计数器清零,数据不变,光标移到左上角
3
字符进入模式
0
0
0
0
0
0
0
1
D
S
设置字符进入时的屏幕移位方式
4
显示开/关控制
0
0
0
0
0
0
1
D
C
B
设置显示开关,光标开关,闪烁开关
5
光标或字符移位
0
0
0
0
0
1
S/C
R/L
*
*
设置字符与光标移动
6
功能设置
0
0
0
0
1
DL
N
F
*
*
设置DL,显示行数、字体
7
设置字符发生存贮器地址
0
0
0
1
字符发生存贮器地址
设置6位的CGRAM地址以读/写数据
8
设置数据存贮器地址
0
0
1
显示数据存贮器地址
设置7位的DDRAM地址以读/写数据
9
读忙标志或地址
0
1
BF
计数器地址
读忙标志及地址计数器
10
写数据到CGRAM或DDRAM)
1
0
写入一字节数据,
需要先设置RAM地址
向CGRAM/DDRAM写入一字节数据
11
从CGRAM或DDRAM读数据
1
1
读取入一字节数据,
需要先设置RAM地址
从CGRAM/DDRAM读取一字节数据
I/D=1递增,I/D=0递减。
S=0时显示屏不移动,S=1时,如果I/D=1且有字符写入时显示屏左移,否则右移。
D=1显示屏开,D=0显示屏关。
C=1时光标出现在地址计数器所指的位置,C=0时光标不出现。
B=1时光标出现闪烁,B=0时光标不闪烁。
S/C=0时,RL=0则光标左移,否则右移。
S/C=1时,RL=0则字符和光标左移,否则右移。
DL=1时数据长度为8位,DL=0时为使用D7-D4共4位,分两次送一字节。
N=0为单行显示,N=1时为双行显示。
F=1时为510点阵字体,F=0时为57点阵字体。
BF=1时LCD忙,BF=0时LCD就绪。
1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(说明:
1为高电平、0为低电平)
指令1:
清显示,指令码01H,光标复位到地址00H位置。
指令2:
光标复位,光标返回到地址00H。
指令3:
光标和显示模式设置I/D:
光标移动方向,高电平右移,低电平左移S:
屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效。
指令4:
显示开关控制。
D:
控制整体显示的开与关,高电平表示开显示,低电平表示关显示C:
控制光标的开与关,高电平表示有光标,低电平表示无光标B:
控制光标是否闪烁,高电平闪烁,低电平不闪烁。
指令5:
光标或显示移位S/C:
高电平时移动显示的文字,低电平时移动光标。
指令6:
功能设置命令DL:
高电平时为4位总线,低电平时为8位总线N:
低电平时为单行显示,高电平时双行显示F:
低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。
指令7:
字符发生器RAM地址设置。
指令8:
DDRAM地址设置。
指令9:
读忙信号和光标地址BF:
为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。
指令10:
写数据。
指令11:
读数据。
在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。
每次输入指令前都要判断液晶模块是否处于忙的状态。
1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如图6所示,这些字符有:
阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。
2设计要求及电路框图
2.1设计要求
运用所学的知识,设计一个气体泄漏报警装置,要求当厨房中天然气(CH4)或液化石油气(C4H10)浓度大于某个数值(例1000ppm)时,用蜂鸣器报警并发出控制信号,启动抽油烟机;当浓度小于这个数值时,报警停止,抽油烟机关闭。
2.2设计框图
声光报警电路
STC89C52
单片机
可燃性气体浓度采集
LCD1602液晶
显示电路
A/D转换模块
排气电路
图2.1设计总框图
通过QM-2采集可燃性气体浓度,经ADC0832模数转换把数据传输给单片机STC89C52,单片机通过对ADC0832转换来的数据进行处理,当可燃性气体弄到达到设定为报警浓度时,单片机将驱动报警电路,开启蜂鸣器报警,同时驱动排气电路,开启抽油烟机进行排气,单片机通过实时检测,当浓度降至报警浓度一下,单片机发出信号关闭蜂鸣器和抽油烟机。
3电路单元模块
3.1气体浓度检测模块
图3.1模拟气体浓度检测
由于在protues仿真软件中没有QM-2及QM系列气体传感器,所以我们只能用别的器件代替,因为气体浓度传感器QM-2是通过电阻的变化实现对气体感应做出反应,所以我们用一个电位器代替,如图3.1。
3.2A/D模数转换模块
图3.2ADC0832模数转换
因为单片机只能处理数字信号,我们不能直接让单片机处理模拟信号,所以我们要把气体传感器采集来的信号,通过模数转换后才能传给单片机,让单片机处理。
这里我们用的是ADC0832,ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
3.3报警电路模块
图3.3报警电路
当检测到的可燃性气体浓度高于设定的报警浓度时,系统通过软件响应P1.5驱动蜂鸣器报警电路,并且此时红色警示灯亮。
直到浓度低于设定的报警浓度,蜂鸣器停止报警,并且红色警示灯灭、绿色指示灯亮。
3.4排气模块
图3.4模拟排气模块
图3.4是一个模拟排气模块,这里我们用一个马达代替了抽油烟机,同样的当单片机检测到的可燃性气体浓度大于了设定的报警浓度时,单片机通过响应P1.5口驱动马达进行排气动作,直到可燃性气体浓度低于这个报警浓度时,单片机又会响应P1.5口,给一个低电平关闭马达,停止排气。
3.5LCD1602液晶显示模块
图3.51602液晶显示模块
本设计中采用液晶LCD1602显示环境中可燃气体的实测浓度Real和设置的报警临界浓度Set,其数据端口D0~D7与单片机的P0端口连接,数据/命令选择端RS、读/写选择端R/W、使能端E分别与单片机P2.0、P2.1、P2.2连接,此电路原理简单,电路连接方便,如图3.5所示。
4电路仿真
图4.1低于设定报警浓度时的仿真
在此设计中,我们把报警浓度设为了1000,图4.1浓度为928低于设定的报警浓度,没有达到报警跟排气的要求,所以从图中可以看出,马达跟蜂鸣器都没有工作。
图4.2高于设定报警浓度时的仿真
从图4.2中可以看出来,马达跟蜂鸣器都已经开启了,再看此时的浓度为1172,大于设定的报警浓度,所以单片机驱动了报警电路和排气模块。
总结
21世纪是全人类进入计算机时代的世纪,而围绕单片机及嵌入式系统形成的电子领域就是这个时代的基础。
在人们的生活、生产中,单片机都可以嵌入到任何对象体系中去实现智能控制。
在控制系统中,单片机可以将现场采集到的数据