基于共享储能电站的工业用户日前优化经济调度

news2025/3/1 22:03:01

目录

1 主要内容

共享电站示意图

目标函数

2 部分程序

3 程序结果

4 程序链接


主要内容

该程序方法复现《基于共享储能电站的工业用户日前优化经济调度》算例2和算例3,根据共享储能电站的商业运营模式,将共享储能电站应用到工业用户经济优化调度中,通过协调各用户使用共享储能电站进行充电和放电的功率, 实现用户群日运行成本最优。以江苏省3个工业用户进行算例仿真,与用户不配置储能和用户独立配置储能场景对比,得出引入共享储能电站可以显著降低用户群日运行成本,并对储能电站年服务费收益、静态投资回收年限和投资回报率与共享储能电站服务费定价间的关系做进一步的研究。

  • 共享电站示意图

  • 目标函数

接入共享储能电站的用户群以典型日运行成本最优为目标函数,确定储能电站的容量、最大充放电功率和各个时段的充放电功率、用户各个时段利用储能电站进行充电和放电的功率。用户群的日运行成本包括从电网购电费用和向储能电站缴纳的服务费。

部分程序

%论文复现——场景3部分
%基于共享储能电站的工业用户日前优化经济调度[J].电力建设
​
clc
clear
close all
​
%% 参数设置
P_grid=sdpvar(3,24); %用户从电网购买的电功率
P_ess_b=sdpvar(3,24); %用户使用共享储能电站放电的功率
P_ess_s=sdpvar(3,24); %用户使用共享储能电站充电的功率
U_ess_b=binvar(3,24); %用户使用共享储能的放电状态位,取1时为放电,0为未放电
U_ess_s=binvar(3,24); %用户使用共享储能的充电状态位,取1时为充电,0为未充电
E=sdpvar(1,24); %储能电站的荷电状态
P_abs=sdpvar(1,24); %储能电站的充电功率
P_relea=sdpvar(1,24); %储能电站的放电功率
E_init=sdpvar(1,1); %储能电站的初始容量
E_max=sdpvar(1,1); %储能电站的预配置容量
P_max=sdpvar(1,1); %储能电站的预配置最大充放电功率
U_abs=binvar(1,24); %储能电站的放电状态位,取1时为放电,0为未放电
U_relea=binvar(1,24); %储能电站的充电状态位,取1时为充电,0为未充电
%% 用户参数导入
gamma=[0.37*ones(1,8),1.36*ones(1,4),0.82*ones(1,5),1.36*ones(1,4),0.82*ones(1,3)]; %电网的"峰-平-谷"电价
delta=0.33*ones(1,24); %共享储能电站的服务费
P_load(1,:)=[80,75,75,75,75,75,75,75,95,155,160,180,160,165,150,165,160,175,160,130,140,100,90,85];
P_load(2,:)=[200,50,150,190,25,50,30,20,40,170,220,150,65,160,170,150,230,125,140,200,125,70,110,65];
P_load(3,:)=[105,100,95,100,100,105,110,110,120,110,115,120,135,110,120,125,130,125,115,130,120,120,115,120];
P_pv(1,:)=[0,0,0,0,0,0,0,0,75,275,540,675,750,750,330,170,75,10,0,0,0,0,0,0];
P_pv(2,:)=zeros(1,24);P_pv(3,:)=zeros(1,24);
P_wind(1,:)=zeros(1,24);
P_wind(2,:)=[150,150,175,165,140,130,120,90,50,55,80,100,135,135,130,110,60,50,50,70,90,120,140,120];
P_wind(3,:)=[130,145,155,135,120,125,115,95,40,30,50,85,110,115,110,70,35,40,40,50,80,80,115,95];
%% 约束条件
C=[]; %约束条件矩阵初始化
for i=1:3
    for t=1:24
        C=[C,
           P_pv(i,t)+P_wind(i,t)+P_grid(i,t)+P_ess_b(i,t)-P_ess_s(i,t)-P_load(i,t)==0, %电功率平衡约束
           0<=P_ess_b(i,t)<=1000*U_ess_b(i,t), %用户使用共享储能电站放电功率约束
           0<=P_ess_s(i,t)<=1000*U_ess_s(i,t), %用户使用共享储能电站充电功率约束
           U_ess_b(i,t)+U_ess_s(i,t)<=1, %避免同时出现充放电的情况,故增加此约束
           P_grid(i,t)>=0,
          ]; %电功率平衡约束
    end
end
%储能电站荷电状态连续性约束
C=[C,E(1)==E_init+0.95*P_abs(1)-P_relea(1)/0.95,]; %1时段和其他时段不同,涉及E(0)
for t=2:24
    C=[C,E(t)==E(t-1)+0.95*P_abs(t)-P_relea(t)/0.95,]; 
