1. 风电系统频率调节控制策略概述
在电力系统运行中,频率稳定性是衡量电能质量的重要指标。传统电力系统主要依靠同步发电机的惯性响应和调速系统来维持频率稳定。但随着风电等可再生能源在电网中的渗透率不断提高,系统面临新的挑战:
- 风电机组通过变流器并网,与传统同步发电机不同,其转子转速与电网频率解耦
- 大规模风电并网替代了部分同步机组,导致系统整体惯量降低
- 现有风电机组控制策略通常采用最大功率点跟踪(MPPT)模式,不参与系统频率调节
针对这些问题,本文研究的核心思路是:挖掘风电机组潜在的调频能力裕度,通过合理的控制策略设计,使其能够像传统同步发电机一样参与系统频率调节。具体而言,主要从两个层面展开:
- 单台风电机组(WTG)层面:考虑转子动能储备和变流器容量限制,优化频率调节参数
- 多风电场集群层面:根据各风电场的调频能力裕度,协调分配调频功率
2. 风电机组频率调节原理与建模
2.1 虚拟同步发电机(VSG)控制原理
虚拟同步发电机控制是让风电机组模拟同步发电机运行特性的关键技术。其核心思想是通过控制算法,使变流器表现出类似同步发电机的惯性和阻尼特性。主要实现以下功能:
- 惯性响应:通过虚拟惯性控制环节,使风电机组对频率变化率(ROCOF)做出响应
- 一次调频:通过下垂控制环节,使风电机组根据频率偏差提供有功功率支撑
VSG控制的数学模型可以表示为:
code复制P_ref = P_mppt - K_d*(f - f_n) - K_i*df/dt
其中:
- P_ref:风电机组有功功率参考值
- P_mppt:最大功率点跟踪功率
- K_d:下垂系数(模拟调速器特性)
- K_i:虚拟惯性系数
- f:系统实际频率
- f_n:额定频率
2.2 风电机组调频能力约束
风电机组参与频率调节时,需要考虑以下物理限制:
- 转子动能约束:释放转子动能会导致转速下降,需确保不低于最低运行转速
- 变流器容量约束:调频功率不能超过变流器的过载能力
- 桨距角限制:对于变桨距风机,还需考虑桨距角调节速率限制
这些约束条件需要在控制参数优化时予以考虑,避免对风电机组本身造成损害。
3. Python简化模型实现
3.1 仿真环境搭建
我们使用Python构建一个简化电力系统模型,包含以下组件:
- 同步发电机(SG):代表传统发电机组
- 风电机组(WTG):采用VSG控制策略
- 负荷模型:模拟系统负荷变化
主要使用的Python库:
python复制import numpy as np
import matplotlib.pyplot as plt
from scipy.integrate import odeint
3.2 系统动态方程
建立系统频率动态方程:
python复制def system_dynamics(y, t, params):
f, delta_omega = y # 系统频率偏差,风电机组转速偏差
P_L = params['P_L'] # 负荷扰动
H_sg = params['H_sg'] # 同步发电机惯性常数
D_sg = params['D_sg'] # 同步发电机阻尼系数
H_wtg = params['H_wtg'] # 风电机组虚拟惯性常数
D_wtg = params['D_wtg'] # 风电机组虚拟阻尼系数
# 频率动态方程
dfdt = (P_L - D_sg*f - D_wtg*f - delta_omega*D_wtg) / (2*H_sg + 2*H_wtg)
# 风电机组转速动态方程
domega_dt = (D_wtg*f - delta_omega) / (2*H_wtg)
return [dfdt, domega_dt]
3.3 仿真参数设置
python复制# 系统参数
params = {
'H_sg': 5.0, # 同步发电机惯性常数(s)
'D_sg': 1.0, # 同步发电机阻尼系数(pu/Hz)
'H_wtg': 2.0, # 风电机组虚拟惯性常数(s)
'D_wtg': 0.5, # 风电机组虚拟阻尼系数(初始值)
'P_L': 0.1 # 负荷阶跃扰动(pu)
}
# 仿真时间设置
t = np.linspace(0, 20, 1000) # 0-20秒,1000个点
3.4 不同阻尼系数下的频率响应比较
我们通过改变D_wtg参数,观察系统频率响应特性:
python复制# 测试不同虚拟阻尼系数
D_values = [0.2, 0.5, 1.0, 2.0]
results = {}
for D in D_values:
params['D_wtg'] = D
sol = odeint(system_dynamics, [0, 0], t, args=(params,))
results[D] = sol[:, 0] # 存储频率偏差结果
3.5 结果可视化
python复制plt.figure(figsize=(10, 6))
for D, f in results.items():
plt.plot(t, f, label=f'D_wtg={D}')
plt.xlabel('Time (s)')
plt.ylabel('Frequency deviation (Hz)')
plt.title('System frequency response under different virtual damping coefficients')
plt.grid()
plt.legend()
plt.show()
4. 关键结果分析与讨论
4.1 虚拟阻尼系数的影响
通过仿真可以得到以下观察结果:
-
阻尼系数较小时(D_wtg=0.2):
- 频率偏差幅值较大
- 振荡衰减较慢
- 系统稳定性较差
-
阻尼系数适中时(D_wtg=0.5-1.0):
- 频率偏差幅值适中
- 振荡快速衰减
- 系统稳定性良好
-
阻尼系数过大时(D_wtg=2.0):
- 虽然频率偏差幅值最小
- 但风电机组需要提供大量调频功率
- 可能导致转子转速下降过快
4.2 调频参数优化建议
基于仿真分析,提出以下调频参数优化原则:
-
虚拟阻尼系数选择应权衡:
- 频率稳定性要求
- 风电机组调频能力限制
- 转子转速安全范围
-
实际工程中建议:
- 初始值设为0.5-1.0pu/Hz
- 根据具体风况和系统需求动态调整
- 结合转子转速反馈进行自适应修正
5. 多风电场集群协调控制
5.1 调频裕度因子定义
对于包含多个风电场的系统,需要协调各场的调频功率分配。定义调频裕度因子:
code复制α_i = (ω_i - ω_min) / (ω_max - ω_min) * (P_max - P_MPPT) / P_rated
其中:
- ω_i:第i个风电场平均转速
- ω_min/ω_max:允许的最小/最大转速
- P_max:变流器最大过载能力
- P_MPPT:当前MPPT功率
- P_rated:风电场额定功率
5.2 功率分配策略
基于调频裕度因子的功率分配算法:
- 计算各风电场的调频裕度因子α_i
- 归一化处理:β_i = α_i / sum(α_i)
- 根据系统总调频需求ΔP,分配各场调频功率:
ΔP_i = β_i * ΔP
这种分配方式确保:
- 调频能力强的风电场承担更多责任
- 避免某些风电场过度释放动能
- 整体调频效果最优
6. 实际工程应用建议
6.1 实施注意事项
-
通信延迟问题:
- 集群控制需要各风电场间快速通信
- 建议采用分布式控制架构减少通信依赖
-
参数整定建议:
- 先进行离线仿真确定参数范围
- 再通过现场试验微调
-
保护配置调整:
- 需相应调整过频/欠频保护定值
- 避免调频过程中误动作
6.2 未来改进方向
-
考虑风速预测信息:
- 结合短期风速预测
- 动态调整调频能力预留
-
混合储能配合:
- 与电池储能系统协同
- 弥补转子动能调节的不足
-
市场机制衔接:
- 设计合理的调频服务补偿机制
- 激励风电场参与频率调节