基于Simulink的9MW双馈风机变速变桨建模与并网仿真

发布时间:2026/9/16 17:59:16
基于Simulink的9MW双馈风机变速变桨建模与并网仿真 简介面向风电系统控制与并网仿真研究的工程师与科研人员一份基于变速变桨控制的9MW双馈感应风机并网MATLAB仿真模型完整覆盖DFIG变速运行与桨距角调节的核心控制策略适用于新能源发电并网、电机控制等场景的建模与性能分析。压缩包共4个文件其中slx文件为Simulink动态仿真模型m文件用于设置初始参数与物理模型两个txt文件分别提供参考文献指引和仿真运行顺序说明整体仅98KB轻量易用。已有353人学习下载。通过该模型可掌握变速变桨控制下DFIG的转速调节与桨距角协调逻辑理解转子侧电力电子变换器的作用及并网过程中电压、频率稳定与无功补偿的处理方法并可直接在MATLAB中按正确顺序运行数据脚本与仿真模型观察不同风速下的系统响应为大型风电机组控制策略优化提供参考。1. 9MW双馈风机为什么还要用变速变桨从并网要求说起在陆上风电逼近10MW、海上风电直奔15MW的当下9MW双馈感应风机听起来像是一个“过时”的选择——毕竟双馈机组受限于转子侧变流器容量通常被认为适合3MW以下。但工程上真正决定选型的不是单机容量而是电网接入点和度电成本。9MW DFIG最大的价值在于转子变流器只需处理转差功率约±30%额定功率变流器成本、损耗和体积远低于同容量全功率机组同时仍能支撑电网电压和频率。而要让这台机组并网核心就是“变速变桨控制”变速让叶轮在低风速下追踪最优叶尖速比变桨在高风速下限制气动功率两者协同决定有功输出并网控制则决定无功和电压行为。对仿真而言难点不在于搭建一个能转的风机模型而在于把空气动力学、传动链、变流器和电网四个时间尺度差异巨大的子系统放进同一个MATLAB/Simulink模型里还能稳定跑完暂态。本文按“模型理论 → 控制实现 → 参数整定 → 结果验证”的顺序给出一个可供复现的9MW DFIG并网仿真建模路径。2. 先拆解9MW DFIG的数学模型从风轮到PCC的每一环都要可仿真2.1 气动模型不是简单地用Cp曲线查表双馈风机的气动转矩来自叶轮捕获的风功率[ P_w \frac{1}{2}\rho\pi R^2 V^3 C_p(\lambda,\beta) ]其中 (\lambda \omega_r R / V) 是叶尖速比(\beta) 是桨距角。9MW机组的叶轮直径通常在160m以上转子惯性时间常数很大如果直接把这个方程写成Simulink函数块仿真步长会被轴系扭振频率限制在微秒级效率极低。常见做法是把Cp曲面做成二维查表并用两质量块模型代替柔性多体模型只保留低速轴和高速轴的扭振模态。这个近似对并网研究完全够用但不能用于载荷分析。2.2 传动链和发电机模型哪种细节等级够用传动链采用两质量块[ 2H_t \frac{d\omega_t}{dt} T_a - T_{ts}, \quad 2H_g \frac{d\omega_g}{dt} T_{ts} - T_e ](T_a) 是气动转矩(T_e) 是电磁转矩(T_{ts}) 是轴系扭转力矩通常带一个阻尼项。双馈感应电机的模型可以选择第五阶或第三阶。建议在并网模型中用第五阶因为转子侧变流器控制需要磁链或电流的暂态信息降阶模型在中压电网电压跌落时误差较大。Matlab/Simulink的Specialized Power Systems库里有现成的DFIG模型但如果要研究变桨与变流协调最好自己搭基于标幺值的状态方程这样能完全控制变量定义。2.3 转子侧和网侧变流器的控制目标划分变速变桨控制实际上是两个层级机械级桨距角和电气级转子电流。转子侧变流器RSC控制电磁转矩和转子励磁从而间接控制定子有功和无功网侧变流器GSC控制直流母线电压和网侧无功。9MW时需要特别注意转子电流限幅由于转子变流器容量约为 ±30% 额定功率在深度功率调节时很容易达到电流极限因此变桨控制必须和转子电流限幅配合否则会出现转速失控。2.4 关键参数表和初始化脚本构建仿真前先把参数集中在一个MATLAB脚本里便于批量实验。下面是一组参考值实际项目中以厂商数据为准参数数值说明额定功率9 MW定子输出额定电压3.3 kV / 50 Hz定子线电压直流母线电压1200 V转子侧变流器额定风速11.5 m/s切换区起点切入/切出风速3 m/s / 25 m/s运行范围叶轮直径164 m扫风面积约 21100 m²额定转速9.5 rpm叶轮侧齿轮箱变比1:98高速轴转速转子电阻/电抗0.005 / 0.12 pu标幺值定子电阻/漏抗0.007 / 0.17 pu标幺值励磁电抗4.5 pu空载励磁轴系刚度0.75 pu/rad两质量块模型惯性常数 H_t / H_g4.2 s / 0.6 s叶轮/发电机这些参数可以直接写入一个dfig9mw_params.m文件之后所有函数块通过base workspace读取变量。不要在模型里硬编码常数否则做参数扫描时会非常痛苦。3. 在Simulink里搭建变速变桨控制的最小闭环从风速到并网点3.1 顶层模型结构与信号流一个最简可并网的9MW DFIG模型包含五个子系统风速输入、气动与传动链、DFIG电磁模型、转子侧变流器RSC、网侧变流器GSC与直流母线。风电并网不是接一个无穷大电源而是通过一台升压变压器和等效电网阻抗接入Three-Phase Programmable Voltage Source这样才能看得见并网点的电压和功率交互。信号流方向为风速 - (Cp表 桨距角) - 气动转矩 - 两质量块 - 转子转速 转子转速 - 最大功率跟踪MPPT - 有功参考P* - RSC电流指令 转速偏差 - 变桨控制器 - 桨距角指令beta*3.2 变桨控制器的核心代码PI 抗积分饱和变桨执行器通常是一个一阶惯性环节时间常数35秒。控制目标是维持转速在额定值附近而不是直接控制功率。因为9MW机组的惯性较大如果直接对功率进行PI控制在高风速下功率波动会很大。下面的代码定义了一个带抗积分饱和的PI控制器可直接装入Simulink的MATLAB Function块中。function beta_ref pitch_controller(omega, omega_ref, params) % 变速变桨中的变桨PI控制器带抗积分饱和 % omega: 实测发电机转速折算到叶轮侧 [pu] % omega_ref: 额定转速 [pu] 通常为1 % params: 包含Kp_pitch, Ki_pitch, beta_max, rate_limit persistent integ; if isempty(integ) integ 0; end err omega_ref - omega; % 计算比例项 prop params.Kp_pitch * err; % 计算积分项加入限幅反馈反计算法抗积分饱和 integ_new integ params.Ki_pitch * err * params.dt; % 积分限幅略大于输出限幅 integ_max params.beta_max * 1.05; integ_new max(-integ_max, min(integ_max, integ_new)); % 预输出 u_pre prop integ_new; % 输出限幅 if abs(u_pre) params.beta_max u_out sign(u_pre) * params.beta_max; else u_out u_pre; end % 反计算法如果输出受限修正积分项 if u_pre ~ u_out integ_new integ_new params.Kc * (u_out - u_pre); end % 变桨速率限制限制在/-10 deg/s if isfield(params, prev_beta) max_step params.rate_limit * params.dt; u_out max(params.prev_beta - max_step, min(params.prev_beta max_step, u_out)); end params.prev_beta u_out; integ integ_new; beta_ref u_out; end这段代码的逻辑说明比例项响应快积分项消除稳态转速偏差但变桨机构有物理限幅和速率限制如果直接积分在PI输出超过限幅时会持续累加导致超调所以采用反计算法。Kc通常取Ki_pitch / Kp_pitch量级rate_limit设成 810 deg/s这对应液压变桨执行器的典型响应速度。注意这里params.dt必须是模型的固定仿真步长不能使用变步长否则控制器行为无法复现。3.3 最大功率跟踪与转矩指令映射在额定风速以下变桨角保持0度由变速控制追踪最大功率。9MW机组的MPPT通常查转速-转矩表function Te_ref mppt_table(omega_r, params) % omega_r: 叶轮转速 [rad/s] 或 [rpm] % 通过查表得到最优转矩指令使叶尖速比保持最优值 lambda_opt lambda_opt params.lambda_opt; % 通常 8~9 R params.R; % 叶轮半径 [m] rho params.rho; % 空气密度 [kg/m^3] Cp_max params.Cp_max; % 最大Cp % 由转速和最优叶尖速比反推风速 V omega_r * R / lambda_opt; % 气动转矩 1/2*rho*pi*R^3*V^2*Cp/lambda Ta 0.5 * rho * pi * R^3 * V^2 * Cp_max / lambda_opt; % 按齿轮箱变比和效率折算到发电机侧 Te_ref Ta / params.gearbox_ratio / params.drive_efficiency; end这里的关键是不要用功率公式反推风速因为功率公式对风速求导会放大噪声。直接由转速推算风速再算转矩本质上是一个静前馈表。实际工程中MPPT表是用Bladed或FAST离线算好后写入PLC的在Simulink仿真中直接查表即可。3.4 并网侧转子侧电流环和网侧电压环转子侧电流环采用典型的双闭环——外环控制转矩和无功内环控制转子d/q轴电流。以下关键参数需要写在仿真脚本中控制环比例系数积分系数备注转速环1240带宽约1 rad/s转矩环0.88转化为转子q轴电流控制无功环1.520定子端电压控制转子电流内环0.530带宽100 rad/s直流电压外环2.015网侧变流器网侧电流内环0.725LCL滤波器设计这些数值需要在仿真中逐步调整但初值很重要。电流内环的PI增益应按发电机漏感和电阻计算而不是随意拍脑袋内环带宽设为开关频率的1/10左右开关频率通常取2kHz4kHz。4. 变速与变桨的协调参数整定方法和3个容易踩的坑4.1 变速变桨的切换逻辑在额定风速以下变桨控制器处于“停止”状态桨距角固定在0°附近的最优角在额定风速以上转速已达到额定值MPPT不再起作用转速闭环通过变桨维持额定转速。切换逻辑不能只用一个比较器因为风速在额定值附近抖动会导致变桨频繁动作。常见做法是加入滞回。滞回宽度通常设为额定风速的±2%±3%例如额定风速11.5m/s切入变桨模式为11.8m/s退出为11.2m/s。这样能防止桨距角在0°附近反复摆动。4.2 参数整定顺序先电流环再转速环最后变桨环不少初学者上来就调变桨PI导致整个系统发散。正确的顺序是先整定转子电流内环让它能稳定跟踪电流指令再整定转矩外环使转速能跟得上MPPT曲线最后才整定变桨PI。电流内环整定时把变桨角固定为0°风速设为额定值以下只给阶跃无功指令观察q/d轴电流的跟踪速度和超调。待电流环无稳态误差后再逐步切到高风速。变桨PI整定时有个实用经验先用比例控制让转速静差在可接受范围内然后加很小的积分项积分时间常数取 1020 秒。变桨系统的响应比电流环慢两个数量级如果积分时间小于5秒桨距角会振荡。4.3 常见坑1传动链扭振被电流环激起来DFIG的轴系是柔性轴扭振频率通常在12Hz。转子侧电流环带宽若大于10Hz就可能激励出轴系扭振。在仿真里表现为转速和电磁转矩以1.5Hz左右等幅振荡桨距角也跟着抖。解决办法是转子电流环参考值中增加陷波滤波器中心频率设为轴系扭振频率品质因素取0.51。或者在电磁转矩指令后串联一个一阶低通截止频率设为3Hz。4.4 常见坑2变桨速率限制导致积分饱和上一条提到了变桨速率限制但实际模型中容易忽略的是执行器的“偏置”特性——变桨机构在失电时会回到顺桨位置90°但在正常运行范围内0°和负角度少数情况都是可能的。如果PI控制器输出范围为0~30°而速率限制是8°/s则在大风阵中变桨从0°到20°需要2.5秒。在这期间转速会继续上升积分项迅速累加导致超调。抗积分饱和的Kc系数选择不当会使恢复过程变慢甚至触发过速保护。建议在仿真中同时在Pitch指令和Pitch变化率上做限幅并用真实变桨执行器的时间常数3s作为惯性环节。4.5 常见坑3并网瞬间用理想电压源导致暂态失真很多教材里的DFIG并网模型直接接Three-Phase Voltage Source电压源内阻为0这会导致并网点电压在功率阶跃时几乎不变无法观测功率变化对并网点电压的影响。9MW机组接中压电网时短路比SCR通常在515之间。在仿真中应把电网等效为电压源串联阻抗并用R-L负荷代替无穷大母线。设置方法如下% 并网等值阻抗计算短路容量S_sc100MVA短路比SCR10 S_base 9e6; % 基准容量 SCR 10; L_base (3.3e3/sqrt(3))^2 / (S_base); % 欧姆 R_g L_base / SCR * 0.1; % R/X0.1 X_g L_base / SCR * 0.995; L_g X_g / 2 / pi / 50;这里的R_g和L_g就是电网等值电阻和电感。用这个内阻后你会发现并网点的电压随着有功功率呈现约2%3%的波动这更接近真实情况。同时若要做低电压穿越验证应该在这个等值阻抗后面接可编程电压源。4.6 参数表中不能缺的“标幺值基准”如果直接把参数表里的欧姆、亨利、牛米输入Simulink会很容易出现数值问题。必须先在初始化脚本中定义标幺值基准基准量公式9MW下的值功率基准P_base 9e6 VA9 MVA电压基准V_base 3.3kV/sqrt(3)1905 V阻抗基准Z_base V_base²/P_base0.403 Ω电流基准I_base P_base/(3*V_base)1574 A转矩基准T_base P_base/ω_m_base见下然后所有PI参数都用标幺值写Simulink中的信号也统一成pu。这样在改变额定容量时不需要重新计算控制器增益。5. 三组波形验证法FFT、功率阶跃和桨距角响应验证模型是否可信仿真模型跑完之后如果只看转速和功率曲线就下结论大概率会漏掉离散化误差和控制器振荡。我一般用三组测试来验证9MW DFIG模型是否可用每一组都对应真实的并网考核项目。第一组并网点电流FFT和THD。在额定风速、额定功率稳态工况下取定子A相电流和网侧电流各10个工频周期的数据用MATLAB的fft函数分析谐波。重点看50Hz附近有无间谐波特别是转子侧变流器开关频率的边带。代码十分简短fs 10000; % 采样率Simulink中设置 T 10/50; % 取10个周期 t 0:1/fs:T; ia logsout.get(Ia).Values.Data; % 假设记录定子电流 L length(ia); Y fft(ia - mean(ia)); P2 abs(Y/L); P1 P2(1:L/21); P1(2:end-1) 2*P1(2:end-1); f fs*(0:(L/2))/L; plot(f, 20*log10(P1)); xlim([0 2000]);若THD高于5%先检查电流内环PI是否产生振荡再检查LCL滤波器参数。对于9MW中压变流器LCL谐振频率应在800Hz到2000Hz之间低于开关频率的一半。第二组有功功率和桨距角阶跃响应。在风速14m/s的满发区间给桨距角参考值加一个2°的阶跃记录电磁功率和转速的响应曲线。变量定义的合理性通过闭环响应来判断功率最终恢复到9MW转速回到额定值桨距角平滑移动到新角度。如果功率出现过冲超过15%说明转速环和变桨环的积分项配合不当。测量调节时间以功率恢复到±2%为准通常应在3~5秒内。超过8秒说明变桨PI过慢低于1秒则可能激励轴系扭振。第三组电网电压跌落穿越。在并网点设置三相对称电压跌落至20%持续0.625秒31个周期。观察转子电流是否超过变流器限幅、直流母线电压是否在1.2倍额定值以内。这组测试最考验仿真模型的稳定性因为电压跌落会瞬间改变定子磁链产生较大的转子感应电动势若转子侧变流器控制带宽不够直流母线会过压。注意模型的转子侧Crowbar保护逻辑只有在电压跌落深度超过设定值时才触发仿真里要设置一个滞回比较器不能直接用if块否则会在边界处抖动。通过这三组测试后模型才能用于实际的电网接入仿真报告。本文还有配套的精品资源点击获取