王萧行,张卫强,金庆辉,黄朝柱,唐 浩
(1.宁波大学 信息科学与工程学院,浙江 宁波 315211;2.中国科学院宁波材料技术与工程研究所 新能源所,浙江 宁波 315201)
研究发现室内最容易产生的有害气体是苯和甲醛[1]。苯会刺激黏膜,抑制中枢神经,并且苯是通过代谢才能对身体产生危害,因此,苯会在身体内形成具有毒性的代谢产物。甲醛具有强烈的致癌作用,长期接触会引起呼吸道疾病、鼻咽癌、结肠癌等疾病。针对这一问题,Bakather O Y等人[2]提出了一种浸渍有Fe2O3纳米颗粒的多壁碳纳米管用于从水中除去苯,证明了铁纳米颗粒浸渍的碳纳米管对水中苯的高效吸附性。Zhang N等人[3]提出了基于In2O3的传感器阵列,加入不同的钬、铱、钌、锰、钒和钼用来修饰传感器性能,该阵列利用传感器的交叉敏感性筛选不同挥发性有机化合物。Wang C H等人[4]在WO3表面上装载Ru制作出的传感器对二甲苯具有良好的响应。Chen L L等人[5]在ZnO的单层上加入钯、铂从而增强对苯和甲苯的吸附能力。詹灿坚等人[6]针对甲醛的测量提出了一种改进的深度残差网络的室内有害气体定量方法,方法结合了深度学习与传统信号降噪算法的优点,实现了在干扰气体下对甲醛浓度的识别。郑豪男等人[7]针对苯和甲苯气体提出了一种基于微纳电离型传感器的苯类毒害气体检测方法,并检测了8个浓度梯度苯和甲苯气体,采用双层叠加线性信号分析检测数据,从而实现气体浓度的识别。
综上所述,目前已有的有害气体检测所运用的技术手段主要在前端传感器制作与后端数据采集处理两方面进行改进与优化,虽然能有效地进行定量分析计算,但对于应用中仍存在一定的不足,且对基于多种金属氧化物半导体(metal-oxide semiconductor,MOS)阵列对混合气体进行定量分析的研究尚不充分。在日常生活中苯和甲醛又极易一起产生,因此需要对二者进行定性定量分析。
本文采用4种常见MOS半导体构成传感器阵列对苯和甲醛混合气体进行定量研究,通过对35组混合气气体样本的研究,选取合适的算法模型,从而准确预测出混合气体中苯和甲醛各自的浓度。
本文采用MOS传感器阵列用来检测苯和甲醛混合气体。传感器阵列是一种快速检测和识别混合气体的常用方法[8]。MOS气体传感器作为常见气敏传感器在气体检测领域运用广泛,并且具有性能稳定、灵敏度高、响应迅速、制作简单、使用寿命长以及低成本等优点[9]。本文采用常见且性能稳定的WO3,ZnO,In2O3,Fe2O3四种氧化物制作传感器阵列。其中Fe2O3由水热法得到,ZnO由简单共沉淀法得到,In2O3由简单水热法合成In(OH)3前驱体后经高温煅烧得到,WO3由低温酸助水热法和退火处理得到。水热法的反应条件温和、原料相对低廉并且易于控制温度、pH值等其他反应条件,因此可以高效率、高产率获得氧化物材料,受到研究人员的广泛关注与使用。四种材料的扫描电子显微镜(SEM)如图1所示。
图1 材料表征图
将反应生成的MOS放入研钵中进行充分研磨,在研钵加入少量制备好的去离子水使氧化物与离子水混合成均匀的浆液,再使用毛刷将浆液均匀涂抹在渡金的特制陶瓷片上,然后将氧化物覆盖均匀的陶瓷片放入恒温箱中,煅烧1 h。待到冷却后,将陶瓷片焊接到传感器底座上。最后再对传感器进行一定时间的老化,传感器便制作完成。
MOS半导体传感器的工作需要加热到合适的温度,因此在陶瓷片背面有一个加热电阻器,测试前给电阻器加入合适的电压使得传感器达到稳定工作状态。在稳定工作状态下,当有气体到来时,MOS半导体会吸附目标气体并显著改变MOS材料的阻值,将阻值的变化通过分压法转换为电压的变化,从而方便数据的采集。
在完成传感器制备等前期工作以后,用图2所示的系统进行试验测试。
图2 系统整体图
通过0,20×10-6,40×10-6,60×10-6,80×10-6,100×10-6共6种梯度的苯和甲醛相互混合,构成35组混合气体进行试验测试。混合气体的配气方法为,取出干净的气瓶,将待检测样本气体注射到清洁的气瓶中,静置一段时间,待其内部气体充分混合后,将传感器阵列放入到气瓶中,等待大约90 s,传感器处于稳定状态,微控制器采集传感器数据,通过WiFi模块实时转发至电脑上位机进行数据处理与存储,实物如图3所示。
图3 实物图
如图4所示系统的控制电路主要包含STM32最小系统、电压转换模块、WiFi接口电路、分压电路和各类接口电路组成。电压转换电路主要用来提供所需的稳定电压,分压电路通过跳帽电路选择合适的分压电阻,保障传感器的阻值变化准确显示出来[10]。
图4 系统硬件电路
如图5所示,当系统上电后STM32微处理器会对各个功能进行初始化,当WiFi模块插上后,微处理器便会通过AT指令,使WiFi模块与电脑建立无线连接。当微处理器检测到传感器数值发生变化后,等待90 s,待传感器稳定后,将数据发送到电脑。电脑上位机端通过Socket接口函数提供的UDP服务接收数据,当与微控制器配对成功后,便可接收传感器数据并将数据保存在本地。
图5 上、下位机控制流程
将35组数据贴好2个气体浓度的标签,再使用不同的算法进一步构建合适的模型获取数据的特征[11,12]。本文同时使用支持向量机(support vector machines,SVM)、误差反向传播(error back propagation,BP)算法、随机森林(random forest,RF)三种机器学习分类方法用于甲醛与苯的混合气体定量分析。三种算法原理图如图6所示。
图6 三种算法原理
SVM主要用于解决二分类问题的有监督学习算法,三角形和圆形分别代表不同标签的数据,SVM就是在特征空间上找到最佳的分离超平面使得不同标签样本间隔最大。
eBP神经网络简称BP算法,是一种按误差反向传播训练的多层前馈网络,一般具有输入层、输出层、隐藏层三部分组成,其主要特点是信号是前向传播的,而误差是反向传播的。计算误差输出时是按从输入到输出的方向进行,而调整Wij,Wjk每一层之间权值则是从输出到输入的方向进行的。正向传播即输入信号通过隐藏层作用于输出节点,产生输出信号。若输出信号与期望输出不符合,便会转入误差的反向传播,不断调整每层之间的权值,经过不断迭代训练,使得实际输出值和期望输出值的误差均方差最小,训练即结束。此时经过训练的神经网络便能对类似样本自动处理输出结果。
随机森林是集成学习的一种,其思想是解决单个模型或者一组参数的模型所固有的缺陷,整合更多的模型,取长补短,避免局限性。随机森林便是将多棵决策树组合成森林。每个决策树在特征中随机抽取一部分特征,在抽到的特征中间找到最优解,应用于节点进行分裂,最终的输出由所有的树合并起来输出最终结果。
实验结果如图7。SVM分类效果最差,考虑SVM是用来解决二分类问题的有监督学习算法,每组气体都有不同混合浓度值的标签,因此该算法不适用于对混合气体的浓度定量分析。BP算法的准确率很低,考虑到是BP神经网络需要更多的数据才能真正有效,并且极易陷入极小值与过拟合,因此无法准确定量预测出混合气体的浓度。随机森林的预测值与实际值重合度最高,考虑到随机森林是由多个决策树的预测组合成一个模型,并且随机选取数据不易产生过拟合现象,在小样本数据进行分类时,随机森林的分类对于气体浓度的定量分析会更加有效。
图7 实验结果
本文通过4种MOS半导体传感器构成阵列,并将采集的传感器阵列数据通过3种机器学习的算法进行比较[13],从而选出合适的分类算法实现对混合气体浓度的定量分析。实验测试表明:系统实现了对苯和甲醛混合气体成分的定量分析,并具有较高的准确性。相比较对单一有害气体的测量,该阵列可以对有害混合气体进行定量分析。同时传感器的制备更加便捷,阵列的开发成本更低,在当前生活中具有一定的应用前景。