APP下载

基于降噪自动编码器与一维卷积网络的风机故障诊断方法

2023-01-18王挺韶季天瑶姜雨滋王瑾

电测与仪表 2023年1期
关键词:编码器风机故障诊断

王挺韶, 季天瑶, 姜雨滋, 王瑾

(华南理工大学, 广州 510640)

0 引 言

如今,人们对风能的利用与日俱增,促使了风力发电机的广泛安装。为了更好地利用风力资源,风力发电机通常安装在风力资源丰富的地区。然而,恶劣的工作环境增加了风机各种故障的风险,组件的振动、腐蚀和温度变化都会影响风力发电机的发电能力,并可能导致电力系统的严重故障。与此同时,对风机进行非计划维护的代价高昂。为了降低这一成本,避免风机潜在不可逆损害,一种有效的方法是尽早发现故障,这可以为主动容错控制(Active Fault Tolerant Control,AFTC)系统提供重要的控制依据,以保证风电机组的可靠运行。因此,采用先进的风机故障诊断与隔离(Fault Diagnosis and Isolation,FDI)方法也非常必要[1-3]。

风机的故障诊断方法主要分为两大类。一类是基于模型的方法,另一类是基于数据驱动的方法。基于模型的FDI方法[4]研究风机的物理特性,并建立数学模型,通过实际系统和正常系统的数学模型之间的差异来对故障进行诊断。然而,由于风力发电机组是一个复杂的系统,很难对风力发电机组进行精确的数学描述,所以很难避免模型与实际情况的不匹配。此外,不确定性的干扰,如测量,噪音等随机因素对残差的评估和决策也带来负面影响。这些不可避免的缺点限制了大多数基于模型的方法在实际应用中的有效性。基于数据驱动的故障诊断方法[5-6]在近几年也得到广泛的发展,主要可分为基于机器学习的方法与基于神经网络的方法。基于机器学习的方法,需要对原始信号处理进行处理,如将信号进行小波分解或者经验模态分解,再将分解的特征作为机器学习模型的训练数据进行分类。基于神经网络的方法,如基于深度置信网络(Deep Belief Networks,DBN)的诊断方法可以不用对数据进行特征处理,借助神经网络本身能对数据进行特征学习的能力,实现故障诊断。然而DBN方法没有充分利用数据的时序特征,在噪声下的表现仍有待提高。为此,提出一种基于一维卷积网络(1-Dimension Convolutional Network, Conv1d)与自动降噪编码器[7](Denoise Auto Encoder Decoder, DAE)相结合的数据驱动故障诊断模型。

为了验证模型的性能,首先使用基准风机模型产生仿真数据,并在获得仿真数据的基础上,与基于模型的方法进行了对比,基于模型的对比算法包括估算法[8](Estimation-Based Solution,EB)、一般故障模型法(General Fault Model Solution,GFM)、可逆计数器法[9](Up-Down Counter Solution,UDC)和观测器与卡尔曼滤波器相结合法[10](Combined Observer and Kalman Filter Solution,COK)。同时也和其他数据驱动方法进行了对比,主要包括DBN、随机森林算法[11](Random Forest, RF)和长短时记忆网络(Long-Short Time Memory Networks, LSTM)。实验结果表明,文中模型在准确度、鲁棒性和速度上都具有很好的表现。

1 基准风机模型介绍

出于研究的需要,文献[1]提出了一个风机基准模型,该模型已经得到相关研究人员的广泛认可,其组成如图1所示。

图1 基准 风机模型

由图1可知,基准风机模型由四个子系统组成[12]。其中,桨距系统是风机控制桨距的核心系统,通过控制桨距角实现对功率的控制;传动系统负责将叶片转动产生的机械能传递到发电机端,起到能量传递的作用;控制器既能控制桨距系统,又能控制发电机,因此能根据风速来调节风机的功率。发电机与变频器模块则是负责将机械能转换成电能,并控制电能频率的模块。上述各个模块中状态量的物理意义见表1。

