基于等效消耗最小(ECMS)的电氢综合能源系统能量管理策略Simulink模型

0. 前言 

        常见的EMS控制策略为基于状态机(State Machine Control)、基于等效消耗最小(Equivalent Consumption Minimization Strategy,ECMS)及调度控制模式。本文着重介绍前两种,针对第一种控制策略可参考模型燃料电池-蓄电池-超级电容交直流微网能量管理策略Simulink模型 ,第二种控制策略可参考模型基于等效消耗最小(ECMS)的电氢综合能源系统能量管理策略Simulink模型。

1.基于状态机的控制策略(State Machine Control)

1.1 控制规则

设定:Pbatt_char=1500; SOC_min=60; SOC_max=90; SOC_nom1=85;SOC_nom2=60.1;Pfc_min=850;Pfc_max=8800; Pfc_opt=1500;Pbatt_max=3400;
State1:
SOC>90%,Pload<850W,则Pfc=850W;

State2
SOC>90%,850W<=Pload<8800W,则Pfc=Pload;

State3
SOC>90%,Pload>=8800W,则Pfc=8800W;或60%<=SOC<85%,Pload<850W,则Pfc=850W;

State4
60%<=SOC<85%,850W<=Pload<1500W,则Pfc=1500W;

State5:
60%<=SOC<85%,1500W<=Pload<8800W,则Pfc=Pload;

State6
60%<=SOC<85%,Pload>=8800W,则Pfc=8800W;或SOC<60%,Pload<850W,则Pfc=Pload+1500W;

State7
SOC<60%,850W<=Pload<1500W,则Pfc=max(Pload+1500,1500);

State8
SOC<60%,1500<=Pload<8800W,则Pfc=Pload+1500W;

State9
SOC<60%,Pload>=8800W,则Pfc=8800W.

具体实现代码:

function sys=mdlOutputs(t,x,u)
%constants initialization
Pbatt_char=1500; 
SOC_min=60; SOC_max=90; SOC_nom1=85;SOC_nom2=60.1;Pfc_min=850;Pfc_max=8800; Pfc_opt=1500;Pbatt_max=3400;
if(u(2)>SOC_max) 
    state=1;
end
if(u(2)>=SOC_nom2 && u(2)<=SOC_nom1) 
    state=2;
end
if(u(2)>SOC_nom1 && u(2)<=SOC_max) 
    state=u(3);
end
if(u(2)<SOC_min) 
    state=3;
end
if(u(2)>=SOC_min && u(2)<SOC_nom2) 
    state=u(3);
end
%state 1
if(state==1 && u(1)<Pfc_min)
            Pfc=Pfc_min;
end
%state 2
if(state==1 && u(1)>=Pfc_min && u(1)<Pfc_max)
            Pfc=u(1);
end
%state 3
if(state==1 && u(1)>=Pfc_max)
            Pfc=Pfc_max;
 end
if(state==2 && u(1)<Pfc_min)
            Pfc=Pfc_min;
end
%state 4
if(state==2 && u(1)>=Pfc_min && u(1)<Pfc_opt)
            Pfc=Pfc_opt;
end
%state 5
if(state==2 && u(1)>=Pfc_opt && u(1)<Pfc_max)
            Pfc=u(1);
end
%state 6
if(state==2 && u(1)>=Pfc_max)
            Pfc=Pfc_max;
end
if(state==3 && u(1)<Pfc_min)
            Pfc=u(1)+Pbatt_char;
end
%state 7
if(state==3 &&  u(1)>=Pfc_min && u(1)<Pfc_opt)
            Pfc=max(u(1)+Pbatt_char,Pfc_opt);
end
%state 8
if(state==3 && u(1)>=Pfc_opt && u(1)<Pfc_max)
            Pfc=u(1)+Pbatt_char;
            %Pfc=Pfc_max;
end
%state 9
if(state==3 && u(1)>=Pfc_max)
            Pfc=Pfc_max;
end
sys = [Pfc state];
% end mdlOutputs

