基于稀疏编码器和支持向量机的滚动轴承故障诊断方法与流程

文档序号:11859365阅读:504来源:国知局
基于稀疏编码器和支持向量机的滚动轴承故障诊断方法与流程

本发明涉及滚动轴承参数诊断领域,尤其是一种基于稀疏编码器和支持向量机的滚动轴承故障诊断方法。



背景技术:

滚动轴承是应用最广泛机械零件之一,同时也是机械设备中最容易损坏的元件之一,它的运行状态直接影响整台设备的功能。据不完全统计,在使用滚动轴承的旋转机械中,大约有30%的机械故障都是由轴承引起的。产生轴承故障的原因有疲劳剥落,磨损,塑性变形,锈蚀,断裂,胶合,保持架损坏等。如果不及时诊断轴承早期故障,将使机器设备产生严重故障,从而造成巨大的经济损失。因此,诊断出轴承的早期故障特征对避免严重故障的发生,保证机械设备的正常运行有着重大的现实意义。

对于滚动轴承的故障诊断来说,良好的特征表达对故障模式识别的准确性起关键作用。特征的适当选择和提取常常包含着各种各样的经典的和现代的信号处理方法和技术,目前常用的机械故障特征提取方法主要有快速傅里叶变换、时频分析、高阶统计量理论和分形理论。但是,这些提取特征的方法都是靠人工提取的,并且在故障模式识别的计算和测试中会消耗大量的时间。此外,手工选取特征不仅费时费力,而且在研究不同对象时需要提取的特征也不尽相同。由于特征具有多样性,这样就很难找到统一的、适用于不同对象的模型。



技术实现要素:

本发明目的在于提供一种特征数据分类简单、诊断准确性高的基于稀疏编码器和支持向量机的滚动轴承故障诊断方法。

为实现上述目的,本发明所述诊断方法包括以下步骤:

步骤1,以滚动轴承的原始振动数据作为输入样本,采用小波去噪,去除干扰噪声然后对滚动轴承的原始振动数据进行快速傅里叶变换得到新的轴承振动频谱信号X;

步骤2,通过线性归一化方法,对轴承振动频谱信号X进行归一化处理后得到轴承振动频谱信号X1;

步骤3,将轴承振动频谱信号X1输入SSAE模型,对滚动轴承特征进行深度学习;

其中,SSAE模型是多个稀疏编码器(Sparse Auto Encoder,SAE)叠加,第一级稀疏编码器的输出作为第二级稀疏编码器的输入,第二级稀疏编码器的输出作为第三级稀疏编码器的输入,以此类推;通过对数据的逐层学习完成DNN网络预训练,然后通过带标签的样本使用BP算法以误差最小化为原则自上向下传输完成DNN网络的微调;

步骤4,将步骤3中提取到的两层特征综合到一起构成支持向量机的输入,以粒子群算法对支持向量机的参数进行优化,通过训练样本对支持向量机进行训练,然后使用训练好的支持向量机对测试样本进行测试,完成对滚动轴承的故障诊断。

进一步的,在步骤1中,先对含有噪声信号进行小波分解,把信号分解到 各尺度中,然后分别在各个尺度下把噪声去掉,留下有用信号,最后对其进行小波逆变换恢复信号。

进一步的,在步骤2中,采用线性归一化方法,提高深度学习分类准确率同时缩减分类计算时间。

线性归一化计算式为:

式中,i=1,2,3,...,n.;n为轴承振动频谱信号的采样点数;xi为轴承振动频谱信号;为轴承振动频谱信号线性归一化后得到的信号;xmax为轴承振动频谱信号中幅值最大的信号;xmin为轴承振动频谱信号中幅值最小的信号。

与现有技术相比,本发明具有如下优点:本发明方法具有优异的特征学习能力,得到的特征对数据有更本质的刻画,有利于可视化或者分类;通过构建多隐层的模型和海量训练数据来自动学习更有用的特征,从而最终提升分类或预测的准确性。

附图说明

图1是本发明方法的流程图。

图2是本发明方法中自动编码器和去噪自动编码器的原理图。

图3是本发明方法中深度学习的预训练和微调过程图。

