现代电力系统潮流计算作业

更新时间:2023-12-14 15:16:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

现代电力系统——潮流计算作业

0 序章

作业要求(A组):

0.1 调用matpower中的runpf函数,分析输入文件中各矩阵定义; 0.2 调用某一个算例,输出潮流结果,并分析。

0.3 完成0.1和0.2的基础上,分析matpower中牛顿法和快速解耦法,给出流程图,写出newtonpf和fdpf函数每行程序定义。

0.4 完成0.3的基础上,制造一个病态潮流算例,并跟踪调试,分析病态原因。

1 分析输入文件中各矩阵的定义

1.1 MATPOWER的安装

MATPOWER工具箱的安装步骤如下:

1) 下载matpower压缩包。官方下载网址:http://www.pserc.cornell.edu/matpower/,

目前最新版本为6.0b1,稳定版本为5.1,建议下载稳定版本。

2) 解压压缩包,得到文件夹matpower5.1,并将文件夹移动到MATLAB所在路径的

toolbox文件夹下。我的路径为: C:\\Program Files\\MATLAB\\R2016a\\toolbox。 3) 添加地址到MATLAB路径。打开MATLAB,点击“文件”?“设置路径”?“添

加并包含子文件夹…”,找到matpower5.1所在的位置,点击“确定”,再点“保存”?“关闭”。

4) 测试matpower工具是否安装成功。在MATLAB命令行窗口输入“test_matpower”,

出现一系列的测试,均显示“ok”,最后显示“All tests successful (3256 passed, 682 skipped of 3938)”,则表示安装成功。

1.2 矩阵的定义

打开文档“caseformat.m”,或者在MATLAB命令行窗口中输入“help caseformat”,可以得到关于输入矩阵的数据定义。当然,也可以参考docs文件夹下的manual文档,其中对matpower工具箱进行了详细说明。

在matpower中,输入矩阵至少包含三种:母线参数矩阵(Bus Data),发电机参数矩阵(Generator Data),支路参数矩阵(Branch Data)。为了进行最优潮流的相关计算,

–1–

输入矩阵还包含发电机费用参数矩阵(generator cost data)。以下对三种基本的输入参数矩阵数据格式进行详细说明。

表1.1 母线参数矩阵主要数据格式说明

列 1 2 3 4 5 6 7 8 9 10 11 12 13 名称 bus number bus type Pd Qd Gs Bs area number Vm Va baseKV zone Vmax Vmin 含义 母线编号,从1开始,正整数 节点类型,1为PQ节点,2为PV节点,3为平衡(参考)节点,4为孤立节点 注入负荷的有功功率 注入负荷的无功功率 与母线并联的电导 与母线并联的电纳 电网断面号,一般设置为1 母线电压的幅值 母线电压的相角 基准电压 损耗分区号,一般设置为1 工作时,母线的最高电压幅值 工作时,母线的最低电压幅值 表1.2 发电机参数矩阵主要数据格式说明

列 1 2 3 4 5 6 7 8 9 10 名称 bus Pg Qg Qmax Qmin Vg mBase status Pmax Pmin 含义 发电机所在母线的编号 接入发电机的有功功率 接入发电机的无功功率 发电机的最大输出无功功率 发电机的最小输出无功功率 发电机的工作电压幅值 发电机的功率基准值,默认为baseMVA 发电机是否投入运行,大于0表示投入运行,小于或等于0表示退出运行 发电机的最大输出有功功率 发电机的最小输出有功功率 单位 MW MVar MVar MVar p.u. MVA MW MW 单位 MW MVar MW MVar p.u. 度 kV p.u. p.u.

–2–

表1.3 支路参数矩阵主要数据格式说明

