APP下载

迁移学习和CNN 的电机故障诊断方法

2024-04-07谢锋云董建坤符羽刘翊肖乾

机械科学与技术 2024年3期
关键词:故障诊断卷积电机

谢锋云,董建坤,符羽,刘翊,肖乾

(1.华东交通大学 机电与车辆工程学院,南昌 330013;2.国家先进轨道交通装备创新中心,湖南 株洲 412001)

三相异步电机是旋转机械中重要的动力设备,被广泛应用于工程领域[1-2]。电机在运行过程中受负载、使用年限等影响,不可避免的产生故障,从而影响生产效率的同时,对经济效益及生命安全等问题造成巨大的影响[3]。因此对电机故障诊断并确定其工作状态有重要意义。

Hinton 等在2006 年提出深度学习相关概念和梯度消失问题的解决方法使其应用范围趋于广泛[4],大量学者开始将深度学习算法应用于机械设备的故障诊断领域。仝钰等提出一种基于格拉姆角差域和CNN 的轴承故障诊断模型,并取得了很好的效果[5]。丁承君等提出一种基于变分模态分解与深度CNN 相结合的特征提取方法并应用于滚动轴承故障诊断,实现了变工况情况下的滚动轴承故障类别[6]。雷亚国等提出了一种基于深度学习的机械健康监测的方法,并对齿轮箱进行了健康监测[7]。孙文珺等采用稀疏自动编码深度神经网络对电机状态进行识别,并获得较好效果[8]。王丽华等通过堆叠降噪自编码对实验数据进行训练得到特征编码,最终完成了电机状态的精准识别[9]。深度学习模型在进行故障诊断过程中可以自动对其进行深层次的特征提取以及最终的模式识别工作,从而很好的解决了传统机器机器学习模型十分依赖特征选择以及本身对选取的特征学习能力不足的缺点,为机械设备的故障诊断工作提供了一条新的道路。

在实际工作生产过程中,机械设备的故障诊断工作因时常缺少大量有效数据而往往存在较大难度。迁移学习作为一种新的机器学习方法应运而生,能把从某些领域上获取的知识迁移到与其相似的领域上,给缺少大量有效数据的问题提供一个新的思路[10]。文献[11-12]针对滚动轴承故障诊断中,存在训练样本不足的问题,提出了迁移学习与支持向量机(SVM)结合的识别方法,并对滚动轴承变工况状态进行了识别,并取得了良好的效果。沈飞等为了实现电机在目标域少量数据下对健康、转子弯曲、转子不平衡以及断条4 种状态进行有效识别工作而采用调整辅助振动数据权重的方法来帮助目标数据进行学习,并最终取得了较好的提升效果[13]。

虽然在机械设备的故障诊断中上述方法均获得了较好的效果,但是在电机故障诊断中一维CNN 的应用较少,并且没有与迁移学习相结合的例子。同时转子断条与轴承故障是三相异步电机的故障类型中较为常见的两种[14]。因此本文将三相异步电机作为研究对象,在不同工况下结合深度学习与迁移学习的相关知识对电机正常、轴承故障以及转子断条3 种状态进行故障诊断研究。

1 基本理论

1.1 CNN

CNN 始于20 世纪80 至90 年代,是目前流行的一种深度学习算法,具有很强的表征学习和分类能耐力,其避免了特征提取与数据重建等过程[15]。CNN 可以分为由卷积层、池化层(特征提取)以及由全连接层、分类器组成的识别层两部分。

其中卷积层完成的主要工作是对输入样本进行逐层特征提取工作,每层卷积层都设有多个卷积核的同时其参数由反向传播算法计算而得。卷积层因为权值共享特点使其计算量得以大大降低,从而满足了处理大数据运算的条件。而池化层所完成的任务是对卷积层提取的特征进行选择,两者在CNN 模型中的位置一般交替连接,这样的布局不仅可以控制过拟合,同时可以减少参数的训练从而加快了CNN 模型的训练速度。

池化层计算公式一般为

全连接层的主要工作是综合前面层提取的特征样本,并最终在分类器中完成模式识别工作。

1.2 迁移学习