图4是本发明方法中PSO算法对SVM参数的优化流程图。

图5是本发明方法中支持向量机对小样本测试的适应度曲线图。

具体实施方式

下面结合附图对本发明方法做进一步说明:

如图1所示,本发明所述诊断方法包括以下步骤:

步骤1,以滚动轴承的原始振动数据作为输入样本,先对含有噪声信号进行小波分解,把信号分解到各尺度中,然后分别在各个尺度下把噪声去掉,留下有用信号,最后对其进行小波逆变换恢复信号,得到新的轴承振动频谱信号X;

步骤2,采用线性归一化方法,提高深度学习分类准确率同时缩减分类计算时间,对轴承振动频谱信号X进行归一化处理后得到轴承振动频谱信号X1;

线性归一化计算式为:

式中,i=1,2,3,...,n.;n为轴承振动频谱信号的采样点数;xi为轴承振动频谱信号;为轴承振动频谱信号线性归一化后得到的信号;xmax为轴承振动频谱信号中幅值最大的信号;xmin为轴承振动频谱信号中幅值最小的信号。

步骤3,将轴承振动频谱信号X1输入SSAE模型,对滚动轴承特征进行深度学习;具体方法如下:

1、对自动编码器(Auto Encoder,AE)、稀疏自动编码器(Sparse Auto Encode)、去噪自动编码器(Denoising Auto Encode,DAE)的说明。

自动编码器是三层的非监督神经网络,分为编码网络与解码网络两个部分,结构如图2所示。AE的输入数据和输出目标相同,通过编码网络将高维空间的输入数据转换为低维空间的编码矢量,通过解码网络将低维空间的编码矢量重构回原来的输入数据。由于在输出层可对输入信号进行重构,使得编码矢量成为输入数据的一种特征表示。自动编码器是一种尽可能复现输入信号的神经网络。为了实现这种复现,自动编码器就必须捕捉可以代表输入数据的最重要 因素,就想PCA那样,找到可以代表原信息的主要成分。为了尽可能提取主要信息,能够还原输入信号而不损失信息,我们在自动编码器的基础上加入限定条件,要求节点大部分是0,而只有少数的节点是非零的(主要特征),这样就构成了稀疏自动编码器。而SSAE模型是多个稀疏编码器叠加。DAE,结构如图2所示,编码网络将含有一定统计特性的噪声加入样本数据,然后对样本进行编码,解码网络再根据噪声统计特性从未受到干扰的数据中估计出受干扰样本的原始形式,从而使DAE从含噪样本中学习到更具鲁棒性的特征,降低DAE对微小随机扰动的敏感性。DAE的原理类似于人体的感官系统,比如人眼看物体时,如果某一小部分被遮住了,人依然可以辨识出该物体。同理,DAE通过添加噪声进行编码重构,可有效减小机械工况变化与环境噪声等随机因素对提取的健康状况信息的影响,提高特征表达的鲁棒性。本方法中采用的SSAE模型即为层叠的稀疏去噪自动编码器。

第二步:对基于SSAE模型深度学习的预训练过程和微调过程的说明。

a、预训练

使用自下而上的非监督学习。先用训练样本数据训练第一层,得到第一层的连接权值和偏置参数。由稀疏自动编码器原理可知,SAE模型能够学习到数据本身的结构,从而得到比输入更具有表示能力的特征。在学习得到第1层后,将1层的输出作为第2层的输入,训练第2层,由此得到第二层的连接权值和偏置参数,以此类推,通过对数据的逐层学习得到最终的重构特征。具体的如图3所示,给定一个无标签的训练样本集编码网络通过编码函数fθ,将每 一个训练样本xm变换为编码矢量hm

hm=fθ(xm)=sf(wxm+b)

式中,sf为编码网络的激活函数;θ为编码网络的参数集合,且θ={w,b};w和b分别为编码网络的连接权值和偏置参数。

解码网络通过解码函数gθ′将编码矢量hm反向变换为xm的一种重构表示

式中,sg为解码网络的激活函数;θ′为解码网络的参数集合,且θ′={w′,d};w′和d分别为解码网络的连接权值和偏置参数。

AE通过最小化xm与的重构误差完成整个网络的训练。

b、微调