列 1 2 3 4 5 6 7 8 9 10 11 12 13 名称 fbus tbus r x b rateA rateB rateC ratio angle 起始母线编号 终止母线编号 支路电阻 支路电抗 支路充电电纳 支路长期运行允许的功率 支路短期运行允许的功率 支路紧急运行允许的功率 支路上变压器的变比,如果支路元件不是变压器,则该值为0 支路上变压器的转角,如果支路元件不是变压器,则该值为0 含义 单位 p.u. p.u. p.u. MVA MVA MVA 度 度 度 status 支路的初始工作状态,1表示投入运行,0表示退出运行 angmin 支路最小相角差 angmax 支路最大相角差 1.3 case9数据分析

根据以上分析,打开一个算例,比如默认的case9,进行分析。算例case9.m文件包含两个变量和四个矩阵。其中baseMVA=100,表示功率的基准值为100MVA。三个基本的矩阵定义如下。

表1.4 算例case9的母线参数矩阵

1 1 2 3 4 5 6 7 8 9 2 3 2 2 1 1 1 1 1 1 3 Pd 0 0 0 0 90 0 100 0 125 4 Qd 0 0 0 0 30 0 35 0 50 5 Gs 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 7 1 1 1 1 1 1 1 1 1 8 Vm 1 1 1 1 1 1 1 1 1 9 Va 0 0 0 0 0 0 0 0 0 10 345 345 345 345 345 345 345 345 345 11 1 1 1 1 1 1 1 1 1 12 Vmax 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 1.1 13 Vmin 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 0.9 bus_i type Bs area baseKV zone –3–

表1.5 算例case9的发电机参数矩阵

1 1 2 3 13 0 0 0 2 0 85 3 0 0 14 0 0 0 4 5 6 7 100 100 100 17 0 0 0 表1.6 算例case9的支路参数矩阵

1 1 4 5 3 6 7 8 8 9 2 4 5 6 6 7 8 2 9 4 3 r 0 0.017 0.039 0 4 x 0.0576 0.17 0.0586 5 b 0 0.358 0 6 250 250 150 300 150 250 250 250 250 7 250 250 150 300 150 250 250 250 250 8 250 250 150 300 150 250 250 250 250 9 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 11 1 1 1 1 1 1 1 1 1 12 -360 -360 -360 -360 -360 -360 -360 -360 -360 13 360 360 360 360 360 360 360 360 360 fbus tbus rateA rateB rateC ratio angle status angmin angmax 8 1 1 1 9 250 300 270 18 0 0 0 10 10 10 10 19 0 0 0 11 0 0 0 12 0 0 0 20 0 0 0 21 0 0 0 bus Pg Qg Qmax Qmin Vg mBase status Pmax Pmin Pc1 Pc2 300 -300 1 300 -300 1 300 -300 1 15 0 0 0 16 0 0 0 163 0 Qc1min Qc1max Qc2min Qc2max ramp_agc ramp_10 ramp_30 ramp_q apf 0.092 0.158 0.0119 0.1008 0.209 0.0085 0.072 0.149 0 0.032 0.01 0.0625 0 0.161 0.306 0.085 0.176 根据参数矩阵,可以推测出case9的电力系统单线图,如图1.1所示。该系统是一个环形网络,包含三个带有发电机的母线,其中母线1是平衡节点,母线2和3均为PV节点,其他的母线都是PQ节点。所有的母线电压初始幅值均设置为1(p.u.),相角为0度,电压基准值为345kV。系统包含3个负荷,分别是母线5上的负荷为90+j30(MVA),母线7上的负荷为100+j35(MVA),母线9上的负荷为125+j50(MVA)。支路1-4,3-6,8-2只有电抗值,电阻和电纳均为0,可以推测该支路为变压器支路的等效。

–4–

G1x?0.057690?j30?MVA?14r?0.01x?0.085b?0.176r?0.017x?0.092b?0.1585r?0.039x?0.17b?0.358x?0.0586G36r?0.0119x?0.1008b?0.2093P=85MW9125?j50?MVA?r?0.032x?0.161b?0.306r?0.00857x?0.072b?0.1498x?0.0625100?j35?MVA?2G2P=163MW图1.1 系统单线图

2 计算潮流并分析

2.1 调用runpf计算case9系统的潮流

在MATLAB命令行窗口输入“runpf”或“runpf(‘case9’)”,或者直接运行“runpf.m”,得到case9系统的潮流计算结果:

MATPOWER Version 5.1, 20-Mar-2015 -- AC Power Flow (Newton) Newton's method power flow converged in 4 iterations. Converged in 0.03 seconds

================================================================================ | System Summary | ================================================================================ How many? How much? P (MW) Q (MVAr) --------------------- ------------------- ------------- ----------------- Buses 9 Total Gen Capacity 820.0 -900.0 to 900.0 Generators 3 On-line Capacity 820.0 -900.0 to 900.0 Committed Gens 3 Generation (actual) 320.0 34.9 Loads 3 Load 315.0 115.0 Fixed 3 Fixed 315.0 115.0 Dispatchable 0 Dispatchable -0.0 of -0.0 -0.0 Shunts 0 Shunt (inj) -0.0 0.0 Branches 9 Losses (I^2 * Z) 4.95 51.31

–5–

Transformers 0 Branch Charging (inj) - 131.4 Inter-ties 0 Total Inter-tie Flow 0.0 0.0 Areas 1

Minimum Maximum

------------------------- -------------------------------- Voltage Magnitude 0.958 p.u. @ bus 9 1.003 p.u. @ bus 6 Voltage Angle -4.35 deg @ bus 9 9.67 deg @ bus 2 P Losses (I^2*R) - 2.46 MW @ line 8-9 Q Losses (I^2*X) - 16.74 MVAr @ line 8-2

================================================================================ | Bus Data | ================================================================================ Bus Voltage Generation Load # Mag(pu) Ang(deg) P (MW) Q (MVAr) P (MW) Q (MVAr) ----- ------- -------- -------- -------- -------- -------- 1 1.000 0.000* 71.95 24.07 - - 2 1.000 9.669 163.00 14.46 - - 3 1.000 4.771 85.00 -3.65 - - 4 0.987 -2.407 - - - - 5 0.975 -4.017 - - 90.00 30.00 6 1.003 1.926 - - - - 7 0.986 0.622 - - 100.00 35.00 8 0.996 3.799 - - - - 9 0.958 -4.350 - - 125.00 50.00 -------- -------- -------- -------- Total: 319.95 34.88 315.00 115.00

================================================================================ | Branch Data | ================================================================================ Brnch From To From Bus Injection To Bus Injection Loss (I^2 * Z) # Bus Bus P (MW) Q (MVAr) P (MW) Q (MVAr) P (MW) Q (MVAr) ----- ----- ----- -------- -------- -------- -------- -------- -------- 1 1 4 71.95 24.07 -71.95 -20.75 -0.000 3.32 2 4 5 30.73 -0.59 -30.55 -13.69 0.174 0.94 3 5 6 -59.45 -16.31 60.89 -12.43 1.449 6.31 4 3 6 85.00 -3.65 -85.00 7.89 0.000 4.24 5 6 7 24.11 4.54 -24.01 -24.40 0.095 0.81 6 7 8 -75.99 -10.60 76.50 0.26 0.506 4.29

–6–

7 8 2 -163.00 2.28 163.00 14.46 0.000 16.74 8 8 9 86.50 -2.53 -84.04 -14.28 2.465 12.40 9 9 4 -40.96 -35.72 41.23 21.34 0.266 2.26 -------- -------- Total: 4.955 51.31

2.2 潮流计算结果分析

Matpower工具箱的潮流计算结果由四部分组成:程序运行信息,系统概述,母线数据,支路数据。

其中,程序运行信号包含潮流计算类型,使用的迭代算法,迭代次数,所用时间。本次潮流计算是交流潮流计算,采用了Newton法,迭代了4次得到了符合精度要求的结果,耗时0.03s。

系统概述描述了系统的基本信息。包括系统元件的数量,元件的功率大小,电压和功率损耗的极值。如case9系统包含9个节点,3个发电机,3个负荷,9条支路。总装机容量820MW,在线容量820MW,实际发电 320MW,负荷消耗有功315MW,总网损4.95MW。母线9上电压幅值最小:0.958(p.u.),电压相角也最小:-4.35°,母线6上电压幅值最大:1.003(p.u.),母线2上相角最大:9.67°,支路8-9上消耗了最多的有功功率:2.46MW。

