双馈风力发电机模型研究与仿真(DFIG)控制策略在Simulink中的实现
双馈风力发电机模型研究与仿真(DFIG)控制策略Simulink,给定风速变化,电流电压等波形好用,软件版本(Matlab2016)
在风力发电领域,双馈风力发电机(DFIG)凭借其独特的优势,如变速恒频运行、低电压穿越能力等,成为了主流的风力发电机型之一。今天咱们就来聊聊DFIG在Simulink中的模型研究与仿真,以及给定风速变化下其电流电压波形的表现,使用的软件版本是Matlab2016。
双馈风力发电机(DFIG)原理简述
DFIG的定子绕组直接连接到电网,转子绕组通过双向背靠背变流器与电网相连。这种结构使得DFIG可以在不同的风速下运行,通过控制转子电流的频率、幅值和相位,实现对发电机输出功率和转速的灵活控制。简单来说,就是可以根据风速的变化调整发电机的运行状态,以达到最大风能捕获和稳定的电能输出。
Simulink中的DFIG模型搭建
在Matlab2016的Simulink环境中搭建DFIG模型。首先,我们需要几个关键模块:风轮机模型、传动系统模型、发电机模型以及变流器和控制系统模型。
风轮机模型
风轮机捕获风能并将其转换为机械能。其输出功率 $P_w$ 可以用下面的公式表示:
\[ Pw = \frac{1}{2} \rho A v^3 Cp(\lambda, \beta) \]

其中,$\rho$ 是空气密度,$A$ 是风轮扫掠面积,$v$ 是风速,$Cp$ 是风能利用系数,它是叶尖速比 $\lambda$ 和桨距角 $\beta$ 的函数。在Simulink中,可以使用Lookup Table等模块来实现 $Cp$ 的计算。
传动系统模型
传动系统将风轮机的机械能传递给发电机,通常用一个简单的二阶扭转模型来表示。其传递函数可以写成:
\[ \frac{\omegag(s)}{\omegaw(s)} = \frac{Kt}{Jg s^2 + Dg s + Kt} \]
其中,$\omegag$ 和 $\omegaw$ 分别是发电机和风力机的转速,$Kt$ 是扭转刚度,$Jg$ 是发电机转动惯量,$D_g$ 是阻尼系数。在Simulink中,可以用Transfer Function模块来搭建这个模型。
发电机模型
DFIG发电机模型相对复杂一些。在dq坐标系下,其电压方程为:

\[ \begin{cases}
双馈风力发电机模型研究与仿真(DFIG)控制策略Simulink,给定风速变化,电流电压等波形好用,软件版本(Matlab2016)
v{ds} = Rs i{ds} + p \psi{ds} - \omegas \psi{qs} \\

v{qs} = Rs i{qs} + p \psi{qs} + \omegas \psi{ds} \\
v{dr} = Rr i{dr} + p \psi{dr} - (\omegas - \omegar) \psi_{qr} \\
v{qr} = Rr i{qr} + p \psi{qr} + (\omegas - \omegar) \psi_{dr}

\end{cases} \]
这里,$v$ 是电压,$i$ 是电流,$\psi$ 是磁链,$R$ 是电阻,$p$ 是微分算子,$\omegas$ 是同步角速度,$\omegar$ 是转子角速度。Simulink中有专门的电机模块库,可以选择合适的模块来搭建DFIG发电机模型,比如在SimPowerSystems库中的“Doubly - Fed Induction Machine”模块。
变流器和控制系统模型
变流器负责控制转子电流,实现对DFIG的功率和转速控制。常见的控制策略有矢量控制,也就是将定子磁链定向,通过解耦控制分别调节有功功率和无功功率。以下是一段简单的基于矢量控制的转子电流控制代码示例(Matlab语言):
% 假设已经获取了定子磁链、转子电流等变量
% 定子磁链定向
theta = atan2(psi_q, psi_d);
% 计算有功和无功功率给定值
P_ref = some_function(); % 根据风速等条件计算有功功率给定
Q_ref = some_other_function(); % 无功功率给定
% 计算转子电流d轴和q轴给定值
i_rd_ref = P_ref / (3/2 * n_p * omega_s * abs(psi_s));
i_rq_ref = -Q_ref / (3/2 * n_p * omega_s * abs(psi_s));
% 电流PI控制器
kp_i = 0.5;
ki_i = 10;
i_rd_error = i_rd_ref - i_rd;
i_rq_error = i_rq_ref - i_rq;
i_rd_integral = i_rd_integral + i_rd_error * Ts;
i_rq_integral = i_rq_integral + i_rq_error * Ts;
v_rd = kp_i * i_rd_error + ki_i * i_rd_integral;
v_rq = kp_i * i_rq_error + ki_i * i_rq_integral;
% 坐标变换得到abc坐标系下的电压指令
[v_ra, v_rb, v_rc] = dq2abc(v_rd, v_rq, theta);
这段代码首先进行了定子磁链定向,得到定向角度 theta。然后根据给定的有功和无功功率计算出转子电流d轴和q轴的给定值。接着通过PI控制器计算出dq坐标系下的转子电压指令,最后通过坐标变换得到abc坐标系下的电压指令,用于控制变流器。
给定风速变化下的仿真
在搭建好整个模型后,我们可以设定风速变化来观察DFIG的电流电压波形。比如,设定一个风速从低到高再到低的变化曲线,模拟实际的风况。在Simulink中,可以使用Signal Generator模块来生成这样的风速信号。
仿真运行后,我们可以从示波器模块中观察到电流电压波形。正常情况下,随着风速的变化,发电机的转速会相应改变,通过变流器和控制系统的调节,定子和转子的电流电压波形会保持在合理的范围内,以实现稳定的功率输出。如果风速变化较为剧烈,我们可能会看到电流电压波形有一定的波动,但优秀的控制策略会使这些波动尽快平息,保持系统的稳定运行。
总结
通过在Matlab2016的Simulink中对双馈风力发电机模型的研究与仿真,我们能够深入理解DFIG的运行原理和控制策略。给定风速变化下的电流电压波形分析,也为实际风力发电系统的设计和优化提供了有力的参考。当然,实际应用中还需要考虑更多复杂因素,如电网故障、环境干扰等,但这个基础的仿真模型已经为我们打开了DFIG研究的大门。希望本文对大家在DFIG相关研究和实践中有所帮助。

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



所有评论(0)