- 相关推荐
压力传感器温度补偿技术
压力传感器温度补偿技术,小编为大家献上的关于智能传感器的设计的了论文哦!欢迎大家借鉴!
摘 要 压力传感器是一种较为常用的传感器件,由于自身的非线性特点以及外界因素的影响,传感器的输出结果容易产生误差,其中温度的影响最大,因此,对传感器的温度补偿就显得尤为重要。文章对目前常用的温度补偿方法进行了分析,在此基础上,提出了一种新的温度补偿方法,并对BP神经网络进行了改进,从研究结果来看,该方法有效提高了传感器的稳定性及精度。
关键词 压力传感器;温度漂移;温度补偿
压力传感器的输出结果精度容易受到多种因素的影响,其中,唯独是影响传感器输出精度的最主要因素。目前,国内经常使用硬件补偿和软件补偿两类方法对压力传感器进行温度补偿。硬件补偿方法调试难度较高、精度低、通用性也较差,在实际工程中应用时,难以去得较好的效果;而软件补偿方法有效弥补了硬件补偿的缺点,其中BP神经网络补偿在实际工程中运用十分广泛,但是典型BP神经网络补偿法虽然精确度高,但是整个流程过于复杂、整个过程耗时较长,因此,本文提出了一种基于主成分分析的BP神经网络补偿方法,希望对提高补偿效率和准确性起到一定的作用。
1 典型BP神经网络补偿原理分析
BP神经网络是目前研究中应用范围最广的神经网络模型之一,BP神经网络术语单向传输网络结构,整个信息传输的过程呈现出高度的非线性特点。典型的BP神经网络结构包括输入层、隐含层和输出层3层结构。通常情况下BP神经网络只有这3层结构,这主要是由于单隐层的BP神经网络既可以完成从任意n维到m维的映射。其典型结构如下图所示。
BP神经网络结构模型
BP算法设计到了信息的正向传播以及误差的反向传播,信息首先从输入层传入,然后经过隐含层的处理传入输出层,最终输出的信息可以用下面的形式进行表示:
其中:、分别代表了隐含层及输出层的权值;
n0、n1分别对应了输入节点数及隐含层节点数。
输出层神经元的激励函数f1通常呈现出线性特点;而隐含层神经元的激励函数f2通常采用如下所示的形式在(0,1)的S型函数中进行输出:
由于BP神经网络隐含层采用的传递函数为对数S型曲线,其输出范围在(0,1)之间。为了避免节点在短时间之内饱和而无法继续进行训练,需要在训练开始之前利用下面公式对样本数据进行预处理:
其中:Ui、Pi均为训练数据的标定值;Uimin、Uimax分别表示输出电压的标定极值(最小和最大);Pimin、Pimax分别表示压力的标定极值(最小和最大)。
当目标矢量为T,信息通过正向传递,可以得到误差函数,具体如下所示:
如果输出结果无法达到要求的误差范围,则返回误差信号并按照一定的权值对公式中的各层权值进行修正,直到输出结果达到期望值。
在利用典型BP神经网络进行压力传感器温度补偿的过程中,算法过于复杂,而且非常耗时,因此,需要对其进行改进,以提高补偿效率。
2 BP神经网络法的改进
2.1 改进原理
基于典型的BP神经网络,利用以下方法进行改进。
1)利用小波神经网络的思想对神经元的激励函数进行改进,从而实现小波特性与BP神经网络自学功能的充分结合,提高激励函数的逼近能力。以Morlet函数作为小波函数的母函数,可以降低不同层面神经元之间的影响,提高网络的收敛速度。以Morlet函数作母函数的小波函数属于幅值小波,其信号中包含了复值和相关信息,改进后的函数具体如下所示:
在本次研究中,我们选取了R个输入样本和N个输出节点,则可以利用下面的公式对第l个样本的第n个节点的输入进行表示:
其中:K表示神经网络隐含层的单元数量;M表示神经网络输入层的单元数量;ωn,k表示神经网络隐含层第k单元与输出层第n单元的连接权值;ak-小波伸缩因子;bk-平移因子;Sl(xm)―输入信号。
2)在计算过程中通过,附加动量法的应用可以有效改实现梯度方向的平滑过渡,使得计算结果更具稳定性。该方法以BP法为基础对权值进行调节,具体公式如下:
其中:t表示样本的训练次数;η表示学习速率;σ表示动量因子;σΔωki(t)表示附加动量项,它能够有效降低不同神经元之间的影响,提高网络的收敛速度。
2.2 主成分BP神经网络算法的实现
步骤1:按照典型BP神经网络数据预处理方法对样本数据进行预处理。
步骤2:利用主成分分析法对预处理后的样本数据进行分析,降低输入向量之间的影响,使各个输入变量的协同方差趋于统一,从而使各权值具有相同的收敛速度,并以此确定神经网络的输入节点。
步骤3:对神经网络进行初始化,并对其中的部分关键变量进行设置。
步骤4:为神经网络选取一组学习样本,以输入节点作为网络的输入向量,并输入期望fn,l,n=1,2,…,N;l=1,2,…,R。
步骤5:利用输入的网络参数计算网络的实时输出能力,当输出误差在允许范围之内时,停止训练;而当输出误差超过允许范围 ,则将误差信息进行反向传播,使权值沿误差函数的负梯度方向发生变化,然后利用梯度下降法计算出变化后的网络参数,然后再重复进行第4步的操作。
步骤6:BP神经网络在训练合格之后,对其进行样本补偿。
步骤7:对补偿后的样本进行反标准化处理,然后与实测数据进行误差比较,判断出网络改进之后的变化。
2.3 压力传感器温度补偿
根据前文提供的BP神经网络算法实现步骤,可以利用Matlab编程语言来实现。在实现该算法之后,我们通过在压力传感器量程范围内确定n个压力标定点,同时确定m个温度标定点。标准值发生器会根据每个标定点的信息产生对应的标定输入值。然后输入样本数据,样本数据按照目标值要求的±20%范围进行选择,然后以误差目标小于10-3进行训练,当达到误差目标之后,网络的收敛速度得到有效的提升。
3 结论
通过研究结果发现,利用主成分分析法对信息进行补偿之后,再利用BP神经网络对这些信息进行训练,其学习速度相对直接利用BP神经网络进行训练更高。同时,通过改进典型的BP神经网络,利用小波函数作为激励函数,并应用动量附加发对网络敏感性进行控制,可以有效避免网络发生局部极小问题。通过基于主成分的BP神经网络温度补偿方法可以使压力传感器受环境温度变化而发生的误差问题得到高效、精确的解决。
参考文献
[1]董九英.多传感器数据融合的主成分方法研究[J].计算机工程与应用,2009,45(33):111-113.
[2]章慧.基于BP神经网络的压力传感器数据融合[J].湖南工程学院学报,2011,21(1):55-58.
【压力传感器温度补偿技术】相关文章:
电气自动化中无功补偿技术10-08
电气自动化中的无功补偿技术10-08
无功补偿技术在电气自动化的应用论文10-08
电气自动化无功补偿技术分析论文10-08
电气自动化中的无功补偿技术论文10-09
电气自动化中的无功补偿技术论文10-09
电气自动化中的无功补偿技术分析10-08
电气自动化智能无功补偿技术应用论文10-09
无功补偿技术在电气自动化中的作用研究10-07
无功补偿技术在电气自动化中的应用分析10-07