母线数据包含母线电压结果,发电机输出功率,负荷消耗功率,累计功率。

表2.1 潮流计算结果母线数据

母线 电压幅值编号 pu 1 1.000 2 1.000 3 1.000 4 0.987 5 0.975 6 1.003 7 0.986 8 0.996 9 0.958 电压相角deg 发电机有功MW 0.000* 71.95 9.669 163.00 4.771 85.00 -2.407 - -4.017 - 1.926 - 0.622 - 3.799 - -4.350 - 累计: 319.95 发电机无功MVar 24.07 14.46 -3.65 - - - - - - 34.88 负荷消耗有功MW - - - - 90.00 - 100.00 - 125.00 315.00 负荷消耗无功MVar - - - - 30.00 - 35.00 - 50.00 115.00 支路数据包含起始母线注入功率、终止母线注入功率和支路上的功率损耗。

–7–

表2.1 潮流计算结果支路数据

支路起始终止 起始母线注编号 母线 母线 入有功MW 1 1 4 71.95 2 4 5 30.73 3 5 6 -59.45 4 3 6 85.00 5 6 7 24.11 6 7 8 -75.99 7 8 2 -163.00 8 8 9 86.50 9 9 4 -40.96 起始母线注终止母线注终止母线注支路有功支路无功入无功MVar 入有功MW 入无功MVar 损耗MW 损耗MVar 24.07 -71.95 -20.75 -0.000 3.32 -0.59 -30.55 -13.69 0.174 0.94 -16.31 60.89 -12.43 1.449 6.31 -3.65 -85.00 7.89 0.000 4.24 4.54 -24.01 -24.40 0.095 0.81 -10.60 76.50 0.26 0.506 4.29 2.28 163.00 14.46 0.000 16.74 -2.53 -84.04 -14.28 2.465 12.40 -35.72 41.23 21.34 0.266 2.26 累计损耗: 4.955 51.31 通过以上数据可以发现系统的有功功率守恒:发电机发出的总有功功率为319.95MW,负荷消耗的总有功功率为315MW,网损为4.955MW。另外可以得到系统的潮流分布图如图2.1所示。

1.0?0?G171.95?j24.070.987?-2.407?30.73?j0.590.975?-4.017?71.95?j24.0771.95?j20.7530.55+j13.6941.23?j21.3414559.45?j16.3160.89?j12.431.003?1.92690?j30?MVA??1.0?4.771?85.0?j7.8924.11?j4.5440.96?j35.72685.0?j3.65G3385.0?j3.6524.01?j24.4075.99?j10.600.958?-4.350?984.04?j14.2870.986?0.622?125?j50?MVA?86.50?j2.53?76.50?j0.26100?j35?MVA?0.996?3.7998163.0?j2.28163.0?j14.461.0?9.669?2G2163.0?j14.46

图2.1 系统潮流分布图

–8–

3 迭代算法分析

3.1 牛顿法分析

打开newtonpf.m文档,可以看到matpower的牛顿法的介绍和代码。函数的输入参数包含系统的节点导纳矩阵,节点的注入复功率,初始电压,平衡节点、PV节点和PQ节点的标号列向量,以及包含终止误差、最大迭代次数和输出选项的结构体。返回节点电压,收敛标志和迭代次数。

通过分析可以得到matpower的牛顿法的程序流程图,如图3.1所示,这和一般的牛顿法潮流计算程序并没有什么区别。

开始给定精度和最大迭代次数给定电压初始值初始化迭代次数t=0计算有功和无功的误差?P??、?Q??tt检查是否达到迭代次数或精度否迭代次数加1,t=t+1 是返回节点电压,收敛标志和迭代次数结束 计算雅克比矩阵J?t?计算修正量dx修正各节点电压

–9–

图3.1 牛顿法潮流计算程序流程图

