微电网优化调度(风、光、储能、柴油机)(Python代码实现)

简介: 微电网优化调度(风、光、储能、柴油机)(Python代码实现)

文献来源,Python代码复现之:

💥1 概述

 电力对发达国家的日常生活至关重要,为关键系统和服务提供动力,例如医院、供水和废水处理等功能。停电–例如那些由于加利福尼亚州或最近的野火和公共安全停电日益严重德克萨斯州极端天气引起的轮流停电–这些关键服务的功能受损。包括存储和分布式发电资源的微电网可以帮助缓解其中的一些问题。压力,具有与主电网隔离或"孤岛"并在本地分配电力的能力。然而,微电网的可用存储和发电有限因此,确定优先级的能力负载和优化排放有助于最大化这些资源提供的收益并最小化伤害。本研究根据服务不同服务的优先级创建最佳存储调度计划负载,以及可用的存储和分布式发电资源。结果显示,正如预期的那样,服务负载的平均比例随停电时间而下降,并随柴油发电机燃料的增加而增加可用。此外,该模型倾向于为相对较低的节点提供大部分负载尽管相对排名较低,但需求,同时为需求极高的节点提供较少的服务尽管相对排名较高。


📚2 运行结果


部分代码:

#5 - Battery state of charge
constraints += [ j[0] == j_start ]
if len_t > 1:
    for t in range(1,len_t):
        constraints += [ j[t] == j[t-1] - b_S[t-1]*dt]
for t in range(len_t):
    constraints += [ 0 <= j[t], j[t] <= j_max]
#6 - Fuel stock
constraints += [ f[0] == f_start ]
if len_t > 1:
    for t in range(1, len_t):
        constraints += [ f[t] == f[t-1] - d_S[t-1]*dt ]
# %% Constraints C (7-9, 14)
for t in range(len_t):
    for jj in j_idx:
        i = rho[jj]
        # 7 - DistFlow equations
        constraints += [P[t, jj] == p[t, jj] + r[jj] * L[t, jj] + A[jj] @ P[t, :]]
        constraints += [Q[t, jj] == q[t, jj] + x[jj] * L[t, jj] + A[jj] @ Q[t, :]]
        #         #8 - Voltage drop
        constraints += [
            V[t, jj] - V[t, i] == (r[jj] ** 2 + x[jj] ** 2) * L[t, jj] - 2 * (r[jj] * P[t, jj].T + x[jj] * Q[t, jj].T)]
        #         #9 - Squared current magnitude (relaxed)
        constraints += [quad_over_lin(vstack([P[t, jj], Q[t, jj]]), V[t, jj]) <= L[t, jj]]

各种微电网模拟和研究可以在文献中找到,研究的主题从电网可靠性到智能负载。6,7负载优先化方案存在于许多此类电源中,因为随着电源的减少,负载必须以可控和可预测的方式减少。通常,这些都是按客户重要性不同的“层”订购的。在[8]中,第一层包含了所有关键的负荷,并且不应以任何理由卸载,包括医院和911调度中心。8可在短时间内卸载的任意负载,如HVAC设备,包括在第二层,最后,第三层包含仅为维持电网稳定性和防止停电而需要卸载的负载。它包括住宅客户和带备用发电的商业设施。文献似乎缺乏关于如何以及何时在微电网中优先考虑负载的真实例子。


本文通过将负载优先级与加州PSPS事件的现实影响联系起来来填补这一空白。尽管文献中包含负载优先级层的一些基本示例,但此类优先级缺乏适用性。这项工作通过将客户优先级与加利福尼亚州的离散客户类型和负载配置文件联系起来提供了这一点除了管理如何将电力分配给跨微电网连接的负载外,还必须考虑分布式发电机的内部发电,以确保跨微电网的充分电力分配。如[9]所述,本研究中提出的低压系统中这些分布式发电机的互连可能会影响整个电力系统的性能。9这些微源可能是生物质、燃料电池、风能或其他,然而,为了本研究的目的,将只分析太阳能和柴油发电。下面的Python中的数学建模与实现部分详细介绍了如何对这些生成器进行建模、控制和分布。


🎉3 参考文献

🌈4 Python代码实现+详细文章+数据

相关文章
|
2月前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
172 26
|
2月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
281 1
|
2月前
|
机器学习/深度学习 算法 调度
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
153 1
|
1月前
|
测试技术 Python
Python装饰器:为你的代码施展“魔法”
Python装饰器:为你的代码施展“魔法”
225 100
|
1月前
|
开发者 Python
Python列表推导式:一行代码的艺术与力量
Python列表推导式:一行代码的艺术与力量
318 95
|
2月前
|
Python
Python的简洁之道:5个让代码更优雅的技巧
Python的简洁之道:5个让代码更优雅的技巧
223 104
|
2月前
|
开发者 Python
Python神技:用列表推导式让你的代码更优雅
Python神技:用列表推导式让你的代码更优雅
413 99
|
1月前
|
缓存 Python
Python装饰器:为你的代码施展“魔法
Python装饰器:为你的代码施展“魔法
147 88
|
2月前
|
IDE 开发工具 开发者
Python类型注解:提升代码可读性与健壮性
Python类型注解:提升代码可读性与健壮性
253 102
|
1月前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。

推荐镜像

更多