计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度(matlab代码)

目录

1 主要内容

系统结构

CCPP-P2G-燃气机组子系统

非线性处理缺陷

2 部分代码

3 程序结果

4 程序链接


主要内容

该程序参考《计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度》模型,主要实现的是计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度模型。通过引入碳捕集电厂–电转气–燃气机组协同利用框架,碳捕集的CO2 可作为电转气原料,生成的天然气则供应给燃气机组;并通过联合调度将碳捕集能耗和烟气处理能耗进行负荷转移以平抑可再生能源波动,使得风电/光伏实现间接可调度而被灵活利用。

该程序采用的是混合整数线性规划 (MILP) 算法算法求解(原文采用的是新型的反余切复合微分进化算法),本程序采用matlab+yalmip运行,基本句句注释,方便学习。

但是,该程序在非线性处理部分存在缺陷,后面会具体说明一下,介意慎拍,整体程序逻辑还是不错的,值得参考!

  • 系统结构

除 CHP 机组外,各发电机组都可以向碳捕集系统和烟气处理系统提供能耗,通过加装储气装置,使得烟气处理与发电关系解耦,利用不同能量资源在能量/功率上的时空互补性,调度优化上更为灵活地配合可再生能源的出力变化和平抑净负荷波动。各单元的协同运行调度指令依靠能量管理系统采集数据信息后预测出的能量市场电价、可再生能源出力和电热负荷来制定。
  • CCPP-P2G-燃气机组子系统

该文章主要的亮点即是将CCPP、P2G以及燃气机组进行了融合,创新了此类VPP框架模型研究,所以创新的方向还是挺多的,不能只盯着方法层面的。
  • 非线性处理缺陷

碳捕集电厂部分烟气分流比是非线性的,yalmip在处理这列非线性是难以实现的,因此该程序这部分并未实现出来。

部分代码

