论文题目:Cost-effective fault diagnosis of nearby photovoltaic systems using graph neural networks
发表时间:2023 Energy (影响因子:9)
论文作者:Jonas Van Gompel, Domenico Spina, Chris Develder
作者单位:比利时根特大学
1. 背景
1.1 介绍
在目前的开发太阳能方面,至关重要的内容是增加光伏(PV)装置的数量并使其效率最大化。尽管PV的效率一直在稳步提高,但是PV中的故障会造成严重的能量损失和损坏。
PV系统中出现的故障包括短路、布线退化、热点等。虽然大多数故障可以通过技术人员的目视检查或通过无人机进行红外热成像来诊断,但这些技术仅是针对大型的PV系统,且成本效益较低。
目前基于人工智能的故障诊断方法为检测PV系统提供了有趣的选择,这些方法避免了定义系统特定阈值的需要,也不一定需要昂贵的传感器,同时保留着高精度。根据检测和识别故障所采用的原理,这些技术可以分为以下五类:
比较PV系统的预期输出和实测输出。预期输出可以通过基于物理的PV模拟或通过回归来预测。在这两种情况下,都需要环境天气条件(如辐照度和温度)作为输入,以获得预期的功率输出。
I-V曲线分类。PV系统的I-V特性曲线提供了比最大功率点(Impp和Vmpp)产生的电流和电压更丰富的信息。
Impp和Vmpp故障暂态识别。当以足够高的时间分辨率监测产生的电流和电压时,可以在故障发生的那一刻检测到瞬态行为。此外,特定类型的故障会在瞬态中产生不同的足迹,从而可以识别故障类型。
比较相邻PV的输出。一般来说,PV中每个模块产生的功率非常相似,因为模块具有相同的趋势。
比较附近PV系统的输出。就像相邻的PV一样,地理上邻近的PV产生的电力是高度相关的。这些相关性可以被利用来执行PV故障诊断,仅使用每个PV系统产生的功率,这在逆变器上很容易获得。因此,这种方法是引人注目的,因为它不需要天气测量、参考模块、I-V曲线、高频测量或微型逆变器,与迄今为止提出的方法相比,其实施成本显着降低。
1.2 本文结果
本文最终实现了一种图神经网络解决方案来检测一组附近的PV系统。所提出的方法实施成本小,无需任何额外的传感器。另外该模型可以准确检测和识别六种相关故障,在多个系统同时故障时,也能准确判断。通过学习PV系统之间的差异,对没有训练过的PV系统也能使用。
2. 方法
本文目标是通过比较一组附近的PV装置的产量来检测系统。主要数据包括每个PV系统的电流和电压、PV系统间的距离、高差和相对方位。
机器学习模型使用监督学习进行训练,对其中参数进行优化以产生对应于输入的输出。另外,机器学习模型需要大量的数据,然而从现场故障的PV系统中收集足够的数据即昂贵又具有潜在危险,因此使用基于物理的PV模拟来生成大量的合成训练数据。
所提出的方法首先比较了过去24小时内产生的电流和电压。对每个PV系统,考虑数据的时间性质,24小时窗口首先由循环神经网络层处理。然后将从站点电流和电压中提取的特征赋予对应的图节点。图的边基于PV的方向和地理位置,即包含它所连接的两个站点之间的距离和高度差以及两个系统间的倾斜和方位角差异(这些特征在图中被表示为已知变量)。构造的图用作GNN层的输入。
3. 模拟PV及故障
因为从故障PV阵列中收集大量真实数据是不可行的,因此通过基于物理的PV模拟(“Energy yield prediction model for PV mod-ulesincluding spatial and temporal effects,European Pho-tovoltaic Solar Energy Conference and Exhibition,2014)生成了合成训练数据。
为了模拟提供真实的天气输入,让图中的每个站点对应于国家可再生能源实验室的测量站的公开天气数据。
一般来说,PV系统会有不同的朝向、PV模块的数量、电器配置和模块类型。因此,在合理的范围内,为每个站点随机选择不同的参数值。
开路 布线断开
短路 意外的低电阻路径
线损退化 串联电阻增加
部分遮蔽 局部阴影
污垢 模块表面积尘积聚
PID(分流)类型 电压大引起的电化腐蚀
如图,为站点1的PV系统和已知的设定故障。在本文中,主要考虑六种故障类型,对每种故障类型,数据集中包含四种严重程度。在可能的情况下,故障严重程度选择在5%-20%的范围内。因此,模型必须能识别使功率减少5%的故障,这种故障的早期识别对于最大限度提高PV系统的效率和寿命至关重要,但是具有难度。
4. 数据预处理
大多数PV没有配备专用的电流和电压传感器。因此,假设产生的电流和电压将由逆变器测量,以最大限度地降低实施成本。由于逆变器测量可能包含显著的测量误差,在模拟的电流和电压中包含5%均匀分布的噪声。
在这项工作中,我们将每个输入特征除以其名义最大值,以便它们的尺度具有可比性。PV系统产生的最大电流和电压高度依赖于模块的数量、模块的特性以及模块之间的连接方式。在归一化电流和电压时考虑到这一点,允许模型推广到不同的PV配置。
式中pi和si分别表示PV系统i的子串数和串联面板数,I_{SC,i}和V_{OC,i}分别表示PVi中各模块的短路电流和开路电流。对每个时间步长的电流和电压时间序列数据进行归一化处理。对所有其他输入简单除以定义常数来归一化。
每小时,GNN模型通过滑窗24小时的窗口来根据过去24小时的测量结果预测所有PV系统的状态。GNN模型接收所有PV系统产生的电流和电压作为输入。
5 图神经网络
在本文中,考虑由元组(V,E)定义的无向图。V表示节点的集合,E表示边的集合,e_j代表边j的特征值,例如两个点之间距离。
如图,在训练过程中,GNN层更新图的边和节点特征。
首先,边的特征将基于该边所连接的两个节点的特征更新为新值,在(B)中,蓝色边缘用卷积更新,黑色节点作为输入:
每条边都使用相同的多层感知机f_e更新,然后类似的,使用第二个多层感知机f_v更新每个节点。每个边的特征基于连接到节点的边的聚合特征的新值更新,(C)展示使用连接边的特征之和作为输入,对蓝色节点进行更新。
边缘特征可以通过对其输入排列不变的任意函数进行聚合,并且可以采用任意数量的输入。第二个公式中的求和可以用平均值、最大值等来代替。
6 机器学习模型
在本节中,作者提出了GNN模型,并使用CatBoost和堆叠GRU模型进行对比,这些模型为其他作者提出的,堆叠GRU由两个堆叠GRU层的GRU块和第二层的残余连接组成。
6.1 GNN模型
如图所示为作者提出的GNN模型。由于其输入包含时间序列,音系使用GRU块从产生的电流和电压的24小时窗口中提取特征。同一GRU块连续应用于每个PV系统的24h窗口,这确保了模型可以将任意数量的光伏系统作为输入。经过实验,如果没有GRU层,模型会因为无法考虑时间维度而损失8%左右的准确度。
之后,使用两个XENet层。第一个XENet从所有光伏系统的24小时窗口中提取的特征作为输入。输入边缘特征直接由光伏系统的朝向角度和地理位置确定,并且随着时间保持恒定。
为简单考虑,这里的图只构造完全图,即所有所有的节点相互连接。如果监控的PV数量过多,这种情况下可以设置一定的阈值,仅连接系统间距离小于阈值的节点。
XENet:
SENet 主要过程可以表述为以下公式:
其中,φ(s), φ(n), φ(e) 是使用ReLU的多层感知机;a(out) and a(in)是两个使用sigmoid 的全连接层。通过连接和传入节点于边的特征,学习两个方面的特征,通过自注意力计算加权和。独立的特征表示连接起来更新图的节点特征和边特征。
Maguire JB, Grattarola D, Mulligan VK, Klyshko E, Melo H (2021) XENet: Using a new graph convolution to accelerate the timeline for protein design on quantum computers. PLOS Computational Biology 17(9): e1009037.
6.2 模型输入
GNN首先使用GRU层逐个处理Nv 光伏的24 h窗口。每个24 小时窗口的维度为24×N f ,其中Nf 是输入特征的数量。 因此,当只给出产生的电流和电压作为输入时,Nf 为2,当还包括卫星天气数据时,Nf 为5。然后将提取的所有PV系统的特征赋给GNN层的节点,而每个边缘接收其连接的两个PV系统之间的距离和高度、方位角和倾斜度差。
GRU模型一次运行在单个PV上,无法考虑被监测PV之间的距离和高度、方位角和倾斜度的差异。为了与GNN进行公平的比较,在GRU模型的输入中包含了 每个PV的高度、方位角和倾角。因此,GRU模型的输入样本是一个24×(Nf+3)矩阵。
6.3 训练算法
由于PV系统的故障识别本质上是一个分类问题,因此通过最小化交叉熵损失来训练模型。对损失函数进行加权,以补偿数据中的类不平衡。具体来说,除了无故障和开路只有一种配置外,每种故障类型的四个严重程度都包含在数据中。因此,在CatBoost和GRU的损失函数中,无故障和开路的样本的权重为4,而其他样本的权重均为1。对于GNN,无故障类别在数据中更为突出,因为最多只有一个PV系统出现故障。 因此,通过给无故障样本分配0.06的权重来补偿GNN 失中的类不平衡,这与无故障类别的流行率相反。开路同之前一样为4。
7 讨论与结论
7.1 卫星天气数据
首先,比较了以卫星天气估计和产生的电流和电压作为输入时模型的准确性。输入时间序列现在包括:I, V,辐照度,温度和太阳天顶。
第一个交叉验证折叠的模型混淆矩阵如图5所示。 GNN显著优于CatBoost和堆叠GRU,特别是在区分无故障和污染时。具体来说,卫星对辐照度的高估和污染都会导致模型的辐照度输入大于模块在现实中暴露的辐照度。GNN在区分这些相似效应方面具有优势,因为它能够比较多个PV系统的输出。
7.2 没有卫星天气数据
由于GNN能够比较PV系统的输出,它应该能够在没有任何天气输入的情况下运行。
只提供产生的电流和电压作为模型的输入时间序列。没有天气输入 的GNN也优于拥有卫星天气数据的CatBoost和GRU。
7.3 多个PV故障
到目前为止,作者假设最多有一个PV系统出现故障。 然而,不同的PV系统可能同时发生故障,特别是当GNN监测大量PV系统时。因此,调整数据使至少一个PV系统正常运行,而所有其他PV系统都随机选择故障类型和严重程度。在此设置下,有卫星气象数据的GNN精度为86.1%±2.2%,无卫星数据的精度为82.6%±2.5%,考虑到极端情况,即几乎所有的PV的系统同时出现故障的情况不太可能发生,认为GNN能保持较高的精度。
7.4 方法的局限性
在开发故障诊断方法时,关键是要考虑准确度和实现成本之间的权衡。本文选择优先考虑低实施成本而不是准确性,以获得一种适用于小型和大型PV系统且具有成本效益的方法。因此,我们的目标之一是仅使用逆变器测量作为输入,而不是依赖于专用传感器。 显然,该GNN解决方案的精度不如以来专用传感器的方法。
另外,此方法高度依赖多站点PV系统,因此在独立PV系统上,GNN方法表现不佳。此外,如果一个独立的PV系统拥有多个逆变器,可以通过将每个串表示为图中的一个节点来应用GNN。
最后,GNN模型预测每个PV系统的单一故障类型。 然而,PV系统可能同时受到布线退化和PID的影响。虽然GNN可能会将该PV分类为布线退化或PID,但它无法同时识别这两种故障。
========================================================================
总结:
创新点:
通过GRU来对每个PV系统进行特征学习
通过XENet融合时间特征和空间特征,实现时空特征预测
需要的数据简单
可改进之处:
比较依赖于多个PV系统,对单个系统处理效果不佳
故障类型不能完全分辨