Y bus Example, cont`d

Download Report

Transcript Y bus Example, cont`d

ECE 476
POWER SYSTEM ANALYSIS
Lecture 11
YBus and Power Flow
Professor Tom Overbye
Department of Electrical and
Computer Engineering
Announcements

Homework #4 is due now
–

Homework 5 is due on Oct 4
–




5.26, 5.27, 5.28, 5.43, 3.4
3.12, 3.19, 27, 60
Oct 2 class (Tuesday) will be in 50 Everitt Lab
First exam is 10/9 in class; closed book, closed
notes, one note sheet and calculators allowed
Power plant, substation field trip, 10/11 during
class.
Start reading Chapter 6 for lectures 10 to 13
1
Bus Admittance Matrix or Ybus



First step in solving the power flow is to create what
is known as the bus admittance matrix, often call the
Ybus.
The Ybus gives the relationships between all the bus
current injections, I, and all the bus voltages, V,
I = Ybus V
The Ybus is developed by applying KCL at each bus
in the system to relate the bus current injections, the
bus voltages, and the branch impedances and
admittances
2
Ybus Example
Determine the bus admittance matrix for the network
shown below, assuming the current injection at each
bus i is Ii = IGi - IDi where IGi is the current injection into the
bus from the generator and IDi is the current flowing into the
load
3
Ybus Example, cont’d
By KCL at bus 1 we have
I1
IG1  I D1
I1  I12  I13
V1  V2 V1  V3


ZA
ZB
I1  (V1  V2 )YA  (V1  V3 )YB
1
(with Yj  )
Zj
 (YA  YB )V1  YA V2  YB V3
Similarly
I 2  I 21  I 23  I 24
 YA V1  (YA  YC  YD )V2  YC V3  YD V4
4
Ybus Example, cont’d
We can get similar relationships for buses 3 and 4
The results can then be expressed in matrix form
I  Ybus V
YA
YB
 I1  YA  YB
 I   Y
YA  YC  YD
YC
2
A
  
YC
YB  YC
 I 3   YB
I   0
YD
0
 4 
0  V1 
YD  V2 
 
0  V3 



YD  V4 
For a system with n buses, Ybus is an n by n
symmetric matrix (i.e., one where Aij = Aji)
5
Ybus General Form
The diagonal terms, Yii, are the self admittance
terms, equal to the sum of the admittances of all
devices incident to bus i.
The off-diagonal terms, Yij, are equal to the negative
of the sum of the admittances joining the two buses.
With large systems Ybus is a sparse matrix (that is,
most entries are zero)
Shunt terms, such as with the p line model, only
affect the diagonal terms.
6
Modeling Shunts in the Ybus
Ykc
Since I ij  (Vi  V j )Yk  Vi
2
Ykc
Yii 
 Yk 
2
Rk  jX k Rk  jX k
1
1
Note Yk 

 2
Z k Rk  jX k Rk  jX k Rk  X k2
Yiifrom other lines
7
Two Bus System Example
Yc
(V1  V2 )
I1 
 V1
Z
2
1
 12  j16
0.03  j 0.04
 I1 
12  j15.9 12  j16  V1 
 I    12  j16 12  j15.9  V 

 2
 2
8
Using the Ybus
If the voltages are known then we can solve for
the current injections:
Ybus V  I
If the current injections are known then we can
solve for the voltages:
1
Ybus
I  V  Zbus I
where Z bus is the bus impedance matrix
9
Solving for Bus Currents
For example, in previous case assume
 1.0 
V

0.8

j
0.2


Then
12  j15.9 12  j16   1.0   5.60  j 0.70 
 12  j16 12  j15.9  0.8  j 0.2    5.58  j 0.88


 

Therefore the power injected at bus 1 is
S1  V1I1*  1.0  (5.60  j 0.70)  5.60  j 0.70
*
S2  V2 I 2
 (0.8  j 0.2)  (5.58  j 0.88)  4.64  j 0.41
10
Solving for Bus Voltages
For example, in previous case assume
 5.0 
I


4.8


Then
1
12  j15.9 12  j16   5.0   0.0738  j 0.902 
 12  j16 12  j15.9   4.8   0.0738  j1.098

 
 

Therefore the power injected is
S1  V1I1*  (0.0738  j 0.902)  5  0.37  j 4.51
S2  V2 I 2*  (0.0738  j1.098)  (4.8)  0.35  j 5.27
11
Power Flow Analysis



When analyzing power systems we know neither
the complex bus voltages nor the complex current
injections
Rather, we know the complex power being
consumed by the load, and the power being injected
by the generators plus their voltage magnitudes
Therefore we can not directly use the Ybus equations,
but rather must use the power balance equations
12
Power Balance Equations
From KCL we know at each bus i in an n bus system
the current injection, I i , must be equal to the current
that flows into the network
I i  I Gi  I Di 
n
 Iik
k 1
Since I = Ybus V we also know
I i  I Gi  I Di 
n
 YikVk
