一种湿度传感器的补偿方法

文档序号:9470166阅读:1401来源:国知局
一种湿度传感器的补偿方法
【技术领域】
[0001] 本发明属于传感器软补偿技术领域,具体涉及一种湿度传感器的补偿方法。
【背景技术】
[0002] 从2002年开始我国大气湿度探测开始采用碳湿敏电阻,到目前国际最先进的是 Vaisala的双加热薄膜电容传感器。气象部门已投入业务运行的自动气象站大部分都采用 该公司生产的HMP4?温湿度一体化传感器来测量空气的湿度。HMP4?温湿度传感器的测 湿元件是HUMICIP180高分子薄膜型湿敏电容,湿敏电容具有感湿特性的电介质,其介电常 数随相对湿度的变化而变化,从而完成对湿度的测量。由于该传感器的测量部分总是要和 空气中的灰尘和化学物质接触,从而温度的变化也会影响电介质介电常数的变化,使得湿 度传感器产生一定的温漂。
[0003] 针对温度对湿度传感器的这种非线性影响,国内外学者提出了硬件补偿和软件补 偿两种方法。硬件补偿方法由于受到电路中电子器件漂移等因素的影响,导致整个测量系 统可靠性差且精度低。软件补偿方法有二次插值、最小二乘多项式曲线拟合法、BP神经网 络法等。二次插值法的最优解范围取得越小,计算结果越精确,但是循环的次数会变多。最 小二乘多项式曲线拟合在应用过程中,当数据点较多时,容易出现振荡现象,导致形成病态 或奇异的方程组,无法获得多项式系数,因而其应用受到限制。BP神经网络由于是非线性优 化,权值的初始化的随机的,所以会存在局部极小的问题,而且新加入的样本会影响到已经 学好的样本,学习算法的收敛速度慢。

【发明内容】