表1 风机变量概述

在Simulink仿真系统上建立上述风机基准模型,并通过传感器收集这些数据,随后通过卷积神经网络来提取传感器数据的时序特征,从而挖掘传感器数据与故障之间的关系,实现对故障的有效诊断。

2 故障诊断的总体设计

仿真设置主要参考了文献[5]的设置,并着重与文献[5]进行了对比。在文献[5]中,设置了三大类故障,总计9种故障类型。所有的故障均为微小故障,分别为:传感器故障、执行器故障、系统故障。三种故障类型的数量分别为5种、 3种、 1种。具体的设置见表2。

表2 故障的设置与概述

在故障数据采集中,仿真时间为4 400 s,每一种故障的持续时间为100 s,在故障发生区间的选择上,为了充分模拟现实条件下故障发生的情况,将故障发生的区间尽可能分散到仿真的区间中,尽量减少因为故障区间设置不合理导致的实验结果偏差。为此,在仿真过程中将9个故障的设置集中在不同的区间。选取了等分的区间: [0, 2 000]、[1 000, 3 000]、 [2 000, 4 000]和[3 000, 4 400],在此基础上,将9个故障分散在区间[0, 4 400]中,因此将获得5个故障数据集。由于是对单个传感器故障进行识别,在每个故障数据集中,传感器故障区间将不会重叠,保证了每一时刻最多只有一种故障发生。最后的实验结果,是这5组数据得到的结果的平均值。

2.1 训练数据的预处理

选用了风力发电机中所有与表2有关的传感器数据作为训练数据。这些数据可以表示为多变量的时序数据:

(1)

(2)

(3)

在对数据进行归一化后,还需要将这些数据按照相同的时间聚合起来,由于传感器总共15个,因此特征维度为15。同时,还需要对数据进行滑动窗口大小的选择并确定序列的长度。数据采样频率为100 Hz,在滑动窗口和序列长度的选择上,选择了使用5 000个样本的少量数据集进行初步训练,从而确定序列长度与滑动窗口的大小。初步训练的数据集规模极小,网络的模型较为简单,仅为一层一维卷积网络和全连接层,训练的结果仅供滑动窗口大小和序列长度的选择提供参考。在试验的过程中,分别选取了32、50、64、128帧的序列,以及5、10、20帧的滑动窗口长度,两两组合,构建训练数据进行训练。在经过短暂的训练后,发现50为合适的序列长度,滑动窗口k合适长度为5。最终的训练集S*可以表示为:

(4)

(5)

式中k为滑动窗口长度,k=5m-4,m∈+。

2.2 降噪自动编码器

原始的自动编码器(Auto Encoder Decoder, AE)是一种简单的由两层全连接层构成的前馈神经网络[13]。这两层网络分别对应了编码器和解码器。自动编码器被用于对原始数据进行降维,通过将编码器的输出向量限制在较小的维度,可以将原始的稀疏数据嵌入到更小维度的空间当中,从而实现数据的降维。而解码器的功能对应着将低维空间的特征数据还原为原始信号,实现对信号的重构。

图2 降噪自动编码器原理

其中h为低维特征空间,在神经网络中是一个经过训练的隐藏层。可以表示为:

(6)

式中sigmoid为激活函数;W,b分别为编码器的权重和偏置。因此,针对一个信号,可以对其加入高斯噪声,并以原始信号为目标进行训练,从而可以得到一个能表征该数据特征的网络。这层网络能对噪声信号进行重构,实现滤波的功能。滤波的过程也是神经网络前向计算的过程:

x=sigmoid(W′h+b′)

(7)

式中W′和b′分别为解码器的权重和偏置。文章基于降噪自动编码器,针对每个故障信号训练了一个对应的降噪自动编码器,在训练自动降噪编码器的过程中,对原始信号加入20 dB的高斯噪声,并对传感器数据进行逐个训练,分别得到与传感器数据对应的降噪编码器。

