双馈异步风力发电机模型在Matlab Simulink中的仿真探索
双馈风机 双馈异步风力发电机模型 matlab simulink 仿真 宝贝自动 若自动失败请联系客服,联系当晚12点前手动。 (1)该模型采用 matlab/simulink 2016b 版本搭建,使用matlab 2016b及以上版本打开最佳。 (2)该模型已经代为转换到各个常用版本。 【算法介绍】 定子侧变流器控制策略——定子电压定向矢量控制: (1)定子侧变流器采用双闭环控制,电压外环控制直流母线电压; (2)直流电压给定值与反馈值的偏差经过调节器,其结果决定有功功率(也可以理解为电流)大小,符号决定有功功率的方向。 (3)功率的大小反应在电流上,所以电流内环按照电压外环输出的功率(电流)指令进行电流控制,实现单位功率因素运行。 转子侧变流器控制策略——磁场定向矢量控制 (1)转子侧变流器采用双闭环控制; (2)外环为功率环,根据有功功率、无功功率的给定,经过调节器结合当前风速和对应的叶尖速比得出给定的转速; (3)内环为转自电流控制环,电流经调节器后输出电压控制量(调制波),再经过空间矢量脉宽调制SVPWM调制后产生触发脉冲控制变流器。

最近在研究风力发电相关技术,双馈异步风力发电机凭借其独特优势在风电领域占据重要地位。今天就来聊聊用Matlab Simulink搭建双馈风机模型以及相关的仿真实现。
模型版本与兼容性
本次搭建的双馈异步风力发电机模型是基于Matlab/Simulink 2016b版本完成的。如果大家想打开这个模型进行研究,使用2016b及以上版本是最佳选择。不过值得一提的是,开发者已经贴心地将该模型转换到了各个常用版本,这就大大方便了不同版本Matlab用户的使用。
控制策略解析与代码呈现
定子侧变流器控制策略 - 定子电压定向矢量控制
定子侧变流器采用双闭环控制方式,这里面电压外环负责控制直流母线电压。想象一下,电压外环就像是一个“指挥官”,它盯着直流母线电压这个关键指标。
% 简单示意电压外环控制相关代码
% 假设获取到直流母线电压反馈值
v_dc_feedback = get_v_dc_feedback();
% 设定直流电压给定值
v_dc_setpoint = 100; % 假设设定值为100
error = v_dc_setpoint - v_dc_feedback;
% 经过调节器(这里简单假设为比例调节器)
kp = 0.5;
output = kp * error;
% 这个输出结果将决定有功功率大小,其符号决定有功功率方向
这段简单代码模拟了电压外环的基本运作,通过计算给定值与反馈值的偏差,再经过调节器得出一个输出量,这个输出量就决定了有功功率的一些关键参数。

双馈风机 双馈异步风力发电机模型 matlab simulink 仿真 宝贝自动 若自动失败请联系客服,联系当晚12点前手动。 (1)该模型采用 matlab/simulink 2016b 版本搭建,使用matlab 2016b及以上版本打开最佳。 (2)该模型已经代为转换到各个常用版本。 【算法介绍】 定子侧变流器控制策略——定子电压定向矢量控制: (1)定子侧变流器采用双闭环控制,电压外环控制直流母线电压; (2)直流电压给定值与反馈值的偏差经过调节器,其结果决定有功功率(也可以理解为电流)大小,符号决定有功功率的方向。 (3)功率的大小反应在电流上,所以电流内环按照电压外环输出的功率(电流)指令进行电流控制,实现单位功率因素运行。 转子侧变流器控制策略——磁场定向矢量控制 (1)转子侧变流器采用双闭环控制; (2)外环为功率环,根据有功功率、无功功率的给定,经过调节器结合当前风速和对应的叶尖速比得出给定的转速; (3)内环为转自电流控制环,电流经调节器后输出电压控制量(调制波),再经过空间矢量脉宽调制SVPWM调制后产生触发脉冲控制变流器。

接着,功率的大小最终要反应在电流上,所以电流内环就得按照电压外环输出的功率(电流)指令来进行电流控制,目的是实现单位功率因素运行。这就好比电压外环给出了目标,电流内环就得努力去达成这个目标。
% 假设获取到电压外环输出的电流指令
i_ref = get_i_ref_from_voltage_loop();
% 获取实际电流反馈值
i_feedback = get_i_feedback();
error_i = i_ref - i_feedback;
% 电流内环调节器(假设也是比例调节器)
kp_i = 0.3;
output_i = kp_i * error_i;
% 这个output_i用于进一步控制电流,以实现单位功率因素运行
转子侧变流器控制策略 - 磁场定向矢量控制
转子侧变流器同样采用双闭环控制。外环是功率环,它要根据有功功率、无功功率的给定,结合当前风速和对应的叶尖速比,经过调节器得出给定的转速。这就像是给电机设定一个“目标转速”,让它朝着这个方向运转。
% 假设获取到有功功率给定值
p_ref = get_p_ref();
% 获取无功功率给定值
q_ref = get_q_ref();
% 获取当前风速
wind_speed = get_wind_speed();
% 获取对应的叶尖速比
tsr = get_tsr();
% 这里简单假设功率环调节器(可能是更复杂的算法,此处简化示意)
function [speed_ref] = power_loop_regulator(p_ref, q_ref, wind_speed, tsr)
% 一些计算过程,这里省略具体细节
speed_ref = p_ref * q_ref * wind_speed * tsr;
return;
end
speed_ref = power_loop_regulator(p_ref, q_ref, wind_speed, tsr);
内环为转子电流控制环,电流经过调节器后输出电压控制量(也就是调制波),这个调制波再经过空间矢量脉宽调制SVPWM调制后产生触发脉冲,从而控制变流器。
% 假设获取到转子电流反馈值
i_r_feedback = get_i_r_feedback();
% 获取功率环输出的转速给定值
speed_ref = get_speed_ref_from_power_loop();
% 转子电流内环调节器(假设为比例积分调节器)
kp_ir = 0.2;
ki_ir = 0.1;
integral = 0;
dt = 0.001; % 假设时间步长
error_ir = speed_ref - i_r_feedback;
integral = integral + error_ir * dt;
output_ir = kp_ir * error_ir + ki_ir * integral;
% 输出的output_ir就是电压控制量(调制波),后续会经过SVPWM调制
通过上述对双馈异步风力发电机模型在Matlab Simulink中的搭建以及控制策略的代码分析,希望能帮助大家对这个模型有更深入的理解。如果在使用过程中自动出现问题,记得联系客服,并且要在当晚12点前手动处理哦。后续我还会继续分享更多关于这个模型优化以及实际应用的相关内容,感兴趣的朋友可以持续关注。




AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)