当前位置: 首页 > news >正文

针对微电网中可时移,柔性,基础负荷的电价响应模型---代码解析

前言:

        在上两篇帖子中,讲解了我对于粒子群算法的理解,站在巨人的肩膀上去回望:科研前辈们确实非常牛逼,所以它才成为了非常经典的算法。这篇帖子主要是想分享一下,对于微电网、电力系统的论文中,经常提及的负荷电价响应模型的概念,进行代码解析以及编程思路的复盘。本篇的风格将继续延续以往,需要具有的基础:MATLAB编程基础(能读代码),能静下来阅读的能力。

越发就觉得,文本阅读,是真正效率最高的知识传递形式。

基础知识:

        1.研究电力系统负荷的意义:电力系统存在的初衷,就是满足用户的用电需求,电力系统的发展,可以说是为了更好的满足用户的使用,同时延伸出高效、可靠、安全等一系列概念。其中需要注意的是,用户需要多少电能 = 电力系统供应多少电能,这才是最理想的状态。用户需要多少电能,也就是在电力系统中称之为“负荷”。注意,用户真正需要的电能才是负荷。

若 电力系统供电 > 负荷所需,即造成了电力浪费,甚至电力设备的损坏;

若  电力系统供电 < 负荷所需,容易导致设备不在额定范围内运行,使得工作效率下降。

        2.从电力系统安全性角度来说:电力系统一定要安全,才能够将电量按照要求和指标输送至用户侧,如果电力系统的安全性存在问题,比如:家用设备是220V,50Hz,但是输送过来的电是72Hz,这样一个奇葩的功率变化,导致的就是家电设备无法正常工作,导致备损毁。如果这样的情况大量存在,那么发电厂发的电约等于没有发电(设备全都无法正常运行)。如果电力系统的损耗巨大,大量能量浪费在传输的路途中,最终的用电成本也是非常高的。

因此,研究电力系统供给电能刚好满足用户需要的电能,即电源侧供电  略大于 负荷侧,是非常有必要的。

        3.因此研究者们相出了两种思路来提电源侧和负荷侧的效率,如下图所示。

这里我介绍的是指定需求响应计划,通过价格策略,鼓励用户调整负荷工作时间,平滑负荷曲线。

        4.如何平滑负荷曲线呢?在生活中会有很多种负荷,直流的,交流的,比如电脑,照明,洗衣机,油烟机,路由器,电动汽车等等。平滑负荷曲线的意思就是直接按照比例,在高峰用电时段,降低这些设备的供电量吗?或者说,高峰用电时段关闭大功率电器------------------千万不能在这里搞一刀切。因为设备没有达到额定的工作功率,设备的正常性能无法保证,即,电脑用着用着突然关机了,或者直接无法开机。所以研究者们给出:对负荷进行分类的方案。根据用电设备的重要程度和具体特性,电力系统中的负荷可以分为以下8类。

常用的平滑负荷曲线的方法是:使用实时电价策略,让用户在价格高是降低用电量,电价低是恢复用电量,减少突然高峰和突然低谷的情况。

编程思路:

1.导入24小时内的实时电价数据、基准电价、导入24小时内的负荷数据;----这些都是预测值。

(暂时没有引入微网光伏和风电及储能数据,本篇主要介绍平滑负荷曲线的编程思路)

2.对导入的负荷数据进行分类,不同类的负荷具有不同的特征。

先划分负荷的类型,在本程序中分为:基础负荷(刚性负荷)、柔性负荷(易节约和替代负荷)、易转移负荷(可时移负荷)。保持基础负荷不动、柔性负荷根据价格适当变化,可中断负荷、可时移负荷进行灵活开关和功率增减。---------------这里我也在存疑,论文PDF说的易转移负荷,但是在代码中,使用的更像是柔性负荷,没有考虑到可时移负荷对应的具体功率(这部分功率大小应该是固定的,而不是按照比例细分到其他所有时间段,而是一个或者某几个连续的时间段,比如电动车充电,总不能让电动车50kW功率充2小时变为10kW功率充电10小时吧)--------------------回归正题