2.3 基于一维卷积神经核的故障诊断网络

卷积神经网络(CNN)模型,一般指二维卷积核(Conv2d),常用于图像的识别[15-16],该卷积核接受一个二维输入,表示图像的长与宽,在图像上长宽两个维度上进行卷积的过程则称为特征学习。

同样的过程也适用于一维数据。对一维序列进行卷积从序列数据中提取特征并映射序列的内部特征。一维卷积对于从整个数据集的定长段中提取特征是非常有效的,得益于最大池化层,一维卷积对序列中特征的位置并不敏感,非常适合对发生在不同时刻的故障进行特征提取。

基于一维卷积核的时间序列特征提取的原理如图3所示,由于要充分提取序列的特征,可以设置多个卷积核进行卷积运算,从而提取不同时间尺度的特征。对于第k个卷积核,卷积计算为:

(8)

(9)

图3 卷积核提取时序特征过程

在卷积层进行卷积之后,加入最大池化层(Max Pooling Layer),最大池化层的作用是对卷积进行降采样的操作。在降采样的区域内,最大值将保留,而在区域内的其他值将设为0。当卷积核过多时,虽然能提取更多的特征,但同时隐藏层的层数会增加,也会产生大量的与特征无关的数据。为了减少其他数据对特征的影响,同时减少计算的复杂度,在卷积层后加入最大池化层是十分必要的操作。

2.4 构建故障诊断决策机制

将风机的故障诊断作为一个深度学习分类任务[17]。分类任务作为经典的监督式学习,需要对9类故障的类别进行标签化处理。使用了独热编码对标签数据进行编码。对于维度为1*9的标签Li,其故障类别为k,则第k个元素值为1,而其他元素值为0。引入独热编码解决了由于分类数据在数值上的设置不合理而导致的类别不均衡的问题,对于故障类别的诊断有着很好的效果。

同时采用了分类交叉熵(Categorical Cross Entropy, CCE)作为模型的损失函数。分类交叉熵的定义为:

(10)

式中C为所有故障类别;ti为类别i的概率;f(s)i为网络对于样本s预测其为类别i的值,当使用softmax作为激活函数时,f(s)i为:

(11)

为了解决模型的泛化性不强的问题,使用了L1正则化作为正则化项,加入L1正则化的损失函数可以表示为:

(12)

式中ω为网络中所有的权重,λ为超参数,用于控制模型的复杂度。同时,在卷积网络层与池化层之后加入了Dropout层,Dropout层的作用是以一定的概率将神经元的权重置为0来模拟外界扰动对网络带来的影响,从而起到了提高泛化性能的作用。虽然z正则化与Dropout两种方法都用于改进模型的泛化性能,但这两种方法在本质上仍存在区别。L1正则化是对整个模型的参数进行调节的手段,起到降低模型复杂度的作用。而Dropout则是给模型特定的一层带来随机扰动,提高该层网络抗干扰的能力,因此仅影响模型的一层网络。

2.5 基于dAE-Conv1d方法的优势

通过上述建模并从理论上分析,得到文中模型具有以下优势,使得其更加适用于风机故障诊断这一应用:

(1)传统的基于模型的方法需要对不同的风机模型进行物理特性分析,对于不同的故障也需要建立不同的数学模型,比较费时费力。而与传统的基于模型方法相比,基于dAE-Conv1d的神经网络框架仅仅依靠检测数据,减少了建模的工作量,具有普适性。同时,由于一维卷积通过设定卷积核的大小,从而能在时序数据上提取多种特征,因此能够构建同时识别多种故障的多分类的神经网络模型,并行的识别过程大大减少了诊断时间。实验中,使用了15种时序数据来对9种特征进行分类。但一维卷积神经网络的性能还有待挖掘,还能进行更多特征,更多故障类型的识别。因此在诊断的速度和精度上所提网络都比基于模型的方法优异;

