【Simulink】基于FCS-MPC的三相并网逆变器电流控制(Matlab Function)
之前写的关于三相逆变器的FCS-MPC的博客,均针对L型滤波的。LC型滤波与L型滤波有很多不同的地方,本篇博客将讲解LC型滤波三相逆变器的FCS-MPC控制。
1. 三相LC滤波逆变电路
根据基尔霍夫电压电流定理,在 α β \alpha \beta αβ坐标系下:
C
d
v
o
α
β
d
t
=
i
f
α
β
−
i
o
α
β
C \frac{dv_{o \alpha \beta}}{dt}=i_{f \alpha \beta}-i_{o\alpha \beta}
Cdtdvoαβ=ifαβ−ioαβ
L
d
i
f
α
β
d
t
=
u
α
β
−
R
i
f
α
β
−
v
o
α
β
L \frac{di_{f\alpha \beta}}{dt}=u_{\alpha \beta} -R i_{f \alpha \beta} - v_{o \alpha \beta}
Ldtdifαβ=uαβ−Rifαβ−voαβ
i f α β i_{f \alpha \beta} ifαβ 和 u α β u_{\alpha \beta} uαβ 分别为 αβ 坐标系中的逆变器侧输出电流和逆变器输出电压; i o α β i_{o\alpha \beta} ioαβ 为 αβ 坐标系中的负载电流; v o α β v_{o \alpha \beta} voαβ 为负载电压。
2. FCS-MPC控制原理
由前向欧拉离散化方法可进一步推得 αβ 坐标系中 k 时刻和 k+1 时刻的离散方程:
C
v
o
α
β
(
k
+
1
)
−
v
o
α
β
(
k
)
T
s
=
i
f
α
β
(
k
)
−
i
o
α
β
(
k
)
C \frac{v_{o \alpha \beta}(k+1)-v_{o \alpha \beta}(k)}{T_s}=i_{f \alpha \beta}(k)-i_{o\alpha \beta}(k)
CTsvoαβ(k+1)−voαβ(k)=ifαβ(k)−ioαβ(k)
L
i
f
α
β
(
k
+
1
)
−
i
f
α
β
(
k
)
T
s
=
u
α
β
(
k
)
−
R
i
f
α
β
(
k
)
−
v
o
α
β
(
k
)
L \frac{i_{f \alpha \beta}(k+1)-i_{f \alpha \beta}(k)}{T_s}=u_{\alpha \beta}(k) -R i_{f \alpha \beta}(k) - v_{o \alpha \beta}(k)
LTsifαβ(k+1)−ifαβ(k)=uαβ(k)−Rifαβ(k)−voαβ(k)
T s T_s Ts 为采样周期。
由此可以得到:
v
o
α
β
(
k
+
1
)
=
v
o
α
β
(
k
)
+
T
s
[
i
f
α
β
(
k
)
−
i
o
α
β
(
k
)
]
C
v_{o \alpha \beta}(k+1)=v_{o \alpha \beta}(k) +\frac{T_s [i_{f \alpha \beta}(k)-i_{o\alpha \beta}(k)]}{C}
voαβ(k+1)=voαβ(k)+CTs[ifαβ(k)−ioαβ(k)]
i
f
α
β
(
k
+
1
)
=
i
f
α
β
(
k
)
+
T
s
[
u
α
β
(
k
)
−
R
i
f
α
β
(
k
)
−
v
o
α
β
(
k
)
]
L
i_{f \alpha \beta}(k+1)=i_{f \alpha \beta}(k)+\frac{T_s [u_{\alpha \beta}(k) -R i_{f \alpha \beta}(k) - v_{o \alpha \beta}(k)]}{L}
ifαβ(k+1)=ifαβ(k)+LTs[uαβ(k)−Rifαβ(k)−voαβ(k)]
负载电流 i o α β i_{o\alpha \beta} ioαβ 通常不通过采样得到(负载未知),而是通过计算得到:
i o α β ( k − 1 ) = i f α β ( k − 1 ) − ( C / T s ) ∗ ( v o α β ( k ) − v o α β ( k − 1 ) ) i_{o \alpha\beta}(k-1) = i_{f \alpha\beta}(k-1)-(C/Ts)*(v_{o \alpha \beta}(k)-v_{o \alpha \beta}(k-1)) ioαβ(k−1)=ifαβ(k−1)−(C/Ts)∗(voαβ(k)−voαβ(k−1))
易知三相逆变一共有8个开关状态,对应8个电压矢量(电压矢量和开关状态的对应关系可以参考我之前的博客)。将8个电压矢量所对应的开关状态代入预测模型离散方程,从而预测得到 k+1 时刻的负载电压。最后,将预测得到的8个负载电压代入目标函数 G,通过比较寻优,选择使目标函数最小的电压为最优矢量。
G = ∣ v o α β − v r o α β ∣ G=|v_{o \alpha \beta}-v_{ro \alpha \beta}| G=∣voαβ−vroαβ∣
v r o α β v_{ro \alpha \beta} vroαβ 为负载电压参考值。
3. 仿真原理图
版本:2022b
整体
abc三相转为复数形式(方便后面运算)
cont2dis.m
function [Aq, Bq, Bdq] = cont2dis(Ts,Lfilter,Cfilter)
% Input filter model
A = [0 -1/Lfilter;1/Cfilter 0];
B = [1/Lfilter; 0];
Bd = [0; -1/Cfilter];
% Discretization of the input filter model
[Aq,Bq]=c2d(A,B,Ts);
[~,Bdq]=c2d(A,Bd,Ts);
% c2d - Convert model from continuous to discrete time
end
x
(
k
+
1
)
=
A
x
(
k
)
+
B
v
i
(
k
)
+
B
d
i
o
(
k
)
x(k+1)=Ax(k)+Bv_i(k)+B_di_o(k)
x(k+1)=Ax(k)+Bvi(k)+Bdio(k)
x
=
[
i
f
,
v
o
]
T
x=[i_f, v_o]^T
x=[if,vo]T
4. 仿真结果
负载电压
幅值接近220V
仿真下载
参考
- github : MPC-3-Phase-Inverters-master
- 郭磊磊,李伟韬,李琰琰,窦智峰,金楠.LC 滤波型逆变器并网电压鲁棒预测控制[J/OL].电力自动化设备. https://doi.org/10.16081/j.epae.202204025
- Mohamed, Ihab S., et al. “Classical methods and model predictive control of three-phase inverter with output LC filter for UPS applications.” 2013 International Conference on Control, Decision and Information Technologies (CoDIT). IEEE, 2013.