基于BP和RBF人工神经网络的齿轮箱故障诊断

更新时间:2023-10-31 10:27:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

密 封 线

基于BP和RBF人工神经网络的齿轮箱故障诊断

摘要 本文分别阐述了BP( back propagation) 神经网络和径向基函数( radial base function, RBF) 神经网络的基本原理和算法, 将两者分别应用于齿轮箱故障诊断与识别,建立齿轮箱的BRF 故障诊断模型,并将结果进行比较和分析.结果表明, RBF 神经网络性能优于BP 神经网络, 具有较快的训练速度、较强的非线性映射能力和精度较高的故障识别能力, 非常适用于齿轮箱的状态监测和故障诊断.但在具体应用中应当注意, RBF 网络的训练样本必须含有一定的噪声,以提高网络的容噪性能; 各类故障的训练样本数不能太少, 否则RBF 网络的故障分类能力很差.

关键字 BP神经网络 RBF神经网络 故障诊断 齿轮箱

1引言

拖拉机变速箱是整机进行减速增扭的部件,它受扭转和拉压两种载荷的综合作用,受力过程非常复杂。因此,拖拉机的很多故障出现于变速箱中齿轮及传动轴等机械系统中。据统计,以齿轮为代表的变速箱故障发生率占据除发动机故障以外的其他所有故障的59%-70%。齿轮箱广泛应用于国民经济的各行各业, 是各工矿企业安全生产的关键重要动力传递设备, 对其进行状态监测与故障诊断有极为重要的意义。传统的齿轮箱故障诊断一般采用振动频谱分析, 且由人工实现故障分析, 其诊断水平受技术人员专业知识和经验等多方面的制约, 难免出现误诊、漏诊等。但是,由于齿轮箱是一种非常复杂的传动机构,它的故障模式和特征向量之间是一种非常复杂的非线性关系,再加上齿轮箱在不同工况下的随机因素,所以专家的经验并不能解决所有的诊断问题。而应用神经网络可以有效地避免这个问题。神经网络的自适应、自学习和对非线性系统超强的分析能力,注定它可以在齿轮箱的故障诊断中大显身手。

故障诊断研究的目的在于寻求故障的检测、识别、定位及故障效应的评估。故障诊断技术的应用领域越来越广泛,已经从传统的机械系统和电子系统,渗透到机电一体化系统、工业自动化系统、计算机系统等。随着物理学、数学等基础学科的不断进步,以及控制理论、信息科学等应用科学的不断发展,为故障诊断提供了多种技术手段,成为故障诊断技术发展的推动力量。因此,系统故障诊断技术越来越呈现出更广泛、更深入和更有效的发展态势。

神经网络技术的出现,为故障诊断问题提供了一种新的解决途径,特别是对于在实际中难以建立数学模型的复杂系统,神经网络更显示出其独特的作用。神经网络之所以可以成功地应用于故障诊断领域,主要基于以下原因:

(1)训练过的神经网络能存储有关过程的知识,能直接从历史故障信息中学习。可以根据对象的日常历史数据训练网络,然后将此信息与当前测量数据进行比较,以确

第 1 页 共 11 页

密 封 线

定故障的类型。

(2)神经网络具有滤除噪声及在有噪声及在有噪声情况下提出正确结论的能力,可以训练人工神经网络来识别故障信息,使其在噪声环境中有效地工作,这种滤除噪声的能力使得人工神经网络适合在线故障检测盒诊断。

(3)神经网络具有分辨故障原因及故障类型的能力。

图-1基于神经网络模式识别功能的诊断系统结构

诊断原 始数据 诊断结果 预处理 特征选择/提取 诊断神经网络 训练样 本数据 预处理 特征选择/提取 学习训练

2BP神经网络

BP网络是一种多层前馈神经网络, 包括输入层,隐层(中间层)和输出层, 其中隐层可以是一层也可以是多层, 一般而言, 三层BP神经网络就可以解决大部分比较简单的问题。BP网络前后层之间实现全连接,每层神经元之间无连接。

图-2 BP神经网络结构图

第 2 页 共 11 页

密 封 线

x1 V W o1 x2 o2 … xn … … … om 输入层 隐藏层 输出层

