APP下载

基于OPC的电力信息物理系统仿真平台研究

2022-06-05孙正龙赵靖博庄钧植蔡国伟

电力系统及其自动化学报 2022年5期
关键词:广域客户端信息系统

孙正龙,赵靖博,庄钧植,蔡国伟

(现代电力系统仿真控制与绿色电能新技术教育部重点实验室(东北电力大学),吉林 132012)

随着智能电网新技术的发展,并在缓解能源与环境压力的推动下,信息通信技术已渗透到电网基础设施和应用调控的各个方面,不仅有利于增强电网监测和调控能力,也有利于实现电网与用户互动来优化资源配置[1-4]。信息网和物理电网的融合与协作是未来智能电网的重要特征之一,构成了典型的信息物理系统CPS(cyber-physical system)[5]。基于物理系统和信息系统融合的新一代电力系统的稳定运行控制研究在理论研究和工程应用两方面均具有重大意义[6-7]。

目前,国内外的一些学者对电力信息物理系统进行了许多相关内容的研究。文献[8-11]提出了电力信息物理融合系统的基本架构以及未来可能会面临的技术挑战,并讨论了对通信系统的建模方法。文献[12-13]从工程实际出发,利用电力系统自动化通用标准IEC61850,对信息系统进行了详细建模,但并未充分考虑物理系统的建模。但在电力信息物理系统的研究中,面临着一个严峻的挑战,电力系统是一个时变连续的系统,主要是对功角、功率、电压等电气量进行计算分析的。而信息系统是一个离散系统,主要是由通信事件触发的,电力系统和信息系统在理论方面和研究方法上是有所割裂的,已有的融合模型虽然可以在一定程度上描述物理电网与信息系统间的耦合关系,但却无法定量地描述两者在机电时间尺度上的动态耦合。在现有理论和方法框架下难以将两者融合统一,而且现有的电力系统很难独自反应信息系统中通信网络对其的影响。所以面对这一个严峻的挑战,需要搭建一个能够模拟电力信息物理系统的仿真平台,进而能够实现对物理系统和信息系统之间耦合关系的分析。

目前,针对此问题国内外研究学者提出了许多种不同架构的联合仿真平台方案,主要分为两类。第一类方法是扩展单个模拟器的功能,以实现电力系统和通信网络的模拟,文献[14-15]分别对OPNET通信软件扩展模拟电力系统一部分功能和对PSASP电力系统软件扩展模拟通信网络一部分功能,然而单一工具只能模拟简单的场景,如果电力系统或通信网络变得过于复杂,它们就不再有效,无法实现联合仿真功能;文献[16]将电力仿真和信息仿真其中之一进行模块化,从而使得一个仿真模块可以插入到另一个仿真平台,进而实现电力和信息模型能够进行同步仿真,但此种方案虽然采用模块调用的方式,无需额外的时间同步和数据交互环节,而需要对电力系统或者通信系统其中之一进行很大意义上的简化建模,牺牲了系统的一部分功能。第二类方法是电力系统和通信系统采用在各自方面的专业仿真软件,两个软件共同形成协同仿真工具,文献[17]中电力系统和通信系统采用在各自方面的专业仿真软件,虽然软件十分复杂但是可以插入或者引入一个能够实现管理和数据交互的模块,来完成对时间的同步。该方法能够保持两个系统的动态特性,最大程度地保持系统的全面性和准确性,但是结构复杂,实现难度很大。也有学者用实际设备代替仿真模型,组成了一个半实物仿真系统,提供了更多的精度。文献[18]建立了基于实际以太网的半实物仿真系统,以说明通过以太网传输电力系统数据的通信延迟如何影响实时可观测性的准确性;文献[19-20]分别提出了基于OPAL-RT和OPNET、OPAL-RT,DSP控制器,OPNET和主站的半实物仿真架构,这类仿真平台能够对系统动态性能进行高精度模拟,但是设备价格昂贵,平台建设较为复杂。

