首页 > 编程语言 >基于风光储能和需求响应的微电网日前经济调度(Python代码实现)

基于风光储能和需求响应的微电网日前经济调度(Python代码实现)

时间:2024-07-15 11:55:59浏览次数:19  
标签:需求 风光 响应 Python 储能 电网 调度 负荷

目录

0 引言

1 计及风光储能和需求响应的微电网日前经济调度模型

1.1风光储能需求响应都不参与的模型

1.2风光参与的模型

1.3风光和储能参与模型

1.4 风光和需求响应参与模型

1.5 风光储能和需求响应都参与模型 

2 需求侧响应评价

2.1  负载率

2.2 可再生能源消纳率

2.3 用户舒适度

2.4 日最高负荷与日最高-最低负荷比率

3 算例实现

3.1算例介绍

3.2风光参与的模型求解

3.3 风光和储能参与的模型求解

3.5 风光储能和需求响应都参与模型求解

3.6 结果分析对比 

4 Python代码及算例数据


摘要:以实现经济性最优为目标,在得到新能源出力、负荷出力的日前预测上,考虑电网侧的实时电价。对风光储能需求响应都不参与、风光参与、风光和储能参与、风光和需求响应参与、风光储能和需求响应都参与五种调度方案进行探讨。对于需求响应调度,首先基于价格伸缩系数法的价格型需求响应,再加入激励型需求响应调度。对比各种调度情况下负载系数、新能源消纳率及用户舒适度。得到各种方案的供电构成图和供电成本,实验结果表明:风光储能和需求响应都参与微电网经济调度降低微电网的运行成本,并起到很好的消峰填谷的作用。

关键词:实时电价、风机、光伏、储能、需求响应、微电网经济调度


0 引言

近年来,微电网、清洁能源等已成为全球关注的热点。清洁能源在我国可持续发展战略中具有日益重要的地位,政府、企业、学术界均在清洁能源技术及其评价上做了大量工作[1]。

 微电网(Micro-Grid)日前经济调度问题是指考虑电网的分时电价基础上,对常规负荷、光伏出力、风机出力进行日前(未来 24 小时)预测,然后充分利用微网中的储能等可调控手段,使微电网运行的经济性最优[2-5]。

需求响应是电力需求侧管理在电力市场中的最新发展[6]。

 众多学者对此做了大量研究,文献[7]在考虑电价与负荷响应量相关性的基础上,建立了以运行成本最低、可再生能源消纳比例最高和用户满意度最好为目标的日前调度模型。文献[8]考虑风电功率以及可再生能源停运的不确定性,提出一种考虑风险的微电网日前随机优化调度方法。文献[9]以运行成本最小为优化目标、同时考虑储能,提出了一种微电网日前调度调度模型。文献[10]针对微电网新能源出力不确定的问题,提出了考虑电价激励需求响应下微电网日前优化调度方法。文献[11]以提高供电可靠性和能源利润为目的,构建考虑激励型DR和电池储能的优化模型,算例分析了激励型DR和电池储能对微网可靠性与盈利能力的影响。

本文以微电网风光、储能、与主网交换成本、需求侧响应成本为目标函数,考虑功率平衡约束、设备约束以及系统规划约束条件对此微电网进行优化调度,并通过峰值消减指数、可再生能源消纳率以及用户舒适度三个需求侧响应指标来量化需求侧响应效益。在允许微电网与主网进行功率交互的前提下,研究了微电网在不同情况下的调度方法。最后,通过实际算例分析了各种情况下的微电网经济优化及峰谷差最小运行方案。


1 计及风光储能和需求响应的微电网日前经济调度模型

1.1风光储能需求响应都不参与的模型

微网中储能和需求响应不作用,微电网与电网交换功率无约束,且无可再生能源,所以微电网中所需的电量只能从主网购买。这时候只需要满足功率平衡约束即可。

目标函数见式子(1)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

1.2风光参与的模型

若较负荷所需功率不足,不足部分向主网购买;若剩余,则剩余部分售卖给主网。光伏和风机可以舍弃部分。同时微电网与主网交换功率有约束。则目标函数见式子(3):

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

1.3风光和储能参与模型

蓄电池的荷电状态应满足上下限约束,同时蓄电池的单位时间蓄电池充放电功率也有上下限。微电网与主网功率交换有约束,风光可以部分舍弃。在此种情况下:目标函数见式子(5)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

1.4 风光和需求响应参与模型

1.4.1 基于价格型需求响应

在经济学领域,通常采用价格伸缩系数来描述商品的需求对于价格敏感程度[12]。

