含多种需求响应及电动汽车的微网/虚拟电厂日前优化调度

本文主要是介绍含多种需求响应及电动汽车的微网/虚拟电厂日前优化调度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

主要内容

程序主要建立一个微网/虚拟电厂的日前优化调度模型,以燃气轮机运行成本、购售电费用、电动汽车电池损耗成本以及需求响应费用之和为目标,在日前经济调度模型中,加入了电动汽车模型,考虑了电动汽车出行规律以及充放电规律,更加符合实际情况,且考虑了多种类型的需求响应资源,如可中断负荷资源和空调负荷的需求响应调控,充分利用热力学原理以及能量守恒,对空调机组实行最优能耗曲线控制策略,除此之外,模型中还考虑了燃气轮机、储能的单元,非常全面且实用,是研究微网和虚拟电厂的必备程序。

  • 电动汽车模型

电动汽车模型主要考虑电池损耗成本,将行车距离与电能消耗进行综合分析,更符合实际运行特性。约束部分考虑了电动汽车电池的功率约束、容量约束、充电状态等,且程序综合分析了日系车和比亚迪汽车两种类型。

  • 需求响应模型

负荷需求响应主要考虑可中断负荷,以可中断负荷最大占比为限,具体模型如下:

  • 空调模型

空调模型考虑用户的舒适度和蓄冷释冷功率约束等,具体模型参考见下图。

部分代码

%% 定义变量sdpvar/binvar
umob=binvar(1,24);%是否购电
umos=binvar(1,24);%是否售电
pmgb=sdpvar(1,24);%市场购电量
pmgs=sdpvar(1,24);%市场售电量
xconv=binvar(1,24);%燃气轮机工作状态变量,当处于工作状态,定义为1;否则取0
yconv=binvar(1,24);%燃气轮机启停状态变量
pmt=sdpvar(1,24);%燃气轮机出力
gesc=sdpvar(1,24);%储能充电功率
gesd=sdpvar(1,24);%储能放电功率
sess=sdpvar(1,24);%蓄电池蓄电量
pil=sdpvar(3,24);%中断负荷
tempin=sdpvar(1,24);%室温
cold=sdpvar(1,24);%总冷量
coldch=sdpvar(1,24);%制冷机制冷量
colds=sdpvar(1,24);%蓄冷槽蓄冷量
coldr=sdpvar(1,24);%蓄冷槽释冷量
is=binvar(1,24);%蓄冷0-1状态变量
ir=binvar(1,24);%释冷0-1状态变量
scold=sdpvar(1,24);%蓄冷槽容量
pcold=sdpvar(1,24);%空调电功率
svb=sdpvar(1,24);%比亚迪电动汽车蓄电量
gcvb=sdpvar(1,24);%充电功率
gdvb=sdpvar(1,24);%放电功率
ucvb=sdpvar(1,24);%充电状态变量
udvb=sdpvar(1,24);%放电状态变量
svr=sdpvar(1,24);%日产电动汽车蓄电量
gcvr=sdpvar(1,24);%充电功率
gdvr=sdpvar(1,24);%放电功率
ucvr=sdpvar(1,24);%0-1变量
udvr=sdpvar(1,24);%0-1变量
​
%% 约束条件
C=[];%初始化约束
%% 需求响应资源——可中断负荷约束(公式35-37)
for m=1:3for t=1:24C=[C,0<=pil(m,t)<=cil(m)*pload(t),   %各级中断负荷约束];end
end
​
for m=1:3for t=2:24C=[C,pil(m,t-1)+ pil(m,t-1)<=0.2*pload(t), %连续性中断负荷约束  ]  ;end
end
​
%% 燃气轮机出力约束
for t=1:24C=[C,xconv(t)*gtmin<=pmt(t)<=xconv(t)*gtmax ,%出力上下限约束];
end
C=[C,pmt(1)<=ramp]; %初始爬坡率约束
C=[C,xconv(1)<=yconv(1)];%初始工作状态约束
​
for t=2:24C=[C,-ramp<=pmt(t)-pmt(t-1)<=ramp,%爬坡率约束xconv(t)-xconv(t-1)<=yconv(t), %工作状态约束 ];
end
​
%% 空调负荷约束
C=[C,scold(1)==colds(1)*ns-coldr(1)/nr];%初始蓄冷槽容量
for t=1:24C=[C,tempmin<=tempin(t)<=tempmax ,%室温约束(舒适度约束)0<=coldch(t)<=coldchmax,%制冷量约束0<=scold(t)<=scoldmax,%蓄冷槽容量约束cold(t)==coldch(t)-colds(t)+coldr(t),%总冷量等式is(t)+ir(t)<=1,%工作状态约束0<=colds(t)<=is(t)*coldsmax,%蓄冷上限约束0<=coldr(t)<=ir(t)*coldrmax,%释冷上限约束pcold(t)==coldch(t)/uch+colds(t)*us+coldr(t)*ur,%电-能转换等式约束];
end

