ScorePlus:智能电网实验新框架

2026-05-11 11:35:1374 阅读量

ScorePlus:一种用于智能电网的软硬件混合联邦式实验环境

1. 引言

随着监控、传感、控制和通信技术的最新进展,以及可再生能源和分布式能源资源渗透率的不断提高,传统电网现已逐步向智能电网演进。智能电网是一种复杂的信息物理电力系统,旨在实现自愈、弹性、可持续性和高效性。智能电网的创新带来了许多新的研究挑战,例如安全的通信协议、异常检测与识别、实时定价机制以及可再生能源的集成。由于系统复杂性和通信通常具有的高内聚性以及电力网络,在实验室环境中验证和演示这些新想法并非易事,尤其是 [Edgar 等人 2012]。

相关服务:韩国服务器

在本文中,我们提出了ScorePlus,一种软硬件混合的联邦式实验环境,其设计框架和主要组件可扩展用于构建通用的信息物理测试系统。ScorePlus通过以下关键特性填补了空白:

软件‐硬件混合 :ScorePlus 包含一个软件仿真器和一个硬件测试平台。该软件仿真器模拟智能电网实体的通信与能耗行为。硬件测试平台则承载物理设备,例如微型可再生能源发电机(太阳能电池板、风力涡轮机)、用电设备、储能装置以及拓扑开关,这些设备在物理环境中通过电力网络和通信网络相互连接。软件仿真器和硬件测试平台遵循相同的架构与接口,同一智能电网应用程序无需修改即可在任一平台上进行测试。通过这种集成,研究人员可以在硬件测试平台上考察智能电网应用在真实通信与计算约束下的性能,同时在软件仿真器上评估其相应的可扩展性。

联邦式 :ScorePlus 支持联邦式和分布式实验,使得在不同(本地或远程)位置运行的多个软件仿真器和硬件测试平台能够相互连接并组成更大的智能电网系统。这使得实验可以在不受单个软件仿真服务器计算资源或单个硬件测试平台物理设备数量限制的情况下进行扩展。通过指定各实例之间的连接接口,每个实例即使在不了解完整智能电网拓扑的情况下,也能捕捉自身的内部系统动态。同时,每个单个节点(无论是虚拟或真实)都可以与系统内的其他任意节点交互,以开展硬件在环测试。

云内集成基础设施 :ScorePlus软件被封装为OpenStack云计算平台内的一个资源插件,从而可以像OpenStack云应用中的其他任何资源一样被复用。通过这种方式,ScorePlus 软件可根据OpenStack Heat模板中的规格,在不同配置的计算、网络和存储资源上实例化并启动,以支持包含大规模测试用例的大规模部署。

2. 相关工作

智能电网是一种涉及多种嵌入式设备用于感知、控制、计算和通信的智能电力系统。在此类系统中验证智能电网应用的功能、安全性和可靠性,需要对电力网络和通信网络以及它们之间的交互进行建模与仿真。智能电网实验环境的设计与实现具有挑战性,多年来一直受到研究。在本节中,我们对先前的相关努力进行了广泛调研,这些努力可以归纳为两类:真实硬件测试平台和软件仿真。

2.1. 真实硬件测试平台方法

真实硬件测试平台是使用实际的物理智能电网设备进行实验的平台。我们将这一类工作进一步细分为两个子类别:直连式硬件平台和硬件在环平台。

2.1.1. 纯硬件平台

纯硬件平台由纯粹的硬件设备组成。在电网规模上,韩国政府选择整个济州岛来建设智能电网测试平台,以支持对智能电网技术和商业模式的测试 [Smart Grid Institute 2010]。在实验室环境中,爱达荷国家实验室整合了实际的智能电网组件,包括发电设备、储能电池和变电站,以促进智能电网中电力传输的网络安全研究。Stimoniaris 等人 [2011], 在希腊可再生能源实验室建立了一个集中控制的测试平台,该平台由光伏板、电池组和逆变器组成,用于研究可再生能源集成问题。在实验室规模上,Song 等人 [2012] 设计了 SmartGridLab 测试平台,该平台包含智能电源开关、发电机、可再生能源、智能电器和电表,用于测试智能电网中的分布式需求响应算法。Lobo 和 Idowu [2015] 展示了一个基于 IEEE 1547 作为互连标准的实验室级微电网测试平台。

2.1.2. 硬件在环平台

在硬件在环平台中,硬件设备仅作为平台的一部分,需要与其他软件仿真进行交互以完成完整的实验。Hahn 等人[2013]使用可编程逻辑单元 (PLU) 和智能电子设备 (IED) 用于通信网络,并使用实时数字仿真器进行电力网络仿真。Stanovich 等人[2013]在测试平台中集成了能源领域的硬件设备,例如远程终端单元 (RTU) 和光纤电缆。最近,Barzegaran[2015]在实验室的微电网测试平台中,将智能电表、相量测量单元、相量数据集中器和混合动力汽车充电系统等设备作为关键组成部分。

2.2. 软件仿真方法

智能电网的软件仿真平台完全由软件组件构成,可进一步分为两类:独立仿真平台和联合仿真平台。

2.2.1. 独立仿真平台

