Matlab|考虑可再生能源消纳的电热综合能源系统日前经济调度模型

目录

1 主要内容

模型示意图

目标函数

程序亮点

2 部分程序

3 程序结果

4 下载链接


主要内容

本程序参考文献《考虑可再生能源消纳的建筑综合能源系统日前经济调度模型》模型,建立了电热综合能源系统优化调度模型,包括燃气轮机、燃气锅炉、余热锅炉、蓄电池、储热、风电和光伏等设备模型,注意:不含文献中的地源热泵和空调设备,可以作为比较经典的电热综合能源优化调度学习资料。

  • 模型示意图

注意:本程序不含地源热泵模型。
  • 目标函数

目标函数:经济性=燃料成本+设备运维成本+环境保护
目标函数代码:
for t=1:24
  z=z+0.025*P_GT(t)+0.0097*Q_GB(t)+0.025*Q_RB(t)...%设备运维费用
  +0.03*(abs(P_ESc(t))+abs(P_ESd(t)))+0.02*(abs(P_HSc(t))+abs(P_HSd(t)))...%储能设备
  +3.15*(F_GT(t)+F_GB(t))...%买天然气的价格
  +0.088*(P_GT(t)*0.242+Q_GB(t)*0.085)+0.624*(P_GT(t)*0.0036+Q_GB(t)*0.764)+1.95*(P_GT(t)*0.2+Q_GB(t)*0.54);%污染物处理
end
  • 程序亮点

  1. 程序对于蓄电池和储热设备的约束形式较常规方式有所区别,见部分程序59-66行,虽然这种约束方式略显笨重,但提供了另外一种程序编写方式,顺便了解implies命令应用方式。
  2. 程序对于蓄电池和储热采用自放电/热系数方式,因此可以合理解释结果图2中储热满足24小时充放电功率一致,但是储热量却一直下降的原因。

部分程序

%% 程序初始化
clc;
clear;
close all;
​
%% 定义变量
%电设备
P_PV=sdpvar(1,24,'full');%光伏发电
P_WT=sdpvar(1,24,'full');%风力发电
P_GT=sdpvar(1,24,'full');%燃气轮机电功率出力
Eb=sdpvar(1,24,'full');% 电储能的容量
P_ES=sdpvar(1,24,'full');%电储能输出,有正有负
P_ESc=sdpvar(1,24,'full');% 电储能充电功率
P_ESd=sdpvar(1,24,'full');% 电储能放电功率
%热设备
Q_GT=sdpvar(1,24,'full');%燃气轮机输出的热功率
Q_RB=sdpvar(1,24,'full');%余热锅炉输出的热功率
Q_GB=sdpvar(1,24,'full');%燃气锅炉输出的热功率
Eh=sdpvar(1,24,'full');%热储能的容量
P_HS=sdpvar(1,24,'full');%热储能输出,有正有负
P_HSc=sdpvar(1,24,'full');%热储能储热功率
P_HSd=sdpvar(1,24,'full');%热储能放热功率
%辅助变量
Ubc=binvar(1,24,'full');%电储能充电状态,1表示充电
Ubd=binvar(1,24,'full');%电储能放电状态,1表示放电
Uhc=binvar(1,24,'full');%热储能储热状态,1表示储热
Uhd=binvar(1,24,'full');%热储能放热状态,1表示放热
F_GT=sdpvar(1,24,'full');%燃气轮机消耗的天然气量
F_GB=sdpvar(1,24,'full');%燃气锅炉消耗的天然气量
%% 常量数据,包括电热冷负荷和风光出力
Pwt=[66.9  68.2  71.9  72  78.8  94.8  114.3  145.1  155.5  142.1  115.9  127.1  141.8  145.6   145.3  150  206.9  225.5  236.1  210.8  198.6  177.9  147.2  58.7];
Ppv=[0,0,0,  0,  0.06,  6.54,  20.19,  39.61,  49.64,  88.62,  101.59,  66.78,  110.46,  67.41,  31.53, 50.76,20.6,22.08,2.07,0,0,0,0,0];
load_e=[88.24   83.01   80.15   79.01   76.07   78.39   89.95   128.85   155.45   176.35   193.71   182.57   179.64   166.31   164.61   164.61   174.48   203.93   218.99   238.11   216.14   173.87   131.07   94.04];
load_h=[122 125 128 125 128 119 113 109 100,90 88,79 66,55 63,71 98 109 139 150 142 139 136 134];
​
%% 目标函数:经济性=燃料成本+设备运维成本+环境保护
z=0;
for t=1:24
    z=z+0.025*P_GT(t)+0.0097*Q_GB(t)+0.025*Q_RB(t)...%设备投资运行费用+0.043*P_WT(t)+0.0096*P_PV(t)
    +0.03*(abs(P_ESc(t))+abs(P_ESd(t)))+0.02*(abs(P_HSc(t))+abs(P_HSd(t)))...%储能设备
    +3.15*(F_GT(t)+F_GB(t))...%买天然气的价格
    +0.088*(P_GT(t)*0.242+Q_GB(t)*0.085)+0.624*(P_GT(t)*0.0036+Q_GB(t)*0.764)+1.95*(P_GT(t)*0.2+Q_GB(t)*0.54);%污染物处理
