中国海洋大学学报自然科学版  2020, Vol. 50 Issue (6): 149-156  DOI: 10.16441/j.cnki.hdxb.20180182

引用本文  

殷波, 张帅. 家用非侵入式电力负荷监测与识别算法研究[J]. 中国海洋大学学报(自然科学版), 2020, 50(6): 149-156.
YIN Bo, ZHANG Shuai. Research on Non-Intrusive Monitoring and Identification of Household Appliances[J]. Periodical of Ocean University of China, 2020, 50(6): 149-156.

基金项目

国际科技合作计划项目(2015DFR10490)资助
Supported by Internation Science and Technology Cooperation Program of China (2015DFR10490)

作者简介

殷波(1976-),男,副教授。E-mail:ybfirst@ouc.edu.cn

文章历史

收稿日期:2018-04-26
修订日期:2018-12-13
家用非侵入式电力负荷监测与识别算法研究
殷波 , 张帅     
中国海洋大学信息科学与工程学院,山东 青岛 266100
摘要:为实现非侵入式电力负荷监测与识别过程中,负荷投切时间的精确辨识以及负荷类型的准确识别,有效地实现电网动态分析、诊断和优化,提高电力利用率,本文提出一种家用非侵入式电力负荷监测与识别算法。首先,提出一种基于改进滑动窗的负荷投切检测算法,准确判断负荷投切时间和稳态时间,实现稳态负荷特征的高精度提取,提高投切检测辨识灵敏度和抗干扰能力。然后,利用Adaboost算法实现家用电力负荷识别。实验结果表明,本文提出的负荷投切事件检测算法和负荷识别算法准确率较高,可以满足实际应用需求。
关键词非侵入式    暂态事件检测    负荷监测    负荷识别    自适应增强算法    

智能电网技术是当前各国用电发展的焦点[1]。区别于传统电网,智能电网[2-4]具备更全面的电网细节信息,更有效的电网动态分析、诊断和优化,以及更精准的电网运营与管理。作为用电体系的一大主体,面向民用的智能电网技术成为热点问题。民用智能电网体系作为国家“坚强智能电网”的一部分,有利于促进居民关注用电,节约用电,深入了解居民用电需求与用电趋势,并与其它能源网相结合,实现更有效的能源互补体系。

负荷监测作为实现智能电网的第一步,须突破传统电表的功能限制,深入分析和获取居民用户内部负荷成分等信息。虽然侵入式负荷监测(ILM)的数据监测能力较好,但成本高,可操作性差[6-8]。相比较于ILM,非侵入式负荷监测(NILM)[9]借助负荷分解技术将总负荷信息分解为各个用电设备的详细信息,其成本较低,实施方便[5-7],但其监测与分解技术难度相对较大。为实现非侵入式负荷监测与辨识,首先需准确判别负荷投切的暂态事件。Ahmadi等[10]使用基于增量型负荷特征的方法对负荷进行暂态事件的检测,但难以处理同时性事件。Shaw等[11]使用事件前后的似然比测试对负荷进行暂态事件的检测。牛卢璐等[13]使用基于序贯概率比检验信号突变检测算法对负荷进行暂态事件的检测。根据暂态事件提取的负荷特征,黎鹏[14]使用了启发式算法求解稳态电流的分解模型对负荷进行暂态事件的检测,但该算法涉及负荷种类少,负荷分解偏差大。文献[15]中使用了基于信号包络的事件检测方法,它通过检测信号包络的变化,并修正窗口大小来进行事件检测。文献[16]中采用计算出的平均功率、变化点监测、拟合优度来检测负荷的活动情况。

本文提出了一种基于改进滑动窗的负荷投切事件辨识算法。该算法利用家用负荷的暂态与稳态特征,准确判断负荷投切事件并定位其稳定状态,算法实现简单,具备较强的抗干扰能力。在负荷辨识方面,本文使用了Adaboost算法,利用稳态负荷特征建立模型库对负荷进行辨识,并基于实测数据验证本文所提算法的有效性。