即自上而下的监督学习。通过带标签的样本去训练,误差自上向下传输,对深度学习网络进行微调,这个过程是有监督的训练过程。具体的如图3所示,本方法使用BP算法微调DNN参数。

DNN的输出表示为

式中,θN+1为输出层的参数。

设xm的健康状况类型为dm,DNN则通过最小化φDNN(Θ)完成微调。

式中,Θ为DNN的参数集,且Θ={θ12,L,θN+1}。

步骤4,将步骤3中提取到的两层特征综合到一起构成支持向量机的输入,以粒子群算法对支持向量机的参数进行优化,通过训练样本对支持向量机进行 训练,然后使用训练好的支持向量机对测试样本进行测试,完成对滚动轴承的故障诊断。

具体方法如下:

1、对粒子群算法的说明

粒子群优化算法(Particle Swarm Optimization,PSO)最早是由J.Kennedy和R.C.Eberhart,基于群体智能原理于1995年提出的一种进化计算技术。其数学表达为:假设在一个D维寻优空间中,有m个粒子组成的群体,其中第i个粒子的速度可以表示为:vi=(vi1,vi2,...viD),其位置为:xi=(xi1,xi2,...,xiD),那么第i粒子当前搜寻到的最优位置为pi=(pi1,pi2,...,piD),整个种群搜寻到的最优位置为pg=(pi1,pi2,...,piD),粒子群更新公式如下:

vid(t+1)=ωvid(t)+c1r1(pid-xid(t))+c2r2(pgd-xid(t))

xid(t+1)=xid(t)+vid(t+1)

如果vid>vmax时,取vid=vmax

如果vid<-vmax时,取vid=-vmax

其中:i=1,2,...,m;d=1,2,...,D;t是当前迭代次数;c1,c2是加速常数;r1,r2是介于[0,1]的随机数;ω是惯性权值。

2、对支持向量机的说明。

基于Vapnik等人提出的统计学习理论的支持向量机(Support Vector Machine,SVM)方法是一种比较好地实现了结构风险最小化思想的方法,为解决小样本分类、非线性问题提供了一个新的思路。

SVM的基本思想是升维与线性化:定义最优线性超平面,并将寻找最优线性超平面的算法归结为求解一个凸规划问题。继而基于Mercer核展开定律,经过非线性映射,将样本空间映射到一个高维甚至无穷维的特征空间,使其在特征空间中可以利用线性学习机的方法解决样本空间中的高度非线性分类和回归等问题。

对非线性情况,支持向量机利用了特征空间中的非线性映射算法,即通过事先选择的某种非线性映射将输入的向量x映射到一个高维特征空间Z,即 而后在此高维空间中使用线性支持向量机进行分类。这时的目标函数和约束条件变为:

最后得到的分类决策函数为:

常用的核函数有径向基核函数、多项式核函数和Sigmoid核函数。本方法选取了径向基核函数。对于非线性分类问题,核心思想就是升高空间维度线性化,即把低维空间(x∈R)中的数据样本通过映射函数转化到高维空间(x∈H)中,从而把非线性分类问题转化为了线性分类问题。在高维希尔伯特空间中对样本进行线性分类,把得到最优的分类超平面和决策函数再返回到低维空间中,得到在原低维空间中的决策函数。

SVM能否出色的完成训练测试任务,构造SVM的核函数参数g,惩罚因子 c有重要影响。因为很难预先确定合适的参数c、g。所以本方法中利用PSO算法对SVM中的参数进行优化,可以有效地弥补在构造核函数参数及惩罚因子时因经验不足而导致分类准确率偏低。

利用PSO算法对SVM的参数进行优化,其具体步骤如图4所示。

实施案例1:

以美国西储大学轴承数据为例,说明基于SSAE模型深度学习和粒子群支持向量机的滚动轴承故障诊断实现方法。

(1)试验数据

