计及电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度(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.rhkb.cn/news/156224.html

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

相关文章

uni-app 实现考勤打卡功能

一、在页面中引入地图组件 <map id"map" style"width: 100%; height: 100%" :latitude"myLatitude" :longitude"myLongitude" :circles"circles" :markers"markers"> </map>属性名类型说明longitudeN…

使用ffmpeg和python脚本下载网络视频m3u8(全网最全面)

网上给娃找了些好看的电影和一些有趣的短视频&#xff0c;如何保存下来呢&#xff1f;从网上找各种工具&#xff1f;都不方便。于是想到何不编程搞定&#xff0c;搞个脚本。对程序员来说这都不是事儿。且我有华为云服务器&#xff0c;完全可以把地址记下&#xff0c;后台自动下…

MAX17058_MAX17059 STM32 iic 驱动设计

本文采用资源下载链接&#xff0c;含完整工程代码 MAX17058-MAX17059STM32iic驱动设计内含有代码、详细设计过程文档&#xff0c;实际项目中使用代码&#xff0c;稳定可靠资源-CSDN文库 简介 MAX17058/MAX17059 IC是微小的锂离子(Li )在手持和便携式设备的电池电量计。MAX170…

本地安装多个node版本,gvnm来安装切换使用。vue2和vue3对node版本要求不一样

首先&#xff0c;本地下载安装gvnm https://github.com/Kenshin/gnvm.。 里面有安装使用方式。 使用gvnm 来管理切换本地node 版本。 2&#xff0c;切换为高版本node,或是在vue2项目package.json 启动打包的时候 配置修改。就无需再切换低版本node 来启动vue2项目了 "s…

centos安装redis教程

centos安装redis教程 安装的版本为centos7.9下的redis3.2.100版本 1.下载地址 Index of /releases/ 使用xftp将redis传上去。 2.解压 tar -zxvf 文件名.tar.gz 3.安装 首先&#xff0c;确保系统已经安装了GCC编译器和make工具。可以使用以下命令进行安装&#xff1a; sudo y…

【网络基础】IP 子网划分(VLSM)

目录 一、 为什么要划分子网 二、如何划分子网 1、划分两个子网 2、划分多个子网 一、 为什么要划分子网 假设有一个B类IP地址172.16.0.0&#xff0c;B类IP的默认子网掩码是 255.255.0.0&#xff0c;那么该网段内IP的变化范围为 172.16.0.0 ~ 172.16.255.255&#xff0c;即…

基于STM32_DS18B20单总线传感器驱动

基于STM32_DS18B20单总线传感器驱动 文章目录 基于STM32_DS18B20单总线传感器驱动前言一、BS18B20&#xff1f;二、原理1.复位与检验2.基本命令3.唯一ROM识别码4.温度转换 三、驱动代码四、注意事项 前言 本文以一款典型的单总线传感器及其驱动——DS18B20为例&#xff0c;简单…

计算机毕业设计选什么题目好?springboot智慧养老中心管理系统

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

Linux磁盘常见知识

目录 一、基础概念 1.1 文件系统类型 1.2 主分区、扩展分区、逻辑分区三者关系 1.3 UUID 1.4 lvm逻辑卷管理系统 二. 常用命令 2.1 查看命令 2.2 分区命令 2.3 格式化命令 1.4 挂载命令 三、扩容根目录 一、基础概念 1.1 文件系统类型 文件系统类型决定了向分区中存放、读取数…

C++——string

目录 STL STL六大组件 标准库中的string类 string类 string类常用接口 构造函数 下标遍历[] 迭代器 范围for push_back() append() insert() operator pop_back() erase() reserve resize clear c_str() substr() find() rfind() find_first_of getline str…

MQ-小试牛刀

MQ MQ解决了什么问题&#xff1f; 异步处理 解耦合 削峰填谷 大规模数据处理 解耦 A系统发送数据到BCD三个系统&#xff0c;通过接口调用发送。如果 E 系统也要这个数据呢&#xff1f;那如果C系统现在不需要了呢&#xff1f;A系统负责人几乎崩溃… A系统跟其它各种乱七…

2023版 STM32实战9 RTC实时时钟/闹钟

RTC简介 实时时钟是一个独立的定时器。RTC模块拥有一组连续计数的计数器&#xff0c;在相应软件配置下&#xff0c;可提供时钟日历的功能。修改计数器的值可以重新设置系统当前的时间和日期。 注意事项 -1- 要手动配置中断寄存器 -2- 需要等待写操作完成 -3- 时钟闹钟中段…

FPGA面试题(4)(跨时钟域处理)

跨时钟域处理方法 慢->快快->慢单bit在快时钟域同步打拍&#xff0c;将信号同步到快时钟域展宽后同步打拍多bit异步FIFO异步FIFO握手信号 一.打两拍 适用于单bit跨时钟域处理所谓的打两拍就是定义两级寄存器实现延时 那为什么是打两拍&#xff0c;不是打一拍&#x…

mysql面试题44:MySQL数据库cpu飙升的话,要怎么处理?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:MySQL数据库cpu飙升的话,要怎么处理呢? 当MySQL数据库的CPU使用率飙升时,可能表示数据库负载过重或存在性能问题。以下是处理MySQL数据库CPU飙…

腾讯云优惠券种类、领取方法及使用教程分享

腾讯云是国内领先的云计算服务提供商&#xff0c;为用户提供丰富的云计算产品和服务。为了吸引更多用户使用腾讯云的产品和服务&#xff0c;腾讯云会定期推出各种优惠券活动。本文将为大家介绍腾讯云优惠券的种类、领取方法及使用教程。 一、腾讯云优惠券种类介绍 腾讯云优惠券…

项目管理的优秀软件推荐,助力提升团队效能!

我们知道&#xff0c;每个产品在上市的过程中都需要经历市场调研、研发设计、功能测试、上市评估、营销推广等阶段。作为项目经理&#xff0c;最关键的任务不仅是确保产品的顺利孵化和上市&#xff0c;还有管理团队。我们研究了许多项目管理用户&#xff0c;工作的难点是如何在…

{2023版}老牌配资平台排行报告:十大排名和实盘评估详情

随着投资者对股市的深入了解&#xff0c;越来越多的人开始选择配资交易。在配资平台的选择上&#xff0c;除了要注意平台的合法性和安全性外&#xff0c;平台的口碑和服务质量也是非常重要的考虑因素。为了方便投资者的选择&#xff0c;尚红网、倍悦网、兴盛网、诚利和、嘉正网…

文本情感计算技术(深度)

文本情感计算技术的发展得益于社交媒体的蓬勃发展。文本情感计算的研究至今已有 20年的历史&#xff0c;仍是国内外学术界和产业界的研究热点。随着新技术的变迁、新任务的出现&#xff0c;以及更高性能算法需求的增长&#xff0c;文本情感计算涉及多项有挑战性的研究任务。文本…

渗透测试KAILI系统的安装环境(第八课)

KAILI系统的安装环境(第八课) Kaili是一款基于PHP7的高性能微服务框架&#xff0c;其核心思想是面向服务的架构&#xff08;SOA&#xff09;&#xff0c;支持http、websocket、tcp等多种通信协议&#xff0c;同时还提供了RPC、Service Mesh、OAuth2等功能。Kaili框架非常适合构…

4大软件测试策略的特点和区别(单元测试、集成测试、确认测试和系统测试)

四大软件测试策略分别是单元测试、集成测试、确认测试和系统测试。 一、单元测试 单元测试也称为模块测试&#xff0c;它针对软件中的最小单元&#xff08;如函数、方法、类、模块等&#xff09;进行测试&#xff0c;以验证其是否符合预期的行为和结果。单元测试通常由开发人…