基于AADL的电网信息物理系统分层建模

2022-09-07 05:05吴梓豪张立臣
现代计算机 2022年13期
关键词:体系结构子系统构件

吴梓豪,张立臣

(广东工业大学计算机学院,广州 510006)

0 引言

随着市场化改革的推进、气候变化的加剧,环境监管日益严格,可再生能源等分布式发电资源数量不断增加,智能电网的概念应运而生。其目标是利用现代测量、通信、计算机、自动化等先进技术,允许可再生能源顺利接入电网,提高电力系统的能源转换和传输效率,确保电网运行更可靠、更灵活、更经济,为用户提供更高的供电质量和更优质的服务。

CPS 这个术语是2006 年由美国国家科学基金会提出,它描述了一系列复杂的、多学科的、具有物理感知能力的下一代工程系统,将嵌入式计算技术集成到物理世界中,如图1所示。美国国家标准与技术研究所组建了一个专家小组,该小组将CPS 定义为由物理和计算元素共同设计的网络形成的智能系统,而欧洲版本则强调了与云或网络空间和人为因素的互动。在中国,CPS 是指集传感、处理、智能、控制为一体的大规模、嵌入式、混合复杂系统。

图1 CPS框架

CPS 是计算过程和物理过程的集成,高度协调计算、通讯以及控制三者之间的关系,是一种新型智能系统。嵌入式设备负责监测和控制物理过程,而物理过程的结果则影响计算进程,通过反馈循环实现计算与物理世界的深度融合与实时交互。

1 电网信息物理系统

1.1 CPS层次结构

CPS 是运行在不同的时间和空间范围的多闭环系统,而且感知、决策和控制执行子系统大多不在同一位置。逻辑上紧密耦合的基本功能单元依托于拥有强大计算资源和数据库的网络基础设施(如Internet、数据库、知识库服务器和其他类型数据传输网络等),构成了CPS 完整的体系结构,使我们能够实现本地或者远程监测和影响物理环境。

根据文献[5]可将CPS 系统分为5 层:连接层、转换层、网络层、认知层和配置层。连接层主要负责连接机器及其组件,利用不同的设备或传感器来获取各种可靠的数据,并通过特定的协议实现数据传输;转换层负责将收集到的数据转换为有价值的信息,这一层赋予机器自我意识属性;网络层扮演着中心信息枢纽的角色,信息从每台连接的机器被推送到这里,在收集了大量信息后,必须使用特定的分析来提取额外的信息,随后再上传到认知层;在认知层中,从网络层获取到的信息以一种适当的表示方法被提供给用户以作出决策;配置层负责执行监督控制,使机器自配置和自适应,它作为弹性控制系统,将认知层上的决策对应的控制应用到机器上。

在学术界有不少研究CPS 体系结构的文章。文献[6]基于控制循环结构并分析现实世界与信息世界的交互方式,提出了一种CPS 的原型体系结构。文献[7]通过研究信息物理系统的安全目标与安全需求,提出了一种分层的信息物理系统安全体系结构。文献[8]分析了事件的时间和空间特性,定义了一种新的CPS 体系结构,并为CPS开发了一个分层的时空事件模型。

1.2 GCPS概述

GCPS 是一种典型的信息物理融合系统,其包含的多种发电设施、输配电网络、用电设施以及储备设施的综合硬件电网系统作为开展核心,将最成熟的传感技术、网络传输技术、通信技术、自动化和智能管控技术综合形成电网系统,其可以更好地实现实时监控和完全自动化,进而让电力系统的运作更为稳定。

1.3 GCPS三层模型

基于CPS 理论,将GCPS 分为物理感知层、信息监测层和决策控制层,GCPS 的体系架构如图2所示。

图2 GCPS架构

1.3.1 物理感知层

信息采集、传递是信息系统的重要工作,通过无线传感网络可以满足系统高度分散点的数据采集,采用分布式采集控制模式,按照区域和功能配置终端装置。将获取的参数信息与运行数据经过预处理后向数据中心汇总。此外,决策中心下达的控制指令与该层的执行器对应。信息安全也被认为是CPS 信息系统结构需要被严密考虑的方面。智能电网等信息物理系统在遭受信息系统故障时,应具有紧急更新和快速重构功能,其物理系统也需具备相当的抵御信息系统灾难的能力。

1.3.2 信息监测层

该层负责数据的收集、可视化、分析,以及可能使用不同通信协议将数据传输到外部目的地。通过对物理感知层上送的数据的融合,并给予大规模分布式计算,将得到的知识提供给决策控制层,同时提供各GCPS 参与者之间的信息共享和协调机制。信息监测层更从数据分析中了解到电网的实时情况,便于进行事故预测与状态评估,能够更好地为决策控制层提供支撑。

1.3.3 决策控制层

该层提供电网系统的管理、执行和控制功能的模块。基于从信息监测层获取的数据和当前控制规则与系统模型,自动制定出适合的调控策略,并发送指令给物理感知层对电网设备进行控制,这个步骤亦可包括外部的输入,如人为控制或天气状况。规则库与系统模型会在知识挖掘中进行更新优化,从而更好地实现电网调控自动化的目的。

2 基于AADL的GCPS建模

2.1 AADL介绍