图2 所示为一个三层BP网络,其中隐层(中间层)为一层,隐层的神经元个数为p 个, 输入层, 输出层的神经元个数分别为n、m个。学习样本给了BP网络后, 各神经元响应输入, 信号从输入层, 经隐层(中间层) , 向输出层传播, 根据减少预期输出与实际输出差距这一原则, 从输出层, 经过各中间层, 最后回到输入层, 逐层修正各个连接权值, 这种算法被称为“误差逆传播算法”,,简称BP算法, 随着误差逆传播的不断进行, 网络响应输入的正确率也不断上升。

(1) 将各权值、阈值置为小的随机数。

kk(2)从训练数据中挑选一组数据(X、T),将输入数据X 加到BP神经网络的输入层, T

为预期输出数据, 上标k为训练数据号。

?1ym)计算从第一层直至输出层各节点j的输出, 其中上标m为BP网jim

络的层标号, F 为神经元的激励函数,yim?1为BP网络m?1层的节点的输出, Wij为m?1层的i节点到m层的j节点的连接权值, M?M,M?1,,1。

m'MkM(4)计算输出层每个节点的误差值?j?F(Sj)(Tj?yj)中k表示训练的数据号, 表示此训练号的输出层第j节点的预期输出, y表示输出层(M层)第j节点的实际输出。

