基于单片机的CO浓度检测及报警系统设计与制作要点.docx
《基于单片机的CO浓度检测及报警系统设计与制作要点.docx》由会员分享,可在线阅读,更多相关《基于单片机的CO浓度检测及报警系统设计与制作要点.docx(40页珍藏版)》请在冰豆网上搜索。
![基于单片机的CO浓度检测及报警系统设计与制作要点.docx](https://file1.bdocx.com/fileroot1/2022-12/30/e73339f7-6709-4ccd-a0e6-5752cd529ee7/e73339f7-6709-4ccd-a0e6-5752cd529ee71.gif)
基于单片机的CO浓度检测及报警系统设计与制作要点
学号:
密级:
基于单片机的CO浓度检测及报警系统设计与制作
学院名称:
培黎工程技术学院
专业名称:
电子信息科学与技术
学生姓名:
指导教师:
二〇一五年五月
DesignandManufactureofCOConcentrationDetectionandAlarmSystemBasedonSCM
College:
SchoolofBailieEngineering﹠Technology
Subject:
ElectronicInformationScienceandTechnology
Name:
Directedby:
May2015
郑重声明
本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。
尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。
对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。
本学位论文的知识产权归属于培养单位。
本人签名:
日期:
摘要
本文是以STC89C52芯片为核心设计制作了一种CO浓度检测及报警系统。
通过CO传感器检测空气中CO浓度,经电路处理实现报警及降低其浓度作用。
该系统主要包括ADC0832模数转换芯片,CO检测,蜂鸣器预警电路,LCD液晶显示电路等。
软件编程采用C语言,具有功耗低,成本低等特点。
关键词:
CO检测;单片机;报警系统
ABSTRACT
AdetectionandalarmsystemforCOconcentrationisdesignedwithSTC89C52chip.ItdetectsconcentrationofCOinairthroughcarbonmonoxidesensors,theroleofalarmandreduceitsconcentrationisachievedbycircuit.ThissystemmainlyconsistsofADC0832chip,detectionofCO,buzzeralarmcircuitandLCDliquidcrystaldisplaycircuit.ThesoftwareisprogrammedwithClanguage.Therefore,thesystemischaracterizedbylowpowerdissipationandlowcost.
Keywords:
detectionofCO;Singlechipmicrocomputer;alarm system
第1章绪论
1.1课题的背景和意义
一氧化碳是无色、无臭、无味、有毒的气体,熔点﹣199℃,沸点﹣191.5℃。
标准状况下气体密度为l.25g/L,和空气密度(标准状况下1.293g/L)相差很小,这也是容易发生煤气中毒的因素之一。
一氧化碳分子中碳元素的化合价是+2价,能进一步被氧比成+4价,从而使一氧化碳具有可燃性和还原性,一氧化碳能够在空气中或氧气中燃烧,生成二氧化碳。
一氧化碳中毒(carbonmonoxidepoisoning),亦称煤气中毒。
一氧化碳是无色、无臭、无味的气体,故易于忽略而致中毒。
常见于家庭居室通风差的情况下,煤炉产生的煤气或液化气管道漏气或工业生产煤气以及矿井中的一氧化碳吸入而致中毒。
中毒原理:
一氧化碳会与肺部的血红蛋白结合,造成机体缺氧。
一是轻度中毒。
患者可出现头痛、头晕、失眠、视物模糊、耳鸣、恶心、呕吐、全身乏力、心动过速、短暂昏厥。
血中碳氧血红蛋白含量达10%-20%。
二是中度中毒。
除上述症状加重外,口唇、指甲、皮肤粘膜出现樱桃红色,多汗,血压先升高后降低,心率加速,心律失常,烦躁,一时性感觉和运动分离(即尚有思维,但不能行动)。
症状继续加重,可出现嗜睡、昏迷。
血中碳氧血红蛋白约在30%-40%。
经及时抢救,可较快清醒,一般无并发症和后遗症。
三是重度中毒。
患者迅速进入昏迷状态。
初期四肢肌张力增加,或有阵发性强直性痉挛;晚期肌张力显著降低,患者面色苍白或青紫,血压下降,瞳孔散大,最后因呼吸麻痹而死亡。
经抢救存活者可有严重合并症及后遗症。
一氧化碳的后遗症。
中、重度中毒病人有神经衰弱、震颤麻痹、偏瘫、偏盲、失语、吞咽困难、智力障碍、中毒性精神病。
部分患者可发生继发性脑病。
在当今社会发展中,现代化的发展给人类带了很大的方便,但与此同时,人生安全越来越受到人们的重视,一氧化碳在工业领域所给我们带来的方便不言而喻,但它对人体的危害也是显而易见的。
所以我们设计一款基于单片机控制的一氧化碳检测仪,对一氧化碳进行检测,为人们提供了安全的保障。
1.2CO检测仪的种类
目前,市场上一氧化碳检测仪的种类是多种多样,目前应用得较为广泛的是热催化监测方式,但由于多种可热性气体都能催化氧化燃烧,导致检测精度下降,另外,采用这种方式的检测仪体积和功率都较大,不便于随身携带,本设计使用的是一种采用点调制非光红外(NDIR)气体成分分析技术检测一氧化碳气体的方法的一氧化碳传感器,该方法提高了检测精度,大大降低了检测仪的尺度和功耗,延长了电池供给时间,体积和功耗的有效降低。
1.3设计任务
本设计的任务是设计一个由单片机控制的一氧化碳的浓度检测及报警系统,它将传感器输出的电压信号进行A/D转换、滤波、线性化,由单片机将电压值转换为气体浓度和温度送LCD1602液晶显示,并判断是否超过报警上限,若超过,则发出声光报警,并打开风扇降低一氧化碳的浓度。
同时用户可以自己设定报警上限,使用户可以根据实际情况方便的掌握安全状况。
该系统以STC89C52单片机为核心,可以实现声光报警、故障自诊断、浓度显示、报警限设置。
它结构简单、性能稳定、使用方便、价格低廉、智能化,具有一定的实用价值。
第2章CO检测系统硬件设计
本论文主要完成一氧化碳检测仪软件和硬件仿真设计,设计内容包括:
A/D转换器程序、控制程序、超标报警、键盘检测、数据显示等。
硬件设计部分主要包括:
单片机、A/D转换器、时钟芯片、LCD、外围扩展数据RAM等芯片的选择;硬件主电路设计、数据采集、模数转换电路设计、液晶显示电路设计、外围扩充存储器接口电路、时钟电路、复位电路、键盘接口电路等功能模块电路设计。
硬件结构框图2.1。
硬件设计总体电路图见附录A1。
图2.1硬件结构框图
2.1STC89C52单片机简介
本系统采用STC89C52单片机。
而目前世界上较为著名的8位单片机的生产厂家和主要机型如下:
美国Intel公司:
MCS—51系列及其增强型系列;
美国Motorola公司:
6801系列和6805系列;
美国Atmel公司:
89C51等单片机;
美国Zilog公司:
Z8系列及SUPER8;
美国Fairchild公司:
F8系列和3870系列;
美国Rockwell公司:
6500/1系列;
美国TI(德克萨司仪器仪表)公司:
TMS7000系列;
NS(美国国家半导体)公司:
NS8070系列等等。
MCS—51系列单片机包括三个基本型8031、8051、8751。
本系统采用STC89C52单片机为控制核心。
而相比之下52型功能更为强大,ROM和RAM存储空间更大,52还兼容51指令系统。
基于本系统设计内容的需要,综合考虑后,我们选择单片机ATME公司的STC89C52为控制核心;主要基于考虑STC89C52是一个低电压,高性能CMOS8位单片机,片内含8KB的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM)、6个中断源;时钟频率0~24MHz;器件采用高密度、非易失性存储技术生产,并兼容标准MCS-51指令系统,功能强大。
STC89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8Kbytes的可反复擦写的只读程序存储器(PEROM)和256Kbytes的随机存取数据存储器,器件采用ATMEL公司的高密度,非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器和FLASH存储单元,功能强大,STC89C52单片机适合于许多较为复杂控制应用场合。
图2.2引脚图
主要性能参数:
与MCS-51产品指令和引脚完全兼容;
8K字节可重擦写FLASH闪存存储器;
1000次写/擦循环;
时钟频率:
0Hz~24MHz;
三级加密存储器;
256字节内部RAM;
32个可编程I/O口线;
3个16位定时/计数器;
6个中断源;
可编程串行UART通道。
2.2单片机最小系统的设计
采用STC89C52来设计一个单片机系统能运行起来的需求最小的系统[15],电路图见图2.3:
图2.3单片机最小系统图
上图的最小单片机系统包含有晶振电路和复位电路,STC89C52芯片组成。
晶振电路在各种指令的微操作在时间上有严格的次序,这种微操作的时间次序称作时序,STC89C52的时钟产生方式有两种,一种是内部时钟方式,一种是外部时钟方式。
本系统中采用了内部时钟方式,为了尽量降低功耗的原则。
电路图见图2.4。
图2.4晶振电路图
在89C52单片机的内部有一个震荡电路,只要在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振)就构成了自激振荡器并在单片机内部产生时钟脉冲信号,图中电容器C1和C2稳定频率和快速起振,晶振CRY选择的是12MHz。
复位电路在单片机工作中仍然是不可缺少的主要部件中,单片机工作时必须处于一种确定的状态。
端口线电平和输入输出状态不确定可能使外围设备误动作,导致严重事故的发生;内部一些控制寄存器(专用寄存器)内容不确定可能导致定时器溢出、程序尚未开始就要中断及串口乱传向外设发送数据[1]。
图2.5上电复位电路图
本设计中复位电路采用的是上电复位与手动复位电路,开关未按下是上电复位电路,上电复位电路在上电的瞬间,由于电容上的电压不能突变,电容处于充电(导通)状态,故RST脚的电压与VCC相同。
随着电容的充电,RST脚上的电压才慢慢下降。
选择合理的充电常数,就能保证在开关按下时是RST端有两个机器周期以上的高电平从而使STC89C52内部复位。
开关按下时是按键手动复位电路,RST端通过电阻与VCC电源接通,通过电阻的分压就可以实现单片机的复位[4]。
电路图见图2.6:
图2.6复位电路图
2.3数据采集系统的简介
CO传感器选用CO/CF-1000探头组成,如下表2.1。
表2.1传感器参数
名称
一氧化碳传感器CO/CF-1000
测量范围
0-1000ppm
输出
100±20nA/ppm
分辨率
0.05ppm
响应时间(T90)
﹤50seconds
湿度范围
15-90%RH(非凝结)
最大零点漂移(20℃to40℃)
10ppm
长期漂移
﹤2%/每月
推荐负载值
10Ω
线性度输出
线性
测量电路由CO/CF-1000一氧化碳传感器、ADC0832组成。
当空气被内部的采样系统接收后,产生一个与一氧化碳浓度成正比的电压信号,该电压信号经
ADC0832与STC89C52单片机相连,在显示器上显示出一氧化碳的浓度值,当超过国家规定的标准时报警[5]。
2.4模数转换器的简介
由于ADC0832模数转换器具有8位分辨率、双通道A/D转换、输入输出电平与TTL/CMOS相兼容、5V电源供电时输入电压在0~5V之间、工作频率为250KHZ、转换时间为32微秒、一般功耗仅为15MW等优点,适合本系统的应用,所以我们采用ADC0832为模数转换器件[3]。
电路图见图2.7如下:
图2.7模数转换电路图
ADC0832具有以下特点:
①8位分辨率;
②双通道A/D转换;
③输入输出电平与TTL/CMOS相兼容;
④5V电源供电时输入电压在0~5V之间;
⑤工作频率为250KHZ,转换时间为32μS;
⑥一般功耗仅为15mW;
⑦8P、14P—DIP(双列直插)、PICC多种封装;
⑧商用级芯片温宽为0℃到+70℃,工业级芯片温宽为−40℃到+85℃;
芯片接口说明:
①CS_片选使能,低电平芯片使能;
②CH0模拟输入通道0,或作为IN+/-使用;
③CH1模拟输入通道1,或作为IN+/-使用;
④GND芯片参考0电位(地);
⑤DI数据信号输入,选择通道控制;
⑥DO数据信号输出,转换数据输出;
⑦CLK芯片时钟输入;
⑧Vcc/REF电源输入及参考电压输入(复用)。
由于ADC0832模数转换器的位数为8位,所以ADC0832模数转换器的精度为:
10ppm/256=0.039ppm。
2.5按键电路的设计
本系统选择独立式按键。
键盘分为:
独立式和矩阵式两类,每一类按其编码方法又可以分为编码和非编码两种。
本系统具有人机对话功能,该功能即能随时发出各种控制命令和数据输入以及和LCD连接显示运行状态和运行结果。
由于本系统只有UP、DOWN、OK、CANCEL4个控制命令,所需按键较少,所以本系统选择独立式按键[13]。
电路图见图2.8。
图2.8按键电路图
2.6外围扩充存储器的简介
由于考虑STC89C52单片机具有8KB的程序存储器(ROM),256B的数据存储器(RAM),由于考虑到本系统的数据处理与存储所需的容量,现在需要扩充存储器的容量。
在应用中要保存一些参数和状态,本系统选用AT24C128存储器[8]。
电路图见图2.9。
图2.9外围扩充存储电路图
2.7上拉电阻电路的设计
在主电路图中接在P0口处有一个排阻RP1,由于P0口没有内接上拉电阻,为了为P0口外接线路有确定的高电平,所以要接上排阻RP1,以确保有P0口有稳定的电平[11]。
电路连接图见图2.10。
图2.10上拉电阻电路图
2.8液晶显示器简介
我们选用了AMPIRE128X64液晶显示模块,是由于本系统要有显示装置完成显示功能,显示器最好能够显示数据、图形,考虑到同种LCD显示器的屏幕越大体积越大,功耗越大的特点,该型号显示器消耗电量比较低,可以满足系统要求。
该类液晶显示模块采用动态的液晶驱动,可用5V供电。
AMPIRE128X64液晶共有22个引脚[9]。
AMPIRE128X64液晶显示模块与计算机的接口电路有两种方式。
分为直接访问方式和间接控制方式。
直接访问方式是把液晶模块作为存储器或I/O设备直接接在单片机的总线上,单片机以访问存储器或I/O设备的方式操作液晶显示模块的工作。
间接控制方式则不使用单片机的数据系统,而是利用它的I/O口来实与显示模块的联系。
即将液晶显示模块的数据线与单片机的Pl口连接作为数据总线,另外三根时序控制信号线通常利用单片机的P3口中未被使用的I/O口来控制。
这种访问方式不占用存储器空间,它的接口电路与时序无关,其时序完全靠软件编程实现。
本系统采用间接控制方式[14]。
液晶显示电路连接原理图见图下:
图2.11液晶显示器电路图
2.9报警电路的设计
图2.12报警电路接线图
报警信号通常有三种类型:
一是闪光报警,因为闪动的指示灯更能提醒人们注意;二是鸣音报警,发出特定的音响,作用于人的听觉器官,易于引起和加强警觉;三是语音报警,不仅能起到报警作用,还能直接给出警报种类的信息。
其中,前两种报警装置因硬件结构简单,软件编程方便,常常在单片机应用系统中使用;而语音报警虽然警报信息较直接,但硬件成本高,结构较复杂。
单频音报警实现单频音报警的接口电路比较简单,其发音元件通常可采用压电蜂鸣器,当在蜂鸣器两引脚上加3~15V直流工作电压,就能产生3kHZ左右的蜂鸣振荡音响。
压电式蜂鸣器,约需10mA的驱动电流,可在某端口接上一只三极管和电阻组成的驱动电路来驱动,如图2.12所示。
在图2.12中,P1.0接三极管基极输入端,当P1.0输出高电平“1”时,三极管导通,蜂鸣器的通电而发音,当P1.0输出低电平“0”时,三极管截止,蜂鸣器停止发音[12]。
第3章CO检测系统软件设计
3.1软件设计结构
软件设计部分主要包括:
主程序/子程序流程的设计、功能模块程序的编写、软/硬件结合调试与演示。
主要包括以下功能模块:
51驱动、检测、液晶显示、时钟、键盘、模数软换[10],软件结构框图3.1。
图3.1软件结构框图
3.2主程序模块的设计
主程序实现的功能:
与硬件相结合实现便携式一氧化碳检测仪的各个功能。
主要是检测与显示,时间调整与显示,数据存储,功能子函数的调用,见图3.2。
检测主程序程序见附录A2。
图3.2主程序流程图
3.3模数转换的设计
ADC0832转换的流程图见下图3.3;
ADC0832程序见附录A3。
图3.3数转换流程图
3.4按键模块的设计和时钟模块的设计
按键查询式的流程图见下图,按键程序见附录A4。
N
Y
N
图3.4按键查询式的流程图
时钟模块操作流程图见下图,时钟程序见附录A5。
图3.5时钟模块操作流程图
3.5液晶显示模块的设计
LCD模块在本系统中主要起着开界面汉字显示,以及各控制效果的显示。
采用直接访问方式。
液晶显示的操作流程图见下图3.6,液晶程序见附录A6。
否
是
图3.6液晶显示的操作流程图
第4章系统调试及功能实现
4.1总体系统调试
4.1.1软件调试
打开keil软件,打开程序,检查后单击编译按键,如果未发现错误和警告则说明程序能够正常运行。
编译结果如图所示:
图4.1软件编译结果图
所以程序能够正常运行。
4.1.2软件下载
通过串口将电脑中已经编写好的程序传输入51单片机中,打开电源,检查各模块是否正常工作。
首先将STC_ISP_V483这个串口通信软件打开,选择打开程序文件选项,找到需要录入单片机的hex文件,选择下载选项,点击后给单片机上电复位,等待信息框中显示已下载成功,说明程序已经录入单片机。
接下来首先通过按键选择工作模式,然后根据传感器模块的类型将相应的气体放置在传感器探头附近,等待声光报警模块工作,当报警模块工作后,通过按下外部中断按键选择报警模式,按一下则led二极管关闭,按第二下则蜂鸣器关闭,按第三下则led和蜂鸣器都打开。
将三个传感器模块都检查完毕后,按下复位键,并关闭电源。
通过监测总体系统能够正常工作。
4.2实物展示
焊接成品如下图4.2所示:
4.2焊接成品图
在焊接过程中,本设计采用万能板来焊接,同时外接电源采用的是USB供电。
接通电源初始图如4.3所示:
4.3接通电源初始图
在电源刚接通时,液晶屏显示当前CO浓度为000PM,设置的界限值为100PM,风扇处于未转动状态,发光二极管未亮并且蜂鸣器不报警。
系统工作时如图4.4所示:
4.4工作实物图
当CO传感器检测到的CO浓度大于国家标准值100ppm时,蜂鸣器报警同时红色指示灯发光、风扇转动。
结论
本次设计的任务是设计制作CO浓度检测报警器,设计中使用了低电压、高性能CMOS8位微处理器STC89C52单片机作为控制核心,总体电路具有运行速度快,稳定,结构简单,散热迅速等特点,采用模块化设计,这样不仅有利于系统硬件的设计和调试,同时也方便对系统进行更改和系统硬件的升级。
CO/CF-1000气体传感器模块的特点在于其简易性和高效性,由于其输出口在监测到有害气体时直接输出低电平,这样就免去了从气体传感器上采集信号,这样硬件设计更加简洁,所需的器件也更加易于购买,硬件出错率也就更小,更加符合本设计的目的。
本次设计涉及到的知识面较多,由于本人理论水平和实践经验有限,本次设计还存在一些有待改进和优化的地方,比如在检测气体种类上可以增加对烟雾、NO等方面。
在实用性方面可以考虑将浓度监测系统与室内换气系统连接,这样就不仅做到了气体监测和警报,还做到了对有害气体及时处理,使整个室内监控系统更加完善。
参考文献
[1]何立民.MCS-51系列单片机应用系统设计[M].北京航空航天大学出版社,1990,34-50.
[2]马忠梅.单片机的C语言应用程序设计[M].北京航空航天大学出版社,2001,60-90.
[3]陈小忠.单片机接口技术实用子程序[M].人民邮电大学出版社,2005,80-120.
[4]张淑清.单片微型计算机接口技术及其应用[M].国防工业大学出版社,2001,60-70.
[5]曹琳琳.单片机原理及接口技术[M].国防科技大学出版社,2000,80-102.
[6]郭天祥.新概念51单片机C语言教程[M].北京:
电子工业出版社,2009,120-140.
[7]周航慈.单片机应用程序设计技术[M].北京:
北京航空航天大学出版社,2011,70-103.
[8]石秀名.嵌入式系统原理与应用[M].北京:
北京航空航天大学出版社,2009,30-50.
[9]王宜怀.嵌入式技术基础与实践[M].北京:
北京航空航天大学出版社,2007,90-100.
[10]谭浩强.C程序设计[M].第四版.北京:
清华大学出版社,2010,87-90.
[11]陈志旺.51系列单片机系统设计与实践[M].北京:
电子工业出版社,2008,98-115.
[12]余锡存,曹国华.单片机原理及接口技术.第二版.西安:
西安电子科技大学出版社,2012,150-170.
[13]徐煜明.单片机原理及接口技术[M].电子工业出版社,2005,110-140.
[14]赵新民.智能仪器原理及设计[M].哈尔滨工业大学出版社,1995,67-98.
[15]徐英慧.嵌入式系统设计[M].北京航空航天大学出版社,2010,35-60.
致谢
我的毕业课题是便携式一氧化碳检测仪的设计,是一个实际的小工程。
作为一个本科的学生,我对实际的工程设计认识不够,经验不足,难免在设计的整体框架中,有很多的细节没有考虑。
但**老师和同学们给予我鼓励和很多宝贵的建议,并且悉心引导,给予我一个比较清晰的设计思路,帮助我解决了许多设计上的困难。
最后还要感谢在百忙之中进行论文评审的老师们,对论文的不足之处敬请批评点。
附录
附录A1硬件设计总体电路图
附录A2检测主程序程序
#include//调用外函数//
#include
#include
#include
#include
#include
#include/**********初始化CPU************[2]/
voidinit_cpu()//初始化cpu
{EA=1;
TR0=1;
TR1=1;
TMOD=0x11;
TH1=0x3c;
TL1=0xb0;
}
/*voidtime1(void)interrupt3using1
{