该滚动轴承实验平台包括一个2马力的电机(左侧)(1h=746w),一个转矩传感器(中间),一个功率计(右侧)和电子控制设备。该试验台包括驱动端轴承和风扇端轴承,加速度传感器分别安装在电机壳体的驱动端和风扇端12点钟的位置。振动信号是通过16通道的DAT记录器采集的,驱动端轴承故障数据采样频率为每秒钟48000个点。在本次试验中,我们选取驱动端(轴承)为研究对象。在电机负载为3HP工况下,分别选取轴承故障模式为正常、内圈故障、外圈故障和滚动体故障的数据。内圈故障、外圈故障和滚动体故障分别选取了0.007,0.014,0.021三种故障程度。故这样本次试验共选取了十种工况。我们将十种工况每4000个采样点数分为一个采样样本,十种工况每种工况得到120个样本,每种工况前60组样本选定为训练样本,后60组样本选定为测试样本。列表1如下。

表1 试验样本详细列表

(2)深度学习训练与调优过程

对(1)中选取的样本进行小波去噪处理,降低干扰噪声对分类精度的影响。然后对选取的样本快速傅里叶处理,每个样本的时域采样点数为4000点,傅里叶变换后频谱具有对称性,故取频谱的前2000个采样点为频谱信号X。通过线性归一法方法得到新的频谱信号X1,通过归一化能够提高深度学习分类准确率同时也能缩减分类计算时间。这样DNN的输入层的数量就确定为2000。本文中DNN的网络结构设置为2000-500-300-200-10,输出层由分类标签决定。各隐层的神经元个数,BPNN的经验公式求得。此外,为了加强故障诊断的鲁棒性,需要编码网络将含有一定统计特性的噪声加入样本数据。针对无监督自学习的过程参数,我们将数据间隔设定为4,迭代次数设定为200,稀疏度设定为0.05,数据污染率设定为0.05。针对有监督的微调过程参数,我们将数据间隔设定为4,迭代次数设定为20。

(3)支持向量机的训练过程

粒子群算法参数设置为最大进化数量为100,种群粒子数为20,学习因子c1 为1.9,学习因子c2为1.7,参数k=0.4,速率更新公式中速度前面的弹性系数wV=1,种群更新公式中速度前面的弹性系数参数wP=1,SVM Cross Validation参数V=3,c的取值范围为[0.1,200],参数g的取值范围为[0.01,1000],以支持向量机的平均相对误差作为适应度函数。采用粒子群算法优化后,得到参数c,g的最优值,从而确定支持向量机的预测模型。

(4)分类结果

采用本发明的基于深度学习和支持向量机的滚动轴承故障智能诊断方法按上述流程进行故障诊断,在600个训练样本(每种工况60个训练样本)的条件下,随机抽样进行600次滚动轴承故障诊断识别,以第二隐层作为支持向量机输入特征参数时,其识别准确率为98.5%;以第三隐层作为支持向量机输入特征参数时,其识别准确率为98.333%;以第二隐层和第三隐层作为支持向量机输入特征参数时,其识别准确率为98.667%,达到了预期效果。此外,在60个训练样本(每种工况6个训练样本)的条件下,随机抽样60次进行滚动轴承故障诊断识别,诊断结果如图5。图5(a)表示以第二隐层作为支持向量机输入特征参数时,其识别准确率为90%;图5(b)表示以第三隐层作为支持向量机输入特征参数时,其识别准确率为83.33%;图5(c)表示以第二隐层和第三隐层作为支持向量机输入特征参数时,其识别准确率为95%。上述试验表明,在小样本条件下,将两隐层的特征综合作为支持向量机的输入能显著提高故障诊断的准确率。表2为小样本条件下,不同输入参数及其对应的SVM分类准确率。

表2 不同输入参数及其对应的SVM分类准确率

综上所述,基于层叠稀疏自动编码器深度学习和支持向量机的滚动轴承故障诊断方法,能通过DNN网络由简单到复杂、由低级到高级自动地提取输入数据的本质特征,并能自动挖掘出隐藏在已知数据中的丰富信息,摆脱了对大量信号处理技术与诊断经验的依赖,提高了故障特征提取的效率。把深度学习提取到的两层特征综合到一起构成支持向量机的输入,以粒子群算法对支持向量机的参数进行优化,通过支持向量机对滚动轴承进行故障诊断,有效的提高滚动轴承故障诊断的准确率。本方法对滚动轴承的智能故障诊断具有重要意义。

以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案做出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1