3.通过基准电价和实时电价对比,划分高电价时段和低电价时段,分别用两个数组记录。

4.计算高电价时段柔性负荷转移量。(根据文中的公式)将高电价时段中每个小时的柔性负荷转移到低电价段去,那么低电价时段的负荷=原有负荷+每个高电价时段给的转移负荷的叠加求和。

5.计算高电价时段易转移负荷的转移量:具体步骤同4.

6.将每个小时在调度之后的新一轮负荷数值进行叠加,得到新的负荷调度曲线。

7.绘图查看负荷转移数据与实时电价之间的关系。

公式讲解:

一定有读者会好奇,如何通过代码公式,实现步骤4和步骤5。那么我掰开了碎碎的写一下。

--------------------------------我表述的太啰嗦了,我还是交给AI来描述吧-----------------------------------

首先是第一类负荷----即易转移负荷(第二类负荷是易节约和替代负荷)

下图的作用是:计算高电价时段第i个在所有低电价区间的转出电量;

                         计算低电价时段第j个接纳由所有高电价区间时段叠加的接纳电量。

公式(2)和公式(3)的工作原理如下:

通过公式(2)和公式(3)可以计算出高电价时段的转出负荷量,以及低电价时段的接收负荷量。

但是需要注意:这个转移机制的标准,什么电价转移多少比例的负荷?这个是需要纳入考虑的。

下图表示针对易转移负荷的转移衡量标准-----什么电价转出多少负荷。

公式(4)给出了负荷转移率函数𝑓(Δ𝑝),它是根据消费者心理学原理建立的模型,描述了负荷转移率与电价变化的关系。这个函数分为三个区域,分别是死区、线性区和饱和区,对应分段函数个段:

然后就可以通过叠加操作(叠加每一个高价时段给第i个低价时段的转移量),计算出各个时间段对应最新的易转移负荷的负荷曲线。

公式(5)和(6)就是计算高电价时段负荷减少量和低电价时段负荷增加量得出最新的负荷曲线

然后是第二类负荷------------柔性负荷(易节约和易替代负荷量)

由于两类负荷的特性不同,因此无法使用相同的转移量计算公式。

在下图中定义了一个24*24的电价弹性系数矩阵

公式(7)(8)的功能如下:

求解第二类负荷(易节约和替代负荷)的各时段对应值

这样便完成了第一类和第二类负荷的转移计算,得到新的负荷曲线。

代码解析

接下来就是绘制第一和第二类负荷转移之后的负荷曲线

如果真的静下来捋一捋,代码量其实不大,但是对于刚刚入门的兄弟们来说,我觉得这份解析应该是一个不错的辅助材料。代码和对应的PDF我都放在了下面,有需要自取。

数据、代码和PDF

链接:https://pan.baidu.com/s/1c6GDhWDgHPqrsquqa39NuQ 
提取码:2222

如有表述不对之处,请大家批评指正。

相关文章:

针对微电网中可时移,柔性,基础负荷的电价响应模型---代码解析

前言&#xff1a; 在上两篇帖子中&#xff0c;讲解了我对于粒子群算法的理解&#xff0c;站在巨人的肩膀上去回望&#xff1a;科研前辈们确实非常牛逼&#xff0c;所以它才成为了非常经典的算法。这篇帖子主要是想分享一下&#xff0c;对于微电网、电力系统的论文中&#xff0c…...

git使用http协议时免密pull和push方法

1、创建文件 在项目目录下创建.git-credentials文件&#xff0c;内容如下&#xff0c;填入自己的用户名和密码即可&#xff0c;如果是gitlab&#xff0c;把地址换成自己的gitlab的地址即可。 https://{用户名}:{密码}github.com2、终端执行 git config --global credential.…...

编译期间生成代码(Lombok原理)

通过在编译期间&#xff0c;修改Java的AST(Abstract Syntax Tree)树&#xff0c;可以往类中&#xff0c;添加/修改&#xff08;覆盖&#xff09;方法、属性等。 现在比较常见的三方依赖例子有&#xff1a;Lobbok的Data可以生成get、set方法&#xff0c;Sl4j2可以生成静态常量l…...

