非侵入式负荷监测系统设计*
2022-10-26买亚龙孙佳宁
买亚龙,唐 寅,李 坚,孙佳宁,高 翔,许 磊
(1. 电子科技大学机械与电气工程学院,四川成都 611731;2. 电子科技大学广西智能制造产业技术研究院,广西柳州 545003)
引 言
能源和环境是当今人类面对的两个重大课题,更高效的用电是应对日趋严峻的能源环境问题的关键手段。居民用电是能源的主要流向之一,居民用电需求的激增将引发一系列能源环境问题,因此充分挖掘用户侧的“减碳节能”潜力至关重要,其中的关键手段是提高用户对家中负荷耗能的感知与监测,以便用户能及时发现家中的异常用电行为并做出积极响应。要做到这些,就必须克服传统电表只能记录用户总用电量而不能记录各个用电设备用电量的局限性,实现“细粒化”的用电监测,即负荷监测。
传统的侵入式负荷监测(Intrusive Load Monitoring, ILM)需要给用户的每一个用电设备加装传感器,需要对所有传感器的数据进行处理并上传服务器,以此来监测每一种用电设备的用电情况。虽然这种方法有很好的监测效果,但用户的接受度较低,因其安装成本和隐私泄露的风险大大增加,且随着用电设备的增加,其灵活性和扩展性降低,并不适用于大部分用户。非侵入式负荷监测(Non-intrusive Load Monitoring,NILM)是20世纪90年代由Hart教授提出的一种以最小的代价获取用户能耗信息的技术[1]。只需在用户的电力入口处(入户总线)安装设备就能够实现对居民家中用电负荷的监测,安装成本大大降低,可靠性高,用户接受程度高。非侵入式负荷监测系统从总负荷中分解出各个用电负荷的运行情况,从各个负荷的使用情况分析用户的用电行为,形成优化电能供给,提高供电侧电能质量以及供电的可靠性。用户侧以细粒化的用电信息为依据,优化自身的用电行为,减少不必要的电能消耗[2]。
1 非接触式高频同步电力数据采集装置设计
1.1 基于霍尔传感器的非接触式电流测量
传统的接触式测量需要将测量仪器直接接入电路,这必然会对原有电路产生或多或少的影响,测量结果与实际值之间就不可避免地存在误差。另外,高频电力数据采集装置的应用场景是家庭入口总线处或者更高电压的场景总线处,若采用接触式的测量方案,则在安装或检修装置时,势必会给操作人员带来不必要的风险,也给设备的维护增加不小的难度。非接触式电力数据采集装置测量设备不需要直接接入电路,因而不会对电路中原有器件的运行状态产生干扰,采集到的电力数据更加准确,而且操作人员不存在与高压线路直接接触的风险,降低了装置的危险系数。对此,本文提出了一种基于霍尔传感器的非接触式电流测量方法。在测量装置与通电直导线(无限长)相距r处的霍尔电动势为:
式中:R为霍尔系数;ic是电流强度;d是半导体材料平行于磁场方向的宽度;I为源电流;μ0为磁常数。由被测电流与霍尔电动势的关系,可计算得到被测电流值。
1.2 硬件装置设计
硬件部分的整体设计如图1所示,包括非接触式电流测量装置、模数转换模块、异地同步采样信号发生模块、数据处理模块以及通讯模块。模数转换模块将模拟信号转换为计算机能够处理的数字信号,该模块选用的芯片是ADS7864。为了实现异地不同装置之间采集信号的同步性,需要给模数转换模块提供同步时钟采样信号。该部分使用复杂可编程逻辑器件(Complex Programmable Logic Device, CPLD)来实现,选用的芯片为EPM1270。采用全球定位系统(Global Positioning System, GPS)同步卫星授时,它的授时时间与通用的国标时间之间的误差小于1 μs,因此对50 Hz的家用交流电信号来说,准确性可以得到最大程度的保障。数据处理模块是硬件系统的核心,需要较高的运算精度和数据处理能力,选用的芯片为TMS320F2812[3],其主要功能为产生模数转换的控制信号及数据读取控制信号、数据的存储及处理等。通讯模块分为服务器通信和串口通信两个部分。为了方便设备的调试及离线负荷数据库的建立而设置了RS232串行接口,用于与个人计算机(Personal Computer, PC)的通讯。同时为了实现负荷在线监测,需要将处理后的数据传输给网络传输模块并发送至远端服务器,采用IEEE1451.2的TII接口。
图1 硬件装置整体框图
2 基于高频数据的非侵入式负荷辨识方案设计
2.1 事件检测与电流分离
2.1.1 基于非参数化CUSUM的事件检测方法
通常将负荷的投切或负荷运行状态的改变定义为负荷事件。事件发生时,总的电流和功率序列会发生改变,因而可以将事件检测问题归为变点检测的问题。处理变点检测问题常用的算法为累积和(Cumulative Sum, CUSUM)。根据是否需要预先知道数据的概率分布情况,可以将CUSUM分为参数化的CUSUM和非参数化的CUSUM。由于电力负荷不断变化,无论是功率还是电流等随机变量,都无法预先得知其概率分布情况,因此研究非参数化的方法在NILM领域更有意义[4]。
非参数化CUSUM的主要思想为:当关注的统计量比正常运行条件下的平均值高或低时,认为可能有事件发生;对监测量与平均值的差进行累积,当累积和超过某个阈值时确定有事件发生,之后便可以倒推回事件发生的时刻。其算法流程为:设某一时间序列为T={t(k)}(k= 1,2,···),t为时刻,统计函数s定义为:
式中:μ0为变点发生前序列的均值;β为噪声水平。当sk >0时,认为采样序列在该时刻发生变化,若尚未达到事件发生的阈值h,则初始化延迟时间m= 0;令m=m+1并继续进行累积和,直到sk >h时认为事件被监测到事件发生的时刻可以倒推为t=k-m。
2.1.2 基于并联电路的电流分离方法
在检测到事件后需要从总负荷电流数据中分离出单个负荷的电流序列。由于各负荷电流之间相互独立且满足并联电路的基本原理,故可以将入户总电流视为各负荷电流之间的叠加[5]。由于电压信号及相位始终保持相对稳定,且电流的相位由电压的相位决定,因而只要保证在相同的电压起始相位提取稳态电流信号,就可以利用并联电路的原理,将事件发生前后的稳态电流序列相减得到单个负荷事件的电流序列,从而实现单负荷电流的分离[6]。本文将电压过零点并上升的时刻作为基准来提取电流序列,具体分离步骤为:
1)提取事件发生后的稳态电流序列。当稳态电压过零点并上升时,采集稳态电流序列。
2)提取事件发生前的稳态电流序列。以事件发生前稳态电压过零点并上升的时刻作为基准采集相同长度的稳态电流序列。
3)单负荷电流分离。将步骤1中的电流序列与步骤2中的电流序列如式(3)所示做差。
式中:IS(k),Im1(k),Im2(k)分别为单个负荷、事件发生前、事件发生后稳态电流的第k个采样点;N为电流序列长度。
2.2 特征提取
负荷特征是负荷识别的依据。经过事件检测和电流分离后得到单个负荷稳态运行时的电流序列。图2展示了6种常见家用负荷的稳态电流波形。直接利用电流序列作为负荷特征虽具有较高的识别度但由于序列过长,运算复杂度增加,因而需要从电流序列中提取出有效的负荷特征。非线性设备(如各类电子设备)的谐波含量并不相同,而常见的线性设备(如白炽灯、电加热吹风机等)的功率等级有差异,故可以采用稳态电流的基波和奇次谐波(3rd,5th,··· ,15th)作为负荷特征。本文利用快速傅里叶变换提取稳态电流基波和奇次谐波。
图2 6种家用负荷稳态电流波形
2.3 负荷辨识
模式识别算法是非侵入式负荷辨识的常用算法,其中基于监督学习的机器学习算法具有很好的分类效果,已经被大量应用于非侵入式负荷识别。本文采用监督学习中常用的K近邻(K-Neighbors, KNN)、多层感知机(Multilayer Perceptron, MLP)以及随机森林(Random Forest, RF)作为负荷辨识的算法。
2.3.1 K近邻
K近邻算法对某个样本的所有特征与其他样本的对应特征进行比较,利用欧式距离等方法选择出K个最相似的样本[7]。之后与随机森林的决策部分类似,将这K个样本出现次数最多的标签作为该样本的标签。其理论成熟,思想简单,但是计算量较大,不适用于特征数多的样本。
2.3.2 多层感知机
多层感知机也叫人工神经网络,类似于人的神经系统,由输入层、输出层和隐藏层组成。其算法流程为:输入数据乘权重后输入到隐藏层,经激活函数后输出,之后将输出值与标签值的插值当作优化网络的目标函数,通过不断的训练更改权重使目标函数最小,以求得使输出值与标签值的差最小的模型。图3为由3个输入、一个隐藏层神经元和一个输出构成的简单多层感知机,其中f为激活函数,w1,w2和w3为权重,x1,x2和x3为3个输入,wx为权重,b为偏置。
图3 多层感知机结构
2.3.3 随机森林
随机森林由多个决策树组成。决策树是一种树形结构,其原理大致可以归纳为层层分析和逻辑推理。根节点是所有的样本特征,内部节点用于判断一个特征层面上的分类结果,叶节点代表分类结果,其分类流程如图4所示。每个决策树为一个分类器,决策树的数量即为分类数量。随机森林算法利用集成学习的思想,统计所有的分类结果,将分类结果次数最多的类别指定为最终的输出类别。
图4 决策树的流程图
2.4 实验及结果分析
2.4.1 评价指标
评价指标需要关注整体的分类准确率以及每类设备的分类效果。本文采用准确率(accuracy)A、精确率(precision)P、召回率(recall)R以及F1得分(F1-score)F1来评估模型。准确率A表示正确分类的样本占测试集样本数的比例,精确率P表示算法预测的标签为某电器时,其实际标签为该电器的概率,召回率R表示某电器样本被算法正确地辨识为该电器的概率,F1得分F1是结合精确率P和召回率R的综合性指标,它们的具体计算方法为:
式中:N1表示测试集样本总数;T表示模型辨识后得到的电器标签与实际样本标签相一致的样本数量;R表示模型未辨识为某电器标签、实际标签也非该电器的样本数量;F表示辨识标签为某电器而实际标签非该电器的样本数量;Q表示辨识标签不为某电器而实际标签为该电器的样本数量。
2.4.2 结果分析
本次实验利用PLAID数据集[8]的高频电流数据进行算法验证。经过事件检测、电流分离以及特征提取后得到6种设备共816组有效样本。将随机打乱后的样本的80%用作模型的训练,20%作为模型性能的测试,并将样本-标签对输入到不同的机器学习分类算法中。本实验使用的集成开发环境为PyCharm,利用Scikit-Learn库中的机器学习算法进行实验。K近邻算法的整体分类准确度为99.40%,多层感知机的整体分类准确度为95.70%,随机森林算法的整体分类准确度为98.80%。模型单设备的分类效果见表1。
表1 单设备的分类效果
从表1可以看出,单设备的F1得分均较高,证明了本次实验将谐波作为负荷特征的有效性。本次算例的不足之处在于:分类效果在本数据集上表现良好,但在其他数据集上的泛化能力未知;数据样本数量还不够多,在后续的研究中可以尝试利用合成少数类[9]或数据增强[10]的方法来增加样本数据集以提高模型的泛化能力。
3 系统整体方案设计
非侵入式负荷监测系统分为离线建模以及在线监测两部分。
3.1 离线建模
利用非接触式高频电力数据采集装置采集单个负荷正常工作时的稳态电流数据。之后利用快速傅里叶变换获得稳态电流的基波和奇次谐波并将其作为负荷特征。同类设备提取多组样本以保证样本的多样性从而提高模型的泛化程度。将所有样本输入到机器学习模型中让模型自动进行参数的调整和优化。
3.2 在线监测
将非接触式高频电力数据采集装置安装在总线处。对服务器接收到的数据进行事件监测、电流分离以及负荷特征提取,将提取到的特征输入到离线建立的模型中即可识别设备的类型。
4 结束语
本文基于非接触式高频同步电力数据采集装置设计了一种非侵入式负荷监测系统。硬件部分使用非接触式高频电力数据采集装置,包括非接触式电流测量模块、模数转换模块、同步采样信号发生模块、数据处理模块以及通讯模块。软件部分使用非参数化累积和的方法进行事件检测,利用并联电路理论进行单负荷电流提取,将稳态电流基波和奇次谐波作为负荷特征,利用机器学习的方法进行负荷的辨识,并用公开数据集证明了将电流基波、谐波作为负荷特征的有效性。最后介绍了非侵入式负荷监测系统的整体方案设计,包括离线建模和在线监测。