一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种气体传感器的温湿度补偿方法和装置

2022-05-11 11:02:04 来源:中国专利 TAG:


1.本发明涉及气体传感器领域,尤其是涉及一种气体传感器的温湿度补偿方法和装置。


背景技术:

2.气体是我们生产和生活中离不开的一部分。在生活中我们需要吸入氧气、会使用液化气;在生产中,很多领域都需要使用气体原料,同时工业过程也会产生气体。因此,研究高性能的气体传感器是十分必要的。
3.气体传感器的检测精度会受到环境的影响,其中温度和湿度(温湿度)是两个主要的影响因素。传感器中的电子元件、光学元件等均会受温湿度的影响而发生变化,导致检测精度和稳定性降低。对于氢气、甲烷这样的可燃气体和一氧化碳、氯气这样的有毒气体,检测结果不精确可能带来很大的安全隐患,故而,消除环境因素给传感器测量结果带来的误差非常关键。
4.为了降低温湿度的影响,可以采用硬件补偿或软件补偿的策略。硬件补偿是通过硬件电路降低温湿度对测试结果的影响,如在负载电路中并联或串联热敏、湿敏电阻;软件补偿则是利用算法对数据进行处理,如用最小二乘曲线拟合法、机器学习等进行补偿。
5.现有的软件补偿方法常常使用bp(back propagation)神经网络来对传感器进行补偿,bp神经网络依靠不断的误差反向传播修改输入层至隐含层、隐含层至输出层的权值和阈值,通过修改后的权值和阈值降低神经网络的输出误差。但是由于bp神经网络的初始权值和阈值是随机生成的,当二者的选取不恰当时,易出现网络收敛速度慢、陷入局部最小值的情况,导致对传感器检测结果的补偿不当。


技术实现要素:

6.本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种气体传感器的温湿度补偿方法和装置。
7.本发明的目的可以通过以下技术方案来实现:
8.一种气体传感器的温湿度补偿方法,包括将气体传感器的测量值、当前环境温度和当前环境湿度输入经过人工蜂群算法优化的bp神经网络,得到气体浓度的补偿值,其中,bp神经网络的优化过程如下:
9.s1、初始化人工蜂群算法的参数,将bp神经网络的权值和阈值作为人工蜂群算法的蜜源,并设定bp神经网络的最小误差阈值;
10.s2、执行人工蜂群算法,更新最优蜜源;
11.s3、计算当前最优蜜源下bp神经网络的误差,若误差不大于最小误差阈值或执行人工蜂群算法的次数达到最大迭代次数,则执行步骤s4;若误差大于最小误差阈值且执行人工蜂群算法的次数未达到最大迭代次数,则重新执行步骤s2;
12.s4、输出此时的最优蜜源,作为bp神经网络的初始权值和初始阈值,并将气体传感
器的测量值和温湿度作为神经网络输入,训练bp神经网络,得到训练好的bp神经网络。
13.进一步地,所述人工蜂群算法采用分段式轮盘赌的方法对蜜源进行选择。
14.进一步地,采用分段式轮盘赌选择蜜源的计算表达式如下:
[0015][0016]
r=rand(0,1)
[0017][0018]
式中,pi为选择第i个蜜源的概率,fiti为第i个蜜源的适应度,γ为阶段因子,mcn为最大迭代次数,iter为此时的迭代次数,ns为蜜源的数量。
[0019]
进一步地,所述人工蜂群算法的参数包括蜜源的个数、开采次数限制和最大迭代次数。
[0020]
进一步地,所述bp神经网络包括输入层、隐含层和输出层,输入层包括三个输入节点,分别输入气体传感器检测浓度、温度传感器检测的温度和湿度传感器检测的湿度,所述输出层包括一个输出节点,输出补偿后的气体浓度。
[0021]
进一步地,所述bp神经网络各层之间的激活函数均采用sigmoid函数。
[0022]
进一步地,所述bp神经网络的误差表达式如下:
[0023][0024][0025]
式中,e表示全局误差,ek表示bp神经网络第k次训练的误差,k表示总训练次数,ym表示神经网络输出实际值,om表示神经网络输出预测值。
[0026]
一种气体传感器的温湿度补偿装置,包括存储器和处理器,所述存储器,用于存储计算机程序;所述处理器,用于当执行所述计算机程序时,实现以下方法:将气体传感器的测量值、当前环境温度和当前环境湿度输入经过人工蜂群算法优化的bp神经网络,得到气体浓度的补偿值,其中,bp神经网络的优化过程如下:
[0027]
s1、初始化人工蜂群算法的参数,将bp神经网络的权值和阈值作为人工蜂群算法的蜜源,并设定bp神经网络的最小误差阈值;
[0028]
s2、执行人工蜂群算法,更新最优蜜源;
[0029]
s3、计算当前最优蜜源下bp神经网络的误差,若误差不大于最小误差阈值或执行人工蜂群算法的次数达到最大迭代次数,则执行步骤s4;若误差大于最小误差阈值,则重新执行步骤s2;
[0030]
s4、输出此时的最优蜜源,作为bp神经网络的初始权值和初始阈值,并将气体传感
器的测量值和温湿度作为神经网络输入,训练bp神经网络,得到训练好的bp神经网络。
[0031]
进一步地,所述人工蜂群算法采用分段式轮盘赌的方法对蜜源进行选择。
[0032]
进一步地,采用分段式轮盘赌选择蜜源的计算表达式如下:
[0033][0034]
r=rand(0,1)
[0035][0036]
式中,pi为选择第i个蜜源的概率,fiti为第i个蜜源的适应度,γ为阶段因子,mcn为最大迭代次数,iter为此时的迭代次数,ns为蜜源的数量。
[0037]
与现有技术相比,本发明具有以下优点:
[0038]
1、本发明使用bp神经网络修正了气体传感器的输出值,并选用人工蜂群算法对bp神经网络进行了优化,避免了由于bp神经网络初始值的随机性引起的结果不精确的问题,提升了bp神经网络的预测精度和收敛速度,继而提高了温湿度对气体传感器的补偿值的精确性。
[0039]
2、本发明在人工蜂群算法中选用分段式轮盘赌算法代替了传统的轮盘赌算法,避免了算法过早收敛的问题,确保可获取最优蜜源,进一步保障了bp神经网络初始权值和阈值的准确性。
附图说明
[0040]
图1为本发明的bp神经网络优化流程示意图。
[0041]
图2为本发明的人工蜂群算法流程示意图。
[0042]
图3为本发明涉及的bp神经网络层级图。
具体实施方式
[0043]
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0044]
本实施例提出了一种气体传感器的温湿度补偿方法,包括将气体传感器的测量值、当前环境温度和当前环境湿度输入经过人工蜂群算法优化的bp神经网络,得到气体浓度的补偿值。其中,bp神经网络的优化过程如图1所示,具体如下:
[0045]
步骤s1、初始化人工蜂群算法的参数,将bp神经网络的权值和阈值作为人工蜂群算法的蜜源,并设定目标函数和最小误差阈值。
[0046]
在人工蜂群算法中,蜜源的位置代表了优化问题中的一个可能的解向量。设共有ns个蜜源,用i(i=1,2,

,ns)表示蜜源,蜜源的质量代表相应的解的适应度(用fiti表
示)。一个人工蜂群由三部分组成:引领峰、跟随蜂和侦察蜂。引领蜂的数量等于跟随蜂的数量,每个引领蜂同一时间内只对一个蜜源引进行采蜜。每个解都是一个d维向量,d代表了需优化参数的个数。在算法中,需要对三个控制参数进行初始化:蜜源(解)的个数(ns)、开采次数限制(limit)和算法最大迭代次数(mcn)。
[0047]
步骤s2、执行人工蜂群算法,如图2所示,更新最优蜜源;
[0048]
其中,人工蜂群算法的具体流程如下:
[0049]
步骤a1、算法随机产生初始群体,即ns个蜜源xii=1,2,