第2讲:pixi.js 绘制HelloWorld

基于第0讲和第1讲&#xff0c;我们增添了vite.config.ts文件。并配置了其他的http端口。 此时&#xff0c;我们删除掉没用的东西。 删除 conter.ts、typescript.svg 在main.ts中改成如下内容&#xff1a; import {Application, Text} from pixi.js import ./style.css// 指明…...

golang HTTP2 https测试POST变GET问题小记

概述 因为工作需要协助修改某个golang程序&#xff0c;添加双向认证。但是在调整的过程遇到一个HTTP POST请求变成GET诡异的问题&#xff0c;最后各种搜索&#xff0c;总算解决&#xff0c;博文记录&#xff0c;用于备忘。 代码 服务端 因工作内容&#xff0c;代码有删减&a…...

Linux下的lvm镜像与快照

lvm镜像(mirror) (1)划分三个PV&#xff0c;其中2个PV大小要一模一样 Disk /dev/sdb: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units cylinders of 16065 * 512 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/…...

嵌入式linux系统中SPI子系统原理分析01

大家好,今天给大家分享一下,如何使用linux系统中的SPI通信协议,实现主从设备之间的信息传递。 SPI是一种常见的设备通用通信协议。它是一个独特优势就是可以无中断发送数据,可以连续发送或接收任意数量的位。而在I2C和UART中,数据以数据包的形式发送,有限定位数。 …...

Part 4.2 背包动态规划

