APP下载

基于Teager能量谱和卷积神经网络的滚动轴承故障诊断

2021-09-15于忠清YuJianqi

计算机应用与软件 2021年9期
关键词:轴承准确率卷积

郭 璐 于忠清 Yu Jianqi

1(青岛大学数据科学与软件工程学院 山东 青岛 266071)

2(青岛大学计算机科学技术学院 山东 青岛 266071)

0 引 言

物联网、通信和计算机技术的发展催生了工业向着4.0及智能制造的转型,这种转型反过来促使制造业向着快速、小批量和定制化的方向发展。制造系统如何在快速反应、设备制造模式切换频繁中及时地检测出异常、尽早发现系统内的故障从而延长系统使用寿命,减少维护成本是当前制造业的重要问题。而在各种轻、重制造业设备中,滚动轴承是制造系统中旋转机器设备中广泛应用的零件之一。在旋转机器故障中,有近30%的故障是由轴承损坏导致的,故障的准确定位、早期的故障诊断对于减少设备停机所带来的高额成本十分重要,变负载驱动环境下的轴承故障信号区别不够明显,导致滚动轴承故障的精确度较低,所以本文关注变负载驱动下滚动轴承的故障诊断。

现有的滚动轴承的故障诊断方法主要分为三类,一是基于知识的途径;二是数据驱动的方法;三是混合方法。其中:基于知识的方法主要为基于可靠性模型和基于专家经验的方法;数据驱动方法是通过传感技术和计算机,将获得的设备数据通过AI方法进行建模预测;混合方法则是将数据驱动方法和传统的物理指标、信号处理等方法相结合。后两者已经成为现在研究的重点。文献[1-2]即使用混合方法,分别通过将小波能量谱及Hilbert能量图进行特征提取然后结合机器学习方法进行故障诊断。但小波变换自适应性弱,Hilbert能量谱会忽略边缘能量信息,而Teager能量算子具有检测信号瞬态冲击的优势,且能够跟踪信号、结合信号变化的动能和势能,计算信号的瞬时能量和总能量。文献[3-5]都通过使用Teager能量算子以及Teager能量谱进行综合诊断,并取得了很好的效果。但现有的相关研究仍依赖于人工的特征提取和诊断,无法适应当前制造系统对于故障的准确诊断和及时反映的要求。

深度学习在数据分类和特征提取问题方面的优势十分明显。文献[6-7]利用CNN用于自动抽取图像中的特征进行识别的特点,分别使用原始信号数据及频谱图作为输入训练网络来进行故障的诊断。卷积神经网络在图像处理、识别上有很多成功的应用,同时能够自行抽取图像特征且不需要组合其他分类方法。但原始数据中的噪声造成故障特征的隐藏和缺失,频域图虽然能够根据故障频率发现故障特征,但在不同驱动状态下轴承诊断中效果不佳。

综上,本文通过Teager能量谱在不同负载驱动下的故障特征,对轴承故障进行精确的诊断。将Teager能量算子与卷积神经网络结合起来,提出基于Teager能量谱和CNN的轴承故障诊断模型以及基于该模型的故障诊断方法,来提高变负载驱动下滚动轴承故障诊断的准确率。

1 研究背景

Teager能量算子是一个非线性算子,最初是由H.M.Teager在研究非线性语音建模时提出的信号分析算法。但由于其在发现振动信号冲击特征中的出色表现,Teager能量算子以及能量谱被广泛应用于设备的故障诊断与健康管理中。如文献[8-10]均使用Teager能量算子与其他方法相结合分别解决了滚动轴承早期故障难以识别和齿轮箱故障特征提取问题。文献[11] 先将振动信号通过MCKD方法过滤,再使用Teager能量谱进行分析,提出了滚动轴承的复合诊断方法,提高了轴承故障诊断的准确性。鉴于能量算子及能量谱在早期故障识别以及故障特征提取上的出色表现,针对变负载驱动下的故障特征不明显、导致诊断难的问题和对振动信号整体分析的考量,本文对由Teager能量算子计算绘制后得到的Teager能量谱进行了进一步的研究。

1.1 Teager能量谱

