51单片机一氧化碳报警器设计与制作_第1页
51单片机一氧化碳报警器设计与制作_第2页
51单片机一氧化碳报警器设计与制作_第3页
51单片机一氧化碳报警器设计与制作_第4页
51单片机一氧化碳报警器设计与制作_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

湖南商务职业技术学院毕业设计

目录

1设计简介.............................................................1

2总体设计方案........................................................1

2.1产品的功能要求..............................................1

2.2产品的技术要求..............................................1

2.3产品的组成及方案设计........................................2

3产品的硬件设计......................................................2

3.1主控电路....................................................2

3.2CO气体检测电路的设计.......................................4

3.3AD转换电路设计.............................................5

3.3液晶显示电路设计............................................6

3.4声光报警提示电路............................................8

3.5负载控制电路................................................9

3.6按键电路设计................................................9

4产品的软件设计...................................................10

4.1软件介绍...................................................10

4.2主程序流程图设计...........................................12

5产品设计技术标准.................................................13

6产品使用说明.....................................................13

6.1产品装配图.................................................13

6.2产品使用说明...............................................13

设计总结...........................................................14

参考资料...........................................................15

7附录.............................................................16

附录一元器件清单...............................................16

附录二原理图..................................................17

附录三PCB设计图..............................................17

附录四实物照片................................................19

I

湖南商务职业技术学院毕业设计

附录五源程序..................................................20

24

湖南商务职业技术学院毕业设计

51单片机一氧化碳报警器设计与制作

1设计简介

CO是一种有毒易燃易爆性气体,常温下无色无味、难溶于水,但易溶于氨水。

由于相对密度略低于空气,故能均匀的扩散于监测环境中。

一氧化碳中毒在冬季煤气不完全燃烧时,非常容易发生,因此设计和应用简

单、高效、低成本、可靠的CO检测仪具有重要的现实意义。

2总体设计方案

本产品主要是实现环境中一氧化碳的浓度检测以及设定浓度报警值,并且驱动

负载降低一氧化碳的浓度。下面分别对产品功能要求、产品的方案设计、硬件、软

件设计方面介绍。

2.1产品的功能要求

本产品的设计主要包括以下几项功能:

(1)能够检测环境中一氧化碳的浓度值;

(2)能够设定环境中一氧化碳浓度的报警值;

(3)报警功能:当环境一氧化碳浓度过大时,报警器要进行灯光报警,同时继电

器闭合,驱动负载排气扇工作,降低环境CO浓度值。

2.2产品的技术要求

在了解这个产品的工作原理以及功能之后,我们就可以基本确定产品的技术要

求。产品采用的单片机处理器成本都比较低,可以满足批量生产和各类工程的需

求。对于完整的一个产品而言,为提高市场的竞争力,这个产品应符合体积小、功

耗低、数据传输性能可靠和成本低廉等技术要求。具体指标和参数如下:

(1)体积小:探测器的体积要尽可能的小,这样占用的空间才能减少,使用和更

换才会方便;

(2)功耗低:产品可以采用三节5号干电池供电或5v电源供电。

(3)可靠性高:由于不确定的电磁干扰可能存在于产品工作环境中,尤其是在低

1

湖南商务职业技术学院毕业设计

温、高温、潮湿等极限工作状态,为了保证产品长时间的可靠工作,以及减少误报

次数,所以选择多指示灯,指示不同的状态。

2.3产品的组成及方案设计

本设计主要由MQ-2传感器模块、STC89C52单片机、灯光报警电路、继电器负

载电路、控制程序等组成。

产品的总体框图设计如下:

CO气体浓度采集模块AD转换

按键模块液晶显示模块

STC89C52

声光报警提示

复位电路

模块

晶振电路负载控制模块

图2.1产品总体框图设计

3产品的硬件设计

3.1主控电路

主控电路采用低成本的STC89C52芯片,是一种低功耗、高性能CMOS8位微控制

器,具有4K在产品可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和

在产品可编程Flash,使得STC89C52为众多控制应用产品提供高灵活、超有效的解

决方案。具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,

看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4

2

湖南商务职业技术学院毕业设计

个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全

双工串行口。另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电

模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工

作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直

到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。单片机最小系

统电路设计如下图所示:

图3.1.1单片机最小系统

