基于BP神经网络的一种传感器温度补偿方法.docx
《基于BP神经网络的一种传感器温度补偿方法.docx》由会员分享,可在线阅读,更多相关《基于BP神经网络的一种传感器温度补偿方法.docx(9页珍藏版)》请在冰豆网上搜索。
基于BP神经网络的一种传感器温度补偿方法
电子设计工程
ElectronicDesignEngineering
第19卷Vol.19第9期No.92011年5月May.2011
收稿日期:
2011-02-16
稿件编号:
201102022
作者简介:
张潜(1973—,男,江苏常熟人,工程师。
研究方向:
计算机测控,现代测控技术。
基于BP神经网络的一种传感器温度补偿方法
张潜,武强
(常熟市公安局机动车检测站江苏常熟215500
摘要:
简单介绍了硅压阻式传感器温度误差产生的原因及其特点,提出了一种利用BP神经网络对其温度误差及非线性误差进行补偿的方法。
根据传感器温度误差的特点设计了一个多层的BP神经网络,其中传感器测试电路中四臂电桥的桥路电压和未经补偿的传感器的输出作为神经网络的两个输入。
利用MatLab对该网络进行训练,得到了网络的权值和阈值。
经过试验证明,该网络能够有效的补偿传感器的温度非线性误差,在-40~60℃范围内,使温度误差从原来的5.4%降到了0.2%。
关键词:
温度补偿;硅压阻式;传感器;BP神经网络;电桥中图分类号:
TP212
文献标识码:
A
文章编号:
1674-6236(201109-0152-03
Approachestorealizetemperaturecompensation
basedonBPneuralnetwork
ZHANGQian,WUQiang
(MotorVehicleInspectionStationofChangshuPublicSecurityBureau,Changshu215500,China
Abstract:
Piezoresistivepressuresensortemperatureerrorcausesandcharacteristicsofbasisissimplyintroduced,akindofBPneuralnetworktoitstemperatureerrorandnonlinearerrorcompensationmethodisputforward.AccordingtothecharacteristicsoftemperatureerrorsensordesignedalayersofBPneuralnetwork,amongthemwithfourarmsbridgeroadvoltageofsensortestcircuitsandtheoutputofthesensorwithoutcompensationastwoinputofneuralnetwork.MatLabtonetworkfortraining,getnetworkweightsandthreshold.afterexperimentsprove,thenetworkcanbeeffectivecompensationsensornonlineartemperatureerror,inthetemperaturerangeof40℃belowzeroto60℃,maketemperatureerrorfromtheoriginal5.4%to0.2%.
Keywords:
temperaturecompensation;piezoresistive;sensors;BPneuralnetwork;electricalbridge
传感器特别是硅压阻式传感器的温度误差在其总误差中占有很大的比重,温度补偿的好坏直接影响着传感器的总精度。
温度误差的补偿方法有很多种,其中软件补偿是一种较常见的方法。
由于传感器的温度误差是一种非线性误差,即各个温度点的补偿系数也应该呈非线性,这给补偿带来了一定的困难[1-3]。
常常采用的方法是选取几个温度点,求得补偿系数,其它温度点的补偿系数通过线性插值得到,这种方法实质上是一种将补偿系数分段线性化来拟合补偿系数的非线性曲线的方法。
因此,要做到较高的补偿精度比较困难。
而BP神经网络具有很强的曲线拟合能力,可以利用BP网络对传感器输出值进行处理,得到去除了温度误差的理想输出值。
但是,单单从传感器的输出很难判断哪些是由输入压力所引起的输出,哪些是由于温度误差所带来的输出[4]。
所以,向BP网络引入一个反映温度变化的参数至关重要。
而传感器桥路电压可以满足条件。
因此,利用传感器的桥路电压和未经温度补偿的传感器输出一起作为神经网络的输入。
试验证明,构建的BP神经网络能够使传感器的温度误差得到大大降低,使得传感器在-40~60℃温度范围内,非线性温度误差降低到0.2%。
1
BP神经网络硅压阻式传感器温度补偿
1.1
硅压阻式传感器的温度误差
硅压阻式传感器是用半导体材料制成的,而半导体材料
对温度很敏感。
因此,硅压阻式传感器的温度误差较大,并且其温度误差具有以下特点:
首先,在相同压力下硅压阻式传感器的温度误差比其他材料传感器的要大;其次,它的温度误差是非线性的;再次,在进行温度补偿的过程中,很难区分温度误差引起的输出量的变化和压力变化引起的输出量的变化;此外,硅压阻传感器的温度误差有很大的分散性,甚至由同一制造商提供的同一型号传感器的误差幅度彼此之间也会有轻微的差异。
这些特点给硅压阻式传感器的温度误差补偿带来了一定的困难。
鉴于硅压阻传感器温度误差的特点,要对它进行补偿,首先必须找到一个能够反映温度变化的参量,这可以从传感器的测量电路中获得[5-6]。
硅压阻式传感器的测量电路,由应变计组成的四臂电桥
-152-
图3BP神经网络对压阻传感器温度补偿原理图
Fig.3BPneuralnetworktoresistancesensortemperature
compensationschematicdiagram
组成,如图1所示,四臂电桥中的4个电阻的阻值不仅会随
压力的变化而变化,还会随温度的升高而增大。
假设温度为t0时,R1=R2=R3=R4=R0,当温度、压力发生变
化时,各电阻阻值可以用式(1、(2表示:
R1=R3=R0+ΔRt+ΔRp(1
R2=R4=R0+ΔRt-ΔRp(2
ΔRt=Rt-R0=tα(3
其中:
R0—温度为t0时的电阻值;
ΔRt—温度变化Δt引起的电阻变化;
ΔRp—输入压力引起的电阻变化;
Rt—温度为t时的电阻值;
α—敏感栅材料的电阻温度系数。
根据测量电路和式(1,(2,(3很容易得到:
Vb=I(R0+ΔRt=I(R0+tα(4
从式(4可得,桥路电压Vb与压力产生的应变没有关
系,仅与温度引起的附加应变有关。
因此,可以利用它作为反
映温度变化的参数,而不需另外增加一个温度传感器,这样
做的好处是,直接利用压力传感器本身元件敏感温度的变
化,从而避免由于外加温度传感器而导致测量温度和压阻传
感器应变片实际温度存在差异给补偿带来误差,提高了补偿
的精度,同时也节约了成本,简化了电路。
硅压阻式传感器虽然存在着很大的温度误差,但是在温度
不变的情况下,传感器的输出呈现出很好的线性度和重复性,这
就为用BP神经网络对它进行温度补偿提供了必要的条件。
1.2BP神经网络算法
1986年Rumelhart,Hinton和Willians完整而简明地提出
一种ANN的误差反相传播训练算法(简称BP算法。
目前,
在人工神经网络的实际应用中,绝大部分的神经网络模型是
采用BP网络和它的变形形式,它也是前向网络的核心部分,
并体现了人工神经网络最精华的部分[7]。
BP神经网络由输入层、输出层和多层隐含层组成,只要
隐含层中有足够数量的神经元,它就可以用来逼近几乎任何
一个函数。
事实上,研究已表明,两层网络在其隐含层中使用
S形传输函数,在输出层中使用线性传输函数,就几乎可以以
任意精度逼近任何函数。
三层BP神经网络的结构图如图2
所示,任意层的BP神经网络具有类似的结构[8]。
在多层网络中,某一层的输出成为下一层的输入。
描述
此操作的等式为:
am+1=fm+1(Wm+1+am+
bm+1,m=0,1,…,M-1(5
这里,M是网络的层数。
多层网络的BP算法是LMS
(LeastMeanSquare,最小均方算法的推广。
算法的输入是一
个网络正确行为的样本集合:
{p1,t1},{p2,t2},…,{pQ,tQ}
这里pQ是网络的输入,tQ是对应的目标输出。
每输入一
个样本,便将网络输出与目标输出相比较。
算法将调整网络参
数以使均方误差最小化。
每一步对参数的调节见式(7(8。
式(6为均方误差的期望。
这里,均方误差的期望值被第
k次迭代的均方误差所代替。
F赞(x=E赞[e2]=(t(k-a(kT(t(k-a(k=eT(ke(k(6
近似均方误差的最速下降算法为:
wmi,j(k+1=wmi,j(k-α坠F
赞
坠wmi,j
(7
bmi(k+1=bmi(k-α坠F
赞
i
(8
这里α是学习速度。
1.3BP神经网络的构建和训练
用BP神经网络对硅压阻式传感器进行温度补偿的原理
图如图3所示,在MatLab中创建的是一个1-10-2-1的BP
网络[9-10]。
用BP神经网络对硅压阻式传感器实现温度补偿分成两
部分,如图3所示。
其中,P表示输入的压力;y表示未经温度
补偿的传感器输出;Vb表示传感器测量电路的桥路电压;y′表
示经过温度补偿的传感器输出。
BP神经网络隐层由Log-Simoid层和线性层两层组成。
也就是说隐层的函数分别为:
f1(n=1
1+e-n
且f2(n=n(9
传感器未经温度补偿的输出电压y和测量电路中的桥路
电压Vb作为神经网络的两个输入参数,经过该网络后将得到
除去了温度误差的输出结果。
表1所示分别为-40、-20、0、20、40℃下测定的传感
器桥路电压、2MPa时传感器输出,100MPa满量程输出。
鉴于0MPa较难获得,则可以将2MPa作为最小压力。
硅压
阻式传感器在一定温度下具有很好的线性度,因此各温度下
根据两个压力点的输出很容易推算出20、40、60、80MPa
输入压力时的电压输出值。
选取常温20℃时的传感器输出作为目标值。
这样就可以图1硅压阻式传感器测量电路
Fig.1Siliconpiezoresistivesensormeteringcircuit
《电子设计工程》2011年第9期
表2
温度补偿后输出yi′
Tab.2Thesensoroutputsyiaftercompensation
形成30个样本点,可以用式(10表示。
{Xi,yi′}i=1,2,(30
(10
其中Xi为输入样本,可以表示为(yi,Vbi,yi为-40、-20、0、
20、40℃温度下测得的未进行温度补偿的传感器输出;Vbi为yi
相应的电桥桥路电压值;yi′为目标值,即与yi相同压力下在
20℃所测得的传感器输出,该压力下的补偿后的目标输出值。
采用L-M算法用MatLab对样本进行训练。
得到值、阈值,训练过程如图4
所示。
分别测量-40~60℃,2~100MPa传感器输出和相应温度下的最小压力下的Vb值,将传感器输出经过BP神经网络进行温度补偿后得到的结果如表2所示。
2结论
硅压阻式传感器经过BP神经网络补偿后,温度误差得到
了大大的降低,在-40~60℃范围内,温度误差由原来的5.4%
降到了0.2%,并且这个方法对其他类型的传感器的温度补偿同样适用,也可以应用于一些传感器输出的非线性校正。
参考文献:
[1]杜永苹,何小映.浅谈传感器的温度补偿技术[J].电子设计工程,2009,17(6:
63-64.
DUYong-ping,HEXiao-ying.Briefdiscussionontempera-turecompensationtechnologyofsensor[J].ElectronicDesignEngineering,2009,17(6:
63-64.
[2]张雪君.电容式压力传感器温度补偿的RBF神经网络[J].
传感器技术,2001,20(5:
9-11.
ZHANGXue-jun.TemperaturecompensationofacapacitivepressuretransducerbasedonRBFneuralnetwork[J].JournalofTransducerTechnology,2001,20(5:
9-11.
[3]邓越,颜国正,左建勇.漏磁法管道壁厚检测装置[J].工业仪
表与自动化装置,2005(2:
59-61.
DENGYue,YANGuo-zheng,ZUOJian-yong.Researchonapipelinethincknessmeasurementsystembasedonamag-neticfluxleakageprinciple[J].IndustrialInstrumentation&Automation,2005(2:
59-61.
[4]MoodyJ,DarkenCJ.Fastlearninginnetworksoflocally-tunedprocessingunits[J].NeuralComputation,1989(1:
281-294.[5]HammonsSW,ValJ,Ashby.MechanicallyditheredRLGattheguantumlimit[J].IEEE,1982:
388-392.
[6]金涛,阙沛文.基于小波理论的漏磁检测的噪声消除[J].测
试技术报,2003,17(4:
359-362.
JINTao,QUEPei-wen.Noiseeliminationofmagneticfluxleakageinspectingbasedonwavelettheory[J].JournalofTestandMeasurementTechnology,2003,17(4:
359-362.
[7]张鹏飞,龙兴武.二频机抖激光陀螺小范围温度补偿模型
的研究[J].激光杂志,2006,27(2:
44-45.
ZHANGPeng-fei,LONGXing-wu.Researchontemperaturecompensatingmodelofmechanicallydithered.RLG'sbiaswithincertaintemperaturelimits[J].LaserJournal,2006,27(2:
44-45.[8]汪友生,潘孟贤,何辅云.缺陷参数与漏磁信号关系的实验
研究[J].合肥工业大学学报,1998,21(5:
28-31.
WANGYou-sheng,PANMeng-xian,HEFu-yun.Experimentalresearchontherelationbetweendefectparametersandmag-neticleakagesignal[J].JournalofHefeiUniversityofTech-nology,1998,21(5:
28-31.
[9]MoodyJ,DarkenCJ.Learningwithlocalizedreceptivefield.InProceedings
Connectionist
Models
Summer
School,D
Tourelzky.GHinton,midTSejnowSki(Eds.[M].CarnegieMel-lonUniversity.MorganKaufmannPublishers,1988:
133-143.[10]张国华.电容式压力传感器电路的温度补偿[J].电子学报,
1996,24(5:
124-125.
ZHANGGuo-hua.Temperaturecompensationofacapacitivepressuretransducer[J].ChineseJournalofElectronics,1996,24(5:
124-125.
表1
补偿前传感器输出yi
Tab.1
Thesensoroutputsyibeforecompensation温度/℃
Vb
2MPa20MPa40MPa60MPa80MPa100MPa
-401.4210.4921.1881.9882.8123.6634.547-201.4630.4761.1581.9352.7403.5684.43201.5180.4681.1391.9022.6983.5124.359201.5750.4581.1251.8822.6643.4724.305601.7020.445
1.0981.842
2.610
3.406
4.221最大误差
0.8%
1.4%
2.4%
3.3%
4.2%
5.4%
图4
MatLab对网络训练过程
Fig.4
MatLabtonetworktrainingprocess
-154-