一种基于完全数据风电机组故障诊断方法

文档序号:26538206发布日期:2021-09-07 20:35阅读:211来源:国知局
一种基于完全数据风电机组故障诊断方法

1.本发明涉及风力发电技术领域,具体而言,涉及一种基于完全数据风电机组故障诊断方法。


背景技术:

2.近年来,随着全球生态环境的持续恶化以及化石燃料的逐渐枯竭,利用风能进行发电逐渐成为世界各国取代传统发电方式的一种新型发电方式。由于机组多安装在高山、荒野、海岛甚至海上等风能资源丰富的偏远地区,常年受极端温差的影响和强阵风的无序冲击,导致其故障率远高于其他机电设备。传统的风电场机组维护策略高度依赖定期常规检修和事后维修,仅能处理部分风场监控系统警告,加之调配备件周期长,导致大型风电场的故障维护成本居高不下,对风电场运维经济性影响巨大。风电机组结构的复杂性、运行工况的多变性以及不同部件之间的耦合性,都使得其故障频发,甚至出现连锁现象,引发风电烧毁、倒塌等重大事故。目前,大型风场使用监控和数据采集(supervisory control and data acquisition,scada)系统监控风机组运行状态。
3.因此,如何准确地诊断和预估风电机组的故障及其发展趋势,及早发现潜在故障征兆,以便制定最优的维修策略、降低故障率、保证风电机组安全高效运行,通过故障趋势预警来防止重大事故的发生,从而避免重大财产损失、保障人身及设备安全,是本领域技术人员亟待解决的技术问题。


技术实现要素:

4.本发明就是为了解决如何准确地诊断和预估风电机组的故障及其发展趋势,及早发现潜在故障征兆的技术问题,提供了一种基于完全数据风电机组故障诊断方法。
5.本发明采用boa

xgboost算法搭建多个故障特征参数的常态回归模型,实时每个计算特征参数的重构误差;然后,将不同来源、不同尺度的特征参数根据特征权重融合成机组运行状态指标,从众多监测参数中得到了对风电机组运行态势的一致性表述。
6.本发明公开的基于完全数据风电机组故障诊断方法,包括以下步骤:
7.第一步,从scada系统中获取风电机组健康数据样本;
8.第二步,通过boa

xgboost算法训练多分类模型;
9.(1)设置xgboost算法的超参数空间,即各类超参数的寻优范围;
10.(2)确定超参数与分类准确率的先验分布;
11.(3)通过boa算法寻优,首先从上一步得到的原始先验开始,使用高斯过程作为概率函数代理未知最优参数;然后使用采集函数围绕当前已找到的最优超参数组合从参数空间中选取未评估过的超参数组合,通过迭代增加信息量、不断修正先验;最后在迭代结束后,选取准确率最高模型的超参数即为最优超参数组合,最终使用最优超参数组合训练分类模型得到最终模型;
12.第三步,通过多分类模型确定每种故障的特征检测参数;
13.第四步,搭建各特征监测参数的回归预测模型,计算预测残差值;
14.第五步,设定动态故障阈值;
15.(1)设置窗口大小,选取能反映原始数据集特征的最小数据子集作为滑动窗口;
16.(2)选取滑动窗口内的数据,根据式(2

10)计算窗口数据内的阈值。
[0017][0018]
式(2

10)中,r
k
为某一时刻的状态指标,n为滑动窗口大小,r
th
表示置信区间上限,r
th
作为风电机组出现异常状态的阈值;
[0019]
(3)逐帧移动数据窗口,根据步骤(2)设置新的阈值;
[0020]
(4)重复步骤(3)得到所有时刻的阈值,连接起来便成了拟合r
t
变化趋势的自适应阈值曲线;
[0021]
第六步,从scada系统中获取实时运行数据,如果实时运行数据超过故障阈值则表示机组状态异常。
[0022]
优选地,第一步从scada系统中获取风电机组健康数据样本的过程包括以下步骤:
[0023]
步骤1,使用dbscan算法剔除低密度离散噪声数据;
[0024]
步骤2,按功率对数据分区,计算每个分区的密度中点;
[0025]
步骤3,使用最小二乘算法拟合密度中点,作为机组运行理想功率曲线,具体过程是,计算每个分区中的风速均值记为风速标准差记为σ
i
,该分区内的功率均值记为则每个分区内的密度中点记为计算各分区的标准差的均值记为σ:
[0026][0027]
使用最小二乘法对各中心点进行三次多项式拟合,得到风电机组的理想输出功率公式:
[0028]
y=a0+a1x+a2x2+a3x3ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2

