您的当前位置:首页正文

基于BP网络的智能压力传感器系统研究与设计

2020-04-26 来源:易榕旅网
第24卷第10期2011年10月

传感技术学报

CHINESEJOURNALOFSENSORSANDACTUATORS

Vol.24No.10Oct.2011

TheResearchandDesignofIntelligentSensorSystemBasedonBPNetwork*

CUIJingya,LVHuimin*,CHENGSai

(DepartmentofAppliedphysics,Xi’anUniversityofTechnology,Xi’an710048,China)

Abstract:AnintelligenthighprecisionsensorwasdesignedbycombiningSTM32F101C8microprocessorwithμC/

OS-Ⅱoperatingsystem,meanwhile,thecorrespondinghardwarestructureandsoftwaredesignweregiven.ByusingBPneuralnetwork,twotargetparameters,pressureandtemperature,weremadedothedatacombinationtoreducethesensitivityofcross-interference.Theresultsshowthatthesensorcanmeetthereal-timedemandundermultitask,andgettheperformancemoreaccurate,stableandreliable.Keywords:pressuresensor;BPnetwork;μC/OS-Ⅱ;STM32F101C8EEACC:1295;7230

doi:10.3969/j.issn.1004-1699.2011.10.011

基于BP网络的智能压力传感器系统研究与设计

*

程崔静雅,吕惠民,

*

(西安理工大学应用物理系,西安710048)

摘要:将STM32F101C8微处理器与μC/OS-Ⅱ操作系统相结合,设计出了一种高精度智能传感器系统,给出了相应的硬件

结构和软件设计。利用BP神经网络对压力和温度两个目标参量进行数据融合处理,减小了两者相互交叉干扰敏感度。实测结果显示该传感器能满足多任务下的实时性要求,并具有更加精确、稳定、可靠的性能。

关键词:压力传感器;BP神经网络;μC/OS-Ⅱ;STM32F101C8

文献标识码:A文章编号:1004-1699(2011)10-1426-05中图分类号:TP24

压力的测控在现代工业自控环境中广泛应用,

涉及水利水电、铁路交通、智能建筑、航空航天、军工等众多行业。随着通讯技术和计算机技术的发展,智能压力传感器技术的发展相对滞后,呈现出“头

[1]脑(计算机)发达,感觉(传感器)迟钝”的现象。为了提高测量精度,如何抑制压力传感器对温度的

[5,7-8]

,提高压力测量的精度但是忽略了温度测量的

准确,且收敛速度慢。本智能传感器系统针对压力

和温度相互交叉干扰的问题,利用BP神经网络的Levenberg-Marquardt算法提高了网络收敛速率以及温度和压力两个参量的测量精度,同时在μC/OS-Ⅱ操作平台上,将BP网络融合算法嵌入到STM32F101C8微处理器中,实现显示、报警、与PC机通信等功能,使功能更加完善。

交叉敏感性是亟待解决的核心问题

[2]

压力传感器的工作原理已经基本定型,通过发

[3]

现新的特殊敏感材料来提高性能已经很困难。目前,国内外常用的解决方法基本有两种:一种是硬件法,但硬件电路大都存在电路复杂、精度低、成本高等缺点

;另一种是软件法,此类方法是将微处理器与传感器结合起来,利用丰富的软件功能、结合

[4]

1智能压力传感器的硬件设计

硬件电路的系统方框图如图1所示。

一定的算法对参量进行数据融合,主要有回归法、最小二阶乘法、神经网络、小波等,其中神经网络具有层次性、联想记忆和并行处理等优点,应用前景良[5-6]

。近几年,好相关文献中多选用BP神经网络来

项目来源:陕西省教育厅基金项目(09JK636)

收稿日期:2011-06-01修改日期:2011-07-16

图1

硬件电路系统方框图

第10期1.1

测量单元

吕惠民等:基于BP网络的智能压力传感器系统研究与设计崔静雅,

1427

传感器选用的是JCY-101型硅压阻式压力传

感器,其内部电路是由四个压敏电阻组成的全桥差动电路,如图2所示。为了提高恒流特性,本设计采用反馈改进型的恒流源为其供电。测量过程使用“一桥二测”D两端输出电压UP技术,其中,电桥B、

C两端输出电压Ut为温为压力参量的输出信号;A、度参量的输出信号

[9]

A/D在此智能传感器系统中,微处理器启动时,

转换芯片等功能开始自检。如有故障,显示哪一原件出错,以便操作人员及时处理;如正常,则对系统初始化。一切就绪后,采集目标参量,进行数据处理及BP融合,并将输出结果显示出来。同时与PC机通信,将测试结果送入PC机,以得到更详细的处理。