迁移学习是一种在此领域进行学习所获得相关知识迁移应用到其他相似领域的一种方法。比如将在学习驾驶自行车的经验应用到学习驾驶电动车当中。

在使用现有的多种机器学习算法对数据进行分类或预测时往往需要收集大量的标记和未标记数据,大量的带标签数据才能保证训练模型的有效性和准确性,即在少量数据样本情况下,这些所建立的模型往往没有良好的预测和分类能力。在这种背景下,半监督分类的出现可以利用大量的未标签数据与少量的标签数据来建立良好的训练模型,达到分类和预测的目的。同时监督分类和半监督分类的每项任务都是从头开始学习的,在实际工程中的某些情况下无法获得大量带标签数据,此时就需要从现有的源领域中将建好的模型迁移到目标领域并进行改进以完成目标领域的任务。迁移学习的特点是可以将不同的领域之间进行数据的训练和预测任务,因此迁移学习可以在目标域带标签数据较少的情况下对其进行有效的分类和预测。表1 为迁移学习和传统机器学习在数据分布以及标签数据等方面的主要区别。

表1 迁移学习和传统机器学习的区别Tab.1 Differences between transfer learning and traditional machine learning

2 迁移CNN 电机故障诊断模型

2.1 CNN 结构设计

本文采用一维CNN 模型对三相异步电机的运行状态进行识别工作,其模型结构如图1 所示。首先将实验采集到的一维振动数据输入至已经建立好的一维CNN 模型当中,每个样本的大小为1 024 × 1,第一层卷积层设有64 个滤波器,以完成输入信号的初步特征提取工作。然后通过ReLu 函数将超过阈值的特征进行映射并通过最大池化层对其进行降维和采样。后续经过三层卷积层和两层池化层完成更深层次的特征提取工作。经过全局平均池化进行二维数据转一维数据的操作,经全连接层和分类层完成最终的分类工作。模型所用的损失函数为CrossEntropyLos 函数,CNN 模型的各层激活函数均为ReLu 函数,同时添加Dropout 层以防止模型过拟合现象的产生,且Dropout = 0.75。Epoch 和批次大小分别为30 和20。一维CNN 模型具体参数如表2 所示。

图1 CNN 模型结构图Fig.1 CNN model structure diagram

表2 CNN 模型参数Tab.2 CNN model parameters

2.2 迁移CNN

迁移CNN 模型是一种CNN 模型与迁移学习方法都进行使用的学习方式。前提假设源域数据拥有大量的有标签数据,而目标域只有少量的有标签数据。通过训练源域的数据,获得优化的深度神经网络模型,然后迁移此模型到目标域进行识别[16]。其具体流程如图2 所示。

图2 电机迁移CNN 学习流程图Fig.2 Flow chart of CNN transfer learning for motor

首先通过电机故障诊断实验平台采集电机的大量带标签实验数据作为源域数据,例如工况在900 r/min转速下采集电机风扇端3 种状态的原始振动数据并进行训练以获得一个CNN 模型,然后通过迁移学习当中模型迁移的方法将此CNN 模型迁移至目标域,即使用少量600 r/min 转速下3 种状态风扇端的带标签数据作为目标域数据对CNN 模型进行参数调优,在目标域中可使用优化后的的模型进行故障诊断。

3 实验平台搭建

本文验证提出模型的有效性,搭建了电机故障诊断实验平台,包括变频器、电机、齿轮箱、磁粉制动器、压电加速度传感器、数据采集卡、PC 机,以获得研究所需要的原始振动数据[1]。经过综合考虑,研究对象选用YE2-100L2-4 的三相异步电机,并搭配JZQ250 定轴齿轮箱,为测得变工况情况下振动数据,利用G7R5/P011-T4 变频器以达到调节电机转速的目的,同时利用YE6231 数据采集系统和CAYD051V 压电式加速度传感器以完成对振动数据的采集工作。

在完成相关实验设备的选择后,对实验方案进行设计,其工作关系如图3 所示,由三相异步电机带动齿轮箱,齿轮箱通过磁粉制动器增加负载,同时由变频器对电机转速进行调节,由压电式加速度传感器对电机进行相关数据采集,通过数据采集卡储存到PC 机。

图3 实验装置连接图Fig.3 Connection of experimental devic