独立仿真平台是指将仿真功能封装在一个进程中的平台。换句话说,仅通过一个单一模拟器即可完成任务。这些平台通常专注于智能电网中某个特定方面的研究。Guo 等人 [2008] 实现了一个能源需求管理模拟器,用于预测自适应需求管理策略的性能和响应。Molderink 等人 [2009] 从零开始设计并开发了一个仿真环境,用于分析针对各种设备(如微型发电机、能量缓冲器和热水器)的控制算法。Faria 等人 [2010] 描述了 Demsi,这是一个用于竞争性电力市场和分布式发电密集使用背景下需求响应的模拟器。该模拟器对能源服务提供商和需求侧参与者进行建模,并评估其战略决策。Narayan [2008] 提出了 GridSpice,一种基于云的智能电网仿真包。GridSpice 采用知名的配电网模拟器 Gridlab-D [Chassin 等人 2008] 和输电网络模拟器 Matpower [Zimmerman 1999],,正被迭代开发,最终目标是建模电力网络所有部分之间的交互,包括发电、输电、配电、储能和负荷。所有这些独立软件平台都能在其特定应用领域内完成各自的任务,但它们都仅集中于电力网络仿真。作为智能电网另一个关键组成部分的通信网络,在这些平台中并未被考虑。因此,联合仿真平台应运而生。

2.2.2. 联合仿真平台

联合仿真(协同仿真)是一种仿真方法论,允许不同的仿真工具同时运行并以协作方式交换信息来对独立组件进行仿真[Li 等 2014]。Hopkinson 等 [2006]提出了一种联邦式仿真,将离散事件网络仿真器NS2与连续时间电力网络仿真器 PSCAD相结合。Godfrey 等 [2010]使用NS2和电力网络仿真器OpenDSS对智能电网进行仿真。Mallouhi 等 [2011]通过采用PowerWorld仿真器和OPNET,引入了一个专门用于SCADA系统安全分析的联合仿真测试平台。Lin 等 [2011]和Deng 等 [2013]引入了全局事件队列以同步NS2与PSLF仿真。

联合仿真方法通常需要迭代运行独立的通信和电力网络仿真。由于同步中间层带来的额外开销,其性能受到影响。同时,通信与电力系统模型之间的交互通常受限于固定的同步间隔。实际动态与仿真动态之间可能出现不匹配,从而暴露出此类系统的可靠性问题。

对此问题的一种改进方法是将一个仿真组件集成到另一个中,使仿真引擎采用单一全局时钟和事件队列。在Mets等人[2011],的研究中,电力网络被构造成OMNET++(一种网络仿真器)内的一个组件。在Nutaro等人[2007],的研究中,adecs仿真工具被集成到NS2中,通过对连续电力动态进行离散化,实现对连续时间电力系统和离散事件通信系统的混合建模。最近,一些联合仿真框架被开发出来,以进一步提高多个独立仿真平台之间的互操作性。S. 奇拉奇等人[2014]提出了FNCS这一联合仿真框架,用于整合多种电力系统仿真器 (Matpower、GridLAB-D)和通信网络仿真器(NS3)。Lehnhoff等人[2015]提出了 Mosaik,它允许智能电网用户将分布在多个仿真器进程上的数千个仿真实体进行组合。

2.3. 相关工作评述

根据之前的文献综述,我们总结了智能电网实验中真实硬件测试平台方法和软件仿真方法的特点。

真实硬件测试平台方法通过使用专用设备作为平台的一部分来实现高保真度。关键控制程序,如需求响应算法、路由协议和安全策略,可以在真实硬件测试平台中进行测试,并可直接迁移到实际的智能电网嵌入式设备中。然而,部署这些设备所需的巨大的成本和资源限制了在实验室环境中这些工作的可重复性。此外,这些测试平台无法被公共研究社区远程访问和共享,且当测试案例变得相当大时,难以扩展。

另一方面,软件仿真具有更高的可用性、易用性和可扩展性。在软件仿真平台中,各种智能电网对象的模型可以轻松地进行扩展和统计分析。然而,由于软件仿真通常将操作系统、通信协议和电力动态抽象为各种数学仿真模型,因此只能复制系统的行为和结构,而无法复制智能电网应用的执行环境。此外,许多最新的智能电网案例难以建模,因为它们要么以二进制可执行形式存在(例如恶意软件代码),要么演变过于迅速(攻击向量),这使得仿真开发过程费时且容易出错。

表I. 相关工作和ScorePlus的特征摘要 真实硬件测试平台 软件仿真 ScorePlus
模型保真度 High Low High
可访问性 困难 Easy Easy
可扩展性 Low High High
代码迁移 Yes No Yes
时间步长 实时 实时/离散时间 实时
频率控制,功率平衡 Yes Yes No
电压调节 Yes Yes No
云基础设施集成 N/A N/A Yes

2.4. 我们的方法:软硬件混合与联邦实验环境

鉴于这些问题,一种更为理想的方法是结合硬件和软件平台的优点,使用户能够在硬件平台上在真实的通信和计算约束下检验智能电网应用的性能,同时在软件平台上评估其相应的可扩展性。

ScorePlus 弥合了实际硬件方法与软件仿真方法之间的差距。ScorePlus 的主要优势如下:

首先,ScorePlus 同时采用了一个软件仿真器和一个硬件测试平台,两者向用户暴露相同且透明的接口。智能电网应用可以在任一平台上进行测试而无需任何修改。通过这种集成,研究人员可以在硬件测试平台中检验智能电网应用在真实通信和计算约束下的性能,同时在软件仿真器中评估其相应的可扩展性。

