[0024] 下面结合附图对本发明提供的基于LCD与堆叠自动编码器的滚动轴承故障诊断方法的具体实施方式做详细说明。
[0025] 本具体实施方式提供了一种基于LCD与堆叠自动编码器的滚动轴承故障诊断方法。
[0026] 自适应时频分析方法局部特征尺度分解(Local Characteristic-scale Decomposition,LCD)能够根据信号的局部时变特征自适应地分解信号,得到若干瞬时频率具有物理意义的内禀尺度分量(Intrinsic mode component,ISC),由于LCD分解是基于数据本身的特征尺度参数,且只采用一次拟合,因此在提高计算效率、抑制端点效应和削弱模态混淆等方面效果优于传统时频分析方法。目前,LCD方法已在信号分析及机械故障诊断等领域取得较好效果。
[0027] 堆叠自编码(stacked autoencoder,SAE)作为自编码(autoencoder,AE)理论的改进算法,能够构建多层自动编码器组成网络模型,从海量数据中自动的提取出故障特征,从而实现了大数据环境下滚动轴承的故障诊断。
[0028] 图1是本发明具体实施方式的基于LCD与自动编码器的滚动轴承故障诊断方法流程图。
[0029] 步骤一:采集滚动轴承原始振动信号S(t)。
[0030] 步骤二:滚动轴承原始振动信号的预处理。将采集的原始振动信号使用LCD进行分解,以最高频率值的一半为界限,把分解得到的多个ISC分量划分为高低两个频率段;将同一频率段的分量进行累加,然后分别使用傅里叶变将两个频段信号转换为频域信号,作为网络训练的输入信号。
[0031] 步骤三:堆叠自编码网络结构设置与训练。根据实际数据大小确定网络深度、各层神经元数量和学习率等参数;再依据不同的任务需求设定合适的代价函数及其优化策略。然后,将频域信号进行归一化,输入自编码网络进行逐层训练。
[0032] 步骤四:堆叠自编码网络诊断精度测试。网络训练完成后,输入测试数据对网络诊断效果进行验证。根据验证结果判断是否满足实际期望的诊断正确率(95%以上)。如果验证得到的诊断正确率过低则修正自编码网络,重复步骤三直到达到实际期望的诊断正确率。
[0033] 接下来,对上述步骤进行具体解释说明。
[0034] 1.采集滚动轴承原始振动信号S(t)
[0035] 本具体实施方式为了实现对滚动轴承故障诊断,需要的硬件装置主要由DDS实验台(动力传动故障诊断综合实验台)、测量传感器、信号采集器。其中,所述DDS实验台由驱动电机、两级行星齿轮箱、定轴齿轮箱和磁粉制动器组成。在采集滚动轴承的原始振动数据时,由驱动电机提供运转动力以依次带动行星齿轮箱与定轴齿轮箱运转,通过调节磁粉制动机的控制器可以设定齿轮箱的负载大小,当驱动电机转速逐步提升达到预设值并稳定之后,使用定轴齿轮箱端盖处的传感器采集滚动轴承的振动信号并输入信号采集器。举例来说,首先为了验证基于LCD与自动编码器的滚动轴承故障诊断方法的效果,本具体实施方式在动力传动故障诊断实验平台上以轴承故障套件(G-BFK-1)为对象,采集各种故障状态下的滚动轴承原始振动信号进行分析。实验选用驱动电机转速为3600r/min时传感器采集的原始振动信号作为实验数据,实验时的采样频率为5.12kHz。实验中使用的5种滚动轴承的状态分别为:正常、内圈故障、外圈故障、滚动体故障和复合故障(即外圈、内圈和滚动体都存在故障),如表1所示。表中列举了试验中采集的5种故障状态的样本数量及其在自动编码器训练时对应的二进制标签。该传动系统模拟了在多故障、大样本条件下的滚动轴承健康状况,具有一定的实用性。
[0036] 表1 滚动轴承的5种状态
[0037]
[0038] 2.所述原始振动信号S(t)预处理
[0039] 对振动信号首先进行LCD分解,使用极值符号序列分析方法延拓信号端点,记录每次分解的ISC分量。对一维信号的LCD分解步骤简述如下:
[0040] 第一步:确定原始振动信号S(t)的极值点mk、以及与所述极值点mk对应的时刻tk;其中,k=1,2...,M,M为极值点个数,且M为正整数。
[0041] 第二步:根据公式(1)计算任意两个相邻的极值点之间的连线lk在tk时刻的函数值Ak,再根据公式(2)计算函数值Ak与tk时刻的极值点mk之间的差Lk,式中α的值取0.5。
[0042]
[0043] Lk=α*Ak+(1-α)mk (2)
[0044] 根据公式(3)采用三次样条函数拟合(tk,Lk)得到均值曲线mli1,然后将mli1从原始振动信号S(t)中分离。
[0045] Si(t)=S(t)-mli1 (3)
[0046] 第三步:若Si(t)满足ISC判据条件,输出Si(t)并令ISC1=Si(t),Si(t)是第一个ISC分量记ISC1=Si(t),并令i=i+1,其中i为正整数;否则将Si(t)代替原始振动信号S(t),重复步骤1)、步骤2)直到Si(t)满足ISC条件。
[0047] 第四步:将ISC1分量从原始振动信号S(t)中分离出来,得到一个新信号作为输入信号,重复第一步~第三步,得到ISC2,ISC3,…,ISCn直到剩余信号单调或者剩余信号的能量与原始振动信号相比能够忽略不计,其中,所谓能够忽略不计,是指剩余信号的能量与原始振动信号的能量之间的差值小于一预设值,该预设值本领域技术人员可以根据实际需要进行设定;这样将原始振动信号S(t)分解为n个内禀尺度分量和一个残余项r(t)之和,即如公式(4)所示:
[0048]
[0049] 其中,ISC判据条件为:①整个数据段内,任意相邻的两个极值点符号互异;②数据段内极值点mk对应的时刻为tk,那么由任意两个相邻的极值点(tk,mk)、(tk+2,mk+2)确定的直线lk在tk+1时刻的函数值Ak+1与极值mk+1比值关系不变。
[0050] 3.堆叠自编码网络结构设置与训练
[0051] 首先,将重构后的高频域信号进行归一化处理后,输入自编码网络进行逐层训练并提取第一初步特征;其次,将重构后的低频域信号进行归一化处理后,输入自编码网络进行逐层训练并提取第二初步特征;最后,将第一初步特征和第二初步特征进行拼接后输入堆叠自编码网络并通过Softmax分类器进行分类,根据分类结果与原信号标签的差异对网络进行微调,以实现滚动轴承的故障诊断。具体来说,在经第一初步特征和第二初步特征进行拼接后输入堆叠自编码网络进行训练并通过Softmax分类器进行分类的过程中,Softmax分类器会查看每种滚动轴承故障的真实状态,并与Softmax分类器的输出状态进行比较,如果误差超过预设值,则对所述堆叠自编码网络进行微调。但是在堆叠自编码网络测试时,只进行结果的比较,计算滚动轴承故障诊断的准确率。
[0052] 图2是本发明具体实施方式的基于LCD与自动编码器的滚动轴承故障诊断方法中堆叠自动编码器网络结构图。自动编码器是一个三层的无监督神经网络,包括输入层、隐藏层和输出层。AE算法具体分为编码和解码两个步骤,首先通过编码网络将高维空间的输入数据转换为低维的隐藏层数据,再通过解码网络把隐藏层数据再次重构出高维的输出数据。假设输入样本集是由k个n维向量构成的{x1,x2,...,xk}。编码函数fθ首先将每个训练样本xn转化为隐藏层矢量,如式(5)
[0053] hw,b(x)=fθ(xn)=s(Wxn+b) (5)
[0054] 其中,函数s为sigmoid激活函数,θ为编码网络的参数矩阵(θ={W,b})。其中,W为输入层到隐藏层的权值矩阵,b为偏置项系数)。然后,再通过解码网络将隐藏层矢量用解码函数进行重构,得到
[0055]
[0056] 如式(6)所示,其中θ′为解码网络的参数矩阵(θ′={W′,b}),其中W′为隐藏层到输出层的权值矩阵,b′为偏置项系数。因为重构样本会产生一定的误差,需要构建误差损失函数用于网络训练,损失函数定义为如下式(7)所示:
[0057]
[0058] 式(7)中,nl代表网络层数,sl是第L层的单元数目,它们代表了整个网络的规模,λ表示权重衰减系数。AE利用梯度下降算法,经过多次迭代减少误差函数J(W,b)值,最终实现输出向量 逼近输入向量x,这说明hw,b(x)保留了训练样本中大量特性。将预处理后的两个频段信号输入单层的自动编码器初步提取特征,然后将特征拼接后用于堆叠自编码网络进行故障诊断。
[0059] 本具体实施方式针对滚动轴承故障诊断需求,设计堆叠自编码网络采用三个自动编码器(AE)和一个分类器组成的三层网络结构,如图2所示。其基本思想是训练AE网络,使输出的低维信号在包含故障本质特征同时去除高维信号中的干扰部分,最终将训练得到的特征用于分类器识别。三层自编码中AE1层有100个神经元,AE2层有100个神经元、AE3层有50个神经元,最后输入Softmax分类器。训练过程为通过输入信号x来训练AE1网络,得到网络输出h(x);然后把h(x)作为AE2的输入训练AE2网络,再将得到网络输出h(h(x))作为AE3网络的输入进行训练,最后将AE3的输出h(h(h(x)))输入到分类器Softmax中,计算分类器输出与期望值的误差,利用BP反向传播算法微调整个网络的权值和偏置,经过多次迭代实现误差收敛(迭代次数统一设为50次),最终实现滚动轴承故障诊断。
[0060] 4.堆叠自编码网络诊断精度测试
[0061] 图3A-3E是本发明具体实施方式的基于LCD与自动编码器的滚动轴承故障诊断方法中滚动轴承不同状态振动波形图。其中,图3A是滚动轴承在正常状态下的振动波形图,图3B是滚动轴承在内圈故障状态下的振动波形图,图3C是滚动轴承在外圈故障状态下的振动波形图,图3D是滚动轴承在滚动体故障状态下的振动波形,图3E是滚动轴承在复合故障状态下的振动波形。为了保证实验结果的有效性,使用交叉验证法随机选取每类样本数据的
20%作为测试数据,剩余80%作为训练数据,这样每类故障数据就有1600组训练样本和400组测试样本,其中每组样本都包含3000个连续的数据采样点(包含轴承旋转多个周期)。本具体实施方式所用的滚动轴承5种状态下的时域信号波形图如图3A-3E所示。为了与传统智能方法比较,同时选择BP神经网络方法对滚动轴承数据进行故障诊断。此外,为了更好的体现深度自编码网络的优势,本文增大了BP神经网络深度,构建了与深度自编码网络结构相同的BP神经网络结构与本方法进行对比试验,诊断结果如表2所示。
[0062] 表2 不同诊断方法识别率
[0063]
[0064] 将本具体实施方式提出的故障诊断方法和BP神经网络方法故障诊断的效果进行对比分析。从表2所可以看出,单层BP神经网络的诊断性能较好,但其分类准确率依然不足80%。这是因为BP神经网络收敛速度较慢且易产生局部最优解,其诊断精度难以满足实际需求。此外,为了体现SAE算法的优势,实验选择了与SAE网络相同结构的BP神经网络,其诊断精度有所提高达到了82.48%,但是与同样规模的SAE网络相比差距仍然较大。因为SAE算法通过构建深层网络,并且使用梯度下降方法和反向传播算法进行网络训练,能够自适应的提取出故障的特征表示,使得对故障的分类更加准确。
[0065] 图4是本发明具体实施方式的基于LCD与自动编码器的滚动轴承故障诊断方法中SAE网络提取特征的散点图。为了进一步分析SAE网络特征提取的优势,提取实验中样本训练SAE网络输出的隐藏层特征,利用主成分分析提取这些特征的前二个主成分并进行可视化,如图4所示。图4为SAE网络提取频域信号的散点图,可以看到图中不同滚动轴承健康状态的散点都聚集于一处,或者能够与其他故障明显的分离,说明多隐层的SAE网络能够更好的实现信号的特征提取,因此能取得99.25%的诊断正确率。
[0066] 本具体实施方式提出的基于LCD与堆叠自动编码器的滚动轴承故障诊断方法,算法通过构建深层网络,并且使用梯度下降方法和反向传播算法进行网络训练,能够自适应的提取出故障的特征表示。因此对故障的分类更加准确,能有效诊断轴承健康状态。在动力传动故障诊断实验台采集了5类滚动轴承故障数据进行测试。实验结果表明,提出方法能够有效的提取故障特征且故障诊断效果优于传统智能诊断方法。
[0067] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。