1.本发明属于水电机组状态评估与预警领域,更具体地,涉及一种水电机组定子线圈温度预警方法及系统。
背景技术:2.水电机组相关部件的运行温度是水电站运行监测中重要的非电气量监控参数,运行温度与机组的运行状态和部件的工作寿命密切相关,能够直观反映机组是否正常稳定运转。研究针对水电机组运行温度的预测及预警方法,对于实现设备预测性维护,减少不必要损失,具有十分重要的实际意义。然而,受环境温度变化影响,机组运行温度在一年中会呈现出截然不同的特征,这些特征差异会影响到预测模型的效果。此外,机组温度与机组运行状态直接相关,随着机组频繁的开停机过程,机组温度也会呈现出相应地周期性变化,只有使模型深度挖掘出温度随机运行状态的变化,才能提高模型的预测精度。
技术实现要素:3.针对现有技术的缺陷,本发明的目的在于提供一种水电机组定子线圈温度预警方法及系统,旨在解决现有的水电机组定子线圈温度预警方法中存在预测精度不足以及受环境温度影响,导致误报警次数多的问题。
4.为实现上述目的,本发明提供了一种水电机组定子线圈温度预警方法,包括以下步骤:
5.s1:根据水电机组定子绕组温度变化的特征,将原始温度序列周期化处理,并使用stl分解方法将周期化后的原始温度序列进行分解,获取整体温度序列和周期温度序列;
6.s2:对整体温度序列滤波处理,将滤波后的残差以及stl分解方法分解后的残差加入至周期温度序列中,获取周期温度趋势数据;
7.s3:将机组当前运行阶段的周期温度趋势数据中若干历史温度实际值输入至基于运行状态损失函数的gru温度预测模型中,输出机组当前运行阶段的未来若干时刻的预测温度值;
8.s4:将机组历史运行阶段的温度变化划分为温度上升阶段和温度稳定阶段,确定在温度上升阶段当前运行阶段温度预测点在当前运行阶段和历史运行阶段中的位置,计算历史温度预测值与历史温度实际值的误差,以及计算历史误差的标准差、均值和置信度;
9.s5:当历史误差的标准差小于预设标准差,则对系统误差进行校正,结合机组当前运行阶段未来时刻的预测温度值,判断是否进行温度预警;当历史误差的标准差大于预设标准差,则结合置信度和当前运行阶段未来时刻的预测温度值,判断是否进行温度预警。
10.进一步优选地,将原始温度序列周期化处理的方法为:
11.根据机组运行次数和每次运行的实际时长计算机组平均运行时间;
12.若机组的运行时间多于机组平均运行时间,则将机组运行时间多于平均运行时间的时间段对应原始温度序列除去;若机组的运行时间少于机组平均运行时间,则将机组运
行时间少于平均运行时间的时间段进行温度补齐,补齐的温度数值为机组运行阶段温度达到稳定后的均值温度。
13.进一步优选地,gru温度预测模型的损失函数包括均方误差损失函数和运行状态损失函数;运行状态损失函数包括平均温度损失函数、温度上升占比损失函数、最高温度损失函数和中位温度损失函数;
14.平均温度损失函数用于计算单次机组运行过程中实际温度平均值与预测温度平均值之间误差;温度上升占比损失函数用于计算机组当前运行阶段中温度上升所用时间占所有时间的比值;最高温度损失函数用于计算当前运行阶段中实际温度最高值和预测温度最高值的误差;中位数温度损失函数用于计算当前运行阶段中实际温度的中位数值和预测温度中位数值的误差。
15.进一步优选地,温度上升阶段的结束条件为连续的相邻五个温度预测点平均温度之间的变化不超过0.1℃。
16.进一步优选地,计算历史误差的标准差、均值和置信度的方法,包括以下步骤:
17.计算若干历史运行阶段和当前运行阶段中每个温度预测点在周期温度趋势数据中的位置;
18.在历史运行阶段中寻找与当前运行阶段中温度预测点相同位置的温度预测点,根据历史运行阶段中温度预测点处的历史温度预测值与历史温度实际值,计算预测误差以及置信度;
19.计算历史运行阶段中温度预测点的误差均值和标准差。
20.在历史运行阶段中任意一个温度预测点所处位置为:
[0021][0022]
其中,历史运行阶段中温度上升阶段为t~t+t
ir
;t
′
表示历史运行阶段中温度预测点的时间;
[0023]
在当前运行阶段中温度预测点所处位置为:
[0024][0025]
其中,t
″
表示当前运行阶段中温度预测点时间;tr表示当前运行阶段中的温度上升时间;分别为五个历史运行阶段中的温度上升时间。
[0026]
进一步优选地,温度预警规则为:
[0027][0028]
其中,为历史运行阶段中温度预测点的标准差;c为温度预测点的置信度;表示当前运行阶段中未来时刻的预测温度值;th表示阈值;为温度预测点的误差均值。
[0029]
另一方面,本发明提供了一种水电机组定子线圈温度预警系统,包括:
[0030]
温度序列周期化处理模块,用于根据水电机组定子绕组温度变化的特征,将原始温度序列周期化处理;
[0031]
stl分解模块,用于使用stl分解方法将周期化后的原始温度序列进行分解,获取整体温度序列和周期温度序列;
[0032]
滤波模块,用于对整体温度序列滤波处理;
[0033]
加法模块,用于将滤波后的残差以及stl分解方法分解后的残差加入至周期温度序列中,获取周期温度趋势数据;
[0034]
gru温度预测模块,其内设置有基于运行状态损失函数的gru温度预测模型,用于以将机组当前运行阶段的周期温度趋势数据中若干历史温度实际值为输入,输出机组当前运行阶段未来时刻的预测温度值;
[0035]
误差参数计算模块,用于将机组历史运行阶段的温度变化划分为温度上升阶段和温度稳定阶段,在温度上升阶段根据温度预测点在历史运行阶段中的位置计算历史温度预测值与历史温度实际值的误差,以及计算历史误差的标准差、均值和置信度;
[0036]
温度预警模块,用于当历史误差的标准差小于预设标准差,则对系统误差进行校正,结合机组当前运行阶段未来时刻的预测温度值,判断是否进行温度预警;当历史误差的标准差大于预设标准差,则结合置信度和当前运行阶段未来时刻的预测温度值,判断是否进行温度预警。
[0037]
进一步优选地,gru温度预测模型的损失函数包括均方误差损失函数和运行状态损失函数;运行状态损失函数包括平均温度损失函数、温度上升占比损失函数、最高温度损失函数和中位温度损失函数;
[0038]
所述平均温度损失函数用于计算单次机组运行过程中实际温度平均值与预测温度平均值之间误差;温度上升占比损失函数用于计算机组当前运行阶段中温度上升所用时间占所有时间的比值;最高温度损失函数用于计算当前运行阶段中实际温度最高值和预测温度最高值的误差;中位数温度损失函数用于计算当前运行阶段中实际温度的中位数值和预测温度中位数值的误差。
[0039]
进一步优选地,温度预警规则为:
[0040][0041]
其中,为历史运行阶段中温度预测点的标准差;c为温度预测点的置信度;表示当前运行阶段中未来时刻的预测温度值;th表示阈值;为温度预测点的误差均值。
[0042]
进一步优选地,计算历史误差的标准差、均值和置信度的方法,包括以下步骤:
[0043]
计算若干历史运行阶段和当前运行阶段中每个温度预测点在周期温度趋势数据中的位置;
[0044]
在历史运行阶段中寻找与当前运行阶段中温度预测点相同位置的温度预测点,根据历史运行阶段中温度预测点处的历史温度预测值与历史温度实际值,计算预测误差以及置信度;
[0045]
计算历史运行阶段中温度预测点的误差均值和标准差。
[0046]
进一步优选地,历史运行阶段中任意一个温度预测点所处位置为:
[0047][0048]
其中,历史运行阶段中温度上升阶段为t~t+t
ir
;t
′
表示历史运行阶段中温度预测点的时间;
[0049]
在当前运行阶段中温度预测点所处位置为:
[0050][0051]
其中,t
″
表示当前运行阶段中温度预测点时间;tr表示当前运行阶段中的温度上升时间;分别为五个历史运行阶段中的温度上升时间。
[0052]
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
[0053]
本发明提供了一种水电机组定子线圈温度预警方法及系统,考虑到气候温度对机组部件温度的影响,利用stl分解方法将周期化后的原始温度序列进行分解,获取整体温度序列和周期温度序列,整体温度序列表征气候温度,在原始温度序列中剔除整体温度序列,提取出受机组运行影响的周期温度趋势数据进行预测和预警,提高了模型训练的效果,同时也降低了环境温度对温度误报警的影响。
[0054]
本发明提供了一种水电机组定子线圈温度预警方法及系统,其中构建了基于运行状态损失函数的gru温度预测模型,运行状态损失函数通过计算各运行阶段中温度上升占比、温度变化均值、温度最大值等,反映温度整体特征的量以捕捉温度趋势在机组运行阶段中的关键性特征,从而提高模型的预测效果。
[0055]
本发明提供了一种水电机组定子线圈温度预警方法及系统,当历史误差的标准差小于预设标准差,则对系统误差进行校正,结合机组当前运行阶段未来时刻的预测温度值,判断是否进行温度预警;当历史误差的标准差大于预设标准差,则结合置信度和当前运行阶段未来时刻的预测温度值,判断是否进行温度预警;温度预警方法充分考虑了gru温度预测模型在不同温度变化阶段的预测误差对预警效果的影响,提出了置信度和误差校正方法以消除模型预测误差导致的误报警和报警不及时问题,提高了预警的准确性。
附图说明
[0056]
图1是本发明实施例提供的水电机组定子线圈温度预警流程图;
[0057]
图2是本发明实施例提供的水电机组定子线圈原始温度序列变化趋势图;
[0058]
图3是本发明实施例提供的stl分解得到的整体温度变化趋势图;
[0059]
图4是本发明实施例提供的stl分解得到的周期温度变化趋势图;
[0060]
图5是本发明实施例提供的运行状态损失函数不同权重α下的预测效果图;
[0061]
图6是本发明实施例提供的损失函数和mse在不同预测步长下的效果对比;
[0062]
图7是本发明实施例提供的水电机组定子线圈温度预测与预警效果图。
具体实施方式
[0063]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0064]
本发明提供了一种水电机组定子线圈温度预警方法及系统,整体技术方案为:根据机组温度变化的特征,对非周期性的初始温度序列进行周期化处理,使用stl分解方法对周期化后的温度序列进行分解,提取出其中的整体温度序列以及与机组运行相关的局部周期温度序列;基于运行状态损失函数的gru温度预测模型对周期温度趋势数据进行预测,深度挖掘出温度与机组运行状态的内在联系,提出模型预测精度;采用温度预警方法,结合置信度计算方法和误差校正方法以消除不同运行阶段预测误差造成的误报警;其中,整体温度序列表征环境温度对定子线圈温度的影响;周期温度序列表征机组运行阶段对定子线圈的影响。
[0065]
更为具体地,如图1所示,一方面,本发明提供了一种水电机组定子线圈温度预警方法,包括以下步骤:
[0066]
s1:根据水电机组定子绕组温度变化的特征,将原始温度序列周期化处理,并使用stl分解方法将周期化后的原始温度序列进行分解,获取整体温度序列和周期温度序列;将整体温度序列进一步滤波处理,获取更加平滑的整体温度趋势数据,同时经滤波后的残差加入到周期温度序列中,获取周期温度趋势数据;
[0067]
更为具体地,s1中原始温度序列周期化处理及stl分解具体包括以下步骤:
[0068]
计算机组平均运行时间,具体计算公式如下:
[0069][0070]
其中,ti表示每次运行的实际时长;表示机组运行的平均时长;n表示机组运行次数;
[0071]
对每个运行阶段进行处理,将运行时间多于平均运行时间的时间段对应原始温度序列除去,将运行时间段不足的进行温度补齐,补齐的数值即为该运行阶段机组温度达到稳定后的均值温度,则机组运行时长变为
[0072]
将周期化的原始温度序列进行stl分解,分解后得到整体温度序列、周期温度序列和残差值;对整体温度序列进行滤波处理,得到更加平滑的整体温度趋势数据,将周期温度序列和上述分解、滤波两步中得到的残差值相加作为周期温度趋势数据;
[0073]
s2:建立基于运行状态损失函数的gru温度预测模型;该模型利用运行状态损失函数捕捉温度在每个开停机运行过程中的关键特征,提高模型的预测效果;
[0074]
更为具体地,s2中基于运行状态损失函数的gru温度预测模型,主要结构如下:
[0075]
gru温度预测模型的损失函数包括均方误差损失函数mse和运行状态损失函数;其中,运行状态损失函数包括:平均温度损失、温度上升占比损失、最高温度损失和中位温度损失;
[0076]
平均温度损失用于计算单次机组运行过程中实际温度平均值与预测温度平均值之间误差,其计算公式如下:
[0077][0078]
其中,t表示机组开始运行的时间,y表示实际温度值,表示预测温度值;ti表示每次运行的实际时长;
[0079]
温度上升占比损失函数是计算该次运行过程中温度上升所用时间占所有时间的比值,其计算公式如下:
[0080][0081]
其中,t
up
表示实际温度上升所用时间,表示预测温度上升所用时间;
[0082]
最高温度损失函数计算该次运行过程中实际温度最高值和预测温度最高值的误差,其计算公式如下:
[0083][0084]
中位数温度损失函数计算该次运行过程中实际温度的中位数值和预测温度中位数值的误差,其计算公式如下:
[0085][0086]
均方误差损失函数mse计算公式如下:
[0087][0088]
由上可知,gru温度预测模型的总损失函数计算如下:
[0089]
loss=mse+α
·
(loss1+loss2+loss3+loss4)
[0090]
其中,α表示运行状态损失函数的权重;
[0091]
s3:将机组历史运行阶段的温度变化划分为两个阶段:温度上升阶段和温度稳定阶段;根据当前运行阶段温度预测点所处的位置计算过去五个运行阶段对应点的历史预测值与历史实际值的误差,计算获取五个历史误差的标准差和均值,同时根据误差计算得到预测值的置信度;根据误差的标准差情况对预测值进行处理,并与报警阈值进行比较,实现机组温度预警;
[0092]
更为具体地,s3中温度预警的具体步骤如下:
[0093]
对过去五个历史运行阶段的温度变化进行划分,过程i可划分为温度上升阶段t~t+t
ir
和温度稳定阶段t+t
ir
~t+t
ir
+t
is
,其中,i=1,2,...,5;温度上升阶段的结束条件为连续的相邻五个点平均温度之间的变化不超过0.1℃,公式表示如下:
[0094][0095]
根据上述划分规则,可以计算历史任意一个温度点所处位置p,历史运行阶段中位置p的计算过程如下:
[0096][0097]
其中,exp表示以e为底的指数函数,t
′
表示对应预测点的时间;
[0098]
当前运行阶段的p具体计算方式如下:
[0099][0100]
其中,t
″
表示当前时刻的预测点时间,tr表示当前运行阶段中的温度上升时间;由于在当前运行阶段温度上升使其并不能获取到tr,因此选择相应的历史值进行替代,同时需要不断利用上述阶段划分规则对新的预测点进行阶段划分;
[0101]
按照上述规则找到过去五个历史运行阶段中与当前运行阶段中对应阶段相同p值的点,计算其置信度公式如下:
[0102][0103]
c=σ(-2ln(|e
p
|))
[0104]
其中,|e
p
|为预测误差,表示第n个历史运行阶段与预测点相同p值的历史温度实际值和历史温度预测值,σ表示sigmoid函数,c即为该预测点的置信度;由公式可知,当预测误差均值为0.1时,置信度水平达到0.99;当预测误差均值为0.5时,置信度水平达到0.8;当预测误差均值为1时,置信度水平降低到0.5;
[0105]
针对历史p值点的预测误差计算其n=1,2,...,5时的均值为标准差为当标准差较小时,表明预测误差以系统误差居多,需进行误差校正,对于温度序列而言,造成系统性误差的主要原因是温度序列发生变化,通常表现为异常增大趋势,所以当出现系统性误差时,应该适当加大预警力度;当标准差较大时,表明预测误差以随机误差居多,可利用置信度反映预测可靠性,预警规则即为:
[0106][0107]
其中,表示当前的预测温度值,th表示阈值大小。
[0108]
另一方面,本发明提供了一种水电机组定子线圈温度预警系统,包括:
[0109]
温度序列周期化处理模块,用于根据水电机组定子绕组温度变化的特征,将原始温度序列周期化处理;
[0110]
stl分解模块,用于使用stl分解方法将周期化后的原始温度序列进行分解,获取整体温度序列和周期温度序列;
[0111]
滤波模块,用于对整体温度序列滤波处理;
[0112]
加法模块,用于将滤波后的残差以及stl分解方法分解后的残差加入至周期温度序列中,获取周期温度趋势数据;
[0113]
gru温度预测模块,其内设置有基于运行状态损失函数的gru温度预测模型,用于以将机组当前运行阶段的周期温度趋势数据中若干历史温度实际值为输入,输出机组当前运行阶段未来时刻的预测温度值;
[0114]
误差参数计算模块,用于将机组历史运行阶段的温度变化划分为温度上升阶段和温度稳定阶段,在温度上升阶段根据温度预测点在历史运行阶段中的位置计算历史温度预测值与历史温度实际值的误差,计算历史误差的标准差、均值和置信度;
[0115]
温度预警模块,用于当历史误差的标准差小于预设标准差,则对系统误差进行校正,结合机组当前运行阶段未来时刻的预测温度值,判断是否进行温度预警;当历史误差的标准差大于预设标准差,则结合置信度和当前运行阶段未来时刻的预测温度值,判断是否进行温度预警。
[0116]
进一步优选地,gru温度预测模型的损失函数包括均方误差损失函数和运行状态损失函数;运行状态损失函数包括平均温度损失函数、温度上升占比损失函数、最高温度损失函数和中位温度损失函数;
[0117]
所述平均温度损失函数用于计算单次机组运行过程中实际温度平均值与预测温度平均值之间误差;温度上升占比损失函数用于计算机组当前运行阶段中温度上升所用时间占所有时间的比值;最高温度损失函数用于计算当前运行阶段中实际温度最高值和预测温度最高值的误差;中位数温度损失函数用于计算当前运行阶段中实际温度的中位数值和预测温度中位数值的误差。
[0118]
进一步优选地,温度预警规则为:
[0119][0120]
其中,为历史运行阶段中温度预测点的标准差;c为温度预测点的置信度;表示当前运行阶段中未来时刻的预测温度值;th表示阈值;为温度预测点的误差均值。
[0121]
进一步优选地,计算历史误差的标准差、均值和置信度的方法,包括以下步骤:
[0122]
计算若干历史运行阶段和当前运行阶段中每个温度预测点在周期温度趋势数据中的位置;
[0123]
在历史运行阶段中寻找与当前运行阶段中温度预测点相同位置的温度预测点,根据历史运行阶段中温度预测点处的历史温度预测值与历史温度实际值,计算预测误差以及置信度;
[0124]
计算历史运行阶段中温度预测点的误差均值和标准差。
[0125]
进一步优选地,历史运行阶段中任意一个温度预测点所处位置为:
[0126][0127]
其中,历史运行阶段中温度上升阶段为t~t+t
ir
;t
′
表示历史运行阶段中温度预测点的时间;
[0128]
在当前运行阶段中温度预测点所处位置为:
[0129][0130]
其中,t
″
表示当前运行阶段中温度预测点时间;tr表示当前运行阶段中的温度上升时间;分别为五个历史运行阶段中的温度上升时间。
[0131]
实施例
[0132]
step1:该温度数据集时间跨度为2018年1月2日至2018年12月29日,机组运行过程中的定子线圈温度变化原始序列如图2所示,由图可知,在一年之中,定子铁心温度随着环境温度变化有明显的变化趋势,冬季整体温度偏低,夏季整体温度偏高;将原始温度序列进行周期化处理后进行stl分解,将分解后的整体温度序列进行滤波处理得到整体温度趋势数据,如图3所示,提取出的整体温度趋势与原始温度序列中的趋势相符;将stl分解和滤波得到的残差加入周期温度序列中,得到周期温度趋势如图4所示,此时的温度变化仅与机组运行过程相关,周期温度趋势数据整体分布平稳;
[0133]
step2:利用基于运行状态损失函数的gru温度预测模型对温度周期变化趋势进行预测,gru模型输入序列长度为9,输出长度为1,即使用9个点预测1个点;模型的学习率设置为0.005,训练集与测试集的比例为3:1;运行状态损失函数的权重α对单步预测结果的影响如图5所示,rmse指标为均方根误差,反映了温度预测值与温度实际值之间的误差,rmse越小,表明预测精度越高;由图5可知,当权重取值为0.1时,各损失函数均能使预测效果达到最优,且要优于未使用状态损失函数的预测模型;更进一步地,增加模型的预测步长,实现模型的多步预测;单步预测代表使用历史数据预测最新的下一个数据点,本实施例中代表预测一分钟后的点,多步预测中预测步长与预测时长的关系以此类推;由图6可知,步长从1到10时,总损失函数相比于使用单一的mse损失函数均具有优势,能够提高模型的预测精度;
[0134]
step3:在多步预测的精度上实现温度预警功能,为了确保预警的精度,本发明的预测步长设置为3,即预测机组3分钟后的温度;如图7所示提供了多步温度预测结果和预警示意图;在达到温度预警值后,由图7可知,在实际报警点约前五分钟的时刻,模型利用历史数据对三分钟后的温度进行预测,得到的预测值满足误差校正的要求,通过误差校正后达到了报警阈值,实现了提前报警;由此可知,本发明的误差预警方法能够避免由于温度数据发生变化而造成的报警不及时问题。
[0135]
本发明提供了一种水电机组定子线圈温度预警方法及系统,考虑到气候温度对机组部件温度的影响,利用stl分解方法将周期化后的原始温度序列进行分解,获取整体温度序列和周期温度序列,整体温度序列表征气候温度,在原始温度序列中剔除整体温度序列,提取出受机组运行影响的周期温度趋势数据进行预测和预警,提高了模型训练的效果,同时也降低了环境温度对温度误报警的影响。
[0136]
本发明提供了一种水电机组定子线圈温度预警方法及系统,其中构建了基于运行状态损失函数的gru温度预测模型,运行状态损失函数通过计算各运行阶段中温度上升占比、温度变化均值、温度最大值等,反映温度整体特征的量以捕捉温度趋势在机组运行阶段中的关键性特征,从而提高模型的预测效果。
[0137]
本发明提供了一种水电机组定子线圈温度预警方法及系统,当历史误差的标准差小于预设标准差,则对系统误差进行校正,结合机组当前运行阶段未来时刻的预测温度值,判断是否进行温度预警;当历史误差的标准差大于预设标准差,则结合置信度和当前运行阶段未来时刻的预测温度值,判断是否进行温度预警;温度预警方法充分考虑了gru温度预测模型在不同温度变化阶段的预测误差对预警效果的影响,提出了置信度和误差校正方法以消除模型预测误差导致的误报警和报警不及时问题,提高了预警的准确性。
[0138]
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。