客户用电量与电价之间的关系采用电价伸缩系数\xi来表示。\xi可以定义为客户用电量波动率与价格波动率的比值,如式(7):

1.4.2 基于激励型的需求响应

负荷可分为可控负荷和不可控负荷,不可控负荷为一些基础性用电设备,如照明用电、通信用电等,在调度时段内优先满足其供电;可控负荷为一些用电时段具有一定灵活性的用电设备,如洗衣机、可定时电饭煲等,在调度时段内采用激励型需求响应直接控制方式进行负荷转移,并给予补偿。

本文所研究的需求侧响应模型主要是以可控制负荷为研究对象。

可转移负荷主要是根据供需双方事先签订好的协议,由调度中心向用户发出信号,将用电高峰时期的某些比较灵活的负荷转移到用电低谷期或者新能源出力的高峰期,经过用户的响应之后,主动转移部分负荷。[15]

目标函数为式子(13)

 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1.5 风光储能和需求响应都参与模型 


2 需求侧响应评价

电力需求侧响应是通过改变用户用电方式、提高终端用电效率等手段对终端电能使用进行控制,在满足用户电能使用效用的同时降低电力消耗微电网优化调度的主要目标是消减高峰负荷同时提高新能源消纳率。[16]因此可以提出三个指标来量化需求侧响应结果。

2.1  负载率

需求侧管理如果合理规划,可以减少一些高峰时段负荷,从而减轻操作员的压力。负载率可表示为:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

2.2 可再生能源消纳率

需求侧管理如果合理规划,可以在可再生能源出力峰值时刻多转移一些负荷来消纳风光等能源,所以可再在能源的消纳率应该会增加可再生能源消纳率指数M_{rei}可表示为:

2.3 用户舒适度

用户各时段的用电量同用户的舒适度密切相关,一般来讲,考虑到用户对电价的自适应性,可以认为,在相对稳定的电价水平下,用户将会自主选择其舒适度最大的用电方式需求侧响应的投人会改变系统中负荷结构,使用户舒适度降低.因此用户舒适度也是需求侧响应的一个评价指标,其可表示为:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 

2.4 日最高负荷与日最高-最低负荷比率

对于微电网电网而言,如果在其允许的范围内峰值负荷过大,会导致其转带备用容量不足,负荷波动率较高,容易影响该配电网的稳定性 。同时, 通过柯西-施瓦茨不等式证明了网损与最高-最低负荷比率成正比,即日内负荷的峰谷差越小,系统线损率越低。可见,缩小电网的高低负荷比率能够有效降低网损,提高系统负荷率,从而提升设备利用率。

因为这两指标可以从直观上判断出系统的供电能力,故也可以定义这两个规模目标为系统的显性供电能力,其值越小,系统的显性供电能力越好。日最高负荷与日最高-最低负荷比率如式(2.4.1):

3 算例实现

3.1算例介绍

一个含有风机、光伏、蓄电池以及负荷的微电网系统见示意图3.1。

风机的装机容量360kW,单位运维成本0.52元/kWh。光伏的装机容量 260kW,单位运维成本0.75元/kWh。蓄电池额定容量为700kWh,电池 SOC 运行范围 为[0.4,0.9],初始 SOC 值为 0.4,由充电至放电成本为 0.1 元/kWh,1个小时充放电功率最大为储能的20%。微网与主网允许交换功率不超过 200kW。一天的售电和购电价格见表1。

风机出力、光伏出力、常规负荷日前(未来 24 小时)预测见图2,新能源预测出力和净负荷,净负荷表示的是风机、光伏满足负荷后的剩余功率,如图3所示。

         

3.2风光参与的模型求解

在无风光情况下:微电网所需功率全部来自主网,功率等于负荷,在已知负荷和分时电价情况下,可以直接相乘求解。但是由图7我们可以看出,超过了微网与主网交换功率限额。

在有风光参与的情况下,由于风机功率、光伏功率、微电网与主网交换功率都是可变的,故直接相乘得不到结果,通过粒子群算法求解。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

3.3 风光和储能参与的模型求解

要尽量满足用户负荷需求要,我们考虑未满足负荷用电量和,并与系统运行成本取权重作为新的目标函数。

通过制定策略:风力发电成本最低,所以对于可再生能源发电,优先发风机。然后我们采用允许弃风、弃光的方法,得到可再生能源的最优出力后,若较负荷所需功率不足,则由主网供电。还对风、光、储能和主网出力越限做了惩罚项处理。

3.4 风光和需求响应参与模型求解

对于需求响应参与的模型,我们先对负荷进行K-Means聚类算法,把负荷分为高峰、平段、低谷三个时段,如表2所示。通过1.4.1节的基于价格型需求策略得到需求响应后的负荷P',然后在调度时段内再采用激励型需求响应直接控制方式进行负荷转移,并给予补偿。