其次,ScorePlus 的联邦架构使得每个分布式软件仿真器或硬件测试平台都能保持自身的自主性和独特优势,同时共同在统一框架下共享资源。这种即插即用架构大大促进了分布式实验的可扩展性。

最后,据我们所知,ScorePlus 是首个与云基础设施紧密集成的智能电网实验工具。通过利用 OpenStack 云计算平台的定制化资源插件机制,ScorePlus 软件具备高可重用性,能够支持大规模测试用例的海量部署。

ScorePlus 也有其局限性:电力网络模型是静态直流潮流模型,因此我们无法使用 ScorePlus 来捕捉瞬态物理动态、频率控制、功率平衡和电压调节。我们的方法与相关工作的优势和局限性列在表I中。ScorePlus 代码是开源的,发布于 https://sourceforge.net/projects/scorepluset/。

3. 总体系统设计

示意图0

图1展示了我们平台的整体架构。ScorePlus由图形用户界面(GUI)、软件仿真器和硬件测试平台组成。GUI通过互联网远程连接到软件仿真器和硬件测试平台。由于软件仿真器和硬件测试平台向GUI暴露相同的架构和接口,用户可以在任一平台上运行相同的智能电网应用测试案例,而不会遇到任何迁移问题。同时,通过整合来自软件仿真器和硬件测试平台的通信网络与电力网络,多个软件仿真器和硬件测试平台能够相互连接。

示意图1

并通过互联网进行交互。在明确彼此之间的连接接口后,各个节点之间可以建立通信和电力流,例如软件仿真器中的虚拟需求方与硬件测试平台中的真实供应方之间。

4. 软件仿真器

如图2所示,软件仿真器由服务层、虚拟节点、Linux以太网桥接、通信模块和电源模块组成。服务层本质上是一个套接字服务器,为来自外部交互系统的格式化消息提供各种事件处理器。它负责初始化仿真案例,收集和转发系统请求,以及管理多个仿真会话。该软件仿真器部分借鉴了我们在Tan等人[2012]中的前期开发工作。在此工作中,我们具体实现了虚拟网络接口与物理网络接口之间的网络隧道,通过域分解改进了电力网络模型,并在服务层增加了更多的消息处理机制以响应外部交互。软件仿真器中的所有改进均旨在促进其与硬件测试平台的集成。

4.1. 虚拟节点:轻量级虚拟化

软件仿真器的仿真功能通过Linux网络命名空间技术实现,这是一种由主流Linux内核支持的新型轻量级半虚拟化技术。通过调用clone()系统调用,每个创建的虚拟节点都可以拥有独立的Linux操作系统网络栈和进程空间实例,同时与其他虚拟节点共享相同的本地文件系统和硬件。从内部运行代码的角度来看,每个虚拟节点就像是一个由Linux操作系统控制的独立硬件平台。因此,虚拟节点可以直接执行来自物理Linux嵌入式设备的未修改智能电网应用程序代码,反之亦然。图3展示了软件仿真器的可扩展性:在一台配备奔腾(R) 双核CPU E5700 @ 3.00GHz和4GiB内存的64位惠普台式机上,可以创建约180个虚拟节点。

示意图2

4.2. Linux以太网桥接和通信模块

仿真器中的所有虚拟节点都配备了虚拟以太网接口,并通过Linux以太网桥接进行连接。该方法为各个虚拟节点之间提供了底层通信能力。基于Linux以太网桥接,软件仿真器中的通信模块提供了对各种有线和无线通信网络模型的全面支持。所有模型仅仅是针对底层通信基础设施的操作。从开放系统互连(OSI)模型的角度来看,每个仿真节点都有由Linux命名空间支持的独立的操作系统实现的TCP/IP协议栈实例,从而实现了对网络层及更高层的高保真仿真。默认情况下,启用了基于netem和Linux中以太网桥接实现的链路层和物理层的简化仿真。可以配置并应用诸如带宽、丢包率、比特误码率和噪声水平等统计网络效应。

对于更高保真的链路层和物理层仿真,可以集成其他网络仿真工具,例如EMANE [Ahrenholz等 2011],。更重要的是,虚拟以太网接口可以直接映射到物理主机上的物理以太网接口。

示意图3

仿真主机,使得通过该物理端口的所有流量都可以传输到仿真环境中。这实现了软件仿真环境与外部物理网络之间的交互。

我们利用上述关键特性实现软件仿真器与硬件测试平台之间通信网络的集成,相关内容将在第5节中介绍。

4.3. 电源模块

软件仿真器中的电源模块用于模拟智能电网内的潮流分析,同时还提供了预定义能量模型的实现。电源模块从服务层接收初始电力网络拓扑、能量模型配置信息以及连接接口信息,以构建电力网络模型。

4.3.1. 电力网络模型:一般描述

电力网络模型是一种静态直流电路模型,用于模拟潮流分析。假设一个电网由n个节点和b条支路组成。由于电力网络动态特性受基尔霍夫电流和电压定律(KCL 和 KVL)约束,为了计算所有节点的电压,我们对电网应用节点分析,得到整个系统的线性方程:

$$ AV = I, \quad (1) $$

其中系数矩阵A是(n−1)×(n−1)的简化节点导纳矩阵,因为我们已选择了一个参考节点。令Nbr(i)表示电力网络中节点i的邻居集合;我们得到