1 暂态事件检测 1.1 数据处理及负荷类型

本文使用实验室开发的硬件设备采集了11种常见负荷的数据。由于电流传感器温漂的原因,原始电流数据存在一定的无规律零漂现象,且噪声较多。以采集的台式计算机电流数据为例,原始数据波形如图 1所示。

图 1 未修正原始电流数据 Fig. 1 Uncalibrated current data

上述波形数据对本实验结果会产生较大的影响,因此我们需要对电流的波形数据进行修正。由于电流信号通常是周期性的,理论上单个周期内电流信号均值应接近零。利用这一现象,使用前一个周期数据均值对当前电流值进行修正,然后利用平滑滤波处理噪声,即可得到修正的电流波形(见图 2)。

图 2 修正的原始电流数据 Fig. 2 Calibrated current data

随后,对采集的负荷数据进行分析对比。提取4类波形状态,选取具有代表性负荷的电压电流数据,对其进行暂态事件检测。使用的负荷分别为台式电脑、柜式冰箱、微波炉和制氧机, 其图形构成为:自上而下分别代表了投切及运行全过程电流数据、投入瞬间电流变化数据、运行过程部分电流波形数据、切除瞬间电流变化数据。其中投入瞬间电流变化数据、运行过程部分电流波形数据、切除瞬间电流变化数据是从投切及运行全过程电流数据中截取的部分时间段数据。

图 3为台式电脑投切以及运行过程的电流波形,电脑是一类典型的低功率多状态负荷,其功率范围在几十至上百瓦之间。台式电脑的开启过程需经多个工频周期才能进入一个相对平稳的状态,且受电脑实时运算需求的影响,运行过程中的电流较难以保持相对稳定的状态。

图 3 台式电脑原始电流波形 Fig. 3 Original current waveform of computer

图 4为冰箱投切以及运行过程的电流波形,冰箱为家庭常见的低功率,常开负荷。冰箱投入的瞬时电流较大,且过程历经多个阶段的电流状态变化,共需约8 s才能达到稳态。

图 4 冰箱原始电流波形 Fig. 4 Original current waveform of refrigerator

图 5为微波炉的投切以及运行过程的电流波形,其投入的暂态时间约为2 s,投入状态接近结束时,电流峰值变动较为明显且运行过程中峰值电流波动较大,容易被误判为小功率负荷的投切事件。

图 5 微波炉原始电流波形 Fig. 5 Original current waveform of microwave oven

图 6为制氧机的投切以及运行过程的电流波形,其运行过程中,功率存在一定规律的波动,较难以确定稳态,容易被误判为小功率负荷的重复投切。

图 6 制氧机原始电流波形 Fig. 6 Original current waveform of oxygen machine

上述4类负荷相较于一般负荷,暂态过程与稳态过程的波形均存在不同的特点,具有一定的代表性,且不同负荷功率差别较大,难以利用普通的负荷投切算法进行投切状态识别。但这4类负荷也存在共性:首先,负荷投切过程暂态时长虽不一致,但均有较明显的功率变化; 其次,负荷正常运行过程中,除个别异常状态外,负荷的功率在一定范围内波动。因此,负荷投切辨识算法应具备对不同特性暂态事件的泛化能力,并消除负荷运行过程中,功率波动及其它干扰带来的影响。

1.2 基于改进滑动窗的负荷投切辨识算法原理

本文提出了基于改进滑动窗的算法进行暂态事件辨识,定义窗口长度为l,表示储存当前时刻至前l个功率数据。传统算法以窗口均值与当前值做差或前后功率均值做差来判断负荷投切事件。但若存在运行过程中,功率波动或多状态负荷变换投入的情况,可能会出现误判。因此,设定窗口高度为2h,连续超界比r(0 < r≤1),滤掉小范围内的功率波动现象。