能量谱是指用密度的概念表示信号能量在各个频率点的分布情况,能够反映出信号能量随着频率的变化情况。因此各类能量谱被广泛应用于设备的故障诊断、损伤识别等分析中,通过能量信号变化来确定设备故障。曹展等[2]将小波包能量谱和Hilbert包络分析相结合,来发现行星齿轮的早期故障,并通过实验发现这种方法不能用于横向振动信号。邓飞跃等[12]使用全生命周期的轴承数据计算时间-小波能量谱,并将能量谱的样本熵按照时间顺序排列,绘制轴承的运行状态曲线,从而通过判断正常轴承的曲线走势来判断其是否会发生故障。但上述研究中,探讨的故障类型较少且没有对变负载驱动下的情况进行研究。同时虽然小波信号能够反映振动信号时频域的局部化信息,但小波基长度有限,进行小波变换时会造成能量泄露。而小波基和分解尺度的限制,使得小波变换的自适应性较弱。

针对小波变换的能量谱在变负载驱动下诊断的缺点,王玉静等[13]则对变负载下轴承故障识别难的问题,提出了基于经验模态分解和希尔伯特包络谱和深度信念神经网络的状态识别方法,用来识别不同负载驱动下的轴承状态,且识别率达到92%。但相比于包络谱,基于Teager能量算子计算得到的Teager能量谱则能够更好地兼顾信号的边缘和主体信号,更容易发现不同负载驱动下振动信号变化的微小信号,在速度和精度等方面都表现更好。

张小龙等[14]首先将振动信号进行固有时间尺度分解(ITD),得到若干个固有旋转分量,并取前两个固有旋转分量进行滤波,将其与剩余旋转分量进行重构,对重构信号绘制Teager能量谱,能够清楚地识别出轴承的故障特征。向玲等[8]通过变分模式分解和1.5维Teager能量谱的结合研究,准确地提取了非线性、非平稳滚动轴承故障信号中的故障特征。刘尚坤等[3]和齐咏生等[11]都将振动信号通过MCKD方法过滤,然后使用Teager能量谱进行分析,分别提出了滚动轴承的复合诊断方法与轴承早期故障识别方法,都取得了较好成果。任学平等[15]也针对轴承早期故障难以提取的问题,在频带幅值熵的基础上,将双树复小波变换与Teager能量谱结合,用于识别早期故障。图1为Teager能量算子及能量谱计算过程。

图1 Teager能量算子与能量谱计算

以上研究中,主要是将Teager能量谱用于早期故障的特征提取中,使用信号统计量作为故障特征,根据找到的特征来进行人为的识别诊断。相比于上述研究,本文主要将Teager能量谱用于变负载驱动下的轴承故障识别,同时使用深度学习的方法代替人工的特征提取。深度学习会从图像的角度,提取更为抽象的特征量,如信号的形状、密度等,不仅解决了以往方法对于人工特征的依赖,又能够对Teager能量谱进行更为全面的分析。所以本文提出了以下研究想法来进行变负载驱动下轴承的故障诊断。

1.2 研究路线

卷积神经网络是深度学习的代表算法之一,学习效果稳定且不需要额外的特征处理,在计算机视觉、医学和健康管理等领域有着出色的表现[16-17]。所以,本文通过使用CNN对Teager能量谱图进行直接的识别,来替代仅使用均值、方差等传统统计量的特征提取方法。图2为本文提出的研究路线,主要包括两个部分:模型构建和使用模型进行故障诊断。

图2 滚动轴承故障诊断流程

第一个部分模型构建分为三个模块:① 计算Teager能量谱图,通过获得的轴承振动信号,计算Teager能量算子并绘制能量谱图,然后对计算得到的能量谱图进行训练集和测试集划分;② 卷积神经网络,构建出合适当前能量谱图的卷积神经网络结构;③ 模型训练,得到轴承故障诊断模型。使用①模块得到的训练集和测试集对构建好的卷积神经网络进行训练和参数调整,直到准确度达到要求,则模型训练结束。