k 1
The network power injection is then Si  Vi I i*
13
Power Balance Equations, cont’d
*
n


* *
Si 
 Vi   YikVk   Vi  YikVk
 k 1

k 1
This is an equation with complex numbers.
Sometimes we would like an equivalent set of real
power equations. These can be derived by defining
*
Vi I i
n
Yik
Gik  jBik
Vi
Vi e ji  Vi  i
 ik
i   k
Recall e j  cos  j sin 
14
Real Power Balance Equations
n
Si  Pi  jQi  Vi  Yik*Vk* 
k 1

n
 Vi Vk
k 1
n
j ik
V
V
e
(Gik  jBik )
 i k
k 1
(cos ik  j sin  ik )(Gik  jBik )
Resolving into the real and imaginary parts
Pi 
Qi 
n
 Vi Vk (Gik cosik  Bik sinik )  PGi  PDi
k 1
n
 Vi Vk (Gik sinik  Bik cosik )  QGi  QDi
k 1
15
Power Flow Requires Iterative Solution
In the power flow we assume we know Si and the
Ybus . We would like to solve for the V's. The problem
is the below equation has no closed form solution:
*
n


Si 
 Vi   YikVk   Vi  Yik*Vk*
 k 1

k 1
Rather, we must pursue an iterative approach.
Vi I i*
n
16
Gauss Iteration
There are a number of different iterative methods
we can use. We'll consider two: Gauss and Newton.
With the Gauss method we need to rewrite our
equation in an implicit form: x = h(x)
To iterate we first make an initial guess of x, x (0) ,
and then iteratively solve x (v +1)  h( x ( v ) ) until we
find a "fixed point", x,
ˆ such that xˆ  h(x).
ˆ
17
Gauss Iteration Example
Example: Solve x - x  1  0
x ( v 1)  1  x ( v )
Let k = 0 and arbitrarily guess x (0)  1 and solve
k
x
0
1
2
3
4
(v)
(v)
k
x
1
2
2.41421
5
6
7
2.61185
2.61612
2.61744
2.55538
2.59805
8
9
2.61785
2.61798
18
Stopping Criteria
A key problem to address is when to stop the
iteration. With the Guass iteration we stop when
x ( v )  
with x ( v )
x ( v 1)  x ( v )
If x is a scalar this is clear, but if x is a vector we
need to generalize the absolute value by using a norm
x ( v )
j

Two common norms are the Euclidean & infinity
x 2 
n
2

x
 i
i 1
x   max i x i
19
Gauss Power Flow
We first need to put the equation in the correct form
n


 Vi   YikVk   Vi  Yik*Vk*
 k 1

k 1
Si  Vi I i*
*
Si

S*i

*
Vi
*
n
 Vi
*
Vi I i
*
n
 YikVk
k 1
n
 YikVk
k 1
 YiiVi 
 Vi
*
n
 YikVk
k 1
n

k 1,k i
YikVk
n

1  S*i
Vi 
 *   YikVk 

Yii  V
k 1,k i

i
20
Gauss Two Bus Power Flow Example
A 100 MW, 50 Mvar load is connected to a generator
through a line with z = 0.02 + j0.06 p.u. and line
charging of 5 Mvar on each end (100 MVA base).
Also, there is a 25 Mvar capacitor at bus 2. If the
generator voltage is 1.0 p.u., what is V2?
SLoad = 1.0 + j0.5 p.u.
21
Gauss Two Bus Example, cont’d
The unknown is the complex load voltage, V2 .
To determine V2 we need to know the Ybus .
1
 5  j15
0.02  j 0.06
5  j14.95 5  j15 
Hence Ybus  


5

j
15
5

j
14.70


( Note B22  - j15  j 0.05  j 0.25)
22
Gauss Two Bus Example, cont’d
n

1  S*2
V2 
 *   YikVk 
Y22  V2 k 1,k i

 -1  j 0.5

1
V2 
 (5  j15)(1.00) 

*
5  j14.70  V2

Guess V2(0)  1.00 (this is known as a flat start)
v
0
1
2
V2( v )
1.000  j 0.000
0.9671  j 0.0568
0.9624  j 0.0553
v
3
4
V2( v )
0.9622  j 0.0556
0.9622  j 0.0556
23
Gauss Two Bus Example, cont’d
V2  0.9622  j 0.0556  0.9638  3.3
Once the voltages are known all other values can
be determined, such as the generator powers and the
line flows
S1*  V1* (Y11V1  Y12V2 )  1.023  j 0.239
In actual units P1  102.3 MW, Q1  23.9 Mvar
2
The capacitor is supplying V2 25  23.2 Mvar
24
Slack Bus




In previous example we specified S2 and V1 and
then solved for S1 and V2.
We can not arbitrarily specify S at all buses because
total generation must equal total load + total losses
We also need an angle reference bus.
To solve these problems we define one bus as the
"slack" bus. This bus has a fixed voltage magnitude
and angle, and a varying real/reactive power
injection.
25
Gauss with Many Bus Systems
With multiple bus systems we could calculate
new Vi ' s as follows:
Vi( v 1)