以下是newtonpf函数的每行程序的定义。

function [V, converged, i] = newtonpf(Ybus, Sbus, V0, ref, pv, pq, mpopt) %NEWTONPF 使用完整的牛顿法求解潮流

% [V, CONVERGED, I] = NEWTONPF(YBUS, SBUS, V0, REF, PV, PQ, MPOPT) % 通过分别给定完整系统的导纳矩阵(针对所有节点),节点的注入

% 复功率(针对所有节点),节点电压的初始值,和平衡节点、PV节点和PQ节 % 点标号的列向量,求解节点电压。节点电压矢量包含发电机节点(包括平衡 % 节点)的设定值和平衡节点的参考角度,以及幅度的大小和角度的初始值。 % MPOPT是一个MATPOWER选项结构体,可用于设置终止误差限,最大迭代次数和 % 输出选项(有关详细信息,请参阅MPOPTION)。如果未指定此参数,则使用 % 默认选项。最终返回节点电压相量,收敛标志以及迭代次数。 %

% 参考RUNPF.

%% 缺省参数设置

if nargin < 7 % 如果输入参数少于7项

mpopt = mpoption; % 则设置mpopt的缺省值为mpoption end

%% 求解选项

tol = mpopt.pf.tol; % 终止误差限 max_it = mpopt.pf.nr.max_it; % 最大迭代次数

%% 初始化

converged = 0; % 收敛标志位清零,不收敛 i = 0; V = V0;

% 迭代次数清零 % 初始电压值

Va = angle(V); % 电压相位初始值 Vm = abs(V); % 电压幅值初始值

%% 为了更新电压,建立电压的指针 npv = length(pv); % PV节点数目 npq = length(pq); % PQ节点数目

j1 = 1; j2 = npv; %% PV节点的电压相角 j3 = j2 + 1; j4 = j2 + npq; %% PQ节点的电压相角

–10–

fprintf('\\n - = .3e .3e', i, normP, normQ); end % 将进度信息输出到文档中

if normP < tol && normQ < tol % 误差是否都小于误差限 converged = 1;

% 收敛标志置1

if mpopt.verbose > 1 % 如果该标志位大于1,则保存进度信息到文档 fprintf('\\nConverged!\\n'); % 将该字符串输出到指定文档中 end end

%% 降低B矩阵维度

Bp = Bp([pv; pq], [pv; pq]); % 通过索引,降低Bp的维度 Bpp = Bpp(pq, pq); % 通过索引,降低Bpp的维度

%% 矩阵B的LU分解

if lu_vec % 选择系统支持的lu语句

[Lp, Up, pp, qp ] = lu(Bp, 'vector'); % 矩阵Bp的LU分解 [Lpp, Upp, ppp, qpp] = lu(Bpp, 'vector');% 矩阵Bpp的LU分解 [junk, iqp ] = sort(qp); % [~, iqp ] = sort(qp); % [~, iqpp] = sort(qpp); else

[Lp, Up, Pp] = lu(Bp); % 矩阵Bp的LU分解 [Lpp, Upp, Ppp] = lu(Bpp);% 矩阵Bpp的LU分解 end

%% 进行P和Q迭代

while (~converged && i < max_it) %不收敛并且小于最大迭代次数 %% 更新迭代次数

i = i + 1; % 迭代次数加1

%%----- 进行P迭代,更新Va -----

if lu_vec % 判断之前进行的lu分解操作,以便进行对应的后续操作 dVa = -( Up \\ (Lp \\ P(pp)) ); % 求电压相角的修正量 dVa = dVa(iqp); % 对电压相角的修正量向量重新排序 else

dVa = -( Up \\ (Lp \\ (Pp * P))); % 求电压相角的修正量 end

% 行向量qp的排序 % junk没有用到,用~代替 % junk没有用到,用~代替

[junk, iqpp] = sort(qpp); % 行向量qpp的排序

–16–

%% 更新电压

Va([pv; pq]) = Va([pv; pq]) + dVa; % 更新电压相角 V = Vm .* exp(1j * Va); % 更新电压值