->背包模型模板(0/1,分组&#xff0c;完全&#xff0c;多重)<- [NOIP2018 提高组] 货币系统 题目背景 NOIP2018 提高组 D1T2 题目描述 在网友的国度中共有 n n n 种不同面额的货币&#xff0c;第 i i i 种货币的面额为 a [ i ] a[i] a[i]&#xff0c;你可以假设每…...

Elasticsearch-使用Logstash同步Mysql

1.安装logstash es服务器版本必须和logstash版本一致 7.9.2 在/usr/local/src/下新建logstash文件夹&#xff0c;解压 下载logstash后查看是否安装成功&#xff0c;在logstash的bin目录下输入指令&#xff1a; ./logstash -e input { stdin { } } output { stdout {} }2.my…...

6.17作业

升级优化自己应用程序的登录界面。 要求&#xff1a; 1. qss实现 2. 需要有图层的叠加 &#xff08;QFrame&#xff09; 3. 设置纯净窗口后&#xff0c;有关闭等窗口功能。 4. 如果账号密码正确&#xff0c;则实现登录界面关闭&#xff0c;另一个应用界面显示。 //发送端头文件…...

算法思想个人总结(结合生活理解)

主要思想: 结合生活和游戏理解思想,先知道什么场景用什么算法,然后再理解就能记住 遇到问题可以考虑选择使用,这样才是学活了 https://www.yuque.com/yuqueyonghu5znoyv/ifb5ga/nfcvg3ft9ryuqeem?singleDoc# 《元启发式算法》...

openh264 帧间预测编码过程源码分析

openh264 OpenH264 是一个开源的 H.264 编码和解码器&#xff0c;由思科系统开发并维护。它专为实时应用程序如 WebRTC 设计&#xff0c;提供了从基础到高级特性的广泛支持。OpenH264 的编码器支持从 Constrained Baseline Profile 到 5.2 级别&#xff0c;允许任意分辨率的编…...

Linux网络 - HTTP协议

文章目录 前言一、HTTP协议1.urlurl特殊字符 requestrespond 总结 前言 上一章内容我们讲了在应用层制定了我们自己自定义的协议、序列化和反序列化。 协议的制定相对来讲还是比较麻烦的&#xff0c;不过既然应用层的协议制定是必要的&#xff0c;那么肯定已经有许多计算机大佬…...

面试题——Nginx

1.Nginx是什么&#xff1f; 是一个高性能的Web服务器和反向代理服务器&#xff0c;也可以作为静态文件的缓存服务器&#xff0c;也能够进行负载均衡。 2.Nginx的作用&#xff1f; 1.反向代理&#xff1a;将多台服务器代理为一台服务器。客户端不了解底层服务端。 2.负载均衡…...

持续学习的综述: 理论、方法与应用

摘要 为了应对现实世界的动态&#xff0c;智能系统需要在其整个生命周期中增量地获取、更新、积累和利用知识。这种能力被称为持续学习&#xff0c;为人工智能系统自适应发展提供了基础。从一般意义上讲&#xff0c;持续学习明显受到灾难性遗忘的限制&#xff0c;在这种情况下…...

跨域资源共享(CORS)问题与解决方案

跨域资源共享&#xff08;CORS&#xff0c;Cross-Origin Resource Sharing&#xff09;是现代web开发中常见且重要的一个概念。它涉及到浏览器的同源策略&#xff08;Same-Origin Policy&#xff09;&#xff0c;该策略用于防止恶意网站从不同来源窃取数据。然而&#xff0c;在…...

实用软件分享-----一款免费的人工智能替换face的神器

专栏介绍:本专栏主要分享一些实用的软件(Po Jie版); 声明1:软件不保证时效性;只能保证在写本文时,该软件是可用的;不保证后续时间该软件能一直正常运行;不保证没有bug;如果软件不可用了,我知道后会第一时间在题目上注明(已失效)。介意者请勿订阅。 声明2:本专栏的…...

不可思议!这款 Python 库竟然能自动生成GUI界面:MagicGUI

目录 什么是MagicGUI&#xff1f; ​编辑 MagicGUI的工作原理 安装MagicGUI 创建你的第一个GUI ​编辑 其他案例 输入值对话框 大家好&#xff0c;今天我们来聊一聊一个非常有趣且实用的Python库——MagicGUI。这个库可以让你用最少的代码&#xff0c;快速创建图形用户…...

论文发表CN期刊《高考》是什么级别的刊物?

论文发表CN期刊《高考》是什么级别的刊物&#xff1f; 《高考》是由吉林省长春出版社主管并主办的省级教育类期刊&#xff0c;期刊以科教兴国战略为服务宗旨&#xff0c;专门反映和探索国内外教育教学和科研实践的最新成果。该期刊致力于为广大教育工作者提供一个高质量的学术…...

离散数学复习

1.关系的介绍和性质 &#xff08;1&#xff09;序偶和笛卡尔积 两个元素按照一定的顺序组成的二元组就是序偶&#xff0c;使用尖括号进行表示&#xff0c;尖括号里面的元素一般都是有顺序的&#xff1b; 笛卡尔积就是有两个集合&#xff0c;从第一个集合里面选择一个元素&am…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战&#xff1a;腾讯云IM群组成员管理&#xff08;增删改查&#xff09; 一、前言 在社交类App开发中&#xff0c;群组成员管理是核心功能之一。本文将基于UniApp框架&#xff0c;结合腾讯云IM SDK&#xff0c;详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

网络六边形受到攻击

大家读完觉得有帮助记得关注和点赞&#xff01;&#xff01;&#xff01; 抽象 现代智能交通系统 &#xff08;ITS&#xff09; 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 &#xff08;…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候&#xff0c;遇到了一些问题&#xff0c;记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

【位运算】消失的两个数字(hard)

消失的两个数字&#xff08;hard&#xff09; 题⽬描述&#xff1a;解法&#xff08;位运算&#xff09;&#xff1a;Java 算法代码&#xff1a;更简便代码 题⽬链接&#xff1a;⾯试题 17.19. 消失的两个数字 题⽬描述&#xff1a; 给定⼀个数组&#xff0c;包含从 1 到 N 所有…...

Element Plus 表单(el-form)中关于正整数输入的校验规则

目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入&#xff08;联动&#xff09;2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...

Kafka入门-生产者

生产者 生产者发送流程&#xff1a; 延迟时间为0ms时&#xff0c;也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于&#xff1a;异步发送不需要等待结果&#xff0c;同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…...

ubuntu22.04 安装docker 和docker-compose

首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙

Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...