2)
[0029][0030]
步骤4,根据3

sigma准则以理想功率曲线为中心设置正常功率区间如式(2

3):
[0031]
[y(x

3σ),y(x+3σ)]
ꢀꢀꢀꢀꢀꢀꢀ
(2

3)
[0032]
式(2

3)中所示区间即为正常功率区间估计,不在此区间内的数据即可被认定为异常值。
[0033]
步骤5,以正常功率区间边界为阈值,删除正常功率区间以外的异常数据,获得风电机组健康数据样本。
[0034]
本发明的有益效果是:
[0035]
不依赖先验经验,有效地预警发电机系统、齿轮箱系统和液压系统故障。实时监测风电机组状态参数,掌握风电机组健康信息,又能及早发现潜在故障征兆、降低故障率、保证大型风力发电机组的安全高效运行。基于自适应原理的动态阈值计算方法,充分考虑了机组前一段时间的运行态势,可以有效实现多种故障的提前预警,解决传统人为设定固定
阈值导致模型主观性强、泛化能力弱和易产生误报警的问题。
[0036]
本发明进一步的特征和方面,将在以下参考附图的具体实施方式的描述中,得以清楚地记载。
附图说明
[0037]
图1是本发明基于完全数据风电机组故障诊断方法的流程图;
[0038]
图2是含异常数据机组“风速

功率”分布图;
[0039]
图3是功率分区示意图;
[0040]
图4是boa

xgboost模型构建流程;
[0041]
图5是决策树部分枝杈图;
[0042]
图6是动态阈值设定示意图;
[0043]
图7是子集选取示意图;
[0044]
图8是实验数据“风速

功率”分布图;
[0045]
图9是低密度异常数据识别与剔除图;
[0046]
图10是异常功率数据识别与剔除对比图;
[0047]
图11是风电机组各子系统健康状态指标趋势图;
[0048]
图12是风电机组各子系统状态指标密度分布图;
[0049]
图13是风电机组各子系统状态监测图;
[0050]
图14是风电机组各子系统状态监测图;
[0051]
图15是风电机组各子系统状态监测图。
具体实施方式
[0052]
以下参照附图,以具体实施例对本发明作进一步详细说明。
[0053]
参考图1,基于完全数据风电机组故障诊断方法包括以下步骤:
[0054]
第一步,从风场scada系统中获取风电机组健康数据样本。
[0055]
风电机组在实际运行中,受风速和风向的不确定性以及变速恒频发电控制的约束,运行状态通常在不同工况之间随机频繁切换,会产生停机数据、限功率数据、故障数据和离群数据等异常数据。如图2中图(a)所示,常见的异常数据有以下几种:

停机数据:风电机组测量风速大于切入风速,输出功率在连续一段时间内为0,主要是人为弃风,或通讯故障引起的;

限功率数据:风电机组输出功率分布在理想功率曲线下方,且不随风速的变化而改变(或变化较小),此类异常点主要是由人为控制风电机组限制出力导致;

噪声数据:数据点在数据整体数据点之外杂乱分布,此类异常点一般是由机组故障或噪声引起的。
[0056]
对比图2中(b)可看出,上述三种异常数据的分布密度均较低,其中,噪声数据无固定聚集范围,呈随机离散分布;而停机数据和限功率数据,围绕某一特定功率值波动分布,其功率分布纵向高度约为20kw,即,功率波动范围约为
±
10kw。因此,使用基于密度的dbscan聚类算法识别低密度离散异常数据,进而,基于正常功率区间估计的异常数据处理方案流程如下:
[0057]
步骤1,使用dbscan算法剔除低密度离散噪声数据;
[0058]
步骤2,按功率对数据分区,计算每个分区的密度中点,以20kw为步长设置分区如
图3所示;
[0059]
步骤3,使用最小二乘算法拟合密度中点,作为机组运行理想功率曲线,具体过程是,计算每个分区中的风速均值记为风速标准差记为σ
i
,该分区内的功率均值记为则每个分区内的密度中点记为计算各分区的标准差的均值记为σ:
[0060][0061]
由于风电机的输出功率与风速的三次方成正比,因此使用最小二乘法对各中心点进行三次多项式拟合,得到风电机组的理想输出功率公式:
[0062]
y=a0+a1x+a2x2+a3x3ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2

