✅博主简介:本人擅长数据处理、建模仿真、程序设计、论文写作与指导,项目与课题经验交流。项目合作可私信或扫描文章底部二维码。
一、AA-CAES 系统模型建立与验证
以某地10MW级先进绝热压缩空气储能发电系统(AA-CAES)为研究对象,我们在APROS仿真平台上构建了AA-CAES系统模型,包括压缩空气储能系统、配电网模型、甩负荷控制回路和调频辅助服务控制回路。该系统模型的主要目标是对AA-CAES系统在不同工况下的运行特性进行精确仿真,并验证其对电网调节的辅助功能。
- 压缩空气储能系统模型:包括压缩机、储气罐、换热器、膨胀机和发电机等核心部件。模型的建立需要精确模拟各个部件的动态特性,如压缩和膨胀过程中的热力学变化、能量转换效率等。
- 配电网模型:模拟与AA-CAES系统相连接的电网,包括负载变化和电力传输过程中的损耗。配电网模型需要考虑各种运行工况,如负载波动、甩负荷事件等对电网稳定性的影响。
- 控制回路:为了实现系统在不同工况下的稳定运行,建立了甩负荷和调频辅助服务的控制回路。甩负荷控制用于在负荷突然减少时,快速调节系统输出,避免过度能量释放;调频辅助服务控制则用于保持电网频率的稳定。
经过验证,所建模型在仿真精度上满足要求,各个控制回路功能完善,能够有效模拟AA-CAES系统在不同运行工况下的行为,为后续的仿真测试提供了可靠的基础。
二、AA-CAES 系统在甩负荷后的运行分析
甩负荷是指电网负荷突然降低或切断的现象,AA-CAES系统在甩负荷后需要迅速调整以保持稳定。我们分析了AA-CAES系统在甩负荷后的运行方式以及影响因素,重点设计了紧急排气系统来调节发电机转速和发电功率。
1. 紧急排气系统控制策略
紧急排气系统是AA-CAES在甩负荷事件中用于快速调节的关键部件。当负荷突然降低时,系统内部的压缩空气释放需要进行紧急排气,以防止发电机转速过快上升导致过载或损坏。针对紧急排气阀,设计了三种控制策略:
- 常规控制策略:直接根据发电机转速超限情况触发紧急排气阀的开度调整。这种策略简单有效,能够将发电机最高转速控制在安全范围内。然而,由于没有考虑发电功率的初始状态,控制效果在不同负荷工况下存在差异。
- 工况自适应控制策略:根据当前的发电功率和负荷情况,自适应调整紧急排气阀的开度。该策略在不同发电功率下能够降低发电机转速稳定所需的调节时间,并减少调节过程中的功率波动。然而,这种策略没有考虑其他部件(如压缩机和换热器)对整体稳定性的影响。
- BP神经网络预测策略:利用BP神经网络对系统工况进行实时预测,根据预测结果调整紧急排气阀的开度。该策略通过学习系统在不同工况下的响应特性,能够在实际运行时实现理想的发电机转速和发电功率响应。
2. 仿真分析
对以上三种控制策略进行了仿真分析:
- 常规控制策略:在不同的甩负荷前发电功率下,能够将发电机转速控制在安全范围内,但调节时间较长且功率波动较大。
- 工况自适应控制策略:在甩负荷后的不同发电功率情况下,能够有效缩短转速稳定时间,减小功率波动。但在一些复杂工况下(如多部件耦合影响),该策略仍存在不足。
- BP神经网络预测策略:通过训练神经网络模型,使其能够准确预测系统在甩负荷后的行为。在仿真中,发电机转速和发电功率能够快速达到理想的稳定状态,实现了最佳的控制效果。
三、电力系统调频辅助服务
在电力系统中,频率稳定是衡量电力质量和系统稳定性的重要指标。AA-CAES系统作为一种灵活的电源,可以参与电力系统的调频辅助服务。
1. 调频原理与AGC
调频分为一次调频和二次调频:
- 一次调频:由发电机组通过自身的调速器自动调节,响应电网频率偏差,保持短时间内的功率平衡。
- 二次调频:通过电力系统自动发电控制(AGC)实现,AGC根据电网的频率偏差和负荷变化,向发电机组发送调节指令,恢复系统频率到正常水平。
AGC的基本工作流程包括实时监测电网频率、计算频率偏差、确定调节目标、发送调节指令等。AGC的性能参数主要包括调节速率、调节精度和稳定时间等。
2. 调频辅助服务的控制策略
在APROS仿真平台中,对AA-CAES系统参与调频辅助服务的两种控制方法进行了仿真对比:
- 传统控制方法:按照固定的调频响应策略,在负荷变化时通过调节系统输出功率来响应电网的频率偏差。如果偏离常规负荷区间,机组由于调节速率不满足要求,会产生考核电量,导致经济损失。
- 多级分段控制方法:引入多级控制策略,根据不同负荷区间和调频需求进行分段控制,提高系统在宽负荷区间的运行适应能力。仿真结果表明,采用多级分段方法可以有效避免由于调节速率不满足要求而产生的考核电量,提高了系统的经济效益。
仿真结果显示,AA-CAES系统在采用多级分段控制方法后,能够在更宽的负荷范围内快速响应电网的调频需求,降低了考核电量,实现了更好的调频效果。
import numpy as np
from scipy.integrate import odeint
import matplotlib.pyplot as plt
from sklearn.neural_network import MLPRegressor
# 紧急排气系统控制策略
def emergency_valve_control(P_gen, strategy):
if strategy == 'conventional':
return max(0, min(1, (P_gen - P_min) / (P_max - P_min)))
elif strategy == 'adaptive':
return 0.8 if P_gen > 6 else 0.4
elif strategy == 'bp_neural_network':
model = MLPRegressor(hidden_layer_sizes=(5,), max_iter=1000)
X_train = np.array([[2], [4], [6], [8], [10]])
y_train = np.array([0.2, 0.4, 0.6, 0.8, 1.0])
model.fit(X_train, y_train)
return model.predict([[P_gen]])[0]
else:
return 0
# 系统动态模型
def system_dynamics(y, t, strategy):
P_gen = y[0]
valve_position = emergency_valve_control(P_gen, strategy)
dPdt = -R * (P_gen - valve_position * P_max)
return [dPdt]
# 仿真
time = np.linspace(0, 10, 100)
initial_conditions = [P_gen]
strategies = ['conventional', 'adaptive', 'bp_neural_network']
results = {}
for strategy in strategies:
results[strategy] = odeint(system_dynamics, initial_conditions, time, args=(strategy,))
# 绘制结果
plt.figure(figsize=(10, 6))
for strategy in strategies:
plt.plot(time, results[strategy], label=strategy)
plt.xlabel('Time (s)')
plt.ylabel('Generated Power (MW)')
plt.title('AA-CAES System Power Response')
plt.legend()
plt.grid()
plt.show()