混合气体的组分浓度识别方法及***
技术领域
本发明涉及多组分气敏传感技术领域,具体地涉及一种混合气体的组分浓度识别方法及***。
背景技术
随着虚拟环境下“人机交互”智能检测等技术的发展,多组分气敏传感器作为嗅觉外延信息的采集、转换、传输和处理的功能器件,已经成为环境监测、自动控制、人机工效、危险预警以及分析检测等领域不可缺少的技术工具。
多组分传感器阵列可以同时提取混合气体的多种气体成分(即,组分)在多个传感器上的响应信号,并通过分析其差异性通过算法分析同时获得多种气体组分的响应,由此利用交叉传感可以把单一气敏传感器中干扰性信号变成有用的信号。多传感信号提取和分析是目前气敏传感的重要方向。
目前,在相关技术中,针对混合气体识别方法中主要利用针对气敏传感器所检测的响应信号的线性响应算法所实现的,该线性响应算法例如可以是R=a*C+b,其中R为响应信号,C为气体浓度,a、b都是常数。
但是,本申请的发明人在实践本申请的过程中发现,相关技术中至少存在以下缺陷:虽然在有限浓度范围内气敏传感器具有响应信号与气体浓度的线性响应关系,但对大多数气敏元件和大浓度变化范围中其信号响应并不是线性的,使得对于实际气敏响应曲线的非线性响应存在一定的偏差,尤其是在对混合气体的识别过程中,非线性响应的差异性表现更为明显。
由此,开发适用的、准确的混合气体下的信号识别和响应分析方法是实现目前多组分气敏传感技术领域的热门研究方向。
发明内容
本发明实施例的目的是提供一种混合气体的组分浓度识别方法及***,用以至少解决目前相关技术中气敏传感器对混合气体的组分浓度的线性响应存在一定的局限性和误差的技术问题。
为实现上述目的,本发明实施例一方面提供一种混合气体的组分浓度识别方法,包括:获取气敏传感器针对混合气体中的目标气体组分的检测响应值,并基于所述检测响应值确定猜测浓度值;基于所述猜测浓度值和牛顿迭代算法执行牛顿迭代计算,并针对每次迭代计算依次确定相应的迭代浓度值;确定在每次迭代计算前后关于浓度值的变化量,并当所述变化量小于预定的浓度阈值时,停止执行迭代计算;根据最后一次迭代计算所确定的所述迭代浓度值,确定所述目标气体组分的浓度。
可选的,所述气敏传感器包含于气敏传感器阵列,以及所述气敏传感器阵列中的多个气敏传感器针对同一浓度的所述目标气体组分能够分别产生不相等的多个检测响应值,其中所述确定在每次迭代计算前后关于浓度值的变化量,并当所述变化量小于预定的浓度阈值时,停止执行迭代计算包括:确定针对所述多个检测响应值的在每次迭代计算前后关于浓度值的多个变化量;判断所述多个变化量的求和值是否小于所述浓度阈值;以及当所述多个变化量的求和值小于所述浓度阈值时,停止执行迭代计算。
可选的,所述根据最后一次迭代计算所确定的所述迭代浓度值,确定所述目标气体组分的浓度包括:根据针对所述多个气敏传感器各自最后一次迭代计算所确定的迭代浓度值,确定所述目标气体组分的所述浓度。
可选的,所述气敏传感器阵列中的所述多个气敏传感器针对所述目标气体组分分别被配置有关于检测响应值和组分浓度的多个响应曲线,其特征在于,所述多个所述响应曲线之间互不相关。
可选的,所述根据最后一次迭代计算所确定的所述迭代浓度值,确定所述目标气体组分的浓度包括:将最后一次迭代计算所确定的所述迭代浓度值与标定响应浓度范围进行匹配,其中所述标定响应浓度范围为预先设定的;若在所述标定响应浓度范围内,则将最后一次迭代计算所确定的所述迭代浓度值确定为所述目标气体组分的浓度。
可选的,在所述将最后一次迭代计算所确定的所述迭代浓度值与标定响应浓度范围进行对比之后,该方法还包括:若最后一次迭代计算所确定的所述迭代浓度值不在所述标定响应浓度范围内,则基于所述检测响应值重新选定所述猜测浓度值;以及根据所重新选定的所述猜测浓度值,重新确定所述目标气体组分的浓度。
可选的,所述基于所述检测响应值确定猜测浓度值包括:基于所述检测响应值和针对所述气敏传感器的关于检测响应值与组分浓度的线性响应模型,确定所述猜测浓度值,其中所述线性响应模型中的检测响应值与组分浓度之间线性相关。
可选的,按照如下方式执行牛顿迭代计算包括:
其中,k是迭代的次数,是针对作为目标气体的第j种气体在第k次迭代计算前后关于浓度值的变化量,是针对第j种气体在第k次迭代计算所输出的迭代浓度值,R1,R2…Rn是n个检测传感器相对目标气体的检测响应值,fij(x)是第i个气敏传感器对第j种气体的关于检测响应值的响应函数,是fij(x)的导数。
本发明实施例另一方面提供一种混合气体的组分浓度识别***,包括:浓度猜测单元,用于获取气敏传感器针对混合气体中的目标气体组分的检测响应值,并基于所述检测响应值确定猜测浓度值;迭代浓度计算单元,用于基于所述猜测浓度值和牛顿迭代算法执行牛顿迭代计算,并针对每次迭代计算依次确定相应的迭代浓度值;迭代停止分析单元,用于确定在每次迭代计算前后关于浓度值的变化量,并当所述变化量小于预定的浓度阈值时,停止执行迭代计算;浓度确定单元,用于根据最后一次迭代计算所确定的所述迭代浓度值,确定所述目标气体组分的浓度。
可选的,所述气敏传感器包含于气敏传感器阵列,以及所述气敏传感器阵列中的多个气敏传感器针对同一浓度的所述目标气体组分能够分别产生不等的多个检测响应值,迭代停止分析单元包括:迭代变量确定模块,用于确定针对所述多个检测响应值的在每次迭代计算前后关于浓度值的多个变化量;阈值对比判断模块,用于判断所述多个变化量的求和值是否小于所述浓度阈值;以及迭代停止执行模块,用于当所述多个变化量的求和值小于所述浓度阈值时,停止执行迭代计算。
可选的,所述浓度确定单元用于根据针对所述多个气敏传感器各自最后一次迭代计算所确定的迭代浓度值,确定所述目标气体组分的所述浓度。
可选的,所述气敏传感器阵列中的所述多个气敏传感器针对所述目标气体组分分别被配置有关于检测响应值和组分浓度的多个响应曲线,所述多个所述响应曲线之间互不相关。
可选的,所述浓度确定单元包括:标定范围匹配模块,用于将最后一次迭代计算所确定的所述迭代浓度值与标定响应浓度范围进行匹配,其中所述标定响应浓度范围为预先设定的;浓度确定模块,用于若在所述标定响应浓度范围内,则将最后一次迭代计算所确定的所述迭代浓度值确定为所述目标气体组分的浓度。
可选的,所述***还包括:重新猜测单元,用于若最后一次迭代计算所确定的所述迭代浓度值不在所述标定响应浓度范围内,则基于所述检测响应值重新选定所述猜测浓度值;重新执行单元,用于根据所重新选定的所述猜测浓度值,重新确定所述目标气体组分的浓度。
可选的,所述浓度猜测单元用于基于所述检测响应值和针对所述气敏传感器的关于检测响应值与浓度的线性响应模型,确定所述猜测浓度值,其中所述线性响应模型中的检测响应值与组分浓度之间线性相关。
可选的,该***还包括:牛顿迭代模型,用于按照如下方式执行牛顿迭代计算:
其中,k是迭代的次数,是针对作为目标气体的第j种气体在第k次迭代计算前后关于浓度值的变化量,是针对第j种气体在第k次迭代计算所输出的迭代浓度值,R1,R2…Rn是n个检测传感器相对目标气体的检测响应值,fij(x)是第i个气敏传感器对第j种气体的关于检测响应值的响应函数,是fij(x)的导数。
通过上述技术方案,基于气敏传感器检测的目标气体组分的响应值确定猜测浓度值,并将其结合牛顿迭代算法来校准该猜测浓度值,当在某一次牛顿迭代计算的过程中,存在输入和所输出的浓度值变化小于浓度阈值时,则说明此次迭代计算所输出的经校准的浓度值是更贴近该目标气体组分的真实的浓度的,将此次迭代计算所输出的迭代浓度值确定为目标气体组分的浓度。由此结合牛顿迭代算法和检测响应预测技术,实现了对利用检测响应值和气敏传感器的线性响应特性就确定出的组分浓度值的校准操作,降低了气敏传感器的线性浓度响应对实际混合气体的组分浓度检测的局限性,保障了所确定的气体组分浓度的高精确度。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1是本发明实施例的混合气体的组分浓度识别方法一实施例的流程图;
图2是图1所示的本发明实施例中的S14的具体流程执行示意图;
图3是本发明实施例的混合气体的组分浓度识别方法一实施例的流程图;
图4是两种传感器分别针对两种气体的响应曲线图;
图5a是二路传感器针对第一初始浓度值的二组分气体识别的迭代过程曲线图;
图5b是二路传感器针对第二初始浓度值的二组分气体识别的迭代过程曲线图;
图5c是二路传感器针对第三初始浓度值的二组分气体识别的迭代过程曲线图;
图6是本发明实施例的迭代执行过程的具体流程执行图;
图7是关于四路气敏传感器的组分浓度响应曲线;
图8a是四路气敏传感器针对第一气体组分浓度真实值的四组分气体识别的迭代过程的曲线图;
图8b是四路气敏传感器针对第二气体组分浓度真实值的四组分气体识别的迭代过程的曲线图;
图9是本发明实施例的混合气体的组分浓度识别***的一实施例的结构框图。
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
如图1示出的是本发明实施例的混合气体的组分浓度识别方法,包括:
S11、获取气敏传感器针对混合气体中的目标气体组分的检测响应值,并基于检测响应值确定猜测浓度值;
具体地,术语“检测响应值”可以是对应于传感器针对目标气体组分这一物理量所反馈的相应大小的电信号(例如,其可以是模拟电信号),关于猜测浓度值可以是参考目前相关技术中针对电信号的检测响应值的计算转换方法(例如线性转换),例如可以是基于检测响应值和针对气敏传感器的关于检测响应值与组分浓度的线性响应模型,确定所述猜测浓度值,其中线性响应模型中的检测响应值与组分浓度之间线性相关,当然也可以是采用其他的模型预测,其都属于本发明的保护范围内。
另外,关于目标气体组分的气体类型应不作限定,例如其可以是混合气体中的任意类型的气体。
S12、基于猜测浓度值和牛顿迭代算法执行牛顿迭代计算,并针对每次迭代计算依次确定相应的迭代浓度值;
具体地,牛顿迭代算法(Newton's method)是一种在实数域和复数域上近似求解方程的方法,其用于解决多数不存在求根公式的方程和模型中,而通过牛顿迭代算法所得的近似解能够相对一确定的值(例如实际解)附***方收敛,由此通过牛顿迭代法的实施,实现了对猜测浓度值的校准操作。以及,关于牛顿迭代的定义,还可以参照数学应用领域对该术语的定义,在本实施例中对于该牛顿迭代算法不作具体限定,也就是其可以直接将相关技术领域中的牛顿迭代模型应用在本实施例中,还可以是使用全新的牛顿迭代模型(具体地将在下文展开描述),且以上实施方式都属于本发明的保护范围。
S13、确定在每次迭代计算前后关于浓度值的变化量,并当变化量小于预定的浓度阈值时,停止执行迭代计算;
具体地,如上所述的,根据牛顿迭代算法的特性,牛顿迭代算法所输出的近似解会相对于一定值附近收敛。以及在理论上,执行迭代的步骤越多,就越接近这个定值,但出于对处理器资源消耗的考虑,本实施例提出确定迭代前后值的变化量,并将该变化量与预定的浓度阈值进行对比,以当牛顿迭代计算前后所得到的值变化较小时,就可以停止迭代计算了。需说明的是,该预定的浓度阈值可以是通过多次实验所确定的,由此保障迭代次数不会过多的情况下还能保障迭代输出结果的高精确性。
S14、根据最后一次迭代计算所确定的迭代浓度值,确定目标气体组分的浓度。
具体地,可以是直接将最后一次迭代计算所确定的迭代浓度值确定为目标气体组分的浓度,还可以是通过进一步的判断来确定是否将该迭代浓度值确定为最终的目标组分的浓度。
作为本实施例的一种优选实施方式,如图2示出了图1中的S14的具体流程执行示意图,包括:
S141、将最后一次迭代计算所确定的迭代浓度值与标定响应浓度范围进行匹配,其中标定响应浓度范围为预先设定的;
关于标定响应浓度范围的解释,其可以是通过将气敏传感器在实际的多种已知目标组分浓度的混合气体中进行测试,并记录气敏传感器针对多种目标组分浓度的实际检测响应值,由此得到检测响应值与实际目标组分浓度之间的标定关系,然后基于该检测响应值可以确定出相对于该实际目标组分浓度的上下浮动的范围,并以此作为标定响应浓度范围。
若在标定响应浓度范围内,则跳转至S142,以及若不在标定响应浓度范围内,则跳转至S143。
S142、将最后一次迭代计算所确定的迭代浓度值确定为目标气体组分的浓度。
具体地,当最后一次所确定的迭代浓度值在预设定标定响应浓度范围时,才会将该迭代浓度值确定为目标气体组分的浓度,保障了输出结果的可靠性。在实施上,可以是设置尽可能多的标定的数据点,由此保障在气敏传感器处于不同的检测响应值时,都能够确定出精准的目标气体组分的浓度。
S143、基于检测响应值重新选定猜测浓度值,并根据所重新选定的所述猜测浓度值,重新确定所述目标气体组分的浓度。
关于S143设置的目的,需说明的是,猜想浓度值的大小会直接影响了最终所确定的目标气体组分的浓度,当该猜测浓度值严重偏离真实浓度的时候,会导致牛顿迭代最终所收敛的目标值不是真实浓度值,此时就需要对该猜测浓度值进行更换,并将更换之后的猜测浓度值再实施上述的迭代浓度确定步骤,由此保障了最终所确定的目标气体组分的浓度不会偏离真实气体组分浓度过远。
如图3所示,本发明实施例的混合气体的组分浓度识别方法,该方法主要是针对气敏传感器阵列,其中该气敏传感器阵列具有多个气敏传感器,并且气敏传感器阵列中的多个气敏传感器针对同一浓度的目标气体组分能够分别产生不相等的多个检测响应值,举例而言,传感器阵列中有4个气敏传感器,4个传感器针对浓度为m的硫化氢(HS)气体的检测响应值各不相同,例如其分别可以是a、b、c、d这四个不同的检测响应值,该方法具体包括:
S21:获取多个气敏传感器分别针对混合气体中的目标气体组分的多个检测响应值,并基于多个检测响应值分别确定多个猜测浓度值;
S22:基于多个猜测浓度值和牛顿迭代算法执行牛顿迭代计算,并针对每次迭代计算依次确定相应的多个迭代浓度值;
S23:确定针对该多个气敏传感器的在每次迭代计算前后关于浓度值的相应多个变化量;
S24:判断该多个变化量的求和值是否小于浓度阈值;
S25:当多个变化量的求和值小于浓度阈值时,停止执行迭代计算;
S26:根据针对所述多个气敏传感器各自最后一次迭代计算所确定的迭代浓度值,确定目标气体组分相应的浓度。
在本实施例中,采用了多个对应于同样的浓度会产生不同的检测响应值的气敏传感器,并将该多个气敏传感器的多个检测响应值在各自牛顿迭代计算的过程中的多个不同的变化量求和,将该求和量与预定的浓度阈值进行对比,以此为依据判断是否应当停止牛顿迭代并最终确定目标气体组分的浓度。由此,充分应用了多传感器对气体组分的差异性响应的特性,并基于牛顿迭代算法逐步推导以推算出气体浓度信号,以对初步猜测的浓度值迭代校准,能够实现针对混合气体中的气体组分浓度的线性响应和非线性响应的需求,提高了混合气体中的组分浓度识别的精确度。
更优选地,由于本实施例中应用了多传感器针对气体组分的差异化响应特性,并基于牛顿迭代收敛的方式找到最终的浓度值,使得可以让该传感器阵列中的多个传感器之间的相关性更小或完全不相关。也就是,在对传感器阵列中的多个传感器进行选择和组合的时候,可以事先评估该多个传感器针对目标气体组分的关于检测响应值和组分浓度的多个响应曲线,并要求这多个响应曲线之间互不相关或者相关性特别小(例如其中一个响应曲线是基于上弧形曲线型的,而另一响应曲线是基于下弧形响应曲线的等等),这样就可以消除因单配置化的传感器对气体响应的差异化有限的问题,而提高了测量值的精度。关于本实施例还有许多具体的细节,在不冲突的情况下,可以参照图1所示的实施例进行相应的改进和优化,出于篇幅的考虑,在此便不再赘述。
本发明实施例还提供了一种新型的牛顿算法模型,该模型在实验应用中得到了很好的效果。为了使本发明的目的更令人信服,本申请的发明人对其所取得的效果做出相应的测试,并将本实施例开展过程的细节在下文中具体展开描述:
选定一具有n种对气体响应函数不同的气敏传感器的传感器阵列,记为S1,S2…Sn,同样也设置有n种待测气体记为Gas1,Gas2…Gasn,第i个气敏传感器(i可以取1或大于1的整数)对第j种气体的响应函数记为Fij(cj)。设每种气体对于气敏传感器是没有竞争的,且总的响应是每种气体的响应的线性叠加。当响应为线性响应时,总的响应可以表示为
因为是线性响应,其中fij是第i个气敏传感器对第j种气体的关于检测响应值的响应函数,所以浓度的导数均为常数,由浓度的导数构成的矩阵称为响应矩阵,假设气敏传感器阵列是完备的,则响应矩阵可逆,这样每种气体的浓度便可以求得。
但是,线性响应的应用范围非常有限,特别是在混合气体的气体组分浓度的识别,很多情况下需要执行非线性响应,也就是当响应为非线性响应时,响应R1,R2…Rn就不可以由上述方式简单的表示了。当其中的fij不是一个常数,其取值和cj有关时,左侧的矩阵就无法确定下来。对于非线性响应,应用牛顿迭代法的思路,其响应R1,R2…Rn可以应用如下方式表示:
其中k是迭代的次数,是针对作为目标气体的第j种气体在第k次迭代计算前后关于浓度值的变化量,是针对第j种气体在第k次迭代计算所输出的迭代浓度值,R1,R2…Rn是n个检测传感器相对目标气体的检测响应值,是第i个气敏传感器对第j种气体的响应函数算符,乘以一个浓度值就是那个浓度下的响应值,fij(x)是是第i个气敏传感器对第j种气体的响应函数的导数。
假定整条曲线上的响应矩阵均为可逆的,因此可以选择一组试探的代入上式左右矩阵,即可计算出进而可以计算出将代入左右矩阵,即可计算出用这种方法进行迭代,逼近真实值。以及,在初始值选择的恰当的时候,可以得到收敛的结果,假设第N步达到收敛条件,收敛条件例如可以是:
其中res2可以是指代预定的阈值,由此可以解出
关于该导数矩阵的来源,可以是对于响应曲线采用高阶多项式拟合,获得其导数,这就要求标定的数据点不能过少,否则会误差较大。需说明的是,线性响应曲线对传感器材料性能提出了苛刻的要求,并且利用线性算法的***其线性结算必须在线性响应区间之内,如果混合气体传感浓度稍偏离线性响应区间则会引入显著计算误差从而获得错误的气体浓度结果。而本发明提供的新型混合气体组分迭代分析算法不依赖于线性响应模型额设计,可以适用于更广泛的气体信号响应范围,可以适用于更广泛的气敏响应性质的器件和阵列。可以不用修正的获得准确的气敏组分信息,并且具有快速收敛的特性。具有用途广泛,气体浓度适用范围广泛,速度快,数据迭代准确的效果。
如图4所示,我们随机给出了两种传感器分别针对两种气体的响应曲线,由此可以看出针对气体响应在不同的传感器之间是存在差异,但是该差异有限,通常这种情况会导致很大的测量误差。如图5a-5c,其示出了双路传感器对双气体传感浓度迭代过程的曲线图,
(一)针对二路传感器及二组分气体识别的过程:
在执行迭代的过程中,首先我们选择混合气体中的一组真实的值c1=0.6c2=0.7,然后选定猜测数值为例如其可以是通过随机的选择所确定的,也可以是包括通过如下两种方案来选定的:其一是通过初次测量,假设测量数值由单一气体产生,由每条响应曲线计算出每个气体的最小浓度;在由上步确定的气体范围之内随机取点(初始值),寻找收敛点;其二是通过连续测量,设定初始值采用连续测量中的前一个满意的结算值。
然后,可以是将其代入上述的牛顿迭代公式,并利用初值所处响应曲线处的给出的响应数据与传感器真实数据的差;(3)通过响应曲线在该猜测浓度下的导数矩阵,算出新的一个猜测值;(4)然后把该值与初始猜测值比较,如果差距小于设定则迭代完成,如果差距大于设定则回到第一步,把此处获得数值当成猜测数值进行进一步计算。
图5a示出的是左侧循环的迭代过程,其中曲线的左侧的始点为选择的初始值,曲线右侧的终点为所设定的真实值。
对响应曲线进行拟合
S1-Gas1:F11=c+c2
S1-Gas2:F12=c+0.5c2
S2-Gas1:F21=c+c3
S2-Gas2:F22=2c+c3
按照图6的方式执行迭代:
步骤1:将初始值代入左右矩阵计算;
步骤2:判断两次迭代的浓度差是否满足收敛条件;
步骤3:若满足,则判断浓度值是否在标定的响应曲线范围之内,在范围之内则输出一个可能值,若不在则重新选一个初始值代入计算;
步骤4:若不满足,则继续代入牛顿迭代公式进行计算。
在选择的初始值处,计算得到导数矩阵为代入技术方案中的公式,计算得到下一个浓度值为此时的收敛条件为显然其不满足收敛条件,此时将计算得到的浓度值继续代入公式计算,得到下一个浓度值为导数矩阵为得到仍然不满足收敛条件,将计算得到的浓度值再次代入公式计算……迭代八次以后收敛,该处的导数矩阵为收敛条件为这样就计算得到了每种气体的浓度值。
更改真实值为c1=0.1c2=0.9,以对***可靠性进行验证,选择的初始值不变,图5b是对应的迭代过程,经和上述针对c1=0.6c2=0.7相同的处理过程,经过八步收敛。得到最终的
更改猜测的初始值为图5c是对应的迭代过程,经和针对c1=0.6c2=0.7相同的处理过程,经过七步收敛,得到最终的
在本实施例中,智能传感器阵列中混合气氛状态识别的组分迭代分析方法,放开对响应对气体浓度的线性要求,利用牛顿迭代的原理,对多传感气敏矩阵中的信息要求采用递归迭代的方法,充分运用多传感器对多种气体组分的差异性响应特性,采取利用导数,逐步推进的形式,从传感器阵列的响应信号,迅速解算出气体浓度信号。此方法适用广泛,气体浓度解算适用范围大,速度快,信号精度高。
(二)针对四路传感器及四组分气体识别的过程:
图7是关于四路气敏传感器的组分浓度响应曲线,此时可以设定所要检测的气体组分的真实值为c1=2c2=2c3=2c4=2。
猜测的初始值为图8a是其相应的迭代过程。纵轴是每个气体的浓度和预设真实值的差的绝对值。
对响应曲线进行拟合;
按图6的方式进行迭代;
在选择的初始值处,导数矩阵为代入牛顿迭代公式,以得到下一个浓度值为此时的收敛条件为不满足,继续迭代,计算的下一个导数矩阵为代入公式计算得到下一个浓度值为此时的收敛条件为不满足,继续迭代……十次以后,该处的导数矩阵为相应的收敛条件由此计算出了每种气体的浓度。
针对四维情况,更改所设置的混合气体真实值为c1=1c2=2c3=3c4=4,猜测的初始值不变,图8b是针对该真实值的所对应的迭代过程,经过和针对上述的c1=2c2=2c3=2c4=2相同的处理,经过十步收敛,最终的收敛条件计算出了每种气体的浓度。
综上所述,本发明所公开方法的收敛精度高(如图8a和图8b所示的,与真实值差距在10-15量级),迭代步数少(二维7、8步,四维10步左右),能够较佳地适应所选定的初始值。
优选地,可以将最后的收敛点与标定范围进行匹配,如果最后的收敛点不在标定范围之内的话,直接舍去即可,原因是在之前用多项式拟合时,在标定范围外仍有定义,这种错误的解可以很容易的在***程序运行过程中舍去。在另一种情况下,就是标定范围内有多个收敛点,这是因为在非线性的情况下有可能浓度空间到测量空间里的点并不是一一对应的,所以可能需要增添气敏传感器来解决这一问题。
需说明的是,虽然应用本发明实施例的牛顿迭代算法具有收敛精确度高,收敛速度快,但是对于所输入的测量值的精确度还是有一定的要求的,如果输入的测量值是错误的或者相差真实值太远,这样就会导致一个错误的收敛值。所以,考虑到这种误差,所以在实际选择传感器阵列的时候最好让不同的响应曲线的相关性小一些,这样所输入测量值的误差不会被放大,能够保障***的稳定和可靠实施。
如图9所示,本发明实施例一方面还提供一种混合气体的组分浓度识别***900,包括:
浓度猜测单元901,用于获取气敏传感器针对混合气体中的目标气体组分的检测响应值,并基于所述检测响应值确定猜测浓度值;
迭代浓度计算单元902,用于基于所述猜测浓度值和牛顿迭代算法执行牛顿迭代计算,并针对每次迭代计算依次确定相应的迭代浓度值;
迭代停止分析单元903,用于确定在每次迭代计算前后关于浓度值的变化量,并当所述变化量小于预定的浓度阈值时,停止执行迭代计算;
浓度确定单元904,用于根据最后一次迭代计算所确定的所述迭代浓度值,确定所述目标气体组分的浓度。
在一些实施方式中,所述气敏传感器包含于气敏传感器阵列,以及所述气敏传感器阵列中的多个气敏传感器针对同一浓度的所述目标气体组分能够分别产生不等的多个检测响应值,迭代停止分析单元包括:迭代变量确定模块,用于确定针对所述多个检测响应值的在每次迭代计算前后关于浓度值的多个变化量;阈值对比判断模块,用于判断所述多个变化量的求和值是否小于所述浓度阈值;以及迭代停止执行模块,用于当所述多个变化量的求和值小于所述浓度阈值时,停止执行迭代计算。
在一些实施方式中,所述浓度确定单元用于根据针对所述多个气敏传感器各自最后一次迭代计算所确定的迭代浓度值,确定所述目标气体组分的所述浓度。
在一些实施方式中,所述气敏传感器阵列中的所述多个气敏传感器针对所述目标气体组分分别被配置有关于检测响应值和组分浓度的多个响应曲线,其特征在于,所述多个所述响应曲线之间互不相关。
在一些实施方式中,所述浓度确定单元包括:标定范围匹配模块,用于将最后一次迭代计算所确定的所述迭代浓度值与标定响应浓度范围进行匹配,其中所述标定响应浓度范围为预先设定的;浓度确定模块,用于若在所述标定响应浓度范围内,则将最后一次迭代计算所确定的所述迭代浓度值确定为所述目标气体组分的浓度。
在一些实施方式中,所述***还包括:重新猜测单元,用于若最后一次迭代计算所确定的所述迭代浓度值不在所述标定响应浓度范围内,则基于所述检测响应值重新选定所述猜测浓度值;重新执行单元,用于根据所重新选定的所述猜测浓度值,重新确定所述目标气体组分的浓度。
在一些实施方式中,所述浓度猜测单元用于基于所述检测响应值和针对所述气敏传感器的关于检测响应值与浓度的线性响应模型,确定所述猜测浓度值,其中所述线性响应模型中的检测响应值与组分浓度之间线性相关。
在一些实施方式中,该***还包括:牛顿迭代模型,用于按照如下方式执行牛顿迭代计算:
其中,k是迭代的次数,是针对作为目标气体的第j种气体在第k次迭代计算前后关于浓度值的变化量,是针对第j种气体在第k次迭代计算所输出的迭代浓度值,R1,R2…Rn是n个检测传感器相对目标气体的检测响应值,fij(x)是第i个气敏传感器对第j种气体的关于检测响应值的响应函数,是fij(x)的导数。
上述本发明实施例的***可用于执行本发明中相应的方法实施例,并相应的达到上述本发明方法实施例所达到的技术效果,这里不再赘述。
本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
另一方面,本发明实施例提供一种存储介质,其上存储有计算机程序,该程序被处理器执行如上的混合气体的组分浓度识别方法的步骤。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明实施例对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明实施例的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明实施例的思想,其同样应当视为本发明实施例所公开的内容。