掌桥专利:专业的专利平台
掌桥专利
首页

基于一维卷积神经网络的轴承故障诊断方法

文献发布时间:2023-06-19 11:39:06


基于一维卷积神经网络的轴承故障诊断方法

技术领域

本发明属于轴承故障诊断领域,具体涉及基于一维卷积神经网络(1D-CNN)的轴承故障诊断方法。

背景技术

现代工业设备都配备了相当数量的滚动轴承,滚动轴承是机械传动设备中极其重要的部件,一旦滚动轴承发生故障,将会严重影响到机械设备稳定高效的运行,甚至威胁到设备的安全以及使用寿命。45%-55%的机械故障是由轴承故障的损坏而引起的,为了保证机械设备可以正常可靠的稳定运行,对机械设备智能监测技术的需求从未停止过。

传统的轴承故障诊断需要具有丰富的机械知识以及较高的专家经验,设计耗时且不能保证通用性,不能满足轴承故障智能诊断的要求。滚动轴承故障诊断的机器学习方法首先从收集到的振动信号中提取故障特征,然后将提取的各种类型的故障特征映射的滚动轴承的不同故障类型中。滚动轴承故障诊断中常用的机器学习方法主要包括支持向量机(SVM)、K-近邻(KNN)、K-均值聚类等。但是这些机器学习方法的分类精度主要取决于特征提取步骤,而且对于不同的故障类型还要重新设计特征提取器,另一方面这些算法具有的只是结构简单的浅层结构,不能很好的学习复杂的轴承振动信号中的一些非线性关系。而深度学习方法在分析复杂和非平稳信号方面有着巨大的优势。

深度学习可以从复杂和非平稳的轴承振动信号中自动提取故障特征,近年来许多有关滚动轴承故障诊断的研究都利用了深度学习的方法。近些年来,卷积神经网络在模式识别领域取得了巨大的成功,其特点是可以自动的从信号或是图像中提取特征,取代了需要较高专家经验的繁琐特征提取工程。而其中的卷积神经网络(CNN)具有的局部感受野、权重共享和空间域子采样,不仅降低了网络的复杂度,也减少了过拟合的风险,大大提高了模式识别的准确性和效率。使用卷积神经网络(CNN)进行滚动轴承故障识别主要有两种方式,第一种方式是直接使用一维原始振动信号作为模型输入,第二种是将原始振动信号转换为二维图像作为模型的输入。与2D-CNN相比,1D-CNN的网络直接使用一维原始振动信号作为输入,无需任何的预处理。

为了提高滚动轴承故障诊断的准确性,本发明提出了一种基于一维卷积神经网络的轴承故障诊断方法。

发明内容

本发明提出了一种基于一维卷积神经网络(1D-CNN)轴承故障诊断方法。滚动轴承作为工业设备中的重要部件,对滚动轴承的健康状况进行监测和诊断是非常重要的。传统的滚动轴承故障诊断方法对轴承故障识别精度低,需要人工提取特征,泛化能力差。本发明提出的一维卷积神经网络(1D-CNN)方法不仅能准确诊断轴承故障,而且克服了传统故障诊断方法的缺点。在本发明中,提出的卷积核的数目随卷积核大小减小而减少的网络结构,有效提高了滚动轴承故障检测的准确性。

本发明的技术方案步骤如下:

第一方面,本发明提供了一种基于一维卷积神经网络的轴承故障诊断方法,用于通过检测收集到的轴承振动信号,来判断轴承是否故障以及故障的类型,其具体步骤如下:

S1:对电动机驱动端中的滚动轴承进行电火花人工损伤,形成若干类有损滚动轴承,不同类的有损伤滚动轴承具有不同的故障类型;

S2:分别针对无损伤滚动轴承以及每一类有损伤滚动轴承,通过部署在滚动轴承上的振动传感器,采集单一负载下的滚动轴承振动信号,形成带有故障类型标签的样本数据集;