(2)与传统的机器学习模型相比,所提出的模型也具有诸多优势。传统机器学习模型,如支持向量机、随机森林等,需要进行数据特征特构建。特征工程的建立也是一个难度较高的过程。而所提模型基于一维卷积神经网络,其能提取时序特征的特性减少了前期的特征工作,只需要进行网络参数的调整和训练数据集的重构,则能适应不同的传感器数据、不同故障类型的诊断场景。同时在训练速度上,文中模型也比随机森林等传统的机器学习算法有优势,能处理更大更复杂的数据集,并在性能上不会下降;

(3)与其他神经网络模型相比,文中模型也有优势。主要体现在对噪声的敏感度上,所提模型由于加入了降噪自动编码器,使得模型在噪声环境下也能保持良好的性能。同时与深度置信网络和长短时记忆网络相比,一维卷积网络的训练时间更短。深度置信网络在更新参数时需要进行贪心搜索,使得参数更新相对缓慢。至于长短时记忆网络,参数众多,难以调节,训练速度更加缓慢。同时,上述两种神经网络在性能上与所提模型相比也没有优势;

(4)自动降噪编码器实质上是神经网络对数据特征的充分学习,训练后的网络能对给定的信号进行降噪和还原,且不依赖于硬件和特定的信号处理方法,只需要将训练的模型数据部署到服务器上,就能实现对信号的还原,具有较高的实用性。

3 实验结果与分析

在模型的验证方面,主要选择了三个方面对模型的性能进行验证,包括:在相同故障下与基于模型和基于机器学习诊断方法的对比,并着重与DBN算法进行了对比;验证模型在噪声条件下的性能;验证模型的诊断速度。

在第一个对比实验中,数据为无噪声数据,因此没有使用自动降噪编码器对数据进行降噪,而在第二个实验中,则使用了降噪编码器。

具体的评价指标为精度(Precision, Prec)、召回率(Recall, Reca)和F1值(F1-Score, F1)。评价指标的具体定义如下:

(13)

(14)

(15)

式中TP为真阳率,表示对正样本预测为正的比值;FP为假阳率,即对于负样本,预测为正比值;FN为假阴率,表示对于正样本预测为假的值。为了与其他模型进行对比,选用漏检率(Miss Detect Rate, MRD)来代替召回率,作为检验模型灵敏度的标准。漏检率与召回率的关系为:

(16)

3.1 模型的对比验证

选用EB、UDC、GFM方法与文中的模型进行对比,由于基于模型的方法不能检测系统故障,因此仅对前8个故障进行了诊断。模型对比验证的结果见表3。

表3 本模型与基于模型诊断方法对比

由表3结果可知,文中模型与其他三个基于模型的算法相比,在性能上处于明显的优势,即便在个别故障中的个别指标不如某个模型检测方法,如故障2中的UDC算法的准确率高于文中模型,但该算法在漏检率和F1值的表现上远差于所提算法。可以看出,文中模型在诊断的准确度上远优于基于模型的方法,特别是在平均漏检率和平均F1值上优势明显。

在与基于模型方法比较的同时,也与其他机器学习模型进行了比对,着重对比了DBN与LSTM网络。其中,LSTM的架构类似所用模型,仅用门控循环单元(Gate Recurrent Unit,GRU)来替换卷积神经网络层,并移除掉最大池化层。同时,还使用了随机森林(Random Forest, RF)作为对比,结果如表4所示。

表4 本模型与基于数据驱动方法对比

由表4可知,文中模型在性能上优于其他机器学习模型。与DBN相比,在无噪声条件下本模型的每个指标都优于DBN。而传统的时序神经网络LSTM,在识别这些故障时虽然也有较好的效果,但训练的时间过长,不适合在生产环境中应用。同时,结合表3与表4的结果可以知道,基于数据驱动的机器学习方法在平均性能上要优于基于模型的方法。这时由于基于模型的方法仅针对个别故障,因此在诊断结果上,会出现对部分故障诊断结果十分准确,而对于个别故障,则几乎不能实现有效诊断的情况,这也是基于模型的诊断方法存在的缺点。而对于数据驱动的模型,在有大量有效数据的前提下,都能对相应的故障类型做出准确判断。但这些数据驱动的模型都需要足够多的数据来支撑模型的性能,这也是数据驱动模型的不足之处。