3.2CO气体检测电路的设计

图3.2.1MQ-7CO检测电路

3

湖南商务职业技术学院毕业设计

如图3.2.1所示,在这个电路中,将检测到的CO传感器检测气体浓度,转换成

电压信号,再将电压信号传输给AD转换电路,图中第六脚就是输出电压信号。

3.2.1MQ-7介绍

MQ-7型气体传感器用于以CO为主要成分的气体的测量,而且它抗干扰能力强,

水蒸气、烟等干扰气体对它的影响小。

MQ-7型气敏元件具有以下特点:

(1)采用烧结半导体所形成的敏感烧结体,具有稳定的R(即器件在纯洁空气中

的阻抗)阻值,从而保证了长期工作的稳定性。

(2)单电源供电,其功耗仅0.7W左右。

(3)对所测试的气体有极高的灵敏度和信噪比。

器件的灵敏度:S=Ro/Rx为10~30。常见为QM系列的S值仅8左右。Rx为器件在

丁烷浓度为0.2%时的阻抗。

MQ-7的特点和工作参数如下:

特点:

⑴广泛的探测范围

⑵高灵敏度/快速响应恢复

⑶优异的稳定性/长寿命

⑷简单的驱动电路

MQ-7实物图片如下图所示:

图3.2.2MQ-7实物图

4

湖南商务职业技术学院毕业设计

3.3AD转换电路设计

AD转换电路采用的是ADC8032芯片,是一个8位的AD转换芯片,分辨率256

级,芯片结构简单,成本低,可以满足CO测量的精度要求。将MQ-7传感器输入的

模拟信号,转换成对应的数字信号,具体AD转换电路设计如下:

图3.3.1AD转换电路图

图中,MQ-7的电压信号从第2脚CH0输入,数字信号从第6脚DO输出,输入

到单片机的P1.2脚。

3.3.1ADC0832介绍

ADC0832是一种8位分辨率、双通道A/D转换芯片。

主要特点有:

输入输出电平与TTL/CMOS相兼容;5V电源供电时输入电压在0~5V之间;

工作频率为250kHz,转换时间为32μS;一般功耗仅为15mW;8P、14P—DIP(双列

直插)、PICC多种封装;商用级芯片温宽为0°Cto+70°C,工业级芯片温宽为−

40°Cto+85°C。

芯片接口说明:

·CS_片选使能,低电平芯片使能。

·CH0模拟输入通道0,或作为IN+/-使用。

·CH1模拟输入通道1,或作为IN+/-使用。

·GND芯片参考0电位(地)。

5

湖南商务职业技术学院毕业设计

·DI数据信号输入,选择通道控制。

·DO数据信号输出,转换数据输出。

·CLK芯片时钟输入。

·Vcc/REF电源输入及参考电压输入(复用)。

图3.3.2ADC8032实物图

3.3液晶显示电路设计

在单片机的人机交流界面中,一般的输出方式有以下几种:发光管、LED数码

管、液晶显示器。发光管和LED数码管比较常用,软硬件都比较简单。

LCD1602A是一种工业字符型液晶,能够同时显示16x02即32个字符。(16列

2行)。在日常生活中,我们对液晶显示器并不陌生。液晶显示模块已作为很多电子

产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看

到,显示的主要是数字、专用符号和图形。

液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有

电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成

电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、

数字摄像机、PDA移动通信工具等众多领域。

6

1602湖南商务职业技术学院毕业设计

16PIN

+5

135

13579

0246

2468

111

R61111

S

10K+5N+5

R

E

D

GNDCGND

L

R5GND

470

GND

图3.3.1液晶显示电路设计

3.4声光报警提示电路

3.4.1灯光提示电路

图3.4.1灯光提示电路

本设计利用不同颜色的LED指示不同的烟雾浓度报警,浓度低时绿色LEDG灯

亮,超过限定值红色LEDR灯亮,起到警示作用。

3.4.2声音报警电路

7

湖南商务职业技术学院毕业设计

VCC

Q1

P34R48550

1k

蜂鸣器

图3.4.2声音报警电路

采用压电陶瓷嗡鸣器,三极管Q1起开关作用,其基极的低电平使三极管饱和导

通,使蜂鸣器发声;而基极高电平则使三极管关闭,蜂鸣器停止发声。

