APP下载

基于STM32的CO2浓度探测系统研究

2017-12-02张学典仲华

软件导刊 2017年11期

张学典+仲华

摘要:随着社会的进步和人民生活水平的提高,环境问题越来越受到人们的关注,CO2浓度成为水环境安全的重要指标。针对传统CO2浓度探测器智能化程度低和信号分析能力差的问题,应用非分散红外(NDIR)新型CO2气体检测系统,持续不间断地测量水体表面的CO2浓度。系统以单片机STM32为控制芯片,电路是基于热电堆的气体传感器,利用了非分散红外(NDIR)原理。该电路针对CO2浓度测量进行优化,通过采用不同滤光器的热电堆之后亦可精确测量多种气体的浓度。

关键词关键词:CO2浓度;NDIR;热电堆

DOIDOI:10.11907/rjdk.171511

中图分类号:TP319

文献标识码:A文章编号文章编号:16727800(2017)011005103

0引言

随着人类工业化的进行,大量的煤炭、石油、天然气等化石燃料的使用和土地利用方式的变化,使得大气中温室气体浓度迅速增加[1]。自从工业革命以来,人类活动对气候的影响总体上呈上升趋势。截至2005年,大气浓度值已从工业化前的约280ppm上升到400ppm,并在持续增加[2]。CO2对于水生植物光合作用有着至关重要的影响,水中CO2的溶解服从亨利定律[3],并受温度影响,CO2浓度升高对水生生态系统的影响极其显著。因此,在全球气候变化背景下研究CO2测量仪尤为重要[4]。该系统是一个完整的基于热电偶的CO2测量仪,利用了非分散红外技术原理,通过采用不同滤波器的热电堆测量CO2浓度。

1系统结构

整个系统以STM32F103C8T6为核心,整个电路框架包括稳压模块、温湿度传感器、两个按键、四路AD采集、一个Nokia5110液晶屏以及一个泵。STM32系列的32位闪存微控制器是使用ARM公司 的CortexM3内核,它具有集高性能、低功耗、实时应用、具有竞争性价格于一体的优势[5],内含18通道的12位A/D转换器及USART、IIC、USB2.0等丰富的外围设备。稳压模块采用ADP7105芯片,该芯片提供3个固定输出电压选项和可调输出型号,可通过外置反馈分压器,将输出电压调节至1.22V~19V,可以为二氧化碳探测器系统提供12V、5V、3.3V电压。系统通过控制泵的转动抽取现场气体,经过光学气室后四路AD采集相应信号,产生的信号电压相对较小(从几百微伏到几毫伏),需要使用高增益和极低的失调与漂移的AD8629运算放大器放大输出信号[6]。再通过相关算法计算CO2浓度,温湿度传感器检测环境,液晶屏实时显示环境温度和CO2浓度。系统结构如图1所示。

2二氧化碳检测工作原理

系统使用热电堆传感器接收照射的红外光源,热电堆传感器由若干热电偶串联而成,被红外光波照射的吸收膜是一种热容量小、温度容易上升的薄膜[7]。红外光照射热电堆时,各热电偶测温端温度上升,热电偶之间就会产生电动势,有源检测器的红外密度通过密封光路气室递减[8],此关系称为比尔朗伯定律,I=I0e-klx。该定律是本系统设计的基础依据,描述如图2所示。

式中,I表示在目标气体中红外密度,I0表示零气体时红外密度,K表示特定气体和滤光气体密度,l表示灯与检测器之间的等效光學路径长度,x表示气体浓度。

图2光强通过CO2变化情况

将CO2通入采样腔中,当一束平行的单色光通过采样腔时,CO2的吸光度与CO2浓度和光的乘积成正比。采样腔中的CO2浓度越大则对光的吸收愈多,透过的光就愈弱。向采样腔中通入低浓度的CO2气体或者纯氮气,再输入高浓度的CO2,通过这两种浓度的气体进行校准。

在红外频谱中,气体可吸收特定频率的光波,这种特性可用作气体分析。当红外辐射射入气体中,并且当红外波长匹配分子的自然频率或谐振频率时,原子能态根据分子的离散步长变化而振动[9]。

如图3所示,CO2在4 200~4 300nm范围内的吸收强度比在其它波长的吸收强度强,在3 500~4 000nm之间的吸收强度最弱。图4显示了CO2吸收频谱与水的吸收频谱重叠,可以明显发现,在3 500~4 300mm范围内,水对红外频谱的吸收较弱,因此选择此波长段的光波。在检测器上放置两个滤光器,一个滤光器吸收波长4 260nm光的输出作检测通道,另一个吸收3 910nm光的输出作基准通道。通过两个通道的电压之比即可计算出CO2的浓度(所有吸收数据均来自HITRAN数据库)。

3系统设计与实现

系统主要实现如下模块功能:系统初始化、上位机通信协议、数据采集、算法设计、液晶显示。系统流程如图5所示。

图5系统流程

3.1系统初始化

初始化MCU和系统自检初始化定时器,主要包括系统时钟设置定ADC初始化、串口初始化和通用I/O口GPIO的配置[1013]。

RCC_Configuration();//定义系统时钟初始化函数

ADC_Init();//初始化函数

CO2_NVICInit()//中断初始化

中断初始化函数涉及中断优先级设置NVIC_SetPriority()和中断使能NVIC_EnableIRQ()。

对GPIO的配置分为模拟输入和模拟输出两种模式,主要是对PA、PC、PF几个IO口进行配置。PF6、PF7作为输出模式控制红绿指示灯状态,PF0、PF1作为模拟输入口检测按键,PA作为输出模式驱动5110液晶,PC0、PC1驱动电机模块,用ADC0、ADC1、ADC2、ADC3采集传感器输出信号。