end
      F=z
      
%% 约束条件
​
C=[];
%机组约束,决策变量
C=[C,0.8*Ppv<=P_PV<=Ppv];%光伏发电上下限约束
C=[C,0.8*Ppv<=P_WT<=Pwt];%风力发电上下限约束
for t=1:24
    C=[C,0<=P_GT(t)<=550];%燃气轮机上下限约束√
    C=[C,0<=Q_RB(t)<=750];%余热锅炉上下限约束√
    C=[C,0<=Q_GB(t)<=700];%燃气锅炉上下限约束√
    C=[C,0<=Q_GT(t)<=200];%燃气轮机输出的热功率
%设备模型
​
    C=[C,Ubc(t)+Ubd(t)<=1];
    C=[C,Uhc(t)+Uhd(t)<=1];%确定充放电状态不可能同时发生
    C=[C,-80<=P_ES(1,t)<=80,0<=P_ESc(1,t)<=80,-80<=P_ESd(1,t)<=0]; 
    C=[C,-80<=P_HS(1,t)<=80,0<=P_HSc(1,t)<=80,-80<=P_HSd(1,t)<=0];   
    C=[C,implies(Ubc(1,t),[P_ES(1,t)>=0,P_ESc(1,t)==P_ES(1,t),P_ESd(1,t)==0])];%储电=负荷
    C=[C,implies(Ubd(1,t),[P_ES(1,t)<=0,P_ESd(1,t)==P_ES(1,t),P_ESc(1,t)==0])];
    C=[C,implies(Uhc(1,t),[P_HS(1,t)>=0,P_HSc(1,t)==P_HS(1,t),P_HSd(1,t)==0])];%储热=负荷
    C=[C,implies(Uhd(1,t),[P_HS(1,t)<=0,P_HSd(1,t)==P_HS(1,t),P_HSc(1,t)==0])];

程序结果

4 下载链接

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

195基于matlab的凸轮机构GUI界面

基于matlab的凸轮机构GUI界面 &#xff0c; 凸轮设计与仿真 绘制不同的凸轮轮廓曲线 &#xff0c;凸轮机构运动参数包括推程运动角&#xff0c;回程运动角&#xff0c;远休止角&#xff0c;近休止角。运动方式&#xff0c;运动规律。运动仿真过程可视化。内容齐全详尽。用GUI打…

Docker 哲学 - 容器操作 -cp

1、拷贝 容器绑定的 volume的 数据&#xff0c;到指定目录 2、匿名挂载 volume 只定义一个数据咋在容器内的path&#xff0c;docker自动生成一个 sha256 的key作为 volume 名字。这个 sha256 跟 commitID 一致都是唯一的所以 &#xff0c;docker利用这个机制&#xff0c;可以…

【C++ 08】vector 顺序表的常见基本操作

文章目录 前言&#x1f308; Ⅰ vector 类对象的定义1. 定义格式2. vector 对象的构造 &#x1f308; Ⅱ vector 类对象的容量&#x1f308; Ⅲ vector 类对象的访问&#x1f308; Ⅳ vector 类对象的修改&#x1f308; Ⅴ vector 定义二维数组 前言 vector 介绍 vector 是一…

julia语言中的决策树

决策树&#xff08;Decision Tree&#xff09;是一种基本的分类与回归方法&#xff0c;它呈现出一种树形结构&#xff0c;可以直观地展示决策的过程和结果。在决策树中&#xff0c;每个内部节点表示一个属性上的判断条件&#xff0c;每个分支代表一个可能的属性值&#xff0c;每…

使用IDEA进行Scala编程相关安装步骤

一、相关安装包&#xff08;jdk最好用1.8版本&#xff0c;其他不做要求&#xff09; IDEA安装包 jdk-8u101-windows-x64.exe scala-2.12.19 二、安装顺序 在安装IDEA之前&#xff0c;首先要安装好java和scala环境&#xff0c;以便后续配置 三、jdk和scala安装要求 1.jdk安…

【论文阅读】DiffSpeaker: Speech-Driven 3D Facial Animation with Diffusion Transformer

DiffSpeaker: 使用扩散Transformer进行语音驱动的3D面部动画 code&#xff1a;GitHub - theEricMa/DiffSpeaker: This is the official repository for DiffSpeaker: Speech-Driven 3D Facial Animation with Diffusion Transformer paper&#xff1a;https://arxiv.org/pdf/…

【Kubernetes】k8s删除master节点后重新加入集群

目录 前言一、思路二、实战1.安装etcdctl指令2.重置旧节点的k8s3.旧节点的的 etcd 从 etcd 集群删除4.在 master03 上&#xff0c;创建存放证书目录5.把其他控制节点的证书拷贝到 master01 上6.把 master03 加入到集群7.验证 master03 是否加入到 k8s 集群&#xff0c;检查业务…

Docker 安装 LogStash