3.5负载控制电路

+5

GND

Q2

R99012

FS

1KJ4

1

+5白2

3

排针

K1

M1

+-

A

21

J5接线端子

GND

图3.4.3继电器控制负载电路

负载是一只排风扇,通过继电器控制,电路中继电器室通过PNP型三极管驱

动,当阀值超过设定时,单片机会由高电平跳变成低电平,三极管导通继电器吸

合,继电器起开关作用,可以驱动负载。

8

湖南商务职业技术学院毕业设计

3.6按键电路设计

本设计采用按键接低的方式来读取按键,单片机初始时,因为为高电平,当按

键按下的时候,会给单片机一个低电平,单片机对信号进行处理。

在用单片机对键盘处理的时候涉及到了一个重要的过程,那就是键盘的去抖

动。这里说的抖动是机械的抖动,是当键盘在未按到按下的临界区产生的电平不稳

定正常现象,并不是我们在按键时通过注意可以避免的。这种抖动一般10~200毫秒

之间,这种不稳定电平的抖动时间对于人来说太快了,而对于时钟是微秒的单片机

而言则是慢长的。硬件去抖动就是用部分电路对抖动部分加之处理,软件去抖动不

是去掉抖动,而是避抖动部分的时间,等键盘稳定了再对其处理。所以这里选择了

软件去抖动,实现法是先查寻按键当有低电平出现时立即延时10~200毫秒以避开抖

动(经典值为20毫秒),延时结束后再读一次I/O口的值,这一次的值如果为1表

示低电平的时间不到10~200毫秒,视为干扰信号。当读出的值是0时则表示有按

键按下,调用相应的处理程序。硬件电路如图3.4.5所示:

123

kkk

S1S2S3

SWSPSTSWSPSTSWSPST

GND

图3.4.5按键电路

4产品的软件设计

4.1软件介绍

KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开

发产品,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优

势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。KeilC51

软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重

要的一点,只要看一下编译后生成的汇编代码,就能体会到KeilC51生成的目标代

码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时

9

湖南商务职业技术学院毕业设计

更能体现高级语言的优势。下面详细介绍KeilC51开发产品各部分功能和使用。

Keil_c软件界面如图

图4.1.1Keil_c软件界面

Altiumdesigner是PORTEL公司在80年代末推出的EDA软件。采用设计库管

理模式,可以网络设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个

32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设

计等工作,可以设计32个信号层,16个电源--地层和16个机加工层。

Altiumdesigner的工作界面是一种标准的Windows界面,如图所示,包括:

标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方

位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。

10

湖南商务职业技术学院毕业设计

图4.1.2Altiumdesigner软件界面

4.2主程序流程图设计

开始

初始化

读取AD转换浓度值

判断当前浓度范围

执行相应的控制

判断按键

是否按下

设置相应参数

显示设置数值

11

结束

湖南商务职业技术学院毕业设计

图4.2.1主程序流程图

5产品设计技术标准

[1]J-STD-001E电气与电子组件的焊接要求

[2]IPC-A-610D(中文版),IPC-A-610E电子组件的可接受性要求

[3]IPC-7711/21电子组件和电路板的返工&返修

[4]GB/T11457-2006信息技术软件工程术语;

[5]GB/T8566-2007信息技术软件生存周期过程标准;

[6]GB/T8567-2006计算机软件文档编制规范。

6产品使用说明

6.1产品装配图

LCD1602显示

STC89C52

嗡鸣

器AD转换

风扇接口

MQ-7

继电器

电源报警灯

开关按键

图6.1.1产品装配图

12

湖南商务职业技术学院毕业设计

6.2产品使用说明

1、接通电源,打开开关,实时显示当前的可燃气体浓度值和报警值;

2、当可燃气体浓度没有超过报警值时,绿灯闪烁;

3、当前可燃气体超过上线时,红灯闪亮,蜂鸣器响。同时启动继电器,继电器

带动风扇转动模拟换气。

4、报警值可以通过按键设定,左边第一个进入设置模式,中间按键限定值加,

右边按键限定值减。

设计总结

本次设计的CO气体报警器以STC89C52为主芯片,STC89C52为8位单片机,当

ADC0832的输入电压为5V时,输出数字量值为FFH,故最大分辩率为0.0196V。