$$ a_{ij}= \begin{cases}
\sum_{s \in Nbr(i)} g_{is} & i=j \
-g_{ij} & j \in Nbr(i) \
0 & \text{otherwise}
\end{cases} \quad (2) $$

gij是节点i和节点j之间的导纳,V和I分别是未知节点电压向量和已知节点电流注入向量。图4展示了电源模块的数据流图。电源模块从服务层接收初始电力网络拓扑和能量模型配置信息,以构建初始电力网络模型。当从与通信模块的交互中接收到相应的模型更新时,该模型将被更新。同时,采用增量模型更新来响应系统状态变化。更重要的是,随着电力网络规模和阶数的增加,单个电力网络模型可以分布到多个计算实例中,如第4.3.3节进一步所示。

4.3.2. 增量更新

在先前模型的基础上,考虑电力网络拓扑结构发生变化的情况。假设电网状态发生改变,例如节点i与节点j之间的导纳变化了Δgij。那么新的系数矩阵 $\tilde{A}$ 可以表示为

$$ \tilde{A} = A + U \Delta g_{ij} U^T, \quad (3) $$

其中

$$ U = [0 \cdots 1 \cdots -1 \cdots 0]^T. $$
$$ \quad i \quad j $$

特别地,当支路被移除时,变化的导纳 Δgij 等于 −gij;当新增一条支路时,其等于 Δgij = gij。注意 [Zhang et al. 2007]

$$ \tilde{A}^{-1} = A^{-1} - A^{-1}U(\Delta g_{ij}^{-1} + U^T A^{-1}U)^{-1} U^T A^{-1}, \quad (4) $$

然后,当我们存储先前计算的$A^{-1}$时,可以用低得多的计算成本得到 $\tilde{A}^{-1}$。

4.3.3. 电力网络模型:区域分解

电力网络通常是松散耦合的子电力网络组成的网络。每个子网络是整个能源系统中相对独立的分区,仅通过少量的连接线路将它们连接在一起。

在每个子网络内部,我们将节点分为两组:
— 内部节点:仅与同一子网络内其他节点相连的节点
— 边界节点:与其他子网络中的节点相连的节点

电力网络的架构如图5所示。根据之前的分析,我们将Schur补区域分解方法[Saad 2003] 应用于我们的电力网络模型。具体而言,假设有k个子网络;通过将每个子网络的内部节点进行分组,并将所有子网络的边界节点汇总

示意图4
示意图5

在后端网络中,我们为整个电力网络建立如下节点分析模型:

$$
\begin{bmatrix}
Y_{A_1A_1} & 0 & \cdots & 0 & Y_{A_1B} \
0 & Y_{A_2A_2} & \cdots & 0 & Y_{A_2B} \
\vdots & \vdots & \ddots & \vdots & \vdots \
0 & 0 & \cdots & Y_{A_kA_k} & Y_{A_kB} \
Y_{BA_1} & Y_{BA_2} & \cdots & Y_{BA_k} & Y_{BB}
\end{bmatrix}
\begin{bmatrix}
V_{A_1} \
V_{A_2} \
\vdots \
V_{A_k} \
V_B
\end{bmatrix}
=
\begin{bmatrix}
I_{A_1} \
I_{A_2} \
\vdots \
I_{A_k} \
I_B
\end{bmatrix}.
\quad (5)
$$

请注意,$ B $ 是整个网络中所有边界节点的集合,由 $ B_1, B_2, …, B_k $ 组成。因此,$ Y_{A_iB} $ 仅在其子矩阵 $ Y_{A_iB_i} $ 中有非零元素,对于所有 $ i = 1, 2, …, k $ 均成立。

由方程(5)可知,如果边界节点集 $ V_B $ 的电压已知,则每个子网络中节点的电压可按如下方式计算:

$$
Y_{A_iA_i} V_{A_i} = I_{A_i} - Y_{A_iB} V_B, \quad \forall i \in {1, 2, …, k}. \quad (6)
$$

同时,如果我们保留方程(5)中边界节点集 $ B $ 的对应部分,就可以得到

$$
\tilde{Y}_{BB} V_B = \tilde{I}_B, \quad (7)
$$

其中

$$
\tilde{Y} {BB} = Y {BB} - \sum_{i=1}^{k} Y_{BA_i} Y_{A_iA_i}^{-1} Y_{A_iB}, \quad (8)
$$

$$
\tilde{I} B = I_B - \sum {i=1}^{k} Y_{BA_i} Y_{A_iA_i}^{-1} I_{A_i}. \quad (9)
$$

定义

$$
x_i = Y_{BA_i} Y_{A_iA_i}^{-1} Y_{A_iB}, \quad (10)
$$

$$
y_i = Y_{BA_i} Y_{A_iA_i}^{-1} I_{A_i}, \quad (11)
$$

对于所有 $ i = 1, 2, …, k $。注意,$ x_i $ 和 $ y_i $ 仅需要子系统 $ i $ 的本地信息。

我们利用前述关键特性,实现软件仿真器与硬件测试平台之间电力网络的集成,将两者均视为整个电力网络的子网络。相关细节见第5节。

5. 硬件测试平台

示意图6

图6展示了我们的硬件测试平台设计,该设计遵循与软件仿真器相同的架构。硬件测试平台中的每个节点都是一个物理的能源设备,用于模拟智能电网系统中的能源实体。通过通信接口和电力接口,所有能源设备都连接到通信网络和电力网络。

