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

news2024/9/22 7:33:08

目录

1 主要内容

储能参与调频原理

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

2 部分代码

3 程序结果

4 下载链接


主要内容

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

 

  • 储能参与调频原理

原理图如下图:

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

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

部分代码

%%  变量定义如下:
% 决策变量:% 较高, 较低, 购电,售电,最大值
% 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('储能出力')

程序结果

4 下载链接

见下方!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/931825.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Tcp 协议的接口测试

首先明确 Tcp 的概念,针对 Tcp 协议进行接口测试,是指基于 Tcp 协议的上层协议比如 Http ,串口,网口, Socket 等。这些协议与 Http 测试方法类似(具体查看接口自动化测试章节),但在测…

函数式编程-Stream流学习第二节-中间操作

1 Stream流概述 java8使用的是函数式编程模式,如同它的名字一样,它可以用来对集合或者数组进行链状流式操作,让我们更方便的对集合或者数组进行操作。 2 案例准备工作 我们首先创建2个类一个作家类,一个图书类 package com.stream.model;…

VMware软件安装包分享(附安装教程)

目录 一、软件简介 二、软件下载 一、软件简介 VMware软件是一种虚拟化软件,可以将一台计算机分成多个虚拟机,每个虚拟机都可以运行独立的操作系统和应用程序,从而实现多个不同的工作环境共用同一台硬件设备。以下是关于VMware软件的详细介…

38、springboot为 spring mvc 提供的静态资源管理,覆盖和添加静态资源目录

springboot为 spring mvc 提供的静态资源管理 ★ Spring Boot为Spring MVC提供了默认的静态资源管理: ▲ 默认的四个静态资源目录: /META-INF/resources > /resources > /static > /public ▲ ResourceProperties.java类的源代码&#xff0…

Java进阶篇--进程和线程的区别

进程和线程 进程 在一个操作系统中,每个独立执行的程序都可称之为一个进程,也就是“正在运行的程序”。目前大部分计算机上安装的都是多任务操作系统,即能够同时执行多个应用程序,最常见的有Windows、Linux、Unix等。比如在Wind…

最新社会工程学技术

人本身是防御体系中最大的漏洞。由于人心的不可测性,决定了无法像修补漏洞一样对人打补丁,只能通过后天培养安全意识来预防这种情况发生。虽然社会工程学的本质是心理战术,但是可以使用很多技术手段进行辅助,本节介绍社会工程学常…

REDIS 7 教程 数据类型-进阶篇

⑥ *位图 bitmap 1. 理论 由0和1 状态表现的二进制位的bit 数组。 说明:用String 类型作为底层数据结构实现的一种统计二值状态的数据类型 位图本质是数组,它是基于String 数据类型的按位操作。该数组由多个二进制位组成,每个二进制位都对应一个偏…

合并两个链表

题目描述 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 比如以下例子: 题目接口: /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListN…

nodejs+vue+elementui农业产品信息网上商城管理系统_9927h

语言 node.js 框架:Express 前端:Vue.js 数据库:mysql 数据库工具:Navicat 开发软件:VScode 前端nodejsvueelementui,系统使用权限分别包括管理员、种植户和用户,其中管理员拥有着最大的权限,同时管理员的…

C++初学者学习指南

文章目录 环境职业选择基本技能新特性与学习曲线高阶技能C模版元编程线程池,异步任务 C 相关工具及资源C ToolsC Resources 项目大项目小项目 如何学未来期望 环境 编程工具:VSCode插件: BazelC/CClang-FormatVim 职业选择 AI领域&#xf…

大学英语赛道情报分析——全国大学生英语竞赛

竞赛简介 竞赛简介更多>全国大学生英语竞赛每年一届,自1999年创办以来至今已连续举办二十三届,得到了各省、自治区、直辖市大学外语教学研究会和各高校师生的大力支持,每年全国共有31个省(自治区、直辖市)的一千二百…

设计模式之工厂模式(万字长文)

文章目录 概述工厂模式的优点包括工厂模式有几种主要的变体看一个具体需求使用传统的方式来完成传统的方式的优缺点 简单工厂模式基本介绍使用简单工厂模式简单工厂模式的优缺点优点:缺点: 工厂方法模式看一个新的需求思路 1思路 2工厂方法模式介绍工厂方…

安达发|关于MES制造执行系统成功实施的经验分享

智能制造”热潮席卷神州大地,在国家的大力推进下,建设智能工厂,推进智能制造已成为制造企业共同的目标。作为承上启下的车间级综合信息系统,MES系统得到了制造企业的广泛关注,市场变得异常火热。 但是,MES系…

解决IndexError: index 0 is out of bounds for axis 1 with size 0

标题 引言问题背景解决思路如何防止总结参考资料 博主 默语带您 Go to New World. ✍ 个人主页—— 默语 的博客👦🏻 《java 面试题大全》 🍩惟余辈才疏学浅,临摹之作或有不妥之处,还请读者海涵指正。☕🍭…

mysql 查询的字段值太长显示不全 group_concat

当前这个字段非常的长,在数据库看的时候也只是显示一部分内容,这是由于group_concat的group_concat_max_len参数的值太小造成的,默认值如下: show VARIABLES like group_concat_max_len 我们需要将这个值调大一点就可以解决上面这…

如何搭建智能家居系统并通过内网穿透实现远程控制家中设备

文章目录 前言1. 安装Home Assistant2. 配置Home Assistant3. 安装cpolar内网穿透3.1 windows系统3.2 Linux系统3.3 macOS系统 4. 映射Home Assistant端口5. 公网访问Home Assistant6. 固定公网地址6.1 保留一个固定二级子域名6.2 配置固定二级子域名 前言 Home Assistant&…

(纯c)数据结构之------>链表(详解)

目录 一. 链表的定义 1.链表的结构. 2.为啥要存在链表及链表的优势. 二. 无头单向链表的常用接口 1.头插\尾插 2.头删\尾删 3.销毁链表/打印链表 4.在pos位置后插入一个值 5.消除pos位置后的值 6.查找链表中的值并且返回它的地址 7.创建一个动态开辟的结点 三.顺序表与链表…

VAE原理 代码详解 pin_memory

VAE代码 import torch from torch import nn import torch.nn.functional as F class VAE(nn.Module):def __init__(self, input_dim784, h_dim400, z_dim20): # 28x28784,20可能是这个手写体一共有20类?super(VAE, self).__init__()self.input_dim input_dimsel…

【Hadoop】HDFS读写流程和客户端命令使用

🍁 博主 "开着拖拉机回家"带您 Go to New World.✨🍁 🦄 个人主页——🎐开着拖拉机回家_Linux,Java基础学习,大数据运维-CSDN博客 🎐✨🍁 🪁🍁 希望本文能够给您带来一定的…

XSS攻击与防御

目录 一、环境配置 kali安装beef contos7安装dvwa 二、XSS攻击简介 三、XSS攻击的危害 四、xSS攻击的分类 五、XSS产生的原因 六、构造XSS攻击脚本 (一)基础知识 常用的html标签 常用的js脚本 (二)构造脚本的方式弹窗警告 七、自动XSS攻击 (一)BeEF简介 (二)BeEF…