3.2上位机通信协议设置

在串口设置代码中设置上位机的串口波特率115 200Hz、1个启动位、8个数据位、无奇偶校验7位和2个停止位。打开上位机,如果波特率设置不正确,则电路无法响应。通过上位机发送指令Start开启光学电路的指示灯并且启动ADC采集信号,由于灯和热电堆的特性不同,开启灯和热电堆时必须通过上位机发送指令对系统进行校准,设计scal指令对系统进行校准,首先向密室中注入零气体使光路环境稳定,在上位机中输入scal命令回车,屏幕显示输入零气体值,向气室中充入氮气稳定后在上位机中输入零气体浓度值0,屏幕显示输入满量程值,向气室中充入高浓度二氧化碳稳定后在上位机中输入高浓度值。系统通过输入的量程值通过核心算法计算出浓度计算公式中的相关参数。系统校准之后向气室中输入一定浓度值的二氧化碳,系统通过将二氧化碳浓度值带入校准好的浓度公式中计算出CO2浓度值。endprint

3.3数据采集

非分散红外技术是通过一定波长的红外光照射密封气室,再通过一定浓度值的CO2对光强度的影响计算CO2的浓度值[1417]。密封气室通过管道通向目标气体,在气室口通过泵的转动注入气体,系统通过L9110电机驱动芯片驱动泵,通过L9110init()函数初始化电机驱动的GPIO口。密室中充满某浓度值的CO2后,在程序中通过设置ADC中断定时采集热电堆传感器输出信号。NVIC_EnableIRQ()函数使能ADC中断,通过ADC_IRQ()函数处理数据。

3.5液晶显示

Nokia5110较其它液晶性价比高,可以显示15个汉字,30个字符,接口简单只需要4根I/O口就可驱动,速度是12 864的20倍,1 602的40倍。首先通过LCD初始化函数LCDIoInit()对I/O口初始化,再根据时序图驱动液晶。

4系统测试结果

在实验室,通过将不同标准值的CO2气体输入探测器中,浓度值分别为20ppm、50ppm、150ppm、500ppm、1 000ppm、2 000ppm,环境温度控制在25℃,采样若干次将采样数据导入文本中,得到的测试结果如表1所示。

经分析,该探测器满足GB/T 18204.24-2000标准,并且在环境温度合理范围内,该模块数据没有明显变化。对多组数据进行观察发现以下规律:①CO2浓度较低时,测得气体浓度一般低于实际气体浓度;②CO2浓度较高时,测得气体浓度一般高于实际气体濃度;③气体浓度较高时,气体浓度测量仪进入稳定工作状态需要一定时间,刚开始测得的数据误差较大;④气体浓度较高或较低时,测得数据误差较大;⑤气体浓度适中时,测得数据较为准确。

参考文献参考文献:

[1]刘中奇,王汝琳.基于红外吸收原理的气体检测[J].煤炭科学技术,2005,33(1):6568.

[2]黄书华,孙友文,刘文清,等.基于非分散红外光谱吸收法的SO2测系统研究[J].红外,2011,32(12):1013.

[3]孙友文,刘文清,汪世美,等.NDIR多组分气体分析的干扰修正方法研究[J].光谱学与光谱分析,2011,31(10):27192724.

[4]陈晓宁,刘建国,司福祺,等.非分散红外吸收光谱法空气痕量污染气体监测浓度算法[J].光电工程,2008,35(2):114117.

[5]陈晓宁,刘建国,司福祺,等.非分散红外CO气体检测系统研究[J].大气与环境光学学报,2007,2(3):207210.

[6]张勇.基于非分散红外_NDIR_原理的便携式瓦斯检测仪[J].煤矿机械,2012,33(10):173174.

[7]刘敏,唐祯安,张洪泉.基于非分散红外(NDm)原理的煤矿甲烷检测仪[J].仪表技术与传感器,2007(3):1820.

[8]张军辉,董永贵,王东生.非调制型NDIR传感器及其信号处理方法的改进[J].清华大学学报:自然科学版,2008,48(2):189191.

[9]李小伟,桑志锋,庄汝科,等.基于NDIR原理的便携式CO2浓度检测仪[J].山东科学,2009,22(3):5052.

[10]王文萃,栾美生,于彤彦.红外甲烷气体检测仪的设计以及干扰分析[J].红外技术,2009,31(8):458460.

[11]李小伟,车晓波,马建辉.基于NDIR原理的红外CO浓度检测仪[J].山东煤炭科技,2009(4):8686.

[12]张勇.基于非分散红外_NDIR_原理的便携式瓦斯检测仪[J].煤矿机械,2012,33(10):173174.

[13]刘敏,唐祯安,张洪泉.基于非分散红外(NDm)原理的煤矿甲烷检测仪[J].仪表技术与传感器,2007(3):1820.

[14]陈晓宁,刘建国,司福祺,等.非分散红外CO气体检测系统研究[J].大气与环境光学学报,2007,2(3):207210.

[15]司福祺,刘建国,谢品华,等.相关检测技术在CO气体监测系统中的应用[J].光电工程,2006,33(7):7477.

[16]王海棠,黄琦兰,刘尚.基于NDIR法汽车尾气分析仪的设计与实现[J].天津工业大学学报,2006,25(6):4850.

[17]张帆,张立萍.红外吸收光谱法在气体检测中的应用[J].唐山师范学院学报,2005,27(5):6264.

责任编辑(责任编辑:孙娟)endprint