5.1. 能源设备概述

硬件测试平台由以下能源设备组成,用于模拟智能电网系统中的能源实体:

— 一个供应商(该设备模拟一般的发电。输出到智能电网的电流最高为200mA。智能电网的电压通常为2.5V,但在电源和负载不平衡时可能更高或更低。)

— 五个太阳能板控制器(输出最高可达30mA,具体取决于光照强度)。

— 五个风力涡轮控制器(输出最高可达30mA,具体取决于风力强度)。

— 五个储能设备(这些是带电子电路的电容组,可根据智能电网系统的需求提供或吸收最高50mA电流)。

— 15个负载设备(仅为负载,每个从智能电网系统中最多消耗20mA电流)。

— 五个拓扑开关(每个具有六个端口,可多种方式切换电流流向,所有端口必须能承受最高300mA电流)。

— 一个接口设备(当硬件测试平台与软件仿真器连接时,该设备作为能量通道)。

图7展示了正在使用的各种能源设备、太阳能电池板和风力涡轮机。液晶显示屏显示了每个能源设备的电流输出和输入情况,而拓扑切换装置中的显示屏则显示六个端口之间的连接状态。

5.2. 能量设备设计细节

上述每种能源设备均包含三块板:Beagleboard[Beagleboard 2009], Telosw板 [Lu等 2010], 和能量板。图8展示了用户通过图形用户界面远程访问和配置这些能源设备的过程。

用户在图形用户界面中指定硬件配置,并以格式化消息的形式向服务层发送请求。服务层在接收并映射这些消息后,将相应请求转发至目标能源设备的Beagleboard。随后,该 Beagleboard中的控制程序将与其Telosw板通信,最终由Telosw板与能量板交互,实现相关配置,例如需求方的负载、可再生能源控制器的输出以及拓扑结构的连接状态。

示意图7

开关。同样,能源设备的状态会定期被查询并反馈给图形用户界面。这三个板子的作用总结如下:

5.2.1. Beagleboard

— 与服务层交互,并相应地控制每个能量设备的行为
— 在每个能量设备中提供基于Linux的环境,用于测试智能电网应用
— 通过有线和无线网络实现各个能量设备之间的通信

5.2.2. TeloswBoard

— 调节智能电阻以模拟功率特性
— 监控/测量每个能量设备的发电和用电消耗速率
— 为能量板提供输入/输出接口,用于LED和显示屏

5.2.3. EnergyBoard

— 提供不同的直流电路,以满足不同设备相应的功率需求

示意图8

图9显示了太阳能板控制器的架构。Beagleboard提供了物理通信接口,例如以太网端口和mini USB,用于连接无线电台。它通过USB电缆与Telosw板相连,从而使运行在 Beagleboard上的程序能够直接通过TelosW访问和控制能量 profile。TelosW与能量板相连接,两者都被封装在一个黑色塑料容器内。容器顶部的端口与物理太阳能电池板相连。容器底部有三个端口。左侧端口用作设备的电源,右侧端口实际上是智能电网系统的电力接口。中间端口连接地线。

示意图9

图10显示了太阳能板控制器上能量板的电路图。来自TelosW板的模拟电压表示期望输出到智能电网的电流大小(0到2.0V对应于0到30mA的期望输出)。输入至TelosW板的模拟电压表示测量的电流输出(0到2.0V对应于0到30mA的实际输出电流)。能量控制板上的太阳能电池输入端将配备一个10,000微法的电容器(C6),用于从发电源临时储能;该电容器电压的0.4倍将提供给TelosW板,以指示太阳能电池的能量能力。同一设备也可用于风力涡轮机控制。图11显示了太阳能板控制器设备在太阳能电池板随时间暴露于 50W三级光强灯下的采样电流输出。图12(a)显示了控制器设备中通过电流输出的电压输入关系。图12(b)显示了示波器上太阳能板控制器ADC输出电压的截图。电压输出非常稳定,未发生振荡。

示意图10

示意图11

5.3. 硬件测试平台中的电力网络:动态拓扑配置

硬件测试平台中的电力网络通过电源接口和电源线连接所有能源设备。为了便于动态配置各种电力网络拓扑,我们设计了如图所示的拓扑开关设备。

示意图12

图7(d) 作为所有其他能源设备的电流中心。通过运行在配对的 Beagleboard 中的程序,可以通过 TelosW 动态访问和配置拓扑开关,从而相应地改变六个端口之间的连接状态。可以根据用户需求设置不同的电力网络拓扑。连接状态也通过液晶显示屏进行可视化。拓扑开关的能量板如图13所示。

5.4. 硬件测试平台中的通信网络:有线和无线网络

硬件测试平台中的通信网络旨在仿真智能电网中的有线和无线通信。在底层通信网络之上,各能源设备之间创建了通用路由封装(GRE)隧道,从而使物理通信网络能够与软件仿真器中的通信网络保持一致。对于有线网络,我们使用以太网连接各个能源设备。

