基于STM32L151的便携式气体检测仪设计
2018-09-21何源黄梦涛王伟峰
何源 黄梦涛 王伟峰
摘要:针对环境有毒有害气体检测,本文设计了一种可同时检测多种气体的便携式气体检测仪。该设计通过使用TI公司的新型电化学模拟前端芯片LMP91000和高精度ADC芯片ADS1115改善硬件统一性和硬件测量精度;微控制器STM32L151软件设计中通过数字滤波和温度补偿提高气体检测的温度稳定性和精度。
关键词:ARM;LMP91000;电化学传感器;数字滤波;温度补偿
DOI: 10.3969/j.issn.1005-5517.2018.1.010
引言
环境中常见的有毒有害气体如:氨气(NH3)、二氧化硫(SO2)、一氧化碳(CO)、硫化氢(H2S)、氮氧化物(NOx)等。对于上述有毒有害气体都有对应的电化学传感器;电化学传感器的主要优势是:线性输出、低功耗、良好的分辨率、良好的重复性和准确性,所以电化学传感器在气体检测领域得到了广泛的应用[1-4]。
现如今市场中大部分多合一气体检测仪是以分立元件组建的电化学传感器前端调理电路而且以微控制器自身10位或者12位的ADC转换器作数据采集,很多产品没有考虑温度对电化学传感器的影响:因此其在温度稳定性和精度上不尽人意。对此,本文通过改善硬件电路设计和找寻有效的温度修正方法,从而提高气体检测的温度稳定性和精度。
1 电化学传感器工作原理
目前大部分电化学传感器都是三电极结构,其工作原理是气体通过选择型敏感膜扩散到传感器内,并与传感器内化学溶液产生氧化反应或者还原反应,并在在工作电极上产生电流信号,其反应类型决定工作电极上的电流方向[3,7]。
简化三电极电化学传感器调理电路如图1所示。工作电流在对电极与工作极之间流动,通过A2运放器将电流信号转化为電压信号。分立电路中调整RF的值,使A2输出的值满足后端转换电路的要求[5]。可以看出分立调理电路较为复杂,由于分立元件个体差异调整难度较大,同时引入误差也随之增大。
采用LMP91000芯片可极大简化调理电路的设计,提高调理电路的可靠性。芯片内部结构图如图2所示。芯片内部具有可编程的增益控制和基准电压控制,能够适应多种电化学传感器,芯片通过I2C总线与微控制器通信。I2C总线可挂接多个芯片从而实现多气体检测传感器阵列的设计。其内部寄存器在官方数据手册中已有详细的说明,在此就不再赘述。
根据运算放大器虚短虚断的特性可得到以下表达式:
(1)
式中,Vref_div为基准电压,Vout为LMP91000输出电压,Iwe为电化学传感器工作电流。±是由电化学传感器性质所决定的。
测量气体浓度与电化学传感器工作电流的关系表达式:
(2)
表达式中C为被测气体浓度,SI为电化学传感器灵敏度。
以上表达式中RTIA、Vref_div、SI都为已知量,测量Vout就能推算出被测气体浓度C。
2 硬件系统设计
硬件系统框图如图3所示,硬件系统主要由微控制器、温湿度传感器、ADC转换器、电化学传感器调理电路、显示和按键控制组成。使用REF3020高精度电压基准芯片提供基准电压,电化学传感器调理电路使用LMP91000,ADC转换器使用ADS1115,这三个要素是保证硬件电路高精度测量的基础。
3 软件系统设计
软件主要部分流程图如图4所示,其余显示和控制部分程序不是本文重点,在此不予阐述。其中最为重要的是数字滤波与温度曲线修正两个步骤。
3.1 数字滤波
对于数字滤波本文主要使用中值加均值的综合滤波方法,即先为采集的n个电化学输出值集合Sn排序得到新的集合Tn,根据实际情况去掉集合Tn头尾m个数,然后再求集合中剩下数的平均值,即V=;此方法既能抑制随机干扰,又能滤除明显的脉冲干扰。
3.2 温度曲线修正
电化学传感器的工作温度一般在-20℃~50℃,在其极限工作温度下传感器寿命非常短。在温度为20℃时,电化学传感器被看作没有温漂,即20℃为电化学传感器的中心温度;因此本文计算温度拟合曲线就以20℃时的数值为基准点。以一氧化碳传感器4C0-2000为例,在-5℃~50℃温度区间,以5℃递增;分别使用一氧化碳含量为250ppm、706ppm、1001ppm、1701ppm标气做高低温实验,实验温度曲线如图5(a)所示,实验温漂曲线如图5(b)所示,实验温漂比曲线如图5(c)所示,实验平均温漂比曲线如图5(d)所示。
温漂值是以20℃时的测量值为基准值,分别与其他温度下测量值作差得到的集合。温漂比值是以20℃时的测量值为基准值,分别与温漂值集合中的值作比得到的集合。平均温漂比值是4种标气实验中得到的温漂比值,在同一个温度点做算术平均得到的集合。
从温漂比曲线图(图5(c))中不难看出,传感器在各个标气温度实验中变化趋势基本是一致的,再用平均温漂比曲线(图5(d))作最小二乘法多项式曲线拟合,就可得到比较适合的温度修正拟合曲线。
温度修正拟合曲线(K(T))一般是两次或者三次多项式的计算,它的参数即为实时的温度值,计算得到是当前温度下的偏差比值:因此完整的公式为:
V(T)=V×(1-K(T))
(3)
表达式中V(T)为修正后的气体浓度值;V为未修正的气体浓度值;K(T)为温度修正拟合曲线。
4 性能测试
将高低温实验后拟合的温度曲线加入嵌入式软件程序中,将气体检测仪在纯氮气中进行校零。再次在-50℃~50℃的温度区间进行性能测试,同样以CO传感器为例测试结果如表1所示。
由表1中的数据可以看出,CO传感器温度在-5℃~50℃区间内,对4种标气的测量误差都保持在了±4ppm范围内,有效的证明了本文中提取温度修正拟合曲线的方法是可行、有效的。此方法在气体检测仪其他传感器如:O2传感器、H2S传感器、SO2传感器、NH3传感器中得到同样验证。
5 结论
本文讨论了基于STM32L151的便携式气体检测仪的设计和实现,对其硬件电路结构及关键的数字滤波与温度修正方法进行了详细的介绍。通过大量高低温实验证明:本文提出以“平均温漂比”作参考样本计算温度修正拟合曲线,要比温度分段式温度修正方法[6-7]更为有效。为气体检测领域硬件结构设计和修正方法提供了新的参考。但是由于电化学传感器自身的保质期一般在1~5年不等,期间其特性会发生细微变化,可通过定期校准能减小此变化对测量的影响。
参考文献:
[1]刘立红,车文实,孙晶,等.电化学传感器在环境检测中的应用研究[J].科技创新与应用,2017,(01):43.
[2]姚毓升,解永平,文涛.三电极电化学传感器的恒电位仪设计[J]仪表技术与传感器,2009,(09):23-25.
[4]王翠翠,周真,奏勇,等.电流型电化学传感器恒电位仪电路的研究[J].传感器世界,2009,(02):36-39.
[5]孙宇峰,黄行九,刘伟,等.电化学CO气体传感器及其敏感特性[J].传感器技术,2004,(07):14-17.
[5]许剑锋,芦静,郝欢,等.基于LMP91000的电化学传感器调理电路设计[J].传感器世界,2014,(02):22-25.
[6]李世伟,金贵新,陈彬,等.温度对电化学NH3气传感器影响研究[J].现代计算机(专业版),2016,(28):3-6.
[7]方长青,叶桦,尤卫卫.基于STM32的矿用电化学一氧化碳传感器的设计[J].信息技术与信息化,2013,(05):145-148.