本文以一个周期内的功率积分来描述一个功率信号,称为瞬时功率p,定义两个数据点之间的时间差为dt,周期为T,则有

$ p = \int_0^T {u\left( t \right)i\left( t \right){\rm{d}}t} 。$

图 7所示,当前时刻的功率值表示为这一段时间内的功率集合如式(1)所示:

$ P\left( t \right) = \left[ {p\left( {t - l} \right)\;\;\;p\left( {t - l + 1} \right)\;\;\; \ldots \;\;\;p(t)} \right]。$ (1)
图 7 功率P(t)和前1个点时刻功率P(t-1)数据 Fig. 7 Power P(t) and previous power P(t-1)

为了避免负荷投入瞬间的功率异常和运行过程中可能出现的少数连续突变等情况的发生,本文使用了当前时刻功率最小值来表示滑动窗内的数据点,取P(t)中最小的nmin个功率值的均值作为当前时刻实际的最小功率,记为X(t),如式(2)所示。

$ X\left( t \right) = \left[ {{x_p}\left( 1 \right)\;\;\;{x_p}\left( 2 \right)\;\;\; \ldots \;\;\;{x_p}({n_{{\rm{min}}}})} \right]。$ (2)

算法1主要对最小功率与功率均值进行比较,记录连续超界个数用以进行暂态事件的检测。由于峰值电流在爬升与下降过程必然存在某点导数接近于0,使得峰值落在滑动窗内部的情况,因此两个判断语句中的Count不需分别统计。同时,为了防止功率连续超界情况的发生,当判定为暂态事件出现时,无需Count置0。

算法2主要实现了功率最小值及功率均值的计算,此处p(t)构造成环形数组的形式。计算均值时,只需减掉P(tl)/l并加上P(t)/l。同理,构造Xp(t)的环形数组并进行计算。

1.3 算法可行性验证

为了验证本文算法的有效性,利用以上4类负荷的功率数据进行投切事件检测的仿真。设定h=15,r=0.5。提取功率波形数据,运行并分析结果如图 8所示。

图 8 台式电脑暂态事件检测 Fig. 8 Computer transient event detection

图 8为台式电脑的功率波形,在台式电脑的投切事件检测过程中,约23 s处达到投入检测条件,判定为负荷投入事件。约99 s处电脑电源灯熄灭,算法正常检测电脑关闭过程。由此,证明该算法在功率小于60 W且运行过程存在功率波动条件下,对负荷的投切仍能较为准确地辨识。

图 9为冰箱的功率的波形,在冰箱的投切事件检测过程中,由于冰箱投入过程较长,约9~17 s均为冰箱投入过程。在约14 s附近达到投入检测条件确定为负荷投入事件,而后Px(t)虽出现约73 W的功率变化,但由于连续计数未满足条件而不发生暂态事件的判定。由于冰箱没有关闭键,约30 s直接拔除电源,算法正常识别为切除过程。证明该算法对如冰箱这类长时间启动负荷的投切检测效果也较为理想。

图 9 冰箱暂态事件检测 Fig. 9 Refrigerator transient event detection

图 10为微波炉的功率波形,微波炉启动过程约2 s,约第10 s处达到投入检测条件,判定为投入事件。约33 s后手动旋转定时按钮关闭微波炉,被算法正常识别为切除过程。

图 10 微波炉暂态事件检测 Fig. 10 Microwave oven transient event detection

图 11为制氧机的功率波形,制氧机的负荷投切状态较为明显,但运行过程特殊,功率不断呈周期性变化。约31 s成功识别为负荷投入。约137 s通过按钮关闭制氧机,被算法正常识别。运行过程中存在60 W左右的功率变化,证明该算法具备消除一定范围内非突变型功率变化的能力。

图 11 制氧机暂态事件检测 Fig. 11 Oxygen machine transient event detection