对于无线网络,我们采用了ALFA Network公司的WISP‐2室外天线,该天线可通过 USB电缆直接连接到Beagleboard。WISP‐2是一种低成本的IEEE 802.11n室外AP/CPE,工作在2.4GHz频段,并且也符合IEEE 802.11b/g标准。在我们的室内环境中,每个节点的无线电覆盖范围包含了所有其他节点,因此从物理上讲,所有节点都可以相互通信。为了构建具有特定拓扑结构的无线网状网络,在每个能源设备中使用了iptables工具链。通过 iptables,我们可以过滤每个节点发送和接收的数据包,使其仅能

| 表II. 硬件测试平台中无线网络的性能 |
|—|—|—|—|—|—|
| Hops | 1 | 2 | 3 | 4 | 5 |
| 带宽 | 1.05Mbps | 624Kbps | 416Kbps | 316Kbps | 242Kbps |
| 抖动 | 1.83ms | 37.14ms | 55.91ms | 83.26ms | 122.55ms |

按照指定方式与节点通信,然后形成相应的无线网络拓扑。iperf工具的性能测试结果列于 表II中。

6. 软件模拟器与硬件测试平台的集成

ScorePlus支持可扩展的分布式实验,使得在不同(本地或远程)位置运行的多个软件仿真器和硬件测试平台能够相互连接并构成更大的智能电网系统。本文仅介绍软件仿真器与硬件测试平台之间的集成。需要注意的是,仅在软件仿真器之间或仅在硬件测试平台之间 的集成遵循相同的机制。为了实现软件仿真器与硬件测试平台之间的交互,必须对其内部的通信网络和电力网络进行集成。

6.1 通信网络的集成

软件仿真器中模拟的通信网络以实时方式运行,因此可以连接到实际物理网络。我们在软件仿真服务器与硬件测试平台中的能源设备之间建立GRE隧道。图14展示了软件仿真器中的一个虚拟节点向硬件测试平台中的物理节点发送数据包的详细过程。在软件仿真服务器与硬件测试平台的网关机之间建立了GRE隧道技术。两者的实际IP地址位于131.96.x.0/24 域内。当数据包到达软件仿真器网络边缘(即仿真服务器的物理网络接口)时,路由表中的隧道入口将触发对该数据包的封装,添加GRE头和隧道目的地信息,使其能够到达硬件测试平台环境。此外,通过使用这种方法,实验环境中的所有IP地址均位于10.0.x.x/16域内,并且可根据实验需要对物理网络进行抽象化处理。

示意图13

示意图14

图15展示了集成通信网络的性能,显示了开放式最短路径优先(OSPF)路由协议收敛所需的时间。我们采用了不同数量的硬件测试平台节点,并在软件仿真器中设置不同的网络延迟来记录时间。如图15所示,当硬件测试平台节点集成到通信网络中时,在软件仿真器的网络中(真实节点数量从0到2),经过时间显著增加。这表明GRE隧道技术确实带来了显著的开销。当软件仿真器中的网络延迟增加至与硬件测试平台相当(本例中为10ms)时,我们发现实验中涉及的硬件测试平台节点数量对路由的收敛速度影响不大。虚拟与物理网络表现出相近的性能。

6.2. 集成电力网络

电力网络集成采用图5中的域分解模型。来自硬件测试平台或软件仿真器的实例被视为整个电力网络的子网络。

具体而言,假设有 $ k $ 个已连接的软件仿真器和硬件测试平台实例,并且另一个实例 $ k + 1 $ 在运行时加入。同时假设该 $ k+1 $ 实例直接与实例集合 $ E $ 相连,$ E \subseteq {1, 2,…, k} $。那么每个计算主机 $ i $,$ i= 1, 2,…,k, k+1 $ 的组合过程执行如下:

— 如果 $ i \in E $,则通过添加与实例 $ k+1 $ 相连的新边界节点来调整边界节点集 $ B_i $,并通过移除与实例 $ k+1 $ 相连的相应边界节点来调整内部节点集 $ A_i $。分别根据公式(10)和(11)计算 $ x_i $ 和 $ y_i $,并将结果发送至协调主机。

— 协调器 $ f_i $ 通过添加新的边界节点重构边界节点集 $ B $,首先重构 $ B_i $, $ i \in E $ 和 $ B_{k+1} $ 中的边界节点,然后为整个系统重建 $ Y_{BB} $ 和 $ I_B $。其次,它从每个主机收集 $ x_i $ 和 $ y_i $,并根据公式(7)、(8)和(9)计算 $ V_B $。最后,它将 $ Y_{BB}V_B $ 发送回每个主机。

— 每个主机 $ i $ 从协调器接收 $ Y_{BB}V_B $,并根据公式(6)计算 $ V_{A_i} $。

在此过程之后,每个子电力网络都可以根据计算结果设置其更新后的状态。如果该子网络是一个软件仿真器,我们可以直接在程序中更新其状态以实现相应效果。然而,如果该子网络是硬件测试平台,则必须进行物理调整。为此,我们使用了专门设计的接口设备,该设备本质上是一个具有大容量的组合式电源供应器和电力需求器。当计算结果表明该硬件测试平台子网络需要从外部域请求电力时,接口设备将被设置为电源供应器,向测试平台提供相应的电力;当计算结果表明该硬件测试平台子网络向外部域供电时,接口设备将被设置为电力需求器,相应地从测试平台吸收电力。

当一个子网络与系统其余部分断开连接时,步骤与上述类似,只是协调器不会将边界节点添加到边界集合中,而是移除与退出实例相关的边界节点。

7. OpenStack云计算平台中ScorePlus的部署插件