程序结果

4 下载链接

这篇关于含多种需求响应及电动汽车的微网/虚拟电厂日前优化调度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/911383

相关文章

C++中零拷贝的多种实现方式

《C++中零拷贝的多种实现方式》本文主要介绍了C++中零拷贝的实现示例,旨在在减少数据在内存中的不必要复制,从而提高程序性能、降低内存使用并减少CPU消耗,零拷贝技术通过多种方式实现,下面就来了解一下... 目录一、C++中零拷贝技术的核心概念二、std::string_view 简介三、std::stri

Linux实现线程同步的多种方式汇总

《Linux实现线程同步的多种方式汇总》本文详细介绍了Linux下线程同步的多种方法,包括互斥锁、自旋锁、信号量以及它们的使用示例,通过这些同步机制,可以解决线程安全问题,防止资源竞争导致的错误,示例... 目录什么是线程同步?一、互斥锁(单人洗手间规则)适用场景:特点:二、条件变量(咖啡厅取餐系统)工作流

SpringBoot3中使用虚拟线程的完整步骤

《SpringBoot3中使用虚拟线程的完整步骤》在SpringBoot3中使用Java21+的虚拟线程(VirtualThreads)可以显著提升I/O密集型应用的并发能力,这篇文章为大家介绍了详细... 目录1. 环境准备2. 配置虚拟线程方式一:全局启用虚拟线程(Tomcat/Jetty)方式二:异步

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使

使用Python获取JS加载的数据的多种实现方法

《使用Python获取JS加载的数据的多种实现方法》在当今的互联网时代,网页数据的动态加载已经成为一种常见的技术手段,许多现代网站通过JavaScript(JS)动态加载内容,这使得传统的静态网页爬取... 目录引言一、动态 网页与js加载数据的原理二、python爬取JS加载数据的方法(一)分析网络请求1

SpringBoot项目Web拦截器使用的多种方式

《SpringBoot项目Web拦截器使用的多种方式》在SpringBoot应用中,Web拦截器(Interceptor)是一种用于在请求处理的不同阶段执行自定义逻辑的机制,下面给大家介绍Sprin... 目录一、实现 HandlerInterceptor 接口1、创建HandlerInterceptor实

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

电脑提示Winmm.dll缺失怎么办? Winmm.dll文件丢失的多种修复技巧

《电脑提示Winmm.dll缺失怎么办?Winmm.dll文件丢失的多种修复技巧》有时电脑会出现无法启动程序,因为计算机中丢失winmm.dll的情况,其实,winmm.dll丢失是一个比较常见的问... 在大部分情况下出现我们运行或安装软件,游戏出现提示丢失某些DLL文件或OCX文件的原因可能是原始安装包

SpringBoot中HTTP连接池的配置与优化

《SpringBoot中HTTP连接池的配置与优化》这篇文章主要为大家详细介绍了SpringBoot中HTTP连接池的配置与优化的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、HTTP连接池的核心价值二、Spring Boot集成方案方案1:Apache HttpCl

PyTorch高级特性与性能优化方式

《PyTorch高级特性与性能优化方式》:本文主要介绍PyTorch高级特性与性能优化方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、自动化机制1.自动微分机制2.动态计算图二、性能优化1.内存管理2.GPU加速3.多GPU训练三、分布式训练1.分布式数据