基于ECMS的混合动力汽车Simulink模型:可用于能量管理研究且模型无误
基于ECMS搭建的混合动力汽车simulink模型 可用于能量管理研究 模型运行无误 联系赠送模型搭建参考文献一份赠送nedc、udds等常用工况数据表可自行更改工况进行模型开发ECMS算法这玩意儿在混动能量管理圈子里挺能打最近刚用Simulink搭了个模型验证效果。模型核心模块其实就三块驾驶员需求解析、等效因子计算、扭矩分配策略不过真要跑起来还是有不少魔鬼细节。先看段ECMS的核心计算逻辑这个函数块里埋着能量转化的关键判断function [P_batt] ECMS_core(v, SOC, demand_torque) % 等效因子动态修正 k 2.5 - 0.8*(SOC-0.5); fuel_cost engine_map(demand_torque, v); elec_cost k * battery_loss(SOC); P_batt (elec_cost fuel_cost) * demand_torque*0.7; end这段代码里的k值调整很有意思SOC低于50%时惩罚系数自动增大相当于给电池充电开绿灯。注意那个0.7的系数是电机扭矩耦合比例这个数改大了容易让电机过载改小了又可能发动机频繁启停。模型里最实用的其实是工况加载模块直接读取Excel表格跑动态场景。用这个结构加载UDDS工况特别方便% 加载自定义驾驶循环 [raw_data, ~, ~] xlsread(custom_cycle.xlsx); time_vector raw_data(:,1); speed_vector raw_data(:,2)*0.2778; % 转m/s单位 set_param(HEV_Model/Driver/cycle,Time,time_vector,Data,speed_vector);建议把原始数据先做平滑处理特别是急加减速拐点处容易出现扭矩震荡。实测发现用移动平均滤波比Butworth滤波器效果更稳毕竟工况数据本身就有毛刺属于正常现象。基于ECMS搭建的混合动力汽车simulink模型 可用于能量管理研究 模型运行无误 联系赠送模型搭建参考文献一份赠送nedc、udds等常用工况数据表可自行更改工况进行模型开发电池SOC平衡模块有个隐藏技巧——在低电量时强制启动发动机充电的策略。这个逻辑用Stateflow实现比用普通模块清爽得多state Low_SOC_Charge en: SOC 0.3 during: engine_on 1; charge_flag 1; ex: engine_on prev_engine_state; charge_flag 0; end这种状态机写法比用比较器搭逻辑至少省掉5个模块调试的时候在状态转移线上加断点贼方便。注意exit时的prevenginestate需要做持久化变量处理否则切出状态时会丢失之前的发动机状态。模型验证时发现个反直觉的现象NEDC工况下SOC波动幅度比WLTC还大。后来查出来是怠速阶段的扭矩分配策略没做特殊处理补了个怠速充电标志位就稳了。所以千万别迷信标准工况实际道路的随机扰动才是真考验。需要模型搭建文献或工况数据表的直接私信别在评论区留邮箱容易被爬虫骚扰。建议拿到模型先跑一遍FTT故障树测试特别是混动模式切换时的扭矩衔接过渡这块要是没处理好仿真结果会出鬼畜现象。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2496921.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!