鉴于上述研究背景,本文使用应用于过程控制对象链接与嵌入OPC[21](object linking and embedding for process control)技术来与DIgSILENT Power-Factory和Matlab-Simulink通信,DIgSILENT中模拟电力系统,Matlab中模拟信息系统,进而搭建了一个电力信息物理融合系统的仿真平台,从而实现了通信系统和电力系统之间的数据信息传输。

1 电力信息物理系统仿真平台架构

本文主要描述电力信息物理系统仿真平台组成部分,其结构如图1所示。采用DIgSILENT和Matlab搭建仿真平台,分别仿真电力系统动态行为和信息通信系统的监测与控制功能,并通过OPC服务器分别与之连接,实现数据之间的传输。

图1 电力信息物理系统仿真平台架构Fig.1 Architecture of simulation platform for cyberphysical power system

1.1 OPC技术

OPC是为了不同供应厂商的设备和应用程序之间的软件接口标准化,使其间的数据交换更加简单化的目的而提出的,从而可以向用户提供不依靠于特定开发语言和开发环境的可以自由组合使用的过程控制软件组件产品[22]。MatrikonOPC是OPC基金会开发的工具,其主要目标是简化工业通讯以及设备集成和管理[23]。搭建电力信息物理融合系统仿真平台的过程中,如何实现电力系统仿真工具DIgSILENT和信息系统仿真工具Matlab的联合运行是一个较为困难的问题,因为两个软件之间并没有直接连接的接口,无法实现信息的传输与通信,他们之间需要一个用于数据交换的通信接口。利用OPC接口技术,采用服务器和客户端的模式实现数据通信可以较好地解决该问题。OPC技术具有统一标准的接口,通过客户端访问服务器,从而软件之间可以连接进行数据交换。它可以建立一个模拟测试环境,为实时数据交换提供了耦合机制,在该环境中可以与多个客户端连接交换数据。DIgSILENT和Matlab都可以作为OPC的客户端与之连接,两个仿真环境之间的OPC服务器提供了一个定义和标准化的接口,可以作为一个数据传输通道来间接实现DIgSILENT和Matlab之间的数据交换,任何数据值在OPC服务器上发生变化,也会引起已连接客户端DIgSILENT和Matlab的数据值改变,从而能够实现基于DIgSILENT的电力系统仿真和基于Matlab的通信系统仿真之间的数据交互。

1.2 电力物理系统建模及仿真

DIgSILENT PowerFactory是一个在应用于发电、输电、配电和工业系统的领先的电力系统分析软件,本文中用于电力系统的建模和仿真,DIgSILENT代表OPC服务器的一个客户端,通过在DIg-SILENT中设置外部测量对象,定义DSL模型,并在其中声明全局变量操作后,可以向OPC服务器传输RMS数据,进而通过OPC向与之相连的另一客户端传输数据信息。

1.3 信息系统建模及仿真

本文采用Matlab-Simulink对信息系统的建模和仿真,将其作为OPC服务器的另一个客户端与其连接,可以实现将信号传递给OPC或从OPC服务器中读取数据的操作,进而完成与DIgSILENT直接数据传输。

在本文中信息系统模型主要是以广域测量系统WAMS(wide-area measurement system)为例进行搭建的。其模型主要包括控制中心、远程终端单元RTU(remote terminal unit)、同步相量测量单元PMU(phasor measurement unit)、数据传输模块、路由器以及防火墙等通信系统模块[24],组建相关模型的功能块可以在Matlab-Simulink中找到,其中对PMU、RTU的建模如图2所示。PMU组成的主要模块包括输入/输出端口、数据包发生器、缓冲器、处理器、输出开关和网络接口。RTU使用的功能块包括路径组合器、先进先出队列、服务器和输出交换机。数据传输模块采用关键端口特性来刻画通信网络系统,即采用通信延时和错误率来描述通信传输过程,表示为

图2 信息系统建模Fig.2 Modeling of information system