S3:利用所述样本数据集对预先构建的一维卷积神经网络进行训练,得到一个最佳的滚动轴承故障诊断模型,所述一维卷积神经网络的结构依次由输入层、第一卷积层、第一Tanh激活层、第一最大池化层、第一Dropout层、第二卷积层、第二Tanh激活层、第二最大池化层、第二Dropout层、第三卷积层、第三Tanh激活层、第三最大池化层、第三Dropout层、第四卷积层、第四Tanh激活层、第四最大池化层、第五卷积层、第五Tanh激活层、第四Dropout层、Flatten层、Dense层、Softmax层和输出层;模型输入为滚动轴承振动信号,模型输出为故障类型的诊断结果;

S4:针对待诊断的滚动轴承,按照与S2中相同的做法将振动传感器部署在滚动轴承上,采集滚动轴承在负载下的振动信号,并将该振动信号输入所述滚动轴承故障诊断模型中,得到当前故障类型的诊断结果。

作为优选,所述S1中,电动机滚动轴承电火花人工损伤要求如下:

用电火花在电动机驱动端滚动轴承上加工单点损伤,其中损伤位置包括滚动轴承的内圈、滚珠和外圈,内圈和滚珠的损伤直径有多种,外圈的损伤位置沿外圈圆周方向设置多种但损伤直径保持一致,从而形成多类具有不同故障类型的滚动轴承。

作为优选,所述滚动轴承内圈和滚珠上的损伤直径为0.007英寸、0.014英寸和0.021英寸三种;所述滚动轴承外圈上的损伤位置分别位于外周的3点钟、6点钟和12点钟方向,损伤直径均为0.007英寸);共有9类具有不同故障类型的滚动轴承。

作为优选,所述滚动轴承的型号为SKF6205。

作为优选,所述S2中,针对每一类无损伤或有损伤的滚动轴承采集振动信号的方法如下:

S21:将振动传感器放置在电动机驱动端的轴承座上方,并连接16通道的数据记录仪,从而构成对滚动轴承进行振动信号采集的采集系统;

S22:对同一类滚动轴承施加相同的单一负载,电动机驱动端的滚动轴承振动信号由16通道的数据记录仪在12KHZ的采样频率下进行采集;

S23:将S22中采集的滚动轴承振动信号按照设定的样本信号长度分割为一系列样本信号,将样本信号与相应的故障类型标签一起构建为样本数据集。

作为优选,所述的单一负载为0HP、1HP、2HP或3HP。

作为优选,所述的一维卷积神经网络中,第一卷积层采用128个16×1的卷积核,第二卷积层采用64个8×1的卷积核,第三卷积层采用32个4×1的卷积核,第四卷积层采用16个4×1的卷积核,第五卷积层采用8个4×1的卷积核;第一最大池化层、第二最大池化层、第三最大池化层和第四最大池化层的池化核均为2×1,步长均为2;第一Dropout层和第二Dropout层的Dropout比率为0.3,第三Dropout层和第四Dropout层的Dropout比率为0.25。

作为优选,在利用所述样本数据集对预先构建的一维卷积神经网络进行训练时,数据集被划分为训练集和验证集,其中训练集按照8~256的batch_size大小送入一维卷积神经网络中。

作为优选,所述的batch_size大小优选为64。

作为优选,所述的一维卷积神经网络用于在单一负载下或者在跨不同负载下进行轴承故障诊断。

相对于现有技术,本发明的优点和有益效果在于:

为了提高滚动轴承故障诊断的准确性,本发明提出了一种基于一维卷积神经网络的轴承故障诊断方法,存在的有益效果主要如下:(1)原始轴承振动数据无需预处理即可进行使用;(2)本发明提出的卷积核数目随卷积核大小减小而减少的一维卷积神经网络(1D-CNN)网络结构,有效的提高了轴承故障诊断的准确性;(3)在1D-CNN网络模型中加入Dropout操作,有效提高了模型在跨负载的泛化能力;(4)与其他现有的相关工作比较,本发明的方案存在较为优越的性能,具有较高的准确性以及泛化能力。(5)实验结果表明本发明所提出的1D-CNN网络结构,在单一负载下平均准确率达到99.2%,在跨不同负载的平均准确率达到98.83%。

附图说明

图1为1D-CNN网络结构图。

