天天看点

【有序充电】基于粒子群算法实现电动汽车充电动态优化策略附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

⛄ 内容介绍

大规模电动汽车接入电力系统时,就会使得电力负荷的峰谷差和功率波动产生的巨大的影响,更严重的,还会超过电力系统的供电能力和承受能力,给电网的安全稳定运行带来巨大的挑战.在此背景下,首先对电动汽车充电负荷的影响因素进行了分析,根据电动汽车的充电特性建立起电动汽车充电负荷的模型.然后,基于粒子群算法对模型进行优化求解,使得电网负荷的峰谷差最小,约束条件为负荷波动和充电电量限制.通过仿真,与无序充电的情况做出对比,有序充电在平滑负荷波动,降低电网的峰谷差的方面有很好的'削峰填谷'的作用.

⛄ 部分代码

function [vehicle_info,vehicle] = vehicle_info3(n,vehicle_range)

%output vehicle info every moment

% n -- number of moments/iterations

% vehicle_range -- maximum number of vehicle each moment (can be different)

SOC = [10,90];                 % state of charging (need to be changed to time)

time_max = 12*60/n;                % max time each moment

vehicle = randi(vehicle_range,n-6,1); % number of vehicles each moment

vehicle_info = zeros(sum(vehicle),3); % [enteringTime,chargingTime,exitingTime] each moment

enteringTime = zeros(sum(vehicle),1);

for j = 1:n-6

    % jth moment

    for i = 1:vehicle(j)

        enteringTime(sum(vehicle(1:j-1))+i) = round(time_max * rand) + (j-1)*time_max;

    end 

end

chargingTime = randi(SOC,sum(vehicle),1);

exitingTime = zeros(sum(vehicle),1);

for i = 1:sum(vehicle)

    while exitingTime(i) < (enteringTime(i) + chargingTime(i))

        exitingTime(i) = round(12*60*rand);

    end

end

vehicle_info = vehicle_info + [enteringTime,chargingTime,exitingTime];

end

⛄ 运行结果

【有序充电】基于粒子群算法实现电动汽车充电动态优化策略附matlab代码
【有序充电】基于粒子群算法实现电动汽车充电动态优化策略附matlab代码
【有序充电】基于粒子群算法实现电动汽车充电动态优化策略附matlab代码

⛄ 参考文献

❤️ 关注我领取海量matlab电子书和数学建模资料
❤️部分理论引用网络文献,若有侵权联系博主删除

继续阅读