end
for t=1:24
    C=[C,0.1*E_max<=E(t)<=0.9*E_max,];
end
C=[C,E_init==0.2*E_max,E(24)==E_init,];
%储能电站的充放电功率约束,用文章2.3中的Big-M法进行线性化处理
M=1E8; %这里的M是个很大的数
for t=1:24
    C=[C,
       0<=P_abs(t)<=P_max,
       0<=P_abs(t)<=U_abs(t)*M,
       0<=P_relea(t)<=P_max,
       0<=P_relea(t)<=U_relea(t)*M,
       U_abs(t)+U_relea(t)<=1,
      ];
end
%储能电站充放电功率平衡约束
for t=1:24
    C=[C,
       (P_ess_b(1,t)-P_ess_s(1,t))+(P_ess_b(2,t)-P_ess_s(2,t))+(P_ess_b(3,t)-P_ess_s(3,t))==P_relea(t)-P_abs(t),
      ];
end

程序结果

4 程序链接

点击直达! 

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

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

相关文章

〖Python网络爬虫实战⑨〗- 正则表达式基本原理

订阅&#xff1a;新手可以订阅我的其他专栏。免费阶段订阅量1000 python项目实战 Python编程基础教程系列&#xff08;零基础小白搬砖逆袭) 说明&#xff1a;本专栏持续更新中&#xff0c;目前专栏免费订阅&#xff0c;在转为付费专栏前订阅本专栏的&#xff0c;可以免费订阅付…

【Linux】用户命令(创建,修改,切换,删除,密码)

目录 1.创建 查看用户信息 查看id 2.修改 修改用户名 修改用户uid 操作前&#xff1a; 操作后 修改组名 操作前&#xff1a; 操作后: 修改组id 操作前&#xff1a; 操作后&#xff1a; 操作前&#xff1a; 操作后: 3.切换用户 4.删除 操作前&#xff1a; 操作…

如何在Spring Boot中使用Spring MVC

目录 1.MVC 2.Spring MVC 3.Spring Boot中使用Spring MVC 3.1.配置 3.1.1.文件配置 3.1.2.代码配置 3.2.使用 3.2.1.映射处理器 3.2.2.传参 3.2.3.参数转换 3.2.4.数据校验 3.2.5.数据模型 3.2.6.视图和解析器 3.2.7.拦截器 1.MVC MVC 是一种常见的软件设计模式…

企业级信息系统开发讲课笔记2.4 利用MyBatis实现条件查询

文章目录零、本节学习目标一、查询需求二、打开MyBatisDemo项目三、对学生表实现条件查询&#xff08;一&#xff09;创建学生映射器配置文件&#xff08;二&#xff09;在MyBatis配置文件里注册学生映射器配置文件&#xff08;三&#xff09;创建学生映射器接口&#xff08;四…

macOS Ventura 13.3.1 (22E261) Boot ISO 原版可引导镜像

本站下载的 macOS 软件包&#xff0c;既可以拖拽到 Applications&#xff08;应用程序&#xff09;下直接安装&#xff0c;也可以制作启动 U 盘安装&#xff0c;或者在虚拟机中启动安装。另外也支持在 Windows 和 Linux 中创建可引导介质。 macOS Ventura 13.3.1 为 Mac 提供下…

os库的使用与第三方库安装脚本

os库基本介绍 os 顾名思义&#xff0c;就是与操作系统相关的标准库。如&#xff1a;文件&#xff0c;目录&#xff0c;执行系统命令等。 os库是Python标准库&#xff0c;包含几百个函数 常用路径操作、进程管理、环境参数等几类 路径操作&#xff1a;os.path子库&#xff0…

安捷伦34970A

18320918653 34970A Agilent 34970A 数据采集器|安捷伦数据采集器|34970A 您可信任的测量&#xff1a; 我们把销售良好数字多用表测量引擎嵌入在3槽主机箱中。您能获得优异的测量能力&#xff0c;带有内置信号调整的通用输入&#xff0c;模块化的灵活性&#xff0c;低廉的售…

Ubuntu20.04配置CuckooSandbox环境

Ubuntu20.04配置CuckooSandbox环境 因为最近要做恶意软件分析&#xff0c;阅读论文发现动态分析的效果普遍比静态分析的效果要好一些&#xff0c;所以需要搭建一个动态分析的环境&#xff0c;查阅资料发现Cuckoo Sandbox是不错的自动化分析环境&#xff0c;但是搭建起来还是比…

机器学习相关建议

1、开发机器学习系统或者优化的路径 训练数据量的增加对机器学习系统的影响增加特征集或减少特征集改变正则化参数尝试增加多项式特征 | 高偏差、欠拟合 | 高方差、过拟合 | | ------------------ | ------------------------------ | | 尝试增加多项式特征 | 尝试减少特征的数…