P_CHP=sdpvar(1,24); %CHP机组的输出电功率
H_CHP=sdpvar(1,24); %CHP机组的输出热功率
V_CHP=sdpvar(1,24); %CHP机组消耗的天然气量
H_GB=sdpvar(1,24); %燃气锅炉的输出热功率
V_GB=sdpvar(1,24); %燃气锅炉消耗的天然气量
S_ES=sdpvar(1,24);  %电储能在t时段末的蓄电量,单位为MW
P_ESC=sdpvar(1,24); %电储能的充电功率
P_ESD=sdpvar(1,24); %电储能的放电功率
S_TS=sdpvar(1,24);  %热储能在t时段末的蓄热量,单位为MW
H_TSC=sdpvar(1,24); %热储能的充热功率
H_TSD=sdpvar(1,24); %热储能的放热功率
P_EM=sdpvar(1,24);  %系统在电网的购电量
P_CUT=sdpvar(1,24); %各级中断负荷功率之和
lamda_CC=sdpvar(1,24); %碳捕捉系统的烟气分流比
P_Cmax=sdpvar(1,24); %碳捕集系统的运行能耗上限
miu_ESC=binvar(1,24); %充电的布尔变量
miu_ESD=binvar(1,24); %放电的布尔变量
miu_TSC=binvar(1,24); %充热的布尔变量
miu_TSD=binvar(1,24); %放热的布尔变量
lambda_WI=sdpvar(1,24); %烟气分流比
V_WIalpha=sdpvar(1,24); %烟气存储罐储气量
alpha_2=sdpvar(1,24); %流入烟气存储罐的气量
Q_CS=sdpvar(1,24); %流入烟气存储罐的气量
Q_P2G=sdpvar(1,24); %流入烟气存储罐的气量
%
P_A=15*ones(1,24);   %CCPP-P2G系统能耗(因占比较少设为定值),单位为MW
%风电机组的预测出力
P_W=[232.75,247.44,219.09,188.78,239.58,232.84,188.52,159.84,111.45,51.23,119.88,137.29,141.39,115.78,135.24,143.44,151.64,195.69,159.70,180.94,203.38,193.64,155.32,247.43]; 
%光伏机组的预测出力
P_V=[0,0,0,0,0,22,63,97,110,118,128,132,133,136,131,133,120,85,37,0,0,0,0,0]; 
%电负荷
P_EL=[457,319,296,228,184,297,406,509,607,687,803,857,845,793,832,801,795,731,640,593,554,518,525,409];
%热功率
H_HL=[109,131,158,153,139,121,111,98,82,57,22,12,42,62,89,99,122,131,148,160,139,131,119,74];
%购电价
k_EM=[38.85,39.18,36.89,35.57,39.84,43.77,51.31,64.10,74.59,77.21,85.41,89.02,82.46,80.49,83.11,81.80,78.52,73.93,69.67,76.89,74.26,66.39,55.57,46.72];
S_ES_init=60;S_TS_init=30;
%% 约束条件
C=[];
%CCPP-P2G系统能耗以及CCPP出力
for t=1:24C=[C,P_C2P(t)==P_P2G(t)+P_CC(t), %CCPP-P2G系统总能耗约束P_P2G(t)==P_WA(t)+P_VA(t),  %P2G消纳的弃风光量约束P_CC(t)==P_A(t)+P_OP(t),    %碳捕集能耗约束P_GN(t)==P_G(t)-P_GC(t)-P_Galpha(t),  %碳捕集电厂功率约束];
end
%CCPP-P2G系统碳利用量以及天然气生成量
for t=1:24C=[C,Q_CC(t)==P_OP(t)/0.269, %CCPP-P2G系统捕集的CO2的总量与耗能约束Q_P2Gsum(t)==0.2*0.6*P_P2G(t), %P2G设备的消耗的CO2量和电功率约束V_P2G(t)==3.6*0.6*P_P2G(t)/39, %P2G设备的生成天然气的体积];
end
%垃圾焚烧电厂烟气处理模型
for t=1:24C=[C,P_alpha(t)==0.513*(alpha_1(t)+alpha_3(t)),]; %烟气处理系统能耗
end
%碳捕集-垃圾焚烧-风电-光伏联合运行策略
for t=1:24C=[C,P_GC(t)+P_WC(t)+P_VC(t)+P_WIC(t)==P_CC(t), %碳捕集能耗等式约束P_OP(t)==0.269*Q_CC(t), %CCPP-P2G系统捕集的CO2的总量与耗能约束(这个好像和前面的约束重复了)P_Valpha(t)+P_Walpha(t)+P_Galpha(t)+P_WIalpha(t)==P_alpha(t), %烟气处理能耗等式约束P_WA(t)+P_WN(t)+P_WC(t)+P_Walpha(t)==P_W(t), %风力机组的出力约束P_VA(t)+P_VN(t)+P_VC(t)+P_Valpha(t)==P_V(t), %光伏机组的出力约束P_WIN(t)+P_WIC(t)+P_WIalpha(t)==P_WI(t), %垃圾焚烧电厂的出力约束Q_N(t)==0.96*P_G(t)-Q_CC(t), %碳捕集电厂的碳排放约束];
end
%CHP机组和燃气锅炉模型
for t=1:24C=[C,P_PH(t)==P_CHP(t)+H_CHP(t), %CHP机组的输出功率约束P_CHP(t)==V_CHP(t)*39*0.35, %CHP机组的输出电功率约束H_CHP(t)==V_CHP(t)*39*0.40, %CHP机组的输出热功率约束H_GB(t)==V_GB(t)*39*0.40, %CHP机组的输出热功率约束];
end
%储能装置模型
for t=2:24C=[C,S_ES(t)==S_ES(t-1)*(1-0.001)+0.95*P_ESC(t)-P_ESD(t)/0.95, %电储能运行约束S_TS(t)==S_TS(t-1)*(1-0.01)+0.88*H_TSC(t)-H_TSD(t)/0.88, %热储能运行约束];
end
%电功率和热功率平衡约束
for t=1:24C=[C,P_GN(t)+P_WIN(t)+P_CHP(t)+P_WN(t)+P_VN(t)+P_ESD(t)+P_EM(t)==P_P2G(t)+P_EL(t)+P_ESC(t), %电功率平衡约束H_CHP(t)+H_GB(t)+H_TSD(t)==H_HL(t)+H_TSC(t), %热功率平衡约束];
end
%碳捕集电厂约束
for t=1:24C=[C,100<=P_G(t)<=400, %碳捕集电厂出力上下限约束%lamda_CC(t)==Q_CC(t)/(0.96*P_G(t)), %碳捕捉系统的烟气分流比(要考虑分段线性可能)%0<=lamda_CC(t)<=1, %烟气分流比上下限   %% 因为非线性0<=Q_CC(t)<=0.96*400, 15<=P_GC(t)+P_WC(t)+P_VC(t)+P_WIC(t)<=P_Cmax(t), %碳捕集系统的运行能耗上下限P_Cmax(t)==0.269*0.96*P_G(t), %碳捕集系统的运行能耗上限赋值];
end
for t=2:24C=[C,-60<=P_G(t)-P_G(t-1)<=60, %碳捕集电厂出力爬坡速率约束-65<=P_GC(t)+P_WC(t)+P_VC(t)+P_WIC(t)-P_GC(t-1)-P_WC(t-1)-P_VC(t-1)-P_WIC(t-1)<=65, %碳捕集电厂碳捕集能耗爬坡速率约束];
end
%CHP机组电热出力以及爬坡约束
for t=1:24C=[C,0<=P_CHP(t)<=140, %CHP的电功率出力约束0<=H_CHP(t)<=160, %CHP的热功率出力约束];
end