,ns),每个蜜源由元素x
id
(d=1,2,

,d)组成,即xi=[x
i1
x
i2

x
id
]。蜜源的初始位置产生于搜索空间中的随机位置,产生公式如下:
[0050]
x
id
=x
dmin
rand(0,1)(x
dmax-x
dmax
)
[0051]
x
dmax
和x
dmin
分别表示搜索空间中维度d的下限和上限。
[0052]
步骤a2、引领蜂在搜索开始时下式在蜜源xi的周围搜索产生一个新的蜜源ui=[u
i1ui2
…uid
],即从邻域搜索新解:
[0053]uid
=x
id
rand(-1,1)(x
id-x
jd
)
[0054]
其中,d∈{1,2,

,d}表示引领蜂随机的选择解向量中的一维进行搜索。j∈{1,2,

,ns}也是随机产生的,且j≠i,表示在ns个蜜源中随机选择一个不等于i的蜜源。
[0055]
如果u
id
超过了允许的最大值,则根据下式转化成边界值:
[0056][0057]
当新蜜源ui的适应度优于xi时,采用贪婪选择的方法用ui代替xi,否则保留xi。
[0058]
步骤a3、所有的引领蜂完成步骤a2后,飞回信息交流区共享蜜源信息。设fi为目标值函数,蜜源的适应度fiti根据下式计算:
[0059][0060]
从步骤s3中可知,人工蜂群算法与bp神经网络是混合优化的,因此选用第i个解下bp神经网络的误差值ei作为适应度的计算参数。
[0061]
在传统的人工蜂群算法中,跟随蜂选择引领蜂指示的蜜源是依据轮盘赌机制,这样一来会使得人工蜂群算法早熟,为了保持算法的进化能力,需要保持蜂群的多样性,使得进化不会快速向适应度值高的蜜源集中,本实施例对轮盘赌选择方式进行调整,采用分段式轮盘赌的方法,公式如下:
[0062][0063]
r=rand(0,1)
[0064][0065]
式中,γ为阶段因子,iter为此时的迭代次数,ns为蜜源的数量。
[0066]
在算法迭代初期,iter较小,阶段因子γ也较小,因此r>γ的可能性更大,适应度值较低的对应的pi更大。故此时跟随蜂选择适应度较低的蜜源的概率更高,可以保证全局寻优,避免舍弃初期适应度较差的优质蜜源,防止算法早熟;
[0067]
在算法迭代后期,iter较大,阶段因子γ也较大,因此r≤γ的可能性更大,适应度值较高的对应的pi更大。故此时跟随蜂选择适应度较高的蜜源的概率更高,保证算法在后期快速收敛。
[0068]
步骤a4、搜索过程中如果蜜源xi不能再被更新(一直找不到更好的蜜源),即更新失败的次数超过最大开采次数(limit),引领蜂放弃该蜜源并且转变为侦察蜂,该侦察蜂会在搜索空间中随机产生一个新的蜜源代替xi,并输出此时的蜜源作为最优蜜源。
[0069]
步骤s3、将步骤a4中的最优蜜源导入bp神经网络,判断是否满足人工蜂群算法的终止条件,若否,则回到重新执行步骤a2;若是,则执行步骤s4。
[0070]
其中终止条件为人工蜂群算法的迭代次数到达最大迭代次数或bp神经网络的误差不大于最小误差阈值,其中误差的计算表达式如下:
[0071][0072][0073]
式中,e表示全局误差,ek表示bp神经网络第k次训练的误差,k表示总训练次数,ym表示神经网络输出实际值,om表示神经网络输出预测值。
[0074]
步骤s4、输出此时的最优蜜源,由于已满足终止条件,可以选取当前的最优蜜源为初始权值和初始阈值。并将气体传感器的测量值和温湿度作为神经网络输入,训练bp神经网络,并得到训练好的bp神经网络。
[0075]
其中,bp神经网络包括输入层、隐含层和输出层,输入层包括三个输入节点,分别输入气体传感器检测浓度、温度传感器检测的温度和湿度传感器检测的湿度,输出层包括一个输出节点,输出补偿后的气体浓度,如图3所示。各层之间的激活函数均采用sigmoid函数。
[0076]
本实施例还提供了一种气体传感器的温湿度补偿装置,包括存储器和处理器,所述存储器,用于存储计算机程序;所述处理器,用于当执行所述计算机程序时,实现上述实施例中提到的一种气体传感器的温湿度补偿方法。
[0077]
本实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例中提到的一种气体传感器的温湿度补偿方法,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更
具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。,
[0078]
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献