ScorePlus采用Linux容器(LXC)在软件仿真器中实现虚拟化。如图3所示,一台通用的个人计算机最多可支持包含180个虚拟节点的测试用例。随着测试用例规模的扩大,将软件仿真器部署在云计算基础设施中以提高其可扩展性变得必不可少。此外,在设置具有不同配置的多个软件模拟实例时,若能通过指定不同的参数来完成配置,而无需每次都从头开始,将会更加便捷。为了简化这些部署过程,我们特别在OpenStack云计算平台中为 ScorePlus实现了一个部署插件,该插件本质上是OpenStack编排服务Heat中的一个资源插件。

7.1. OpenStack 和 Heat

OpenStack是一个免费开源云计算软件平台,由开发者和云计算技术人员进行全球协作,旨在为公有云和私有云制定开放标准。OpenStack软件包含一组相互关联的项目,用于控制云基础设施的各个方面,如认证、编排、计算、网络和储能。

Heat 是 OpenStack 编排项目中的主要组件,提供基于模板的编排功能来描述云应用。Heat模板允许实例化各种OpenStack资源类型,例如实例、浮动IP、卷、安全组和用户。为Heat模板分配的所有资源都作为一个单一的堆栈进行管理。更重要的是,Heat允许开发者添加自定义资源插件,以便将新资源集成到OpenStack框架中以创建云应用。

7.2. ScorePlus的 Heat 插件实现

我们在OpenStack中为ScorePlus设计并实现了一个自定义Heat资源插件,使得 ScorePlus能够像OpenStack云应用中的其他资源一样被部署和复用。通过这种方式, ScorePlus可以在基于Heat模板规格的不同配置的计算、网络和存储资源上运行。该资源插件扩展了基础Resource类,并通过一系列相关的处理方法(包括创建、更新、暂停、恢复和删除)来管理其生命周期。图16展示了Heat引擎内ScorePlus资源插件的状态转换图。

具体而言,实现了以下从heat.engine.resource.Resource类扩展的关键方法,以处理整个生命周期:

handle_create :在依赖服务器上部署ScorePlus并启动ScorePlus服务套接字
handle_update :更新当前ScorePlus实例
handle_suspend :暂停ScorePlus服务套接字进程
handle_resume :恢复ScorePlus服务套接字进程
handle_delete :删除依赖服务器上的与ScorePlus相关的进程和软件

示意图15

示意图16

7.3. 示例使用

图17展示了一个使用ScorePlus资源插件的Heat堆栈模板示例,该模板还包括 OS::Nova::服务器、OS::Heat::软件配置和OS::Heat::多部分MIME等其他资源。图18捕获了该模板在OpenStack中部署后的相应控制台输出。关于不同资源之间的依赖关系,我们还可以从该模板堆栈的已分配资源中看到其依赖拓扑,如图19所示。

8. 评估与实验

在本节中,我们演示并评估了ScorePlus在智能电网(特别是微电网 [Hartono等2013])中支持信息物理分析的能力。未来智能电网预计将由多个微电网集成而成,这些微电网具有本地化发电、储能和用电的特点 [Liang等 2012]。微电网作为一个独立的本地电力系统,可根据需要灵活地连接(连接模式)或断开(孤岛模式)主电网,以最小化能源成本并最大化电网稳定性[Kamel和Nagasaka2011]。图20展示了一个典型的微电网结构。需要注意的是,在ScorePlus中,我们使用拓扑开关作为断路器。

8.1. 实验设置

该测试案例基于Sarfi等人[2012]中的高级量测体系网络测试案例和Hammerstrom [2007]中的需求响应模型创建。需求响应模型也在@GridLAB‐D中运行,以进行准确性对比。我们研究了在一天虚拟日内的微电网需求响应行为。对于虚拟日中的每个虚拟时间段 h(2个实际时间秒),h= 0, 1, 2,3,… 23,每种节点的行为如下:

供应商 :向整个电网提供最大2千瓦的电力,并向所有拓扑开关广播其每小时电价 [Hammerstrom 2007];根据实时电价以及从负载设备收集的用电量,计算每个需求方的电费

拓扑开关 :接收来自供应商的电价信息,然后立即向负载设备转发消息

太阳能电池板 :当 $ h \in [0, 5] \cup [19, 23] $ 时,将其最大输出设为0;当 $ h \in [6:18] $ 时,将其最大输出在200瓦和300瓦之间随机设置

风力涡轮机 : 每小时随机设置其最大输出在100瓦至200瓦之间

储能 :其容量设置为1千瓦时,初始能量为0.1千瓦时;向负载设备发送当前剩余能量,并根据负载设备的请求以最大100W的功率进行充电/放电

需求方 :关键需求方或可调需求方。关键需求方必须始终以200瓦运行。可调需求方接收来自拓扑开关的价格信息和来自储能的剩余能量,并根据Hammerstrom中的需求响应模型调整其设定值 [2007]。

所有节点之间建立了高级计量基础设施通信网络,该网络由以太网和IEEE 802.11射频网状网络组成,带宽为54Mbps,数据包丢失率为0.1%。上述所有节点行为均由运行在各节点内部的控制程序实现。图21显示了一个需求节点的X终端。我们使用命令 ps aux 检查正在运行的程序,其中包括OSPF路由进程和需求方能源守护进程。