%% 计算误差

mis = (V .* conj(Ybus * V) - Sbus) ./ Vm; % 计算误差 P = real(mis([pv; pq])); % delta(P) 有功误差 Q = imag(mis(pq)); % delta(Q) 无功误差

%% 校验误差

normP = norm(P, inf); % P的无穷范数(等效于取最大值) normQ = norm(Q, inf); % Q的无穷范数(等效于取最大值)

if mpopt.verbose > 1 % 如果该标志位大于1,则保存进度信息到文档 fprintf('\\n P = .3e .3e', i, normP, normQ); end % 将进度信息输出到文档中

if normP < tol && normQ < tol % 误差是否小于误差限 converged = 1; % 收敛标志置1

if mpopt.verbose % 如果该标志位不等于0,则保存最终信息到文档

fprintf('\\nFast-decoupled power flow converged in %d P-iterations and %d Q-iterations.\\n', i, i-1);

end % 将该字符串输出到指定文档中 break; % 跳出循环,结束迭代 end

%%----- 进行Q迭代,更新Vm -----

if lu_vec %判断之前进行的lu分解操作,以便进行对应的后续操作 dVm = -( Upp \\ (Lpp \\ Q(ppp)) ); %求电压幅值的修正量 dVm = dVm(iqpp); % 对电压幅值的修正量向量重新排序 else

dVm = -( Upp \\ (Lpp \\ (Ppp * Q)) ); %求电压幅值的修正量 end

%% 更新电压

Vm(pq) = Vm(pq) + dVm; % 更新电压相角 V = Vm .* exp(1j * Va); % 更新电压值

%% 计算误差

–17–

mis = (V .* conj(Ybus * V) - Sbus) ./ Vm; % 计算误差 P = real(mis([pv; pq])); % delta(P) 有功误差 Q = imag(mis(pq)); % delta(Q) 无功误差

%% 校验误差

normP = norm(P, inf); % P的无穷范数(等效于取最大值) normQ = norm(Q, inf); % Q的无穷范数(等效于取最大值)

if mpopt.verbose > 1 % 如果该标志位大于1,则保存进度信息到文档 fprintf('\\n Q = .3e .3e', i, normP, normQ); end % 将进度信息输出到文档中

if normP < tol && normQ < tol % 误差是否小于误差限 converged = 1; % 收敛标志置1

if mpopt.verbose % 如果该标志位不等于0,则保存最终信息到文档

fprintf('\\nFast-decoupled power flow converged in %d P-iterations and %d Q-iterations.\\n', i, i);

end % 将该字符串输出到指定文档中 break; % 跳出循环,结束迭代 end end

if mpopt.verbose % 如果该标志位不等于0,则保存最终信息到文档

if ~converged % 如果收敛标志为0,即超出了迭代次数,则输出不收敛的信息到文档 fprintf('\\nFast-decoupled power flow did not converge in %d iterations.\\n', i); end end

4 病态潮流分析

4.1 重负荷导致的病态潮流

如图4.1所示,将原9节点的系统9#母线上的负荷由原来的125+j50改为125+j300,便构成了一个病态问题。如表4.1所示,逐渐增大9#母线上的负荷,可以清楚地发现节点电压的幅值迅速减小,相位逐渐滞后,牛顿法迭代次数迅速增大,直到问题不收敛,雅克比矩阵的条件数也迅速增大。经过仿真分析,可以发现,雅克比矩阵的条件数最大达到了1?106,所以修正方程是一个病态方程。该问题在给定的运行条件下,潮流方程无解,如果想让系统有解,则必须调整系统的参数,使得系统回到有解区域。

–18–

表4.1 9节点系统9#母线负荷对系统潮流计算的影响

