基于matlab仿真双馈风力发电机模型研究
定子侧变流器采用电压外环,电流内环的双闭环控制,电压外环控制直流母线电压,直流电压给定值与反馈值的偏差经过调节器,其结果决定有功功率大小,符号决定有功功率的方向。电流内环按照电压外环输出的电流指令进行电流控制,实现单位功率因素运行。
转子侧变流器同样为双闭环控制,外环为功率环,根据有功功率、无功功率的给定,经过
调节器结合当前风速和对应的叶尖速比得出给定的转速;内环为转自电流控制环,电流经调节
器后输出电压控制量,再经过空间电压矢量脉宽SVPWM调制后产生触发脉冲控制变流器。
含50页 2万字 涉及整个建模和仿真分析的报告
以下文字及示例代码仅供参考
文章目录
以下是一个基于 MATLAB/Simulink 的双馈风力发电机(DFIG)仿真模型的控制策略实现代码,涵盖 定子侧变流器 和 转子侧变流器 的双闭环控制逻辑。由于 Simulink 模型无法直接展示,我会提供详细的 MATLAB 脚本 + 控制逻辑说明 + 伪代码结构,帮助你构建完整的仿真系统。
📌 双馈异步风力发电机(DFIG)控制目标
- 定子侧变流器:
- 直流母线电压稳定(外环)
- 有功/无功解耦控制(内环)
- 转子侧变流器:
- 功率控制(外环)
- 电流控制(内环)
- SVPWM调制:用于生成PWM触发信号
- MPPT(最大功率点跟踪):根据风速调整参考转速
✅ 系统参数定义(Matlab脚本)
% 基础参数
f = 50; % 额定频率
w = 2*pi*f; % 角频率
Vdc_ref = 1100; % 直流母线电压参考值
P_ref = 1e6; % 有功功率参考
Q_ref = 0; % 无功功率参考
kp_v = 10; ki_v = 500; % 电压环PI参数
kp_i = 5; ki_i = 200; % 电流环PI参数
Ts = 1e-4; % 控制周期
🧠 定子侧变流器控制逻辑(网侧变流器 GSC)
外环:直流电压控制 → 得到有功电流指令 id_ref
% 电压环 PI 控制
error_v = Vdc_ref - Vdc_feedback;
integral_v = integral_v + error_v * Ts;
id_ref = kp_v * error_v + ki_v * integral_v;
% 限幅处理
id_ref = max(min(id_ref, Imax), -Imax);
iq_ref = Q_ref; % 无功电流设为零,单位功率因数
内环:电流环控制(d/q轴)
% d轴电流误差
error_id = id_ref - id_feedback;
integral_id = integral_id + error_id * Ts;
vd = kp_i * error_id + ki_i * integral_id;
% q轴电流误差
error_iq = iq_ref - iq_feedback;
integral_iq = integral_iq + error_iq * Ts;
vq = kp_i * error_iq + ki_i * integral_iq;
% 电压解耦项(可选)
vd = vd + w*Ld*iq_feedback;
vq = vq - w*Lq*id_feedback;
🧠 转子侧变流器控制逻辑(机侧变流器 RSC)
外环:功率环 → 给定转速参考(MPPT)
% 根据当前风速和叶尖速比计算最优转速
lambda_opt = 8.1; % 最优叶尖速比
omega_r_opt = lambda_opt * v_wind / Rotor_radius;
% 功率环PI控制
error_P = P_ref - P_feedback;
integral_P = integral_P + error_P * Ts;
omega_r_ref = kp_P * error_P + ki_P * integral_P;
内环:电流环控制(d/q轴)
% d轴电流误差
error_idr = idr_ref - idr_feedback;
integral_idr = integral_idr + error_idr * Ts;
vdr = kp_i * error_idr + ki_i * integral_idr;
% q轴电流误差
error_iqr = iqr_ref - iqr_feedback;
integral_iqr = integral_iqr + error_iqr * Ts;
vqr = kp_i * error_iqr + ki_i * integral_iqr;
% 解耦项
vdr = vdr + w_sig*Ldr*iqr_feedback;
vqr = vqr - w_sig*Lqr*idr_feedback;
🧮 SVPWM调制函数(伪代码)
function [S1, S2, S3] = svpwm(Va, Vb, Vc, Vdc)
% 计算扇区、作用时间等
% 输出开关状态 S1, S2, S3
end
🌀 MPPT算法(伪代码)
function omega_r_ref = mppt(v_wind)
if v_wind < 4
omega_r_ref = 0;
elseif v_wind > 12
omega_r_ref = omega_r_max;
else
% 查表或使用叶尖速比法
lambda_opt = 8.1;
omega_r_ref = lambda_opt * v_wind / Rotor_radius;
end
end
📦 Simulink模型建议模块组成
模块 | 说明 |
---|---|
DFIG Model | 双馈电机模型 |
GSC Controller | 定子侧变流器控制(电压环+电流环) |
RSC Controller | 转子侧变流器控制(功率环+电流环) |
SVPWM Generator | PWM波形发生器 |
MPPT Block | 最大功率追踪模块 |
Wind Speed Input | 输入风速信号 |
Scope | 显示变量如 P, Q, Id, Iq, Vdc |
🧪 示例Simulink结构图
[Wind Speed] --> [MPPT] --> [Speed Ref]
↓
[RSC Controller] --> [Rotor Side Converter] --> [DFIG]
↑
[Power Feedback]
[Grid Voltage] --> [GSC Controller] --> [Stator Side Converter] --> [DC Link Cap]
↑
[Voltage Feedback]