本发明属于电厂运行过程中工况划分,具体涉及一种基于分段线性回归的工况划分方法。
背景技术:
1、水力发电、火力发电、核能发电等大型发电机组是主要能源设施的核心组件,随着社会的不断发展,各类发电机组装机量持续增加,同时由于发电机组结构复杂、零部件众多、运行环境复杂,其运行安全尤为重要。近年来,各个电厂的运行状态监测和故障诊断技术不断完善,但电厂发电机组是一种复杂设备系统,加上其工作环境复杂多变,造成电厂的运行工况具有复杂性和多变性,因此,为有效支撑发电机组的状态预警监测、数字化运维、智能化健康管理等应用,对其运行工况的实时识别和智能检测技术不可或缺。
2、现有工况划分方法多是通过设定参数区域直接进行工况划分,没有对工况的趋势状态进行判断,导致工况划分结果不够准确。
技术实现思路
1、本发明的目的提供一种基于分段线性回归的工况划分方法,通过测点的趋势形态变化分析,利用分段线性拟合寻找曲线变化断点,结合工程师具体配置参数,对该测点工况进行精确区分识别。
2、本发明的技术方案如下:一种基于分段线性回归的工况划分方法,包括如下步骤:
3、步骤1:从序数据库获取数据;
4、步骤2:对序列pr进行平滑处理;
5、步骤3:数据分段;
6、步骤4:数据状态判断;
7、步骤5:工况状态筛选确认;
8、步骤6:工况状态写出。
9、所述的步骤1为从核电设备可靠性管理系统系统的iotdb时序数据库获取某电厂的电功率数据,时间间隔为1min,时间长度不低于20min,记为序列pr。
10、所述的步骤2为对序列pt进行经验模态分解,即将pt中不同尺度的波动和趋势进行逐级分解,产生一系列具有不同特征尺度的数据序列,每一个序列称为一个固有模态函数imf,对分解后前三个分量舍弃,并对剩余分量进行重构得到pt。
11、所述的步骤3为对数据按指定时间长度进行分段,采用基于负荷参数进行工况划分,设置时间长度为120min,按顺序对序列pt进行分段截取,对于最后一段序列ptn,假如ptn时间长度>10min则单独作为一段序列,否则,将最后一段序列添加到上一段序列,将分段后的序列顺序添加到数据列表pl,内部元素记为pti,其中0<i<=n,n为pt/120并向上取整。
12、所述的步骤4包括如下:
13、步骤41:片段数据归一化
14、对序列pti分别以0作为最小值、额定功率作为最大值,归一化到0-100之间,生成新的时序数列pti1,对序列pti1进行时间顺序排序生成新的序列pti2;
15、步骤42:片段数据分段线性回归,识别数据断点,并记录片段数据斜率
16、以pti1列为自变量,数列pti2为因变量进行分段线性回归,调用python的piecewise_regression包进行分段线性回归,其中参数n_breakpoints设置为3,piecewise_regression遵循muggeo的推导,
17、muggeo公式:y=αx+c+β(x-ψ)h(x-ψ)+ζ
18、其中,x输入的是pti1列,y输入的是pti2,α、c为分别为第一段回归线的斜率和截距,β为从第一段到第二段的斜率,ψ断点位置,h是heaviside阶跃函数,ζ是噪声项,直接通过泰勒展开对断点进行线性逼近;
19、泰勒展开式如下:
20、y≈αx+c+β(x-ψ(0))h(x-ψ(0))-β(ψ-ψ(0))h(x-ψ(0))+ζ
21、通过迭代对序列pti1和序列pti2进行断点估计,得到3个断点a1、a2、a3以及断点前线段的斜率k1、k2、k3;
22、步骤43:断点数据反归一化处理,得到原数据断点对应时间戳
23、对断点a1、a2、a3按照最小值为0,最大值为1,进行反归一化处理并对应到序列中相邻最近的时间戳,记为b1、b2、b3;对于线段斜率pl进行循环迭代,得到按顺序排列的时间戳断点列表b,b={b1、b2…bi…bn},以及对应的斜率列表k,k={k1、k2…ki…kn};
24、步骤44:根据片段数据斜率判断数据趋势状态,对设置线段变化判定阈值threshold_val设置为0.07,对于斜率按照以下规则进行映射:
25、
26、其中,r为上升,s为平稳,d为下降,经过以上公式映射,得到序列列表st;
27、步骤45:相同状态数据片段连接,生成对序列pr分析的数据列表
28、对列表st连续一致的状态进行连接,得到序列res,res={res1、res2…resi…resn},其中res1={s_time、e_time、state},s_time为对应到b的本段数据的开始时间,e_time为对应到b的本段数据的结束时间,state为本段数据的状态。
29、所述的步骤5为按照需求对筛选出的数据状态进行工况状态确认,根据不同的需求设置不同数据筛选工况状态。
30、所述的步骤6为对所需求的筛选后的res数据输出到数据库。
31、本发明的有益效果在于:本方法同时结合参数趋势形态变化和工程师自由参数设定,准确的统计出具体的工况发生时间段,记录电厂运行过程中发生的工况结果。通过本方法的测试分析,利用本工况识别方法判断识别结果与工程师人工统计结果完全相符合,与人工记录方法不同的是,本方法能更准确的统计出具体的工况发生时间段,能更准确的提供记录电厂运行过程中发生的工况结果。
1.一种基于分段线性回归的工况划分方法,其特征在于,包括如下步骤:
2.如权利要求1所述的一种基于分段线性回归的工况划分方法,其特征在于:所述的步骤1为从核电设备可靠性管理系统系统的iotdb时序数据库获取某电厂的电功率数据,时间间隔为1min,时间长度不低于20min,记为序列pr。
3.如权利要求1所述的一种基于分段线性回归的工况划分方法,其特征在于:所述的步骤2为对序列pt进行经验模态分解,即将pt中不同尺度的波动和趋势进行逐级分解,产生一系列具有不同特征尺度的数据序列,每一个序列称为一个固有模态函数imf,对分解后前三个分量舍弃,并对剩余分量进行重构得到pt。
4.如权利要求1所述的一种基于分段线性回归的工况划分方法,其特征在于:所述的步骤3为对数据按指定时间长度进行分段,采用基于负荷参数进行工况划分,设置时间长度为120min,按顺序对序列pt进行分段截取,对于最后一段序列ptn,假如ptn时间长度>10min则单独作为一段序列,否则,将最后一段序列添加到上一段序列,将分段后的序列顺序添加到数据列表pl,内部元素记为pti,其中0<i<=n,n为pt/120并向上取整。
5.如权利要求1所述的一种基于分段线性回归的工况划分方法,其特征在于,所述的步骤4包括如下:
6.如权利要求1所述的一种基于分段线性回归的工况划分方法,其特征在于:所述的步骤5为按照需求对筛选出的数据状态进行工况状态确认,根据不同的需求设置不同数据筛选工况状态。
7.如权利要求1所述的一种基于分段线性回归的工况划分方法,其特征在于:所述的步骤6为对所需求的筛选后的res数据输出到数据库。