考虑储能电池参与一次调频技术经济模型的容量配置方法(matlab代码)

目录

[1 主要内容](#1 主要内容)

储能参与调频原理

储能参与一次调频的充放电策略

[2 部分代码](#2 部分代码)

[3 程序结果](#3 程序结果)

[4 下载链接](#4 下载链接)


1 主要内容

该程序复现文献《考虑储能电池参与一次调频技术经济模型的容量配置方法》模型,以调频效果最优为目标,考虑储能参与一次调频的充放电策略,在电网频率偏差已知的情况下,通过引入储能设备调节频率偏差,从而优化得到最佳储能容量,该程序只考虑调频效果最优,并未考虑经济性,但是原理是互通的,只需修改目标函数即可;该程序采用粒子群编程,注意:不是simulink模型,相关储能参与调频的simulink模型也会陆续更新,大家敬请期待!该程序和原文献一致,通过soc最小值、soc最大值、购电、售电和储能出力最大值五个参数作为优化变量,采用粒子群进行求解,并设置购售电、储能出力、soc等约束,程序优化效果不错,值得参考学习!

储能参与调频原理

原理图如下图:

当负荷突然增加时,负荷频率特性曲线将由 L1( Δf) 移 至 L2 ( Δf) ,由 传 统 电 源 的 功 频 曲 线G( Δf) 可知其会自动增加出力,以阻止频率进一步下降,电网运行点将由稳定运行点 a 移至 b 点,对应的频率偏差从 0 下降至 Δf1 ( 其为负值) 。此时,利用储能电池模拟传统电源的下垂特性以实现参与一次调频,通过设置储能电池的虚拟单位调节功率 KE,对应储能电池的出力为如图 1 所示的 PE值。
简而言之,电网中的传统电源功率或负荷发生变化时,必然会引起电网频率的变化。当电网供电大于负荷需求时,电网频率会上升,此时应控制储能电池从电网吸收功率; 当电网供电小于负荷需求时,电网频率会下降,此时应控制储能电池释放功率至电网。

储能参与一次调频的充放电策略

上图是以调频效果最优为目标的储能参与调频流程图,和介绍一致,以soc最小值、soc最大值、购电、售电和储能出力最大值五个参数作为优化变量,以频率偏差最小为目标。具体调频策略如下:

2 部分代码

复制代码
%%  变量定义如下:
% 决策变量:% 较高, 较低, 购电,售电,最大值
% x=[soc_h, soc_l, P_b,P_s,P_m]; 
​
clc;
clear;
close all;
​
%% 算法参数
parameter;
​
nVar=5;              % Number of Decision Variables
VarMin=[ones(1,2)*soc_min, ones(1,1)*0, ...
                 ones(1,1)*0, ones(1,1)*0]; % Lower Bound of Variables
VarMax=[ones(1,2)*soc_max, ones(1,1)*P_max, ...
                 ones(1,1)*P_max, ones(1,1)*P_max]; % Upper Bound of Variables
MaxIt=30;      % Maximum Number of Iterations
nPop=10;        % Population Size (Swarm Size)
​
%% 计算
[ bestPosition, fitValue ] = ...
PSOFUN( @fun_objective,nVar,VarMin,VarMax,MaxIt,nPop );
x=bestPosition;
​
[fun,g,Pt,ft,Q_soc] = fun_jieguo(x);
disp('输出结果')
disp('J1  Qsoc,high  Qsoc,low   P,buy  P,sell  P,rated  Qsoc,rms   E,rated')
fun;
%% 各个决策变量的含义 
soc_h = x(1)  ;    % 较高
soc_l = x(2)   ;   % 较低
P_b = x(3)  ;     % 购电
P_s = x(4)   ;    % 售电
P_m = fix(x(5));        % 最大值
E_b=0.32*P_m ;    %储能容量
Q_soc;
J1=fun 
Qsoc_high=soc_h 
Qsoc_low=soc_l  
P_buy=P_b 
P_sell=P_s  
P_rated=P_m  
Qsoc_rms=Q_soc 
E_rated=E_b
%% 画图
figure
plot(u1)
title('优化前频率偏差')
xlabel('时间 / s')
ylabel('频率偏差/ Hz')
legend('频率偏差')
​
figure
plot(ft)
title('优化后频率偏差')
xlabel('时间 / s')
ylabel('频率偏差 / Hz')
legend('频率偏差')
​
figure
plot(-Pt)
title('储能出力')
xlabel('时间 / s')
ylabel('出力 / MW')
legend('储能出力')

3 程序结果

4 下载链接

见下方!

相关推荐
yugi9878385 小时前
基于MATLAB强化学习的单智能体与多智能体路径规划算法
算法·matlab
IT猿手14 小时前
基于强化学习的多算子差分进化路径规划算法QSMODE的机器人路径规划问题研究,提供MATLAB代码
算法·matlab·机器人
fie888917 小时前
基于MATLAB的转子动力学建模与仿真实现(含碰摩、不平衡激励)
开发语言·算法·matlab
机器学习之心18 小时前
基于GRU门控循环单元的轴承剩余寿命预测MATLAB实现
深度学习·matlab·gru·轴承剩余寿命预测
简简单单做算法18 小时前
基于FFT粗估计和LS最小二乘法精估计的正弦信号参数估计和检测matlab仿真
matlab·最小二乘法·参数估计·fft粗估计·ls最小二乘法
kaikaile199518 小时前
基于MATLAB的滑动轴承弹流润滑仿真程序实现
开发语言·matlab
Not Dr.Wang4221 天前
FIR数字滤波器设计的两种实现
matlab
3GPP仿真实验室1 天前
【MATLAB源码】CORDIC-QR :基于Cordic硬件级矩阵QR分解
开发语言·matlab·矩阵
keven-wang1 天前
104/101协议-SOE与COS有啥区别?
soc·104·101·soe
民乐团扒谱机2 天前
【微实验】机器学习之集成学习 GBDT和XGBoost 附 matlab仿真代码 复制即可运行
人工智能·机器学习·matlab·集成学习·xgboost·gbdt·梯度提升树