创建了五个微电网,如表II所示,分别运行在四个软件仿真服务器和一个硬件测试平台上。

8.2. 孤岛模式

在孤岛模式下,每个微电网独立运行且自给自足。我们首先对微电网1和微电网2进行对比分析。图22展示了实时电价和可调需求方能耗随时间变化的情况,分别来自软件仿真器、硬件测试平台以及GridLAB‐D的对比结果。

以提高准确性。我们可以看到,Hammerstrom中价格响应模型的控制程序倾向于将用电转移到一天中的低价时段。此外,我们还可以观察到两个可调需求方之间功率特性的差异。理论上,由于两者由之前指定的相同程序控制,两条曲线应完全相同。然而,由于软件仿真器采用基于事件的处理方式,其更新只能以较大的离散步长进行。相比之下,由于 TelosW具有高ADC采样率,硬件测试平台能够更精细地捕捉瞬态动态。

图23显示了五个微电网中总能耗的可再生能源占比随时间变化的情况。我们可以看到,通常情况下,当实时电价上升时,可再生能源占比也相应增加。此外,随着微电网规模的增大,由于需求响应过程可以分配和储存更多的可再生能源盈余,可再生能源占比对价格波动的敏感性降低。

8.3. 连接模式

在连接模式下,微电网相互连接。我们首先检查不同微电网之间集成的实现情况。软件仿真服务器与硬件测试平台通过互联网相互连接。需要注意的是,我们在表III中特别设计了五个微电网,使得微电网1与2的连接等同于微电网3,而微电网3与4的连接等同于微电网5。案例编号及连接的微电网列于表IV中。

表III. 每个微电网的节点数量
微电网ID Type 需求方 供应商 开关 太阳能 涡轮机 储能 总计
1 软件仿真器 11 1 5 4 4 5 30
2 硬件测试平台 11 1 5 4 4 5 30
3 软件仿真器 22 2 10 8 8 10 60
4 软件仿真器 33 3 15 12 12 15 90
5 软件仿真器 55 5 25 20 20 25 150
表IV. 连接模式下的案例 1 2 3 4 5 6 7 8
微电网连接 1,2 3 2,3 4 3,4 5 1,2,4 1,3,4,5

图24(a)显示了案例1和2中的风力发电机输出。两条曲线相互吻合,且软件仿真器与硬件测试平台之间的集成能够准确地保持功率特性。图24(b)显示了在案例3、4、5、6和7中,两个最远节点之间的ping时间以及OSPF路由收敛所需的时间。这表明,对于通信网络而言,与软件仿真器的集成引入了较小的延迟,而与硬件测试平台集成时延迟较大,ping时间相差约0.57ms。

8.3.1. 在OpenStack中的部署

对于案例8中的多个ScorePlus实例化,我们采用 ScorePlus资源插件在OpenStack中一次性完成它们的部署。具体而言,Neutron网络资源被集成到堆栈模板中,从而创建一个私有内部子网以连接所有五个ScorePlus服务器,这些服务器均使用一个共同的网关路由器与外部网络通信。图25展示了OpenStack中多个 ScorePlus服务器的最终网络拓扑结构。

8.3.2. 信息物理攻击

在连接模式下,不同微电网之间的相互影响变得极为重要,因为一个微电网的故障可能会影响其他微电网的稳定性。为此,我们在拓扑攻击下对案例1进行事故分析,其中攻击者试图通过恶意控制拓扑开关来破坏电力系统的正常物理状态。如图26所示,假设攻击者在时间$ h = 7 $向3号房屋的拓扑开关n4注入恶意控制程序并运行,使其断开4号房屋与5号房屋以及硬件测试平台的连接,仅端口2、3和4保持连接。在正常条件下,3号房屋中的拓扑开关设置为端口1、2、3、4、5和6全部连接。因此,3号房屋所需的电力可由4号房屋、5号房屋以及电力网络硬件测试平台提供。在操作拓扑开关的连接状态后,原先平衡的电力流变为不平衡状态,导致电力流显著增加(如图形用户界面中红色粗线所示)。同时,由于硬件测试平台不再向软件仿真器供电,但发电端尚未察觉攻击的发生,多余的电力将不可避免地流向硬件测试平台中的储能设备,从而导致储能设备充电速率突然出现峰值,如红色圆圈所标记。充电速率将在约$ h = 7 $ 时达到一个突增峰值,之后回落至一个较高但相对稳定的水平,因为更多的剩余能量持续流向储能设备。

同样的实验也通过将硬件测试平台替换为另一个软件仿真器进行。我们可以看到,硬件测试平台能够更精细地捕捉电力动态。

9. 结论

本文介绍了ScorePlus的设计、实现与评估,ScorePlus是一个用于智能电网的软硬件混合联邦实验环境。我们的平台为通用信息物理测试平台的创建提供了一种可扩展的设计范式。分布式控制算法、需求响应以及信息物理安全问题等测试案例均可在本平台上进行评估。未来的工作将研究更多硬件组件(如相量测量单元)的设计,并降低系统集成开销。此外,还将开展第三方评估以更全面地验证性能,并创建开放访问管理机制。同时,也将探索其他无线通信技术以集成到硬件测试平台中。ScorePlus 的代码,包括软件仿真器和硬件测试平台,均已开源发布于 https://sourceforge.net/projects/scorepluset/。

本文地址:https://www.idc504.com/news/9_12827.html