1.2 仿真结果

        设定仿真时间为30s,负荷功率设定为:

        燃料电池输出电压电流值:

        蓄电池充电电流:

        直流母线电压值:

2.基于等效消耗最小(ECMS)的优化控制策略

        由于等效消耗最小能量控制策略是一种瞬时优化方法,其主要思想是:燃料电池热电联供系统在运行期间所消耗的能量最终都来自于储氢罐中的氢气和氧气反应的化学能,蓄电池消耗的电能会在之后的运行过程中由燃料电池消耗一定量的氢气进行反应来补充。所以在ECMS策略中建立能耗指标时,需要将蓄电池所消耗的电能与燃料电池补偿电能之间建立等效关系,将燃料电池在某一时刻的氢气消耗和蓄电池消耗的电能的等效氢耗量作为统一的优化性能指标。在运行过程中,根据负荷所需求的功率实现燃料电池和蓄电池之间进行的实时最佳功率分配,以达到最低的等效氢耗量的目标。

2.1 蓄电池等效氢耗功率模型

P_{eq}=\alpha (t)\cdot P_{batt}

式中:\alpha (t)为等效系数,P_{batt}为蓄电池功率。

2.2 蓄电池电量维持策略

        在ECMS策略定义中,等效系数的取值可以通过影响蓄电池等效氢耗量,来改变负荷分配。通过上式可以看出,当等效系数\alpha (t)取值相对较小时,蓄电池的等效氢耗很小,此时的热电联供能量控制策略会更加偏向于消耗蓄电池电能,使得电池SOC会快速的下降;当等效系数\alpha (t)的值较大时,蓄电池的等效氢耗偏大,此时的热电联供系统能量控制策略会更加偏向于使用燃料电池,会使蓄电池的SOC上升。这样会导致SOC的波动太大,在以热电联供系统的等效氢耗量最低为目标设计ECMS能量控制策略时,不仅要使得各个部分之间达到最优的能量分配,还要保证蓄电池的SOC在允许的范围内波动,通过SOC的反馈值调整等效系数。
        假设能量控制策略在相同的初始条件下,蓄电池SOC的值不同,最终所得到的优化效果也不一样。为了保持蓄电池SOC在允许范围内波动,需要判断目前蓄电池SOC值来进行调整。在一些文献中,提出使用惩罚函数对蓄电池的等效氢耗进行修正。这种校正方法可以理解为电能价格的调控:根据运行中实时反馈回来的电池SOC值进行控制,当SOC值偏高,电能的价格降低,蓄电池的电能相对比较“便宜”,使得能量控制策略偏向于使用蓄电池的电能;当SOC值偏低,电能的价格提高,电能相对比较“贵”,使得能量控制策略偏向于使用燃料电池的电能。
        当蓄电池SOC值非常接近目标值SOC时,惩罚函数的取值为1,基本不需要对蓄电池的等效氢耗进行校正;当蓄电池SOC比目标值大时,惩罚函数取值向小于1的方向变化:当蓄电池SOC比目标值小时,惩罚函数取值向大于1的方向变化。这样可以保证使热电联供系统的实际电负荷功率尽可能的达到最优分配。

2.3 基于ECMS的目标函数求解

        采用有效集法对非线性规划问题进行实时求解:

\mathbf{min}\left [ (P_{fc}+\alpha \cdot P_{batt})\cdot \Delta T \right ]
\alpha =1-2\mu \frac{SOC-(SOC_{max}+SOC_{min})\div 2}{SOC_{max}+SOC_{min}}
P_{fc}+P_{PV}+P_{batt}=P_{load}

        具体MATLAB代码如下:

Pbatt_char=1500; 
SOC_min=60; SOC_max=90; Pfc_min=850;Pfc_max=8800; Pbatt_max=3400;
Aeq=[0 1 0;1 0 1];
mu=0.6;
beq=[1-2*mu*((u(2)-0.5*(SOC_max+SOC_min))/(SOC_max+SOC_min)); u(1)];
lb=[Pfc_min, 0, -Pbatt_char];
ub=[Pfc_max, 100, Pbatt_max];
x0=[3000, 0.1, 3000];
options = optimoptions('fmincon','Algorithm','active-set','Display','off','MaxFunctionEvaluations',1000,'MaxIterations',100);
[y,fval] = fmincon(@ecmsfun,x0,[],[],Aeq,beq,lb,ub,[],options);
Pfc=y(1); Pbatt=y(3); alpha=y(2);

function f = ecmsfun(x)
DT=200e-3;
f = (x(1)+x(2)*x(3))*DT;

2.4 仿真结果

        蓄电池充电电流:

        直流母线电压值:

        等效系数\alpha (t)的值:

        从图中可以看出,因仿真初始设定蓄电池SOC为65%,小于目标SOC值75%,因此ECMS控制器使得蓄电池的充电电流增加,随着蓄电池不断充电,其SOC值不断增加,等效系数减小,使得热电联供系统“更倾向”于消耗蓄电池中的电量。

2.5 低碳环保模式

        在这种模式下,以可再生能源发电最大化利用为目标,减少额外光伏上网,使用储能或负荷吸收多余光伏出力,实现可再生能源利用率最高。
        当Ppv > Pdc && SOC >= 90:
PV工作在恒压模式;
        Ppv > Pdc && SOC < 90;PV工作在MPPT状态,多于电能给蓄电池充电。
        Ppv < Pdc && SOC >= 30:PV工作在MPPT模式下;
        SOC < 30:PV工作在MPPT模式下。
(1)光伏充足模式:当光伏充足时,如图所示其终端用电需求全部用光伏发出的电能满足,若有剩余能量且此时镍氢蓄电池的SOC较低,则剩余能量给镍氢蓄电池充电;若充电一段时间,蓄电池的SOC大于90,则水电解器开启,将剩余的电能转化成氢能储存在固态储氢装置中。
(2
)光伏不足模式:当光伏不足以产生电能时,如图所示,厂区终端电需求由镍氢电池组和燃料电池系统共同满足,其中,根据电需求、放氢量、储能电量等参数,以经济性和能源耐久性为目标,对蓄电池与燃料电池组成的混合动力系统进行能量优化管理;当蓄电池与燃料电池都不能终端电需求时,接入电网,采用从电网取电的形式为终端供能。

3.Simulink模型

3.1 整体模型

3.2 燃料电池电堆模型

        针对热管理系统各部分温度输入输出变化进行研究,对燃料电池系统进行简化,忽略气体压力、加湿、管路密封以及外部环境因素变化对燃料电池热管理系统工作过程的影响。PEFC用PTC加热器模拟,仿真图如下所示:

        通过电堆模拟器进口循环水温度与电堆当前的产热工况计算可以得到出口循环水温。通过控制算法对系统温度进行调节,实现电堆冷却循环水进出堆温差小于5,冷却水出堆稳态温度稳定在65目标值。

3.3 冷却循环水泵模型

        建立模型如下:

        通过PEMFC热管理系统控制水泵转速,调节冷却循环水流速,得到满足电堆模拟器进出口温度差控制条件的循环水流速,通过水泵频率及占空比调节冷却循环水流速带走电堆产生的多余废热,比例阀门控制内外循环水流量。外循环回路流量通过调节阀到风扇散热后进入水泵,内循环回路流量从比例调节阀直接引出进入水泵。基于上述水泵特性分析及热传递关系分析,实现电堆模拟器在理想的工作温度范围内工作。

3.4 其他模型

        其他模型具体见基于等效消耗最小(ECMS)的电氢综合能源系统能量管理策略Simulink模型,此处不再赘述。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/323220.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Unity Urp 渲染管线 创建透明材质球

按照以上方式设置后就可以得到一个透明的材质球 Tips&#xff1a;Blending mode &#xff1a; alpha 和 Blending mode &#xff1a; additive都是完全透明效果具体差异暂时不知道

iis配置asp网站