(3)由yj?F(m?Wmij(5)计算m一层每个节点的误差值?jM?1

?1?jM?1?F'(SM)?Wijm?iM ji(6)依次计算前面各层每个节点的误差值?jm?1

第 3 页 共 11 页

密 封 线

?1?jm?1?F'(Sm)?Wijm?im ji(7)利用权值修正公式, 修正所有神经元的联接权值。

?1m, Wim ijWijm???jmymWmjj?Wi?j?称为学习速率, 取值范围0~ 1。

(8)利用阈值修正公式, 修正所有神经元的阈值。

?jm??jm???jm

(9)返回(2)输入下一组数据前重复( 2) -( 8)的过程。由此可见, BP算法的主要思路是从后向前逐层传播输出层的误差, 并用此误差修正前层权值。

对于BP神经网络, 有一个重要定理, 对于任何闭区间内的连续函数, 都可以用一个三层的BP 网络逼近, 本文要研究的问题就是BP网络的隐层神经元个数, 神经元不同的传递函数及BP网络不同的训练函数对网络的性能影响。

3 RBF神经网络

径向基函数网络( RBF Network, RBFN) 包含三层,即输入层、径向基函数隐含层和输出层, 其网络拓扑结构如图-3所示。在RBF 网络中, 输入层对输入数据不作任何变换; 隐层神经单元通过核函数( 基函数) 对输入样本进行一种空间非线性映射变换, 将其映射到一个新的空间; 输出层神经单元对新空间的映射值进行线性加权组合后输出。RBF 网络中最常用的基函数是高斯函数, 即对任意的输入向量X?R (R为N 维输入样本空间) , 它定义为

NNRj(X)?exp(?X?Cj2/2?2j),j?1,2,,M (1)

式(1)中, Rj(X) 为第j个隐层单元的输出; X 为N 维输入样本向量; Cj 为隐层第j个单元高斯函数的中心向量,由隐层第j个神经单元对应于输入层所有神经单元的中心分量构成,即Cj?[Cj1,Cj2,,CjN]T为隐层第j个单元的归一化参数( 可根据实际情况自由选择) ,决定

该基函数围绕中心点的宽度; M 为隐层单元数。输出层神经单元的输出可表示为

yk??wj?0MkjR(jX)?k1,2, ,K (2)

式(2)中,yk为输出层第k个神经单元的输出值,wkj为隐层第j个神经元与输出层第k个神经元间的连接权值。RBF 网络的训练过程一般分两步, 第一步是根据网络的输入样本分布决定隐层单元数和基函数的中心分量Cj及宽度?j;第二步是根据已确定的网络参数,利用最小二乘原则求得连接权值wkj。所以在RBF 网络中最关键的是确定隐层各神经元的中心向量、宽度和连接权值。

第 4 页 共 11 页

密 封 线

图-3 RBF的网络拓扑结构

x1 Wkj o1 x2 o2 … xn … … … Ok 输入层N 隐藏层M 输出层K

4 齿轮箱人工神经网络的设计与训练

(1)输入和目标向量设计

齿轮箱故障中有60%左右都是由齿轮导致的,所以这里只研究齿轮故障的诊断。对于齿轮的故障,这里选取了频率中的几个特征向量。频域中齿轮故障比较明显的是在啮合频率处的边缘带

fs?nfz处的i?2,4,6示幅值Ai,j1、Ai,j2和Ai,j3,其中fs表示齿轮的啮合频率,fz是轴的频率,n?1,2,3,表

档位,j?1,2,3表示轴的序号,由于在2轴和3轴上有两对齿轮啮合,所以用1、2分别表示连

上。所以,在频域特征信号的提取中选取了再2、4、6挡时,在1、2、3轴的边频带簇

个啮合频率。这样一来,网络的输入就是一个15维的向量。这些数据具有不同的单位和量级,所以在输入神经网络之前应该首先进行归一化处理。表-1给出了输入向量的9组数据,它们都是归一化后的样本数据。

表-1齿轮箱样本数据 数据序号 1 特征样本 0.2286 0.1292 0.0720 0.1592 0.1335 0.0733 0.1159 0.0940 0.0522 0.1345 0.0090 0.1260 0.3619 0.0690 齿轮状态 无故障 第 5 页 共 11 页

密 封 线 0.01828 2 0.02090 0.0947 0.1393 0.1387 0.2558 0.0900 0.0771 0.0882 0.1393 0.1430 0.0126 0.1670 0.2450 0.0508 0.1328 无故障 3 0.0442 0.0880 0.1147 0.0563 0.3347 0.1150 0.1453 0.0429 0.1818 0.0378 0.0092 0.2251 0.1516 0.0858 0.0670 无故障 4 0.2603 0.1715 0.0702 0.2711 0.1491 0.1330 0.0968 0.1911 0.2545 0.0871 0.0060 0.1793 0.1002 0.0789 0.0909; 齿根裂纹 5 0.3690 0.2222 0.0562 0.5157 0.1872 0.1614 0.1425 0.1506 0.1310 0.0500 0.0078 0.1348 0.0451 0.0707 0.0880 齿根裂纹 6 0.0359 0.1149 0.1230 0.5460 0.1977 0.1248 0.0624 0.0832 0.1640 0.1002 0.0059 0.1503 0.1837 0.1295 0.0700; 齿根裂纹 7 0.1759 0.2347 0.1829 0.1811 0.2922 0.0655 0.0774 0.2273 0.2056 0.0925 0.0078 0.1852 0.3501 0.1680 0.2668 断齿 8 0.0724 0.1909 0.1340 0.2409 0.2842 0.0450 0.0824 0.1046 0.1909 0.1586 0.0116 0.1698 0.3644 0.2718 0.2494 断齿 9 0.2634 0.2258 0.1165 0.1154 0.1074 0.0657 0.0610 0.2623 0.2588 0.1155 0.0050 0.0978 0.1511 0.2273 0.3220 断齿 接下来确定网络的输出模式,由于齿轮包括3种故障模式,因此可以采用如下的形式来表示

第 6 页 共 11 页

密 封 线

输出:

无故障:(1,0,0); 齿根裂痕:(0,1,0);

断齿:(0,0,1);

(2)基于BP神经网络进行故障诊断

神经网络工具箱用于创建BP网络的函数式newff,在设计过程中比较重要的参数有网络训练次数epochs ,网络误差度goal ,学习速率lr ,动量因子mc,这里取epochs = 1000,goal = 0.0001,lr=0.5,mc=0.05.其中P和T分别对应输入向量和目标向量,它们可以从表-1中得到。 P=[0.2286 0.1292 0.0720 0.1592 0.1335 0.0733 0.1159 0.0940 0.0522 0.1345 0.0090 0.1260 0.3619 0.0690 0.01828;

0.02090 0.0947 0.1393 0.1387 0.2558 0.0900 0.0771 0.0882 0.1393 0.1430 0.0126 0.1670 0.2450 0.0508 0.1328;

0.0442 0.0880 0.1147 0.0563 0.3347 0.1150 0.1453 0.0429 0.1818 0.0378 0.0092 0.2251 0.1516 0.0858 0.0670;

0.2603 0.1715 0.0702 0.2711 0.1491 0.1330 0.0968 0.1911 0.2545 0.0871 0.0060 0.1793 0.1002 0.0789 0.0909;

0.3690 0.2222 0.0562 0.5157 0.1872 0.1614 0.1425 0.1506 0.1310 0.0500 0.0078 0.1348 0.0451 0.0707 0.0880;

0.0359 0.1149 0.1230 0.5460 0.1977 0.1248 0.0624 0.0832 0.1640 0.1002 0.0059 0.1503 0.1837 0.1295 0.0700;

0.1759 0.2347 0.1829 0.1811 0.2922 0.0655 0.0774 0.2273 0.2056 0.0925 0.0078 0.1852 0.3501 0.1680 0.2668;

0.0724 0.1909 0.1340 0.2409 0.2842 0.0450 0.0824 0.1046 0.1909 0.1586 0.0116 0.1698 0.3644 0.2718 0.2494;

0.2634 0.2258 0.1165 0.1154 0.1074 0.0657 0.0610 0.2623 0.2588 0.1155 0.0050 0.0978 0.1511 0.2273 0.3220]';

T=[1 0 0;1 0 0;1 0 0;0 1 0;0 1 0;0 1 0;0 0 1;0 0 1;0 0 1]';

网络训练与测试

分别在无故障、齿根裂痕和断齿时进行测量,得到各参数的值,将这些数据作为输入向量,利用仿真函数计算网络输出,通过故障判别准则看是否出了故障。测试数据如表-2所示。

表-2测试数据 数据序号 10 输入向量 目标向量 0.2101 0.0950 0.1298 0.1359 0.2601 0.1001 0.0753 1,0,0 第 7 页 共 11 页

密 封 线 0.0890 0.0389 0.1451 0.0128 0.1590 0.2451 0.0512 0.1319 11 0.2593 0.1800 0.0711 0.2801 0.1501 0.1298 0.1001 0,1,0 0.1891 0.2531 0.0875 0.0058 0.1803 0.0992 0.0802 0.1002 12 0.2599 0.2235 0.1201 0.1171 0.1102 0.0683 0.0621 0,0,1 0.2597 0.2602 0.1167 0.0048 0.1002 0.1521 0.2281 0.3205 测试代码见附注[1] 测试结果如表-3

表-3 BP神经网络测试结果 输出结果 0.9982,-0.0033,0.0078 -0.0018 ,0.9972,-0.0046 -0.0060,-0.0007,1.0201

图-4 BP神经网络性能仿真结果图

故障类别 无故障 齿根裂纹 断齿

(3)基于RBF神经网络进行故障诊断

神经网络工具箱用于创建BP网络的函数式newrbe,在设计过程中比较重要的参数是径向基函数的分布常数。由于本设计中的样本数目不是很大,将分布常数设定为1.2。

第 8 页 共 11 页

密 封 线

测试数据如表-2所示 测试代码见附注[2] 测试结果如表-4

表-4 RBF神经网络测试结果 输出结果 0.9575, 0.0663,-0.0238 -0.0378, 1.0193, 0.0185 -0.0110, 0.0184, 0.9926 故障类别 无故障 齿根裂痕 断齿 分析结果发现,网络成功地诊断出了所有的故障。因此,因此可以将网络投入实际工程应用中。

5 总结

人工神经网络因其广泛的适应能力和学习能力,在机械故障诊断中得到广泛的运用, 本文研究RBF 神经网络在齿轮箱故障诊断中的应用, 并与BP 网络和学习率自适应BP 网络进行对比分析, 结果表明RBF神经网络在故障诊断方面要优越于BP 网络, 具有最佳逼近、全局最优、收敛速度快、训练时间短、精度高、隐层单元数少等特点。但在具体应用中应当注意:RBF 网络的训练样本必须含有一定的噪声, 以提高网络的容噪性能;各类故障的训练样本数不能太少, 否则RBF 网络的故障分类能力很差, 达不到理想的效果。

附 注

[1] BP神经网络训练代码

P=[0.2286 0.1292 0.0720 0.1592 0.1335 0.0733 0.1159 0.0940 0.0522 0.1345 0.0090 0.1260 0.3619 0.0690 0.01828;

0.02090 0.0947 0.1393 0.1387 0.2558 0.0900 0.0771 0.0882 0.1393 0.1430 0.0126 0.1670 0.2450 0.0508 0.1328;

0.0442 0.0880 0.1147 0.0563 0.3347 0.1150 0.1453 0.0429 0.1818 0.0378 0.0092 0.2251 0.1516 0.0858 0.0670;

0.2603 0.1715 0.0702 0.2711 0.1491 0.1330 0.0968 0.1911 0.2545 0.0871 0.0060 0.1793 0.1002 0.0789 0.0909;

0.3690 0.2222 0.0562 0.5157 0.1872 0.1614 0.1425 0.1506 0.1310 0.0500 0.0078 0.1348 0.0451 0.0707 0.0880;

0.0359 0.1149 0.1230 0.5460 0.1977 0.1248 0.0624 0.0832 0.1640 0.1002 0.0059 0.1503 0.1837 0.1295 0.0700;

0.1759 0.2347 0.1829 0.1811 0.2922 0.0655 0.0774 0.2273 0.2056 0.0925 0.0078

第 9 页 共 11 页

密 封 线

0.1852 0.3501 0.1680 0.2668;

0.0724 0.1909 0.1340 0.2409 0.2842 0.0450 0.0824 0.1046 0.1909 0.1586 0.0116 0.1698 0.3644 0.2718 0.2494;

0.2634 0.2258 0.1165 0.1154 0.1074 0.0657 0.0610 0.2623 0.2588 0.1155 0.0050 0.0978 0.1511 0.2273 0.3220]';

T=[1 0 0;1 0 0;1 0 0;0 1 0;0 1 0;0 1 0;0 0 1;0 0 1;0 0 1]';

X=[0.2101 0.0950 0.1298 0.1359 0.2601 0.1001 0.0753 0.0890 0.0389 0.1451 0.0128 0.1590 0.2451 0.0512 0.1319;

0.2593 0.1800 0.0711 0.2801 0.1501 0.1298 0.1001 0.1891 0.2531 0.0875 0.0058 0.1803 0.0992 0.0802 0.1002;

0.2599 0.2235 0.1201 0.1171 0.1102 0.0683 0.0621 0.2597 0.2602 0.1167 0.0048 0.1002 0.1521 0.2281 0.3205]'; Y=[1 0 0;0 1 0;0 0 1];

net = newff(minmax(P),[6,3],{ 'tansig','purelin'},'trainlm' ) ; %创建 BP 网络 y1 = sim(net,P) %训练前网络的仿真结果

net.trainParam.epochs = 1000; % 设置网络最训练次数 net.trainParam.goal = 0.0001; %设置网络误差度 net.trainParam.lr=0.5 ; %学习速率为0.05

net.trainParam.mc=0.05; %动量因子,决定影响比例 [net,tr]=train(net,X,Y);

y2 = sim( net,X) %训练后网络的仿真结果 sim(net,X)

[2] RBF神经网络训练matlab代码 P,T见附注[1]; spread=1.2;

net=newrbe(P,T ,spread)

p1=[0.2101 0.0950 0.1298 0.1359 0.2601 0.1001 0.0753 0.0890 0.0389 0.1451 0.0128 0.1590 0.2451 0.0512 0.1319]';

p2=[0.2593 0.1800 0.0711 0.2801 0.1501 0.1298 0.1001 0.1891 0.2531 0.0875 0.0058 0.1803 0.0992 0.0802 0.1002]';

p3=[0.2599 0.2235 0.1201 0.1171 0.1102 0.0683 0.0621 0.2597 0.2602 0.1167 0.0048 0.1002 0.1521 0.2281 0.3205]'; y1=sim(net,p1) y2=sim(net,p2) y3=sim(net,p3)

第 10 页 共 11 页

密 封 线

sim(net,P)

参考文献

[1] 丁康,朱小勇.齿轮箱典型故障振动特征与诊断策略[ J ].振动与冲击,2001,20 (3): 7-12. [2] 荆双喜,冷军发,李臻. 基于小波- 神经网络的矿用通风机故障诊断研究[ J] .煤炭学报,2004, 29( 6):736-739.

[3] 李志农,丁启全,吴昭同等.双相干谱和RBF 网络在旋转机械故障诊断中的应用[ J] .机械强度, 2003, 25( 4):360-363.

[4] 师黎,陈铁军,李晓媛,姚利娜(2008).智能控制实验设计与综合设计指导.清华大学出版社. [5] Cai Zixing.Intelligent Control,1st edn, Addision Wesley Longman,California:1997.

第 11 页 共 11 页

本文来源:https://www.bwwdw.com/article/rzd2.html

Top