
本发明属于风力发电机故障预测技术领域,涉及一种基于深度学习的风电机组故障预测方法,尤其涉及一种针对风电机组scada数据的基于深度学习的风电机组故障预测方法。
背景技术:
随着环境污染与能源危机问题日益凸显,风能作为一种清洁的可再生能源,越来越受到世界各国的重视,近年来得到了快速的发展。风电产业在装机容量不断增长的同时,也面临一些新的问题。由于受风资源分布、自然环境以及风电机组自身的体积和工作方式等因素的限制,风电机组多分布于人迹罕至且环境较为多变的地区,容易遭受极端环境因素干扰,对风电机组的正常运行造成了极大的影响。据统计,风电机组的运行维护费用以及因为故障停机而造成的损失约占整个风电场发电成本的10%-20%。因此,准确实现对风电机组的运行故障进行预测,对于灵活提前处置并提高风电机组运行可靠性和降低损失具有重要意义。
风电机组故障预测方法一般分为基于模型的预测方法和基于数据的预测方法。基于模型的故障预测方法通过分析风机部件的物理特性建立风机部件的物理模型,根据模型参数的变化情况实现故障预测,如通过建立风机齿轮箱模型分析其故障物理机制,从而提取不同故障状态下的故障特征进行齿轮箱故障预测。基于数据的故障预测方法主要通过对风电机组时序运行数据,即数据采集与监视控制(supervisorycontrolanddataacquisition,scada)数据的大数据分析实现故障预测,具有数据量大、参数类型丰富、部件来源广以及高实时性的特点。使用scada长期时序数据作为风电机组运行状态预测的主体可以更有效的协同分析风电机组中不同部件对风电机组故障的影响,并且能够反映故障状态的时序变化,进而提高预测精度。例如,使用线性回归的主轴承健康状况预测,使用前馈神经网络的发电机组状态预测等方法,相对于传统基于状态监测数据的方法均在预测准确率上有了较大的提升。
虽然上述方法取得了较好的效果,但当前风电机组故障预测方法也仍存在较大的不足及提升空间。基于模型的故障预测方法虽然有着预测效果好且可解释性强的优点,但模型设计高度依赖于专业从业者在特定环境下模型设计的有效性,当风电机组设备或外部环境发生变换时,都需要专业从业者介入并重新对模型进行调整及优化,泛用性及动态适用性较差。基于scada数据的预测方法因通过分析时序数据本身的特征来预测故障则具有更强的泛用性,且为长周期精确预测提供了更好的保障。但由于当前风机预测方法缺乏对海量时序数据的有效处理手段,在故障数据的特征学习能力、长周期高实时状态数据的处理能力、预测效率及精度等方面都存在局限性,因此当前的风电机组故障预测方法仍存在进一步改进和提升的空间。
技术实现要素:
为解决现有技术中的不足,本发明提供一种基于深度学习的风电机组故障预测方法。一方面,通过将长周期内的序列scada数据组成“运行数据图”,并使用卷积神经网络(convolutionalneuralnetworks,cnn)对其进行特征提取,以达到提高数据吞吐率、自学习数据特征并降维的目的;另一方面,考虑风电机组时序数据的特征,本发明使用循环神经网络作为故障预测主体,由于其独特的层内神经元连接结构具备记忆性与参数共享特性,能够以较高的效率对时间序列任务的非线性特征进行学习。在本发明中使用性能优秀的长短期记忆循环神经网络网络(longshort-termmemory,lstm),其复杂的记忆模块与内部链接结构具备更强的记忆能力,也更适合于处理风电机组故障预测时间序列中间隔和延迟相对较长的任务。
为了实现上述目标,本发明采用如下技术方案:
一种基于深度学习的风电机组故障预测方法,所述故障预测方法针对风电机组运行状态的scada数据,所述故障预测方法基于故障预测模型进行故障预测;
所述故障预测模型包括特征提取模块、故障预测模块和全连接层;
所述特征提取模块由多层卷积神经网络结构构建,用于提取多帧运行数据图的故障特征;
所述故障预测模块由多层循环神经网络结构构建,用于将单帧的故障特征整合为连续的时序故障特征;
所述全连接层,用于整合时序故障特征并输出故障预测结果;
所述故障预测方法包括以下步骤:
s1:将风电机组运行状态的scada数据重组为运行数据图;
s2:使用卷积神经网络提取运行数据图中的故障特征;
s3:以循环神经网络作为故障预测模型主体,将单帧故障特征转化为时序故障特征;
s4:通过全连接层完成对时序故障特征的整合,获得故障预测结果。
本发明进一步包括以下优选方案:
上述的故障预测模型的训练方法,包括以下步骤:
1)准备训练数据;
2)预测指定时间内的风电机组故障情况;
3)计算故障预测模型损失;
4)更新故障预测模型权重;
5)判断损失值或评价指标故障预测准确率是否稳定在阈值范围内或者判断训练次数是否达到最大迭代次数上限,若满足条件,则执行步骤6),否则训练次数加一并返回执行步骤2),所述训练次数初始值为零;
6)输出故障预测模型文件。
上述的故障预测模型的测试方法,包括以下步骤:
1)准备测试数据,所述测试数据集不进行裁剪;
2)加载故障预测模型文件,调用训练好的故障预测模型文件,将测试数据输入故障预测模型;
3)接收风电机组实时运行数据,预测指定时间内的风电机组故障情况。
上述的准备训练数据,具体为:将训练数据按指定的时间间隔重组为相应的单通道运行数据图并作为故障预测模型的输入,同时将需要预测的指定时间周期后的风电机组故障结果作为与之相对应的模型输出。
上述的预测指定时间内的风电机组故障情况,包括以下步骤:
接收一定时间间隔的多张运行数据图;
通过深层卷积神经网络对所述运行数据图进行特征提取,将低层的数据分布信息转化为高层的故障特征;
循环神经网络对故障特征进行时序特征转化,将各个时间片段的故障特征整合为统一的时序故障特征;
由全连接层(fc)对时序故障特征进行综合,获得故障预测结果。
上述的计算风电机组故障预测模型损失具体为:
使用交叉熵(crossentropy)作为模型的损失函数计算输出值与目标值之间的误差。
上述的更新风电机组故障预测模型权重所用的模型优化器为adam算法。
上述的多层卷积神经网络采用同层权值共享的策略降低故障预测模型的训练难度,并提高运行速度。
上述的多层循环神经网络结构中,输入层循环神经网络具有等同于输入帧数的神经元个数,从而完成对每一帧的故障特征进行前后关联处理。
上述的全连接层为单层全连接层,所述循环神经网络为长短期记忆循环神经网络网络。
步骤s1所述将风电机组运行状态的scada数据重组为运行数据图,包括以下步骤:
s101:归一化处理所述风电机组运行状态的scada数据,将数据映射至[0,1]区间;
s102:将归一化处理后的数据以时间顺序排列重组为运行数据图。
步骤s2所述使用卷积神经网络提取运行数据图中的故障特征,包括以下步骤:
s201:接收一定时间间隔的多张x(m)×t(n)维的单通道运行数据图作为卷积神经网络的输入;
s202:通过卷积神经网络对运行数据图进行特征提取,每张单通道运行数据图转化为x(m)×1维的故障特征。
步骤s3所述以循环神经网络作为故障预测模型主体,将单帧故障特征转化为时序故障特征,包括以下步骤:
s301:以步骤s202输出的故障特征作为循环神经网络的输入;
s302:将各个时间片段的故障特征整合为统一的时序故障特征。
步骤s4所述通过全连接层完成对时序故障特征的整合,获得故障预测结果,具体为:
将风电机组是否发生故障视为一个二分类问题,在全连接层,通过softmax激活函数,获得是否故障的预测结果。
本发明所达到的有益效果:
通过将风电机组运行状态数据重组为“运行数据图”,使用卷积神经网络完成特征提取,并通过与长短期记忆循环神经网络创新整合实现对海量时序风电机组运行状态图的有效处理,进而提高预测的时间跨度以及长周期故障预测的精度。
附图说明
图1为本发明的故障预测模型结构图;
图2为本发明方法的整体流程图;
图3为本发明实施例中scada数据重组为“运行数据图”示意图;
图4为本发明的故障预测模型训练及测试流程图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明的一种基于深度学习的风电机组故障预测方法,所述故障预测方法针对风电机组运行状态的scada数据,所述故障预测方法基于故障预测模型进行故障预测;
如图1所示,所述故障预测模型包括特征提取模块、故障预测模块和全连接层;
所述特征提取模块由多层卷积神经网络结构(即深度卷积神经网络)构建,用于提取多帧运行数据图的故障特征;
实施例中,卷积神经网络部分需要对全部的k帧运行状态图进行特征提取,为了提高效率,可采用多组卷积神经网络结构同层权值共享的策略降低模型的训练难度,并提高运行速度;
所述故障预测模块由多层循环神经网络结构构建,用于将单帧的故障特征整合为连续的时序故障特征;
实施例中,所述循环神经网络为长短期记忆循环神经网络网络;循环神经网络需要分别对每一帧的故障特征进行前后关联处理,因而输入层循环神经网络具有等同于输入帧数k的神经元个数。
所述全连接层,用于整合时序故障特征并输出故障预测结果;
实施例中,所述全连接层为单层全连接层。
如图4所示,所述故障预测模型的训练方法,包括以下步骤:
1)准备训练数据;
实施例中,步骤1)所述准备训练数据,具体为:将训练数据按指定的时间间隔(一般为2秒)重组为相应的单通道运行数据图并作为故障预测模型的输入,同时将需要预测的指定时间周期后的风电机组故障结果作为与之相对应的模型输出。
2)预测指定时间内的风电机组故障情况;
实施例中,步骤2)所述预测指定时间内的风电机组故障情况,包括以下步骤:
接收一定时间间隔的多张运行数据图;
通过深层卷积神经网络对所述运行数据图进行特征提取,将低层的数据分布信息转化为高层的故障特征;
长短期记忆循环神经网络对故障特征进行时序特征转化,将各个时间片段的故障特征整合为统一的时序故障特征;
由全连接层对时序故障特征进行综合,获得故障预测结果。
3)计算故障预测模型损失,具体为:
使用交叉熵作为模型的损失函数计算输出值与目标值之间的误差。
4)更新故障预测模型权重;
实施例中,步骤4)所述更新风电机组故障预测模型权重所用的模型优化器为adam算法,其中adam优化器使用β1=0.9,β2=0.999,ε=10-8作为初始参数。
5)判断损失值或评价指标故障预测准确率是否稳定在阈值范围内或者判断训练次数是否达到最大迭代次数上限n,若满足条件,则执行步骤6),否则训练次数加一并返回执行步骤2),所述训练次数初始值为零;
6)输出故障预测模型文件。
所述故障预测模型的测试方法,包括以下步骤:
1)准备测试数据,在测试过程,为了对模型的整体性能进行评估,测试数据集不需要进行额外的裁剪;
2)加载故障预测模型文件,调用训练好的故障预测模型文件,将测试数据输入故障预测模型;
3)接收风电机组实时运行数据,预测指定时间内的风电机组故障情况。
如图2所示,所述故障预测方法包括以下步骤:
s1:将风电机组运行状态的scada数据重组为运行数据图;
如图3所示,实施例中,步骤s1所述将风电机组运行状态的scada数据重组为运行数据图,包括以下步骤:
s101:为保证输入数据具有相同的初始权重,以便于进行模型训练,需要归一化处理所述风电机组运行状态的scada数据,将数据映射至[0,1]区间;
s102:将归一化处理后的数据以时间顺序排列重组为运行数据图,其中t1表示第一个单位时间所采集到的scada运行数据,x1表示数据条目中第一个字段内的具体数值。
s2:使用卷积神经网络提取运行数据图中的故障特征,包括以下步骤:
s201:接收一定时间间隔的多张x(m)×t(n)维的单通道运行数据图作为卷积神经网络的输入;
s202:通过卷积神经网络对运行数据图进行特征提取,每张单通道运行数据图转化为x(m)×1维的故障特征。
s3:以循环神经网络作为故障预测模型主体,将单帧故障特征转化为时序故障特征,包括以下步骤:
s301:以步骤s202输出的故障特征作为循环神经网络的输入;
s302:将各个时间片段的故障特征整合为统一的时序故障特征。
s4:通过全连接层完成对时序故障特征的整合,获得故障预测结果,具体为:
将风电机组是否发生故障视为一个二分类问题,在全连接层,通过softmax激活函数,获得是否故障的预测结果。
本法明将cnn与lstm两种结构进行了创新整合设计,首先,cnn作为“运行数据图”的特征提取模块,利用cnn网络对高维复杂特征良好的表征能力将一定时间内的运行数据图转化故障特征,用以提高数据吞吐量、自学习数据特征的目的;其次,以lstm为故障预测主体的故障预测模块将接收多个时间序列的故障特征输入,并通过设计复杂的记忆模块与内部链接结构完成对时序故障特征的处理;本发明方法针对海量scada运行数据,使用cnn-lstm框架完成风电机组故障长周期预测,可以处理风电机组中的多维高采样频率长周期时序scada数据,能有效实现长周期风电机组故障的准确预测。
本发明发明人结合说明书附图对本发明的实施示例做了详细的说明与描述,但是本领域技术人员应该理解,以上实施示例仅为本发明的优选实施方案,详尽的说明只是为了帮助读者更好地理解本发明精神,而并非对本发明保护范围的限制,相反,任何基于本发明的发明精神所作的任何改进或修饰都应当落在本发明的保护范围之内。