1.安装IIS的ASP win7和win10都是一样的 下安装IIS时ASP一般被默认不选中的状态&#xff0c;因此需要打开IIS检查功能视图栏中是否存在ASP选项&#xff0c;若没有则需要从控制面板->程序和 功能->打开或关闭Windows功能->Internet信息服务->万维网服务->应用程序…

数据结构与算法:快速排序

数据结构与算法&#xff1a;快速排序 快速排序荷兰国旗问题霍尔版本递归优化小区间优化 PartSort优化三数取中 挖坑法前后指针法 非递归法 快速排序 荷兰国旗问题 想要理解快速排序&#xff0c;就先理解这个问题&#xff1a; [LeetCode75.颜色分类] 荷兰国旗是由红白蓝三色组…

低代码平台,新型应用程序开发神器

目前低代码平台如火如荼。这一新兴技术为企业提供了一种高效、灵活、快速开发应用程序的方法&#xff0c;并在短时间内取得了巨大成功。然而&#xff0c;我们不得不面对低代码平台的优劣以及其所带来的挑战。本文将深入探讨低代码平台在不同情况下的优劣势&#xff0c;并与您分…

Qt 国产嵌入式操作系统实现文字转语音功能(TTS)

1.简介 本示例使用的CPU&#xff1a;rk3588。 操作系统&#xff1a;kylin V10 架构&#xff1a;aarch64 在Windows端&#xff0c;我们很容易想到使用Qt自带的类QTextToSpeech来实现文字转语音功能&#xff0c;Qt版本得在5.11.0以上才支持。但是在嵌入式平台&#xff0c;尤其…

HubSpot社交媒体整合的好处有哪些?

HubSpot的社交媒体整合提供了许多好处&#xff0c;有助于用户更好地管理和优化其社交媒体活动。以下是一些使用HubSpot社交媒体整合的好处&#xff1a; 集中管理&#xff1a; 用户可以在HubSpot平台上集中管理多个社交媒体账户&#xff0c;无需切换到不同的平台。这简化了社交媒…

同步、异步无障碍:Python异步装饰器指南

一、引言 Python异步开发已经非常流行了&#xff0c;一些主流的组件像MySQL、Redis、RabbitMQ等都提供了异步的客户端&#xff0c;再处理耗时的时候不会堵塞住主线程&#xff0c;不但可以提高并发能力&#xff0c;也能减少多线程带来的cpu上下文切换以及内存资源消耗。但在业务…

2023一带一路暨金砖国家技能发展与技术创新大赛“网络安全”赛项省选拔赛样题卷①

2023金砖国家职业技能竞赛"网络安全" 赛项省赛选拔赛样题 2023金砖国家职业技能竞赛 省赛选拔赛样题第一阶段&#xff1a;职业素养与理论技能项目1. 职业素养项目2. 网络安全项目3. 安全运营 第二阶段&#xff1a;安全运营项目1. 操作系统安全配置与加固任务一Linux …

基于信号完整性的一些PCB设计建议

最小化单根信号线质量的一些PCB设计建议 1. 使用受控阻抗线&#xff1b; 2. 理想情况下&#xff0c;所有信号都应该使用完整的电源或地平面作为其返回路径&#xff0c;关键信号则使用地平面作为返回路径&#xff1b; 3. 信号的返回参考面发生变化时&#xff0c;在尽可能接近…

欧盟产品安全新规来袭,亚马逊发出紧急提醒(GPSR)要求

欧盟产品安全新规来袭&#xff0c;亚马逊发出紧急提醒&#xff08;GPSR&#xff09;要求 一、发布新规 这世界上唯一不变的事&#xff0c;或许就是变化本身。 在跨境电商领域&#xff0c;这个道理再次得到验证。近日&#xff0c;不少卖家都收到了一封来自亚马逊的通知。通知中…

springboot下载图片的简单处理方式

参考地址 springboot&#xff1a;各种下载文件的方式_springboot下载文件-CSDN博客 开箱即用实战 GetMapping("/t1")public void down1(HttpServletResponse response) throws Exception {response.reset();response.setContentType("application/octet-strea…