综合以上实验可以发现,在无噪环境下,DBN的性能虽然稍落后于本模型,但也能实现较高准确度的诊断。而本模型的性能优于所有参与对比的其他模型。因此,为了进一步比较文中模型与DBN之间的性能差异,在此基础上对文中模型与DBN进行鲁棒性检验。

3.2 鲁棒性校验

在鲁棒性校验中,分别向故障数据加入35 dB、30 dB、25 dB、20 dB、15 dB、10 dB、5 dB的高斯噪声,使用三组模型进行5次实验,并以平均F1值为最终的指标来进行比对。三组模型分别为:Conv1d、dAE+Conv1d和DBN。最终的比对结果如图4所示。

图4 文中模型与DBN鲁棒性对比

由鲁棒性校验的结果可以得知,文中模型在噪声条件下的性能要明显由于DBN。虽然DBN在低噪声下还能保持定的准确度,但其性能在信噪比为30 dB时就出现了明显的下降。而加入了降噪自动编码器的文中模型在信噪比为5 dB时F1值仍然可以保持在0.9左右,这说明本模型具有很强的鲁棒性。

3.3 模型诊断时间的验证

在网络模型已经训练好的前提下,进行了模型诊断时间的验证。由于网络训练结束后其结果以h5文件格式保存于本地硬盘中,在诊断开始时,需要进行模型的加载,加载的过程需要耗费一定的时间。因此,诊断过程可以简要划分为:加载自动降噪编码器模型;加载卷积神经网络模型;信号降噪;故障诊断。使用17 000条故障数据作为输入,将模型加载的时间和诊断时间考虑在内,在进行5次实验后,记录平均的诊断时间,诊断时间为降噪时间与故障诊断时间的和,结果见表5。

表5 文中模型诊断速度

虽然模型加载时间稍长,总共消耗9 s, 但由于模型只需要加载一次,之后的诊断将不会进行模型的加载,因此不会对故障诊断的耗时造成太大影响。而降噪编码器要对每一个信号进行一次降噪,耗费时间稍长,导致平均诊断时间相较于无降噪时有明显提高,但考虑到降噪环节对诊断的结果有明显的提升,因此时间消耗的小幅提高也在接受的范围之内。

4 结束语

为了挖掘风机在发生故障时其传感器数据的时序特征,实现在数据驱动下对风机故障的诊断。提出了一种基于降噪自编码器和一维卷积神经网络的故障诊断模型。对于所有传感器的时序数据,构建一维卷积层对多个特征进行并行提取,并使用全连接层处理提取出来的特征,实现对故障的诊断。相比于基于模型的方法只能在个别故障上进行识别,文中模型对于设定的故障,都有十分优异的表现,同时在精度与鲁棒性上也全面超过了深度置信网络。然而,由于只关注于单个故障,在设置故障时没有考虑可能同时发生的多个故障,因此,后续将继续研究基准风机型,构建更加复杂的故障数据,并研究基于数据驱动的故障多分类问题。

猜你喜欢

编码器风机故障诊断
融合CNN和Transformer编码器的变声语音鉴别与还原
基于包络解调原理的低转速滚动轴承故障诊断
数控机床电气系统的故障诊断与维修
风机折翼“倒春寒”
基于双增量码道的绝对式编码器设计
风机倒塔事故为何频发?
应用旋转磁场编码器实现角度测量
某热电厂风机电机节能技术改造
因果图定性分析法及其在故障诊断中的应用
基于数字信号处理的脉冲编码器