您好,欢迎来到华佗健康网。
搜索
您的当前位置:首页matpower牛顿拉夫逊法计算机程序研究报告

matpower牛顿拉夫逊法计算机程序研究报告

来源:华佗健康网
- .

课程作业

牛顿-拉夫逊法计算机程序研究

课程名称:电力系统分析

指导教师:

姓 名:___学号:____________年级专业班级:_____________

提交日期 2014年1月12日

. word.zl.

- .

1概念

潮流计算是电力系统分析中的一种最根本的计算,它的任务是对给定的运行条件确定系统的运行状态,比方各母线上的电压幅值与相角、网络中的功率分布及功率损耗等。在简单电力网络中,一般可采取手工计算方法,如单端供电网络,给定首端电压以及末端功率,从末端向前推出功率损耗,再从首端向后推出电压损耗。然而,实际的电力系统十分复杂,少那么几十个节点,多那么上千节点,此时采取手工运算根本不可能实现运行要求,计算机代替手算的方法由此产生。它效劳于大系统,较之手算,速度快,结果准确,能够满足电力系统运行要求。本文主要研究了基于matlab的牛顿-拉夫逊潮流计算方法,结合书本例子,验证了该程序的实用性。

2分析方法

网络方程式〔如节点方程〕是潮流计算的根底方程式。如果能够给出电压源〔或电流源〕,直接求解网络方程就可以求得网络电流和电压的分布。但是在潮流计算中,在网络的运行状态确认以前,无论是电源的电势,还是节点的注入电流都是无法事先给定的。 对于一个三节点简单电力系统,其网络方程为:

〔1〕

将节点电流用节点功率与电压表示后代入上式,这样n节点系统的潮流方程为

=

YVijj1n**j (i=1,2,…,n) 〔2〕

将上述方程的实部,虚局部开,对于每一个节点课的两个实数方程,但是变量仍有4个,P,Q,V, 。我们需要给定其中两个,这样方程就有解了。按给定量的不同,分为PQ节点〔又叫负荷节点〕,PV节点〔又叫电压控制节点〕,还有平衡节点〔给定V,〕。下面采用的方法,是将节点电压表示为极坐标形式

ViViVi(cosijsini) 〔3〕

将〔3〕带入〔2〕可得与的表达式,即由电压幅值,相角计算不平衡量的公式。 具体有下述两种方法: 1〕直角坐标算法:

给定e(k),f(k),算出△P(k),△Q(k),然后与预设偏差作比拟,如果符合那么进展全网潮流计算,如果不符合,那么用雅各比矩阵算出△e(k),△f(k),修正得e(k+1),f(k+1),重新计算△P(k+1),△Q(k+1〕并与预设值比拟。 2〕极坐标算法:

. word.zl.

·- .

给定V〔k〕,δ〔k〕,算出△P(k),△Q(k),然后与预设偏差作比拟,如果符合那么进展全网潮流计算,如果不符合,那么用雅各比矩阵算出△V(k),△δ(k),修正得V(k+1),δ(k+1),重新计算△P(k+1),△Q(k+1〕并与预设值比拟。

3具体例子

以?电力系统分析?〔何仰赞著〕61页例11-5为例进展验证。采用极坐标法。

G4S4-j70.77-j70.77S220.08+j0.4-j52.08-j65.450.12+j0.500.1+j0.4-j65.45-j52.0831J2.727S1j0.273j3GS3等效电力网络图

首先用busdata(节点矩阵)矩阵描述1到4号节点的数据: Busdata

从左到右依次为bus_i〔节点号〕type〔节点类型〕 Pd〔负荷需求有功功率/MVA〕Qd〔符合需求无功功率/MVar〕Gs(并联电导的功率/MVA) Bs(并联电纳的功率/MVar) area〔电力区域号〕 Vm〔节点电压幅值〕Va〔节点电压相角〕baseKV〔节点处实际电压/kV〕 zone(损耗区域) Vmax〔最大电压幅值〕 Vmin〔最小电压幅值〕

mpc.bus=[1 1 30 18 0 0 1 1 0 110 1 1.1 0.9 2 1 55 13 0 0 1 1 0 110 1 1.1 0.9 3 2 0 0 0 0 1 1.1 0 110 1 1.1 0.9 4 3 0 0 0 0 1 1.05 0 110 1 1.1 0.9];

然后用gendata(电机矩阵)描述系统输入 Generator data

bus〔节点号〕 Pg〔发电机发出有功/MVA〕 Qg(发电机发出无功/MVar) Qmax〔最大发出无功〕 Qmin〔最小发出无功〕Vg〔给定电压幅值标幺〕 mBase〔电机容量/MVA〕 status(运行状态) Pmax〔最大发出有功/MVA〕Pmin(最小发出有功/MVA) Pc1(PQ性能曲线下的实际输出功率) Pc2〔PQ性能曲线上的实际输出功率〕 Qc1min〔pc1下最小输出功率〕 Qc1max〔pc1下最大输出功率〕 Qc2min〔pc2下最小输出功率〕 Qc2max〔pc2下最大输出功率〕 ramp_agc〔负荷跟踪/ AGC斜坡率〕 ramp_10〔10分钟储藏斜坡率〕 ramp_30 〔30

. word.zl.

- .

分钟储藏斜坡率〕ramp_q〔2秒功率曲线斜率〕 apf〔区域参与因素〕

mpc.gen=[3 50 0 300 -300 1.1 100 1 250 10 0 0 0 0 0 0 0 0 0 0 0 4 0 0 300 -300 1.05 100 1 250 10 0 0 0 0 0 0 0 0 0 0 0];

最后用branchdata〔支路矩阵〕描述系统输入

Branch data

fbus(始端节点) tbus〔末端节点〕 〔r全线路电阻〕 x〔全线路电抗〕 b〔全线路电纳〕 rateA〔长期评级〕 rateB〔短期评级〕 rateC〔紧急评级〕 ratio〔变压器支路变压器的变比〕 angle〔变压器相位转换角〕 status〔线路运行状态〕 angmin〔最小角度差〕 angmax〔最大角度差〕

mpc.branch=[1 2 0.1 0.4 0.0306 250 250 250 0 0 1 -360 360 3 1 0 0.2479 0 250 250 250 1.1 0 1 -360 360 1 4 0.12 0.5 0.0384 250 250 250 0 0 1 -360 360 2 4 0.08 0.4 0.0282 250 250 250 0 0 1 -360 360];

三个矩阵输入完毕后,一起保存在casebook.m文件下,并在开头加上mpc.version = '2';〔定义mpc版本〕,mpc.baseMVA = 100;〔设置基准功率〕。

执行makeYbus(100,mpc.bus,mpc.branch) 求得系统节点导纳矩阵如下:

ans =

(1,1) 1.0421 - 8.2434i (2,1) -0.5882 + 2.3529i (3,1) 0 + 3.6672i (4,1) -0.4539 + 1.11i (1,2) -0.5882 + 2.3529i (2,2) 1.0690 - 4.7274i (4,2) -0.4808 + 2.4038i (1,3) 0 + 3.6672i (3,3) 0 - 3.3338i

. word.zl.

- .

(1,4) -0.4539 + 1.11i (2,4) -0.4808 + 2.4038i (4,4) 0.9346 - 4.2616i

然后运行runpf(casebook) 得到如下潮流计算结果

MATPOWER Version 4.1, 14-Dec-2011 -- 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) --------------------- ------------------- ------------- -----------------

Buses 4 Total Gen Capacity 500.0 -600.0 to 600.0 Generators 2 On-line Capacity 500.0 -600.0 to 600.0 mitted Gens 2 Generation (actual) 86.8 35.8

Loads 2 Load 85.0 31.0 Fixed 2 Fixed 85.0 31.0 Dispatchable 0 Dispatchable -0.0 of -0.0 -0.0 Shunts 0 Shunt (inj) -0.0 0.0 Branches 4 Losses (I^2 * Z) 1.79 14.57 Transformers 1 Branch Charging (inj) - 9.8 Inter-ties 0 Total Inter-tie Flow 0.0 0.0 Areas 1

Minimum Maximum ------------------------- -------------------------------- Voltage Magnitude 0.965 p.u. bus 2 1.100 p.u. bus 3 Voltage Angle -6.45 deg bus 2 6.73 deg bus 3

. word.zl.

- .

P Losses (I^2*R) - 0.97 MW line 2-4 Q Losses (I^2*X) - 6.41 MVAr line 3-1

================================================================================ | Bus Data |

================================================================================

Bus Voltage Generation Load # Mag(pu) Ang(deg) P (MW) Q (MVAr) P (MW) Q (MVAr) ----- ------- -------- -------- -------- -------- --------

1 0.985 -0.500 - - 30.00 18.00 2 0.965 -6.450 - - 55.00 13.00 3 1.100 6.731 50.00 9.34 - - 4 1.050 0.000* 36.79 26.47 - - -------- -------- -------- --------

Total: 86.79 35.81 85.00 31.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 2 24.62 -1.47 -24.00 1.06 0.625 2.50 2 3 1 50.00 9.34 -50.00 -2.93 -0.000 6.41 3 1 4 -4.62 -13.61 4.82 10.45 0.197 0.82 4 2 4 -31.00 -14.06 31.97 16.02 0.966 4.83 -------- -------- Total: 1.788 14.57 其中节点电压幅值与相角为 # Mag(pu) Ang(deg) ----- ------- -------- --------

1 0.985 -0.500 2 0.965 -6.450 3 1.100 6.731 4 1.050 0.000* 功率损耗为

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

. word.zl.

- .

(MVAr)

----- ----- ----- -------- -------- -------- -------- -------- --------

1 1 2 24.62 -1.47 -24.00 1.06 0.625 2.50 2 3 1 50.00 9.34 -50.00 -2.93 -0.000 6.41 3 1 4 -4.62 -13.61 4.82 10.45 0.197 0.82 4 2 4 -31.00 -14.06 31.97 16.02 0.966 4.83 -------- -------- Total: 1.788 14.57 与书上一致。

所使用的牛顿-拉夫逊程序如下:〔列出核心程序〕

%% do Newton iterations while (~converged && i < max_it)

%% update iteration counter 增加迭代次数 i = i + 1;

%% evaluate Jacobian 再计算一次雅各比矩阵 [dSbus_dVm, dSbus_dVa] = dSbus_dV(Ybus, V);

j11 = real(dSbus_dVa([pv; pq], [pv; pq])); j12 = real(dSbus_dVm([pv; pq], pq)); j21 = imag(dSbus_dVa(pq, [pv; pq])); j22 = imag(dSbus_dVm(pq, pq));

J = [ j11 j12; j21 j22; ];

%% pute update step dx = -(J \\ F);

%% update voltage 更新电压 if npv

Va(pv) = Va(pv) + dx(j1:j2); end if npq

Va(pq) = Va(pq) + dx(j3:j4); Vm(pq) = Vm(pq) + dx(j5:j6); end

V = Vm .* exp(1j * Va);

. word.zl.

- .

Vm = abs(V); Va = angle(V);

%% evalute F(x) 更新F(x) mis = V .* conj(Ybus * V) - Sbus; F = [ real(mis(pv)); real(mis(pq)); imag(mis(pq)) ];

%% check for convergence 检查是否收敛 normF = norm(F, inf); if verbose > 1

fprintf('\\n%3d end if normF < tol converged = 1; if verbose

fprintf('\\nNewton''s method power flow converged in %d iterations.\\n', i); end end end

if verbose 如果迭代次数过多 if ~converged

fprintf('\\nNewton''s method power did not converge in %d iterations.\\n', i); end end

4结论

电力系统潮流计算机程序极大的减轻了人们进展潮流计算时的负担,快速而准确,较之于手工法有极大优势,缺点就是电机矩阵参数比拟难以获得,只有专业从业人员才可能有相关数据。

. word.zl.

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务