30-60K,转型云原生架构师和SRE需要哪些能力?

你好&#xff0c;我是王炜&#xff0c;欢迎和我一起学习云原生的核心技术。 先来简单介绍一下我自己吧。作为前腾讯云 CODING 架构师&#xff0c;现在深圳氦三科技的联合创始人&#xff0c;同时也是中国云原生社区深圳站的负责人&#xff0c;我见证了云原生在国内从萌芽到蓬勃…

【k8s完整实战教程6】完整实践-部署一个federated_download项目

系列文章&#xff1a;这个系列已完结&#xff0c;如对您有帮助&#xff0c;求点赞收藏评论。 读者寄语&#xff1a;再小的帆&#xff0c;也能远航&#xff01; 【k8s完整实战教程0】前言【k8s完整实战教程1】源码管理-Coding【k8s完整实战教程2】腾讯云搭建k8s托管集群【k8s完…

【算法的复杂度】

算法的时间复杂度和空间复杂度一、算法效率二、时间复杂度1. 时间复杂度的概念2. 大O的渐进表示法3. 常见时间复杂度计算举例三、空间复杂度一、算法效率 算法在编写成可执行程序后&#xff0c;运行时需要耗费时间资源和空间(内存)资源 。因此衡量一个算法的好坏&#xff0c;一…

采用多种方式实现项目的查询多级缓存(六)

4.7.Nginx本地缓存 现在&#xff0c;整个多级缓存中只差最后一环&#xff0c;也就是nginx的本地缓存了。如图&#xff1a; 4.7.1.本地缓存API OpenResty为Nginx提供了shard dict的功能&#xff0c;可以在nginx的多个worker之间共享数据&#xff0c;实现缓存功能。 1&#xf…

【创建者模式】原型模式

文章目录优秀借鉴1、简介2、结构3、浅拷贝和深拷贝4、浅拷贝实现4.1、实现步骤4.2、结果分析5、深拷贝思路5.1、clone方法5.2、序列化与反序列化6、应用场景优秀借鉴 什么是原型模式&#xff08;Prototype&#xff09;&#xff1f;应用场景是什么&#xff1f; 【设计模式】原…

PointNN:一种无参数化的高效点云特征提取方法

前言 本文需要一些三维点云相关基础&#xff0c;非常适合深蓝学院修过相关课程的同学阅读。 点云处理从最早期的手工设计特征&#xff0c;到之后渐渐有一些深度学习的尝试&#xff0c;经历了 multi-view或者3D卷积等等的混沌时期&#xff0c;知道 pointnet 的横空出世&#x…

微服务治理框架(Istio)的认证服务与访问控制

本博客地址&#xff1a;https://security.blog.csdn.net/article/details/130152887 一、认证服务 1.1、基于JWT的认证 在微服务架构下&#xff0c;每个服务是无状态的&#xff0c;由于服务端需要存储客户端的登录状态&#xff0c;因此传统的session认证方式在微服务中不再适…

分享:前端开发使用基于 ChatGPT 的各类 AI Copilot 辅助开发

前言 现在谁还没听过 ChatGPT&#xff0c;通没通网我不确定&#xff0c;但一定不是搞开发的 网上各种教注册OpenAI账号的、卖key的&#xff0c;然后就可以去各类基于ChatGPT api的插件、应用使用。但是这类都属于不合规的方式&#xff0c;这里不推荐 虽然因为种种原因&#x…

nuxt.js - 【最新】简单快捷的 element ui 组件库的主题色更改,批量统一覆盖替换解决方法,无需npm装包。(适用于新手小白的方法,很简单)

效果图 最新解决方案,简单便捷且不用npm安装任何第三方包就能搞定。 原来的主题色是蓝色 ,可以通过本篇博客提供的方法,统一变成其他主题颜色,比如下面的紫色: 下面就是真实的运行效果,保证可行~ 这样就不用每个组件单独去写样式覆盖颜色了! 定制主

【C++】STL理解【容器】

【C】STL理解【容器】 1. STL概念引入 长久以来&#xff0c;软件界一直希望建立一种可重复利用的东西&#xff0c;以及一种得以制造出”可重复运用的东西”的方法&#xff0c;从函数(functions)&#xff0c;类别(classes),函数库(function libraries),类别库(class libraries…

Python中的type与isinstance的区别

Python中的type()函数和isinstance()函数是两个常用的类型判断函数&#xff0c;它们可以用来判断变量的类型&#xff0c;接下来让我们一起来看一下它们的用法。type()函数type()函数用于获取一个变量的类型&#xff0c;它的语法是&#xff1a;type(变量)。调之后会返回变变量的…