式中:Din,T为T时刻通信系统要传输的数据;Dout,T+ΔT为T+ΔT时刻达到的数据;etunnel为传输通道的错误率,产生该错误率的原因可能是通信系统当中的随机因素或者恶意的信息供给;ΔTtunnel为传输通道的延迟,主要取决于通信系统采用的通信协议与通信方式;ΔT为在一次具体传输过程当中的通信时延。

最后,电力信息物理系统平台基本组成如图3所示。

图3 电力信息物理系统平台基本组成Fig.3 Basic composition of cyber-physical power system platform

图3中,广域监测与控制系统是通过PMU采集电力系统中的电流、电压和功率等电力信号数据并将其通过数据传输模块传递到RTU,RTU通过数据传输模块与PMU和控制中心分别连接,其功能是将PMU中传输来的信号进行采集、数据处理,之后把数据上传至控制中心。控制中心根据控制策略下发控制指令给RTU,进而将控制信号下传给电力系统,从而实现了数据在电力系统与信息系统之间的传输。路由器和防火墙是能够与控制中心和远程终端单元进行安全通信,为系统创建了一个网络安全边界,保护数据的传输使其免受外部流量和恶意活动的影响。

2 电力信息物理系统仿真平台的实现方案

2.1 OPC与DIgSILENT的连接

为了实现OPC与DIgSILENT之间的连接关系,本文首先通过外部数据链接对象建立起与对应OPC服务器的初步连接;其次,主要是完成DIgSILENT里变量的传递,通过搭建动态模型框架,对外部测量对象标签的设置,使得DIgSILENT可以将电力系统中元件的功率、电压等电气量数据传递给OPC服务器中,也可以完成从OPC中获取控制变量信号,进而实现彼此之间的连接,完成数据的双向传输过程。OPC与DIgSILENT的连接流程图如图4所示。

图4 OPC与DIgSILENT连接流程Fig.4 Flow chart of OPC and DIgSILENT connection

2.1.1 DIgSILENT与OPC交互接口

为了建立OPC与DIgSILENT的连接关系,首先是通过名为“外部数据链接”(ComLink)的通信对象在DIgSILENT中配置OPC客户端。该链接对象保存着OPC客户端的配置,负责发送和接收数据。通过该对象,可以将DIgSILENT作为客户端设置其所有必需的OPC参数。

此时需设置的参数如下。

(1)OPC客户端类型:OPC TDS。类型的选择会影响如何将输入数据设置到DIgSILENT,该类型的设置可以实现仿真过程中数据的输入与输出。

(2)OPC服务器的目录地址,即计算机名称:localhost。

(3)程序ID:Matrikon.OPC.Simulation.1。选择想要与之连接的OPC服务器名称。

(4)引擎标识:保持默认值0。

通过执行通信对象(ComLink)进行初始化与服务器的通信过程,从而完成客户端DIgSILENT与OPC服务器的初步连接。

2.1.2 DIgSILENT中动态模型的建立

通过DSL模型是基于DIgSILENT仿真语言(DSL)建立的模型,在DIgSILENT软件中电力系统的电力信号的后处理需要设置DSL模型,该模型将外部测量对象的信号与电力系统的元件相关联,通过对DSL模型的设置,实现了外部数据跟DIgSILENT中内部模型动态数据的连通,从而使得模型内部数据的变化可以反映到外部测量对象中,本文以元件负载为例。DSL模型的要素如下所述。

(1)复合模型。复合模型允许定义不同信号之间的相互作用。在这种情况下,它将外部测量对象中的信号与负载联系起来,如图5所示。复合模型中有两个块,图左边的块是指ElmDsl类型的块,其为负载信号源;图右边的块是指ElmLod类型的块,其为要控制的负载。通过建立负荷的复合模型,实现了负荷的有功功率和无功功率与外部测量对象的连通。

图5 复合模型Fig.5 Compound model

