MPC专题(三)_并网变换器双矢量模型预测控制
b站的一个视频介绍了双矢量MPC,这里再补充一些东西。
1. 三相两电平L型滤波并网逆变器
参考:【Simulink】基于FCS-MPC的三相并网逆变器电流控制(Matlab Function)
2. 双矢量模型预测控制
为什么要用双矢量?
在每个控制周期中应用传统的单个电压矢量的方法可能引起较大的电流波纹和较宽的谐波频率范围。
为了更好地提高控制性能,准确且快速地计算出每一个电压矢量的作用时间是极其重要的。目前,主要有两种计算电压矢量作用时间的方法:一种是基于无差拍控制原理矢量作用时间计算方法;另一种被称为调制模型预测控制,其基本原理是假设每个电压矢量的作用时间与其价值函数成反比。尽管使用第一种方法理论上可以准确地计算出电压矢量的作用时间,但其计算量较大,且易出现作用时间大于控制周期或小于零的不合理情况,而第二种方法缺乏理论验证。
👉基于无差拍方法可以参考:
姚绪梁, 黄乘齐, 王景芳, 等. 具有参数辨识功能的永磁同步电机双矢量模型预测电流控制[J]. 中国电机工程学报, 2022: 1-13.
👉调制模型预测控制方法可以参考郑州轻工业大学的郭磊磊老师的一些论文:
郭磊磊, 李国昊, 金楠, 等. 两电平电压源逆变器双矢量调制模型预测控制:理论分析、实验验证和推广[J]. 电工技术学报, 2021,36(01): 39-49.(这篇论文非常经典,推荐阅读👍)
矢量作用时间计算
本篇论文采用的是调制模型预测控制方法,即假定每个电压矢量的作用时间与其价值函数成反比。
在单矢量模型预测控制中,一共有8个电压矢量(7个有效矢量),组合后可以得到12个双矢量组合(不考虑零矢量+零矢量),分别为 us1 (u0, u1),us2 (u0, u2),us3 (u0,u3),us4 (u0, u4),us5 (u0, u5),us6 (u0, u6),us7 (u1, u2),us8 (u2, u3),us9 (u3, u4),us10 (u4, u5),us11 (u5, u6),us12 (u6, u1),
上图的 G 是代价函数,G j G_jGj 和 G k G_kGk 是两个矢量单独作用下的电流预测代价函数,t j t_jtj 和 t k t_ktk 是两个矢量的作用时间,两个矢量作用时间之和为一个控制周期。
根据郭磊磊老师提出的调制模型预测控制原理,矢量的作用时间和代价函数成反比。
上图举了 us1 (u0, u1) 的例子说明PWM调制,u j u_juj 是 000,u k u_kuk 是 100,根据 u s = t j ∗ u j / T s + t k ∗ u k / T s u_s = t_j *u_j/T_s + t_k*u_k/T_sus=tj∗uj/Ts+tk∗uk/Ts 在一个控制周期内只切换ua,两个矢量的 Sb 和 Sc 都是0,Sa 的值则需要根据矢量作用时间确定。
再举个例子,对于 us12 (u6, u1),u j u_juj 是 101,u k u_kuk 是 100,则 u a = 1 , u b = 0 , u c = ( 1 − t j / T s ) ∗ h ua = 1,ub = 0,uc = (1-t_j/T_s)*hua=1,ub=0,uc=(1−tj/Ts)∗h.
其余部分和单矢量MPC的控制差不多,郭磊磊老师论文的做法是电压跟踪,我这里做的是电流跟踪,效果其实差不多。
整体流程 ⭐️
- 建立三相逆变器系统模型,采集系统三相电流、电网电压值
- 代入8个基本矢量,进行电流预测:i ( k + 1 ) = ( 1 − R ∗ T s / L ) ∗ i ( k ) + T s ∗ ( u ( i ) − e ( k ) ) / L i(k+1)=(1-R*Ts/L)*i(k)+Ts*(u(i)-e(k))/Li(k+1)=(1−R∗Ts/L)∗i(k)+Ts∗(u(i)−e(k))/L
- 组合12个双矢量,计算每个基本矢量的代价函数和作用时间,并计算合成后的电压矢量
- 通过枚举的方式选择使总代价函数最小的双矢量所对应的开关状态进行下一控制周期的控制
3. Simulink仿真
仿真原理图
版本:matlab2019b
部分代码
function [y1,y2,y3,y] = fcn(Vdc, ea, eb, ia, ib, iar, ibr, Ts, R, L) Gmin = inf; n=0; g =zeros(1,8); G =zeros(1,12); a1=0;b1=0;c1=0; a2=0;b2=0;c2=0; a3=0;b3=0;c3=0; a4=0;b4=0;c4=0; a5=0;b5=0;c5=0; a6=0;b6=0;c6=0; a7=0;b7=0;c7=0; a8=0;b8=0;c8=0; a9=0;b9=0;c9=0; a10=0;b10=0;c10=0; a11=0;b11=0;c11=0; a12=0;b12=0;c12=0; y1=0;y2=0;y3=0; v0 = 0; % 000 v1 = -1/3*Vdc - 1j/sqrt(3)*Vdc; % 001 v2 = -1/3*Vdc + 1j/sqrt(3)*Vdc; % 010 v3 = -2/3*Vdc; % 011 v4 = 2/3*Vdc; % 100 v5 = 1/3*Vdc - 1j/sqrt(3)*Vdc; % 101 v6 = 1/3*Vdc + 1j/sqrt(3)*Vdc; % 110 v7 = 0; % 111 v = [v0 v1 v2 v3 v4 v5 v6 v7]; for i =1:8 ia1 = (1-R*Ts/L)*ia + Ts*(real(v(i))-ea)/L; ib1 = (1-R*Ts/L)*ib + Ts*(imag(v(i))-eb)/L; g(i) = abs(iar-ia1)+abs(ibr-ib1); end
仿真结果
参考电流幅值为10A时,并网电流波形:
THD=2.15%
0.25s参考电流幅值从5A变成10A,并网电流波形:
仿真文件下载
参考
[1] 郭磊磊, 李国昊, 金楠, 等. 两电平电压源逆变器双矢量调制模型预测控制:理论分析、实验验证和推广[J]. 电工技术学报, 2021,36(01): 39-49.
[2] GUO L, CHEN M, LI Y, et al. Hybrid Multi-Vector Modulated Model Predictive Control Strategy for Voltage Source Inverters Based on a New Visualization Analysis Method[J]. IEEE Transactions on Transportation Electrification, 2023,9(1): 8-21.