您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页基于BP神经网络的装甲车辆起动电动机故障诊断研究

基于BP神经网络的装甲车辆起动电动机故障诊断研究

来源:华佗小知识
12现代制造技术与装备2017第11期 总第252期基于BP神经网络的装甲车辆起动电动机故障诊断研究李光升 李国强 张伟鹏 王鉴渊(陆军装甲兵学院,北京 100072)摘 要:为了有效利用装甲车辆起动电动机的采集数据,在起动过程中对电动机进行实时诊断,提出了一种基于BP神经网络的装甲车辆起动电动机的故障诊断方法。该方法包括训练学习和测试验证两部分。训练学习是利用训练样本数据获得诊断率较高的网络模型,测试验证是用实时测量的数据验证网络模型的有效性和优越性。以起动电动机四种不同的工作状态对应的起动电流和振动信号为例,利用时频分析技术提取特征向量组作为BP神经网络模型的样本数据,对其迭代训练获得最佳的网络结构,对比具有不同BP训练函数的神经网络模型,得出基于Levevberg-Marquardt算法的最优网络模型。测试样本验证的结果表明,该方法能够有效诊断装甲车辆起动电动机的故障,识别率较高。

关键词:装甲车辆起动电动机   BP神经网络   故障诊断

引言

起动电动机的故障类型与故障原因之间呈现非线性关系。以起动机工作状态的信号数据为来源构造特征向量,设计合适的故障识别器,就能明确起动机特征信息和工作状态之间的非线性关系。人工神经网络(Artificial Neural Network)理论是基于数据驱动的故障诊断方法,通过建立数据模型能实现对装甲车辆起动电动机的故障诊断。这一概念最初由心理学家提出,人类在认识复杂信息时,通过人脑神经元传输信息,依据特定的活动规律而做出正确的行为动作。这一过程可以等效为理论化的数据模型,以特征向量作为输入信息,故障类型作为输出信息,利用足够的数据输入神经网络模型学习训练,就能明确输入与输出之间的联系,从而实现故障诊断。1986年,Rumelhart和McCelland带领的研究小组在多层前馈型网络的基础上,提出了误差反向传播(Back-Propagation)算法,即BP神经网络算法。它是目前应用最广泛和成功的网络模型之一。1 BP神经网络理论1.1 BP神经网络的建模

研究表明,神经元是大脑处理信息的基本单元。BP神经网络含有一个输入层、一个输出层、一个或多个隐含层。如图1所示,为包含有单个隐含层的BP神经网络结构图。

BP算法的基本思想包括信号的正向传播和误差的反向传播两个方面。正向传播是指输入信息依次通过输入层、隐含层传到输出层,输出端得到输出信号。如果输出信号与期望信号不相符,则进入误差的反向传播[1];反向传播是指针对超过精度要求的误差信号,从输出端逐层向前传播,依据误差信号不断调整各单元层之间的连接权值。经过反复迭代,不断修正神经元间的权值,直到网络实际输出更接近期望输出,停止学习。1.2 BP算法的具体步骤

BP神经网络的训练过程主要分为以下步骤。

(1)网络初始化。初始化包括权值矩阵和阈值的赋值、神经元作用函数和学习速率的设置以及输入层、隐含层和输出层神经元节点个数的确定等[2]。

(2)将训练样本对输入网络,计算各层输出。用训练的样本Xq、dq分别对输入向量组和期望输出向量组赋值。

(3)计算网络输出误差。(4)调整各层连接权值。

(5)调整阈值。根据网络输出误差调整隐含层阈值a和输出层阈值b。

(6)判断是否训练完所有样本,如果有,则返回步骤(2);否则,判断训练误差是否满足精度要求。若不满足,继续回到步骤(2)对样本重新训练,若满足,则停止训练。1.3 BP神经网络的结构设计和参数选择1.3.1 BP神经网络的结构设计

在BP神经网络中,隐含层层数的确定和节点个数的选择直接关系到网络的非线性拟合能力。Ntcht-Nielsen在1987年证明,当神经元具有不同阈值时,对任何处于封闭区间内的连续函数都能用含有一个隐含层的神经网络来逼近。对于一般性问题,只需一个三层的BP网络就能实现任意的从m维到n维的对应关系[3]。

图1 BP神经网络结构图

外界信息通过输入层与BP神经网络衔接,所以输入层设 计 与 研 究13的节点个数等于外界输入数据的维数。模式识别中,输出层节点数就是信息状态的类别数。学者通过大量的实验研究,总结了以下最佳隐层节点数p确定的经验公式[4]:p=m+n+a (1)其中,m表示输入层的神经元个数,n表示输出层的神经元个数,a为介于1到10之间的整数。1.3.2 BP神经网络的参数选择

(1)激活函数的选择。BP神经网络常采用S型函数作为激活函数使用。该函数具有连续单调递增的特性。激活函数的导数在误差反向传播过程中是求解误差梯度的重要参数。该函数包括对数S型logsig()和正切S型tan sig(),其值域分别是(0,1)、(-1,1)。另外,还有纯线性函数purelin()同样满足上述特性。

(2)学习率的选择。学习率对权值的调整量具有关键作用。权值调整量过小,会延长训练时间;过大,会导致训练误差在一个范围内波动,使网络无法收敛。一般根据经验指定,取值在[0.01,0.8]内。2 实验结果分析2.1 数据来源和实验过程