第二个部分使用模型进行故障诊断也分为三个模块:① 计算Teager能量谱图,与模型构建部分的①模块不同的是,模型构建中是使用确定故障的信号计算能量谱图并划分数据集,而此处的能量谱图则是使用未知故障的振动信号计算得到,用于后续的故障诊断;② 使用模型构建过程中构建好的诊断模型识别①步骤计算的未知故障振动信号能量谱;③ 得到诊断结果,即当前设备是否故障,属于哪种故障类型。

2 故障诊断模型的构建

诊断模型是研究中的核心部分,本节就研究路线中的模型构建部分具体实现进行详细介绍,即图2 中的①部分。如图3所示,模型的构建主要分为数据处理和诊断模型训练两个部分组成。其中数据处理主要将振动信号转换为可供CNN处理的能量谱图像,模型训练部分则说明如何使用提取的数据集来进行故障诊断模型的训练。

图3 诊断模型的构建

2.1 数据处理

数据处理是模型训练前的重要准备工作。为了将振动信号转换为可以作为卷积神经网络输入的训练数据,数据处理包括了计算能量谱图和图像调整两个部分。

在图像调整方面,由于绘图保存的图像过大,且不同故障下的数据绘图有不同的幅值,这就使得图像不在同一范围内,无法比较。所以本文分别实验了以下几种方案来使得图像可用:① 将带有坐标轴信息图像直接压缩裁剪;② 使图像绘图范围在同一坐标轴下,再进行压缩裁剪;③ 归一化幅值数据,再进行绘图调整。实验发现,由于坐标轴信息在整幅图中占比较小,导致①方案图像无法辨认;而不同故障的幅值信息差别较大,固定的坐标无法适应幅值变化,所以排除了②方案。最终经过实验,在图像调整中本文采用了归一化的方式,既不会影响不同故障的幅值比较,同时又把图像限制在了一定范围内。

以下为详细的计算过程:

(1) 设输入的离散振动信号为s(n),信号的采样频率为fs,采样点数为N。首先根据式(1)计算振动信号的Teager能量算子。

Ψ(x(n))=[x(n)]2-x(n-1)x(n+1)

(1)

(2) 对Teager能量算子进行快速傅里叶变换,之后计算幅值mag,计算数据点对应的频率f。

mag=abs(fft(Ψ[x(n)]))

(2)

f=n×fs/N

(3)

(3) 对幅值mag进行归一化,使其在(0,1)范围内。然后使用plot绘图,并保存图像。

(4)

(5)

(4) 设保存的图像为picture,设像素点值分别为R、G、B,整幅图像像素个数为m,设灰度转换后图像为picture′。

picture′(m)=0.298 9×R+0.587 0×G+0.114 0×B

(6)

(5) 裁剪确定范围图像到合适大小。

(6) 对所有采样数据进行步骤(1)-(5)的计算得到数据集,设置训练测试百分比x,随即划分1-x百分比数据为训练集,x百分比测试集。

对于本文使用的Teager能量谱图像,由于采样频率较高,能够检测的频率范围从0 Hz一直到6 000 Hz,而主要的特征频率又集中在前半部分,所以本文实验的步骤(5),去掉了图像的空白边界,并保留了前3 500 Hz的频率信息。

2.2 诊断模型训练

2.2.1改进的卷积神经网络结构

Lecun等[18]提出的LeNet-5模型,确定了卷积神经网络基本结构,即卷积层、池化层和全连接层。其中卷积层和池化层用于图像的特征抽取,而全连接层用于分类。关于基本结构和原理可以参考文献[16-18]。鉴于卷积神经网络在特征提取和图像处理等方面的出色表现,本文将Teager能量谱数据集输入到CNN中进行训练,得到故障的分类模型。限于图像数量,CNN采用了两个卷积层、两个池化层、两个全连接层的基本结构。

但是只含有卷积、池化及全连接层的卷积神经网络,在处理能量谱数据时会产生严重的过拟合,其训练集准确度达到100%,但预测集准确度却不足50%,即模型泛化能力低。为了解决图像训练集较少易过拟合问题,本文尝试在网络训练中使用Dropout方法随机化网络连接并增加BN层对输入图像归一化处理。