实际上,电器投切过程的暂态波形各具特色。通过负荷投切过程中波形信号的进一步分析可提高负荷辨识与分解的质量。但如前所述,部分负荷运行过程中,功率波动较大。如图 12所示,以制氧机为例,由于存在持续变化时长和变化范围的限制,在非人为操作下,负荷正常运行的功率将在一定范围内波动,不会被算法判定为暂态事件,避免了误判的发生。而部分多状态负荷自动切换状态的过程能够成功能被识别为对应的暂态事件。因此,使用改进滑动窗的算法能够有效地避免由于功率波动引起的误判,具备一定的适应能力和抗干扰能力。

图 12 制氧机运行过程功率变化 Fig. 12 Power changes of oxygen mechine operating process

由于存在诸如冰箱等需要长时间启动的负荷,以暂态事件后固定时长的时间点作为稳态特征提取点,进行特征提取,会存在一定的偏差。因此,本文利用与暂态事件算法同样的机理,将连续超界计数改为连续界内点计数。在负荷投切事件被算法识别时,启动稳态点检测算法。以冰箱和微波炉为例,设定h=5,r=0.5应用该算法得到的稳态点如图 13所示。

图 13 稳态点检测 Fig. 13 Steady state point detection

其对应的投切和稳态判定时间如表 1所示。

表 1 稳态状态判断 Table 1 Steady state judgment  

由此可以看出,该稳态检测方法也适用于从投入至到达稳态的中间过程较长的负荷。本文将提取稳态点附近的负荷特征数据,建立负荷特征样本库,进而进行负荷模型库的建立和负荷识别工作。

2 模型库建立与负荷识别

本文使用负荷运行过程中的稳态特征建立特征模型库本质上是多分类模型构建问题。实际应用中,分类效果较好的机器学习算法包括SVM[8]和Adaboost[12]算法等。而测试过程中发现Adaboost对稳态特征具有良好的识别效果,故本文采用Adaboost算法进行负荷识别。

Adaboost即Adaptive boosting,是较为流行的一种元算法,与bagging在技术上比较类似。所不同的是,Adaboost通过串行方式训练不同的分类器,每个新分类器都根据已训练出的分类器的性能进行训练,并通过权重表示对应分类器在上一轮迭代中的成功度,因而其分类器权重是不相等的。分类结果也是依据所有分类器的加权求和而得。

图 14所示,左栏为数据集。框中非等宽长条代表样本权重,经过分类器得到结果乘权值α,并累加求和,从而得到结果,其算法流程如下所示。


图 14 Adaboost示意图 Fig. 14 Adaboost schematic
3 仿真实验

本文采集了台式电脑、冰箱、微波炉、制氧机、热水壶、电吹风、电磁炉、挂烫机、电饭煲、饮水机、电视机共11类负荷的实测数据,使用暂态事件识别算法检测负荷投切事件,以稳态判定点处提取的负荷特征数据作为训练样本,所提特征包括电流峰值,电流均方根值,电流峰峰值,电流暂态能量,平均功率以及谐波系数,采用Adaboost算法进行分类模型训练,并与SVM算法进行比较。为确保算法参数设定的合理性,利用网格遍历的算法对迭代次数和学习率进行参数优化。

3.1 单负荷暂态事件检测

设定暂态事件检测参数h=15,r=0.5。设定稳态过程判断参数h=5,r=0.5。每类负荷重复投切100次,记录负荷误判及漏判的次数,并将提取的稳态负荷特征添加到数据库中,以供分类算法使用。

表 2所示,台式电脑和制氧机在投切及运行过程中出现少量误判,负荷投切暂态事件检测的平均正确率达到99.54%,整体的误判次数有着明显的下降。实验结果表明,该算法对冰箱这类长时间启动的负荷有着很好的效果,同时对具有功率持续波动特性的制氧机以及多状态负荷台式电脑等负荷也有很高的准确率,证明了该算法有着良好的鲁棒性以及有效性。