2.1利用BP神经网络进行数据融合

JCY-101型压力传感器为两功能传感器,可以测量压力和温度两个目标参量,但相互存在交叉敏感度。因此本系统采用BP神经网络对输出信息进行数据融合处理,进而提高目标参量的测量精度。

(1)样本库的建立

30,40,50,60,70℃)压力在不同的温度T(20,P(0,1,2,3,4,5)×104Pa下,对CYJ-101压力传感器的静态输入-输出特性进行标定,得到36组二维实验

0~5×104Pa范围内的数据标定表。取20℃~70℃、

图2JCY-101型硅压阻式压力传感器原理图30组数据作为训练样本,其余6组作为测试样本。由于神经网络输入输出数值应为归一化数值,分别用式

(1)和式(2)对样本数据和目标数据进行归一化处

[11]

理,建立神经网络输入输出标准样本库。

Xi-Ximin

珔X=(i=1,2)i

Ximax-Ximin

1.2

主控制器STM32F101C8及其外围电路

STM32F101其内部使用高性能的ARMCortex-M3

32位的RISC内核,工作频率为36Hz,内置高速存储器,具有丰富的增强型外设。其工作电压为2.0V~3.6V,ADC使用一个独立的为了提高转换的精确度,电源供电,过滤和屏蔽来自印刷电路板上的毛刺干扰。

PA.5、PA.6作为3本设计中,将芯片的PA口的PA.4、路信号输入用到其中一路输入压力信号,一路输入温

度信号,一路接地,此接地电路可配合相应的软件来降低温漂和系统误差;实时时钟采用12MHz的时钟晶振和32.768kHz的低速外部晶振源;PA.8(USART1_TX)和PA.9(USART1_RX)外接一片MAX488进行电平转换,进行与PC的串口通信,对采集到的有效的压力和温度信号实现远程和实时监测控制;4个按键开关分别

PA.11、PB.6、PB.7,接到STM32F101C8的PA.10、作为预置压力、调节上、下限,开始工作的输入端;将采集到

的实时数据、来自键盘的设定压力值送入液晶显示器CM12864显示。

(1)(2)

珔Yi=

0.9(Yi-Yimin)

+0.05

Yimax-Yimin

(i=1,2)

珔珔Yi为第i个传感器输入输出归一化值,Xi、式中:Xi、

Ximin、Ximax、Yimin、Yimax分Yi为传感器的输入输出值,

别对应第i个传感器输入输出的最大值和最小值。

(2)BP网络模型的建立

BP神经网络是一种按误差逆传播算法训练的多层前馈网络,针对通常BP网络在使用中存在的收敛速度慢,容易陷于局部极小值等缺点,采用Lev-enberg-Marquardt算法对样本数据进行融合[12]。设输出层的3层网络,输入计一种包括输入层、隐层、

层和输出层的2个节点分别对应于压力信号和温度信号的输入输出,隐层节点数为6,两层间的传递函数分别为双曲正切S型函数tansig和纯线性函数pureline。

Xt)与隐层之间的权值矩阵为输入层X(XP,

W1,Yt)之间的阀值矩阵为b1,隐层和输出层Y(Yp,

阀值矩阵为b2,则输入层与输出层权值矩阵为W2,

之间的关系表达式为:

Y=pureline(W2tansig(W1X+b1)+b2)

(3)BP网络训练

利用函数trainlm对BP网络训练

[13]

2智能压力传感器的软件设计

目前,商用的嵌入式操作系统开发成本昂贵且

大部分不提供源代码,并不适合小型系统的开发。而μC/OS-Ⅱ相对于其它操作系统具有源码公开、移植性强、代码可裁减等特点,比较适合用于仪用仪表的内嵌微控制器。考虑这些特点,选用μC/OS-Ⅱ作为嵌入式实时操作系统,克服了过去单任务顺序机制,增强系统安全与稳定性

[10]

(3)

,得到权值

1428

传感技术学报www.chinatransducers.com

第24卷

利用和阈值的最优值。当训练误差取0.00001时,

MATLAB神经网络工具箱构建BP网络,部分程序如下:

net=newff(minmax(p),[62],{‘tansig’,‘purelin’},‘trainlm’);%创建BP神经网络和定义输出层数训练函数以及参数,隐层神经元数量为6,量为2

net.trainParam.goal=0.00001;%目标精度设置net.trainParam.epochs=2000;%最大迭代次数[net,tr]=train(net,p,t);%训练神经网络y=sim(net,p);%拟合检验

网络的误差曲线如图3所示,由此图可见,该网络算法收敛速度快,只经过了115次迭代便得到目标误差要求。根据欧式范数理论,对原训练样本进行拟合检验,样本逼近误差为0.0203,网络性能完全可以满足控制要求。此外,为了检验构建的神经网络具有广泛性,用测试样本对网络进行评估,通过

得到网络误差为0.0379,这表明与目标值相比较,

神经网络具有广泛的适应能力和学习能力,构建的BP网络能很好的解决传感器信号交叉敏感问题。2.2

μC/OS-Ⅱ的移植

在STM32F101C8上移植μC/OS-Ⅱ系统,移植

OS_CPU_A.ASM和的主要工作集中在OS_CPU.H、

OS_CPU_C.C这3个文件中,主要设计堆栈初始化、

任务上下文切换、中断挂接和数据类型定义几个方面,这些均与STM32F101C8微处理器的ARM内核

[14]

硬件紧密相关。2.3

软件开发流程

W2)和阈值将训练好的BP神经网络权值(W1、

b2)以适当的数组方式存入STM32F101C8处理(b1、

器的Flash存储器中,根据BP网络的融合算法,编写出基于C语言的BP网络融合算法程序,程序在μC/OS-Ⅱ中以任务的方式运行,本系统由如图4中8个任务来实现,优先权(Prio)的设置由各任务的执行顺序以及对系统安全性影响的大小决定。每个任务函数都是一个无限循环程序,并处于

[15]

以下五种状态之一:休眠态、就绪态、运行态、挂起态和被中断态。在无限循环中调用实现某些功能的应用程序函数,然后按设计需求设置挂起方式和挂起时间。系统整体软件流程图如图4所示,系统初始化后便建立各个运行任务,启动多任务调度机

图3网络的误差曲线

制,在各个信号的协调下有序运行。

图4系统整体流程图

3

3.1

测试结果分析

系统输出值评估标准

压力和为了研究BP神经网络数据融合前后,

信号温度灵敏度系数、零点温漂系数和温度信号压

力灵敏度系数对系统进行评估。

(1)传感器压力信号的温度灵敏度系数

αs=

Δym·Y(FS)ΔT

(4)

温度两个目标参量的交叉干扰敏感度,分别用压力

第10期吕惠民等:基于BP网络的智能压力传感器系统研究与设计崔静雅,

1429

式中:ΔT为工作温度变化范围;Y(FS)为传感器压

力信号的满量程输出值;Δym为当温度变化ΔT时,输出值随温度漂移的最大值。当温度在21.5℃~70℃范围变化时,未经过BP网络融合的传感器输出Y(FS)=83.36mV,Δym=83.36-73.28=10.8

-3mV,计算出αs=2.49×10/℃。

融合处理后的传感器压力信与未融合前相比,

号温度灵敏系数、零点温漂系数和温度信号压力灵敏度系数降低明显,均在一个数量级以上。这说明采用BP神经网络信息融合技术消除传感器交叉敏感现象是十分有效的,达到了信息融合的要求。

(2)传感器压力信号的零点温漂系数

·Ufs)(5)α0=ΔU0m/(ΔT

式中:ΔT为工作温度变化范围;Ufs为传感器压力信号满量程输出值;ΔU0m为在工作温度变化ΔT时,传感器压力信号的零点漂移最大值。同理,温度在21.5℃~70℃范围变化时,未经过BP网络融合的传感器ΔU0m=(-7.72)-(-13.84)=输出Ufs=83.36mV,

-36.12mV,则α0=1.51×10/℃。

4结论

本智能传感器系统针对压力和温度相互交叉干

利用BP神经网络技术提高了温度和压扰的问题,

力两个参量的测量精度,并给出了相应的硬件结构

和软件设计。实测结果显示该传感器能满足多任务下的实时性要求,并具有更加精确、稳定、可靠的性能。

(1)采用Levenberg-Marquardt算法构建了BP

神经网络模型,经检验该网络收敛速度快、精度高、

(3)传感器温度信号的压力灵敏度系数

αP=

Δym

·Y(FS)ΔP

(6)

具有较强的适应能力和联想能力。BP网络融合后

的输出值无需查表,节省内存空间。(2)基于μC/OS-Ⅱ操作平台上,将BP网络融合算法嵌入到STM32F101C8微处理器中,并实现了显示、报警、与PC机通信等功能。通过对融合前后压力信号温度灵敏度系数、零点温漂系数和温度信号压力灵敏度系数相对比,该系统能完善地、精确地反映检测对象,提高信息融合的质量,满足现代自动化设备需求。参考文献:

.[1]赵大庆,吴敏生,等.模仿人体的智能传感器设想[J]范锦鹏,

2002,21(8):17-22.传感器技术,

[2]张耀锋,刑晓辉.基于人工神经网络的压力传感器的孙以材,

.电子学报,2008,36(2):358-361.温度补偿[J]

[3]FutaneNP,RoyChowdhuryS,RoyChaudhuriC,etal.Analog

ASICforImprovedTemperatureDriftCompensationofAHighSensitivePorousSiliconPressureSensor[J].AnalogIntegratedCircuitsandSignalProcessing,2011,67(3):383-393.

[4]刘新月,孙以材.压力传感器温度漂移补偿的控制电吕增良,

.传感技术学报,2007,20(3):567-569.路设计[J]

[5]高峰,胡彦奎.基于BP神经网络的传感器交叉敏感性董海鹰,

4

式中:ΔP为工作压力变化范围,取5×10Pa;Y(FS)为传感器温度信号满量程输出值;Δym为当压力变化

ΔP时,输出值随压力漂移的最大值。未经过BP网

Y(FS)=86.12mV,络融合处理时,Δym=86.12-

-24

80.45=5.67mV,则αP=1.32×10/10Pa。

3.2

系统输出结果及评估

经BP神经网络融合、逆归一化处理后,传感器输

出值无需查表,节省了大量内存,压力信号和温度信号

Y(FS)=5×104Pa,输出分别见表1、表2。根据式(4),

4

Δym=5.018-4.945=0.073×10Pa,则融合后传感器压-4

力信号的温度灵敏度系数αs=3.01×10/℃。根据式4

(5),Ufs=5×104Pa,ΔU0m=0.006-0.003=0.003×10Pa,

经过BP网络融合后的压力信号零点温漂系数α0=Y(FS)=70℃,1.24×10-5/℃。由式(6),Δym=70.427-69.322=1.105℃,经过BP网络融合后温度信号的压

-44

力灵敏度系数αP=1.32×10/10Pa。

表1

温度标定值/℃21.5447000.0030.0050.006压力信号测试结果1压力标定值/10Pa2344

54.9454.9525.0182005,24(2):22-26.抑制[J].传感器技术,

[6]DuZM,JinXQ,YangYY.FaultDiagnosisforTemperature,Flow

RateandPressureSensorsinVAVSystemsUsingWaveletNeuralNetwork[J].AppliedEnergy,2009,86(9):1624-1631.

[7]XiaoZ,YeSJ,ZhongB,etal.BPNeuralNetworkwithRoughSet

forShortTermLoadForecasting[J].ExpertSystemswithApplica-tions,2009,36(1):273-279.

1.0041.0111.0151.9731.9761.9842.9762.9902.9933.9783.9824.009表2

压力标定值/10Pa1354

温度信号测试结果28温度标定值/℃3444507021.5[8]邵军,刘君华,乔学光,等.利用BP神经网络提高光纤光栅压力

J].传感技术学报,2007,20(7):1531-1534.传感器的选择性[

.西安:西安电子科技大学出版[9]刘君华.智能传感器系统[M]

2010,221-224.社,

21.50827.93033.85443.83249.85070.42721.46827.85433.64143.77849.77169.75021.45127.78533.49343.64349.70269.3221430

传感技术学报www.chinatransducers.com

第24卷

[10]邱宝梅,王建文.嵌入式机载摄影稳定平台的设计[J].仪器仪

2009,30(9):1981-1984.表学报,

[11]何平,孙以材,等.压力传感器温度漂移补偿的RBF网潘国峰,

.仪器仪表学报,2008,29(3):572-576.络模型[J]

[12]杨英,等.基于LMBP改进算法的神经网络结构唐平,王越超,

J].计算机工程,2008,34(1):215-217.优化[

[13]严洁,赵研,张俊利.基于BP神经网络的称重传感器静态非线

J].传感技术学报,2008,6(21):1025-1028.性误差补偿研究[

[14]王骏,叶瑞源.μC/OS-Ⅱ的优化及在智能变送器中的应用

[J].自动化仪表,2010,31(2):5-7.

[15]吴永明,罗海据.μC/OS-Ⅱ系统中任务调度与监控机制改进

[J].计算机工程,2009,35(12):266-268.

崔静雅(1986-)女,西安理工大学理学院应用物理系硕士研究生,研究方向为智能传感器系统设计,

cjyhjw@yahoo.cn;程赛(1987-)男,西安理工大学理学

院应用物理系硕士研究生,研究方向为智能传感器系统设计,chengsai151141@163.com。

吕惠民(1962-)男,西安理工大学理学院应用物理系教授,硕士研究生导师,研究方向主要为传感器系统设计和Ⅲ-Ⅴ半导体纳米材料性能研究,lvhuimin618@yahoo.com.cn;

因篇幅问题不能全部显示,请点此查看更多更全内容