Download Multimachine Simulation

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Islanding wikipedia , lookup

Electric power system wikipedia , lookup

Electric machine wikipedia , lookup

Current source wikipedia , lookup

Variable-frequency drive wikipedia , lookup

Buck converter wikipedia , lookup

Electrification wikipedia , lookup

Three-phase electric power wikipedia , lookup

Power engineering wikipedia , lookup

Alternating current wikipedia , lookup

Transcript
ECE 576 – Power System
Dynamics and Stability
Lecture 19: Multimachine Simulation
Prof. Tom Overbye
Dept. of Electrical and Computer Engineering
University of Illinois at Urbana-Champaign
[email protected]
1
Announcements
•
•
•
•
Read Chapter 7
Homework 6 is due on Tuesday April 15
A useful reference is B. Stott, "Power System Dynamic
Response Calculations," Proc. IEEE, vol. 67, pp. 219241
Another key reference is J.M. Undrill, "Structure in the
Computation of Power-System Nonlinear Dynamic
Response," IEEE Trans. Power App. and Syst., vol. 88,
pp. 1-6, January 1969.
2
Angle Reference
•
•
The initial angles are given by the angles from the
power flow, which are based on the slack bus's angle
As presented the transient stability angles are with
respect to a synchronous reference frame
– Sometimes this is fine, such as for either shorter studies, or
•
ones in which there is little speed variation
– Oftentimes this is not best since the when the frequencies are
not nominal, the angles shift from the reference frame
Other reference frames can be used, such as with
respect to a particular generator's value, which mimics
the power flow approach; the selected reference has no
impact on the solution
3
Subtransient Models
•
•
The Norton current injection approach is what is
commonly used with subtransient models in industry
If subtransient saliency is neglected (as is the case with
GENROU and GENSAL in which X"d=X"q) then the
current injection is
I Nd  jI Nq
Ed  jEq   q  j d  


Rs  jX 
Rs  jX 
– Subtransient saliency can be handled with this approach, but
it is more involved (see Arrillaga, Computer Analysis of
Power Systems, section 6.6.3)
4
Subtransient Models
•
•
•
•
Note, the values here are on the dq reference frame
We can now extend the approach introduced for the
classical machine model to subtransient models
Initialization is as before, which gives the d's and other
state values
Each time step is as before, except we use the d's for
each generator to transfer values between the network
reference frame and each machine's dq reference frame
– The currents provide the coupling
5
Two Bus Example with Two
GENROU Machine Models
•
Use the same system as before, except with we'll model
both generators using GENROUs
– For simplicity we'll make both generators identical except set
H1=3, H2=6; other values are Xd=2.1, Xq=0.5, X'd=0.2,
X'q=0.5, X"q=X"d=0.18, Xl=0.15, T'do = 7.0, T'qo=0.75,
T"do=0.035, T"qo=0.05; no saturation
– With no saturation the value of the d's are determined (as per
Lecture 11) by solving
E d  V   Rs  jX q  I
– Hence for generator 1
E1 d1  1.094611.59   j 0.5 1.052  18.2   1.43130.2
6
GENROU Block Diagram
E'q
E'd
7
Two Bus Example with Two
GENROU Machine Models
•
Using the approach from Lecture 11 the initial state
vector is  d 1   0.5273 
Note that this is a
    0.0 
 1 

   1.1948 
 Eq1

 


1
.
1554
 1d 1  

 2q1   0.2446 

 


E
0 


x(0 )   d 1   
d2
0.5392 

 

 2   0 
 E    0.9044 
 q2  

 1d 2   0.8928 

 



0
.
3594
 2q 2  

 Ed 2   0 
salient pole machine
with X'q=Xq; hence E'd
will always be zero
The initial currents in the
dq reference frame are
Id1=0.7872, Iq1=0.6988,
Id2=0.2314, Iq2=-1.0269
Initial values of "q1= -0.2236,
and "d1 = 1.179
8
Solving with Euler's
•
•
We'll again solve with Euler's, except with t set now to
0.01 seconds (because now we have a subtransient
model with faster dynamics)
– We'll also clear the fault at t=0.05 seconds
For the more accurate subtransient models the swing
equation is written in terms of the torques
dd i
 i  s  i
dt
2H i d i 2H i d i

 TMi  TEi  Di  i 
