基于Nvidia jetson +fpga(ZYNQ)的人工智能图像加速板卡设计
Nvidia NX平台使用FPGA设备采集mipi视频数据调试记录驱动调试硬件原理图
·
Nvidia NX平台使用FPGA设备采集mipi视频数据调试记录
Jetson NX与ZYNQ通过Pcie通信。
驱动调试
硬件原理图
基于ZYNQ+Jetson多目标识别方案设计
FPGA+Xavier高速信号处理系统
6U ZYNQ+Nvidia Jetson Xavier NX板
电子对抗平台,Xilinx ZYNQ接入CameraLink高帧率相机,采集图像,送给Jetson Xavier NX做目标识别锁定,可用于无人机/雷达系统/视觉控制器
基于
FPGA-Jetson
的智能电网硬件实时联合仿真
摘 要
:智能电网是一个电力网络和通信网络耦合的物理信息电力系统(
CPPS, cyber-physical power system
),这 种双域耦合的特性使得对其实时仿真成为难点。不同于现有基于软件同步的联合仿真方法,借助了 FPGA
的可编 程计算能力和 Jetson
的实时操作系统,设计了基于
FPGA-Jetson
平台的智能电网硬件实时联合仿真架构,在
FPGA 板卡内进行电力系统仿真,在 Jetson
平台中完成信息通信系统仿真,利用
PCIe
数据通道模拟双域的信息交互。
通过充分发掘各个模块的计算和数据传输能力,可以实现对“电网
+
通信网”双域联合的实时仿真。最后,针对广域 AC-DC
混合输电网和微电网两个典型智能电网场景设计了相应的实时仿真模型及参数,验证了所提实时联 合仿真架构的可行性和可扩展性。
1
引言
自“工业
4.0
”的概念提出以来,信息与通信技
术(
ICT, information and communication technology
)
正越来越多地融入工业基础设施。作为工业领域的
重要组成部分,电力网络(简称“电网”)也正在
与
ICT
深度融合。在传统电网中,电力通常是由火
电厂、水电厂、核电厂等发电设施产生,并通过一
个庞大的电力传输网络输送给各个区域的用户。随
着居民和工业用电需求的日益增长,低容量、低可
靠性的老旧电力设施和僵化复杂的人工运维管理模
式逐渐难以满足未来电力网络的发展需求。在这样的
大背景下,智能电网(
SG, smart grid
)应运而生,将
ICT
全面应用到传统电力网络的基础设施中,实现对
整个电力系统的实时监测和智能管控,这也代表了未
来的电力网络体系架构发展方向
[1-2]
。
在智能电网的研究中,仿真技术是十分重要
的。电力网络实体铺设、试验的巨大成本,使得对
大型电网实体铺设之前的模拟仿真十分关键。传统
电网的仿真,主要关注两个方面:使电力设备的数
学仿真模型更为精确,以还原真实设备的电力参数
(即仿真精度);快速求解大型电网拓扑产生的微分
方程组,使仿真的速度更快(即仿真速度)。然而,
在智能电网中,电力系统是和通信网络耦合的,因
此智能电网又被称作物理信息电力系统。在这个系
统里,电力节点或设备的参数要通过信息系统进行
采样、传输、和分析,电网的控制指令也需要通过
信息通信系统进行传输和生效。因此,纯粹的电力
系统仿真已经难以模拟或还原整个智能电网的运
行过程和电力参数。在这个背景下,电网
−
通信网
联合仿真(
co-simulation
)的机制设计成为智能电
网仿真领域所关注的另一个研究重点
[3-4]
。现有联合
仿真的方法多集中于软件层面的设计:将现有电力
系统的仿真软件(如
PSCAD/EMTDC
、
PLSF
、
Matlab
Simulink
等)的仿真数据,与通信网络仿真软件(如
NS2/3
、
OMNeT++
、
OPNET
等)的仿真数据交互
同步
[5-11]
;而电力仿真是基于离散时间的(以时间
步长驱动),网络仿真是基于离散事件的,因此需
要对网络仿真软件的逻辑进行更改,使得电力仿真
的时间每前进一步长或多步长,网络仿真和电力仿
真均能到达相同的仿真时间点,这带来了数据同步
难、仿真速度慢的问题。
在电力系统仿真中,实时仿真(
real-time si
mulation
)是一种可以实时输出与真实电力系统中
电力参数相匹配结果的仿真方法,即仿真结果输出
的速度能够达到真实电力系统运行的速度。因此,
实时仿真对电网实际运行过程中的状态模拟和操
作控制均具有相当重要的作用。近年来,随着数字
孪生等技术概念的提出,实时仿真技术成为构建智
能电网的数字映射系统的核心技术之一。显然,有
软件层面的联合仿真机制无法达到实时仿真的效
果。为实现实时联合仿真,硬件仿真器成为首选。
例如,在文献
[12-13]
中用到的商用硬件电力仿真器
RT-LAB
,文献
[14-15]
中用到的商用硬件仿真器
RTDS
。在以上研究中,网络仿真软件(如
OPNET
)
在
PC
端运行,实时电力仿真则在硬件仿真器上进
行。这种方法虽然能实现实时仿真,但其专用硬件
和
PC
端中网络仿真软件的连接和数据同步更为复
杂,且专用硬件仿真器内部的仿真逻辑和实现方法
并未公开,缺乏一般性和研究可复制性。
基于以上分析,本文提出了一种基于
FPGA
Jetson
的实时仿真架构,
FPGA
已经被广泛应用于电
力系统的实时仿真,
Jetson
则是
NVIDIA
推出的具备
实时操作系统的计算平台,可专门用于计算和仿真
的加速。在所提架构中,
FPGA
负责电力设施层的实
时仿真,
Jetson
负责信息通信层和电网控制层的实时
仿真;通过快速的
PCIe
通道互联,可将电力设施层
和信息通信层仿真的数据进行实时交互。通过多块
FPGA-Jetson
平台之间的接口设计,可实现所仿系统
规模的扩展性。本文所提实时仿真架构解决了智能
电网实时仿真的
3
个技术难题。
·
电力设施层和信息通信层数据交互过程的
真实模拟问题,本文采用基于
FPGA
的小步长仿真
+PCIe
快速通道读写的方式解决。
·
信息通信层的实时仿真适配问题,本文提出
用新颖的基于传输参数时间库的仿真方法解决。
·
贴合不同电网场景的参数设计和配置问题,
本文在所提实时仿真架构的基础上,设计了两个实
时仿真的典型应用案例,
AC
和
DC
混合输电网场
景以及
15
节点的微电网场景,采用了符合实际电
网的电力设备模型和通信系统协议。通过对所占资
源和仿真速度的分析,验证所提实时仿真架构的可
行性和优势。
2
智能电网架构及仿真要点
智能电网
3
层架构示意图如图
1
所示,在整体
架构上可划分为
3
层:电力设施层、信息通信层、
电网控制层。电力设施层涵盖了发电设施、输电设
施、配电设施、用电设施、储能设施、可控负载以
及电力保护开关等,属于强电设备。信息通信层则
主要由数字测控装置和通信网络设备组成,属于弱
电设备。其中,数字测控装置负责对电力设施层的
电力参数进行采样或对可控设备执行控制指令(如
PMU
、
TTU
、
RTU
等),而网络设备则包括骨干路
由器、接入级路由器、防火墙、工业交换机以及光
纤链路等
[16]
。电网控制层负责接收数字测控装置发
送的电力参数并下发控制指令,其具体的控制应用
依据不同的电力场景采用不同的控制功能,例如,
在变电站内部自动化系统中以
SCADA
控制为主,
在广域测量保护系统中是面向同步相量数据的
WAMS
控制,而在用电先进测量系统中又以
AMI
测量为主。
仿真这样一个
3
层的物理信息电力系统的难点
在于,需要模拟或还原出被仿真电网运行过程中的
各类重要参数。
·
电力设施层中,各个电网节点或设备的电力
参数,如电压、电流、功率、频率等。
·
信息通信层中,电力参数被采样形成测量数
据,测量数据封装到通信网络报文,以及数据报文
从测量设备传递到控制中心的传输参数,如时延、
丢包等。
·
电网控制层中,控制服务器收到电力参数后
产生控制指令的响应参数,如时延。
·
控制指令通过信息通信层传输后作用到可
控电力设备的响应参数及效果,如动作时延、电力
参数变化等。
3
基于
FPGA-Jetson
的硬件联合实时仿真
为实现智能电网的实时仿真,电力设施层的实时
仿真是重点,信息通信层和电网控制层的实时仿真是
难点。本文借助
FPGA
的可编程和并行计算能力,完
成电力设施层的实时仿真;利用
NVIDIA Jetson
平台
的实施操作系统,实现信息通信层的实时模拟,并可
完成电力设施层仿真的部分串行计算任务。
3.1
基于
FPGA
的电力系统仿真
电力系统仿真的实质是将每个电力设备的工作
过程建模为一个由
R
、
L
、
C
组成的(线性或非线性)
等效电路;一个电力网络可以看作是由这些设备等
效电路构成的主电路,由此可联立求解整体等效电
路所形成的常微分方程组,并得到节点电压、电流
等电力参数。因此,电力设备的等效电路模型决定
了仿真精度,而等效电路求解方法及实现则决定了
仿真的速度。
FPGA
以其灵活的可编程能力和强大的
并行计算能力,可以实现电路方程组的快速并行求
解,因此可用于电力系统的实时仿真。事实上,基
于
FPGA
平台的电力系统实时仿真已经被广泛研究
并应用
[17-18]
。本文采用
Xilinx
近年来最新推出的
VCU118
和
VCU128
系列
FPGA
板卡进行电力系统
的实时仿真,其优势在于逻辑资源丰富,能够仿真
大规模电力系统;存储资源容量大,能够存储大量
电路节点的电力参数数据;网络端口资源丰富,能
够模拟信息通信层的网络数据报文传输。
3.2 Jetson
实时计算平台
虽然
FPGA
可用于电力设施层的仿真,但其可
编程逻辑资源并不适用于信息通信层的仿真。因为
信息通信层的数据传输本质上并不是一个计算求
解的过程,而是基于
TCP/IP
协议栈的报文解析和
转发过程。虽然在文献
[19]
中,
FPGA
的软核处理
器(如
Xilinx
系列
FPGA
中的
Microblaze
处理器)
被用于信息通信层的仿真,但其处理器的性能和资
源容量均难以支持高速的数据报文处理,也不具备
良好的可扩展性。本文选择采用
NVIDIA
推出的
Jetson AGX Xavier™
实时嵌入式计算平台,其配备
了基于
ARM v8.2
的
8
核
CPU
处理器,支持最新
ARM Neon
指令集,主频可达
2.2 GHz
,浮点运算
能力不亚于同档次
x86 CPU
;而且含有
384
个
CUDA
核心和
48
个
Tensor
核心,可以完成高速并
行计算。除此之外,
Jetson
有多种实时操作系统可
以安装,相较于传统分时操作系统拥有更高的计时
精度和更低的程序响应时延。因此,
Jetson
是实现
实时仿真平台的理想选择。
3.3 FPGA-Jetson
联合仿真架构
本文提出的基于
FPGA-Jetson
的联合仿真架构
如图
2
所示。针对电力设施层、电力
-
信息层之间的
信息交互、信息通信层、电网控制层的实时仿真具
体如下。
1
)电力设施层仿真
由于基于
FPGA
的电力设施层实时仿真技术已
经较为成熟,在此基础之上需要重点考虑的是仿真
步长问题。现有联合仿真方面的研究多采用较大的
仿真步长以提升仿真速度,降低仿真难度,但这种
方式并不能模拟出电力参数的采样过程。真实电网
中,数字测量设备对电力设施的电力参数进行采样
的频率可能高达
256
个
/
电压周期(在
61850
规约中
的规定
[20]
),如果以
60 Hz
的电压周期来算,采样
间隔只有
65
μ
s
。这就要求电力设施层的仿真步长不
能过大。因此,本文采用
20
μ
s
的仿真步长,以满
足模拟采样过程的需求,即达到电磁暂态仿真
(
EMT, electromagnetic transient simulation
)的效果。
Jetson
平台虽然具有一定的实时处理能力,但无法
匹配
20
μ
s
仿真步长级别的大规模计算,尤其在仿
真系统较大时,
FPGA
强大的并行计算能力更加凸
显,能够完成
20
μ
s
级别的
EMT
实时仿真。此外,
FPGA
上的高速
GTH/GTY
收发器被用于图
2
架构
中的扩展单元模块,当被仿真系统规模较大时支持
多个
FPGA
板卡之间的互联扩容。
2
)电力设施层和信息通信层交互仿真
需要模拟出电力参数采样数据形成通信数据
报文的过程,而该过程则因不同电网通讯场景而
异,这是实时联合仿真的一个难点。例如,在以相
量测量装置(
PMU, phasor measurement unit
)为主
的广域测量系统(
WAMS, wide area measurement
system
)中,
PMU
需要根据采样到的电压、电流等
电力参数,计算出相应的相量幅值和相角,然后将
其封装到通信数据报文中。因此,该过程的模拟由
图
2
中所示的“测量数据生成”模块完成,其根据
场景需求和既定数据格式生成相应的数据帧,并将
其放入通信数据报文的载荷中。此外,采样数据在
FPGA
中以仿真结果输出的方式呈现,这些采样数
据存储在
BRAM
中。测量数据生成模块通过
PCIe
快速数据通道与
FPGA
中的
BRAM
相连,并用
PCIe
驱动函数读取
BRAM
中的采样数据,用于生成数
据报文。
3
)信息通信层实时仿真
不能直接采用现有基于软件的仿真方案,因其
运行过程难以做到实时,因此这是实时联合仿真的
另一个难点。一种解决方法是,利用
FPGA
和
Jetson
板卡上的物理网口,直接做实物通信网络传输,即
把一个
FPGA
当作单个通信节点,但这样做的问题
是,需要几十上百个
FPGA
才能模拟出相当规模的
通信网络,这显然是不切实际的。因此针对此仿真
难点,本文提出的方案如图
2
中所示的参数时间抽
象
−
实体端口混合的仿真方式。在这种仿真方式下,
将被仿电网分成多个区域,单个区域内部的信息通
信层在单个
Jetson
计算平台内采用参数时间抽象
(
PTA, parameter timing abstraction
)的方式模拟,将
数据报文传输过程抽象为由传输参数(如端到端传
输时延、丢包率等)定义的过程,而将传输过程本
身省略掉,从而在联合仿真时利用这些传输参数实
现实时的信息传输层仿真。不同区域之间的信息交
互则通过不同
Jetson
计算平台的实体端口之间的通
信进行直接模拟,即利用
Jetson
的物理网口直接搭
建
TCP/IP
协议栈以完成不同区域之间的数据传输,
这个部分封装在图
2
所示的
Jetson
扩展单元模块
中,因为扩展到多个平台互联时才需要。
虽然基于参数抽象的信息通信层仿真已经在
文献
[21]
中采用,但其所用到的端到端传输参数是
静态的。例如,从节点
A
到节点
B
的传输时延是一
个预设的固定值。而在本文所提的
PTA
仿真中,这
些传输参数是有精确时间戳的,即
PTA
仿真所用到
的传输参数是由网络仿真器提前仿真得到的,但整
个过程的端到端传输参数全被记录到“传输参数时
间库”中。例如,从节点
A
到节点
B
的端到端传输
时延是一条随时间变化的幅值曲线,可以模拟整个
通信过程的动态。然后,在与电力系统的联合实时
仿真过程中,不同时间所对应的端到端报文传输根
据传输参数时间库中相应时间的时延等传输参数
对数据报文进行延迟或丢包即可。由于
Jetson
实时
操作系统的计时更为精确,这种报文的传输模拟可
以做到和实时报文传输相同的效果,从而达到实时
仿真的目的。这种基于
PTA
的仿真方式可行的原因
是,智能电网仿真的核心在电力设施层,在真实电
网中,无论是信息通信层还是电网控制层,最终目
的都是服务于电力设施层,使其能够稳定运行且可
管可控。因此在仿真实现中,无论信息通信层和电
网控制层的仿真是以何种方式实现的,核心是要能
够真实模拟出其对电力设施层的电力参数造成的
影响
[22]
。此外,电力设施层的参数采样一般都是周
期性进行的,因此无论其如何变化,都只会体现出
对报文内部数据的影响,并不会影响到信息通信层
的端到端传输参数,而包含控制指令的报文则一般
在突发风险或异常情况下才会下发且数据量很小,
其对端到端传输参数的影响也不大。因此,在信息
通信层提前仿真得到的传输参数时间库可用于模
拟整个仿真过程中的数据报文传输。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献10条内容
所有评论(0)