Dropout是Hinton于2012年提出的方法[19],主要是针对模型参数多,但是样本过少产生的过拟合现象。其主要原理是通过减少特征选择器的重复作用来提高网络性能。文献[18-20]中都通过在全连接层使用Dropout方法来减少过拟合现象。在网络搭建中,本文尝试在卷积层和全连接层加入Dropout层,经过多次实验,最后一层pooling层以及全连接层中加入Dropout层使得神经元随机连接,得到了较好的训练效果(迭代50次,训练准确率为93%,测试准确率为90%),其网络结构如图4所示。

图4 增加了Dropout层的卷积神经网络结构

在pooling层及全连接层中加入了Dropout层的方法使得网络的准确率得到了提升,但是其训练过程较慢且不稳定(前27次迭代训练准确率浮动较大,训练准确率38%左右)。所以考虑对数据进行归一化来解决不同范围数据的影响,加强稳定性,同时提高训练速度。BN层即Batch Normalization,由Ioffe等[21]提出,其优点在于减少网络训练参数调整的难度,可以使用较大学习率使得训练速度加快,同时使得训练数据和测试数据分布一致。所以本文将其加入到卷积神经网络中以提高网络训练速度及模型的泛化能力,模型测试十次中,最高测试准确率达到100%。

经过对模型结构的改进和参数调整,得到适合用于当前数据的卷积神经网络结构。如图5所示,本文最终改进的网络结构包括:两个加入了BN层(Batch Normalization)的基本卷积神经网络结构,以及由两个全连接隐藏层组成的分类部分。

图5 增加了Dropout层和BN层的网络卷积神经网络结构

各个层次的具体参数如下所示:

输入层。根据实验数据集,设置输入层大小,本文实验数据图像大小为568 px×479 px的Teager能量谱图构成。训练过程每批训练数量(Batch Size)为64。

卷积层和池化层。两个卷积层的卷积核大小和特征数量分别为2×2,32;2×2,64。池化层为2×2的采样窗口,步长为1。激活函数使用ReLU函数。两层中间加入BN层进行归一化。最后一层Dropout筛选概率默认设为0.5。

全连接层。全连接层分为两层:第一层为512个神经元,第二层为128个神经元,输出层神经元个数为训练数据类别个数。层间激活函数使用ReLU函数,全连接层和输出层之间使用Softmax函数。Dropout层筛选概率默认设为0.5。

2.2.2模型训练流程

如图3右半部分模型训练所示,模型训练的详细步骤如下。

(1) 按照2.2.1节模型参数搭建卷积神经网络。设置训练图像个数为N,测试数据集个数为M,一同训练的批处理参数为BS,最大迭代次数为Epoch,当前迭代次数为i,希望达到的测试准确率为TestAcc,当前测试准确率为TempAcc。

(2) 使用分批的训练数据集图像训练建立好的CNN模型,每批图像个数为BN,如果BN×i≥N,一次迭代结束,更新迭代次数i;否则重复步骤(2)。

(3) 如果i>Epoch,结束训练,得到训练好的诊断模型TempModel,跳转到步骤(4),否则重复(2)继续训练。

(4) 使用测试集作为输入,输入到TempModel中进行计算,对比测试集的原标签和TempModel输出的诊断标签,统计准确率TempAcc。

(5) 如果TempAcc≥TestAcc,则训练结束,得到诊断模型Model。否则,跳转到步骤(6)。

(6) 修改模型参数,如Dropout筛选率、池化层窗口大小及步长等。跳转到步骤(2),继续训练模型。

3 基于故障诊断模型的故障诊断方法

建立好的故障诊断模型,能够根据输入的能量谱图进行自动化的特征提取和分类。针对如何使用模型进行故障诊断,即图2中的②部分,本文提出了基于该模型的故障诊断方法。如图6所示,基于Teager能量谱和CNN的轴承故障诊断流程如下:

图6 基于故障诊断模型的轴承故障诊断流程

(1) 获取滚动轴承的振动数据,计算能量因子后通过FFT变换得到频率f和对应幅值大小mag。

(2) 对mag进行归一化,使用频率和归一化后的mag数据绘图,进行灰度转换并根据训练数据集格式化图像。