程序结果

4 程序链接

计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度

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

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

相关文章

智能井盖传感器:提升城市安全与便利的利器

在智能化城市建设的浪潮中&#xff0c;WITBEE万宾智能井盖传感器&#xff0c;正以其卓越的性能和创新的科技&#xff0c;吸引着越来越多的关注。本文小编将为大家详细介绍这款产品的独特优势和广阔应用前景。 在我们生活的城市中&#xff0c;井盖可能是一个最不起眼的存在。然而…

通过动态IP解决网络数据采集问题

前言 网络数据采集是目前互联网上非常重要且广泛应用的技术之一&#xff0c;它可以帮助我们获取互联网上各种类型的数据&#xff0c;并将其转化为可用的信息。然而&#xff0c;一些网站为了保护其数据被滥用&#xff0c;采取了一系列的限制措施&#xff0c;其中包括对访问者的…

java:使用Jedis操作redis

Redis是一个基于内存的高性能键值存储数据库&#xff0c;支持多种数据结构&#xff0c;如字符串、列表、集合等。在Java中&#xff0c;我们可以通过Jedis客户端来操作Redis数据库。 安装Jedis客户端 在Java应用程序中使用Jedis客户端之前&#xff0c;需要将其添加到项目中。可…

lNmp安装:

一、LNMP LNMP架构是目前成熟的企业网站应用模式之一&#xff0c;指的是协同工作的一整套系统和相关软件&#xff0c; 能够提供动态Web站点服务及其应用开发环境。LNMP是一个缩写词&#xff0c;具体包括Linux操作系统、nginx网站服务器、MySQL数据库服务器、 PHP&#xff08;或…

各类高危漏洞介绍及验证方式教程(一)

本期整理的漏洞验证教程约包含50多类漏洞&#xff0c;分多个章节编写&#xff0c;可从以下链接获取全文&#xff1a; 各类高危漏洞验证方式.docx (访问密码: 1455) 搭建dvwa测试环境基础教程.docx(访问密码: 1455) web逻辑漏洞挖掘快速入门基础教程.docx(访问密码: 1455) 01 Ca…

十一、对象的新增方法

对象的新增方法 1. Object.is()&#xff08;1&#xff09;Object.is() 与 行为基本一致&#xff08;2&#xff09;两个不同之处&#xff1a; 0 不等于 -0&#xff0c;NaN 等于自身。 2. Object.assign() 用于【对象的合并】&#xff08;1&#xff09;Object.assign(target, so…

salesforce的按钮执行js代码如何链接到apex代码

在Salesforce中&#xff0c;你可以通过自定义JavaScript按钮或链接来触发Apex代码的执行。这可以通过使用JavaScript Remoting或Visualforce页面来实现。以下是一些步骤来将JavaScript按钮与Apex代码链接起来&#xff1a; 使用JavaScript Remoting链接JavaScript按钮到Apex代码…

WPF向Avalonia迁移(三、项目结构)

前提&#xff1a; Avalonia版本11.0.0 1.配置文件 1.1 添加配置文件 1.2 读取配置文件 添加System.Configuration.ConfigurationManager using Avalonia.Controls; using System.Configuration;namespace AvaloniaApplication7.Views {public partial class MainWindow : W…

git服务器宕机后,怎么用本地仓库重新建立gitlab服务器(包括所有历史版本)

一、重新建立 当您的 GitLab 服务器因为某种原因宕机后&#xff0c;您可以使用本地仓库中的备份数据来恢复 GitLab 服务器。以下是一般的步骤&#xff0c;用于重新建立 GitLab 服务器&#xff1a; 注意&#xff1a; 这些步骤假定您已经定期备份了 GitLab 数据&#xff0c;包括…