图2为卷积核数目随卷积核大小减小而减少的网络结构合理性以及有效性实验对比图(其中“128→8”表示卷积核的数目依次为128、64、32、16、8;“8→128”表示卷积核的数目依次为8、16、32、64和128)。

图3为激活函数为Relu和Tanh时的损失函数曲线图。

图4为激活函数为Relu和Tanh时的准确率曲线图。

图5为激活函数为Relu和Tanh时在不同负载下准确率对比图。

图6为取不同batch_size时在不同负载下的准确率对比图(图中每一种负载对应的6条柱从左到右分别对应于8,16,32,64,128和256的batch_size)。

图7为有无Dropout操作对1D-CNN网络模型跨负载泛化能力的影响。

图8为1D-CNN网络模型跨负载泛化能力对比图(图中每一种跨负载对应的4条柱从左到右分别对应于1D-CNN、ShufflenetV2、MobileNet、ICN模型)。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图实例对本发明做进一步详细描述,应当理解,此处所描述的实施例仅用于说明和解释本发明,并不用于限定本发明。

在本发明中,提供了一种基于一维卷积神经网络的轴承故障诊断方法,该方法主要用于通过检测收集到的轴承振动信号,来判断轴承是否故障以及故障的类型,其具体步骤如下:

S1:对电动机驱动端中的滚动轴承进行电火花人工损伤,形成若干类有损滚动轴承,不同类的有损伤滚动轴承具有不同的故障类型。其中,具体的故障类型应当能够尽量覆盖滚动轴承的所有可能的故障类型,以便于后续的神经网络模型能够准确实现故障分类。

在本发明的一个较佳实施例中,电动机滚动轴承电火花人工损伤要求如下:

用电火花在电动机驱动端滚动轴承上加工单点损伤,损伤位置包括滚动轴承的内圈、滚珠和外圈三种。其中,内圈和滚珠的损伤直径有多种,优选设置三种0.007英寸、0.014英寸和0.021英寸,由于内圈和滚珠在运行状态下式转动的因此无需设置不同位置的损失。但外圈的损伤位置需要沿外圈圆周方向设置多种,而且损伤直径保持一致,本实施例中滚动轴承外圈上的损伤位置分别位于外周的3点钟、6点钟和12点钟方向,损伤直径均为0.007英寸。由此,从而形成一共9类具有不同故障类型的滚动轴承。滚动轴承的型号可根据实际需要选择,与待测的滚动轴承型号相同,本实施例设置为SKF6205。

S2:分别针对无损伤滚动轴承以及每一类有损伤滚动轴承,通过部署在滚动轴承上的振动传感器,采集单一负载下的滚动轴承振动信号,形成带有故障类型标签的样本数据集。

例如在本发明的前述较佳实施例中,一共有9类不同故障类型的滚动轴承,同时还有一类没有任何损失的正常滚动轴承,因此一共需要形成10个带有故障类型标签的样本数据集。

针对每一类无损伤或有损伤的滚动轴承采集振动信号的方法可采用如下具体步骤实现:

S21:将振动传感器放置在电动机驱动端的轴承座上方,并连接16通道的数据记录仪,从而构成对滚动轴承进行振动信号采集的采集系统;

S22:对同一类滚动轴承施加相同的单一负载,电动机驱动端的滚动轴承振动信号由16通道的数据记录仪在12KHZ的采样频率下进行采集;

S23:上一步采集的振动信号为按采样时间排列的时序数据,因此需要将S22中采集的滚动轴承振动信号按照设定的样本信号长度分割为一系列样本信号,将样本信号与相应的故障类型标签一起构建为样本数据集。在进行样本分割时,样本信号长度可以根据实际情况调整。

由于在实际工业应用中,设备故障样本往往难以收集,只能在一定的负载下收集相应的轴承故障。因此,本发明的S2步骤中也是采集了单一负载下的轴承故障数据用于训练后续的网络模型。该单一负载可以设置为0HP、1HP、2HP或3HP等。

S3:利用前述单一负载下采集的样本数据集,对预先构建的一维卷积神经网络进行训练,得到一个最佳的滚动轴承故障诊断模型。