电机故障诊断实验平台的搭建过程如下:

1)首先为确保实验过程中的安全问题,将空气开关安装在电源插头与变频器之间。

2)将变频器与电机相连,通过皮带连接电机和齿轮箱,再通过联轴器将齿轮箱与磁粉制动器相连,然后将电机、齿轮箱与磁粉制动器固定到底板上。

3)将加速度传感器固定在三相异步电机的轴向位置,并将传感器的信号输出线与采集卡的通道1连接[1]。

在齿轮箱数据采集过程中,需要通过变频器来调节电机的转速进而控制齿轮箱的转速,电机的转速为

式中:v为电机的转速;f与fmax分别为变频器的实时输出频率和最大输出频率,fmax=50 Hz。在实验过程中需将转速调节为600 r/min,调整变频器的输出频率为20 Hz。

电机故障诊断实验平台如图4 所示。

图4 电机故障诊断实验平台Fig.4 Motor fault diagnosis experimental platform

4 迁移CNN 的故障识别结果分析

采用转速为600 r/min、900 r/min 及1 200 r/min的振动数据,将加速度传感器采集到的实验数据分成A、B、C 这3 个数据集,每个数据集包含了电机3 种转速下3 种状态数据:正常、转子断条和轴承故障。利用源域数据进行模型训练时,训练集由每种状态525 个样本总共1 575 个样本组成,测试集由每种状态75 个样本总共225 个样本组成。对于源域所训练好的CNN 模型迁移到目标域进行微调时,训练集由每种状态10 个样本共计30 个样本组成,验证集由每种状态2 个样本共计6 个样本组成,测试集则由每种状态600 个样本共计1 800 个样本组成。

其中在CNN 模型训练过程为了提高分类的可靠性,将所搭建的CNN 模型连续训练10 次并取识别效果最好的模型作为迁移学习的载体,分别对A→B、B→A、A→C、C→A、B→C、C→B 共6 种情况下的迁移进行研究分析,以A→B 的迁移情况为例,数据集的具体参数设置如表3 所示。

表3 A→B 迁移数据集Tab.3 A→B migration dataset

以A→B 为例,选择数据集B 中3 种状态各10 组样本组成训练样本,各2 组样本组成验证集以判别模型拟合程度,各状态600 组样本组成测试集样本验证模型分类精度。模型运行10 次,具体识别结果如图5 所示,最高和最低的识别精度分别为98.72%和64.11%,可以看出两者相差34.61%,结果线上传统的CNN 模型在目标域带标签数据量较少的情况下存在着识别精度不稳定的问题,因此传统的CNN 诊断模型中,如果数据量少,使用迁移学习很有必要。图6 为模型运行第10 次时的测试结果混淆矩阵,结果表明:模型对电机转子断条故障的识别精度可以达到100%;对电机轴承故障的识别率只有90.83%;对正常状态的识别率最低,其中有541 个正常状态被错识别为电机轴承故障状态。

图5 小样本情况下传统CNN 的10 次识别结果Fig.5 10 recognition results of traditional CNN undersmall sample size

图6 B 工况使用传统CNN 测试结果混淆矩阵Fig.6 Confusion matrix of test results using traditional CNN in Condition B

取源域工况A 数据集中的电机风扇端3 种状态的实验数据样本各525 个组成训练集,3 种状态各75 组样本组成验证集完成CNN 模型的训练工作,将此CNN 模型直接对目标域B 中每种状态600 组的测试集进行测试,即不进行参数优化工作。其测试结果如图7 所示,可以看出此时的识别率为60.17%,CNN 模型对电机轴承故障状态的识别准确率可达100%,而模型在对电机转子断条状态的识别过程中, 有335 个样本被识别成了电机正常状态,265 个样本则被识别成了电机轴承故障状态,正常状态也有115 个样本被识别成了轴承故障,此结果证明了一维CNN 模型在源域数据和目标域数据分布不同时诊断精度受到很大程度的影响,同时也说明采用迁移学习很有必要。

图7 A→B 直接使用训练模型识别结果Fig.7 A→B recognition results using the training model