(2)通用模型。外部通信对象的负载信号源需要通过通用模型(ElmDsl)来进行配置,通过这种方式,外部测量对象中的信号被注入到电力系统中。

2.1.3 DIgSILENT中测量对象和标签的设置

通信对象通过外部测量对象连接到每个变量,外部测量对象负责在OPC服务器中读取或者写入数据。这些对象可以进行双向配置。换句话说,他们可以同时读写数据。作为配置过程的一部分,数据类型必须与OPC服务器的标签中声明的数据类型相匹配。外部测量的主要参数如下。

(1)基本参数:外部测量对象的标签标识。外部测量对象类型应选择真实类型,需要注意的是,其中外部测量对象名称的设置应与OPC服务器中项目标签的名称相对应,对于每一个OPC标签名称,在DIgSILENT中只能配置一个测量对象,通过该设置实现测量对象与OPC标签的连接对应关系,完成数据的读取或写入操作。通过选取DAT类型设置变量的数据类型。

(2)状态:数据的写入和读取。外部测量对象的数据写入和读取在该选项中设置。

(3)后处理:外部测量对象的控制。外部测量对象是由后处理选项进行控制,该选项可以实现外部测量对象与元件内部变量的连接,为了实现负荷有功功率变量与DIgSILENT中的负荷DSL模型进行连接,在该选项卡中设置有功功率的变量名称,完成外部测量对象跟DIgSILENT中内部DSL模型动态数据的连通。

通过完成上述内容设置,从而实现OPC与DIg-SILENT的之间的数据交互。

2.2 OPC与Matlab的连接

Matlab与OPC接口的设置主要是借用OPC Toolbox[25]实现的。本文广域测量系统采集电力系统的发电机有功功率、无功功率、机端电压等电力信号需要借助OPC的传输,为了实现电气量数据在OPC与Matlab之间的传递,需要在Matlab中创建与OPC通信的服务器对象、组对象以及要测量的具体电气量数据项,进而完成变量的读取或写入操作,Matlab作为OPC服务器客户端的通信流程如图6所示。

图6 OPC与Matlab通信流程Fig.6 Flow chart of communication between OPC and Matlab

为了使电力系统模型与广域测量与监控模型之间的数据传输更为方便,现将Simulink与OPC服务器进行连接完成其通信过程。在Matlab环境中,应采用分层结构管理OPC服务器和数据之间的连接。通过创建了一个OPC客户端对象,以使得Simulink与OPC服务器的通信成为可能,有助于在Simulink中进行OPC数据记录、读取和写入过程[21-22]。在Simulink环境中,为了完成上述功能,需要借助Matlab提供的接口模块,接口模块主要包括3个模块,其功能如下。

(1)OPC配置模块。OPC配置模块可在其中设置OPC客户端,主要设置OPC客户端连接项,选择对应的OPC服务器。在配置OPC客户端选项中,将显示所有能够与Simulink连接的OPC服务器的名称与连接状态,它允许Simulink作为OPC客户端进行交互。

(2)OPC读取模块。服务器中的项可以显示出客户端访问的值,也可以显示连接的设备。服务器的标识可以将服务器和客户端彼此连接并进行数据访问。服务器中的项添加到客户端时,它们就建立了连接,可以进行数据访问。

从DIgSILENT到Simulink的数据读取是通过OPC读取块进行的,在OPC读取块配置界面中可以设置读取模式,采样时间、数据值类型与要读取数据的项目名称,其中,每个项目的名称应该与先前在OPC服务器中定义的标签名称相匹配。

(3)OPC写入模块。从Simulink到DIgSILENT的数据写入是通过OPC写入块进行的,与读取块的设置一样,项目名称应该与在OPC服务器中定义的标签名称相匹配。

Simulink中OPC读取模块读取的数据作为控制对象的输入,通过写入模块将数据结果写入,等待读取模块进行读取操作将数据作为控制器的输入,然后通过写操作和读操作反馈给被控对象,从而完成Simulink与OPC服务器的连接。

