✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
在该项目中,模拟了电动汽车 (EV) 的充电行为对电网负载的影响。 从电力供应商和终端用户的角度,建立了高峰负荷值、电费和出行率等指标作为综合评价体系。 基于统计和数学工具,可以对居民出行历史数据进行分析和拟合以预测其概率分布,从而可以开发出出行模式和电动汽车充电方案的模型。 建立了以综合指标最大化为目标函数的非线性随机规划模型,并采用启发式搜索算法优化参数配置。 此外,考虑到普通电池和充电桩的特性、用户行为和电动汽车规模,设计蒙特卡罗模拟过程来模拟大型电动汽车的长期行驶行为。
⛄ 部分代码
function AdjustDriving(ev_id, pindex_start, pindex_end) global behaviours % 取消电量不够的出行计划 ev_cost_power = behaviours.v_driving_cost_power(ev_id, pindex_start : pindex_end); soc_start = GetPreviousSOC(ev_id, pindex_start); org_is_driving = behaviours.v_is_driving(ev_id, pindex_start : pindex_end); new_is_driving = CancelDriving(org_is_driving, ev_cost_power, soc_start); behaviours.v_is_driving(ev_id, pindex_start : pindex_end) = new_is_driving; % 更新出行状态 UpdateDriving(ev_id, pindex_start, pindex_end);endfunction new_is_driving = CancelDriving(org_is_driving, ev_cost_power, soc_start) global battery_features global mc_params soc_cost = cumsum(ev_cost_power, 2) / battery_features.power; soc_remain = soc_start - soc_cost; no_power_index = find(soc_remain < 0.0); new_is_driving = org_is_driving; new_is_driving(no_power_index) = 0; if (length(no_power_index) > 0) && mc_params.output fprintf('-----no power lead to cancel travel, len=%d-----\n', length(no_power_index)); endend
⛄ 运行结果
⛄ 参考文献
[1] 姚春玲,张俊华,李宝顺.基于遗传算法的汽车车身焊装夹具优化设计及MATLAB实现[J].机械设计与制造, 2010(10):3.DOI:10.3969/j.issn.1001-3997.2010.10.094.
[2] 段聪.计及风电出力优化或电动汽车充电站规划的配电网重构[D].华北电力大学,2015.DOI:10.7666/d.Y2879699.
[3] 万雅诤,林德焱,万方颖.基于MATLAB的电动汽车充电优化建模研究[J]. 2020.