[0004] 本发明所要解决的技术问题是:提供一种湿度传感器的补偿方法,解决了湿度传 感器测量过程可靠性差精度低的问题。
[0005] 本发明为解决上述技术问题采用以下技术方案:
[0006] -种湿度传感器的补偿方法,获取该湿度传感器的非线性参数,采用粒子群优化 算法对BP神经网络进行优化,建立湿度传感器的补偿模型,具体包括如下步骤:
[0007] 步骤1、首先,预先设定BP神经网络的层数、各层的神经元个数、初始权值和阈值, 并对粒子的位置和速度进行随机初始化、归一化样本数据的输入、输出值,然后,设定速度 惯性权重、学习因子、粒子的个数、适应度函数、最大迭代次数;
[0008] 步骤2、将多个样本输入,按照神经网络正向传播计算得到相应的输出值,并按照 如下公式计算样本经过BP神经网络计算输出与样本实际输出的误差绝对值之和J:
[0009]
其中,Yni为第m个样本的实际输出值,
为第m个样本的预测 值,m= 1,2,. . .,L,L为样本个数;
[0010] 步骤3、计算历史的最优适应度和整个种群的最优适应度,所述历史的最优适应度 是针对单个粒子所经历的所有位置中计算得到的最小的适应度,所述整个种群的最优适应 度是整个种群中所有粒子搜索到的最小适应度,将每个粒子的适应度值与历史的最优适应 度进行比较,选取适应度最小的作为局部最优权值和阈值,并将局部最优权值和阈值与整 个种群的最优适应度对比,选取局部最优权值和阈值最小值作为全局最优权值和阈值;
[0011] 步骤4、根据粒子群算法的位置和速度更新公式,更新粒子自身的速度和位置,迭 代次数加1 ;
[0012] 步骤5、判断迭代次数是否大于最大迭代次数,如果是,执行步骤7,否则,执行步 骤3至步骤5 ;
[0013] 步骤6、判断全局最优权值和阈值适应度值是否小于预先设定的最小适应度,如果 是,执行步骤7,否则,重复执行步骤3至步骤5 ;
[0014] 步骤7、输出该粒子的全局最优位置对应着BP神经网络最优的权值和阈值。
[0015] 所述粒子群算法的位置和速度更新公式如下:
[0017] 其中,1?为第k代的粒子速度,C+1为第k+1代的粒子速度,w为惯性权重,(^和 C2为学习因子,rJPr2是介于[0, 1]之间的均匀随机数,思为第k代粒子的局部最优位置, 为第k代的粒子位置,At1为第k+1代的粒子位置。
[0018] 所述粒子群算法的粒子位置对应一组权值和阈值。
[0019] 所述湿度传感器的特性函数为y=f(x),xG[S。,SJ,其中y是湿度传感器的 输出,X是湿度传感器的输入,输入信号范围是Sh-S。,Sh为湿度传感器的最高输入,S。 为湿度传感器的最低输入。
[0020] 将粒子的全局最优位置,赋值给BP神经网络,作为BP神经网络的初始权值和阈 值。
[0021] 与现有技术相比,本发明具有以下有益效果:
[0022] 由于BP神经网络学习算法是米用一种随机梯度最小均方的算法,导致其存在着 固有的缺陷:容易陷入局部极小、泛化能力较弱、网络的收敛速度较慢。而粒子群算法(PS0 算法)是基于全局寻优的搜索算法,具有很好的泛化能力。因此,采用BP与PSO结合的算 法,既能发挥BP神经网络的非线性应用,又能克服BP训练神经网络权值时容易出现的一些 问题,其补偿效果也是明显优于BP网络,该方法有效的抑制了温度对湿度传感器的影响, 提高了传感器的可靠性和准确性。
【附图说明】
[0023] 图1为温度对湿度传感器测量结果的影响曲线图。
[0024] 图2为PSO-BP流程图。
[0025] 图3为PSO网络预测输出。
[0026] 图4为适应度曲线。
[0027] 图5为误差曲线。
【具体实施方式】
[0028] 下面结合附图对本发明的结构及工作过程作进一步说明。
[0029] -种湿度传感器的补偿方法,获取该湿度传感器的非线性参数,采用粒子群优化 算法对BP神经网络进行优化,建立湿度传感器的补偿模型,具体包括如下步骤:
[0030] 步骤1、首先,预先设定BP神经网络的层数、各层的神经元个数、初始权值和阈值, 并对粒子的位置和速度进行随机初始化、归一化样本数据的输入、输出值,然后,设定速度 惯性权重、学习因子、粒子的个数、适应度函数、最大迭代次数;
[0031] 步骤2、将多个样本输入,按照神经网络正向传播计算得到相应的输出值,并按照 如下公式计算样本经过BP神经网络计算输出与样本实际输出的误差绝对值之和J:
[0032]
其中,yn为第m个样本的实际输出值,^为第111个样本的预测值,m= 1,2,. . .,L,L为样本个数;
[0033] 步骤3、计算历史的最优适应度和整个种群的最优适应度,所述历史的最优适应 度是针对单个粒子所经历的所有位置中计算得到的最小的适应度,所述整个种群的最优适 应度是整个种群中所有粒子搜索到的最小适应度,根据J计算所有粒子的适应度,将每个 粒子的适应度值与历史的最优适应度进行比较,选取适应度最小的作为局部最优权值和阈 值,并将局部最优权值和阈值与整个种群的最优适应度对比,选取局部最优权值和阈值最 小值作为全局最优权值和阈值;
[0034] 步骤4、根据粒子群算法的位置和速度更新公式,更新粒子自身的速度和位置,迭 代次数加1 ;
[0035] 步骤5、判断迭代次数是否大于最大迭代次数,如果是,执行步骤7,否则,执行步 骤3至步骤5 ;
[0036] 步骤6、判断全局最优权值和阈值适应度值是否小于预先设定的最小适应度,如果 是,执行步骤7,否则,重复执行步骤3至步骤5 ;
[0037] 步骤7、输出该粒子的全局最优位置对应着BP神经网络最优的权值和阈值。
[0038] 所述粒子群算法的位置和速度更新公式如下:
[0040] 其中,:?为第k代的粒子速度,为第k+1代的粒子速度,w为惯性权重,cdPc2 为学习因子,是介于[0,1]之间的均匀随机数,if为第k代粒子的局部最优位置, 为第k代的粒子位置,为第k+1代的粒子位置。
[0041] 所述粒子群算法的粒子位置对应一组权值和阈值。
[0042] 所述湿度传感器的特性函数为y=f(x),xG[S
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1