本发明中为了实现轴承故障的准确监测,提出了一种一维卷积神经网络(1D-CNN),该网络结构中卷积核的数目随卷积核大小减小而减少,而且网络模型中加入Dropout操作有效提高了模型在跨负载的泛化能力。本发明所提出的1D-CNN网络结构,既可以用于在单一负载下进行轴承故障诊断,也可以用于在跨不同负载下进行轴承故障诊断,具有较高的灵活度。下面对该网络的结构进行详细说明。

如图1所示,本发明中的1D-CNN的网络结构依次由输入层、第一卷积层、第一Tanh激活层、第一最大池化层、第一Dropout层、第二卷积层、第二Tanh激活层、第二最大池化层、第二Dropout层、第三卷积层、第三Tanh激活层、第三最大池化层、第三Dropout层、第四卷积层、第四Tanh激活层、第四最大池化层、第五卷积层、第五Tanh激活层、第四Dropout层、Flatten层、Dense层、Softmax层和输出层。模型输入层的输入为滚动轴承振动信号,模型输出层的输出为故障类型的诊断结果。

在该一维卷积神经网络中,各层的具体网络参数可通过优化进行确定,本发明中经过优化确定各层参数如下:第一卷积层采用128个16×1的卷积核,第二卷积层采用64个8×1的卷积核,第三卷积层采用32个4×1的卷积核,第四卷积层采用16个4×1的卷积核,第五卷积层采用8个4×1的卷积核;第一最大池化层、第二最大池化层、第三最大池化层和第四最大池化层的池化核均为2×1,步长均为2;第一Dropout层和第二Dropout层的Dropout比率为0.3,第三Dropout层和第四Dropout层的Dropout比率为0.25。

需要注意的是,在利用样本数据集对预先构建的一维卷积神经网络进行训练时,可以按照常规的模型训练方式,将数据集被划分为训练集和验证集,训练集输入模型优化参数后再通过验证集进行验证,多次循环优化后即可得到最优模型参数。其中训练集优选按照8~256的batch_size大小送入一维卷积神经网络中,batch_size大小进一步可优选为64。

S4:针对待诊断的滚动轴承,按照与S2中相同的做法将振动传感器部署在滚动轴承上,采集滚动轴承在负载下的振动信号,并将该振动信号输入所述滚动轴承故障诊断模型中,得到当前故障类型的诊断结果。

下面将上述方法应用于一个具体的实例中,以展示其具体实现过程和技术效果。

实施例

本实施例中,基于一维卷积神经网络的轴承故障诊断方法具体步骤如下:

S1:对电动机驱动端中的滚动轴承进行电火花人工损伤:

S11:选择电动机驱动端的滚动轴承型号为SKF6205。

S12:用电火花在电动机驱动端滚动轴承上加工单点损伤,损伤位置为滚动轴承的内圈和滚珠(损伤直径为0.007英寸、0.014英寸和0.021英寸),以及滚动轴承外圈的3点钟、6点钟和12点钟(损伤直径均为0.007英寸)。

此处,选择合适的电动机驱动端滚动轴承,并且利用电火花单点加工滚动轴承故障损伤可以模仿实际工况中的轴承损失。常见的轴承损伤点在滚动轴承的外圈、内圈和滚珠之上,而且损失直径通常存在差异,因此本实施例设置内圈和滚珠的损伤直径为0.007英寸、0.014英寸和0.021英寸。但其中由于轴承外圈固定不动,为保证故障出现的随机性,所以分别在3点钟(@3:00)、6点钟(@6:00)以及12点钟(@12:00)进行单点电火花损伤。由此一共有9种不同类型的滚动轴承故障。

同时,本实施例中还有一类没有任何损失的正常滚动轴承,因此一共有10类滚动轴承。

S2:按照一定的方法将振动传感器部署在滚动轴承相应的位置上,进行样本数据采集:

S21:将振动传感器放置在电动机驱动端的SKF6205型号轴承座上方,并连接16通道的数据记录仪,从而构成对滚动轴承进行振动信号采集的采集系统。