3 电力信息物理系统仿真平台的同步策略

3.1 时间同步

通过本文第2节内容,实现了OPC服务器分别与客户端电力系统仿真工具DIgSILENT和客户端信息系统仿真工具Matlab之间的连接与数据传输。但由于电力系统仿真通常是时间驱动的,而信息系统仿真是由事件驱动的,从而如何解决二者之间的同步机制问题是能否成功搭建电力信息物理系统仿真平台的关键。

为了解决联合仿真平台的同步问题,已有研究发展了多种同步策略,主要有时间步进策略、主从同步策略以及全局事件同步方法等。本文主要采用了全局事件同步方法,与其余几个同步策略的电力系统和信息系统仿真同时运行不同,该策略两个系统的仿真是交替进行的,较为容易实现,并且不需要对现有仿真程序过多改造,仿真过程中,在一段时间之内只允许一个事件进程运行,另一个事件进程停止,其仿真流程如图7所示。

图7 仿真流程Fig.7 Flow chart of simulation

在仿真前首先进行初始化设置,对系统的仿真时间、仿真步长等参数进行设置后,电力系统按照设置参数进行连续仿真,采集每一步仿真结束后的电力系统仿真数据,并仿真至同步事件处,仿真暂停。将电力系统数据通过OPC服务器传递给信息系统,信息系统接收到数据后,进行信息系统仿真,当仿真到同样的时刻时暂停,并向电力系统输送控制信号与数据。电力系统接收到信号后继续进行下一时刻的仿真,按照该方法仿真直到达到设定的仿真时间,从而结束仿真。同步机制如图8所示。

图8 全局事件同步方法Fig.8 Synchronization method for global event

3.2 协调控制的实现

电力信息物理系统仿真平台中DIgSILENT和Matlab的时间同步方法是通过Python编写程序代码实现的,Python代码允许通过使用适当的接口进行同步管理仿真。

DIgSILENT和Matlab都存在与Python的应用程序编程接口API(application programming interface),因此可以通过编写Python脚本,从而访问DIgSILENT和Matlab中的功能,在Python环境里实现对仿真平台同步机制的控制。要想完成在Python环境里对DIgSILENT和Matlab函数与功能的调用,首先需要将各自的引擎模块导入到Python,由此实现在编程软件中对DIgSILENT和Matlab里函数功能的访问和调用。

Python里对仿真平台同步机制的协调控制主要有两个子模块构成,在此着重定义了两个子函数:第1个子函数功能主要是对进行仿真之前的准备工作进行设置,包括设置与OPC服务器的外部数据链接、仿真步长与仿真类型等,从而使得之后的控制仿真工作得以顺利进行;第2个子函数是一个协调控制仿真的函数,其主要功能是实现仿真平台的同步机制的控制,使得仿真过程能够按照规定的同步策略进行仿真,能够控制电力系统和信息系统的仿真在何时开始暂停以及结束过程,进而完成对仿真平台的协调控制。

4 算例分析

为了验证电力信息物理系统仿真平台的有效性,按照第2~3节内容的建模与设置流程,在DIgSILENT搭建了一个4机2区域电力系统,如图9所示,该电力系统的4台发电机都安装了PSS和AVR[26-27]。

图9 4机2区域电力系统Fig.9 Four-machine 2-area power system

同时在Matlab里搭建了相应的广域测量系统,通过如图2所示的仿真平台的构架,以广域阻尼控制为例,搭建了相关控制器模型。广域阻尼控制器将控制策略通过广域测量系统下发给电力系统。本文广域阻尼控制器采用模糊自适应PID广域阻尼控制器,其结构如图10所示。

图10 模糊PID广域阻尼控制器结构Fig.10 Structure of fuzzy PID wide-area damping controller

