双闭环+最近电平逼近调制MMC模块化多电平换流器仿真(逆变侧)含技术文档 MMC Matlab-Simulink 直流侧11kV 交流侧6.6kV N=22 采用最近电平逼近调制NLM 环流抑制(PIR比例积分准谐振控制),测量桥臂电感THD获得抑制效果。 功率外环 电流内环双闭环控制 电流内环采用PI+前馈解耦, 电容电压均压排序采用基于排序的均压方法, 并网后可以得到对称的三相电压和三相电流波形,电容电压波形较好,功率提升,电压电流稳态后仍为对称的三相电压电流。
最近在研究MMC(模块化多电平换流器)的仿真,特别是逆变侧的双闭环控制和最近电平逼近调制(NLM)。整个过程挺有意思,尤其是看到仿真结果时,那种成就感还是挺爽的。今天就来分享一下我的仿真过程和一些代码分析。
首先,MMC的结构大家都比较熟悉了,直流侧11kV,交流侧6.6kV,子模块数N=22。我们采用最近电平逼近调制(NLM),这种调制方式简单粗暴,直接根据参考电压和子模块电容电压的差值来选择最近的电压电平,省去了复杂的PWM生成过程。
双闭环控制
双闭环控制是MMC的核心,外环是功率环,内环是电流环。外环负责控制有功和无功功率,内环则负责跟踪电流指令。电流内环采用了PI控制加前馈解耦,这样可以有效抑制电流的波动。
% 电流内环PI控制 Kp = 0.5; % 比例增益 Ki = 0.1; % 积分增益 error = I_ref - I_meas; % 电流误差 I_out = Kp * error + Ki * integral(error); % PI控制输出前馈解耦部分主要是为了消除dq轴之间的耦合,提高系统的动态响应。
% 前馈解耦 Vd_ff = w * L * Iq; % d轴前馈 Vq_ff = -w * L * Id; % q轴前馈 Vd_ref = Vd_ff + Vd_pi; % d轴参考电压 Vq_ref = Vq_ff + Vq_pi; % q轴参考电压环流抑制
环流是MMC中一个比较头疼的问题,我们采用了PIR(比例积分准谐振)控制来抑制环流。PIR控制器的设计主要是为了在特定频率下提供高增益,从而有效抑制环流。
% PIR控制器 Kp = 1.0; % 比例增益 Ki = 0.5; % 积分增益 Kr = 0.2; % 谐振增益 w0 = 2 * pi * 50; % 谐振频率 error = I_circ; % 环流误差 I_circ_out = Kp * error + Ki * integral(error) + Kr * (w0 / (s^2 + w0^2)) * error; % PIR控制输出通过测量桥臂电感的THD(总谐波失真),我们可以看到环流抑制的效果。THD越低,说明环流抑制得越好。
电容电压均压排序
电容电压的均压是MMC稳定运行的关键。我们采用了基于排序的均压方法,简单来说就是根据电容电压的大小进行排序,然后选择电压最高的子模块进行放电,电压最低的子模块进行充电。
% 电容电压排序 [~, idx] = sort(V_cap); % 对电容电压进行排序 V_cap_sorted = V_cap(idx); % 排序后的电容电压这种方法虽然简单,但效果还不错,仿真中可以看到电容电压波形比较平稳,没有出现明显的波动。
仿真结果
并网后,我们得到了对称的三相电压和三相电流波形,电容电压波形也比较好。功率提升后,电压和电流在稳态下仍然保持对称,说明系统的控制策略是有效的。
% 仿真波形 figure; plot(t, V_abc); % 三相电压波形 hold on; plot(t, I_abc); % 三相电流波形 xlabel('Time (s)'); ylabel('Voltage (V) / Current (A)'); legend('V_a', 'V_b', 'V_c', 'I_a', 'I_b', 'I_c'); title('三相电压和电流波形');总的来说,这次仿真还是挺成功的,双闭环控制和NLM调制的结合效果不错,环流抑制和电容电压均压也达到了预期目标。当然,还有很多细节可以优化,比如控制参数的整定、调制策略的改进等,这些都是下一步的工作。
仿真过程中,Matlab-Simulink的使用也让我对MMC的控制有了更深的理解。虽然有时候调参数调得头大,但看到最终的结果,还是觉得挺值得的。希望这篇博文对大家有所帮助,如果有任何问题,欢迎留言讨论。