本实验测量信号来自于一套基于单片机为核心的装甲车辆起动电动机数据采集系统,分别设置起动机轴承外圈、内圈故障和定子绕组匝间短路故障三种类型与正常状态作对比。采集对应工作状态下的起动电流和振动信号,每种状态采集20组信号。对电流信号在频域内求频域参数得到3维特征向量,对振动信号利用时频分析技术得到11维特征向量。综上所述,每种工作状态下都对应14维的特征向量组。在特征向量输入网络模型前,先要对其进行归一化处理,才不会造成神经元产生饱和现象。减小数值大的向量,会掩盖数值小的向量对网络的影响。实验过程如图2所示。

图2 实验过程示意图

2.2 MATLAB仿真(1)确定最佳网络结果。建立BP神经网络模型前,依据公式确定隐含层节点数目范围为:14+4+[1~10]≈ (6~15)个。设置该网络模型为三层网络,隐含层传递函数选为正切S型函数tansig,输出层传递函数选为线性函数purelin。首先采用系统默认Levevbreg-Marquardt

算法对网络进行训练。该算法的优点是能够以最快速度对中等规模的前馈型网络进行训练。由于权值和阈值的随机取值对网络训练的效果产生较大影响,因此采用运行10次取平均的方法减小这种误差。理论表明,训练误差会随着隐含层节点数增加而降低,因此添加隐含层节点数16、17、18作对比,每次在不同隐含层节点数的情况下,运行会得到不同的网络训练结果,取网络输出误差最小的隐含层节点数为最佳网络结构。仿真结果显示,设置隐含层节点数15网络误差最小,只需训练9步,误差就达到0.427。因此,本文的BP神经网络结构确定为14-15-4。图3为基于Levevbreg-Marquardt算法的输出误差曲线。

图3 基于trainlm的网络输出误差曲线

(2)不同BP训练函数对比分析。BP算法存在局限性,因此根据不同的学习规则,MATLAB神经网络工具箱提供了多种训练函数。以下分别调用Fletcher-Powel连接梯度BP算法(traincgf)、一步正切算法(trainoss)两种常用的BP训练函数,则对应的输出误差曲线如图4所示。

(a)traincgf函数的网络输出误差曲线

14现代制造技术与装备2017第11期 总第252期(b)trainoss函数的网络输出误差曲线图4 不同训练函数下的BP神经网络输出误差曲线

由图4可知,traincgf和trainoss函数的误差能收敛到设置的训练目标0.00001。与图3相比,两种函数下的训练步数和网络输出误差均大于系统默认的trainlm函数,因此采用系统默认的基于Levevberg-Marquardt算法的trainlm函数得到的训练效果最佳。2.3 测试样本验证结果

利用训练好的BP神经网络的电动机故障诊断模型,对电动机四种工作状况下的后10组测试样本进行预测与分类,表1为正常状态下的诊断结果。从表1可以看出,测试样本的预测值与期望值之间的差值都在0.01以内,诊断正确率都达到了100%,且其他状态正确率也满足要求。

表1 电动机正常工作时的诊断结果

样本期望输出BP神经网络实际输出诊断结果110001.00210.00570.00190.0009正确210001.0007-0.0039

0.0026

0.0027正确310001.0022-0.0086-0.00340.0049正确410001.00160.0036-0.00060.0012正确510000.99950.0008

0.0032

0.0007

正确610000.9981-0.0003-0.0026-0.0019正确710000.9997-0.0015-0.00090.0014正确810000.9996-0.00480.0025

-0.0020

正确910000.99700.0063-0.0002-0.0057正确10

1

0

0

0

0.9981

0.0049

-0.0008-0.0047

正确

3 结语

从诊断结果可看出,特征向量的选取是有效的,能够紧密反映出起动机故障类型的特性。但是,从分类结果看,实际输出与期望输出之间最大差值为0.0086,与设定目标还存在差距。因此,适当增加训练样本容量,增加特征向

量数量,应该能进一步降低误差,提高故障诊断的精度。总体来看,建立的基于BP神经网络的起动机故障诊断模型能够对起动机的故障进行分类,且诊断准确率较高,是一个有效的数据模型。参考文献

[1]吕俊杰.神经网络在定子矢量控制中反馈信号的应用[J].硅

谷,2012,(9):124-125.

[2]罗玉春,都洪基,崔芳芳.基于Matlab的BP神经网络结构

与函数逼近能力的关系分析[J].现代电子技术,2007,(24):88-90.

[3]刘小明.基于BP神经网络的直流电动机故障诊断研究[D].武

汉:武汉科技大学,2010:21-22.

[4]吴春明,秦建,谢德体.一种解决BP网络过拟合的学习算法

[J].西南大学学报:自然科学版,2008,(1):139-142.

Research on Fault Diagnosis of Armored Vehicle Starting Motor Based on BP Neural Network

LI Guangsheng, LI Guoqiang, ZHANG Weipeng, WANG Jianyuan

(Department of Control Engineering,Academy of Armored Forces Engineering,Beijing 100072)

Abstract: In order to collect data the effective use of armored vehicle starting motor, real-time diagnosis of motor in the process of starting, this paper presents a fault diagnosis method of armored vehicle BP neural network based on the starting motor. The method includes the training and testing of two parts, training and learning is to obtain a higher rate of diagnosis network model using the training sample data, test validation is verified the effectiveness and superiority of network model real-time measurement data. The starting current and starting motor vibration signals of four different working conditions corresponding to the case, using time-frequency analysis technique to extract feature vectors as the sample data of the BP neural network model, the iterative training to obtain the optimal network structure, compared with BP neural network model training different training function, the optimal network model based on Levevberg-Marquardt algorithm. Finally, the test results show that this method can effectively diagnose the faults of the starting motor of armored vehicle, and the recognition rate is higher.

Key words:armored vehicle starting motor, BP neural network, fault diagnosis

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

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务