如果要获得更高的精度,需采用12位、13位等高于8位的A/D转换器。

毕业设计是一次非常难得的理论与实际相结合的机会,通过这次比较完整的CO

气体报警器软件设计,我摆脱了单纯的理论知识学习状态,能够和实际设计相结合,

大大的锻炼了我综合运用所学专业知识的能力,和解决实际工程问题的能力,同时

也提高了我查阅文献资料、设计手册、设计规范以及编程等专业能力水平,而且通

过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻

炼,经验得到了丰富,并且意志力,克服困难的能力以及耐力也都得到了不同程度

的提升。这是我们都希望看到的,也正是我们进行毕业设计的目的所在。

13

湖南商务职业技术学院毕业设计

参考资料

[1]李华.MCS-51系列单片机实用接口技术[M].北京:北京航空航天大学出

版社,1993.

[2]瞿生辉,冯毛官.单片机原理与应用[M].西安:西安电子科技大学出版

社,1989.

[3]高伟.AT89单片机原理及应用[M].国防工业出版社,2008.

[4]何立民.单片机高级教程[M].第1版.北京:北京航空航天大学出版

社,2001.

[5]夏继强.单片机实验与实践教程[M].北京:北京航空航天大学出版

社,2001.

[6]赵晓安.MCS-51单片机原理及应用[M].天津:天津大学出版社,2001.

[7]张友德等.单片微型机原理.应用与实现[M].上海:复旦大学出版

社,1996.101~184.

[8]吴炳胜.80C51单片机原理与应用技术[M].北京:冶金工业出版

社,2003.179~188.

14

湖南商务职业技术学院毕业设计

7附录

附录一元器件清单

BillofMaterials<ParameterTitlenotfound>

SourceDataFrom:谭磊CO检测.SchDoc

Project:18移动互联1班

Variant:None

CreationDate:2021/4/2610:57:14

PrintDate:4434244342.45754

FootprintCommentLibRefDesignatorDescriptionQuantity

lcd160216PIN16PIN11

CAP4MM104CAPC1Capacitor1

25V/4.7U10ufCAPACITORPOLC2Capacitor1

CAP-2.5430CAPC3,C4Capacitor2

LED5MM-GRELEENDYLEDD11

LED5MM-REDLEDRLEDD21

LED5MM-YELLOEWDGLEDD31

BELLBUZZERBUZZERF1Buzzer1

AXIAL-0.42KRES2FR1,R2,R3,R8,R95

SIPA02电源接口CON2J13P接线端子1

5.08A-2PIN接线端子CON2J2Connector1

SIP910KCON9J3Connector1

5V继电器RELAY-SPSTK11

LED-3mmN-greenLED3mmredL13MM发光二极管红1

DC002POWERPOWERP1DC电源座子1

NPN9012PNP2Q1,Q2PNPTransistor2

AXIAL-0.41KRES2,RES,RESR21,R4,R5[NoValue],电阻,[NoValue]3

AXIAL-1W4.7RRES2R61

AXIAL-0.410KRES2R71

MQ-2MQ-7MQ-3RL11

SW7X7电源开关SWITCHS1电源开关1

sw-pbSWSPSTSWSPSTS2,S3,S4,S54

DIP-8ADC0832ADC0832U1模数转换芯片1

DIP40STC89C5289C52U2单片机1

XTAL12MHZCRYSTALY1Crystal1

36

15

湖南商务职业技术学院毕业设计

附录二原理图

16

湖南商务职业技术学院毕业设计

附录三PCB设计图

17

湖南商务职业技术学院毕业设计

附录四实物照片

18

湖南商务职业技术学院毕业设计

附录五源程序

//程序头函数

#include<reg52.h>

//显示函数

#include<display.h>

//宏定义

#defineuintunsignedint

#defineucharunsignedchar

#defineData_ADC0809P1

//管脚声明

sbitLED_R=P2^2;//红灯

sbitLED_G=P2^0;//绿灯

sbitFENG=P2^5;//蜂鸣器

sbitsan=P3^4;//风扇控制(选配)

//ADC0809

sbitST=P3^3;

sbitEOC=P3^6;

sbitOE=P3^2;

//按键

sbitKey1=P2^6;//设置键

sbitKey2=P2^7;//加按键

