参考文献:
摘要:在电力市场环境下,供电公司通过对接入配电网的分布式电源(distributed generation,DG)的优化调度,能够有效地降低其运行成本,规避市场竞争环境下的风险。提出了一种电力市场环境下供电公司日前优化调度的 2 阶段模型:第 1 阶段为 DG 优化调度阶段,根据市场电价、DG运行成本、签订可中断负荷(interruptable load,IL)合同的价格来确定 DG 的机组组合、从大电网的购电量及 IL 削减量;第 2 阶段为无功优化阶段,在第 1 阶段的基础上,考虑 DG 的无功出力特性,通过优化 DG 和无功补偿装置的出力调节电压使其在规定的范围内且配电网的网损最小。通过基于修改的 IEEE 33 节点系统的仿真计算,表明所提出的日前 2 阶段优化调度模型能够有效降低供电公司的运行成本。
关键词:电力市场;分布式电源;机组组合;可中断负荷;无功补偿;配电网
1 日前无功优化阶段
日前第 2 阶段在考虑具体配电网络结构的基础上,通过无功出力的调整使得电网各节点的电压不越限,同时使得配电网在运行阶段的网络损耗最小,因此本质上是一个无功优化问题。日前无功优化阶段是在日前经济调度的基础上,对于每个时段进行无功优化,从而保证各节点电压不越限。本文在进行无功优化时,充分考虑了接入到配电网中的 DG无功输出能力。由于日前调度阶段确定了大电网的购电量、DG 和 IL 的状态,因此该阶段无功优化的控制量为 DG 的无功补偿容量和无功补偿设备的出力,负荷的节点电压作为状态变量。
1.1 DG 无功出力光伏发电、燃料电池等通过逆变器并入电网的DG 以及微型燃气轮机、生物质能发电系统等以励磁电压可调型同步发电机形式直接并入电网的 DG均具有一定的无功容量,在向电网输送有功功率的同时,也能输送一定容量的无功功率。
1)风力发电
随着风力发电技术的大力发展,变速恒频双馈风电机组(doubly-fed induction generator,DFIG)逐渐成为风力发电的主流,转子由变流器提供交流励磁控制,实现变速恒频及输出有功和无功的解耦控制,双馈风电机组能够按系统调度在其容量范围内发出或吸收无功。
2)光伏
光伏发电系统通过逆变器并网,对并网逆变器进行控制,使得 DG 在向电网提供有功功率的同时也能够提供电网所需的无功功率。光伏能够提供的无功功率容量为
式中:Q 代表光伏提供的无功功率;Smax 代表光伏并网逆变器能提供的最大视在功率;Pact 代表光伏并网逆变器提供的有功功率。就光伏电站实际的发电数据来看,一般的光伏逆变器很少运行在满容量状态,绝大多数情况下最多只能有 80%的无功输出,根据式(10),此时尚有60%的无功额度可用。光伏在夜间的有功出力为 0,其接口容量均可用于无功调节。
3)常规 DG
对于柴油机、燃气轮机等常规 DG,同传统的同步电机一样,其有功出力稳定,无功输出由励磁系统控制。日前调度阶段没有考虑具体的网络结构,因此连接DG和IL的节点处的电压容易产生越限的问题,尤其是极端天气情况下风电、光伏有功出力波动很大,导致无功出力同样具有很大的波动性,需要供电公司根据第 2 阶段无功优化提前确定配电网络节点电压是否有可能越限,并及时采取有效措施(特殊情况时需要在日前额外增加无功补偿装置)。
1.2 目标函数
无功优化的目标函数是使得配电网有功网损最小,同时加入对负荷节点电压越限的罚函数。目标函数如下
式中:Plost 为系统的有功网损;λ 为节点电压越限罚系数;n 表示配电网负荷节点数;Ui 、Ui,max 、Ui,min 分别为节点 i 的电压及上、下限值。
1.3 约束条件
1)潮流约束。
2 算例
用修改后的 IEEE 33 节点配电系统来验证所提出的日前调度模型的有效性。假设 3 个可调DG(本文采用柴油发电机)分别连接在 7、24、25 号节点上,风机和光伏分别接在 14 和 31 节点上,IL用户接在 8、25 号节点上,3 个无功补偿装置分别接在 8、30、32 号节点上,如图 2 所示。
3 matlab运行结果1)各dg出力
2)优化前后对比
4 matlab程序
1)主函数
clc; clear; close all;
%% 设置一些参数global hour % 全局变量在主函数里被赋值,在 mocase33.m 被调用
Qdg_max=0.5; % 柴油机的无功出力最大值Qc_max=1; % 无功补偿装置的无功出力最大值Qwt_max=0.1; % 风电机无功出力最大值Qpv_max=0.1; % 光伏电池的无功出力最大值
nVar=8; % Number of Decision VariablesVarMin=0; % Lower Bound of VariablesVarMax=[Qdg_max*ones(1,3), Qc_max*ones(1,3), Qwt_max, Qpv_max];% Upper Bound of VariablesMaxIt=30; % 最大迭代次数,为了快减到了30nPop=50; % Population Size (Swarm Size)
%% 调用粒子群算法每小时做无功优化bestPosition=zeros(24,8); % 决策变量最优解fitValue=zeros(24,1); % 最优目标函数值(最小的损耗值)for hour =1:24 disp(['************ hour=',num2str(hour), ' **************']) [ bestPosition( hour,:), fitValue( hour) ] = ... PSOFUN( @Fitnessfun,nVar,VarMin,VarMax,MaxIt,nPop );end
%% 对比试验% 没有无功功率补偿的计算结果for hour =1:24 option=mpoption('verbose',0,'out.all',0); % 关掉MATPOWER的结果显示 [result_duibi, ~]=runpf('mocase33_duibi', option); % 解释见目标函数 Pgrid = result_duibi.branch(1,14); % 解释见目标函数 Pload = sum(result_duibi.bus(:,3)); % 解释见目标函数 Loss_duibi(hour) = Pgrid-Pload; % 每个小时总的功率损耗end
%% 画图Qdg = bestPosition(:, 1:3); % 24小时 柴油机的无功出力 优化结果Qc = bestPosition(:, 4:6); % 24小时 无功补偿装置的无功出力 优化结果Qwt = bestPosition(:, 7); % 24小时 风电机无功出力 优化结果Qpv = bestPosition(:, 8); % 24小时 光伏电池的无功出力 优化结果
t=1:24;figure(1)hold onstairs(sum(Qdg,2),'LineWidth',1.5)stairs(sum(Qc,2),'LineWidth',1.5)stairs(Qwt,'LineWidth',1.5)stairs(Qpv,'LineWidth',1.5)grid onxlabel('time / h')ylabel('Reactive power / MW')title('各类无功电源出力优化结果')legend('Qdg', 'Qc', 'Qwt','Qpv')
figure(2)hold on plot(t, fitValue,'ob-')plot(t, Loss_duibi,'ok-')grid onxlabel('time / h')ylabel('Power Loss / MW')title('有无无功补偿的损耗对比')legend('有补偿且出力优化','没有无功补偿')
暂无评论