如何使用Net2FTP搭建免费web文件管理器打造个人网盘

文章目录 1.前言2. Net2FTP网站搭建2.1. Net2FTP下载和安装2.2. Net2FTP网页测试 3. cpolar内网穿透3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 文件传输可以说是互联网最主要的应用之一&#xff0c;特别是智能设备的大面积使用&#xff0c;无论是个人…

常用的Linux命令及其用法

常用的Linux命令及其用法 1. ls&#xff1a;列出文件和目录 ls命令用于列出当前目录中的文件和子目录。通过不同的选项&#xff0c;可以显示详细信息、隐藏文件等。 示例&#xff1a; ls -l ls -a2. cd&#xff1a;切换工作目录 cd命令用于切换当前工作目录。通过指定目标…

H3C交换机的40G堆叠线 ,可以插在普通光口做堆叠吗?

环境&#xff1a; S6520X-24ST-SI交换机 H3C LSWM1QSTK2万兆40G堆叠线QSFP 问题描述&#xff1a; H3C交换机的40G堆叠线 &#xff0c;可以插在普通光口做堆叠吗&#xff1f; 解答&#xff1a; 1.H3C交换机的40G堆叠线通常是用于连接堆叠模块或堆叠端口的。这些堆叠线通常使…

【逆向】导出表:1.编写程序打印所有的导出表信息 2.编写GetFunctionAddrByName 3.编写GetFunctionAddrByOrdinal

这是从数据目录中获取每个表的地址 void PE::Analyze_Data_Directory(Data& my_data) {my_data.my_Data_Directory nullptr;my_data.my_Data_Directory (PIMAGE_DATA_DIRECTORY*)malloc(16 * sizeof(PIMAGE_DATA_DIRECTORY));void* Temp_ptr my_data.my_optional->D…

【技术干货】如何快速创建商用照明 OEM APP?

本文介绍了如何在涂鸦 IoT 平台的 App 工作台上创建一款体验版商照 App、正式版 OEM App、上架 App、以及完成通用配置。 OEM App 开发 创建 App 登录 涂鸦 IoT 平台的 App 页面。 单击 创建APP&#xff0c;选择 商照 APP 进行创建。 在提示框里&#xff0c;完善 App 信息…

通过Node.js获取高德的省市区数据并插入数据库

通过Node.js获取高德的省市区数据并插入数据库 1 创建秘钥1.1 登录高德地图开放平台1.2 创建应用1.3 绑定服务创建秘钥 2 获取数据并插入2.1 创建数据库连接工具2.2 请求数据2.3 数据处理2.4 全部代码 3 还可以打印文件到本地 1 创建秘钥 1.1 登录高德地图开放平台 打开开放平…

Java基础面试-面向对象

什么是面向对象&#xff1f; 对比面向过程&#xff0c;是两种不同的处理问题角度 面向过程更注重事情的每一个步骤及顺序&#xff0c;面向对象更注重事情有哪些参与者&#xff08;对象&#xff09;&#xff0c;及各自需要做什么 比如洗衣机洗衣服 面向过程会将任务拆解成一系…

11面向对象编程例子 月饼可以访问模子 模子不能访问月饼

类就好比是一个模子&#xff0c;然后各种对象就是月饼&#xff0c;印的月饼太多了&#xff0c;于是找不到月饼了&#xff0c;但是月饼只有一个模子&#xff0c;所以可以向上找到自己的模子 先上代码&#xff1a; class Person:age 0def shilifangfa(self):print(self)print(…

多列等高实现

预期效果 多列等高,左右两列高度自适应且一样,分别设置不同背景色效果预览: 分别由6种方法实现 1、使用padding + margin + overflow 实现多列等高效果,具有良好的兼容性; 2、border实现多列等高,左边框宽度为200px,左列浮动,伪元素清除浮动; 3、父元素线性渐变背景色…

基于web的酒店客房管理系统

目录 前言 一、技术栈 二、系统功能介绍 用户信息管理 会员信息管理 客房信息管理 收藏客房管理 用户入住管理 客房清扫管理 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施…

【数据结构】算法效率的度量方法

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 目录 &#x1f38f;事后统计方法 &#x1f38f;事前分析估算方法 &#x1f38f;函数的渐进式增长 结语 在上篇文章中我们提到了算法的设计要求中我们要尽量满足时间效率高…