一种基于光谱解析算法的多组分气体浓度检测方法

1.本发明属于多组分气体浓度检测技术领域,具体地说是一种基于光谱解析算法的多组分气体浓度检测方法。
背景技术:
2.面向不同的应用场景,多组分气体检测技术的研究在不断进步。而多气体检测技术确实节省了大量人力物力,具备速度快、省事高效的优点。
3.而在测量光谱的过程中,由于检测气体的吸收峰靠近,且气体的吸收峰存在不同程度的拖尾现象,给气体的组分检测带来巨大障碍。
4.现有的多气体组分检测技术中,管检测法精度低、受环境干扰较大,气相色谱-质谱法虽然检测气体组分种类全面,灵敏度高但色谱进样时间长,分离效果易受环境影响,价格较高;电化学传感器和气敏传感器虽然相应速度较快,但选择性差存在温漂、寿命衰减等缺点。
技术实现要素:
5.本发明的目的是针对现有技术存在的问题,提供一种检测下限低、免二次标定以及精确度高的基于光谱解析算法的多组分气体浓度检测方法;适用于光腔衰荡光谱法(crds)技术进行气体组分监测领域,由于检测多种气体的吸收峰接近,会影响气体测量的准确性,因此采用一种基于洛伦兹多峰拟合的解析算法,将混合光谱进行分峰处理后再利用测量气体的峰积分面积反演气体含量。
6.本发明的目的是通过以下技术方案解决的:
7.一种基于光谱解析算法的多组分气体浓度检测方法,该检测方法的步骤如下:
8.a、改变入射光的波长,记录混合气体的衰荡时间τ
t
并绘制出衰荡曲线;
9.b、将衰荡曲线进行归一化处理;
10.c、利用混合气体的衰荡时间τ
t
求出归一化后的衰荡光强i
t
;
11.d、求解ln并以波数v为横坐标、为纵坐标绘制混合光谱;
12.e、利用光谱解析算法对混合光谱进行分峰处理,获得多个洛伦兹分布函数吸收峰;
13.f、对各洛伦兹分布函数吸收峰进行峰面积分运算获得峰积分面积;
14.g、将各峰积分面积和线强、以及气体总压和有效光程代入到气体浓度计算公式进行计算,获得混合气体中的各组分气体浓度。
15.所述步骤g中的气体浓度计算公式为:
16.17.式(6)中,x表示某气体组分的浓度;是利用光谱解析算法分峰后获得的某气体组分的峰积分面积,表示入射光强i0与透射后的衰荡光强i
t
的比值;s(t)表示某气体组分的线强;p是指气体总压;l指有效光程。
18.所述步骤c中的衰荡光强i
t
的求解公式为:
[0019][0020]
式(1)中,i
t
表示在相同的空腔衰荡时间τ0下,混合气体的光信号强度;τ0为空腔衰荡时间;τ
t
为混合气体的衰荡时间。
[0021]
在带入衰荡光强i
t
的求解公式的基础上,所述步骤g中的气体浓度计算公式为:
[0022][0023]
所述步骤e中的光谱解析算法的过程为:首先确定含有待定洛伦兹特征参数的吸收拟合函数,利用吸收拟合函数构建误差函数,确定迭代初值坐标后,确定迭代方向再根据armijo精确线性搜索法确定迭代步长,并计算梯度并核定是否符合要求,是则继续、否则同时改变迭代方向和迭代步长,直至找到最小拟合误差并确定该情况下的洛伦兹特征参数值,从而确定待测气体的吸收拟合函数,将混合光谱分解为多个吸收峰。
[0024]
所述步骤e中的光谱解析算法的具体步骤如下:
[0025]
e1、确定含有待定洛伦兹特征参数的吸收拟合函数:
[0026][0027]
式(2)中,x为混合光谱中的横坐标波数,f为混合光谱中的纵坐标吸光度,m表示待测气体种类,ai、wi、为洛伦兹线型特征参数,其中ai表示第i种气体组分的吸收峰面积,wi表示第i种气体组分的半高宽,表示第i种气体组分的吸收峰中心位置;
[0028]
e2、利用吸收拟合函数构建误差函数:
[0029][0030]
式(3)中,q为拟合残差,yj表示混合光谱的吸光度,f(xj)为吸收拟合函数的值,n为光谱采样的点数;
[0031]
e3、设定迭代精度ε、迭代参数的初始坐标;
[0032]
e4、确定搜索方向dk:
[0033]
[0034]
式(4)中,dk为第k次迭代搜索方向;d
k-1
为第k-1次迭代搜索方向;β
k-1
为第k-1次迭代共轭参数;gk为第k次迭代梯度方向;为第k次迭代梯度方向转置;为第k-1次迭代梯度方向转置;g
k-1
为第k次迭代梯度方向;
[0035]
e5、确定搜索方向dk后,采用armijo精确线性搜索法确定迭代步长αk;
[0036]
e6、设定当前迭代初值(a
ik
,w
ik
)(i为气体种类,k为迭代次数),令a
k+1
=ak+αk·dk
、w
k+1
=wk+αk·dk
,计算沿搜索方向dk和迭代步长αk的下一点坐标(a
i(k+1)
,w
i(k+1)
),并计算出下一点坐标(a
i(k+1)
,w
i(k+1)
)的梯度值gk:
[0037][0038]
式(5)中,为拟合残差矩阵的梯度;
[0039]
e7、计算二范数||gk||并与步骤e3设定的迭代精度ε进行比较;
[0040]
e8、若||gk||<ε,则停止运算,并输出洛伦兹特征参数ak、wk作为最优解,进入步骤e9;若||gk||>ε,则返回步骤e3并将本轮迭代参数的坐标作为步骤e3中的迭代参数的初始坐标,重复步骤e4-e7;
[0041]
e9、停止迭代后找到最小拟合残差q
min
,并同时输出对应的洛伦兹特征参数值a
ik
、w
ik
;
[0042]
e10、确定待测气体的含有确定洛伦兹特征参数的吸收拟合函数,将混合光谱分解为多个吸收峰。
[0043]
上述步骤e8的目的是:保证拟合残差q值在最大下降方向下下降到最小值,即选取最快下降方向的同时在该方向下下降到最低点,由此可较快找出最小拟合残差q值。
[0044]
所述步骤e4中的搜索方向dk的初始搜索方向为误差函数初始坐标的负梯度方向d0=-g0。
[0045]
所述步骤e5中的采用armijo精确线性搜索法确定迭代步长αk的详细步骤为:
[0046]
e51、确定armijo精确线性搜索法的初始参数δ、σ;
[0047]
e52、从m=0开始循环搜索;
[0048]
e53、若满足则m=mk、迭代步长为
[0049]
e54、若不满足,则令m=m+1,继续搜索直至成立为止。
[0050]
所述的多组分气体浓度检测方法能够应用于crds领域中sf6/n2背景下的多种微量气体浓度检测。
[0051]
本发明相比现有技术有如下优点:
[0052]
本发明的多组分气体浓度检测方法采用一种扫描光谱的方式来计算气体浓度,首先改变波长采集对应的衰荡时间,利用归一化的衰荡曲线求解出吸光度、并作为混合光谱纵坐标;当检测多种气体时,需要对混合光谱进行分峰拟合,得出各组分气体的拟合吸收函数,计算出各个气体的吸收峰拟合面积,再根据beer-lambert定律推导出的浓度计算公式,反演出检测的各个气体组分含量。
[0053]
本发明对采集的衰荡时间曲线进行归一化处理,计算出混合光谱曲线进行分峰拟合处理,只选取待测气体吸收峰来计算可有效减少其他气体对待测气体的影响,同时也检
测出其他各个气体组分的含量;优点在于在常温常压的环境下,粒子间的碰撞运动相比分子热运动更为明显,因此选用描述碰撞增宽的lorentz线型函数进行分峰拟合更加贴近实际,使浓度计算更加精确。
[0054]
本发明将采用光谱解析算法得出的单个气体吸收峰,对峰面积进行积分代入给定的浓度计算公式,可由单片机计算得出痕量气体的浓度值,并显示在屏幕上;优点在于使用的算法具有超线性的收敛速度,算法结构简单,易于编程;避免了二阶导数的计算,大幅减少计算量与存储量,在主控芯片上占用资源较少,提高硬件实现可能性。
附图说明
[0055]
附图1为本发明的基于光谱解析算法的多组分气体浓度检测方法的流程图;
[0056]
附图2为本发明的光谱解析算法的流程图;
[0057]
附图3为本发明的光谱解析算法中的迭代步长计算流程图;
[0058]
附图4为本发明的实施例中的拟合的混合光谱以及分峰后的洛伦兹分布函数图;
[0059]
附图5为本发明的实施例中的e指数衰荡曲线的归一化处理与出射、透射光强比值计算过程。
具体实施方式
[0060]
下面结合附图与实施例对本发明作进一步的说明。
[0061]
如图1-3所示:一种基于光谱解析算法的多组分气体浓度检测方法,该检测方法的步骤如下:
[0062]
a、改变入射光的波长,记录混合气体的衰荡时间τ
t
并绘制出衰荡曲线;
[0063]
b、将衰荡曲线进行归一化处理;
[0064]
c、利用混合气体的衰荡时间τ
t
求出归一化后的衰荡光强i
t
,衰荡光强i
t
的求解公式为:
[0065][0066]
式(1)中,i
t
表示在相同的空腔衰荡时间τ0下,混合气体的光信号强度;τ0为空腔衰荡时间;τ
t
为混合气体的衰荡时间;
[0067]
d、求解并以波数v为横坐标、为纵坐标绘制混合光谱;
[0068]
e、利用光谱解析算法对混合光谱进行分峰处理,获得多个洛伦兹分布函数吸收峰;
[0069]
f、对各洛伦兹分布函数吸收峰进行峰面积分运算获得峰积分面积;
[0070]
g、将各峰积分面积和线强、以及气体总压和有效光程代入到气体浓度计算公式进行计算,获得混合气体中的各组分气体浓度;其中气体浓度计算公式为:
[0071]
[0072]
式(6)中,x表示某气体组分的浓度;是利用光谱解析算法分峰后获得的某气体组分的峰积分面积,表示入射光强i0与透射后的衰荡光强i
t
的比值;s(t)表示某气体组分的线强;p是指气体总压;l指有效光程;
[0073]
在带入衰荡光强i
t
的求解公式的基础上,所述步骤g中的气体浓度计算公式为:
[0074][0075]
在本发明提供的基于光谱解析算法的多组分气体浓度检测方法中,步骤e中的光谱解析算法的过程为:首先确定含有待定洛伦兹特征参数的吸收拟合函数,利用吸收拟合函数构建误差函数,确定迭代初值坐标后,确定迭代方向再根据armijo精确线性搜索法确定迭代步长,并计算梯度并核定是否符合要求,是则继续、否则同时改变迭代方向和迭代步长,直至找到最小拟合误差并确定该情况下的洛伦兹特征参数值,从而确定待测气体的吸收拟合函数,将混合光谱分解为多个吸收峰。
[0076]
所述步骤e中的光谱解析算法的具体步骤如下:
[0077]
e1、确定含有待定洛伦兹特征参数的吸收拟合函数:
[0078][0079]
式(2)中,x为混合光谱中的横坐标波数,f为混合光谱中的纵坐标吸光度,m表示待测气体种类,ai、wi、x
ci
为洛伦兹线型特征参数,其中ai表示第i种气体组分的吸收峰面积,wi表示第i种气体组分的半高宽,表示第i种气体组分的吸收峰中心位置;
[0080]
e2、利用吸收拟合函数构建误差函数:
[0081][0082]
式(3)中,q为拟合残差,yj表示混合光谱的吸光度,f(xj)为吸收拟合函数的值,n为光谱采样的点数;
[0083]
e3、设定迭代精度ε、迭代参数的初始坐标;
[0084]
e4、确定搜索方向dk:
[0085][0086]
式(4)中,dk为第k次迭代搜索方向;d
k-1
为第k-1次迭代搜索方向;β
k-1
为第k-1次迭代共轭参数;gk为第k次迭代梯度方向;为第k次迭代梯度方向转置;为第k-1次迭代梯度方向转置;g
k-1
为第k次迭代梯度方向;搜索方向dk的初始搜索方向为误差函数初始坐标的负梯度方向d0=-g0;
[0087]
e5、确定搜索方向dk后,采用armijo精确线性搜索法确定迭代步长αk,具体步骤为;
[0088]
e51、确定armijo精确线性搜索法的初始参数δ、σ;
[0089]
e52、从m=0开始循环搜索;
[0090]
e53、若满足则m=mk、迭代步长为
[0091]
e54、若不满足,则令m=m+1,继续搜索直至成立为止;
[0092]
e6、设定当前迭代初值(a
ik
,w
ik
)(i为气体种类,k为迭代次数),令a
k+1
=ak+αk·dk
、w
k+1
=wk+αk·dk
,计算沿搜索方向dk和迭代步长αk的下一点坐标(a
i(k+1)
,w
i(k+1)
),并计算出下一点坐标(a
i(k+1)
,w
i(k+1)
)的梯度值gk:
[0093][0094]
式(5)中,为拟合残差矩阵的梯度;
[0095]
e7、计算二范数||gk||并与步骤e3设定的迭代精度ε进行比较;
[0096]
e8、若||gk||<ε,则停止运算,并输出洛伦兹特征参数ak、wk作为最优解,进入步骤e9;若||gk||>ε,则返回步骤e3并将本轮迭代参数的坐标作为步骤e3中的迭代参数的初始坐标,重复步骤e4-e7;
[0097]
e9、停止迭代后找到最小拟合残差q
min
,并同时输出对应的洛伦兹特征参数值a
ik
、w
ik
;
[0098]
e10、确定待测气体的含有确定洛伦兹特征参数的吸收拟合函数,将混合光谱分解为多个吸收峰。
[0099]
上述步骤e8的目的是:保证拟合残差q值在最大下降方向下下降到最小值,即选取最快下降方向的同时在该方向下下降到最低点,由此可较快找出最小拟合残差q值。
[0100]
实施例
[0101]
下面结合具体实施案例对本发明进行详细说明,但本发明保护范围不受附图和实例所限。
[0102]
结合图4和图5,现对sf6/n2背景中微量h2s和co2进行测量,由扫描光谱可知h2s和co2的两个高峰中心波长分别在6336.7883cm-1
和6336.3451cm-1
处,对本发明进行进一步说明,基于crds的多气体组分浓度计算主要包括以下步骤:
[0103]
1)、改变入射光的波长,记录混合气体的衰荡时间τ
t
并绘制出衰荡曲线;
[0104]
2)、将衰荡曲线归一化,利用衰荡时间τ
t
求出归一化后的衰荡光强i
t
,同时以波数v为横坐标、为纵坐标绘制混合光谱,下面利用光谱解析算法进行分峰处理;
[0105]
3)、首先确定拟合峰函数
[0106]
对于h2s和co2两种气体,在光谱扫描范围内应存在两个符合洛伦兹分布的吸收峰,此时吸收光谱表达式为:则误差函数表示为:
[0107]
4)、将a1、a2、w1、w2四个洛伦兹特征参数进行拟合,求解误差函数的梯度:四个洛伦兹特征参数进行拟合,求解误差函数的梯度:同时需设定迭代精度ε;
[0108]
5)、这里设定迭代精度ε=0.001,迭代初值为代入求解初始梯度g0后计算搜索方向d0=-g0;
[0109]
6)、迭代步长由armijo精确线性搜索法确定,设定初始参数σ=0.6、δ=0.4、m=0开始,若满足不等式则m=mk、迭代步长为若不满足m=m+1,直到不等式成立为止;
[0110]
7)、令a
k+1
=ak+αk·dk
,w
k+1
=wk+αk·dk
,根据本次迭代的参数值计算梯度g1、||g1||。若小于迭代精度则输出参数值;若大于迭代精度ε,则重新计算搜索方向回到步骤5),利用armijo精确线性搜索法进行迭代步长的计算;
[0111]
8)、重复步骤5)-7),直到本次迭代的参数值梯度的范数在最初设定的精度范围内即可输出迭代后的参数值,这里经过主控芯片计算后找出对应的最小拟合残差q
min
,得出的对应的参数值a1=0.1081、a2=0.012、w1=0.1686、w2=0.1159;
[0112]
9)、根据求得的洛伦兹特征参数以及已经确定的波峰中心波长将混合光谱曲线分解为两个洛伦兹分布的吸收峰,如图4所见,虚线为co2吸收峰和点画线为h2s吸收峰,分别对两种气体的吸收峰进行面积积分计算;
[0113]
10)、记录实验时的数值,在hitran数据库中查询的两种气体中心波长对应线强s(t)的数值,同时分别对两种气体的吸收拟合光谱函数和进行峰积分面积运算,并将峰积分面积以及有效光程l、气体总压p、线强s(t)一起代入给出的浓度计算公式中进行计算,可分别计算出h2s气体浓度为10.29ppm、co2气体浓度为1.53ppm,与配气仪给定浓度一致。
[0114]
由图4可见,本发明采用一种新型光谱解析算法将混合光谱进行分峰拟合,并进行浓度求解,最终可在单片机中得到与目标浓度相似度极高的浓度数值,是一种精度较高的浓度计算方法。
[0115]
本发明的光谱解析算法将采集的吸光度-波数曲线上的多个数据点进行分峰处理,简化为气体吸收峰面积,有效的简化数据处理;同时避免了气体拖尾相互影响的问题,为浓度计算分析提供了更可靠精确的数据支撑。
[0116]
以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内;本发明未涉及的技术均可通过现有技术加以实现。
技术特征:
1.一种基于光谱解析算法的多组分气体浓度检测方法,其特征在于:该检测方法的步骤如下:a、改变入射光的波长,记录混合气体的衰荡时间τ
t
并绘制出衰荡曲线;b、将衰荡曲线进行归一化处理;c、利用混合气体的衰荡时间τ
t
求出归一化后的衰荡光强i
t
;d、求解并以波数v为横坐标、为纵坐标绘制混合光谱;e、利用光谱解析算法对混合光谱进行分峰处理,获得多个洛伦兹分布函数吸收峰;f、对各洛伦兹分布函数吸收峰进行峰面积分运算获得峰积分面积;g、将各峰积分面积和线强、以及气体总压和有效光程代入到气体浓度计算公式进行计算,获得混合气体中的各组分气体浓度。2.根据权利要求1所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:所述步骤g中的气体浓度计算公式为:式(6)中,x表示某气体组分的浓度;是利用光谱解析算法分峰后获得的某气体组分的峰积分面积,表示入射光强i0与透射后的衰荡光强i
t
的比值;s(t)表示某气体组分的线强;p是指气体总压;l指有效光程。3.根据权利要求1或2所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:所述步骤c中的衰荡光强i
t
的求解公式为:式(1)中,i
t
表示在相同的空腔衰荡时间τ0下,混合气体的光信号强度;τ0为空腔衰荡时间;τ
t
为混合气体的衰荡时间。4.根据权利要求3所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:所述步骤g中的气体浓度计算公式为:5.根据权利要求1或2所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:所述步骤e中的光谱解析算法的过程为:首先确定含有待定洛伦兹特征参数的吸收拟合函数,利用吸收拟合函数构建误差函数,确定迭代初值坐标后,确定迭代方向再根据armijo精确线性搜索法确定迭代步长,并计算梯度并核定是否符合要求,是则继续、否则同时改变迭代方向和迭代步长,直至找到最小拟合误差并确定该情况下的洛伦兹特征参数值,从而确定待测气体的吸收拟合函数,将混合光谱分解为多个吸收峰。
6.根据权利要求5所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:所述步骤e中的光谱解析算法的具体步骤如下:e1、确定含有待定洛伦兹特征参数的吸收拟合函数:式(2)中,x为混合光谱中的横坐标波数,f为混合光谱中的纵坐标吸光度,m表示待测气体种类,a
i
、w
i
、为洛伦兹线型特征参数,其中a
i
表示第i种气体组分的吸收峰面积,w
i
表示第i种气体组分的半高宽,表示第i种气体组分的吸收峰中心位置;e2、利用吸收拟合函数构建误差函数:式(3)中,q为拟合残差,y
j
表示混合光谱的吸光度,f(x
j
)为吸收拟合函数的值,n为光谱采样的点数;e3、设定迭代精度ε、迭代参数的初始坐标;e4、确定搜索方向d
k
:式(4)中,d
k
为第k次迭代搜索方向;d
k-1
为第k-1次迭代搜索方向;β
k-1
为第k-1次迭代共轭参数;g
k
为第k次迭代梯度方向;为第k次迭代梯度方向转置;为第k-1次迭代梯度方向转置;g
k-1
为第k次迭代梯度方向;e5、确定搜索方向d
k
后,采用armijo精确线性搜索法确定迭代步长α
k
;e6、设定当前迭代初值(a
ik
,w
ik
),令a
k+1
=a
k
+α
k
·
d
k
、w
k+1
=w
k
+α
k
·
d
k
,计算沿搜索方向d
k
和迭代步长α
k
的下一点坐标(a
i(k+1)
,w
i(k+1)
),并计算出下一点坐标(a
i(k+1)
,w
i(k+1)
)的梯度值g
k
:式(5)中,为拟合残差矩阵的梯度;e7、计算二范数||g
k
||并与步骤e3设定的迭代精度ε进行比较;e8、若||g
k
||<ε,则停止运算,并输出洛伦兹特征参数a
k
、w
k
作为最优解,进入步骤e9;若||g
k
||>ε,则返回步骤e3并将本轮迭代参数的坐标作为步骤e3中的迭代参数的初始坐标,重复步骤e4-e7;e9、停止迭代后找到最小拟合残差q
min
,并同时输出对应的洛伦兹特征参数值a
ik
、w
ik
;e10、确定待测气体的含有确定洛伦兹特征参数的吸收拟合函数,将混合光谱分解为多个吸收峰。7.根据权利要求6所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:
所述步骤e4中的搜索方向d
k
的初始搜索方向为误差函数初始坐标的负梯度方向d0=-g0。8.根据权利要求6所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:所述步骤e5中的采用armijo精确线性搜索法确定迭代步长α
k
的详细步骤为:e51、确定armijo精确线性搜索法的初始参数δ、σ;e52、从m=0开始循环搜索;e53、若满足则m=m
k
、迭代步长为e54、若不满足,则令m=m+1,继续搜索直至成立为止。9.根据权利要求1所述的基于光谱解析算法的多组分气体浓度检测方法,其特征在于:所述的多组分气体浓度检测方法能够应用于crds领域中sf6/n2背景下的多种微量气体浓度检测。
技术总结
本发明公开了一种基于光谱解析算法的多组分气体浓度检测方法,步骤如下:A、改变入射光的波长,记录混合气体的衰荡时间τ
技术研发人员:张欣冉 张潮海 宋锦海
受保护的技术使用者:南京航空航天大学
技术研发日:2023.08.25
技术公布日:2023/10/15
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/