2)
[0063][0064]
步骤4,风电机组的“风速

功率”数据围绕理想功率曲线呈近似正态分布,距离理想功率曲线越远,数据分布量越少,因此,根据3

sigma准则以理想功率曲线为中心设置正常功率区间如式(2

3):
[0065]
[y(x

3σ),y(x+3σ)]
ꢀꢀꢀꢀꢀꢀꢀꢀ
(2

3)
[0066]
式(2

3)中所示区间即为正常功率区间估计,数据超出该区间范围的概率不足0.27%,因此不在此区间内的数据即可被认定为异常值。
[0067]
步骤5,以正常功率区间边界为阈值,删除正常功率区间以外的异常数据,获得风电机组健康数据样本。
[0068]
为了验证异常数据处理过程的效果,通过图8所示两组数据进行实验,图8中的图(a)所示样本数据集中数据主体明显,包含噪声数据较少,而停机和限功率数据较多;图8中图(b)中所示数据样本的数据分布范围广且杂乱,大量低密度异常数据分布在数据主体的右下方,同时还存在少量的限功率数据和较多的停机数据。
[0069]
首先调整dbscan聚类算法参数,识别实验数据样本低密度异常数据分别如图9的(a)、(b)所示,然后剔除异常数据结果如图9中(c)、(d)所示。从图9中(c)、(d)中可以看出,dbscan聚类算法可以很好剔除原始数据样本中的大量低密度离散异常数据,仍有少量停机和限功率数据没被剔除。
[0070]
图10中图(a)、(b)为数据样本设置正常功率区间结果图,图中星型数据点为每个分区的数据密度中点,以星型数据点拟合密度中点后得到的理想功率曲线,数据带左右两侧曲线分别表示正常功率区间的上限和下限。图10中,图(c)、(d)为根据正常功率区间剔除异常数据后结果图,从图中可以看出,基本所有类型的异常数据均已被剔除,且保留了完整的高密度正常数据主带。
[0071]
第二步,创建故障诊断模型,分析不同故障的特征参数。
[0072]
步骤1,将风场机组群中常发生的故障划分为发电机系统故障、齿轮箱系统故障、液压系统故障三大类进行故障诊断和特征分析,三类故障包含的故障类别如表2

1所示:
[0073]
表2

1 各故障类别包含的报警内容
[0074][0075]
步骤2,故障诊断模型其本质为多分类模型,即通过学习已知类别的不同数据特征进而对未知数据样本进行类别划分。xgboost算法能高效地处理多分类问题,但因为超参数较多导致调优困难,为解决这个问题,采用boa寻找分类准确率最高的超参数组合。通过boa

xgboost算法训练多分类模型,如图4所示,具体过程是:
[0076]
(1)设置超参数空间。xgboost算法包含常规参数、模型参数和学习任务参数三类超参数,在进行参数寻优前需设置各类超参数的寻优范围,表2

3为超参数取值范围及参数含义。
[0077]
表2

3 xgboost参数设定范围及含义
[0078][0079]
(2)确定先验概率分布。boa(bayesian optimization algorithm,boa)是一个不断更新先验分布的过程,在进行寻优之前需要确定超参数与分类准确率的先验分布。通过多次随机选取超参数组合训练分类模型后得到多组参数组合与准确率的关系作为先验分布。
[0080]
(3)boa寻优过程。在超参数寻优时,首先从上一步得到的原始先验开始,使用高斯过程作为概率函数代理未知最优参数;然后使用采集函数围绕当前已找到的最优超参数组合从参数空间中选取未评估过的超参数组合,通过迭代增加信息量、不断修正先验;最后在迭代结束后,选取准确率最高模型的超参数即为最优超参数组合,最终使用最优超参数组合训练分类模型得到最终模型。
[0081]
在训练分类模型时,将故障诊断模型建模数据集按(8:2)的比例划分为训练集和
所示:
[0093]
表3

