基于机器学习算法的滚动轴承在线故障诊断
2021-09-10孙晋锰于忠清王海崖
孙晋锰 于忠清 王海崖
摘要:针对传统故障诊断方法耗时长、人工成本高且工作效率低以及现代故障诊断过于复杂的问题,提出了一种直接对振动信号进行关键特征筛选提取的方法,并结合经典的C45算法、Cart算法、BP算法和SVM算法对滚动轴承进行在线的故障诊断。研究结果表明,基于C45算法、Cart算法、BP算法和SVM算法模型的诊断方法均可对滚动轴承在运行过程中是否出现了故障以及出现了什么故障进行较为精准的识别和分类,且具有较高的准确率,可以达到很好的故障监测效果以及故障诊断效果。基于SVM算法的故障诊断模型诊断准确率优于其他三种算法,更加适用于滚动轴承的故障诊断。
关键词:滚动轴承;故障诊断;机器学习算法;C45算法;Cart算法;BP算法;SVM算法;预测性维护
中图分类号:TH212;TH213.3
文献标志码:A
收稿日期:2020-12-23
基金项目:2019年度山东省重点研发计划(批准号:2019JZZY020101)资助。
通信作者:于忠清,男,博士,教授,主要研究方向为工业大数据、预测性维护等。E-mail: haiersoft@163.com
滚动轴承在工业中起着至关重要的作用,运行状态直接关系到整台工业设备能否正常工作,進而关系到整条生产线能否正常运行[1]。近几十年以来,国内外众多学者对滚动轴承的故障诊断进行了大量研究,只为能进一步更加高效以及更加精准的实现实时的滚动轴承故障诊断。穆丽蓉[2]提出了一种轴承振动信号自适应诊断建模方法。Borghesani等[3]提出了一种在不同速度和负荷下诊断轴承故障的方法。吕楠等[4]提出了一种基于BP神经网络的滚动轴承故障诊断。李从志等[5]提出一种基于经验模态分解与DE相结合的自适应多尺度散布熵滚动轴承故障诊断方法。Janssens等[6]基于轴承振动信号的振幅用CNN实现了滚动轴承故障诊断。以上解决方案要么实验样本过少,要么特征提取方法过于复杂,要么故障分类的准确率不够高,有的甚至没有给出具体的诊断准确率。机器学习算法能准确感知不同样本集中的数据的细微差别,如决策树(DecisionTree) [7]、支持向量机(SVM) [8]、BP神经网络(BP) [9])等算法。在线故障诊断技术能及时检测到故障的发生,及时进行故障处理,从而大大减少因停机时间过久而造成的巨大经济损失。为了能够更加简单直观且高效的实现滚动轴承的在线故障诊断,本文一次性的提取了大小不同的两个数据集作为实验样本,同时对大量实验样本经过上百次的实验对比验证,最终选取出7种有效的特征值,作为基于机器学习算法的滚动轴承故障诊断模型的输入参数,最后达成准确识别滚动轴承什么时候发生了故障,以及发生的是何种故障。
1 滚动轴承故障诊断模型的构建
滚动轴承的故障诊断模型构建主要包括两部分:一是对滚动轴承的原始振动信号预处理,然后再对预处理后的信号进行特征提取,从而为后期的故障诊断提供良好的依据;二是将提取后的各特征值输入到基于不同机器学习算法的滚动轴承故障诊断模型中,然后通过模型训练不断的调整各关键参数,不断得对模型进行优化,从而获得最佳的滚动轴承故障诊断模型。
1.1 数据预处理
本文对原始的振动数据集进行数据预处理。首先选取数据,由于原始的数据集中包含大量的数据,考虑到计算机算力有限的问题,于是有针对性地提取了40万个数据点和4万个数据点的数据作为本文的两个样本数据集。其次,对实验样本进行分类操作,因滚动轴承的故障类型有三种,分别是内圈故障、滚动体故障和外圈故障,加上滚轴轴承的正常状态,所以数据样本共分为四类,分别以1、2、3、4作为滚动轴承四种不同状态的类型标记。最后对样本数据集进行特征提取,每种特征值都有着与之对应的数学公式,通过对每个固定数量的小样本中数据进行公式运算,最终得出每一个小样本的不同特征值。本文数据的特征提取主要包含以下7个指标:两个有量纲指标,即平均值和均方根值(有效值);5个无量纲指标,即峰值指标、脉冲指标、裕度指标、波形指标、峭度指标[10]。
1.2 模型生成
本文滚动轴承故障诊断模型的生成包括基于历史数据的模型训练和模型优化。
1.2.1 基于C4.5算法的模型生成 C4.5算法由ID3算法衍生而来,利用信息增益率来作为属性选择的重要衡量标准,是一种比较经典的决策树算法,亦是分类算法中的一员[11]。
(1) 信息熵,设第 k类样本在当前样本集S中的占比为pkk=1,2,3,…,y,则S 的信息熵为
Info_Ent(S)=-∑yk=1pklog2pk(1)
(2) 信息增益,样本集S被属性a划分所得
Info_Gain(S,a)=Info_Ent(S)-∑Vv=1SvSInfo_EntSv(2)
(3) 信息增益率,C45算法使用增益率来选择最优划分属性,增益率为
Info_Gain_ratioS,a=Info_Gain(S,a)Info_V(a) (3)
Info_V(a)=-∑Vv=1SvSlog2SvS (4)
根据C45算法的原理以及滚动轴承的历史数据,生成基于C45算法的滚动轴承故障诊断模型。
1.2.2 基于BP算法的模型生成 BP神经网络是一种按误差逆传播算法学习的多层前馈神经网络,通过反向传播进行不间断的训练,同时对网络的权值和偏差进行不断的调整,最终使网络输出层的误差平方和最小[12]。BP神经网络的拓扑结构主要由输入层、隐含层和输出层组成,如图1所示[13]。
(1) 网络的初始化,初始化权值和偏差,同时确定输入输出向量,采用Sigmoid激励函数
gx=11+e-x (5)
(2) 计算网络隐含层的输出Hj、网络输出层的输出Ok
Hj=g∑mi=1wijxi+bj (6)
Ok=∑lj=1Hiwjk+bk (7)
其中,wij指代輸入层-隐含层的权重、隐含层-输出层的权重表示为wjk,bj指代输入层-隐含层的偏置、隐含层-输出层的偏置表示为bk。
(3) 计算预测输出与期望输出之间的误差,期望输出用Yk表示,记Yk-Ok=ek,误差E为
E=12∑nk=1e2k (8)
以上公式中,i=1,2,…,m,j=1,2,…,l, k=1,2,…,n。
(4) 权重更新
wij=wij+ηHj1-HjxiΣnk=1wjkek (9)
wjk=wjk+ηHjek (10)
(5)偏置更新
bj=bj+ηHj1-HjΣnk=1wjkek (11)
bk=bk+ηek (12)
为了使BP神经网络发挥出最优的性能,本文在进行网络训练之前对数据进行了归一化处理,以此来消除数据特征之间的量纲影响。根据BP算法的原理以及滚动轴承的历史数据,生成基于BP算法的滚动轴承故障诊断模型。
1.2.3 基于SVM算法的模型生成 SVM算法是一种经典的分类算法。SVM是一种分类器,可以有效解决非线性分类问题[14]。对于集合 S=x1,y1,x2,y2,…,xk,yk,yi∈-1,+1,SVM算法就是在基于集合S的样本空间中找到一个可以将不同类别的样本分开的划分超平面[15]。
(1) 划分超平面的公式为
wTx+b=0 (13)
其中,w=w1,w2,…,wj为法向量,决定超平面的方向;b为位移项,决定超平面与原点之间的距离。
(2)将超平面记为w,b,w-法向量,b-位移项,样本空间中任意点x到超平面w,b的距离d
d=wTx+bw(14)
(3) 假定超平面w,b可以对所有训练的样本进行一个正确的分类,即对于xi,yi∈D,若yi=+1,则有wTxi+b>0; 若yi=-1,则有wTxi+b<0。令
wTxi+b+1,yi=+1
wTxi+b≤-1,yi=-1 (15)
当等号成立时,满足条件的样本点即为支持向量,支持向量与超平面间的间隔m
m=2w (16)
(4) 获得划分超平面的最大间隔,使m最大即可,只需找到满足条件的的法向量w和位移b
maxω,b2ws.t. yiwTxi+b)1,i=1,2,…,n. (17)
只要w-1最大化,间隔亦能最大化,也就是只需最小化w2。支持向量机的基本型
minω,b12w2s.t. yiwTxi+b)1,i=1,2,…,n (18)
根据SVM算法的原理以及滚动轴承的历史数据,生成基于SVM算法的滚动轴承故障诊断模型。
2 滚动轴承在线故障诊断
用预处理后的滚动轴承的历史数据,生成并优化滚动轴承的故障诊断模型,使其能够有效实现滚动轴承在线故障诊断。滚动轴承在线故障诊断流程如图2所示。
3 实验验证
为了验证基于机器学习算法的滚动轴承在线故障诊断模型方法的可行性,采用了两组数据集和四种算法进行对比验证。本文实验数据由西储大学数据中心网站获取,选用了故障直径为0007英寸的轴承驱动端数据,轴承驱动端的 4 种状态数据,分别是正常状态、内圈故障、滚动体故障及外圈故障。试验台如图3所示,测试台由一台2马力的电机(左)、一个扭矩传感器/编码器(中)、一个测功机(右)和控制电子装置(未显示)组成。
数据集1:选取12 k(故障直径0007 inches;负载2HP;电机转速1 750 r/min)驱动端轴承故障数据作为实验数据,实验数据分为4种类型,即轴承四种状态(正常状态、内圈故障、滚动体故障、外圈故障),每种状态数据各提取前10万条,并对数据进行预处理,100条原始数据作为一个样本,共计4 000个样本。滚动轴承正常状态、内圈故障、滚动体故障、外圈故障的样本量均为1 000个。
3.1 振动信号
以下各图是分别基于滚动轴承原始振动数据的时域图、频域图。滚动轴承四种状态的时域和频域信号分别如图4、5、6、7所示。
3.2 数据预处理
实验数据包括滚动轴承内圈、滚动体、外圈三种故障以及处于正常状态下共4种类型的数据,分别从这4种状态的滚动轴承振动数据中每种状态数据各提取前10万条,以此作为每种轴承状态的实验数据,同时以每100条原始数据标记为一个样本作为划分样本的标准,即滚动轴承每种状态的样本量均为1 000个,4种状态的样本量共计4 000个。每种状态的样本按4∶1的比例划分为训练样本和测试样本,即训练数据占全部实验样本的80%,剩余的20%样本全部作为算法模型的测试数据。
由于时域特征更适用于在线监测[16],故本文主要通过计算原始数据共提取出了7种有效的时域特征值,并以此作为本文机器学习算法模型的输入参数。特征如表1所示,分别为平均值、均方根值、峰值指标、脉冲指标、裕度指标、波形指标、峭度指标。仔细观察表1,不难发现,不同的故障类型对应着不同的特征值,相互之间都存在着一定的差异,这些数据间的差异恰恰是故障诊断的重要依据。
表1中,故障类型数字1代表轴承处于正常态度,故障类型数字2表示轴承发生了内圈故障,故障类型数字3表示轴承的滚动体发生了故障,故障类型数字4表示轴承发生了外圈故障。
3.3 滚动轴承在线故障诊断
3种算法模型的训练样本和测试样本按4∶1的比例进行划分,即训练数据占全部实验样本的80%,剩余的20%样本全部作为本文3种算法模型的测试数据。图8是基于C45算法和CART算法的滚动轴承在线故障诊断模型准确率统计图;图9是基于BP算法的滚动轴承在线故障诊断模型准确率统计图;图10是基于SVM算法的滚动轴承在线故障诊断模型效果图。
根据该滚动轴承的时域图、频域图和历史数据以及故障诊断的准确率对比,3种机器学习算法均可实现对滚动轴承进行在线的故障诊断。但相比之下,基于SVM算法生成的滚动轴承在线故障诊断模型准确率最高,效果最好。为了进一步验证本文故障诊断方法的有效性以及实用性,重新整理了另一组滚动轴承的数据集进行了再次诊断效果实验验证。
数据集2:选取12 k(故障直径0007inches;负载2HP;电机转速1 750 r/min)驱动端轴承故障数据作为实验数据,实验数据分为4种类型,即轴承四种状态(正常状态、内圈故障、滚动体故障、外圈故障),每种状态数据各提取前1万条,并对数据进行预处理,100条原始数据作为一个样本,共计400个样本。滚动轴承正常状态、内圈故障、滚动体故障、外圈故障的样本量均为100个。
3种算法模型的训练样本和测试样本按4∶1的比例进行划分,即训练数据占全部实验样本的80%,剩余的20%样本全部作为本文3种算法模型的测试数据,如图11、图12和图13。
根据该滚动轴承的时域图、频域图和历史数据以及故障诊断的准确率对比,进一步验证了基于机器学习算法的滚动轴承在线故障诊断方法的可行性。
3.4 对比分析
表2 表3分别统计了2个数据集,4个故障诊断模型的诊断结果。
通过对比表2和表3,基于SVM算法模型的滚动轴承故障诊断准确率均高于C45算法、CART算法和BP算法,丰富完善的历史数据,有利于滚动轴承故障诊断模型的优化。
4 结论
本文提出的直接对振动信号进行关键特征筛选提取同时结合经典的C4.5算法、Cart算法、BP算法和SVM算法的滚动轴承故障诊断方法,可准确实现对滚动轴承的故障在线进行诊断,并且基于SVM算法的故障诊断模型诊断准确率均优于基于C45算法、Cart算法的滚动轴承诊断模型和基于BP算法的滚动轴承故障诊断模型。基于SVM算法的滚动轴承在线故障诊断方法,更适合滚动轴承的故障诊断;对工业上滚动轴承的在线故障诊断具有较强的实际应用意义。
参考文献
[1]何玲. 面向故障诊断的异构特征融合与在线不均衡分类研究[D]. 新乡:河南师范大学,2017.
[2]穆丽蓉,胡磊.轴承振动信号自适应诊断建模方法[J].船海工程,2020,49(03):97-100.
[3]BORGHESANI P, RICCI R, CHATTERTON S, et al. A new procedure for using envelope analysis for rolling element bearing diagnostics in variable operating conditions[J]. Mechanical Systems and Signal Processing,2013,38(1): 23-35.
[4]吕楠,姚平喜.基于BP神经网络的滚动轴承故障诊断[J].煤矿机械,2020,41(8):172-173.
[5]李从志,郑近德,潘海洋,等.基于自适应多尺度散布熵的滚动轴承故障诊断方法[J].噪声与振动控制,2018,38(5):173-179.
[6]JANSSENS O, SLAVKOVIKJ V,VERVISCH B, et al. Convolutional neural network based fault detection for rotating machinery[J]. Journal of Sound and Vibration,2016,377:331-345.
[7]趙庆恩,黄宏伟,冯坤,等.基于小波包能量-决策树的滚动轴承混合故障诊断[J].轴承,2016(6):43-46.
[8]梁治华,曹江涛,姬晓飞.基于EEMD和CS-SVM的滚动轴承故障诊断研究[J].机电工程,2019,36(6):622-627.
[9]冯玉芳,卢厚清,殷宏,等.基于BP神经网络的故障诊断模型研究[J].计算机工程与应用,2019,55(6):24-30.
[10] 程晓涵,汪爱明,花如祥,等.24种特征指标对轴承状态识别的性能研究[J].振动.测试与诊断,2016,36(2):351-358+406.
[11] 韩存鸽,叶球孙.决策树分类算法中C4.5算法的研究与改进[J].计算机系统应用,2019,28(6):198-202.
[12] 张磊. 基于BP神经网络的齿圈插齿工艺参数预测与优化[D]. 包头:内蒙古科技大学,2020.
[13] 丁雪红,石莉,李敏,等.基于BP神经网络的智能制造能力成熟度评价研究[J].青岛大学学报(自然科学版),2019,32(3):20-25+30.
[14] WANG Z Y, YAO L G, CAI Y W. Rolling bearing fault diagnosis using generalized refined composite multiscale sample entropy and optimized support vector machine[J]. Measurement,2020,156.
[15] 肖雅静. 基于支持向量机的滚动轴承故障诊断与预测方法研究[D].北京:中国矿业大学(北京),2019.
[16] 于婷婷. 基于BP神經网络的滚动轴承故障诊断方法[D].大连:大连理工大学,2008.
Online Fault Diagnosis of Rolling Bearing Based
on Machine Learning Algorithm
SUN Jin-meng, YU Zhong-qing, WANG Hai-ya
(School of Data Science and Software Engineering, Qingdao University, Qingdao 266071, China)
Abstract:
To addresses the problems of time-consuming, high labour cost and low efficiency of traditional fault diagnosis methods as well as the problem that modern fault diagnosis is too complex. In view of the time-consuming,high labor cost and low officiency of traditional fault diagonosis methods and the complexity of modern fault diagonosis, a method is proposed to directly extract key features from vibation signals and combine the classical C4.5 algorithm,Cart algorithm,BP algorithm and SVM algorithm to perform online fault diagonosis of rolling bearings. The research results show that the diagnosis methods based on C4.5 algorithm, Cart algorithm, BP algorithm and SVM algorithm model can identify and classify whether and what faults occur in the rolling bearing during operation with high accuracy, and can achieve good fault monitoring and fault diagnosis effect. The diagnosis accuracy of the fault diagnosis model based on SVM algorithm is better than the other three algorithms and is more suitable for the fault diagnosis of rolling bearings.
Keywords:
rolling bearing; fault diagnosis; machine learning algorithm; C4.5 algorithm; Cart algorithm; BP algorithm; SVM algorithm; predictive maintenance