码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 计及电池储能寿命损耗的微电网经济调度(matlab代码)


    目录

    1 主要内容

    储能寿命模型

    负荷需求响应

    2 部分代码

    3 程序结果

    4 下载链接


    1 主要内容

    该程序参考文献《考虑寿命损耗的微网电池储能容量优化配置》模型,以购售电成本、燃料成本和储能寿命损耗成本三者之和为目标函数,创新考虑储能寿命损耗约束、放电深度约束和储能循环次数约束,程序增加三类负荷需求响应内容,之前参考该文献的鲁棒优化代码基于两阶段鲁棒优化的微网电源储能容量优化配置未考虑储能寿命损耗部分,本次突出该部分内容,建立计及电池储能寿命损耗的微电网经济调度模型,程序采用matlab+yalmip编程,注释清晰,方便学习!

    • 储能寿命模型

    • 负荷需求响应

    注:下载链接中均有对应文档资料。

    2 部分代码

    %计及电池储能寿命损耗的微电网经济调度+三类需求侧响应
    ee_bat_int=300;%电池储能的容量
    p_wt_int=200;%风机
    p_pv_int=100;%光伏
    p_g_int=200;%
    p_g_min=10;%燃气轮机出力下限
    p_m_max=500;%联络线功率上限
    p_bat_int=ee_bat_int*0.21;%假设储能的功率上限和容量上限有比值关系
    ​
    ee0=0.55*ee_bat_int; %储能初始电量
    eta=0.95;%储能充放电效率
    mm=100000;%一个极大正实数
    k_suo=1/1;%缩减系数
    c_bat_int=3320/3*k_suo;%缩减储能单位成本为3320/3,乘上了缩减系数
    ​
    c_wt_om=0.0296;c_pv_om=0.0096;c_g_om=0.059;c_bat_om=0.009;%运维成本系数
    c_fuel=0.6;%燃料成本系数
    ​
    %决策变量
    p_ch=sdpvar(24,1);p_dis=sdpvar(24,1);ee=sdpvar(24,1);
    uu_bat=binvar(24,1);uu_m=binvar(24,1);
    p_buy=sdpvar(24,1);p_sell=sdpvar(24,1);
    p_g=sdpvar(24,1);
    ​
    %风光出力和电价(以春季典型日为例)
    p_l=xlsread('四个典型日数据.xlsx','0%','B3:B26')*900;
    p_wt=xlsread('四个典型日数据.xlsx','0%','H3:H26')*p_wt_int; 
    p_pv=xlsread('四个典型日数据.xlsx','0%','N3:N26')*p_pv_int; 
    price=xlsread('四个典型日数据.xlsx','电价','A2:A25');%分时电价
    ​
    %储能损耗模型的参数和变量
    kk1=0.44268;bb1=0.43071;
    kk2=0.59493;bb2=0.41454;
    kk3=0.65646;bb3=0.40992;
    kk4=0.69405;bb4=0.40761;
    kk5=0.72954;bb5=0.40551;
    ​
    ss_bat=binvar(24,1);%改设为0/1变量
    g1=binvar(24,1);g2=binvar(24,1);g3=binvar(24,1);g4=binvar(24,1);g5=binvar(24,1);
    d1=sdpvar(24,1);d2=sdpvar(24,1);d3=sdpvar(24,1);d4=sdpvar(24,1);d5=sdpvar(24,1);
    c_bat=sdpvar(1,1);
    ​
    constraints=[];
    %负荷响应模块
    jz_pri=0.9.*ones(1,24);%基准电价
    detapr=price'-jz_pri;%电价差
    load=DR3(p_l',detapr,price');%负荷调整
    %储能功率约束
    for t=1:24
    constraints=[constraints,0<=p_dis(t),p_dis(t)<=(1-uu_bat(t))*p_bat_int];%由于u_bat定义不同,所以公式和原文不同,1为充电,0为放电
    constraints=[constraints,0<=p_ch(t),p_ch(t)<=uu_bat(t)*p_bat_int];
    end
    

    3 程序结果

    4 下载链接

  • 相关阅读:
    国内近五年人工智能教育的研究热点及趋势——基于多维尺度和社会网络分析的方法
    java-net-php-python-7jsp在线购物计算机毕业设计程序
    实现更低功耗R5F51406BDNE、R5F51406ADFK、R5F51406ADFL、R5F51406AGFN搭载RXv2内核的32位微控制器
    DllMain 入口点
    什么是线上优雅停机和调整线程池参数?
    STM32使用库函数点灯实验
    实验7 Spark初级编程实践
    linux mysql数据库备份
    多输入多输出 | MATLAB实现PSO-LSSVM粒子群优化最小二乘支持向量机多输入多输出
    【CPP知识】try-catch处理内存分配失败的异常
  • 原文地址:https://blog.csdn.net/superone89/article/details/136503415
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号