SynGen#
Synchronous generator group.
SynGen replaces StaticGen upon the initialization of dynamic studies. SynGen
and inverter-based resources contain parameters gammap
and gammaq
for splitting the initial power of a StaticGen into multiple dynamic ones.
gammap
, for example, is the active power ratio of the dynamic generator
to the static one. If a StaticGen is supposed to be replaced by one SynGen,
the gammap
and gammaq
should both be 1
.
It is critical to ensure that gammap
and gammaq
, respectively, of
all dynamic power sources sum up to 1.0. Otherwise, the initial power
injections imposed by dynamic sources will differ from the static ones. The
initialization will then fail with mismatches power injection equations
corresponding to bus a
and v
.
Common Parameters: u, name, Sn, Vn, fn, bus, M, D, subidx
Common Variables: omega, delta
Available models: GENCLS, GENROU, PLBVFU1
GENCLS#
Classical generator model.
Parameters#
Name |
Symbol |
Description |
Default |
Unit |
Properties |
---|---|---|---|---|---|
idx |
unique device idx |
||||
u |
\(u\) |
connection status |
1 |
bool |
|
name |
device name |
||||
bus |
interface bus id |
mandatory |
|||
gen |
static generator index |
mandatory |
|||
coi |
center of inertia index |
||||
coi2 |
center of inertia index |
||||
Sn |
\(S_n\) |
Power rating |
100 |
MVA |
|
Vn |
\(V_n\) |
AC voltage rating |
110 |
||
fn |
\(f\) |
rated frequency |
60 |
||
D |
\(D\) |
Damping coefficient |
0 |
power |
|
M |
\(M\) |
machine start up time (2H) |
6 |
non_zero,non_negative,power |
|
ra |
\(r_a\) |
armature resistance |
0 |
z |
|
xl |
\(x_l\) |
leakage reactance |
0 |
z |
|
xd1 |
\(x'_d\) |
d-axis transient reactance |
0.302 |
z |
|
kp |
\(k_p\) |
active power feedback gain |
0 |
||
kw |
\(k_w\) |
speed feedback gain |
0 |
||
S10 |
\(S_{1.0}\) |
first saturation factor |
0 |
||
S12 |
\(S_{1.2}\) |
second saturation factor |
1 |
||
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
||
subidx |
Generator idx in plant; only used by PSS/E data |
0 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
delta |
\(\delta\) |
State |
rotor angle |
rad |
v_str |
omega |
\(\omega\) |
State |
rotor speed |
pu (Hz) |
v_str |
Id |
\(Id\) |
Algeb |
d-axis current |
v_str |
|
Iq |
\(Iq\) |
Algeb |
q-axis current |
v_str |
|
vd |
\(vd\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(vq\) |
Algeb |
q-axis voltage |
v_str |
|
tm |
\(tm\) |
Algeb |
mechanical torque |
v_str |
|
te |
\(te\) |
Algeb |
electric torque |
v_str |
|
vf |
\(vf\) |
Algeb |
excitation voltage |
pu |
v_str |
XadIfd |
\(XadIfd\) |
Algeb |
d-axis armature excitation current |
p.u (kV) |
v_str |
Pe |
\(Pe\) |
Algeb |
active power injection |
v_str |
|
Qe |
\(Qe\) |
Algeb |
reactive power injection |
v_str |
|
psid |
\(psid\) |
Algeb |
d-axis flux |
v_str |
|
psiq |
\(psiq\) |
Algeb |
q-axis flux |
v_str |
|
a |
\(a\) |
ExtAlgeb |
Bus voltage phase angle |
||
v |
\(v\) |
ExtAlgeb |
Bus voltage magnitude |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
delta |
\(\delta\) |
State |
\(\delta_{0}\) |
omega |
\(\omega\) |
State |
\(u\) |
Id |
\(Id\) |
Algeb |
\(Id_{0} u\) |
Iq |
\(Iq\) |
Algeb |
\(Iq_{0} u\) |
vd |
\(vd\) |
Algeb |
\(u vd_{0}\) |
vq |
\(vq\) |
Algeb |
\(u vq_{0}\) |
tm |
\(tm\) |
Algeb |
\(tm_{0}\) |
te |
\(te\) |
Algeb |
\(tm_{0} u\) |
vf |
\(vf\) |
Algeb |
\(u vf_{0}\) |
XadIfd |
\(XadIfd\) |
Algeb |
\(u vf_{0}\) |
Pe |
\(Pe\) |
Algeb |
\(u \left(Id_{0} vd_{0} + Iq_{0} vq_{0}\right)\) |
Qe |
\(Qe\) |
Algeb |
\(u \left(Id_{0} vq_{0} - Iq_{0} vd_{0}\right)\) |
psid |
\(psid\) |
Algeb |
\(psid_{0} u\) |
psiq |
\(psiq\) |
Algeb |
\(psiq_{0} u\) |
a |
\(a\) |
ExtAlgeb |
|
v |
\(v\) |
ExtAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
delta |
\(\delta\) |
State |
\(2 \pi fn u \left(\omega - 1\right)\) |
|
omega |
\(\omega\) |
State |
\(u \left(- D \left(\omega - 1\right) - te + tm\right)\) |
\(M\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
Id |
\(Id\) |
Algeb |
\(Id xq + psid - vf\) |
Iq |
\(Iq\) |
Algeb |
\(Iq xq + psiq\) |
vd |
\(vd\) |
Algeb |
\(- u v \sin{\left(a - \delta \right)} - vd\) |
vq |
\(vq\) |
Algeb |
\(u v \cos{\left(a - \delta \right)} - vq\) |
tm |
\(tm\) |
Algeb |
\(- tm + tm_{0}\) |
te |
\(te\) |
Algeb |
\(- te + u \left(- Id psiq + Iq psid\right)\) |
vf |
\(vf\) |
Algeb |
\(u vf_{0} - vf\) |
XadIfd |
\(XadIfd\) |
Algeb |
\(- XadIfd + u vf_{0}\) |
Pe |
\(Pe\) |
Algeb |
\(- Pe + u \left(Id vd + Iq vq\right)\) |
Qe |
\(Qe\) |
Algeb |
\(- Qe + u \left(Id vq - Iq vd\right)\) |
psid |
\(psid\) |
Algeb |
\(- psid + u \left(Iq ra + vq\right)\) |
psiq |
\(psiq\) |
Algeb |
\(psiq + u \left(Id ra + vd\right)\) |
a |
\(a\) |
ExtAlgeb |
\(- u \left(Id vd + Iq vq\right)\) |
v |
\(v\) |
ExtAlgeb |
\(- u \left(Id vq - Iq vd\right)\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
p0 |
\(P_0\) |
\(gammap p0s\) |
ConstService |
q0 |
\(Q_0\) |
\(gammaq q0s\) |
ConstService |
_V |
\(V_c\) |
\(v e^{i a}\) |
ConstService |
_S |
\(S\) |
\(p_{0} - i q_{0}\) |
ConstService |
_I |
\(I_c\) |
\(\frac{_S}{\operatorname{conj}{\left(_V \right)}}\) |
ConstService |
_E |
\(E\) |
\(_I \left(ra + i xq\right) + _V\) |
ConstService |
_deltac |
\(\delta_c\) |
\(\log{\left(\frac{_E}{\left|{_E}\right|} \right)}\) |
ConstService |
delta0 |
\(\delta_0\) |
\(u \operatorname{im}{\left(_deltac\right)}\) |
ConstService |
vdq |
\(V_{dq}\) |
\(_V u e^{- _deltac + 0.5 i \pi}\) |
ConstService |
Idq |
\(I_{dq}\) |
\(_I u e^{- _deltac + 0.5 i \pi}\) |
ConstService |
Id0 |
\(I_{d0}\) |
\(\operatorname{re}{\left(Idq\right)}\) |
ConstService |
Iq0 |
\(I_{q0}\) |
\(\operatorname{im}{\left(Idq\right)}\) |
ConstService |
vd0 |
\(V_{d0}\) |
\(\operatorname{re}{\left(vdq\right)}\) |
ConstService |
vq0 |
\(V_{q0}\) |
\(\operatorname{im}{\left(vdq\right)}\) |
ConstService |
tm0 |
\(\tau_{m0}\) |
\(u \left(Id_{0} \left(Id_{0} ra + vd_{0}\right) + Iq_{0} \left(Iq_{0} ra + vq_{0}\right)\right)\) |
ConstService |
psid0 |
\(\psi_{d0}\) |
\(Iq_{0} ra u + vq_{0}\) |
ConstService |
psiq0 |
\(\psi_{q0}\) |
\(- Id_{0} ra u - vd_{0}\) |
ConstService |
vf0 |
\(v_{f0}\) |
\(Id_{0} xq + Iq_{0} ra + vq_{0}\) |
ConstService |
Config Fields in [GENCLS]
Option |
Symbol |
Value |
Info |
Accepted values |
---|---|---|---|---|
allow_adjust |
1 |
allow adjusting upper or lower limits |
(0, 1) |
|
adjust_lower |
0 |
adjust lower limit |
(0, 1) |
|
adjust_upper |
1 |
adjust upper limit |
(0, 1) |
|
vf_lower |
1 |
lower limit for vf warning |
||
vf_upper |
5 |
upper limit for vf warning |
GENROU#
Round rotor generator with quadratic saturation.
Notes#
Parameters:
xd2
andxq2
must be equal to pass initialization.
Parameters#
Name |
Symbol |
Description |
Default |
Unit |
Properties |
---|---|---|---|---|---|
idx |
unique device idx |
||||
u |
\(u\) |
connection status |
1 |
bool |
|
name |
device name |
||||
bus |
interface bus id |
mandatory |
|||
gen |
static generator index |
mandatory |
|||
coi |
center of inertia index |
||||
coi2 |
center of inertia index |
||||
Sn |
\(S_n\) |
Power rating |
100 |
MVA |
|
Vn |
\(V_n\) |
AC voltage rating |
110 |
||
fn |
\(f\) |
rated frequency |
60 |
||
D |
\(D\) |
Damping coefficient |
0 |
power |
|
M |
\(M\) |
machine start up time (2H) |
6 |
non_zero,non_negative,power |
|
ra |
\(r_a\) |
armature resistance |
0 |
z |
|
xl |
\(x_l\) |
leakage reactance |
0 |
z |
|
xd1 |
\(x'_d\) |
d-axis transient reactance |
0.302 |
z |
|
kp |
\(k_p\) |
active power feedback gain |
0 |
||
kw |
\(k_w\) |
speed feedback gain |
0 |
||
S10 |
\(S_{1.0}\) |
first saturation factor |
0 |
||
S12 |
\(S_{1.2}\) |
second saturation factor |
1 |
||
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
||
xd |
\(x_d\) |
d-axis synchronous reactance |
1.900 |
z |
|
xq |
\(x_q\) |
q-axis synchronous reactance |
1.700 |
z |
|
xd2 |
\({x''_d}\) |
d-axis sub-transient reactance |
0.300 |
z |
|
xq1 |
\({x'_q}\) |
q-axis transient reactance |
0.500 |
z |
|
xq2 |
\({x''_q}\) |
q-axis sub-transient reactance |
0.300 |
z |
|
Td10 |
\({T'_{d0}}\) |
d-axis transient time constant |
8 |
||
Td20 |
\({T''_{d0}}\) |
d-axis sub-transient time constant |
0.040 |
||
Tq10 |
\({T'_{q0}}\) |
q-axis transient time constant |
0.800 |
||
Tq20 |
\({T''_{q0}}\) |
q-axis sub-transient time constant |
0.020 |
||
subidx |
Generator idx in plant; only used by PSS/E data |
0 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
delta |
\(\delta\) |
State |
rotor angle |
rad |
v_str |
omega |
\(\omega\) |
State |
rotor speed |
pu (Hz) |
v_str |
e1q |
\(e1q\) |
State |
q-axis transient voltage |
v_str |
|
e1d |
\(e1d\) |
State |
d-axis transient voltage |
v_str |
|
e2d |
\(e2d\) |
State |
d-axis sub-transient voltage |
v_str |
|
e2q |
\(e2q\) |
State |
q-axis sub-transient voltage |
v_str |
|
Id |
\(Id\) |
Algeb |
d-axis current |
v_str |
|
Iq |
\(Iq\) |
Algeb |
q-axis current |
v_str |
|
vd |
\(vd\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(vq\) |
Algeb |
q-axis voltage |
v_str |
|
tm |
\(tm\) |
Algeb |
mechanical torque |
v_str |
|
te |
\(te\) |
Algeb |
electric torque |
v_str |
|
vf |
\(vf\) |
Algeb |
excitation voltage |
pu |
v_str |
XadIfd |
\(XadIfd\) |
Algeb |
d-axis armature excitation current |
p.u (kV) |
v_str |
Pe |
\(Pe\) |
Algeb |
active power injection |
v_str |
|
Qe |
\(Qe\) |
Algeb |
reactive power injection |
v_str |
|
psid |
\(psid\) |
Algeb |
d-axis flux |
v_str |
|
psiq |
\(psiq\) |
Algeb |
q-axis flux |
v_str |
|
psi2q |
\(psi2q\) |
Algeb |
q-axis air gap flux |
v_str |
|
psi2d |
\(psi2d\) |
Algeb |
d-axis air gap flux |
v_str |
|
psi2 |
\(\psi_{2}\) |
Algeb |
air gap flux magnitude |
v_str |
|
Se |
\(Se\) |
Algeb |
saturation output |
v_str |
|
XaqI1q |
\(XaqI1q\) |
Algeb |
q-axis reaction |
p.u (kV) |
v_str |
a |
\(a\) |
ExtAlgeb |
Bus voltage phase angle |
||
v |
\(v\) |
ExtAlgeb |
Bus voltage magnitude |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
delta |
\(\delta\) |
State |
\(\delta_{0}\) |
omega |
\(\omega\) |
State |
\(u\) |
e1q |
\(e1q\) |
State |
\(e1q0 u\) |
e1d |
\(e1d\) |
State |
\(e1d0 u\) |
e2d |
\(e2d\) |
State |
\(e2d0 u\) |
e2q |
\(e2q\) |
State |
\(e2q0 u\) |
Id |
\(Id\) |
Algeb |
\(Id_{0} u\) |
Iq |
\(Iq\) |
Algeb |
\(Iq_{0} u\) |
vd |
\(vd\) |
Algeb |
\(u vd_{0}\) |
vq |
\(vq\) |
Algeb |
\(u vq_{0}\) |
tm |
\(tm\) |
Algeb |
\(tm_{0}\) |
te |
\(te\) |
Algeb |
\(tm_{0} u\) |
vf |
\(vf\) |
Algeb |
\(u vf_{0}\) |
XadIfd |
\(XadIfd\) |
Algeb |
\(u vf_{0}\) |
Pe |
\(Pe\) |
Algeb |
\(u \left(Id_{0} vd_{0} + Iq_{0} vq_{0}\right)\) |
Qe |
\(Qe\) |
Algeb |
\(u \left(Id_{0} vq_{0} - Iq_{0} vd_{0}\right)\) |
psid |
\(psid\) |
Algeb |
\(psid_{0} u\) |
psiq |
\(psiq\) |
Algeb |
\(psiq_{0} u\) |
psi2q |
\(psi2q\) |
Algeb |
\(psi2q0 u\) |
psi2d |
\(psi2d\) |
Algeb |
\(psi2d0 u\) |
psi2 |
\(\psi_{2}\) |
Algeb |
\(u \left|{\psi_{20 dq}}\right|\) |
Se |
\(Se\) |
Algeb |
\(Se_{0} u\) |
XaqI1q |
\(XaqI1q\) |
Algeb |
\(0\) |
a |
\(a\) |
ExtAlgeb |
|
v |
\(v\) |
ExtAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
delta |
\(\delta\) |
State |
\(2 \pi fn u \left(\omega - 1\right)\) |
|
omega |
\(\omega\) |
State |
\(u \left(- D \left(\omega - 1\right) - te + tm\right)\) |
\(M\) |
e1q |
\(e1q\) |
State |
\(- XadIfd + vf\) |
\({T'_{d0}}\) |
e1d |
\(e1d\) |
State |
\(- XaqI1q\) |
\({T'_{q0}}\) |
e2d |
\(e2d\) |
State |
\(- Id \left(xd_{1} - xl\right) + e1q - e2d\) |
\({T''_{d0}}\) |
e2q |
\(e2q\) |
State |
\(Iq \left(- xl + xq_{1}\right) + e1d - e2q\) |
\({T''_{q0}}\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
Id |
\(Id\) |
Algeb |
\(Id xd_{2} - psi2d + psid\) |
Iq |
\(Iq\) |
Algeb |
\(Iq xq_{2} + psi2q + psiq\) |
vd |
\(vd\) |
Algeb |
\(- u v \sin{\left(a - \delta \right)} - vd\) |
vq |
\(vq\) |
Algeb |
\(u v \cos{\left(a - \delta \right)} - vq\) |
tm |
\(tm\) |
Algeb |
\(- tm + tm_{0}\) |
te |
\(te\) |
Algeb |
\(- te + u \left(- Id psiq + Iq psid\right)\) |
vf |
\(vf\) |
Algeb |
\(u vf_{0} - vf\) |
XadIfd |
\(XadIfd\) |
Algeb |
\(- XadIfd + u \left(Se psi2d + e1q + \left(xd - xd_{1}\right) \left(Id gd_{1} + e1q gd_{2} - e2d gd_{2}\right)\right)\) |
Pe |
\(Pe\) |
Algeb |
\(- Pe + u \left(Id vd + Iq vq\right)\) |
Qe |
\(Qe\) |
Algeb |
\(- Qe + u \left(Id vq - Iq vd\right)\) |
psid |
\(psid\) |
Algeb |
\(- psid + u \left(Iq ra + vq\right)\) |
psiq |
\(psiq\) |
Algeb |
\(psiq + u \left(Id ra + vd\right)\) |
psi2q |
\(psi2q\) |
Algeb |
\(e1d gq_{1} + e2q \left(1 - gq_{1}\right) - psi2q\) |
psi2d |
\(psi2d\) |
Algeb |
\(e1q gd_{1} + e2d gd_{2} \left(xd_{1} - xl\right) - psi2d\) |
psi2 |
\(\psi_{2}\) |
Algeb |
\(- \psi_{2}^{2} + psi2d^{2} + psi2q^{2}\) |
Se |
\(Se\) |
Algeb |
\(SAT_{B} SL_{z0} \left(- SAT_{A} + \psi_{2}\right)^{2} - Se \psi_{2}\) |
XaqI1q |
\(XaqI1q\) |
Algeb |
\(Se gqd psi2q - XaqI1q + e1d + \left(xq - xq_{1}\right) \left(- Iq gq_{1} + e1d gq_{2} - e2q gq_{2}\right)\) |
a |
\(a\) |
ExtAlgeb |
\(- u \left(Id vd + Iq vq\right)\) |
v |
\(v\) |
ExtAlgeb |
\(- u \left(Id vq - Iq vd\right)\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
p0 |
\(P_0\) |
\(gammap p0s\) |
ConstService |
q0 |
\(Q_0\) |
\(gammaq q0s\) |
ConstService |
gd1 |
\(\gamma_{d1}\) |
\(\frac{xd_{2} - xl}{xd_{1} - xl}\) |
ConstService |
gq1 |
\(\gamma_{q1}\) |
\(\frac{- xl + xq_{2}}{- xl + xq_{1}}\) |
ConstService |
gd2 |
\(\gamma_{d2}\) |
\(\frac{xd_{1} - xd_{2}}{\left(xd_{1} - xl\right)^{2}}\) |
ConstService |
gq2 |
\(\gamma_{q2}\) |
\(\frac{xq_{1} - xq_{2}}{\left(- xl + xq_{1}\right)^{2}}\) |
ConstService |
gqd |
\(\gamma_{qd}\) |
\(\frac{- xl + xq}{xd - xl}\) |
ConstService |
_S12 |
\(S_{1.2}\) |
\(S_{12} - _fS12 + 1\) |
ConstService |
SAT_E1 |
\(E^{1c}_{S_{AT}}\) |
\(1.0\) |
ConstService |
SAT_E2 |
\(E^{2c}_{S_{AT}}\) |
\(3.2 - 2 SAT_{zSE2}\) |
ConstService |
SAT_SE1 |
\(SE^{1c}_{S_{AT}}\) |
\(S_{10}\) |
ConstService |
SAT_SE2 |
\(SE^{2c}_{S_{AT}}\) |
\(S_{12} - 2 SAT_{zSE2} + 2\) |
ConstService |
SAT_a |
\(a_{S_{AT}}\) |
\(\sqrt{\frac{SAT_{E1} SAT_{SE1}}{SAT_{E2} SAT_{SE2}}} \left(\operatorname{Indicator}{\left(SAT_{SE2} > 0 \right)} + \operatorname{Indicator}{\left(SAT_{SE2} < 0 \right)}\right)\) |
ConstService |
SAT_A |
\(A^q_{S_{AT}}\) |
\(SAT_{E2} - \frac{SAT_{E1} - SAT_{E2}}{SAT_{a} - 1}\) |
ConstService |
SAT_B |
\(B^q_{S_{AT}}\) |
\(\frac{SAT_{E2} SAT_{SE2} \left(SAT_{a} - 1\right)^{2} \left(\operatorname{Indicator}{\left(SAT_{a} > 0 \right)} + \operatorname{Indicator}{\left(SAT_{a} < 0 \right)}\right)}{\left(SAT_{E1} - SAT_{E2}\right)^{2}}\) |
ConstService |
_V |
\(V_c\) |
\(v e^{i a}\) |
ConstService |
_S |
\(S\) |
\(p_{0} - i q_{0}\) |
ConstService |
_Zs |
\(Z_s\) |
\(ra + i xd_{2}\) |
ConstService |
_It |
\(I_t\) |
\(\frac{_S}{\operatorname{conj}{\left(_V \right)}}\) |
ConstService |
_Is |
\(I_s\) |
\(_It + \frac{_V}{_Zs}\) |
ConstService |
psi20 |
\({\psi''_0}\) |
\(_Is _Zs\) |
ConstService |
psi20_arg |
\(\theta_{\psi''0}\) |
\(\arg{\left(\psi_{20} \right)}\) |
ConstService |
psi20_abs |
\(|{\psi''_0}|\) |
\(\left|{\psi_{20}}\right|\) |
ConstService |
_It_arg |
\(\theta_{It0}\) |
\(\arg{\left(_It \right)}\) |
ConstService |
_psi20_It_arg |
\(\theta_{\psi a It}\) |
\(- _It_{arg} + \psi_{20 arg}\) |
ConstService |
Se0 |
\(S_{e0}\) |
\(\frac{SAT_{B} \left(- SAT_{A} + \psi_{20 abs}\right)^{2} \operatorname{Indicator}{\left(\psi_{20 abs} \geq SAT_{A} \right)}}{\psi_{20 abs}}\) |
ConstService |
_a |
\({a'}\) |
\(\psi_{20 abs} \left(Se_{0} gqd + 1\right)\) |
ConstService |
_b |
\({b'}\) |
\(\left(- xq + xq_{2}\right) \left|{_It}\right|\) |
ConstService |
delta0 |
\(\delta_0\) |
\(\psi_{20 arg} + \operatorname{atan}{\left(\frac{_b \cos{\left(_psi20_{It arg} \right)}}{- _a + _b \sin{\left(_psi20_{It arg} \right)}} \right)}\) |
ConstService |
_Tdq |
\(T_{dq}\) |
\(- i \sin{\left(\delta_{0} \right)} + \cos{\left(\delta_{0} \right)}\) |
ConstService |
psi20_dq |
\({\psi''_{0,dq}}\) |
\(_Tdq \psi_{20}\) |
ConstService |
It_dq |
\(I_{t,dq}\) |
\(\operatorname{conj}{\left(_It _Tdq \right)}\) |
ConstService |
psi2d0 |
\(\psi_{ad0}\) |
\(\operatorname{re}{\left(\psi_{20 dq}\right)}\) |
ConstService |
psi2q0 |
\(\psi_{aq0}\) |
\(- \operatorname{im}{\left(\psi_{20 dq}\right)}\) |
ConstService |
Id0 |
\(I_{d0}\) |
\(\operatorname{im}{\left(It_{dq}\right)}\) |
ConstService |
Iq0 |
\(I_{q0}\) |
\(\operatorname{re}{\left(It_{dq}\right)}\) |
ConstService |
vd0 |
\(V_{d0}\) |
\(- Id_{0} ra + Iq_{0} xq_{2} + psi2q0\) |
ConstService |
vq0 |
\(V_{q0}\) |
\(- Id_{0} xd_{2} - Iq_{0} ra + psi2d0\) |
ConstService |
tm0 |
\(\tau_{m0}\) |
\(u \left(Id_{0} \left(Id_{0} ra + vd_{0}\right) + Iq_{0} \left(Iq_{0} ra + vq_{0}\right)\right)\) |
ConstService |
vf0 |
\(v_{f0}\) |
\(Id_{0} \left(xd - xd_{2}\right) + psi2d0 \left(Se_{0} + 1\right)\) |
ConstService |
psid0 |
\(\psi_{d0}\) |
\(Iq_{0} ra u + vq_{0}\) |
ConstService |
psiq0 |
\(\psi_{q0}\) |
\(- Id_{0} ra u - vd_{0}\) |
ConstService |
e1q0 |
\({e'_{q0}}\) |
\(Id_{0} \left(- xd + xd_{1}\right) - Se_{0} psi2d0 + vf_{0}\) |
ConstService |
e1d0 |
\({e'_{d0}}\) |
\(Iq_{0} \left(xq - xq_{1}\right) - Se_{0} gqd psi2q0\) |
ConstService |
e2d0 |
\({e''_{d0}}\) |
\(Id_{0} \left(- xd + xl\right) - Se_{0} psi2d0 + vf_{0}\) |
ConstService |
e2q0 |
\({e''_{q0}}\) |
\(- Iq_{0} \left(xl - xq\right) - Se_{0} gqd psi2q0\) |
ConstService |
Discretes#
Name |
Symbol |
Type |
Info |
---|---|---|---|
SL |
\(SL\) |
LessThan |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
SAT |
\(S_{AT}\) |
ExcQuadSat |
Config Fields in [GENROU]
Option |
Symbol |
Value |
Info |
Accepted values |
---|---|---|---|---|
allow_adjust |
1 |
allow adjusting upper or lower limits |
(0, 1) |
|
adjust_lower |
0 |
adjust lower limit |
(0, 1) |
|
adjust_upper |
1 |
adjust upper limit |
(0, 1) |
|
vf_lower |
1 |
lower limit for vf warning |
||
vf_upper |
5 |
upper limit for vf warning |
PLBVFU1#
PLBVFU1 model: playback of voltage and frequency as a generator.
The internal voltage and frequency are named Vflt
and omega
.
Rotor angle is named delta
.
The current implementation relies on a TimeSeries
device
to provide the voltage and frequency signals.
See ieee14_plbvfu1.xlsx
and plbvf.xlsx
in
andes/cases/ieee14
for an example.
Voltage and frequeny data needs to be specified in per unit. Nominal values are not yet supported.
Parameters#
Name |
Symbol |
Description |
Default |
Unit |
Properties |
---|---|---|---|---|---|
idx |
unique device idx |
||||
u |
\(u\) |
connection status |
1 |
bool |
|
name |
device name |
||||
bus |
interface bus id |
mandatory |
|||
gen |
static generator index |
mandatory |
|||
Sn |
\(S_n\) |
Power rating |
100 |
MVA |
|
Vn |
\(V_n\) |
AC voltage rating |
110 |
||
ra |
\(r_a\) |
armature resistance |
0 |
z |
|
xs |
\(x_s\) |
generator transient reactance |
0.200 |
non_zero,z |
|
fn |
\(f_n\) |
rated frequency |
60 |
||
Vflag |
playback voltage signal |
1 |
bool |
||
fflag |
playback frequency signal |
1 |
bool |
||
filename |
playback file name |
string |
mandatory |
||
Vscale |
\(V_{scale}\) |
playback voltage scale |
1 |
pu |
non_negative |
fscale |
\(f_{scale}\) |
playback frequency scale |
1 |
pu |
non_negative |
Tv |
\(T_v\) |
filtering time constant for voltage |
0.200 |
s |
non_negative |
Tf |
\(T_f\) |
filtering time constant for frequency |
0.200 |
s |
non_negative |
subidx |
Generator idx in plant; only used by PSS/E data |
0 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
Vflt |
\(Vflt\) |
State |
filtered voltage |
pu |
v_str |
omega |
\(\omega\) |
State |
filtered frequency |
pu |
v_str |
delta |
\(\delta\) |
State |
rotor angle |
rad |
v_str |
a |
\(a\) |
ExtAlgeb |
Bus voltage phase angle |
||
v |
\(v\) |
ExtAlgeb |
Bus voltage magnitude |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
Vflt |
\(Vflt\) |
State |
\(- Voffs + Vts iVscale\) |
omega |
\(\omega\) |
State |
\(- foffs + fts ifscale\) |
delta |
\(\delta\) |
State |
\(\delta_{0}\) |
a |
\(a\) |
ExtAlgeb |
|
v |
\(v\) |
ExtAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
Vflt |
\(Vflt\) |
State |
\(- Vflt - Voffs + Vts iVscale\) |
\(T_v\) |
omega |
\(\omega\) |
State |
\(- foffs + fts ifscale - \omega\) |
\(T_f\) |
delta |
\(\delta\) |
State |
\(2 \pi fn u \left(\omega - 1\right)\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
a |
\(a\) |
ExtAlgeb |
\(\frac{Vflt v xs \sin{\left(a - \delta \right)}}{ra^{2} + xs^{2}} + \frac{ra v \left(- Vflt \cos{\left(a - \delta \right)} + v\right)}{ra^{2} + xs^{2}}\) |
v |
\(v\) |
ExtAlgeb |
\(- \frac{Vflt ra v \sin{\left(a - \delta \right)}}{ra^{2} + xs^{2}} + \frac{v xs \left(- Vflt \cos{\left(a - \delta \right)} + v\right)}{ra^{2} + xs^{2}}\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
zs |
\(zs\) |
\(ra + i xs\) |
ConstService |
zs2n |
\(zs2n\) |
\(ra^{2} - xs^{2}\) |
ConstService |
Ec |
\(E_c\) |
\(v e^{i a} + \left(ra + i xs\right) \operatorname{conj}{\left(\frac{\left(p + i q\right) e^{- i a}}{v} \right)}\) |
ConstService |
E0 |
\(E_0\) |
\(\left|{Ec}\right|\) |
ConstService |
delta0 |
\(\delta_0\) |
\(\arg{\left(Ec \right)}\) |
ConstService |
Vts |
\(Vts\) |
\(0\) |
ConstService |
fts |
\(fts\) |
\(0\) |
ConstService |
ifscale |
\(1/f_{scale}\) |
\(\frac{1}{fscale}\) |
ConstService |
iVscale |
\(1/V_{scale}\) |
\(\frac{1}{Vscale}\) |
ConstService |
foffs |
\(f_{offs}\) |
\(fts ifscale - 1\) |
ConstService |
Voffs |
\(V_{offs}\) |
\(- E_{0} + Vts iVscale\) |
ConstService |
Config Fields in [PLBVFU1]
Option |
Symbol |
Value |
Info |
Accepted values |
---|---|---|---|---|
allow_adjust |
1 |
allow adjusting upper or lower limits |
(0, 1) |
|
adjust_lower |
0 |
adjust lower limit |
(0, 1) |
|
adjust_upper |
1 |
adjust upper limit |
(0, 1) |