负荷(MVA) 125+j50 125+j100 125+j150 125+j200 125+j250 125+j280 125+j300 节点电压(p.u.) 0.958?-4.350°0.907?-4.408° 0.850?-4.551° 0.780?-4.855° 0.684?-5.579° 0.574?-7.010° - r?0.017x?0.092b?0.158牛顿法迭代次数 4 4 4 5 5 7 迭代200次不收敛 90?j30?MVA?雅克比矩阵最大条件数 101 102 104 107 111 165 ?106 x?0.0586G1x?0.057614r?0.01x?0.085b?0.1765r?0.039x?0.17b?0.358G36r?0.0119x?0.1008b?0.2093P=85MW9125?j300?MVA?r?0.032x?0.161b?0.306r?0.00857x?0.072b?0.1498x?0.0625100?j35?MVA?2G2P=163MW图4.1 重负荷导致的病态问题系统单线图

通过设置断点、单步调试和查看变量等方式,可以清楚地看到9#节点重负荷情况下,系统潮流的计算过程。如表4.2所示。第7次迭代时,雅克比矩阵接近奇异,条件数急剧增大,节点电压也变得非常大,问题无解。

表4.2 9节点系统9#母线电压随迭代次数的变化

迭代次数 0 1 2 3 4 5 6 7 8 9#节点电压(p.u.) 1?0° 0.754?-2.965° 0.607?-5.548° 0.491?-7.970° 0.787?-1.644° 0.628?-4.950° 0.515?-7.425° 4.752?59.738° 2.558?30.695° 雅克比矩阵的条件数 - 99.05 108.28 116.62 472.34 107.17 114.69 8464.3 1596.9 –19–

9 10 11 12 13 14 15 16 17 18 1.416?173.727° 0.626?158.783° 0.125?73.611° 1.151?-120.745° 0.524?174.071° 0.060?48.981° 1.729?19.571° 0.808?17.927° 0.096?102.919° 0.005?-95.546° 9753.4 2367.7 276170 7697.4 598.7 989.3 5227.1 1416.2 13329 4813.0 4.2 小阻抗支路导致的病态潮流

还有一类病态问题是系统有解,但是由于潮流方程自身的一些原因或是算法本身不完善等,导致求不到解。比如系统包含小阻抗支路。如图4.2所示,将原9节点的系统支路4-9的电阻改为0,电抗改为10-9,便构成了一条小阻抗支路,通过潮流计算可以发现这个问题是个病态问题。

G1x?0.057690?j30?MVA?14r?0r?0.017x?0.092b?0.1585r?0.039x?0.17b?0.358x?0.0586G36r?0.0119x?0.1008b?0.2093P=85MWx?10b?0.176-99125?j50?MVA?r?0.032x?0.161b?0.306r?0.00857x?0.072b?0.1498x?0.0625100?j35?MVA?2G2P=163MW图4.2 小阻抗支路导致的病态问题系统单线图

使用牛顿法对该系统进行潮流计算,结果显示迭代了20次,系统不收敛。但是,通过跟踪调试可以发现,系统的电压在第4次迭代时便已经达到了很高的精度,只是因为存在一条小阻抗支路,导致雅克比矩阵的条件数达到了2.26?109(这和1x是同一个量级),导致了牛顿潮流病态。表4.3是节点电压的计算结果,支路功率无法计算。

–20–

表4.3 小阻抗支路导致的病态问题节点电压计算结果

节点号 节点电压幅值 节点电压相角 节点号 节点电压幅值 节点电压相角 1 1.000 0 6 1.0041 2.7728 2 1.000 10.9976 7 0.9894 1.7893 3 1.000 5.6163 8 1.0021 5.1625 4 0.9833 -2.4029 9 0.9833 -2.4029 5 0.9728 -3.7246

这类病态问题可以根据病态特性从节点或者支路进行针对性处理,或是采用数学类方法解决。例如,小阻抗病态问题可以用两个串联阻抗来模拟该阻抗,如图4.3所示,在支路4-9之间插入一个节点10,用两个阻抗合适的串联阻抗来模拟该小阻抗。其中,节点10的参数和节点4一样。

