基于单片机的多气体检测系统设计
2022-07-05

  摘 要:采用气体传感器阵列采集气体信息,通过以AT89C51 和ADC0809 组成的核心单元进行数据采集和数据处理,以LED 显示器显示结果,实现了对多种气体的识别和检测。

 

  气体传感器是一种能将气体种类及其与浓度有关的信息转换成电气信号的装置。根据这些电气信号的强弱就可以获得与待测气体在环境中存在情况有关的信息,从而可以进行检测、监控、报警。因此由气体传感器与模式识别系统构成的智能化气味识别仪器有着广泛的应用领域,如食品工业、化学工业、环境监测、医学诊断、安全检查等,越来越受到广泛关注。

  传统的气体检测大多采用单气体检测方式, 即每测量一种气体需要一种测量仪表。用一种仪器能够进行多种气体的检测和识别是气体检测仪的发展趋势,而本设计采用酒精传感器、甲烷传感器、一氧化碳传感器等多种气体传感器组成传感器阵列,通过传感器阵列能把气体中的特定成分检测出来,并将其转化为电信号,然后采用ADC0809 将传感器输出的模拟信号转换为数字信号,运用AT89C51 进行数据处理和计算,并通过LED 显示气体种类和浓度信息,这样就实现了对多种气体的定性识别和检测。

 

  1 硬件

 

  本设计硬件电路由数据采集、数据转换、数据处理、结果显示和报警等部分组成,涉及的芯片有AD0809 模数转换芯片、AT89C51单片机、SUN7474频率发生器以及一些气体传感器、、复位电路和LED 显示模块。系统的功能框图如图1 所示。

 

  图1 系统功能框图

  图1 系统功能框图

 

  1.1 气体传感器阵列

  气体传感器阵列是电子嗅觉系统的关键组成单元,相当于初级嗅觉神经元,由具有广谱响应特性、交叉灵敏度较大、对不同气味/气体有不同灵敏度的气敏元件组成。

  气体传感器是组成气体传感器阵列的核心器件。气体传感器是一种把气体中的特定成分检测出来,并将其转化为电信号的器件。通常,气体传感器阵列可以采用数个单独的气体传感器组合而成,并采用集成工艺制作,体积小,功耗低,便于信号的集中采集与处理。单个气体传感器与传敏阵列在特性上有质的区别,单个气体传感器对气味/ 气体的响应可用强度来表示,而气敏传感器阵列除了各个传感器的响应外,在全部传感器组成的多维空间中形成响应模式,在环境条件一定的情况下,阵列上的响应模式与其激励是一一对应的,而这正是该系统能对多种气味和气体进行辨识的关键所在。

  本设计要求实现对酒精、甲烷、一氧化碳气体的定性和定量分析,首先最重要的工作是选择合适的传感器,通过对性能、可实现性、价格等的对比,针对酒精气体,选择的是MQ-303A酒精传感器,针对甲烷气体,采用的是MQ-4 半导体气体传感器,针对一氧化碳气体,选择的是V-40 一氧化碳传感器,由这三种传感器组成传感器阵列。

  该设计通过气体传感器阵列采集气体信息,并将采集到的信息转化为电信号,然后送到ADC0809 进行模数转换。

  1.2 数据采集和数据处理系统

  由气体传感器阵列输出的微弱电信号,经各自信号放大电路对信号进行预处理,使其转换为O ~5V 范围内变化的直流信号,送到A/D 转换电路变换为数字信号,对其进行数据采集处理。

  为了方便与89C51 单片机的连接,本系统选用ADC0809芯片对采集到的气体信息进行模数转换。其分辨率为8 位,不必进行零点和满度调整,且具有高阻抗斩波稳定比较器,8个通道的多路开关可直接存取8 个单端模拟信号中的一个。利用单片机写启动A / D 转换器,转换结束后再由ADC0809 向89C51 发出中断请求信号,CPU 响应中断请求。通过对译码器的读操作,读取转换结果并送到被测量的相应存储区。再重新选择被测量,并再次启动A/D转换后中断返回。ADC0809与单片机89C51 连线线路如图2 所示。

 

  图2 ADC0809 与89C51 的连线线路

  图2 ADC0809 与89C51 的连线线路

 

  采用的是AT89C51 芯片。

  89C51 单片机是ATMEL、PHILIPS和SST等公司生产的与80C51 兼容的低功耗、高性能8 位单片机,具有比8031 更丰富的硬件资源,特别是其内部增加的闪速可电改写的存储器Flash ROM给单片机的开发及应用带来了很大的方便,且芯片价格非常便宜。在该系统中89C51 主要对采集数据进行处理,按各种气体浓度的数学模型计算出其浓度,由数码管显示其相应的气体种类及浓度值,当浓度超标时,进行报警。

  该系统还采用了分频器SUN7474.分频器对脉冲信号进行2的n次方分之一的分频,例如把32768HZ 的脉冲信号变成1HZ的秒信号。通常利用T触发器实现,每来一个脉冲后触发器状态改变一次,经过n个T触发器处理后就可以得到2的n次方分之一的分频信号。89C51接12MHZ晶振,经ALE端后输出到分频器为2MHZ,分频器进行分频后为ADC0809 提供所需的工作时钟。

  1.3 显示电路

  在该设计中,LED 显示器的显示方法采用动态显示。LED 动态显示的基本做法在于分时轮流选通数码管的公共端,使得各数码管轮流导通,在选通相应LED后,即在显示字段上得到显示字形码。这种方式不但能提高数码管的发光效率,并且由于各个数码管的字段线是并联使用的,从而大大简化了硬件线路。本设计中处理结果采用4位LED显示,首位显示气体类别,后3 位显示气体浓度。逐位轮流点亮各个LED,每一位保持1ms,在10~20ms 之内再一次点亮,重复不止。这样利用人的视觉停留,好像4 位LED 同时点亮一样。

  综上可得,基于单片机的多气体检测系统的数据采集、数据处理及结果显示电路如图3。

 

  图3 多气体检测系统电路

  图3 多气体检测系统电路

 

  2 软件设计

 

  本设计由数据采集、数据转换、数据处理、显示和报警几个模块组成。

  主程序流程图为图4。

 

  图4 主程序流程图

  图4 主程序流程图

 

  AD0809 部分程序流程图为图5。

 

  图5 AD0809 部分程序流程图

  图5 AD0809 部分程序流程图

 

  显示子程序流程图如图6。

 

  图6 显示子程序流程图

  图6 显示子程序流程图

 

  结语

 

  本文介绍了进行多气体分析的电子嗅觉系统的硬件结构和软件设计。在本设计中采用多传感器组成传感器阵列,可针对多种不同气体进行信息采集、信息转换和数据处理,最后显示气体种类和浓度信息,为多种气体的检测提供了一种切实可行的解决方案。

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 单片机
  • 嵌入式
  • MCU
  • STM
  • Linux Kernel是如何工作的

    ( 作者:杨东杰)  本文发表于LinuxFormatmagazine杂志,作者从技术深度上解释了LinuxKernel是如何工作的。相信对Linux

    08-11
  • Linux在PMP消费类电子产品上的应用

      Linux是一种适合于嵌入式系统的开源操作系统,可以高效地处理各种复杂的任务。从基于TIDM320的PMP解决方案入手,以TIDM320平台为例,提出一种在

    08-11
  • C51中的关键字和ANSIC标准关键字

    1、C51中的关键字2、ANSIC标准关键字作者:武力戡乱来源:武力戡乱的博客

    08-11
  • Watchdog的原理和配置

    一、Watchdog介绍单片机的watchdog一般都有两个,一个是独立看门狗IWDG,一个是窗口看门狗WWDG。以STM32为例,STM32的独立看门狗是一个

    08-11
  • BSP在嵌入式开发中的位置和作用

    BSP是板级支持包,是介于主板硬件和操作系统之间的一层,应该说是属于操作系统的一部分,主要目的是为了支持操作系统,使之能够更好的运行于硬件主板。BSP是相对于操

    08-11
  • 6步移植Lua代码

    Lua代码符合ANSIC标准,只要有C编译器的开发环境就能跑Lua。虽说只要有C编译器就能跑Lua,但是单片机的环境太简单,有些C标准的内容仍旧无法支持。Lua

    08-11
  • 为什么单片机管脚设计成低电平才有效?

    它是由常用的电路结构所决定的,低电平时电路往往有较高电平时更低的环路阻抗,而低阻抗则意味着抗干扰能力更强。结合实际讲一个有用的例子来加深印象:有的同学可能已经学

    08-11
  • 单片机硬件设计去耦和供电

    1、建议在印制电路板中,VDD和GND分别由电源层和地层实现。连接到AVDD和AGND引脚的模拟电源应直接布线到电源层和地层,它们不能和任何一个数字电源共享线路

    08-11
  • 设计单片机线路板时有指示灯的好处

    在设计单片机线路板的硬件的时候,一般都有指示灯,有时还不止一个,这样做是为什么呢?下面我来简要说一下自己设计电路板和软硬件调试的时候,指示灯所起到的不可忽视的作

    08-11
  • ARM Contex三个系列的区别

    从cortex开始,分为三个系列,a系列,r系列,m系列。m系列与arm7相似,不能跑操作系统(只能跑ucos2),偏向于控制方面,说白了就是一个高级的单片机。

    08-11
  • 51单片机程序的几个特点

    本篇我们将分析上一篇所写的程序代码。未来学习单片机的大部分精力,我们也将放在程序代码的编写上。但是不用担心,我会非常详细的介绍每个程序的编写思路和各种注意事项等

    08-11
  • 基于Linux 的室内智能温度控制系统

      在大力提倡节能减排以及追求高质量生活的今天,冬季供暖系统存在的不足日益显现出来。我国北方城市大部分采用集中供暖,在整个供暖期内,无论室内有人与无人,系统全天

    08-10
下载排行榜
更多
广告