2 最终参数列表
[0094][0095]
常用的分类算法有决策树、svm、gbdt、自适应提升(adaptive boosting,adaboost)算法和以dbn为代表的深度学习网络等。使用boa搭建各分类算法的最优多分类模型,其中经过实验确定dbn结构为1024

100

100的3层神经网络。在测试阶段为消除算法随机性的影响,实验时随机选取10组不同测试数据,计算各个模型的准确率与训练时长的均值分别作为模型可靠性和有效性的的评估指标,实验结果如表3

3所示:
[0096]
表3

3 多分类算法比较
[0097][0098]
分析上表可得,基于决策树的分类模型训练耗时最短,但分类准确率最低;gbdt和xgboost分类算法的分类准确率都在99%以上,但xgboost的训练耗时较短;使用adaboost和svm算法搭建多分类模型的有效性和可靠性相对xgboost算法均较差;而基于dbn的多分类模型的平均准确率可以达到95%以上,但其训练时间最长,有效性最差。因此,基于xgboost算法搭建的多分类模型相较其它分类算法具有较好的有效性和可靠性。
[0099]
为测试故障诊断模型在实际应用时的性能,使用该风电场2020年的scada数据模拟实时数据流,测试故障诊断模型判断机组运行状态的准确率,构建包含正常数据和各类故障的模拟实时数据流数据如表3

4所示:
[0100]
表3

4 模拟实时数据流数据构成
[0101][0102]
将数据集打散之后随机选取数据输入故障诊断模型,判断机组状态,测试结果如表3

5所示:
[0103]
表3

5 模拟实时数据流诊断模型测试结果
[0104][0105]
由上表可得,本发明故障诊断模型基本能准确识别出所有故障类型,但对于发电机前轴承温度过高有极少次数被错误判断为齿轮箱系统故障。这是由于在风电机组传动系统结构中,发电机前轴承与齿轮箱高速轴直接相连,发电机局部高温与齿轮箱局部高温往往相伴出现,导致部分数据特征不明显所致。
[0106]
第三步,设置动态阈值。
[0107]
步骤1,在计算运行状态指标之前,通过设置窗口计算一定时间段内某一监测参数的相对残差,来消除纲量和数据范围的影响。设某一特征参数的实际值为y
t
,预测值为窗口大小为h,则该特征参数在k时刻的h时间跨度内的相对残差r(k)如下所示:
[0108]
[0109][0110]
其中,表示窗口内监测参数实际值的均值。风电机组的自动停机保护时间为5分钟,为了避免在自动停机时间内各项数据突变造成相对残差出现异常极值点,本文设置窗口大小为10分钟,同时也将将每1分钟一条的原始残差样本聚合为每10分钟一条的相对残差样本集。
[0111]
通过融合多个故障特征监测参数的相对残差作为评价指标,来实现机组子系统的状态监测。设风电机组某一子系统的故障特征参数分别为监测量a、监测量b、监测量c,三个特征监测量的特征权重分别为w
a
、w
b
、w
c
,相对残差分别r
a
、r
b
、r
c
,定义该子系统的状态指标如下所示:
[0112][0113]
式(2

8)是根据特征权重为多个特征参数的相对残差赋权值,将多监测量的相对残差融合成一个状态指标。该指标是一个无纲量指标,指标值越大表明机组偏离理想工况越严重,若该指标超过一定阈值,则表明该机组的监测部位已经出现故障征兆,需要对该部位进行维护。
[0114]
采用ewma计算得到状态指标变化的趋势控制图,预测状态指标的变化趋势。ewma常用于统计数据处理,以设置加权系数的形式充分考虑之前所有观测值的信息,每个ewma点都结合了来自之前所有子组或观测值的信息,反应目标量近期变化趋势。ewma控制点值表达式如式2