s dt
s dt
with TEi   d,i i qi  q,i i di
Other equations
are solved
based upon
the block
diagram
9
Norton Equivalent Current
Injections
•
The initial Norton equivalent current injections on the
dq base for each machine are
I Nd 1  jI Nq1
   j     0.2236  j1.179  (1.0)



q1
d1
jX 1
1
j 0.18
 6.55  j1.242
I ND1  jI NQ1  2.222  j 6.286
I Nd 2  jI Nq 2  4.999  j1.826
I ND 2  jI NQ 2  1  j 5.227
Recall the dq values
are on the machine's
reference frame and
the DQ values are on
the system reference
frame
10
Moving between DQ and dq
•
Recall
 I di   sin d
I   
 qi  cos d
•
 cos d   I Di 
 
sin d   I Qi 
And
 I Di   sin d
I   
 Qi    cos d
cos d   I di 
I 

sin d   qi 
The currents provide
the key coupling
between the
two reference
frames
11
Bus Admittance Matrix
•
The bus admittance matrix is as from before for the
classical models, except the diagonal elements are
augmented using
1
Yi 
Rs ,i  jX d,i
 1
 j0.18
Y  YN  

 0


   j10.101
j4.545 

1   j4.545  j10.101
j0.18 
0
12
Algebraic Solution Verification
•
To check the values solve (in the network reference
frame)
1
j4.545   2.222  j6.286 
  j10.101
V
  1  j5.227 
j4
.
545

j10
.
101

 

1.072  j0.22 


1
.
0


13
Results
•
The below graph shows the results for four seconds of
simulation, using Euler's with t=0.01 seconds
PowerWorld
case is
B2_GENROU_2GEN_EULER
45
40
35
30
25
20
15
10
5
0
-5
-10
-15
-20
-25
-30
-35
-40
0
0.5
1
b
c
d
e
f
g
1.5
2
Rotor Angle_Gen Bus 1 #1 g
b
c
d
e
f
2.5
3
3.5
4
Rotor Angle_Gen Bus 2 #1
14
Results for Longer Time
•
Simulating out 10 seconds indicates an unstable
solution, both using Euler's and RK2 with t=0.005, so
it is really unstable!
26,000
24,000
35,000
22,000
20,000
30,000
18,000
25,000
16,000
14,000
20,000
12,000
10,000
15,000
8,000
6,000
10,000
4,000
2,000
5,000
0
-2,000
0
-4,000
-6,000
-5,000
-8,000
-10,000
-10,000
-12,000
-14,000
-15,000
-16,000
0
1
2
b
c
d
e
f
g
3
4
5
Rotor Angle_Gen Bus 1 #1 g
b
c
d
e
f
6
7
8
Rotor Angle_Gen Bus 2 #1
Euler's with t=0.01
9
10
0
1
2
b
c
d
e
f
g
3
4
5
Rotor Angle_Gen Bus 1 #1 g
b
c
d
e
f
6
7
8
9
10
Rotor Angle_Gen Bus 2 #1
RK2 with t=0.005
15
Adding More Models
•
•
In this situation the case is unstable because we have
not modeled exciters
To each generator add an EXST1 with TR=0, TC=TB=0,
Kf=0, KA=100, TA=0.1
– This just adds one differential equation per generator

dEFD
1

K A VREF  Vt   EFD
dt
TA

16
Two Bus, Two Gen With Exciters
•
Below are the initial values for this case from
PowerWorld
Because of
the zero
values the
other
differential
equations for
the exciters
are included
but treated as
ignored
Case is B2_GENROU_2GEN_EXCITER
17
Viewing the States
•
PowerWorld allows one to single-step through a
solution, showing the f(x) and the K1 values
– This is mostly used for education or model debugging
Derivatives shown are evaluated at the end of the time step 18
Two Bus Results with Exciters
•
Below graph shows the angles with t=0.01 and a fault
clearing at t=0.05 using Euler's
– With the addition of the exciters case is now stable
45
40
35
30
25
20
15
10
5
0
-5
-10
-15
-20
-25
-30
-35
0
1
2
b
c
d
e
f
g
3
4
5
Rotor Angle_Gen Bus 1 #1 g
b
c
d
e
f
6
7
8
9
10
Rotor Angle_Gen Bus 2 #1
19
Constant Impedance Loads
•
•
The simplest approach for modeling the loads is to treat
them as constant impedances, embedding them in the
bus admittance matrix
– Only impact the Ybus diagonals
The admittances are set based upon their power flow
values, scaled by the inverse of the square of the power
flow bus voltage
In PowerWorld the
*
Sload ,i  Vi I load
,i  Vi
Gload ,i  jBload ,i 
2
G
load ,i
 jBload ,i 
