基于单片机的室内甲醛检测系统设计方案Word文档下载推荐.docx
- 文档编号:19037631
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:32
- 大小:295.48KB
基于单片机的室内甲醛检测系统设计方案Word文档下载推荐.docx
《基于单片机的室内甲醛检测系统设计方案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于单片机的室内甲醛检测系统设计方案Word文档下载推荐.docx(32页珍藏版)》请在冰豆网上搜索。
1.单片机集成度高。
单片机包括CPU、4KB容量的ROM(8031)、128B容量的RAM、2个16位定时/计数器、4个8位并行口、全双工串行口;
2.系统结构简单,使用方便,实现模块化;
3.单片机可靠性高,可工作到10^6~10^7小时无故障;
4.处理能力强,速度快。
系统所用单片机介绍:
本系统以单片机为控制核心。
本系统采用的是美国ATMEL公司生成AT89C52型单片机。
AT89C52是一个低电压,高性能CMOS8位单片机,片含8kbytes的可反复擦写的Flash只读程序存和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。
AT89C52主要功能特性:
1、兼容MCS51指令系统;
2、8K可反复擦写(大于1000次)FlashROM;
3、32个双口I/O口;
4、256X8bit部RAM;
5、3个16位可编程定时/计数器中断;
6、时钟频率0-24MHZ;
7、2个串行中断,可编程UART串行通道;
8、2个外部中断,共8个中断源;
9、2个读写中断口线,3级加密位;
10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;
11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。
AT89C52有40个引脚(如图2.1所示),32个外部双向输入/输出(I/O)口,同时含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,片振荡器及时钟电路,AT89C52可以按照常规方法进行编程,也可以在线编程。
图2.1单片机引脚图
AT89C52引脚功能:
VCC:
电源电压
GND:
地
P0口:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
P1口:
P1是一个带部上拉电阻的8位双向I/O口。
与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)。
P2口:
P2口是一个带有部上拉电阻的8位双向I/O口。
P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
P3口:
P3口是一组带有部上拉电阻的8位双向I/O口。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,P3口还接受一些用于Flash闪速存编程和程序校验的控制信号。
RST:
复位输入,当振荡器工作是,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:
当访问外部程序存或数据存储器时ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
PSEN:
程序储存允许输出是外部程序存的选通信号,当AT89C52由外部程序存取指令(或数据)时每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存,EA端必须保持低电平。
XTAL1:
振荡器反相放大器及部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端。
P3.0/RXD:
串行接口
P3.1/TXD:
P3.2/INT0:
外部中断输入
P3.3/INT1:
P3.4/T0:
定时/计数器输入
P3.5/T1:
定时计数器输入
P3.6/WR:
外部数据写选通
P3.7/RD:
外部数据读选通
2.2传感器介绍
本系统采用的传感器为MQ138型甲醛传感器,该传感器具有广泛的探测围,快速的响应恢复及较高的灵敏度,长期的工作稳定性,简单的测试电路等特点。
主要应用于家庭、环境的有害气体探测装置,适宜于醇类、醛类、芳族化合物等有机溶剂的探测
管脚图如图2.2所示:
图2.2甲醛传感器管脚图
MQ138的规格如下:
A.标准工作条件
表2.1标准工作条件
符号
参数名称
技术条件
备注
VC
回路电压
5V±
0.1V
ACorDC
VH
加热电压
RL
负载电阻
可调
RH
加热电阻
31Ω±
3Ω
室温
PH
加热功耗
小于900毫瓦
B.环境条件
表2.2环境条件
Tao
使用温度
-20℃-50℃
Tas
存储温度
-20℃-70℃
相对湿度
小于95%RH
C.灵敏度特性
表2.3灵敏度特性
RS
敏感体电阻
10KΩ-200KΩ
(在洁净空气中)
探测围:
1ppm-100ppm苯
5ppm-100ppm甲醇
10ppm-300ppm丙酮
0ppm-10ppm甲醛
30ppm-300ppm酒精
α
浓度斜率
≤0.65
标准工作条件
温度:
20℃±
2℃Vc:
相对湿度:
65%±
5%Vh:
预热时间
不少于24小时
MQ138气敏组件由微型瓷管、敏感层、测量电极和加热器构成的敏感组件固定在塑料或不锈钢制成的腔体,加热器为气敏组件提供了必要的工作条件。
封装好的气敏组件有6只针状管脚,其中4个用于信号取出,两个用于提供加热电流。
MQ138型气敏器件对不同的种类,不同的浓度的气体有不同的电阻值。
因此,在使用此类型气敏组件是,灵敏度的调整是很重要的。
建议用10ppm甲苯或50ppm酒精蒸汽校准传感器。
3硬件系统设计
3.1系统总体结构及工作原理
系统是由传感器模块,A/D转换模块,单片机最小系统,液晶显示模块,报警模块,外围存储模块以及按键模块组成。
其中主要器件传感器选用的是MQ138型气体传感器,它的灵敏度高,价格便宜,外围驱动电路简单,单片机选用的是AT89C52,它的控制能力强。
总体结构图如图3.1所示。
图3.1硬件结构框图
本系统以单片机为控制中心,利用甲醛传感器采集室甲醛含量的数据,传感器采集的数据经外围放大电路放大,此放大信号经AD转换器转换为单片机可识别的信号,信号经由单片机处理显示在LCD上,当超标时单片机控制报警电路报警。
硬件设计所涉及的主要有:
MCU,A/D,LCD,外围扩展数据RAM等芯片的选择;
硬件设计电路主要有:
数据采集电路,数据转换电路,数据处理电路,显示电路,报警电路以及外围扩充存电路的设计。
3.2系统主要模块介绍
3.2.1数据采集模块
在数据采集系统中,由甲醛传感器出来的电流信号必须经过放大,转换才能被单片机识别和处理。
在本系统中甲醛传感器所检测的电流信号经电位器放大为电压信号,再经AD转换为单片机识别的信号。
数据采集电路如下图所示:
图3.2
3.2.2数据显示模块
对于本设计要求显示所检测到的甲醛含量,所以在硬件设计中会有液晶显示的设计,最初所使用的液晶显示器为LCD1602液晶显示器,随着设计的深入发现1602显示器由若干个5X7点阵组成,只能显示简单的汉字,不能满足本系统的设计要求。
经过筛选最后选定LCD12864显示器。
12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128X64全点阵液晶显示器组成,可完成图形显示也可以显示8X4个汉字(16X16点阵)。
下表为其引脚说明。
表3.212864引脚说明表
管脚名称
管脚定义
VSS
电源地
VDD
电源电压+5V
V0
对比度调节
R/S
指令数据信道
R/W
读写选择
E
使能选择
DB0-DB7
数据线
CS1
片选1H:
选择芯片(右半屏)信号
CS2
片选2H:
选择芯片(左半屏)信号
/RET
复位信号低电平复位
VOUT
液晶驱动电源
LED+
LED背光正电源
LED-
LED接地端
LCD12864液晶显示模块与计算机的接口电路有两种方式。
它与单片机的接口方法分为直接访问方式和间接控制方式。
直接访问方式是把液晶模块作为存或I/O设备直接接在单片机的总线上,单片机以访问存或I/O设备的方式操作液晶显示模块的工作。
间接控制方式则不使用单片机的数据系统,而是利用它的I/O口来实现与显示模块的联系。
即将液晶显示模块的数据线与单片机的P0口连接作为数据总线,另外三根时序控制信号线通常利用单片机的P2口中未被使用的I/O口来控制。
这种访问方式不占用存空间,它的接口电路与时序无关,其时序完全靠软件编程实现。
本系统采用间接控制方式。
以下为LCD12864与单片机的接线原理图见图3.3
图3.3LCD显示图
液晶显示原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就显示黑色,这样就可以显示出图形。
字符显示:
字符显示比较复杂,一个字符由16x8点阵组成,即要找到和显示屏是某几个位置对应的RAM区的字节,再使不同的位置为‘1’其它的为‘0’;
为‘1’的点亮,为‘0’的不亮,这样就显示出一个字符。
汉字显示和字符显示的原理差不多,就是一个汉字一般采用图形方式,事先从微机中用字模软件提取要显示的汉字的点阵码,每个汉字占32B,为两部分,各16B。
根据在LCD上开始显示的行列号及每行的列数就可以找出显示RAM的对应地址,送上汉字要显示的第一字节,以此类推,最后送完32B,这样汉字就显示出来了。
本系统所要显示的汉字和字符就是按照上述原理显示出来的,而相应字体的点阵码则是用字模软件提取出来的,然后把这些点阵码放在相应的LCD软件程序里。
所用的字模提取软件可以上网下载,软件中有取模方式选择能直接选择51单片机所需的C51格式。
3.2.3报警电路
在我们日常生活中所见到的相关报警方式有:
一是语音提示报警,如验钞机的报警,这种报警不仅可以告知人们出现报警还能让人们知道所报警的信息;
二是闪光报警,这种方式利用闪烁的指示灯提醒人们注意;
三是蜂鸣报警,发出蜂鸣声响引起人们注意。
由于本系统所需的报警电路只要求提醒人们注意甲醛含量超标,所以我们可以选择比较简单和低功耗的蜂鸣报警方式。
基于以上我选择了比较常见的单频音报警方式。
实现单频音报警的接口电路比较简单,其发音组件通常可采用压电蜂鸣器,当在蜂鸣器两引脚上加3~15V直流工作电压,就能产生3kHZ左右的蜂鸣振荡音响。
压电式蜂鸣器结构简单、耗电少,更适于在单片机系统中应用。
压电式蜂器,约需10mA的驱动电流,可在某I/O口接上一只三极管和电阻组成的驱动电路来驱动,如图3.4所示。
在图中,P14接三极管基极输入端,当P14输出高电平“1”时,三极管导通,蜂鸣器的通电而发音,当P14输出低电平“0”时,三极管截止,蜂鸣器停止发音。
5V
图3.4单频音报警电路图
下图为报警电路接线图:
图3.5报警模块
3.2.4模数转换模块
由于甲醛传感器放大的电压信号不能直接被单片机接收处理,这个电压信号必须经过A/D转换为数字信号才能被MCU接收和处理。
A/D转换器是用来通过一定的电路将模拟量转变为数字量。
模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。
但在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号。
常用的几种A/D转换器类型为:
积分型、逐次逼近型、并行比较型/串并行型、Σ-Δ调制型、电容数组逐次比较型及压频变换型。
A/D转换器的主要技术指标有:
分辨率、转换速率、量化误差、便宜误差、满刻度误差、线性度。
由于逐次逼近式A/D转换具有速度,分辨率高等优点,而且采用这种方法的ADC芯片成本低,所以我们采用逐次逼近式A/D转换器。
逐次逼近型ADC包括1个比较器、一个模数转换器、1个逐次逼近寄存器(SAR)和1个逻辑控制单元。
逐次逼近型是将采样信号和已知电压不断进行比较,一个时钟周期完成1位转换,依次类推,转换完成后,输出二进制数。
这类型ADC的分辨率和采样速率是相互牵制的。
优点是分辨率低于12位时,价格较低,采样速率也很好。
在本系统中选用的是ADC0832型模数转换器。
ADC0832模数转换器具有8位分辨率、双信道A/D转换、输入输出电平与TTL/CMOS相兼容、5V电源供电时输入电压在0~5V之间、工作频率为250KHZ、转换时间为32微秒、一般功耗仅为15MW等优点。
电路图如图3.6所示:
图3.6A/D转换电路
ADC0832的特点如下:
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;
芯片接口说明:
CS-片选使能,低电平芯片使能。
CH0仿真输入通道0,或作为IN+/-使用。
CH1仿真输入通道1,或作为IN+/-使用。
GND芯片参考0点位(地)。
DI数据信号输入,选择信道控制。
DO数据信号输出,转换数据输出。
CLK芯片时钟输入。
Vcc/REF电源输入及参考电压输入(复用)。
ADC0832的引脚图如下图3.7所示:
图3.7ADC0832引脚图
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。
通过DI数据输入端,可以轻易的实现信道功能的选择。
单片机对ADC0832的控制原理:
正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。
但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根资料在线使用。
当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。
当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。
此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入信道功能选择的数据信号。
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。
在第2、3个脉冲下沉之前DI端应输入2位数据用于选择信道功能。
由于甲醛传感器的测量围为0-10ppm,系统设计所选用的AD转换器为8位的ADC0832,所以本设计的精度为10ppm/256=0.039ppm。
3.3系统电路设计
本设计选用基于电化学原理的甲醛传感器,其原理是空气中的甲醛在电极下发生氧化反应,产生的扩散电极电流与空气中的甲醛浓度成正比,通过检测放大电路和放大倍数的调整经A/D转换后送单片机。
由于甲醛的含量超标的话将对人体的健康造成很大的伤害,因此本系统设计当单片机接收到A/D转换器转换后送来的信号时,单片机会检测该信号,并将信号转化为甲醛浓度的具体含量输出显示在LCD上,并且单片机会比较此信号,当此信号所表示的甲醛含量超过预先设定的警报标准时,会控制警报器发出超标警报。
这样方便人们能直观的读出当前室所含甲醛的含量,更能在含量超标是及时的报警提示。
系统原理图见图3.8:
图3.8系统整体原理图
4软件实现
4.1编写语言及编译软件的简介
单片机在应用过程中要最大化的节约CPU与存,除了汇编与C之外,JAVA和C++都不太适合做单片机的编程语言,C语言可读性好,代码便于维护,便于开发;
而汇编语言编写的程序不容易看懂,可维护性不好,但是执行效率高。
与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
由于IC工艺的成熟,MCU的存储资源越来越便宜,工作频率也越来越高,所以在资源利用率以及执行效率上没有像以前要求那么高了。
而且,实现的功能越来越强大,这些因素都助长了C在MCU编程中的应用。
所以在本系统的软件编写上选择了C语言。
Keil是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,Keil提供了包括C编辑器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。
运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。
Keil的优点:
KeilC51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件是更能体现高级语言的优势。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全windows接口。
4.2主程序模块
主程序实现的功能:
与硬件相结合实现室甲醛检测仪的各个功能。
主要是检测与显示,数据存储。
功能子函数的调用。
主程序结构框架图如图4.1所示:
图4.1主程序结构框图
4.3A/D转换流程图
A/D转换模块的主要功能就是将传感器的放大信号转换为MCU能识别的数字信号,A/D转换流程图如图4.2所示:
图4.2A/D转换流程图
4.4LCD显示流程图
LCD显示模块的软件部分主要作用就是在LCD屏上显示整个系统的开机画面,各个菜单,以及显示检测出的甲醛浓度等功能,LCD显示流程框图如图4.3所示:
图4.3LCD显示流程图
4.5按键流程图
按键是显现人机对话的一个控制按钮,按键模块的软件主要是实现通过按键对系统进行发送操作指令。
按键流程框图如图4.4所示:
N
图4.4按键流程图
5系统仿真
本系统采用的仿真软件是Proteus软件。
Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件(该软件中国总代理为风标电子技术)。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
虽然目前国推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。
是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年增加了Cortex和DSP系列处理器,并持续增加其它系列处理器模型。
在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。
Proteus的功能特点:
1.原理部图
2.PCB自动或人工布线
3.SPICE电路仿真
4.互动的电路仿真
用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IC器件。
5.仿真处理器及外围电路
可以仿真51系列
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 室内 甲醛 检测 系统 设计方案