n
1  S*i
 ( v )*   YikVk( v ) 


Yii  V
k

1,
k

i
 i

 hi (V1( v ) ,V2( v ) ,...,Vn(v ) )
But after we've determined Vi( v 1) we have a better
estimate of its voltage , so it makes sense to use this
new value. This approach is known as the
Gauss-Seidel iteration.
26
Gauss-Seidel Iteration
Immediately use the new voltage estimates:
V2(v 1)  h2 (V1 ,V2(v ) ,V3( v ) ,,Vn(v ) )
V3(v 1)  h2 (V1 ,V2(v 1) ,V3(v ) ,,Vn( v ) )
V4(v 1)  h2 (V1 ,V2(v 1) ,V3(v 1) ,V4(v ) ,Vn(v ) )
Vn(v 1)  h2 (V1 ,V2( v 1) ,V3( v 1) ,V4( v 1) ,Vn( v ) )
The Gauss-Seidel works better than the Gauss, and
is actually easier to implement. It is used instead
of Gauss.
27
Three Types of Power Flow Buses

There are three main types of power flow buses
–
–
–
Load (PQ) at which P/Q are fixed; iteration solves for
voltage magnitude and angle.
Slack at which the voltage magnitude and angle are fixed;
iteration solves for P/Q injections
Generator (PV) at which P and |V| are fixed; iteration
solves for voltage angle and Q injection
 special coding is needed to include PV buses in the
Gauss-Seidel iteration
28
Inclusion of PV Buses in G-S
To solve for Vi at a PV bus we must first make a
guess of Qi :
n
Si*  Vi*  YikVk  Pi  jQi
k 1
Hence Qi( v )
 ( v )* n
(v ) 
  Im Vi  YikV 
k


k 1
In the iteration we use Si( v )  Pi  jQi( v )
29
Inclusion of PV Buses, cont'd
Tentatively solve for Vi( v 1)
Vi( v 1)

n
1  Si( v )*
 ( v )*   YikVk( v ) 


Yii  V
k

1,
k

i
 i

But since Vi is specified, replace Vi( v 1) by Vi
30
Two Bus PV Example
Consider the same two bus system from the previous
example, except the load is replaced by a generator
z = 0.02 + j 0.06
Bus 1
(slack bus)
V1 = 1.0
Bus 2
V2 = 1.05
P2 = 0 MW
31
Two Bus PV Example, cont'd

1  S2*
V2 
 *  Y21V1 
Y22  V2

Q2   Im[Y21V1V2*  Y22V2V2* ]
Guess V2  1.050
v
S2( v )
V2( v 1)
V2( v 1)
0 0  j 0.457 1.045  0.83 1.050  0.83
1 0  j 0.535 1.049  0.93 1.050  0.93
2 0  j 0.545 1.050  0.96 1.050  0.96
32
Generator Reactive Power Limits




The reactive power output of generators varies to
maintain the terminal voltage; on a real generator
this is done by the exciter
To maintain higher voltages requires more reactive
power
Generators have reactive power limits, which are
dependent upon the generator's MW output
These limits must be considered during the power
flow solution.
33
Generator Reactive Limits, cont'd


During power flow once a solution is obtained
check to make generator reactive power output is
within its limits
If the reactive power is outside of the limits, fix Q at
the max or min value, and resolve treating the
generator as a PQ bus
–
–

this is know as "type-switching"
also need to check if a PQ generator can again regulate
Rule of thumb: to raise system voltage we need to
supply more vars
34
Accelerated G-S Convergence
Previously in the Gauss-Seidel method we were
calculating each value x as
x ( v 1)  h( x ( v ) )
To accelerate convergence we can rewrite this as
x ( v 1)  x ( v )  h( x ( v ) )  x ( v )
Now introduce acceleration parameter 
x ( v 1)  x ( v )   (h( x ( v ) )  x ( v ) )
With  = 1 this is identical to standard gauss-seidel.
Larger values of  may result in faster convergence.
35
Accelerated Convergence, cont’d
Consider the previous example: x - x  1  0
x ( v 1)  x ( v )   (1  x ( v )  x ( v ) )
Comparison of results with different values of 
k
 1
  1.2
  1.5   2
0
1
1
1
1
1
2
2.20
2.5
3
2
2.4142
2.5399
2.6217
2.464
3
2.5554
2.6045
2.6179
2.675
4
2.5981
2.6157
2.6180
2.596
5
2.6118
2.6176
2.6180
2.626
36
Gauss-Seidel Advantages


Each iteration is relatively fast (computational order
is proportional to number of branches + number of
buses in the system
Relatively easy to program
37
Gauss-Seidel Disadvantages




Tends to converge relatively slowly, although this
can be improved with acceleration
Has tendency to miss solutions, particularly on large
systems
Tends to diverge on cases with negative branch
reactances (common with compensated lines)
Need to program using complex numbers
38