在服务器上使用Docker运行SRS Stack,推拉直播流、多平台转播、本地录制、虚拟直播、直播转码、AI字幕、其他

SRS Stack | SRS (ossrs.net) Docker​ 推荐使用Docker运行SRS Stack&#xff1a; docker run --restart always -d -it --name srs-stack -v $HOME/data:/data \-p 2022:2022 -p 2443:2443 -p 1935:1935 -p 8000:8000/udp -p 10080:10080/udp \registry.cn-hangzhou.aliyun…

Linux 多个php版本选择需要的php的版本(修改环境变量)

这两天遇到了个问题&#xff0c; 原本服务器的php版本是7.3.13&#xff0c;经过一些操作之后不知道怎么了变成了5.6 #php版本查看 php -v然后我就对 5.6版本进行了升级&#xff0c;升级到了7.3.33&#xff0c; 这个时候 php -v 是7.3.33&#xff0c; 神奇的一幕出现了&#xf…

把握现货黄金的基本操作技巧

在投资市场这个大舞台上&#xff0c;有各种各样的投资产品供投资者选择&#xff0c;其中黄金作为一种重要的投资资产&#xff0c;一直受到广大投资者的青睐。然而&#xff0c;黄金交易并非易事&#xff0c;需要掌握一定的操作技巧。那么&#xff0c;如何才能把握住现货黄金的操…

XS2180四通道,兼容 IEEE 802.3at/af以太网供电 PSE 控制器 V1.0

XS2180 是一个四通道、供电设备&#xff08; PSE &#xff09;电源控制 器&#xff0c;设计用于 IEEE 802.3at/af 兼容 PSE 。器件提供用 电设备&#xff08; PD &#xff09;检测、分级、限流以及负载断开检测。器 件支持自动工作和软件编程。器件还支持最新二事件分…

删除运行框中的文件打开历史记录

当我们使用everything、百度、迅雷等软件&#xff0c;在列表中右键选中打开文件夹时。 当使用 winR 快捷键等方式打开运行时&#xff0c;输入盘符会出现之前打开过的文件夹&#xff0c; 一方面展示的特别多会比较混乱&#xff0c;另一方面 记得在之前的window版本中&#xff08…

数据库系列:InnoDB下实现高并发控制

1 介绍 并发控制是为了防止多用户并发使用数据库时造成数据错误和程序运行错误&#xff0c;保证数据的完整性。当多个事务并发地存取数据库时&#xff0c;就会产生同时读取和/或修改同一数据的情况。若对并发操作不加控制就可能会存取和存储不正确的数据&#xff0c;破坏数据库…

第27集《佛法修学概要》

丁二、天乘分三&#xff1a;戊一、十善业。戊二、四禅定。戊三、四空定 请大家打开讲义第七十七页&#xff0c;这是五乘里面的第二个法门&#xff0c;天乘法门。 大乘佛教把我们众生生命的现象分成了三个部分&#xff1a;第一个部分&#xff0c;叫作 本来清净&#xff1b;第…

CSS 之 跑马灯边框

一、简介 ​ 之前有做过渐变色边框的样式&#xff0c;然后某天刷抖&#x1f3b5;&#xff0c;看到某个老师在讲跑马灯的样式效果&#xff0c;于是就自己尝试实现一下跑马灯样式的边框&#xff0c;虽然这种样式并不常见&#xff08;基本没卵用&#xff09;&#xff0c;其使用场…

git的分支的使用,创建分支,合并分支,删除分支,合并冲突,分支管理策略,bug分支,强制删除分支

GIT | 分支 文章目录 GIT | 分支创建分支合并分支删除分支合并冲突分支管理策略bug分支强制删除分支 创建分支 查看当前本地仓库中有哪些分支 git branchHEAD所指向的分支就是当前正在工作的分支 cat .git/HEAD创建一个分支 git branch dev创建好了&#xff0c;但是目前还是…