AADL 是于2004 年由专家委员会开发,由软件工程研究所(software engineering institute,SEI)的Peter Feiler 担任技术负责人,并由汽车工程师学会(society of automotive engineers,SAE)赞助。AADL支持软件架构师和开发人员对实时和嵌入式计算机系统进行可预测的基于模型的工程设计。预期的应用领域包括汽车系统、航空电子和航天应用、医疗设备和工业设备。SAE AADL 标准由一种具有精确语义的语言组成,允许用户定义软件和硬件组件及其交互。

AADL是一种专门面向嵌入式实时系统开发的体系结构分析与设计语言。AADL的主要构件分为软件构件、硬件构件和组合构件三大类。其中软件构件包括程序、线程、子程序、数据等构件;硬件构建包括外部设备、处理器、存储器、总线等构件;组合构件一般指系统构件,如图3所示。

图3 AADL构件组成

OSATE 2 是一个基于Eclipse 的建模框架,用于使用AADL。在这种环境中,软件架构师可以设计和分析模型,然后生成部分实现代码。OSATE 支持AADL 的文本和图形表示。文本编辑器具有自动缩进、自动完成和语法高亮显示功能。图形编辑器允许设计师修改模型,并同步图形和文本表示。

2.2 GCPS建模

本节使用OSATE 工具对1.3 所述的GCPS 体系结构进行建模,图4为该系统图形化模型。该GCPS 系统包含三个子系统,每个子系统都包含两个部分:具有运算功能的应用平台和具有操作功能的执行平台,它们分别由若干软件构件和硬件构建组成。部分代码如下:

图4 GCPS的AADL实现

system implementation grid.impl

subcomponents

sensor:device sensor.impl;

controller:device controller.impl;

preprocess:process data_preprocess.impl;

primary_device:abstract primary_device.impl;

connections

c0:port input_data->

controller.input_data;

c1:port controller.output_event->

primary_device.input_event;

c10:port primary_device.output_data->

sensor.input_data;

c11:port sensor.output_data->

preprocess.input_data;

c12:port preprocess.output_data->

output_data;

flows

ctl2sen:end to end flow

controller.ctl_source->primary_device.pri_flowpath

->sensor.sen_sink;

annex EMV2{**

use types ErrorLibrary,errorDef;

error propagations

input_data: in propagation{et_incorrectdata,et_nosignal};

end propagations;

properties

emv2::OccurrenceDistribution =>[ProbabilityValue=>3.5e-7;

Distribution=>Poisson;

]applies to input_data.et_incorrectdata;

emv2::OccurrenceDistribution =>[ProbabilityValue=>1.5e-6;

Distribution=>Poisson;

]applies to input_data.et_nosignal;

**};

end grid.impl;

2.3 子系统流分析验证

在系统工程和需求工程中,非功能特性是一种需求,它规定了可用于判断系统运行的标准,而不是具体行为。对于电力网来说,在面对突发情况时若系统能做到及时控制、调度,将可以大幅降低损失。由于设备间的通信存在延迟、设备内部计算模块也有一定的耗时,因此需要对系统进行流延迟分析。AADL支持附件扩展,能够很好地描述系统的非功能特性,并能使设计者在系统建模阶段利用可调度分析、流分析测试等功能来改进系统。

图5 展示了decision_control 进程构件内部的子进程,我们通过预设设备与组件的流延迟,并通过端对端的流延迟分析可以比较系统流的实际延迟与系统定义的延迟,从而判断是否满足需求。

图5 端对端流延迟分析

子系统的端对端流延迟声明为:

flows

fs1:end to end flow

data_input.output_data_flow -> c1 -> decision_control_process.f1

->c2->controller.input_data_flow

{Latency=>800ms..1000ms;};

端对端流延迟分析结果见图6,该子系统最小实际延迟为550 ms,小于预设最小延迟800 ms;最大实际延迟为750 ms,小于预设最大延迟1000 ms,因此满足要求。

图6 流延迟分析结果

AADL语言可用于计算信号流数据的端到端延迟和时间以及它们的抖动。AADL还可以将应用软件映射到不同的硬件平台上,并指定不同平台上的执行时间范围、截止日期以及指定数据流的预期延迟。因此,AADL模型可以构成分析框架的基础,通过该框架,我们可以调查运行时系统对端到端延迟及其抖动的影响,并将这些结果与控制算法所做的假设进行比较。

3 结语

CPS 是一个庞大复杂的学科,涉及传感技术、嵌入式技术、通信网络技术等多种技术,CPS 将在未来工程系统的设计和开发中发挥重要作用。本文首先介绍了CPS 系统的相关概念、定义以及CPS 系统的相应特点,并结合传统电网的特点,提出了GCPS 三层架构模型;最后,使用AADL 语言对系统中涉及到的各种构件进行建模,并对决策控制子系统的子进程进行了端对端的流延迟分析,验证系统的可行性。

猜你喜欢
体系结构子系统构件
基于思维导图的化学知识体系结构构建
软件通信体系结构(SCA)理念下的无线通信系统探究
网络空间供应链中入侵检测及防御子系统的投资机制研究
网络空间供应链中入侵检测及防御子系统的投资机制研究
团队与知识管理的关系研究
认知无线网络中的重点技术和研究
基于构件的软件工程技术与理论方法探讨
浅谈中职学校新型模块化机房建设
武汉工地钢材贴上电子标签
IPv6环境下动态域名系统的设计与实现