表 2 单负荷暂态事件检测 Table 2 Single load transient event detection
3.2 多负荷混合暂态事件检测

为测试该算法应对多类负荷混合投切过程的有效性,对热水壶、挂烫机、制氧机、电吹风的混合投切过程进行测试。本测试以其触发时间以及检测状态为标准。

表 3可知,在多负荷混合投切过程中,只有制氧机的算法判定投入时间相比实际投入时间有所延迟, 其它类型的负荷的触发时间及检测结果都极为准确,突出了该算法的实时性以及准确性。

表 3 多负荷混合暂态事件检测 Table 3 Multiple load mixed transient event detection
3.3 分类算法比较

本文主要对Adaboost和SVM算法的负荷分类效果进行了对比验证。由于同一类负荷投切过程中对应的稳态负荷特征具有较大的相似性,因此将投入和切除提取的稳态特征合并后添加到数据库中,并且同一类负荷的投入和切除定义为不同的标签。利用Adaboost和SVM算法分别进行10次分类模型训练,取平均正确率,结果如表 4所示。

表 4 分类算法比较 Table 4 Classification algorithm comparison

采用Adaboost算法进行分类模型训练时,其测试过程中正确率基本稳定在94%~95%之间,而应用SVM算法进行分类模型训练时的正确率则不稳定,最低12.57%,最高99.8%。如果只对投入样本集进行训练,或只对切除样本集进行模型训练时,两种算法正确率均保持在99%以上。因此,基于稳态负荷特征的Adaboost负荷识别方法具有较高的准确率和稳定性。

4 结语

本文提出了一种基于改进滑动窗的暂态事件检测算法, 该算法能够较准确的识别负荷投切时间和稳态时间,具有实现简单且抗干扰能力强的优势。在负荷识别方面,本文采用投切检测算法提取的稳态负荷特征,并运用Adaboost算法进行分类模型的建立与测试验证。实验结果表明,该方法对于大多数家用负荷具有良好的分类识别性能。

但是由于此方法中存在功率阈值的设定,在通用参数的设定条件下难以实现小功率负荷暂态事件的检测。未来,我们将对小功率负荷进行更深层次的研究,以进一步提高算法的适用性和可靠性。

