【免费】【sci】考虑不同充电需求的电动汽车有序充电调度方法(含matlab代码)

简介: 【免费】【sci】考虑不同充电需求的电动汽车有序充电调度方法(含matlab代码)

1 主要内容

该程序复现sci文献《A coordinated charging scheduling method for electric vehicles considering different charging demands》,主要实现电动汽车协调充电调度方法,该方法主要有以下几点优势:1.可以通过不同充电需求的充电紧迫性指标来选择电动汽车的充电模式;2.以微网整体峰谷负荷差最小为目标,也即可以实现削峰填谷;3.考虑了慢速充电电动汽车、快速充电电动汽车和微电网运行的各种约束条件;4.采用蒙特卡罗仿真(Monte Carlo Simulation, MCS)模拟电动汽车的随机性。该代码采用matlab+cplex平台运行,中文注释清晰,可以通过文后下载链接直接免费获取文章和源码资源。

2 部分代码

%统计家庭充电模式下EV信息表
function [] = printHomeEV(EV)
    init;%获取全局变量
    
    f = figure;%生成图窗
    suptitle('家庭充电模式EV信息');%图标题
    set(gcf,'position',[250 100 1000 600]);%设置图窗大小
    
    %绘制以15分钟为间隔计数的EV到达时刻频数分布直方图
    subplot(2,3,1);
    N = zeros(96,1);
    C = tabulate(EV.J_c(:));%对每个元素进行统计
    N(C(:,1))=N(C(:,1))+C(:,2);
    bar(1-0.5:1:96-0.5,N,1);%绘图   
    title('EV接入时隙频数直方图');%图标题
    xlabel('Arrival time slots');%x轴单位
    ylabel('frequency ');  %y轴单位
    set(gca,'xtick',0:12:96); %x轴刻度
    
    %绘制以1小时为间隔计数的EV到达时刻的频率分布直方图,并叠加画出家庭充电模式的概率密度函数 
    subplot(2,3,2);   
    N = histcounts(EV.t_c,0:1:24);%按照一个小时的区间计数,赋给N
    bar(0.5:1:23.5,N/sum(N),1);%显示直方图
    hold on;
    %画出家庭充电模式的概率密度函数 
    x = [0.001:0.001:24];%采样密度
    y = normpdf(x,mu_1tc,sigma_1tc).*( mu_1tc-1224 )+...
        normpdf(x+24,mu_1tc,sigma_1tc).*( 012 );%论文中描述的概率密度函数
    plot(x,y,"LineWidth",2,"Color","red");%画粗的红线       
    title('EV接入时刻频率直方图');%图标题
    xlabel('Arrival time (h)');%x轴单位
    ylabel('probability');  %y轴单位
    %set(gca,'xtick',0:1:24); %x轴刻度
    legend('Collected Data','PDF');%增加图例
    legend('Location','northwest');%图例放在左上角
       
    %绘制以15分钟为间隔计数的EV离开时刻频数分布直方图
    subplot(2,3,4);
    N = zeros(96,1);
    C = tabulate(EV.J_dis(:));%对每个元素进行统计
    N(C(:,1))=N(C(:,1))+C(:,2);
    bar(1-0.5:1:96-0.5,N,1);%绘图  
    title('EV离开时隙频数直方图');%图标题
    xlabel('Departure time slots');%x轴单位
    ylabel('frequency ');  %y轴单位
    set(gca,'xtick',0:12:96); %x轴刻度
    %set(gca,'position',[0.05,0.08,0.30,0.37]);
    
    %绘制以1小时为间隔计数的EV离开时刻的频率分布直方图,并叠加画出家庭充电模式的概率密度函数 
    subplot(2,3,5);
    N = histcounts(EV.t_dis,0:1:24);%按照一个小时的区间计数,赋给N
    bar(0.5:1:23.5,N/sum(N),1);%显示直方图
    hold on;
    %画出家庭充电模式的概率密度函数 
    x = [0.01:0.01:24];
    y = normpdf(x,mu_1tdis,sigma_1tdis).*( 012 )+...
        normpdf(x-24,mu_1tdis,sigma_1tdis).*( mu_1tdis+1224 );
    plot(x,y,"LineWidth",2,"Color","red");   
    title('EV接入时刻频率直方图');%图标题
    xlabel('Departure time (h)');%x轴单位
    ylabel('probability');  %y轴单位
    %set(gca,'xtick',0:1:24); %x轴刻度
    legend('Collected Data','PDF');%增加图例
    legend('Location','northeast');%图例放在右上角
    %绘制电池状态的频率分布直方图,并叠加画出对应概率密度函数
    subplot(2,3,[3 6]);
    scatter(1:size(EV),EV.SOC_con,'filled');
    hold on;
    scatter(1:size(EV),EV.SOC_min,'filled');
    hold on;
    scatter(1:size(EV),EV.SOC_max,'filled');
    hold on;    
    title('EV电池SOC频率直方图');%图标题
    ylabel('SOC (%)'); %x轴单位
    xlabel('i-th EV');  %y轴单位
    %xlim([-10,size(EV)+10]);%对X轴设定显示范围 
    legend('con','min','max');%增加图例
    legend('Location','northwest');%图例放在左上角
    
    %立即绘制
    hold off;
end


3 程序结果

原文结果图


相关文章
|
19天前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
19天前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
19天前
|
算法 调度
考虑需求响应的微网优化调度模型【粒子群算法】【matlab】
考虑需求响应的微网优化调度模型【粒子群算法】【matlab】
|
19天前
|
算法 调度
面向配电网韧性提升的移动储能预布局与动态调度策略(matlab代码)
面向配电网韧性提升的移动储能预布局与动态调度策略(matlab代码)
|
19天前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
|
19天前
|
运维 算法
基于改进遗传算法的配电网故障定位(matlab代码)
基于改进遗传算法的配电网故障定位(matlab代码)
|
19天前
|
Serverless
基于Logistic函数的负荷需求响应(matlab代码)
基于Logistic函数的负荷需求响应(matlab代码)
|
19天前
|
供应链 算法
基于分布式优化的多产消者非合作博弈能量共享(Matlab代码)
基于分布式优化的多产消者非合作博弈能量共享(Matlab代码)
|
19天前
|
算法 调度
基于多目标粒子群算法冷热电联供综合能源系统运行优化(matlab代码)
基于多目标粒子群算法冷热电联供综合能源系统运行优化(matlab代码)

热门文章

最新文章