一种用于电力电子拓扑仿真的FPGA 建模方法
2020-08-06徐立恩陈柳松
刘 丽,徐立恩,陈柳松
(中车株洲电力机车研究所有限公司,湖南 株洲 412001)
0 引言
FPGA 相较于CPU 具有计算速度快、传递信号高速、能耗低等优点[1],在高速率的仿真领域得到了广泛的应用[2],特别是在电力电子领域;但其速率直接影响了系统的计算误差甚至准确性,因此,对电力电子拓扑进行实时仿真的FPGA 建模技术成为国内外专家和学者研究的热点。
目前,对于FPGA 的建模方法主要有3 种:传统的FPGA 建模方法[3-4]、基于eHS(electric hardware solver)的FPGA 建模方法[5-7]及基于模型设计的方法[8]。传统的建模方法不仅对专业人士的理论要求较高,而且对于大规模的电力电子拓扑,其数学分析过程复杂,建模难度大,需耗费大量的人力资源,开发周期长。基于eHS 的建模方法能利用SimPowerSystem 模型快速建立FPGA 模型,但需Opal-RT 测试系统的软、硬件资源支撑,且模型的规模受到一定的限制,不仅需要昂贵的使用费,而且模型的可移植性很差。基于模型的设计方法是Mathworks 公司近年提出来的一种新设计方法,其基于Simulink 模型自动生成HDL 代码,但仍需对电路拓扑进行大量的数学分析。
针对电力电子拓扑FPGA 建模存在的问题,本文提出一种用于电力电子拓扑实时仿真的FPGA 快速建模方法。其通过对电力电子开关器件的等效,能够方便简单地对电力电子拓扑进行数学分析,同时可利用Matlab自带的函数方便地得到系统的状态空间矩阵,并将其映射于FPGA。该方法在复杂电力电子拓扑模型数学分析方面具有明显的优势,同时能够打破仿真器公司的技术封锁,对于仿真建模技术的发展具有重要意义。
1 离散化等效建模
离散化等效建模主要是对电力电子开关器件进行分段线性化等效,以快速得到电力电子开关器件的数学模型。
1.1 开关特性等效分析
理想电力电子单刀单掷开关特性电路如图1 所示,其中us为开关两端电压,is为流过开关的电流。
图1 理想开关模型Fig.1 Ideal switch model
在理想状态下,当开关处于导通状态时,电阻可等效为零;当其处于断开状态时,则电阻无穷大。考虑开关状态的切换是瞬时完成的,若用一个布尔变量s来表示其开关状态,则可以如下形式表达:
由式(1)和式(2)可以看出,开关的通断状态能用开关两端的电压、电流函数以及s来表示。对于全控型器件,其开关状态s只由外部的控制信号c来决定,即s=c;对于一些不控器件来说,由于无外部控制信号,其通断状态只能由其端电压和电流来决定。
1.2 基于后向欧拉迭代算法离散化建模
为建立适合仿真的离散模型,一些传统的仿真器供应商,如Spice 公司,将图1 所示的理想开关特性电路模型用离散化形式表达[9],如图2 所示。其中,代表第(n+1)个仿真步长时开关两端的电压;表示第(n+1)个仿真步长时流经开关的电流,Gs为一个非线性的电导;表示第(n+1)个仿真步长时的电流源。
图2 离散化理想开关模型Fig.2 Discrete model of ideal switch
当开关导通时,Gs等效为一个很大的电导;当开关断开时,Gs等效为一个很小的电导。两种状态转换期间,给Gs一个平滑的过渡。在这种计算方式下建模主要有两种缺陷:
(1)Gs在每个仿真步长下都需要重新更新,以实现对非线性开关器件的线性化处理,容易引起状态切换过程中系统的不稳定性;
(2)由于Gs处于不断的变化过程中,因此在每个仿真步长下,系统都需要重新计算并且存储到FPGA 中,这会引入很大的计算负担。
为弥补以上缺陷,本文基于后向欧拉算法条件[10],将开关特性电路等效成电感、电容的离散化模型。理想开关在导通时被当成小电感,断开时被当成小电容。
让Gs保持为一个常数时,则仅需通过电流源的值来反映开关状态的变化。如此处理的好处在于可以保证电路拓扑的系统矩阵为常矩阵,而开关状态的变化最终只通过电流源的变化来体现。
若仿真步长T足够小,采用后向欧拉迭代算法,选择,使得,则可以用如下的电流源来近似表达开关的特性:
在近似等效的情况下,引入的误差如下:
(1)开关闭合时的电压误差
(2)开关断开时的电流误差
可以发现,若采样步长足够小,那么式(4)和式(5)的误差收敛于零。因此,为保证该方法的有效性和准确性,一般将其用于计算速率较快的FPGA。
按照上述分析,若将理想开关等效成离散化理想开关形式(图2),保持Gs为常量且按照式(3)变化,则可等效得到开关的分段线性化数学模型。与传统数学模型分析方法不同,该方法不需对其开关状态下的电压和电流进行深入分析。其中,Gs选择范围一般为0.001~10,T一般选择较小值,自由调节Gs值,直到符合要求为止。为不影响电路本身特性,一般情况下,开关器件等效的电感和电容应远小于电路中本身存在的电感和电容,使得模型稳定、正确。
该等效方法不仅适用于理想的开关,而且对所有的开关器件都适用,只是开关状态的表达式不同而已。表1示出理想开关(全控器件)、二极管(不控器件)以及晶闸管(半控器件)的状态表达式。其他大部分开关器件可以用理想开关与二极管的不同组合形式来表示。
表1 不同类型开关器件的开关状态表达式Tab.1 Switch state expressions for different types of switching devices
2 电力电子电路拓扑建模
基于上述方法对电力电子拓扑的开关器件进行等效分析,将变拓扑电路变成电导和电流源并联的定拓扑电路,即可方便地利用Matlab 自带的power_analyze 函数求得其最终的数学表达式:
式中:u——系统的输入变量;y——系统的输出变量;D——系统的固定矩阵。
一般可选择电压源和电流源为系统的输入变量(包括开关器件等效的受控电流源),需要测量和计算的电压和电流为输出变量。模型建立之后,仿真将按如下的方式进行处理:
(1)电路中各开关的下一个状态由外部控制信号及当前开关两端的电压和电流来确定;
(2)开关器件等效的电流源由开关器件两端当前的电压或者电流来确定;
(3)根据式(6)求解出系统的输出量;
(4)不断重复步骤(1)~(3),直到仿真停止为止。
与传统方法相比较,本文所提方法不再需要人工进行复杂的数学分析,对于任意带有开关器件的电力电子拓扑,只需将其等效成电导和受控电流源并联的形式,即可快速得到系统唯一的数学表达形式y=Du。采用此方法,模型的搭建具有可复制性,极大地缩短了建模时间。图3 给出了该方法与传统FPGA 建模方法预计的开发周期的对比,可以看出,采用本文所提的方法,FPGA 建模开发周期缩短了1/4 左右。
图3 FPGA 建模开发周期对比Fig.3 Building period comparison between different FPGA modeling methods
3 仿真验证
为了验证本文所提方法的可行性,选取“三相两电平逆变器+异步电机”的电路拓扑形式来进行仿真验证。
3.1 电路拓扑
图4 示出“逆变器+电机”的电路拓扑,其中Ud为中间直流电压,V1~V6 为IGBT 器件,D1~D6 为并联的二极管,M 为异步电机。该电路采用传统的矢量控制方式,利用SVPWM 脉冲调制模块产生PWM 脉冲。异步电机的主要参数如表2 所示。
图4 “逆变器+电机”电路拓扑Fig.4 Topology of the circuit with inverter and motor
表2 异步电机的主要参数Tab.2 Main parameters of asynchronous motor
3.2 FPGA 建模
文中开关器件采用理想开关和二极管并联的形式进行等效,其等效电路如图5 所示。其中Gs为常数,可自由调节;js由系统的开关状态和前一个状态的电压或电流来确定,其关系如式(3)所示。
图5 等效后的“逆变器+电机”模型Fig.5 Equivalent model of inverter and motor
最终得到逆变器的数学表达式为
式中:i代表行;j代表列;m为总列数。
逆变器在FPGA 中的内部计算结构如图6 所示,保持系统矩阵不变,变流器的开关特性即可简单地通过输入变量的变化来体现。
图6 FPGA 内部计算结构Fig.6 Internal computing structure of FPGA
3.3 仿真结果分析
为了说明该方法的有效性,需采用FPGA 离线仿真与SimPowerSystem 模型相对比的方式来对系统进行仿真分析,其中SimPowerSystem 模型采用闭环控制的形式,FPGA 模型采用开环的形式来进行仿真(图7)。
图7 SimPowerSystem 模型与FPGA 模型对比框图Fig.7 Block diagram comparison of SimPowerSystem model and FPGA model
图8 示出SimPowerSystem 模型下和FPGA 模型下的逆变器输出三相电流波形,图9 为两种模型下AB 相间输出线电压uAB的波形对比。可以看出,两种模型下,逆变器输出三相电流误差小于0.5%,uAB波形误差不超过1%,证明该方法应用于电力电子拓扑仿真建模的有效性。
图8 逆变器三相电流波形Fig.8 Three-phase current waveforms of the converter
图9 uAB 波形Fig.9 Waveforms of uAB
图10 和图11 示出了电机转速和转矩的对比波形。可以看出,两种模型下,电机转速的误差基本上能够控制在0.3%以内,转矩的误差控制在1.5%以内,表明采用该方法,整个系统能够保持良好的动态和静态性能。
图10 两种模型下电机转速波形对比Fig.10 Motor speed waveform comparison for two models
图11 两种模型下电机转矩波形对比Fig.11 Motor torque waveform comparison for two models
表3 示出SimPowerSystem 和 FPGA 模型下参数仿真误差。仿真中出现误差最主要源自Gs和T参数的选择,这是因为使得模型稳定且可选的Gs和T值较多,通常需要不断地反复试验才能得到最优的参数;另外,对模型进行等效处理,会使开关切换过程引入一定的误差。
表3 SimPowerSystem 和 FPGA 模型下参数误差Tab.3 Parameter errors under SimPowerSystem model and FPGA model
4 结语
本文研究并提出了一种用于电力电子拓扑仿真的FPGA 建模方法。其首先对电力电子开关器件进行等效分段线性化处理,使得原本为非线性模型的开关器件转化成分段线性化的模型;其次运用Matlab 自带的函数对系统矩阵进行求取,简单、方便地实现了对其数学模型的分析,极大缩短了FPGA 建模的开发周期。仿真实验结果验证了该方法的有效性。但该方法对Gs参数的选择需基于人工试验,后续将针对Gs的自适应求解做进一步研究。