这里的出力策略和风光和储能参与的模型求解的策略方法一样,把储能出力换成可转入转出负荷。

 

3.5 风光储能和需求响应都参与模型求解

通过把3.3节和3.4节结合起来,得到如下风光储能和需求响应都参与模型

3.6 结果分析对比 

             

                    

                 

                 

由图7-12可以看出,当只有风光参与供电的模型负荷缺额量很大,当加入储能后负荷缺额量降低了很多。在只考虑风光和需求响应时【电价型】可以很明显的看出,很好的起到了消峰填谷的作用。在风光储能和需求响应都参与的模型中,各方面的效果都有很大改善,如表3-7所示。

可视化结果:

4 Python代码及算例数据

标签:需求,风光,响应,Python,储能,电网,调度,负荷
From: https://blog.csdn.net/weixin_46039719/article/details/140433581

相关文章

  • Python酷库之旅-第三方库Pandas(023)
    目录一、用法精讲58、pandas.isnull函数58-1、语法58-2、参数58-3、功能58-4、返回值58-5、说明58-6、用法58-6-1、数据准备58-6-2、代码示例58-6-3、结果输出59、pandas.notna函数59-1、语法59-2、参数59-3、功能59-4、返回值59-5、说明59-6、用法59-6-1、......
  • 使用Java实现定时任务调度
    使用Java实现定时任务调度大家好,我是微赚淘客系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!定时任务调度的概述在软件开发中,定时任务调度是一项常见的需求,它允许开发人员周期性地执行特定的任务或操作。Java提供了多种方式来实现定时任务调度,其中包括传统的Timer类、Quar......
  • Python - garbage collection
    References【说站】python标记清除的过程深度讲解python垃圾回收机制GarbageCollectionasaMemoryManagementTechniqueinPythonQ&AQ1:python代码:x=10,y=x在这段代码中,变量x和y是不是存放在栈内存中的gcroots对象A1:在Python中,x=10和y=x这两行代码涉......
  • Python类型注释
    基本类型注释#变量名后面用":"表示类型注释string_val:str=""int_val:int=0float_val:float=0.0dic_val:dict=dict()list_val:list=list()tuple_val:tuple=tuple()函数形参&结果注释#形参名后面用":"表示类型注释,输出结果用"->"表示类型注释def......
  • Python中 `__pycache__` 文件夹是什么?
    引言当你编写一个独立的Python脚本时,目录结构看起来可能没什么特别。但随着项目逐渐变得复杂,你可能会倾向于将一些功能分离到其他模块或包中。这时,你可能会发现在源文件旁边,似乎毫无规律地,突然冒出一个__pycache__文件夹。project/│├──mathematics/│││├──......
  • Python常用数据类型 新手必看 超详细介绍
    目录一、Int整型二、Float浮点型科学计数法三、Bool布尔类型bool函数四、Str字符型字符串的声明字符串的常见操作查找:计数:大小写转换:编码与解码:切割与拼接:替换:五、None六、List列表列表的声明列表的常见操作 增加元素:删除元素:其他:七、Tuple元组元组的......
  • Python网页开发的常用框架
    Python网页开发的框架众多,各有其独特的特点、缺点以及在性能上的优劣势。以下是一些主流的Python网页开发框架及其特点的详细介绍:1.Django特点:全功能框架:Django是一个高级PythonWeb框架,鼓励快速开发和干净、实用的设计。它遵循MVC(模型-视图-控制器)设计模式,但Django中更......
  • 【Python】 深入了解 Python 字典的 | 更新操作
    我白天是个搞笑废物表演不在乎夜晚变成忧伤怪物撕扯着孤独我曾经是个感性动物小心地感触现在变成无关人物                     ......
  • python库(13):Tablib库简化数据处理
    1 Tablib简介数据处理是一个常见且重要的任务。无论是数据科学、机器学习,还是日常数据分析,都需要处理和管理大量的数据。然而,标准库中的工具有时显得不够直观和简便。这时,我们可以借助第三方库来简化数据处理流程。Tablib就是这样一个强大的数据处理库,它提供了一套简单易用......
  • python基础学习Day_04
    引言    今天休息,我就开始学习,学了四天的东西,太爽了我靠,今天学习内容:函数lamda,生成器,迭代器模块1.函数函数的定义存在的概念:实现重复的代码块,用来实现单一的功能相关联的代码块。自定一个函数1、关键字def开头:后面跟命名,是否传参用括号显示():函数体2、传参:......