(3) 将规格化后的Teager能量谱图作为诊断诊断模型的输入。输入到训练好的诊断模型中,得到当前能量谱图所示的轴承是否健康或存在故障。

由上述图例和描述可知,一旦诊断模型建立完毕,后续模型使用中的计算主要集中在如何将振动数据转换为模型能够识别的图像上。以上即为故障诊断模型构建及方法的具体实现,下面通过两个实验分别验证本文网络结构以及Teager能量谱在轴承故障诊断中的实用性、以及对于变负载驱动轴承故障诊断的准确性。

4 实验与结果分析

本节将针对提出方法进行实验验证。实验使用的滚动轴承振动数据为美国西储大学公开轴承数据集,待检测的轴承支撑着1.6 kW电动机的转轴,驱动端轴承为SKF6205,在驱动端进行振动数据采集,采样频率为12 kHz,分别采集电机在0 hp、1 hp、2 hp和3 hp负载驱动时的健康、内圈故障、外圈故障和滚动体故障数据。本文通过不同的驱动下的健康和故障数据进行计算,得到了含有2 409个电机故障能量谱图,作为实验数据集。

下面将分别从网络结构和输入数据类型、完整的诊断与预测实验来验证模型和方法的可行性和有效性。

实验一:网络结构与不同输入数据测试对比。

本实验通过调整网络结构与参数,以及使用不同的输入数据来对比验证网络结构和输入数据的有效性。实验使用输入数据分为3种:第1种为如图7所示能量谱图,第2种和第3种分别为振动数据的原始时域图和振动数据频域图,图8(a)和(b)为时域图,图8(c)和(d)为频域图。实验对比的不同网络结构和输入数据如表1所示,其中:In和Out代表输入和输出层,C代表卷积层,P代表池化层,F代表全连接层,D代表Dropout层,BN代表BN层。

图7 部分能量谱

图8 振动数据时域图和频域

表1 对比实验网络结构

模型1的网络结构为仅含有卷积层、池化层和全连接网络的卷积神经网络,模型2的网络结构如图4所示,为增加了Dropout层的卷积神经网络,本文模型的网络结构如图5所示,增加了Batch Normalization来加快训练速度,进一步减少过拟合。

其中模型1、模型2和本文模型1用于对比验证增加了Dropout方法和BN层后的网络结构对于准确度的影响,模型3、模型4、模型5与本文模型1对比验证卷积核大小、池化层筛选步长对于测试结果的影响。本文模型1与模型6、模型7则通过以不同的输入数据,验证Teager能量谱在识别轴承变负载驱动时故障的优越性。每批训练图像数为64,Dropout层随机筛选概率为0.15。测试结果如表2所示。

表2 不同模型测试对比结果

其中测试平均准确率为计算10次测试的平均值,迭代次数本文使用次数范围是因为训练过程达到结束要求的迭代次数并不相同。由表2可知,对于轴承故障诊断,传统的CNN模型以及只加入Dropout层的模型准确率都低于本文提出的模型,且迭代次数也均在30次以上。

对于本文提出的网络结构,卷积核大小为2×2时的准确率要优于卷积核大小为3×3及5×5,原因是卷积核过大,导致筛选的特征范围过于宽泛,而振动信号之间的变化往往较为细微,所以较小的卷积核效果更好。池化层的筛选窗口步长也对准确率有较大的影响,主要原因是较多的筛选会导致有用特征的减少,从而导致了准确率下降。

模型6、模型7及本文模型测试准确率分别为0.844 0、0.902 9和0.933 5。变负载驱动状态下的轴承,在微小负载变化时在时域波形上不会产生巨大的影响,所以获取振动数据的时域波形基本一致,从而导致诊断效果较差。而对于频域图而言,90%准确度说明频域波形用来诊断故障要比时域波形更具有优势,但是不同负载下频域信号可能会产生重合或相似,从而使得其诊断的准确率不如能够从时间和空间积累信号能量的Teager能量谱图。通过这组模型对比,验证了本文提出的Teager能量谱图作为输入数据进行变负载驱动下轴承的故障诊断能够得到更好的效果。