抑制电力系统区域间低频振荡的广域附加稳定信号十分多,其中发电机转速差是最有效的广域信号之一[28],所以本文采用发电机G1和G4的转速差作为广域阻尼控制器的输入信号,广域阻尼控制采用在Matlab里搭建的模糊自适应PID广域阻尼控制器进行控制,将发电机G1和G4的转速差作为广域阻尼控制器的输入信号,从电力系统上传至控制中心。广域阻尼控制输出的电压控制信号Vs1经信息系统下发给电力系统,与本地PSS输出的电压信号Vs2一并传输到发电机励磁AVR中,将两层的输出电压Vs1与Vs2叠加后的信号作为用于维持系统稳定的附加励磁信号。广域阻尼控制过程如图11所示。

图11 广域阻尼控制示意Fig.11 Schematic of wide-area damping control

图11中:GPSS(s)是本地PSS的传递函数,其输入为发电机G1的转速ω1;F-PID是模糊自适应PID控制器,其输入为发电机G1和G4的转速差Δω14。详细的广域阻尼控制器参数的设流程计以及控制方法可参考文献[29]。

为验证仿真效果,本文考虑了3种不同的信号通信传输场景:场景1,经过仿真由DIgSILENT直接输出,未经过通信网络上传到控制中心的信号;场景2,经过仿真由电力系统输出经过通信网络传输至控制中心后获得的信号;场景3,在搭建的广域测量系统模型基础上施加广域阻尼控制,经过仿真后从控制中心处获得的信号。

在图11中的母线7处施加三相短路故障,短路故障持续0.06 s,分别对3类场景进行仿真,观察信号的变化,得到的结果如图12和图13所示。

图12 场景1与场景2下的功角振荡曲线Fig.12 Power angle oscillation curves under Scenarios one and two

图13 场景2与场景3下的振荡曲线Fig.13 Oscillation curves under Scenarios two and three

图12表明由于广域测量系统中通信网络的存在,会导致数据传输过程中存在一定的随机时滞,时滞的存在对电力系统的稳定性产生了影响,较之信号未经过广域通信网络时的稳定性有所下降。

为了抑制区间低频振荡和减轻时滞对电力系统稳定的影响,图13表明,施加广域阻尼控制对抑制区间振荡有较好的效果,证明了平台上搭建的广域阻尼控制器起到了作用,从而验证了仿真平台的有效性。

5 结 语

随着智能电网的快速发展,信息系统和电力系统之间的联系越来越密切,电力物理信息系统研究中存在许多问题。本文从仿真方法的角度,建立了一个基于DIgSILENT和Matlab-Simulink仿真软件的电力信息物理系统仿真平台,该平台通过OPC服务器与DIgSILENT和Matlab的连接实现彼此之间数据传输与交换。本文还提出了一种仿真同步方法,通过Python编程工具进行编程,从而实现了电力系统仿真和通信系统仿真之间数据信息传输的同步过程。通过进行广域阻尼控制仿真,验证了所建立的仿真平台的有效性。

在研究电力信息物理系统相关问题上,本文搭建的基于OPC技术的电力信息物理系统仿真平台为其提供了平台支撑。通过该平台,可以充分发挥Matlab的数据处理能力,在平台上实现复杂算法与控制策略。此外,由于OPC服务器采用的是标准的工业接口,可以实现与不同硬件的良好连接,在后续的研究工作中可以借此进一步完善平台内容,完善对通信网络的建模,综合考虑网络的延时,数据包丢失或错序,发生错误数据的注入与网络攻击时研究信息物理系统如何进行防御以及采取何种措施进行预防,进一步保证系统的安全稳定运行。

猜你喜欢

广域客户端信息系统
你的手机安装了多少个客户端
你的手机安装了多少个客户端
企业信息系统安全防护
面向广域电力光网络业务的信令优化研究
广域电磁法在福建洪塘镇地热勘查中的应用
航天技术落地交通大场景广域雷达
如何看待传统媒体新闻客户端的“断舍离”?
基于区块链的通航维护信息系统研究
信息系统审计中计算机审计的应用
基于ADC法的指挥信息系统效能评估