G1x?0.057690?j30?MVA?1r?0.2x??0.02b?0.176/24r?0.017x?0.092b?0.1585r?0.039x?0.17b?0.358x?0.0586G36r?0.0119x?0.1008b?0.2093P=85MW10r?0.032x?0.161b?0.306r?0.00857x?0.072b?0.149r??0.2-9x?0.02?10b?0.176/29125?j50?MVA?8x?0.0625100?j35?MVA?2G2P=163MW图4.3 小阻抗支路导致的病态问题系统单线图

得到如下结果:

MATPOWER Version 5.1, 20-Mar-2015 -- AC Power Flow (Newton) Newton's method power flow converged in 4 iterations. Converged in 0.02 seconds

================================================================================ | System Summary | ================================================================================ How many? How much? P (MW) Q (MVAr) --------------------- ------------------- ------------- -----------------

–21–

Buses 10 Total Gen Capacity 820.0 -900.0 to 900.0 Generators 3 On-line Capacity 820.0 -900.0 to 900.0 Committed Gens 3 Generation (actual) 318.2 32.1 Loads 3 Load 315.0 115.0 Fixed 3 Fixed 315.0 115.0 Dispatchable 0 Dispatchable -0.0 of -0.0 -0.0 Shunts 0 Shunt (inj) -0.0 0.0 Branches 10 Losses (I^2 * Z) 3.24 48.56 Transformers 0 Branch Charging (inj) - 131.5 Inter-ties 0 Total Inter-tie Flow 0.0 0.0 Areas 1

Minimum Maximum

------------------------- -------------------------------- Voltage Magnitude 0.906 p.u. @ bus 10 1.004 p.u. @ bus 6 Voltage Angle -3.83 deg @ bus 5 10.36 deg @ bus 2 P Losses (I^2*R) - 6.12 MW @ line 10-4 Q Losses (I^2*X) - 16.62 MVAr @ line 8-2

================================================================================ | Bus Data | ================================================================================ Bus Voltage Generation Load # Mag(pu) Ang(deg) P (MW) Q (MVAr) P (MW) Q (MVAr) ----- ------- -------- -------- -------- -------- -------- 1 1.000 0.000* 70.24 31.52 - - 2 1.000 10.360 163.00 5.27 - - 3 1.000 5.242 85.00 -4.70 - - 4 0.983 -2.360 - - - - 5 0.973 -3.829 - - 90.00 30.00 6 1.004 2.398 - - - - 7 0.989 1.261 - - 100.00 35.00 8 1.002 4.524 - - - - 9 0.983 -3.294 - - 125.00 50.00 10 0.906 2.556 - - - - -------- -------- -------- -------- Total: 318.24 32.09 315.00 115.00

================================================================================ | Branch Data | ================================================================================

–22–

Brnch From To From Bus Injection To Bus Injection Loss (I^2 * Z) # Bus Bus P (MW) Q (MVAr) P (MW) Q (MVAr) P (MW) Q (MVAr) ----- ----- ----- -------- -------- -------- -------- -------- -------- 1 1 4 70.24 31.52 -70.24 -28.10 0.000 3.41 2 4 5 27.77 -1.56 -27.62 -12.77 0.142 0.77 3 5 6 -62.38 -17.23 63.98 -10.75 1.604 6.99 4 3 6 85.00 -4.70 -85.00 8.94 0.000 4.25 5 6 7 21.02 1.80 -20.95 -21.97 0.070 0.59 6 7 8 -79.05 -13.03 79.60 2.88 0.546 4.62 7 8 2 -163.00 11.35 163.00 5.27 -0.000 16.62 8 8 9 83.40 -14.23 -81.19 -4.74 2.218 11.16 9 9 10 -43.81 -45.26 36.35 38.15 -7.461 0.75 10 10 4 -36.35 -38.15 42.47 29.67 6.118 -0.61 -------- -------- Total: 3.238 48.56

由此可见,使用具有正常X和R的两个串联支路来模拟小阻抗支路,一般可以得到正确的牛顿迭代法潮流计算结果。另外,改善后的系统雅克比矩阵的条件数在100左右,远小于之前的2.26?109。 (完)

–23–

本文来源:https://www.bwwdw.com/article/e515.html

Top