实验二:变负载驱动轴承故障诊断。

通过实验一,可知本文提出的网络结构处理轴承故障诊断上的优势。下面将通过在0 hp、1 hp、2 hp和3 hp负载驱动时的健康、内圈故障、外圈故障和滚动体故障数据来进行故障诊断模型的训练,并通过测试验证本模型对于变负载驱动下轴承故障诊断的可行性。

1) 数据处理。

分别计算电机在0 hp、1 hp、2 hp和3 hp负载驱动时的健康、内圈故障、外圈故障和滚动体故障振动数据进行处理并绘图得到不同负载驱动下轴承振动信号的Teager能量谱。如图9-图10分别为健康状态下的轴承振动信号和Teager能量谱图。

图9 不同负载驱动下轴承振动信号

图10 不同负载驱动下轴承能量谱图

得到绘制出的能量谱图后,需要对图像进行处理,首先灰度化,之后进行裁剪,得到数据集。如图11所示,为图像处理后的不同负载驱动下的健康轴承Teager能量谱。之后进行数据集划分,将1 806个随机能量谱数据作为训练集,剩余603个能量谱数据作为测试集。

图11 不同负载驱动下健康数据能量谱

2) 模型训练。

使用训练集和测试集进行模型训练,数据共十六类,标签为0-15,故障类别对应标签如表3所示。其中:B代表滚动体故障,H为健康,IR为内圈故障,OR为外圈故障,0-3为不同的负载驱动。

表3 类别标签对应表格

图12(a)为在训练的不同迭代次数停止训练后使用测试集进行测试得到的测试准确率,可以看到当迭代次数超过12时,由于模型完全拟合训练数据,训练准确度为100%,导致过拟合,使测试准确率降低。本次实验选择训练迭代12次即测试准确率为95.273%时的模型作为诊断模型,图12(b)为模型训练过程准确率变化折线图。之后保存并使用模型进行故障诊断。

(a) 不同迭代次数测试准确率对比

3) 基于模型的故障诊断。

得到了满足准确率要求的模型之后,即可使用该模型进行故障诊断。本文收集了100组未知故障的轴承振动信号,对其进行故障诊断。首先对未知故障的轴承振动信号进行数据处理,得到能量谱图。图13为部分未知故障数据计算得到的Teager能量谱。

图13 未知故障振动信号能量谱图

对其进行诊断,上述示例图像得到诊断结果如表4所示。由实验结果可知,训练好的模型能够对变负载轴承故障进行准确的识别。

表4 诊断结果对应

5 结 语

随着物联网、计算机、传感通信技术的发展,快速、小批量定制化的需求对制造设备的要求也不断提高。如何在频繁变换生产参数的情况下保持设备健康,尽早发现故障节约维护和时间成本是当前制造业的重要问题。对此,本文针对制造业中故障多发的轴承在变负载驱动环境下故障诊断不准确的问题,提出了基于Teager能量谱和卷积神经网络的故障诊断方法。使用不同故障的轴承振动信号计算得到Teager能量谱图,分成训练集和测试集,训练得到轴承故障诊断模型。新输入的轴承振动信号先通过数据处理层计算得到Teager能量谱图,然后通过训练好的CNN模型,确定当前的轴承故障。通过对网络结构、变负载驱动等实验验证,本文提出的方法能够较好地识别变负载驱动下的滚动轴承故障,其识别准确率平均达到93%。同时也验证了相较于振动信号时域图和频域图,Teager能量谱图能够更好地识别变负载驱动下的轴承故障。

然而,本文研究仍存在一些不足,例如,必须提前准备好故障数据集,在数据缺乏的情况下,可能会对准确率造成一定的影响。今后本文将探讨如何建立正常运行的轴承数字模型,从而摆脱故障数据的限制。另外,还将探讨轴承的故障预测以及剩余寿命预测相关问题,同时推动深度学习方法在故障诊断及设备健康管理中的进一步应用。

猜你喜欢

轴承准确率卷积
基于全卷积神经网络的猪背膘厚快速准确测定
异步立式感应电机轴承系统设计
无轴承电机的结构设计
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
泵用电机水润滑轴承选择与应用
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