sbitKey3=P3^7;//减按键

bitbdataflag;//报警标志位

ucharset;//设置状态

//函数声明

externucharADC0809();

externvoidKey();

//酒精含量变量

uchartemp=0;

ucharWARNING=25;//报警值

voidinit()//初始化函数

{

TMOD=0x01;//工作方式

TL0=0xb0;

TH0=0x3c;//赋初值(12MHz晶振的50ms)

EA=1;//打开中断总开关

ET0=1;//打开中断允许开关

TR0=1;//打开定时器开关

}

19

湖南商务职业技术学院毕业设计

voidmain()//主函数

{

Init1602();//初始化显示

init();//初始化定时器

while(1)//进入循环

{

temp=ADC0809();//读取酒精浓度值

if(set==0)//只有在非设置状态时,

Display_1602(temp,WARNING);//才刷新显示实时浓度值

if(temp<WARNING&&set==0)//非设置时当浓度值小于报警值时

{

flag=0;//报警标志位置0,不报警

}

elseif(temp>WARNING&&set==0)//非设置时当浓度值大于报警值时

{

flag=1;//报警标志位置1

}

Key();//扫描按键

}

}

//ADC0809读取信息

ucharADC0809()

{

uchartemp_=0x00;

//初始化高阻太

OE=0;

//转化初始化

ST=0;

//开始转换

ST=1;

ST=0;

//外部中断等待AD转换结束

while(EOC==0)

//读取转换的AD值

OE=1;

temp_=Data_ADC0809;//将0809的数值读入单片机

OE=0;

returntemp_;//返回读到的数据

}

voidKey()//按键函数

{

if(Key1==0)//设置键按下时

{

while(Key1==0);//检测按键是否释放

FENG=0;//蜂鸣器响

set++;//设置状态标志加

flag=0;//停止报警

san=1;//风扇停止转动(选配)

20

湖南商务职业技术学院毕业设计

TR0=0;//定时器停止

}

if(set==1)//设置时

{

write_com(0x38);//屏幕初始化

write_com(0x80+0x40+13);//选中报警值的位置

write_com(0x0f);//打开显示无光标光标闪烁

write_com(0x06);//当读或写一个字符是指针后一一位

FENG=1;//蜂鸣器停止鸣响

}

elseif(set>=2)//再按一下设置键时,退出设置

{

set=0;//设置状态清零

write_com(0x38);//屏幕初始化

write_com(0x0c);//打开显示无光标无光标闪烁

FENG=1;//蜂鸣器停止响

flag=1;//报警标志位置1

TR0=1;//定时器开始计时

}

if(Key2==0&&set!=0)//当在设置状态时,按下加键时

{

while(Key2==0);//按键释放

FENG=0;//蜂鸣器鸣响

WARNING++;//报警阈值加

if(WARNING>=255)//阈值最大加到255

WARNING=0;//清零

write_com(0x80+0x40+11);//在阈值的位置写入设置的数据

write_data('0'+WARNING/100);//显示百位(将123除以100得到的商是1,就是百位数

据)123为例子

write_data('0'+WARNING/10%10);//显示十位(将123除以10得到商是12,将12除以10

的余数就是十位)

write_data('0'+WARNING%10);//显示个位(将123除以10的余数3就是个位数据)

123为例子

write_com(0x80+0x40+13);//位置

FENG=1;//蜂鸣器停止

}

if(Key3==0&&set!=0)//减按键注释参考加按键部分

{

while(Key3==0);

FENG=0;

WARNING--;

if(WARNING<=0)

WARNING=255;

write_com(0x80+0x40+11);

write_data('0'+WARNING/100);

write_data('0'+WARNING/10%10);

write_data('0'+WARNING%10);

write_com(0x80+0x40+13);//位置

FENG=1;

21

湖南商务职业技术学院毕业设计

}

}

voidtime1_int(void)interrupt1//定时器函数

{

ucharcount;

TL0=0xb0;

TH0=0x3c;//重新赋初值

count++;//计时变量加

if(count==10)//定时器定时是50ms,此处计数10次,正好是500ms,用于报警时灯亮和蜂

鸣器响

{

if(flag==0)//报警标志为0时

{

LED_G=0;//绿灯亮

LED_R=1;//红灯灭

FENG=1;//蜂

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论