S22:对同一类滚动轴承施加相同的单一负载,电动机驱动端的滚动轴承振动信号由16通道的数据记录仪在12KHZ的采样频率下进行采集。在本实施例中,为了验证本发明可以适用于不同的单一负载以及跨负载故障诊断,一共设置了多种负载,分别为0HP、1HP、2HP、3HP。每一种负载下,均对10种类型的滚动轴承进行滚动轴承振动信号的采集。

S23:针对每一种负载下采集到的10种类型的滚动轴承振动信号,分别将中采集的滚动轴承振动信号按照设定的样本信号长度分割为一系列样本信号,即可将样本信号与相应的故障类型标签一起构建为样本数据集。

本实施例中按照每个样本信号长度为1024个振动点进行分割,经过分割整理后,每种类型的轴承有100个样本信号,则0HP、1HP、2HP和3HP负载下分别有1000个样本信号;另外将4个负载下的样本信号进行混合,构成0123HP负载的数据集;

为了便于后续的模型训练、验证和测试,将0HP、1HP、2HP、3HP和0123HP负载的数据集都按照一定的比例划分为训练集、验证集和测试集。

此处,对轴承无损伤正常工作以及上述9种滚动轴承故障类型,共计10种滚动轴承工作类型分别在负载为0HP、1HP、2HP和3HP的情况下,使用16通道的数据记录仪在12KHZ的采样频率下采集电动机驱动端的滚动轴承振动信号。每个负载每种滚动轴承故障类型得到100个长度为1024的样本信号,每个负载下共计1000个滚动轴承振动信号,并且将4个负载下得到的滚动轴承信号进行混合得到一个具有4000个样本信号的新的数据集,具体的数据集情况如表1所示。上述5个负载情况的数据集按照6:2:2的比例划分为训练集、验证集和测试集。

表1

S3:针对每一种负载下的数据集,先将训练集作为1D-CNN网络模型的输入,对网络模型进行训练,再用验证集进行验证,满足准确性要求后得到一个最佳的滚动轴承故障诊断模型:

S41:分别将0HP、1HP、2HP、3HP和0123HP负载下的划分出的训练集各自作为1D-CNN网络模型的输入,对1D-CNN网络模型进行训练;采用验证集来对模型的具体效果进行反馈;

S42:根据S41中的训练集结果和验证集结果对1D-CNN网络模型的网络结构和参数进行调整;

S43:反复进行S42所述过程,得到一个最佳的基于1D-CNN的滚动轴承故障诊断模型。

需注意的是,在模型训练过程中,各负载的数据集对模型的训练时独立的,各自形成一个最佳的基于1D-CNN的滚动轴承故障诊断模型,以便于后续验证该网络模型的性能。

此处,经过反复多次实验,根据实验结果得出如图1所示的网络结构。具体的网络参数如下:在每个卷积层中采用一定数量以及尺寸大小合适的卷积核,以1的步长进行一维的卷积操作。详细的说,第1个卷积层采用128个16×1的卷积核,第2个卷积层采用64个8×1的卷积核,第3个卷积层采用32个4×1的卷积核,第4个卷积层采用16个4×1的卷积核,第5个卷积层采用8个4×1的卷积核,这5个卷积层都使用双曲正切函数Tanh作为激活函数。在第1、2、3、4个卷积层后边添加池化层,池化核为2×1,步长为2。在第1、2个池化层后执行Dropout操作,Dropout比率设置为0.3;第3个池化层后执行比率为0.25的Dropout操作;在第5个卷积层之后执行比率也为0.25的Dropout操作。

S5:将之前划分好的测试集代替实际应用中的待诊断的滚动轴承的振动信号数据,输入到最佳的1D-CNN网络模型中进行测试,评估模型性能,此评估分为多种形式,具体如下:

S51:在0HP、1HP、2HP、3HP和0123HP下分别对1D-CNN网络模型进行训练并通过之前划分的测试集进行性能评估;

S52:在1HP下进行训练,2HP和3HP进行测试;

S53:在2HP下进行训练,1HP和3HP进行测试;

S54:在3HP下进行训练,1HP和2HP进行测试;

最后对S51-S54所述过程得到的实验结果与其他方法进行比较,证明本发明所提出的方法具有较为优越的性能。下面将具体的结果展示如下:

i.网络结构

如图2所示的实验结果表明了,本发明中所提出的卷积核数目随卷积核大小的减小而减少的1D-CNN网络结构的合理性以及有效性

ii.网络参数选择

神经网络在数学上看是一个多层复合函数,如果没有激活函数,神经网络就会是一个线性的函数。但是样本并不一定都是线性可分的,所以要使用激活函数引入非线性因素,解决线性模型不能解决的问题。常见的激活函数有Tanh和Relu,Tanh在特征值相差明显时会有更好的效果,在不断的循环中会扩大特征的效果;Relu的特性会使输入为负值的一部分神经元的输出为0,减少了参数间的相互依存的关系,计算速度加快。为了探究Tanh和Relu对1D-CNN网络的影响,分别使用Tanh和Relu这两种激活函数在0HP负载下进行了实验比较,训练过程中得到的损失函数以及准确率曲线如图3,图4所示。

如图3和图4所示,当选择激活函数为Tanh时,随着迭代次数的增加,损失函数会更快收敛且更接近于零值,准确率曲线同样收敛较快且接近于1。为了进一步证明选择Tanh作为激活函数的正确性,如图5所示在0HP、1HP、2HP、3HP和0123HP负载下的准确率情况。

训练网络模型时,batch_size不仅会影响训练速度,也会影响准确率。较大的batch_size会加快训练的过程,但同时也需要更多的内存计算空间;较小的batch_size在训练的过程中,虽然运算速度较慢且会引入一些噪声,但是噪声的出现也有助于防止训练过程陷入局部最优。选择一个合适的batch_size对于模型是非常重要的。在本发明中,选择六种不同的batch_size(8,16,32,64,128,256)在不同负载下进行对比试验,实验结果如图6所示,当batch_size为8,16,32,64时的1D-CNN网络模型在不同负载下的的平均准确率均超过98%,而当batch_size为128,256时,不同负载下的平均准确率分别为97.28%和93.86%;当batch_size为64时,1D-CNN网络模型具有最高的平均准确率为99.3%。

iii.性能比较

在实际工业应用中,设备故障样本往往难以收集,只能在一定的负载下收集相应的轴承故障。因此,有必要利用单一负载下的轴承故障数据训练网络模型,使其能够识别其它负载下的轴承故障。在1D-CNN网络模型中加入Dropout操作,避免了过拟合现象,增强了网络模型的泛化能力,有无Dropout操作对1D-CNN网络模型的准确率影响如图7所示。(其中“1HP→2HP”表示使用1HP作为训练集,2HP作为测试集)

并且对基于1D-CNN网络模型在跨负载的泛化能力进行实验,并与Improvement ofShufflenet V2、MobileNet、ICN[1]、DFCNN[2]、PFC-CNN[3]进行比较,对比试验结果如表2和图8所示。

表2

实验结果表明本发明所提出的1D-CNN网络结构,在单一负载下平均准确率达到99.2%,在跨不同负载的平均准确率达到98.83%。

上述对比的方法具体做法参见以下参考文献:

[1]Liu,H.;Yao,D.;Yang,J.;Li,X.Lightweight Convolutional NeuralNetwork and Its Application in Rolling Bearing Fault Diagnosis under VariableWorking Conditions.Sensors2019,19,4827,doi:10.3390/s19224827.

[2]Zhang,J.;Sun,Y.;Guo,L.;Gao,H.;Hong,X.;Song,H.A new bearing faultdiagnosis method based on modified convolutional neuralnetworks.Chin.J.Aeronaut.2020,33,439–447,doi:10.1016/j.cja.2019.07.011.

[3]Zhu,X.;Luo,X.;Zhao,J.;Hou,D.;Han,Z.;Wang,Y.Research on deepfeature learning and condition recognition method for bearingvibration.Appl.Acoust.2020,168,107435,doi:10.1016/j.apacoust.2020.107435.

相关技术
  • 基于一维卷积神经网络的轴承故障诊断方法
  • 基于循环相关熵和一维浅卷积神经网络的轴承故障诊断方法
技术分类

06120113007394