9所示:
[0115]
v
t
=βr
t
+(1

β)v
t
‑1ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2

9)
[0116]
式中,v
t
表示t时刻状态指标的趋势值,r
t
表示t时刻下的状态指标;系数β表示ewma控制图对历史数据的权重系数,β∈(0,1],(1

β)表示历史值加权下降的速率,设定β=0.9。另外,由于模型预测总是不可避免的存在误差,通过ewma处理残差不仅可以减小残差值的波动范围还能有效的消除误报警点,使得预警算法更加稳定和精确。
[0117]
步骤2,通过滑动窗口分段设定动态故障阈值。
[0118]
如图6所示,具体过程如下:
[0119]
(1)设置窗口大小,选取能反映原始数据集特征的最小数据子集作为滑动窗口。根据k

s检验原则,如果两个数据集的k

s检验的结果值大于0.05,则可认为两个数据集具有相同的分布规律。如图7所示,在确定滑动窗口大小时,首先从数据样本开始处框选一定范围的数据作为子数据集,与原始母数据集做k

s检验,检验两者的相似性。然后依次向右扩大数据子集范围,直到子集与母集的k值大于0.05时,记录下此时子集的长度即为窗口大小n。
[0120]
(2)设置故障阈值。在设置动态故障阈值时,应充分考虑窗口前一段时间状态指标的变化趋势,选取步骤(1)确定的滑动窗口内的数据,根据式(2

10)计算窗口数据内的阈值。
[0121][0122]
式中,r
k
为某一时刻的状态指标,n为滑动窗口大小,r
th
表示置信区间上限。r
th
通过核密度估计法分析风电机组运行状态指标的分布特征,并基于小概率事件原理设定。根据统计学中的区间估计理论,设一个概率值α,如果某一范围内状态指标的累计概率分布p{0≤r≤r
th
}=1

α,则称区间[0,r
th
]是状态指标r的1

α置信度的置信区间。当α值越小,表明风电机组的状态指标数值r>r
th
情况时的概率越小。如果以1

α作为置信度,则状态指标r几乎全分布在[0,r
th
]的正常区间内,如此r
th
便可作为风电机组出现异常状态的阈值。
[0123]
(3)逐帧移动数据窗口,根据步骤(2)设置新的阈值。
[0124]
(4)重复步骤(3)得到所有时刻的阈值,连接起来便成了拟合r
t
变化趋势的自适应阈值曲线。
[0125]
第四步,从scada系统中获取实时运行数据,如果实时运行数据超过故障阈值则表示机组状态异常。
[0126]
验证实验,根据故障特征分析及式(2

8),确定各子系统的故障特征参数及特征权重占比如表3

6所示:
[0127]
表3

6 系统的故障特征参数及特征权重占比
[0128][0129]
使用mic算法计算表3

6中各故障特征参数与scada系统其他监测参数的最大互信息系数,根据相关性大小选取各故障特征参数的建模向量。
[0130]
搭建各故障特征参数的常态模型,首先将用于建立常态模型的scada历史数据剔除异常数据,得到健康数据集。然后使用贝叶斯优化算法寻找每个回归模型的最优参数组合,最终以验证集的验证的mae和r2分值为评价标准。结果如表3

7所示,从中可以看出,最终构建的各类故障特征参数回归模型得分相似,均能准确重构故障特征参数,且可以很好拟合各类参数的变化趋势。
[0131]
表3