参考文献
[1]
康重庆, 陈启鑫, 夏清. 低碳电力技术的研究展望[J]. 电网技术, 2009, 33(2): 1-7.
KANG Chong-qing, CHEN Qi-xin, XIA Qing. Prospects of low-carbon eletricity[J]. Power System Technology, 2009, 33(2): 1-7. DOI:10.3969/j.issn.1674-0629.2009.02.001 (0)
[2]
余贻鑫. 智能电网[J]. 电网与清洁能源, 2009, 25(1): 1-7.
YU Yi-xin. Smart grid[J]. Power System and Clean Energy, 2009, 25(1): 1-7. DOI:10.3969/j.issn.1674-3814.2009.01.001 (0)
[3]
肖世杰. 构建中国智能电网技术思考[J]. 电力系统自动化, 2009, 32(9): 1-4.
XIAO Shi-jie. Consideration of technology for construct-ing Chinese smart grid[J]. Automation of Electric Power Systems, 2009, 32(9): 1-4. DOI:10.3321/j.issn:1000-1026.2009.09.001 (0)
[4]
李兴源, 魏巍, 王渝红, 等. 坚强智能电网发展技术的研究[J]. 电力系统保护与控制, 2009, 37(17): 1-7.
LI Xin-yuan, WEI Wei, WANG Yu-hong, et al. Study onthe development and technology of strong smart grid[J]. Power System Protection and Control, 2009, 37(17): 1-7. (0)
[5]
余贻鑫. 智能电网的技术组成和实现顺序[J]. 南方电网技术, 2009, 3(2): 1-5.
Yu Yixin. Technical composition of smart grid and its implementation sequence[J]. Southern Power System Technology, 2009, 3(2): 1-5. DOI:10.3969/j.issn.1674-0629.2009.02.001 (0)
[6]
Ridi A, Gisler C, Hennebert J. A Survey on Intrusive Lload Monitoring for Appliance Recognition[C].[s.l.]: IEEE Computer Society, 2014: 3702-3707. (0)
[7]
Froehlich J, Larson E, Gupta S, et al. Disaggregated end-use energy sensing for the smart grid[J]. IEEE Perva-Sive Computing, 2010, 10(1): 28-39. (0)
[8]
刘志刚, 李德仁, 秦前清, 等. 支持向量机在多类分类问题中的推广[J]. 计算机工程与应用, 2014, 40(7): 10-13.
LIU Zhigang, LI Deren, QIN Qianqing, et al. An analytical overview of methods for multi-category support vector machines[J]. Computer Engineering and Applications, 2014, 40(7): 10-13. DOI:10.3778/j.issn.1002-8331.1308-0292 (0)
[9]
Hart G W. Nonintrusive appliance load monitor-ing[J]. Proceedings of the IEEE, 1992, 80(12): 1870-1891. DOI:10.1109/5.192069 (0)
[10]
Ahmadi H, Marti J R. Load decomposition at smart meters level using eigenloads approach[J]. IEEE Transactions on Power Systems, 2015, 30(6): 3425-3436. DOI:10.1109/TPWRS.2014.2388193 (0)
[11]
Shaw S R, Abler C B, Lepard R F, et al. Instrumentation for high performance nonintrusive electrical load moni-toring[J]. Journal of Solar Energy Engineering, 1998, 120(3): 224-229. DOI:10.1115/1.2888073 (0)
[12]
Freund Y, Schipare R E. A Decision-Theoretic Generalization of On-line Learning and an Application to Boosting[C]. Computational Learning Theory: Second European Con-ference, 1995: 23-37. (0)
[13]
牛卢璐, 贾宏杰. 一种适用于非侵入式负荷监测的暂态事件检测算法[J]. 电力系统自动化, 2011, 35(9): 30-35.
Niu Lulu, Jia Hongjie. Transient event detection algorithm for non-intrusive load monitoring[J]. Automation of Electric Power Systems, 2011, 35(9): 30-35. (0)
[14]
黎鹏.非侵入式电力负荷分解与监测[D].天津: 天津大学, 2009.
Li Peng. Non-Intrusive Method for Power Load Disaggregation and Monitoring[D]. Tianjin: Tianjin University, 2009. (0)
[15]
Nait Meziane M, Ravier P, Lamarque G, et al. High Accuracy Event Detection for Non-Intrusive Load Monitoring[C].[s.l.]: IEEE Signal Processing Society, 2017: 2452-2456. (0)
[16]
Jin Y. A time-frequency approach for event detection in non-intrusive load monitoring[J]. Proceeding of SPIE-The International Society for Optical Engineering, 2011, 8050(4): 1-13. (0)
Research on Non-Intrusive Monitoring and Identification of Household Appliances
YIN Bo , ZHANG Shuai     
College of Information Science and Engineering, Ocean University of China, Qingdao 266100, China
Abstract: Non-intrusive load monitoring, known as one of the key technologies for smart grid, has been studied extensively. The identification of load switching time and load type are the two main research directions. In such a way, the power efficiency can be improved according to dynamic analysis, diagnosis and optimization of the power grid. In this paper, a new method for non-instrusive load monitoring and identification of household electric appliances is proposed. First, the load switching event detection algorithm is constructed based on an improved sliding window. Hence, the detection sensitivity and anti-interference ability can be improved because of the high precision extraction of steady state features. Then, the load identification is carried out through Adaboost algorithm. Finally, the high precision load recognition performance of the proposed method is verified by experiments.
Key words: non-intrusive    transient event detection    load monitoring    load identification    adaboost algorithm