Sload ,i
Vi
2
default load model is
specified on Transient
Stability, Options,
Power System Model
Note the positive sign comes from
the sign convention on Iload,i
20
Example 7.4 Case (WSCC 9 Bus)
•
PowerWorld Case Example_7_4 duplicates the example
7.4 case from the book, with the exception of using
different generator models
Bus 5 Example: Without the load Y55  2.553 - j17.339
Sload ,5  1.25  j0.5 and V5 =0.996
Y55 = 2.553 - j17.579 
 1.25  j0.5   3.813  j17.843
0.996
2
21
Nonlinear Network Equations
•
With constant impedance loads the network equations
can usually be written with I independent of V, then they
can be solved directly (as we've been doing)
V  Y 1 Ι (x)
•
•
•
In general this is not the case, with constant power loads
one common example
Hence a nonlinear solution with Newton's method is used
We'll generalize the dependence on the algebraic
variables, replacing V by y since they may include other
values beyond just the bus voltages
22
Nonlinear Network Equations
•
•
Just like in the power flow, the complex equations are
rewritten, here as a real current and a reactive current
YV – I(x,y) = 0
This is a rectangular
The values for bus i are
formulation; we also
g Di (x, y )    GikVDk  BikVQK   I NDi  0
n
k 1
gQi (x, y )    GikVQk  BikVDK   I NQi  0
n
•
•
could have written
the equations in
polar form
k 1
For each bus we add two new variables and two new
equations
If an infinite bus is modeled then its variables and
equations are omitted since its voltage is fixed
23
Nonlinear Network Equations
•
The network variables and equations are then
VD1 
V 
 Q1 
VD 2 
y



VDn 


VQn 
 n

G
V

B
V

I
(
x,y
)

0
1k QK 
ND1
   1k Dk

 k 1

 n

   GikVQk  BikVDK   I NQ1 (x,y )  0 
 k 1

n

   G2 kVDk  B2 kVQK   I ND 2 (x,y )  0 
g (x, y )   k 1





n


G
V

B
V

I
(
x,y
)

0
nk QK 
NDn
   nk Dk

k 1


 n

G
V

B
V

I
(
x,y
)

0
nk DK 
NQn
   nk Qk

 k 1

24
Nonlinear Network Equation
Newton Solution
The network equations are solved using
a similar procedure to that of the
Netwon-Raphson power flow
Set v  0; make an initial guess of y, y ( v )
While g (y
(v )
)   Do
y ( v 1)  y ( v )  J (y ( v ) ) 1 g (y ( v ) )
v
 v 1
End While
25
Network Equation Jacobian Matrix
•
The most computationally intensive part of the
algorithm is determining and factoring the Jacobian
matrix, J(y)
 g D1 (x, y )
 V
D1

 gQ1 (x, y )

J (y )   VD1


 gQn (x, y )
 V
D1

g D1 (x, y )
VQ1
gQ1 (x, y )
VQ1
gQn (x, y )
VQ1
g D1 ( x, y ) 
VQn 

gQ1 ( x, y ) 

VQn 


gQn ( x, y ) 
VQn 
26
Network Jacobian Matrix
•
•
The Jacobian matrix can be stored and computed using
a 2 by 2 block matrix structure
The portion of the 2 by 2 entries just from the Ybus are
 gˆ Di (x, y )
 V
Dj

 gˆ Qi (x, y )

 VDj
•
gˆ Di (x, y ) 
VQj  Gij

gˆ Qi (x, y )   Bij

VQj 
 Bij 

Gij 
The "hat" was
added to the
g functions to
indicate it is just
the portion from
the Ybus
The major source of the current vector voltage
sensitivity comes from non-constant impedance loads;
also dc transmission lines
27
Example: Constant Current and
Constant Power Load
•
As an example, assume the load at bus k is represented
with a ZIP model

PLoad ,k  PBaseLoad ,k Pz ,k V  Pi ,k Vk  Pp ,k
2
k


QLoad ,k  QBaseLoad ,k Qz ,k Vk2  Qi ,k Vk  Q p ,k
•

The base load
values are
set from the
power flow
The constant impedance portion is embedded in the Ybus

 
 Q   Q
PˆLoad ,k  PBaseLoad ,k Pi ,k Vk  Pp ,k  PBL ,i ,k Vk  PBL , p ,k

Qˆ Load ,k  QBaseLoad ,k Qi ,k Vk
•
p ,k
BL ,i , k

Vk  QBL , p ,k

Usually solved in per unit on network MVA base
28
Example: Constant Current and
Constant Power Load
•
The current is then
I Load ,k  I D , Load ,k  jI Q , Load ,k

 PˆLoad ,k  jQˆ Load ,k


Vk

 
*




2
2
2
2
 P
V

V

P

j
Q
V

V
BL ,i , k
DK
QK
BL , p , k
BL ,i , k
DK
QK  QBL , p , k


VDk  jVQk


•
 



Multiply the numerator and denominator by VDK+jVQK
to write as the real current and the reactive current
29
Example: Constant Current and
Constant Power Load
I D , Load ,k 
I Q , Load ,k 
•
•
VDk PBL , p ,k  VQK QBL , p ,k
2
DK
V
V
2
QK
VQk PBL , p ,k  VDK QBL , p ,k
2
DK
V
V
2
QK


VDk PBL ,i ,k  VQK QBL ,i ,k
2
2
VDK
 VQK
VQk PBL ,i ,k  VDK QBL ,i ,k
2
2
VDK
 VQK
The Jacobian entries are then found by differentiating
with respect to VDK and VQK
– Only affect the 2 by 2 block diagonal values
Usually constant current and constant power models are
replaced by a constant impedance model if the voltage
goes too low, like during a fault
30
Example: 7.4.ZIP Case
•
Example 7.4 is modified so the loads are represented by
a model with 30% constant power, 30% constant current
and 40% constant impedance
– In PowerWorld load models can be entered in a number of
different ways; a tedious but simple approach is to specify a
model for each individual load
• Right click on the load symbol to display the Load Options
dialog, select Stability, and select WSCC to enter a ZIP
model, in which p1&q1 are the normalized about of
constant impedance load, p2&q2 the amount of constant
current load, and p3&q3 the amount of constant power load
Case is Example_7_4_ZIP
31
Example 7.4.ZIP One-line
Bus 2
163 MW
7 Mvar
Bus 7
Bus 8
Bus 9
Bus 3
1.016 pu
1.025 pu
1.026 pu
Bus 5
1.032 pu
0.996 pu
100 MW
Bus 6
1.025 pu
85 MW
-11 Mvar
1.013 pu
35 Mvar
125 MW
50 Mvar
Bus 4
1.026 pu
90 MW
30 Mvar
Bus1
1.040 pu
slack
72 MW
27 Mvar
32
Example 7.4.ZIP Bus 8 Load Values
•
As an example the values for bus 8 are given (per unit,
100 MVA base)
1.00  PBaseLoad ,8  0.4  1.016 2  0.3  1.016  0.3 
 PBaseLoad ,8  0.983
0.35  QBaseLoad ,8  0.4  1.016 2  0.3  1.016  0.3 
 QBaseLoad ,8  0.344
*
I D , Load ,8  jI Q , Load ,8


1  j0.35

  0.9887  j0.332
 1.0158  j0.0129 
33
Example: 7.4.ZIP Case
•
For this case the 2 by 2 block between buses 8 and 7 is
 1.155 9.784 
 9.784 1.155


These entries are
easily checked
with the Ybus
•
And between 8 and 9 is
•
The 2 by 2 block for the bus 8 diagonal is
 1.617 13.698 
 13.698 1.617 


 2.876 23.352 
 23.632 3.745 


The check here is
left for the student
34
Additional Comments
•
•
•
When coding Jacobian values, a good way to check that
the entries are correct is to make sure that for a small
perturbation about the solution the Newton's method
has quadratic convergence
When running the simulation the Jacobian is actually
seldom rebuilt and refactored
– If the Jacobian is not too bad it will still converge
To converge Newton's method needs a good initial
guess, which is usually the last time step solution
– Convergence can be an issue following large system
disturbances, such as a fault
35