7 各模型最终验证结果
[0132][0133]
从风场内选取没有参与回归模型训练与测试的1台正常运行机组scada数据,从中截取未发生过任何故障和人为干预的不间断运行14天(20160个采样点)的数据作为健康历史数据集。
[0134]
首先使用常态回归模型重构各故障特征参数值;然后计算重构结果的相对误差。最终计算得到发电机系统、齿轮箱系统、液压系统在机组正常运行时的状态指标趋势控制图如图11所示。从图11中可以看出,发电机子系统在运行期间大部分状态指标分布在0.01以下,中间出现过数次波动,但波动范围维持在0.025以内。而齿轮箱系统和液压系统在此期间运行较为稳定,状态指标多数都分布在0.008以内。此外,三个子系统的状态指标在14天的运行期间内均未出现明显的变化趋势。
[0135]
统计图12中各子系统的健康状态指标数据分布,计算得频率分布直方图、核密度函数曲线及累计概率曲线,图中横坐标为系统的状态指标;左侧纵坐标为指标分布密度,对应图中核密度曲线和指标分布直方图;分段对核密度曲线积分并将概率点相连即得到累计概率曲线,对应图中虚线所示,其坐标为右侧纵坐标。设定99.5%的置信度,从上图中寻找各子系统的累计概率密度为99.5%时对应的状态指标作为正常状态指标的上限值。最终设定发电机系统的置信区间上限为0.0183,齿轮箱系统的置信区间上限为0.121,液压系统的置信区间上限为0.0125。
[0136]
通过scada系统故障记录表得知风场内84号机组在2019年5月15日17点9分由scada系统发出“发电机主轴温度高”故障报警后停机。选取该机组发生故障时刻前7天的运行数据做发电机系统故障预警实验,使用常态回归模型重构各故障特征参数并计算相对误差,计算各子系统的状态检测图如图13所示。从图13中图(a)中可以看出,发电机系统的状态指标在第580个采样点附近出现较高幅度的突起但并未越过故障阈值,说明在这段时间内发电机系统运行状态发生过较大幅度波动,但并没有到达发生故障的程度;而在第950个采样点以后,状态指标开始快速上升,并逐渐越过了报警阈值。图13中图(b)为发电机系统状态检测图局部放大图,图中最右边竖着方向的虚线所示为故障发生点(第1008个采样点),中间竖直方向的虚线所示为故障预警点(第986个采样点),说明状态监测系统可以提前约3.67小时(22个采样点)发出发电机系统故障报警。相较之下,图13中(c)、(d)所示齿轮箱系统和液压系统状态指标整体较为平滑,在第950个采样点之后状态指标出现小幅升高但并未超出过故障阈值。
[0137]
scada系统故障记录表显示风场内87号机组在2019年4月22日9点39分由scada系统发出“齿轮箱冷却器过载”故障报警后停机。选取该机组发生故障时刻前7天的运行数据做齿轮箱系统故障预警实验。使用常态回归模型重构各故障特征参数并计算相对误差,最
后得各子系统的状态检测图如图14所示。从图14的图(a)中可以看出,齿轮箱系统运行指标整体较为平稳,从第940个采样点开始状态指标快速上升,并逐渐超过了故障阈值。从图14的图(b)为发电机系统发生故障前10小时的状态检测局部放大图,图中最右边虚线所示为故障发生点(第1008个采样点),中间虚线所示为故障预警点(第977个采样点),说明状态监测系统可以提前约5.17小时(31个采样点)发出发电机系统故障报警。图14的图(c)为发电机系统状态监测图,在整个运行期间内并没有出现越过故障阈值的情况。图14的图(d)为液压系统状态监测图,从图中可以看出,液压系统在在临近发生故障前受变流器和齿轮箱高速轴承温度升高影响导致状态指标产生小幅拉升,但并未超出故障阈值。
[0138]
cada系统故障记录表显示风场内106号机组在2019年4月26日15点36分由scada系统发出“液压电机温度过高”故障报警后停机。选取该机组发生故障时刻前7天的运行数据做液压系统故障预警实验。使用常态回归模型重构各故障特征参数并计算相对误差,各子系统的状态监测图如图15所示。由图15中图(a)、(b)液压系统状态检测图和局部放大图可得,液压系统状态指标从第850个采样点开始出现抖动上升态势,从第990个采样点后开始大幅提升截止到故障发生时刻,其状态指标升至0.11附近,这是由于在故障发生前变流器电抗器1温度快速升高所致。图15的图(b)中最右边竖直方向的虚线所示为故障发生点(第1008个采样点),中间竖直方向的虚线所示为故障预警点(第994个采样点),说明状态监测系统可以提前约2.33小时(14个采样点)发出发电机系统故障报警。对比图15中图(c)、(d)可得,在实验时间段内,发电机系统和齿轮箱系统均运行较为平稳且未发生报警情况。
[0139]
以上所述仅对本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1