王秋硕, 谢 涛, 孟祥森, 矫鲁平, 苏维均
(1.北京工商大学 计算机与信息工程学院,北京 100048;2.烟台产品质量监督检验所,山东 烟台 264003)
在微生物作用下,污水管道中会产生甲烷(CH4)、硫化氢(H2S)、氨气(NH3)[1]等有害气体沿管道进入居室,人体直接吸入会给呼吸系统、神经系统造成损伤[2],所以,对污水管道内有害气体进行定量检测是关乎民生的重要话题。
常用的多组分气体检测方法依据检测原理可以分为传统检测方法与光学检测方法[3]。传统检测方法是依靠金属传感器、电化学传感器等方法进行检测;光学检测方法是对气体光谱特性的检测,实现快速获取气体信息,拥有更高的灵敏性与精确度,但光学检测装置较为精密且庞大,不适用于现场环境的检测。
本文设计的检测装置选用基于传感器阵列[4]的电化学传统检测方法,实现对多组分气体的现场环境检测,并通过最小二乘[5]、支持向量回归[6](support vector regression)、高斯过程回归[7](Gaussian process regression)三种基于统计学的多元回归方法进行比较,根据测试结果,针对不同气体选择相应更为精准的方法进行实验。
所设计的基于传感器阵列的多组分气体检测系统由气敏传感器阵列,信号预处理,模式识别三大部分构成。其总体结构如图1所示。
图1 系统总体结构
目标气体与敏感材料发生化学反应,结果通过传感器电路将化学信号转换为电信号,被信号预处理单元采集,消除噪声,特征提取[8],最后采用适合的模式识别分析方法完成对数据的处理,得到最终气体信息。
系统选用精度高、成本更低廉的电化学气体传感器作为检测元件实现对气体浓度的定量识别。传感器受环境温度影响较大,而电化学传感器具有专门的调理芯片[9],可对输出数据进行温度补偿,提高检测精度。装置中选用的传感器分别是:主敏感气体H2S,检测范围(0~100)×10-6的FECS50—100型;主敏感气体NO2,检测范围(0~20)×10-6的4NO2-20型;主敏感气体NH3,检测范围(0~100)×10-6的4NH3-100型传感器。
1.1.1 硬件结构设计
硬件主要分为气体信息感知电路、微控制器单元(micro controller unit,MCU)信息处理电路、电源电路三大部分,结构如图2所示。
图2 系统硬件结构
1.1.2 主控器及电源电路设计
为满足外围设备接口与硬件的需求,气体信息处理电路选取以Cortex3-M3为内核的ARM芯片STM32F103VET6为主控芯片[10],并通过线性稳压电源AMS1117—3.3实现 DC5V—3.3 V的电压转换进行3.3 V直流电源供电。
1.1.3 信号采集调理电路设计
使用ADR391外部基准电压芯片、ADG1608模拟多路开关与AD7790转换芯片进行信号采集。选用TI公司推出的LMP91000系列模拟前端芯片对电路进行调理,通过对传感器输出的信号进行放大、滤波等基础处理,实现对信号的误差修正、量程切换,使传感器信号稳定输出。
1.1.4 数据存储与交互电路设计
使用STM32内部SDIO接口,将数据存储到内存卡中;使用TFTLCD2.8寸屏幕,通过 FSMC功能实现液晶显示器的驱动;使用 CH340G 驱动芯片实现USB串口功能;使用USR—WIFI232—B2实现WiFi模块与MCU进行数据传输。
系统的软件设计主要为微处理器程序,其功能结构如图3所示。
微处理器系统以 STM32F103VET6作为核心处理单元,获取并处理气体传感器信号。首先对外部设备进行初始化设置以驱动并检测装置是否运行正常,确保采集的传感器数据能够正常准确存储,并读取外部 AD 数据,获取传感器信息,对传感器电压信号进行浓度识别。传感器原始数据及识别后数据以 RTC 实时时钟为文件名称存储到SD 卡,实现对数据的有序管理。并通过串口及 WiFi 通信实现数据传输至电脑进行算法处理。
图3 微处理器功能结构
由于测量数据的差异性,变量间的复杂关系,且传感器特性受环境影响,使得气体浓度与传感器输出间的关系变得模糊,所以通过建立回归分析模型,可以得到变量之间的关系,并对未知输入进行输出预测[11]。
最小二乘法适用于线性和一般的非线性回归分析[12,13];对于复杂无规律的曲线拟合,更适合使用常处理小数据的统计学方法GPR和 SVR。
2.1.1 最小二乘法
(1)
求解取得最小值时的参数,可得回归参数。其中,fθ(xi)-yi为数据的残差。对于目标模型
S(x)=a0φ0(x)+a1φ1(x)+…+anφn(x)
(2)
(3)
(4)
(5)
通过对训练集数据的计算,求出矩阵的各项参数,并计算出I(a0,a1,…an)从而完成模型建立。
2.1.2 高斯过程回归
GPR对于处理非线性、小样本数据问题具有很好的适应性,泛化能力强,可有效地解决回归预测问题。高斯过程是均具有联合高斯分布的有限随机变量的集合,其特性只由数据的均值函数m(x)与协方差函数K(x,x′)决定。形式为
f(x)~GP(m(x),k(x,x′))
(6)
通常m(x)取0则上式转换为矩阵形式为
(7)
式中kij=e-λ‖xi-xj‖2是高斯过程完成学习数据之间的相关关系矩阵。高斯过程回归则是在此基础上完成对数据的预测,对于一个新的数据X*通过把数据代入关系矩阵中可得到基于该数据与原始数据的关系矩阵
(8)
对于上述的联合分布,可以求出其中所有参数,而f*隶属于正态分布
f*~N(μ*,δ*)
(9)
式(10)各个参数表达式为
(10)
(11)
使用以统计学为基础的GPR对非线性曲线的回归具有较为理想的效果。
2.1.3 支持向量回归机
SVR适用于解决小样本、非线性、高维数的问题。目标是寻找一个回归平面,使得集合内所有数据至该平面的距离最近。求得元素与回归平面之间的距离为r=d(x)-g(x)其中d(x)为数据集,g(x)为回归平面。应用SVR回归预测时应当首先选取惩罚系数C、不敏感系数ε等参数[14]。由于数据到回归平面之间的距离不等,所以给定容限值ε防止过拟合,并引入代价函数对距离进行修正
cost(x)=max(0,|d(x)-g(x)|-ε)
(12)
(13)
(14)
式中C为惩罚系数,依据拉格朗日定理,上式转换为对偶问题,并进行计算得到
(15)
使用MF-4B气体测试仪配制H2S,NO2,NH3三种典型气体构成的多组分实验气体对所设计的装置进行功能与性能测试。以实验环境温度为16 ℃,浓度间隔均为1×10-6分别获取了(0~15)×10-6范围内H2S;(0~11)×10-6范围内NH3;(0~13)×10-6范围内NO2的气体传感器数据,并通过IIR(infinite impulse response)数字滤波器[15]滤除信号中较大波动,使滤波后的数据具有稳定的状态,通过对数据进行稳态均值处理,即截取稳定数据,去除最大值与最小值后进行算数平均,从而得到该浓度下各传感器响应的特征值如表1所示。
表1 各传感器在不同浓度的数据特征值
回归模型的准确性是衡量模型好坏的直接评价指标,回归数据值相对于实际值的波动越小则回归模型的准确性越好,直接指标是模型的均方根误差(mean-square error),衡量拟合数据与真实数据差距的参数,越小越好。表达式为
(16)
本文使用最小二乘、SVR、GPR 三种小样本数据分析方法对各传感器特征数据进行回归处理,并得到模型误差参数。其中使用特征数据的80 %进行模型建立,20 %的数据进行模型误差验证。
表2 最小二乘一阶与三阶回归方程
通过设定最小二乘回归模型的阶数,可完成对数据的线性回归与非线性回归。根据是否考虑传感器灵敏度的正负偏差对输出电压的影响,可将模型分为一元线性与多元非线性回归。通过最小二乘回归得到各传感器的回归方程及测试数据的MSE如表2所示。对比气体特征数据可以看出,一阶模型使数据呈现线性化,在一定程度上对传感器的特性进行了拟合回归,而三阶模型在保留数据一定线性关系的同时,使得数据更加贴合数据变化趋势,拥有更好的效果。
SVR回归曲线贴合数据变化趋势,但模型无法使用具体表达式表达,SVR 对于超出训练数据外的数据,回归预测能力较差。使用测试数据计算,可以得到H2S传感器回归模型MSE为0.006 2,NH3传感器回归模型MSE为0.092 0,NO2传感器回归模型MSE为0.479 934。GPR回归曲线贴合数据变化趋势,且线性化程度较高。
使用测试数据进行误差测试得到模型的均方根误差分别为:H2S 传感器回归模型MSE为0.002 9;NH3传感器 回归模型MSE为0.1847;NO2传感器回归模型MSE为0.058 3。各传感器经过SVR回归,GVR回归的模型输出曲线对比如图4所示。
图4 各传感器的回归曲线比较
通过对比模型均方根误差可以得出适合各传感器数据的回归模型为:FECS50-100(H2S)最佳回归算法是GPR,MSE为0.002 9;4NH3-100(NH3) 最佳回归算法SVR,MSE为0.092 0;4NO2-20(NO2)最佳回归算法是一阶最小二乘,MSE为0.052 4。
将上述实验中得到的回归模型,写入监测软件与微处理器程序中,通过 MF-4B 气体测试仪检定校准装置产生各传感的标准气体,并通过装置进行数据测量,实际测试结果通过数据汇总得到检测浓度与实际值之间的检测误差,表3给出了测试结果。
表3 实测结果 10-6
使用各传感器最佳回归模型进行实际浓度测量,各传感器误差均在 (0~0.6)×10-6范围内,达到了高精度的气体检测的目的。