以A→B 工况为例,对迁移CNN 模型分别进行卷积层不冻结,冻结至卷积层1、卷积层2、卷积层3、卷积层4、全连接层以及冻结至Softmax 分类层,以研究不同网络层数的冻结对目标域的诊断精度的影响,同时为了减少模型在运行过程中的偶然性,每种方法运行10 次并计算平均值,不同冻结方法的测试平均识别率如表4 所示。

表4 不同冻结方法测试对比Tab.4 Comparison of tests using different freezing methods

由表4 可以得出:随着冻结层数的不断增加,模型的平均识别率不断降低的同时,单次模型训练时间不断加快,但是不冻结情况下,运行时间为1.79 s,即此时模型运行时间也是比较快的,故本文不对迁移模型进行冻结网络层操作,在电机故障诊断工作中直接使用目标域的训练集样本对迁移CNN 模型进行参数调优。

同样以A→B 工况为例,取A 工况数据集中3 种状态各525 组样本为源域训练样本对CNN 模型进行训练,3 种状态各75 组样本组成验证集用来验证CNN 模型的拟合程度。CNN 模型经过30 个Epoch 训练后迁移到目标域B,使用B 工况下的少量样本对迁移模型的参数进行微调,同时利用B 工况下大量测试样本来验证参数微调后的模型。图8为A→B 情况下10 次迁移学习的识别准确率,可以看出迁移学习模型的诊断精度较高,10 次运行的平均识别率为97.39%,同时识别效果比较稳定。图9为第10 次运行的识别结果混淆矩阵。

图8 A→B 情况下10 次识别结果Fig.8 10 recognition results in the A→B case

图9 A→B 情况下测试结果混淆矩阵Fig.9 Confusion matrix of test results in the A→B case

表5 为A→B 情况下最后一次参数微调得到的迁移模型的评价指标。

表5 A→B 情况下迁移学习模型指标Tab.5 Transfer learning model indicators in the A→B case

将本文所提方法与传统机器学习方法进行对比[17]。为减少实验的偶然性,将本文提出的迁移CNN 方法与传统CNN、VMD-SVM、VMD-KNN 以及VMDBP 进行对比,每种方法测试10 次,不同方法识别结果如表6 所示。其中传统CNN 方法为本文中进行迁前的模型,VMD-SVM、 VMD-KNN 和VMDBP 分别采用VMD 提取能量特征后输入SVM、KNN、BP 分类器的方法。

表6 不同方法对比Tab.6 Comparison of different methods

由表6 可以看出:在目标域训练样本较少的情况下,传统CNN 模型与其余机器学习方法各有优缺点,采用的VMD-BP 方法由于训练样本较少,识别率最低,而对不同工况的电机状态识别,本文采用的迁移CNN 比其余识别方法高,尤其是B→A 的工况下,识别率为98.43%,证明了本文所提的迁移学习和CNN 的电机故障诊断方法,与其余方法相比具有优越性。

5 结论

针对在实际工作中的电机故障诊断工作往往因为目标域带标签数据少而无法获得对其进行良好分类能力模型的问题,本文利用CNN 模型结合迁移学习方法提出了基于迁移CNN 的三相异步电机故障诊断方法。通过采集到的电机A 工况下大量带标签样本对搭建的CNN 模型进行训练拟合,把训练后所得的CNN 模型利用迁移学习迁移到B 工况下,并微调迁移后的模型参数,最终获得一个分类精度较高并且可以对B 工况下的样本有良好分类效果的 CNN 模型。同时传统CNN 诊断模型应用中,针对小样本数据测试的结果不佳问题,提出了使用迁移学习的必要性。并对是否冻结CNN 模型的网络层进行研究,结果显示CNN 最优的迁移模型是不需冻结网络层。最后通过对比传统CNN、VMDKNN、VMD-BP 等方法,证明了本文所提出的迁移CNN 模型对于三相异步电机故障诊断的可行性和有效性。

猜你喜欢

故障诊断卷积电机
基于3D-Winograd的快速卷积算法设计及FPGA实现
关于电机滚动轴承的选择与计算
瞻望电机的更新换代
欢迎订阅2022年《电机与控制应用》
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
电机隐忧
因果图定性分析法及其在故障诊断中的应用
一种基于卷积神经网络的性别识别方法
基于LCD和排列熵的滚动轴承故障诊断