关于LogStash Logstash&#xff0c;作为Elastic Stack家族中的核心成员之一&#xff0c;是一个功能强大的开源数据收集引擎。它专长于从各种来源动态地获取、解析、转换和丰富数据&#xff0c;并将这些结构化或非结构化的数据高效地传输到诸如Elasticsearch等存储系统中进行集…

【LabVIEW FPGA入门】浮点数类型支持

如今&#xff0c;使用浮点运算来设计嵌入式系统的需求变得越来越普遍。随着 FPGA 因其固有的大规模并行性而在浮点性能方面继续超越微处理器&#xff0c;这种情况正在加剧。线性代数和数字信号处理 (DSP) 等高级算法可以受益于浮点数据类型的高动态范围精度。LabVIEW FPGA 通过…

【全开源】JAVA语聊大厅+陪玩系统语音聊天APP系统源码

我们技术使用后台服务 springbootmybatisplusmysql用户端 uniapp&#xff08;vue语法&#xff09;管理后台 vueelementUi 一、功能介绍 动态列表、发布动态、精准分类 创建语聊房间、房间玩法、违规公示、聊天显示 赠送礼物、上麦功能、房间管理、礼物中心、我的接单 我的技…

大话设计模式——8.原型模式(Prototype Pattern)

1.介绍 用原型实例指定创建对象的种类&#xff0c;并且通过拷贝这些原型创建新的对象。属于创建型模式。 UML图&#xff1a; 1&#xff09;浅拷贝&#xff1a; 指创建一个新的对象&#xff0c;然后将原始对象的字段值复制到新对象中。如果字段是基本类型&#xff0c;直接复制…

将FastSAM中的TextPrompt迁移到MobileSAM中

本博文简单介绍了SAM、FastSAM与MobileSAM,主要关注于TextPrompt功能的使用。从性能上看MobileSAM是最实用的,但其没有提供TextPrompt功能,故而参考FastSAM中的实现,在MobileSAM中嵌入TextPrompt类。并将TextPrompt能力嵌入到MobileSAM官方项目提供的gradio.py部署代码中,…

阿里云下载安装centos

这里以centos7.x版本下载安装为例 : 网址 : 阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 点击centos : 再点击下载地址 : 找到 7/ 并点击 : 找到isos/并点击 : 点击x86_64 : 找到4.4G的文件点击下载 ; 点击创建新的虚拟机 , 然后选择典型 &#xff0c; 然后点击下一…

HarmonyOS(鸿蒙)ArcUI组件

方舟开发框架&#xff08;简称ArkUI&#xff09;为HarmonyOS应用的UI开发提供了完整的基础设施&#xff0c;包括简洁的UI语法、丰富的UI功能&#xff08;组件、布局、动画以及交互事件&#xff09;&#xff0c;以及实时界面预览工具等&#xff0c;可以支持开发者进行可视化界面…

Centos yum报错‘Connection timed out after 30002 milliseconds‘) 正在尝试其它镜像。解决办法

修改源后更新报错 我有两个Centos 一个7 一个8&#xff0c;疏忽在7上面配置了8的源后报错&#xff0c;通过下面的报错发现提示的是Centos7的源找不到&#xff0c;才意识到是不是配置错了源。 报错信息&#xff1a; http://mirrors.aliyun.com/centos/7/AppStream/x86_64/os/r…

html5cssjs代码 023 公制计量单位进位与换算表

html5&css&js代码 023 公制计量单位进位与换算表 一、代码二、解释 这段HTML代码定义了一个网页&#xff0c;用于展示公制计量单位的进位与换算表。 一、代码 <!DOCTYPE html> <html lang"zh-cn"> <head><meta charset"utf-8&quo…

Java代码审计安全篇-CSRF漏洞

前言&#xff1a; 堕落了三个月&#xff0c;现在因为被找实习而困扰&#xff0c;着实自己能力不足&#xff0c;从今天开始 每天沉淀一点点 &#xff0c;准备秋招 加油 注意&#xff1a; 本文章参考qax的网络安全java代码审计和部分师傅审计思路以及webgoat靶场&#xff0c;记录…

【计算机视觉】二、图像形成——实验:2D变换编辑器2.0(Pygame)

文章目录 一、向量和矩阵的基本运算二、几何基元和变换1、几何基元(Geometric Primitives)2、几何变换(Geometric Transformations)2D变换编辑器0. 项目结构1. Package: guibutton.pywindow.py1. __init__(self, width, height, title)2. add_buttons(self)3. clear(self)4. dr…

数据结构和算法:哈希表

哈希表 哈希表&#xff08;hash table&#xff09;&#xff0c;又称散列表&#xff0c;它通过建立键 key 与值 value 之间的映射&#xff0c;实现高效的元素查询。具体而言&#xff0c;向哈希表中输入一个键 key &#xff0c;则可以在 &#x1d442;(1) 时间内获取对应的值 va…

Jenkins安装部署

目录 一、CI/CD介绍 二、持续集成与持续交付 持续集成&#xff08;CI&#xff09; 持续交付&#xff08;CD&#xff09; 持续集成的组成要素 持续集成的好处 持续集成的流程 三、Gitlab简介与特点 四、Gitlab CI/CD工作原理 五、Gitlab的部署与安装 安装依赖环境 G…