RenGen#
Renewable generator (converter) group.
See SynGen for the notes on replacing StaticGen and setting the power ratio parameters.
Attention is needed for the power base Sn
. When replacing a synchronous
generator, the renewable generator should have the same or larger Sn
.
Improper Sn
will cause the initial values to exceed typical per-unit
ranges and cause the initialization to fail.
Common Parameters: u, name, bus, gen, Sn
Common Variables: Pe, Qe
Available models: REGCA1, REGCP1, REGCV1, REGCV2, REGF1, REGF2, REGF3
REGCA1#
Renewable energy generator model type A.
Implements REGCA1
in PSS/E, or REGC_A
in PSLF and Powerworld.
Volim is the voltage limit for high voltage reactive current management, which should be large than static bus voltage (Volim > v), or initialization error will occur.
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\) |
Model MVA base |
100 |
MVA |
|
Tg |
\(T_g\) |
converter time const. |
0.100 |
s |
|
Rrpwr |
\(R_{rpwr}\) |
Low voltage power logic (LVPL) ramp limit |
10 |
p.u. |
|
Brkpt |
\(B_{rkpt}\) |
LVPL characteristic voltage 2 |
1 |
p.u. |
|
Zerox |
\(Z_{erox}\) |
LVPL characteristic voltage 1 |
0.500 |
p.u |
|
Lvplsw |
\(z_{Lvplsw}\) |
Low volt. P logic: 1-enable, 0-disable |
1 |
bool |
|
Lvpl1 |
\(L_{vpl1}\) |
LVPL gain at Brkpt |
1 |
p.u |
|
Volim |
\(V_{olim}\) |
Voltage lim for high volt. reactive current mgnt. |
1.200 |
p.u. |
|
Lvpnt1 |
\(L_{vpnt1}\) |
High volt. point for low volt. active current mgnt. |
0.800 |
p.u. |
|
Lvpnt0 |
\(L_{vpnt0}\) |
Low volt. point for low volt. active current mgnt. |
0.400 |
p.u. |
|
Iolim |
\(I_{olim}\) |
lower current limit for high volt. reactive current mgnt. |
-1.500 |
p.u. (mach base) |
current |
Tfltr |
\(T_{fltr}\) |
Voltage filter T const for low volt. active current mgnt. |
0.100 |
s |
|
Khv |
\(K_{hv}\) |
Overvolt. compensation gain in high volt. reactive current mgnt. |
0.700 |
||
Iqrmax |
\(I_{qrmax}\) |
Upper limit on the ROC for reactive current |
1 |
p.u. |
current |
Iqrmin |
\(I_{qrmin}\) |
Lower limit on the ROC for reactive current |
-1 |
p.u. |
current |
Accel |
\(A_{ccel}\) |
Acceleration factor |
0 |
||
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
||
ra |
\(r_a\) |
0 |
|||
xs |
\(x_s\) |
0 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
S1_y |
\(y_{S_1}\) |
State |
State in lag TF |
v_str |
|
S2_y |
\(y_{S_2}\) |
State |
State in lag transfer function |
v_str |
|
S0_y |
\(y_{S_0}\) |
State |
State in lag TF |
v_str |
|
LVG_y |
\(y_{L_{VG}}\) |
Algeb |
Output of piecewise |
v_str |
|
Ipcmd |
\(I_{pcmd}\) |
Algeb |
current component for active power |
v_str |
|
Iqcmd |
\(I_{qcmd}\) |
Algeb |
current component for reactive power |
v_str |
|
LVPL_y |
\(y_{L_{VPL}}\) |
Algeb |
Output of piecewise |
v_str |
|
Ipout |
\(I_{pout}\) |
Algeb |
Output Ip current |
v_str |
|
HVG_x |
\(x_{H_{VG}}\) |
Algeb |
Value before limiter |
v_str |
|
HVG_y |
\(y_{H_{VG}}\) |
Algeb |
Output after limiter and post gain |
v_str |
|
Iqout_x |
\(x_{I^{qout}}\) |
Algeb |
Value before limiter |
v_str |
|
Iqout_y |
\(y_{I^{qout}}\) |
Algeb |
Output after limiter and post gain |
v_str |
|
Pe |
\(P_{e}\) |
Algeb |
Active power output |
v_str |
|
Qe |
\(Q_{e}\) |
Algeb |
Reactive power output |
v_str |
|
a |
\(\theta\) |
ExtAlgeb |
Bus voltage angle |
||
v |
\(V\) |
ExtAlgeb |
Bus voltage magnitude |
||
vd |
\(vd\) |
AliasAlgeb |
Alias of v |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
S1_y |
\(y_{S_1}\) |
State |
\(- I_{qcmd}\) |
S2_y |
\(y_{S_2}\) |
State |
\(1.0 V\) |
S0_y |
\(y_{S_0}\) |
State |
\(I_{pcmd}\) |
LVG_y |
\(y_{L_{VG}}\) |
Algeb |
\(\operatorname{FixPiecewise}{\left(\left( 0, \ L_{vpnt0} \geq V\right),\left( k_{LVG} \left(- L_{vpnt0} + V\right), \ L_{vpnt1} \geq V\right),\left( 1, \ \text{True}\right) \right)}\) |
Ipcmd |
\(I_{pcmd}\) |
Algeb |
\(\frac{I_{pcmd0} \operatorname{Indicator}{\left(y_{L_{VG}} > 0 \right)}}{y_{L_{VG}}} + \operatorname{Indicator}{\left(y_{L_{VG}} \leq 0 \right)}\) |
Iqcmd |
\(I_{qcmd}\) |
Algeb |
\(I_{qcmd0}\) |
LVPL_y |
\(y_{L_{VPL}}\) |
Algeb |
\(\operatorname{FixPiecewise}{\left(\left( 9999 - 9999 z_{Lvplsw}, \ Z_{erox} \geq y_{S_2}\right),\left( k_{LVPL} \left(- Z_{erox} + y_{S_2}\right) - 9999 z_{Lvplsw} + 9999, \ B_{rkpt} \geq y_{S_2}\right),\left( 9999, \ \text{True}\right) \right)}\) |
Ipout |
\(I_{pout}\) |
Algeb |
\(I_{pcmd} y_{L_{VG}}\) |
HVG_x |
\(x_{H_{VG}}\) |
Algeb |
\(K_{hv} \left(V - V_{olim}\right)\) |
HVG_y |
\(y_{H_{VG}}\) |
Algeb |
\(x_{H_{VG}} z_i^{lim_{H_{VG}}}\) |
Iqout_x |
\(x_{I^{qout}}\) |
Algeb |
\(- y_{H_{VG}} + y_{S_1}\) |
Iqout_y |
\(y_{I^{qout}}\) |
Algeb |
\(I_{olim} z_l^{lim_{I^{qout}}} + x_{I^{qout}} z_i^{lim_{I^{qout}}}\) |
Pe |
\(P_{e}\) |
Algeb |
\(P_{0}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(Q_{0}\) |
a |
\(\theta\) |
ExtAlgeb |
|
v |
\(V\) |
ExtAlgeb |
|
vd |
\(vd\) |
AliasAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
S1_y |
\(y_{S_1}\) |
State |
\(- I_{qcmd} - y_{S_1}\) |
\(T_g\) |
S2_y |
\(y_{S_2}\) |
State |
\(1.0 V - y_{S_2}\) |
\(T_{fltr}\) |
S0_y |
\(y_{S_0}\) |
State |
\(I_{pcmd} - y_{S_0}\) |
\(T_g\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
LVG_y |
\(y_{L_{VG}}\) |
Algeb |
\(- y_{L_{VG}} + \operatorname{FixPiecewise}{\left(\left( 0, \ L_{vpnt0} \geq V\right),\left( k_{LVG} \left(- L_{vpnt0} + V\right), \ L_{vpnt1} \geq V\right),\left( 1, \ \text{True}\right) \right)}\) |
Ipcmd |
\(I_{pcmd}\) |
Algeb |
\(- I_{pcmd} + Ipcmd_{0 LVG}\) |
Iqcmd |
\(I_{qcmd}\) |
Algeb |
\(I_{qcmd0} - I_{qcmd}\) |
LVPL_y |
\(y_{L_{VPL}}\) |
Algeb |
\(- y_{L_{VPL}} + \operatorname{FixPiecewise}{\left(\left( 9999 - 9999 z_{Lvplsw}, \ Z_{erox} \geq y_{S_2}\right),\left( k_{LVPL} \left(- Z_{erox} + y_{S_2}\right) - 9999 z_{Lvplsw} + 9999, \ B_{rkpt} \geq y_{S_2}\right),\left( 9999, \ \text{True}\right) \right)}\) |
Ipout |
\(I_{pout}\) |
Algeb |
\(- I_{pout} + y_{L_{VG}} y_{S_0}\) |
HVG_x |
\(x_{H_{VG}}\) |
Algeb |
\(K_{hv} \left(V - V_{olim}\right) - x_{H_{VG}}\) |
HVG_y |
\(y_{H_{VG}}\) |
Algeb |
\(x_{H_{VG}} z_i^{lim_{H_{VG}}} - y_{H_{VG}}\) |
Iqout_x |
\(x_{I^{qout}}\) |
Algeb |
\(- x_{I^{qout}} - y_{H_{VG}} + y_{S_1}\) |
Iqout_y |
\(y_{I^{qout}}\) |
Algeb |
\(I_{olim} z_l^{lim_{I^{qout}}} + x_{I^{qout}} z_i^{lim_{I^{qout}}} - y_{I^{qout}}\) |
Pe |
\(P_{e}\) |
Algeb |
\(I_{pout} V - P_{e}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(- Q_{e} + V y_{I^{qout}}\) |
a |
\(\theta\) |
ExtAlgeb |
\(- P_{e}\) |
v |
\(V\) |
ExtAlgeb |
\(- Q_{e}\) |
vd |
\(vd\) |
AliasAlgeb |
\(0\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
p0 |
\(P_0\) |
\(P_{0s} \gamma_{P}\) |
ConstService |
q0 |
\(Q_0\) |
\(Q_{0s} \gamma_{Q}\) |
ConstService |
q0gt0 |
\(z_{q0>0}\) |
\(\operatorname{Indicator}{\left(Q_{0} > 0 \right)}\) |
ConstService |
q0lt0 |
\(z_{q0<0}\) |
\(\operatorname{Indicator}{\left(Q_{0} < 0 \right)}\) |
ConstService |
Ipcmd0 |
\(I_{pcmd0}\) |
\(\frac{P_{0}}{V}\) |
ConstService |
Iqcmd0 |
\(I_{qcmd0}\) |
\(- \frac{Q_{0}}{V}\) |
ConstService |
Ipcmd0_LVG |
\(Ipcmd0_LVG\) |
\(I_{pcmd}\) |
PostInitService |
kLVG |
\(k_{LVG}\) |
\(\frac{1}{- L_{vpnt0} + L_{vpnt1}}\) |
ConstService |
kLVPL |
\(k_{LVPL}\) |
\(\frac{L_{vpl1} z_{Lvplsw}}{B_{rkpt} - Z_{erox}}\) |
ConstService |
Discretes#
Name |
Symbol |
Type |
Info |
---|---|---|---|
S1_lim |
\(lim_{S_1}\) |
AntiWindupRate |
Limiter in Lag |
S0_lim |
\(lim_{S_0}\) |
AntiWindupRate |
Limiter in Lag |
HVG_lim |
\(lim_{H_{VG}}\) |
HardLimiter |
|
Iqout_lim |
\(lim_{I^{qout}}\) |
HardLimiter |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
LVG |
\(L_{VG}\) |
Piecewise |
Ip gain during low voltage |
S1 |
\(S_1\) |
LagAntiWindupRate |
Iqcmd delay |
S2 |
\(S_2\) |
Lag |
Voltage filter with no anti-windup |
LVPL |
\(L_{VPL}\) |
Piecewise |
Low voltage Ipcmd upper limit |
S0 |
\(S_0\) |
LagAntiWindupRate |
|
HVG |
\(H_{VG}\) |
GainLimiter |
High voltage gain block |
Iqout |
\(I^{qout}\) |
GainLimiter |
Iq output block |
Config Fields in [REGCA1]
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) |
REGCP1#
Renewable energy generator model (REGC_A) with PLL.
A PLL device can be specified for estimating the phase angle at the coupling
bus through the pll
parameter:
If
pll
is not given, the accurate bus angle will be used.If
pll
is not a valid PLL device, the program will error out.The program does not check if the provided
pll
actually measures the bus on which the converter is at.
One needs to carefully tune the PLL parameters to match the desired performance.
All other remarks for REGCA1
apply.
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\) |
Model MVA base |
100 |
MVA |
|
Tg |
\(T_g\) |
converter time const. |
0.100 |
s |
|
Rrpwr |
\(R_{rpwr}\) |
Low voltage power logic (LVPL) ramp limit |
10 |
p.u. |
|
Brkpt |
\(B_{rkpt}\) |
LVPL characteristic voltage 2 |
1 |
p.u. |
|
Zerox |
\(Z_{erox}\) |
LVPL characteristic voltage 1 |
0.500 |
p.u |
|
Lvplsw |
\(z_{Lvplsw}\) |
Low volt. P logic: 1-enable, 0-disable |
1 |
bool |
|
Lvpl1 |
\(L_{vpl1}\) |
LVPL gain at Brkpt |
1 |
p.u |
|
Volim |
\(V_{olim}\) |
Voltage lim for high volt. reactive current mgnt. |
1.200 |
p.u. |
|
Lvpnt1 |
\(L_{vpnt1}\) |
High volt. point for low volt. active current mgnt. |
0.800 |
p.u. |
|
Lvpnt0 |
\(L_{vpnt0}\) |
Low volt. point for low volt. active current mgnt. |
0.400 |
p.u. |
|
Iolim |
\(I_{olim}\) |
lower current limit for high volt. reactive current mgnt. |
-1.500 |
p.u. (mach base) |
current |
Tfltr |
\(T_{fltr}\) |
Voltage filter T const for low volt. active current mgnt. |
0.100 |
s |
|
Khv |
\(K_{hv}\) |
Overvolt. compensation gain in high volt. reactive current mgnt. |
0.700 |
||
Iqrmax |
\(I_{qrmax}\) |
Upper limit on the ROC for reactive current |
1 |
p.u. |
current |
Iqrmin |
\(I_{qrmin}\) |
Lower limit on the ROC for reactive current |
-1 |
p.u. |
current |
Accel |
\(A_{ccel}\) |
Acceleration factor |
0 |
||
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
||
pll |
Phase-lock loop device idx |
||||
ra |
\(r_a\) |
0 |
|||
xs |
\(x_s\) |
0 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
S1_y |
\(y_{S_1}\) |
State |
State in lag TF |
v_str |
|
S2_y |
\(y_{S_2}\) |
State |
State in lag transfer function |
v_str |
|
S0_y |
\(y_{S_0}\) |
State |
State in lag TF |
v_str |
|
am |
\(\theta_{m}\) |
ExtState |
Measured angle |
||
LVG_y |
\(y_{L_{VG}}\) |
Algeb |
Output of piecewise |
v_str |
|
Ipcmd |
\(I_{pcmd}\) |
Algeb |
current component for active power |
v_str |
|
Iqcmd |
\(I_{qcmd}\) |
Algeb |
current component for reactive power |
v_str |
|
LVPL_y |
\(y_{L_{VPL}}\) |
Algeb |
Output of piecewise |
v_str |
|
Ipout |
\(I_{pout}\) |
Algeb |
Output Ip current |
v_str |
|
HVG_x |
\(x_{H_{VG}}\) |
Algeb |
Value before limiter |
v_str |
|
HVG_y |
\(y_{H_{VG}}\) |
Algeb |
Output after limiter and post gain |
v_str |
|
Iqout_x |
\(x_{I^{qout}}\) |
Algeb |
Value before limiter |
v_str |
|
Iqout_y |
\(y_{I^{qout}}\) |
Algeb |
Output after limiter and post gain |
v_str |
|
Pe |
\(P_{e}\) |
Algeb |
Active power output |
v_str |
|
Qe |
\(Q_{e}\) |
Algeb |
Reactive power output |
v_str |
|
vd |
\(V_{d}\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(V_{q}\) |
Algeb |
q-axis voltage |
v_str |
|
a |
\(\theta\) |
ExtAlgeb |
Bus voltage angle |
||
v |
\(V\) |
ExtAlgeb |
Bus voltage magnitude |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
S1_y |
\(y_{S_1}\) |
State |
\(- I_{qcmd}\) |
S2_y |
\(y_{S_2}\) |
State |
\(1.0 V\) |
S0_y |
\(y_{S_0}\) |
State |
\(I_{pcmd}\) |
am |
\(\theta_{m}\) |
ExtState |
|
LVG_y |
\(y_{L_{VG}}\) |
Algeb |
\(\operatorname{FixPiecewise}{\left(\left( 0, \ L_{vpnt0} \geq V\right),\left( k_{LVG} \left(- L_{vpnt0} + V\right), \ L_{vpnt1} \geq V\right),\left( 1, \ \text{True}\right) \right)}\) |
Ipcmd |
\(I_{pcmd}\) |
Algeb |
\(\frac{I_{pcmd0} \operatorname{Indicator}{\left(y_{L_{VG}} > 0 \right)}}{y_{L_{VG}}} + \operatorname{Indicator}{\left(y_{L_{VG}} \leq 0 \right)}\) |
Iqcmd |
\(I_{qcmd}\) |
Algeb |
\(I_{qcmd0}\) |
LVPL_y |
\(y_{L_{VPL}}\) |
Algeb |
\(\operatorname{FixPiecewise}{\left(\left( 9999 - 9999 z_{Lvplsw}, \ Z_{erox} \geq y_{S_2}\right),\left( k_{LVPL} \left(- Z_{erox} + y_{S_2}\right) - 9999 z_{Lvplsw} + 9999, \ B_{rkpt} \geq y_{S_2}\right),\left( 9999, \ \text{True}\right) \right)}\) |
Ipout |
\(I_{pout}\) |
Algeb |
\(I_{pcmd} y_{L_{VG}}\) |
HVG_x |
\(x_{H_{VG}}\) |
Algeb |
\(K_{hv} \left(V - V_{olim}\right)\) |
HVG_y |
\(y_{H_{VG}}\) |
Algeb |
\(x_{H_{VG}} z_i^{lim_{H_{VG}}}\) |
Iqout_x |
\(x_{I^{qout}}\) |
Algeb |
\(- y_{H_{VG}} + y_{S_1}\) |
Iqout_y |
\(y_{I^{qout}}\) |
Algeb |
\(I_{olim} z_l^{lim_{I^{qout}}} + x_{I^{qout}} z_i^{lim_{I^{qout}}}\) |
Pe |
\(P_{e}\) |
Algeb |
\(P_{0}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(Q_{0}\) |
vd |
\(V_{d}\) |
Algeb |
\(V\) |
vq |
\(V_{q}\) |
Algeb |
\(0\) |
a |
\(\theta\) |
ExtAlgeb |
|
v |
\(V\) |
ExtAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
S1_y |
\(y_{S_1}\) |
State |
\(- I_{qcmd} - y_{S_1}\) |
\(T_g\) |
S2_y |
\(y_{S_2}\) |
State |
\(1.0 V - y_{S_2}\) |
\(T_{fltr}\) |
S0_y |
\(y_{S_0}\) |
State |
\(I_{pcmd} - y_{S_0}\) |
\(T_g\) |
am |
\(\theta_{m}\) |
ExtState |
\(0\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
LVG_y |
\(y_{L_{VG}}\) |
Algeb |
\(- y_{L_{VG}} + \operatorname{FixPiecewise}{\left(\left( 0, \ L_{vpnt0} \geq V\right),\left( k_{LVG} \left(- L_{vpnt0} + V\right), \ L_{vpnt1} \geq V\right),\left( 1, \ \text{True}\right) \right)}\) |
Ipcmd |
\(I_{pcmd}\) |
Algeb |
\(- I_{pcmd} + Ipcmd_{0 LVG}\) |
Iqcmd |
\(I_{qcmd}\) |
Algeb |
\(I_{qcmd0} - I_{qcmd}\) |
LVPL_y |
\(y_{L_{VPL}}\) |
Algeb |
\(- y_{L_{VPL}} + \operatorname{FixPiecewise}{\left(\left( 9999 - 9999 z_{Lvplsw}, \ Z_{erox} \geq y_{S_2}\right),\left( k_{LVPL} \left(- Z_{erox} + y_{S_2}\right) - 9999 z_{Lvplsw} + 9999, \ B_{rkpt} \geq y_{S_2}\right),\left( 9999, \ \text{True}\right) \right)}\) |
Ipout |
\(I_{pout}\) |
Algeb |
\(- I_{pout} + y_{L_{VG}} y_{S_0}\) |
HVG_x |
\(x_{H_{VG}}\) |
Algeb |
\(K_{hv} \left(V - V_{olim}\right) - x_{H_{VG}}\) |
HVG_y |
\(y_{H_{VG}}\) |
Algeb |
\(x_{H_{VG}} z_i^{lim_{H_{VG}}} - y_{H_{VG}}\) |
Iqout_x |
\(x_{I^{qout}}\) |
Algeb |
\(- x_{I^{qout}} - y_{H_{VG}} + y_{S_1}\) |
Iqout_y |
\(y_{I^{qout}}\) |
Algeb |
\(I_{olim} z_l^{lim_{I^{qout}}} + x_{I^{qout}} z_i^{lim_{I^{qout}}} - y_{I^{qout}}\) |
Pe |
\(P_{e}\) |
Algeb |
\(I_{pout} V_{d} - P_{e} + V_{q} y_{I^{qout}}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(- I_{pout} V_{q} - Q_{e} + V_{d} y_{I^{qout}}\) |
vd |
\(V_{d}\) |
Algeb |
\(V \cos{\left(z_{ heta m} \left(\theta - \theta_{m}\right) \right)} - V_{d}\) |
vq |
\(V_{q}\) |
Algeb |
\(- V \sin{\left(z_{ heta m} \left(\theta - \theta_{m}\right) \right)} - V_{q}\) |
a |
\(\theta\) |
ExtAlgeb |
\(- P_{e}\) |
v |
\(V\) |
ExtAlgeb |
\(- Q_{e}\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
p0 |
\(P_0\) |
\(P_{0s} \gamma_{P}\) |
ConstService |
q0 |
\(Q_0\) |
\(Q_{0s} \gamma_{Q}\) |
ConstService |
q0gt0 |
\(z_{q0>0}\) |
\(\operatorname{Indicator}{\left(Q_{0} > 0 \right)}\) |
ConstService |
q0lt0 |
\(z_{q0<0}\) |
\(\operatorname{Indicator}{\left(Q_{0} < 0 \right)}\) |
ConstService |
Ipcmd0 |
\(I_{pcmd0}\) |
\(\frac{P_{0}}{V}\) |
ConstService |
Iqcmd0 |
\(I_{qcmd0}\) |
\(- \frac{Q_{0}}{V}\) |
ConstService |
Ipcmd0_LVG |
\(Ipcmd0_LVG\) |
\(I_{pcmd}\) |
PostInitService |
kLVG |
\(k_{LVG}\) |
\(\frac{1}{- L_{vpnt0} + L_{vpnt1}}\) |
ConstService |
kLVPL |
\(k_{LVPL}\) |
\(\frac{L_{vpl1} z_{Lvplsw}}{B_{rkpt} - Z_{erox}}\) |
ConstService |
Discretes#
Name |
Symbol |
Type |
Info |
---|---|---|---|
S1_lim |
\(lim_{S_1}\) |
AntiWindupRate |
Limiter in Lag |
S0_lim |
\(lim_{S_0}\) |
AntiWindupRate |
Limiter in Lag |
HVG_lim |
\(lim_{H_{VG}}\) |
HardLimiter |
|
Iqout_lim |
\(lim_{I^{qout}}\) |
HardLimiter |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
LVG |
\(L_{VG}\) |
Piecewise |
Ip gain during low voltage |
S1 |
\(S_1\) |
LagAntiWindupRate |
Iqcmd delay |
S2 |
\(S_2\) |
Lag |
Voltage filter with no anti-windup |
LVPL |
\(L_{VPL}\) |
Piecewise |
Low voltage Ipcmd upper limit |
S0 |
\(S_0\) |
LagAntiWindupRate |
|
HVG |
\(H_{VG}\) |
GainLimiter |
High voltage gain block |
Iqout |
\(I^{qout}\) |
GainLimiter |
Iq output block |
Config Fields in [REGCP1]
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) |
REGCV1#
Voltage-controlled VSC with VSG control.
Includes double-loop PI control and swing equation based VSG control. Voltage measurement delays are ignored.
Notes#
Extreme care needs to be taken when coordinating the PI controller parameters.
Setting the primary frequency control droop
kw
can improve small-signal stability.The droop
kv
for voltage control (pu voltage / pu Q change), if used, needs to be chosen carefully. In most cases,kv
should be a very small positive value if not zero.
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 |
|||
coi2 |
center of inertia 2 index |
||||
Sn |
\(S_n\) |
Model MVA base |
100 |
MVA |
|
fn |
\(f\) |
rated frequency |
60 |
||
Tc |
\(T_c\) |
switch time constant |
0.010 |
s |
|
kw |
\(k_\omega\) |
speed droop on active power (reciprocal of droop) |
0 |
p.u. |
non_negative,ipower |
kv |
\(k_v\) |
reactive power droop on voltage |
0 |
p.u. |
non_negative,power |
M |
\(M\) |
Emulated startup time constant (M=2H) |
10 |
s |
power |
D |
\(D\) |
Emulated damping coefficient |
0 |
p.u. |
power |
ra |
\(r_a\) |
resistance |
0 |
z |
|
xs |
\(x_s\) |
reactance |
0.200 |
z |
|
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
||
Kpvd |
\(kp_{vd}\) |
vd controller proportional gain |
0.500 |
p.u. |
power |
Kivd |
\(ki_{vd}\) |
vd controller integral gain |
0.020 |
p.u. |
power |
Kpvq |
\(kp_{vq}\) |
vq controller proportional gain |
0.500 |
p.u. |
power |
Kivq |
\(ki_{vq}\) |
vq controller integral gain |
0.020 |
p.u. |
power |
KpId |
\(kp_{di}\) |
Id controller proportional gain |
0.200 |
p.u. |
power |
KiId |
\(ki_{di}\) |
Id controller integral gain |
0.010 |
p.u. |
power |
KpIq |
\(kp_{qi}\) |
Iq controller proportional gain |
0.200 |
p.u. |
power |
KiIq |
\(ki_{qi}\) |
Iq controller integral gain |
0.010 |
p.u. |
power |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
dw |
\(\Delta\omega\) |
State |
delta virtual rotor speed |
pu (Hz) |
v_str |
delta |
\(\delta\) |
State |
virtual delta |
rad |
v_str |
PIvd_xi |
\(xi_{PIvd}\) |
State |
Integrator output |
v_str |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
Integrator output |
v_str |
|
PIId_xi |
\(xi_{PIId}\) |
State |
Integrator output |
v_str |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
Integrator output |
v_str |
|
udLag_y |
\(y_{udLag}\) |
State |
State in lag transfer function |
v_str |
|
uqLag_y |
\(y_{uqLag}\) |
State |
State in lag transfer function |
v_str |
|
ud |
\(ud\) |
AliasState |
Alias of udLag_y |
||
uq |
\(uq\) |
AliasState |
Alias of uqLag_y |
||
Pref2 |
\(P_{ref2}\) |
Algeb |
active power reference after adjusting by frequency |
v_str |
|
vref2 |
\(v_{ref2}\) |
Algeb |
voltage reference after adjusted by reactive power |
v_str |
|
omega |
\(\omega\) |
Algeb |
virtual rotor speed |
pu (Hz) |
v_str |
vd |
\(V_{d}\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(V_{q}\) |
Algeb |
q-axis voltage |
v_str |
|
Pe |
\(P_{e}\) |
Algeb |
active power injection from VSC |
v_str |
|
Qe |
\(Q_{e}\) |
Algeb |
reactive power injection from VSC |
v_str |
|
Id |
\(I_{d}\) |
Algeb |
d-axis current |
v_str |
|
Iq |
\(I_{q}\) |
Algeb |
q-axis current |
v_str |
|
PIvd_y |
\(y_{PIvd}\) |
Algeb |
PI output |
v_str |
|
PIvq_y |
\(y_{PIvq}\) |
Algeb |
PI output |
v_str |
|
PIId_y |
\(y_{PIId}\) |
Algeb |
PI output |
v_str |
|
PIIq_y |
\(y_{PIIq}\) |
Algeb |
PI output |
v_str |
|
udref |
\(u_{dref}\) |
Algeb |
ud reference |
v_str |
|
uqref |
\(u_{qref}\) |
Algeb |
uq reference |
v_str |
|
a |
\(\theta\) |
ExtAlgeb |
Bus voltage angle |
||
v |
\(V\) |
ExtAlgeb |
Bus voltage magnitude |
||
Idref |
\(Idref\) |
AliasAlgeb |
Alias of PIvd_y |
||
Iqref |
\(Iqref\) |
AliasAlgeb |
Alias of PIvq_y |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
dw |
\(\Delta\omega\) |
State |
\(0\) |
delta |
\(\delta\) |
State |
\(\theta\) |
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(I_{d0}\) |
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(I_{q0}\) |
PIId_xi |
\(xi_{PIId}\) |
State |
\(0.0\) |
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(0.0\) |
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref}\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref}\) |
ud |
\(ud\) |
AliasState |
|
uq |
\(uq\) |
AliasState |
|
Pref2 |
\(P_{ref2}\) |
Algeb |
\(P_{ref} u\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(V_{ref} u\) |
omega |
\(\omega\) |
Algeb |
\(u\) |
vd |
\(V_{d}\) |
Algeb |
\(v_{d0}\) |
vq |
\(V_{q}\) |
Algeb |
\(v_{q0}\) |
Pe |
\(P_{e}\) |
Algeb |
\(P_{ref}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(Q_{ref}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d0}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{q0}\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(I_{d0} + kp_{vd} \left(V_{d} - v_{ref2}\right)\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(I_{q0} + V_{q} kp_{vq}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(kp_{di} \left(I_{d} - y_{PIvd}\right)\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(kp_{qi} \left(I_{q} - y_{PIvq}\right)\) |
udref |
\(u_{dref}\) |
Algeb |
\(u_{dref0}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(u_{qref0}\) |
a |
\(\theta\) |
ExtAlgeb |
|
v |
\(V\) |
ExtAlgeb |
|
Idref |
\(Idref\) |
AliasAlgeb |
|
Iqref |
\(Iqref\) |
AliasAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
dw |
\(\Delta\omega\) |
State |
\(- D \Delta\omega - P_{e} + P_{ref2}\) |
\(M\) |
delta |
\(\delta\) |
State |
\(2 \pi \Delta\omega f\) |
|
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(ki_{vd} \left(V_{d} - v_{ref2}\right)\) |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(V_{q} ki_{vq}\) |
|
PIId_xi |
\(xi_{PIId}\) |
State |
\(ki_{di} \left(I_{d} - y_{PIvd}\right)\) |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(ki_{qi} \left(I_{q} - y_{PIvq}\right)\) |
|
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref} - y_{udLag}\) |
\(T_c\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref} - y_{uqLag}\) |
\(T_c\) |
ud |
\(ud\) |
AliasState |
\(0\) |
|
uq |
\(uq\) |
AliasState |
\(0\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
Pref2 |
\(P_{ref2}\) |
Algeb |
\(- P_{ref2} + P_{ref} u - \Delta\omega k_{\omega}\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(V_{ref} + k_{v} \left(- Q_{e} + Q_{ref} u\right) - v_{ref2}\) |
omega |
\(\omega\) |
Algeb |
\(\Delta\omega - \omega + 1\) |
vd |
\(V_{d}\) |
Algeb |
\(V u \cos{\left(\delta - \theta \right)} - V_{d}\) |
vq |
\(V_{q}\) |
Algeb |
\(- V u \sin{\left(\delta - \theta \right)} - V_{q}\) |
Pe |
\(P_{e}\) |
Algeb |
\(I_{d} V_{d} + I_{q} V_{q} - P_{e}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(I_{d} V_{q} - I_{q} V_{d} - Q_{e}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d} r_{a} - I_{q} x_{s} + V_{d} - y_{udLag}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{d} x_{s} + I_{q} r_{a} + V_{q} - y_{uqLag}\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(kp_{vd} \left(V_{d} - v_{ref2}\right) + xi_{PIvd} - y_{PIvd}\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(V_{q} kp_{vq} + xi_{PIvq} - y_{PIvq}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(kp_{di} \left(I_{d} - y_{PIvd}\right) + xi_{PIId} - y_{PIId}\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(kp_{qi} \left(I_{q} - y_{PIvq}\right) + xi_{PIIq} - y_{PIIq}\) |
udref |
\(u_{dref}\) |
Algeb |
\(- Iqref x_{s} + V_{d} - u_{dref} + y_{PIId}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(Idref x_{s} + V_{q} - u_{qref} + y_{PIIq}\) |
a |
\(\theta\) |
ExtAlgeb |
\(- P_{e} u\) |
v |
\(V\) |
ExtAlgeb |
\(- Q_{e} u\) |
Idref |
\(Idref\) |
AliasAlgeb |
\(0\) |
Iqref |
\(Iqref\) |
AliasAlgeb |
\(0\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
Pref |
\(P_{ref}\) |
\(P_{0s} \gamma_{P}\) |
ConstService |
Qref |
\(Q_{ref}\) |
\(Q_{0s} \gamma_{Q}\) |
ConstService |
ixs |
\(1/xs\) |
\(\frac{1}{x_{s}}\) |
ConstService |
Id0 |
\(I_{d0}\) |
\(\frac{P_{ref} u}{V}\) |
ConstService |
Iq0 |
\(I_{q0}\) |
\(- \frac{Q_{ref} u}{V}\) |
ConstService |
vd0 |
\(v_{d0}\) |
\(V u\) |
ConstService |
vq0 |
\(v_{q0}\) |
\(0\) |
ConstService |
udref0 |
\(u_{dref0}\) |
\(I_{d0} r_{a} - I_{q0} x_{s} + v_{d0}\) |
ConstService |
uqref0 |
\(u_{qref0}\) |
\(I_{d0} x_{s} + I_{q0} r_{a} + v_{q0}\) |
ConstService |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
PIvd |
\(PIvd\) |
PIController |
|
PIvq |
\(PIvq\) |
PIController |
|
PIId |
\(PIId\) |
PIController |
|
PIIq |
\(PIIq\) |
PIController |
|
udLag |
\(udLag\) |
Lag |
|
uqLag |
\(uqLag\) |
Lag |
Config Fields in [REGCV1]
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) |
REGCV2#
Voltage-controlled VSC with VSG control.
The inner-loop current PI controllers are replaced with lag transfer functions.
Notes#
To avoid small-signal stability issues, one take extreme care in setting the
PI control gains Kpvd
, Kivd
, Kpvq
, and Kivq
, and the emulated
inertia M
and damping D
.
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 |
|||
coi2 |
center of inertia 2 index |
||||
Sn |
\(S_n\) |
Model MVA base |
100 |
MVA |
|
fn |
\(f\) |
rated frequency |
60 |
||
Tc |
\(T_c\) |
switch time constant |
0.010 |
s |
|
kw |
\(k_\omega\) |
speed droop on active power (reciprocal of droop) |
0 |
p.u. |
non_negative,ipower |
kv |
\(k_v\) |
reactive power droop on voltage |
0 |
p.u. |
non_negative,power |
M |
\(M\) |
Emulated startup time constant (M=2H) |
10 |
s |
power |
D |
\(D\) |
Emulated damping coefficient |
0 |
p.u. |
power |
ra |
\(r_a\) |
resistance |
0 |
z |
|
xs |
\(x_s\) |
reactance |
0.200 |
z |
|
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
||
Kpvd |
\(kp_{vd}\) |
vd controller proportional gain |
0.500 |
p.u. |
power |
Kivd |
\(ki_{vd}\) |
vd controller integral gain |
0.020 |
p.u. |
power |
Kpvq |
\(kp_{vq}\) |
vq controller proportional gain |
0.500 |
p.u. |
power |
Kivq |
\(ki_{vq}\) |
vq controller integral gain |
0.020 |
p.u. |
power |
Tiq |
\(T_{Iq}\) |
0.010 |
|||
Tid |
\(T_{Id}\) |
0.010 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
dw |
\(\Delta\omega\) |
State |
delta virtual rotor speed |
pu (Hz) |
v_str |
delta |
\(\delta\) |
State |
virtual delta |
rad |
v_str |
PIvd_xi |
\(xi_{PIvd}\) |
State |
Integrator output |
v_str |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
Integrator output |
v_str |
|
LGId_y |
\(y_{LGId}\) |
State |
State in lag transfer function |
v_str |
|
LGIq_y |
\(y_{LGIq}\) |
State |
State in lag transfer function |
v_str |
|
Pref2 |
\(P_{ref2}\) |
Algeb |
active power reference after adjusting by frequency |
v_str |
|
vref2 |
\(v_{ref2}\) |
Algeb |
voltage reference after adjusted by reactive power |
v_str |
|
omega |
\(\omega\) |
Algeb |
virtual rotor speed |
pu (Hz) |
v_str |
vd |
\(V_{d}\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(V_{q}\) |
Algeb |
q-axis voltage |
v_str |
|
Pe |
\(P_{e}\) |
Algeb |
active power injection from VSC |
v_str |
|
Qe |
\(Q_{e}\) |
Algeb |
reactive power injection from VSC |
v_str |
|
Id |
\(I_{d}\) |
Algeb |
d-axis current |
v_str |
|
Iq |
\(I_{q}\) |
Algeb |
q-axis current |
v_str |
|
PIvd_y |
\(y_{PIvd}\) |
Algeb |
PI output |
v_str |
|
PIvq_y |
\(y_{PIvq}\) |
Algeb |
PI output |
v_str |
|
a |
\(\theta\) |
ExtAlgeb |
Bus voltage angle |
||
v |
\(V\) |
ExtAlgeb |
Bus voltage magnitude |
||
Idref |
\(Idref\) |
AliasAlgeb |
Alias of PIvd_y |
||
Iqref |
\(Iqref\) |
AliasAlgeb |
Alias of PIvq_y |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
dw |
\(\Delta\omega\) |
State |
\(0\) |
delta |
\(\delta\) |
State |
\(\theta\) |
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(I_{d0}\) |
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(I_{q0}\) |
LGId_y |
\(y_{LGId}\) |
State |
\(y_{PIvd}\) |
LGIq_y |
\(y_{LGIq}\) |
State |
\(y_{PIvq}\) |
Pref2 |
\(P_{ref2}\) |
Algeb |
\(P_{ref} u\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(V_{ref} u\) |
omega |
\(\omega\) |
Algeb |
\(u\) |
vd |
\(V_{d}\) |
Algeb |
\(v_{d0}\) |
vq |
\(V_{q}\) |
Algeb |
\(v_{q0}\) |
Pe |
\(P_{e}\) |
Algeb |
\(P_{ref}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(Q_{ref}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d0}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{q0}\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(I_{d0} + kp_{vd} \left(V_{d} - v_{ref2}\right)\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(I_{q0} + V_{q} kp_{vq}\) |
a |
\(\theta\) |
ExtAlgeb |
|
v |
\(V\) |
ExtAlgeb |
|
Idref |
\(Idref\) |
AliasAlgeb |
|
Iqref |
\(Iqref\) |
AliasAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
dw |
\(\Delta\omega\) |
State |
\(- D \Delta\omega - P_{e} + P_{ref2}\) |
\(M\) |
delta |
\(\delta\) |
State |
\(2 \pi \Delta\omega f\) |
|
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(ki_{vd} \left(V_{d} - v_{ref2}\right)\) |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(V_{q} ki_{vq}\) |
|
LGId_y |
\(y_{LGId}\) |
State |
\(- y_{LGId} + y_{PIvd}\) |
\(T_{Id}\) |
LGIq_y |
\(y_{LGIq}\) |
State |
\(- y_{LGIq} + y_{PIvq}\) |
\(T_{Iq}\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
Pref2 |
\(P_{ref2}\) |
Algeb |
\(- P_{ref2} + P_{ref} u - \Delta\omega k_{\omega}\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(V_{ref} + k_{v} \left(- Q_{e} + Q_{ref} u\right) - v_{ref2}\) |
omega |
\(\omega\) |
Algeb |
\(\Delta\omega - \omega + 1\) |
vd |
\(V_{d}\) |
Algeb |
\(V u \cos{\left(\delta - \theta \right)} - V_{d}\) |
vq |
\(V_{q}\) |
Algeb |
\(- V u \sin{\left(\delta - \theta \right)} - V_{q}\) |
Pe |
\(P_{e}\) |
Algeb |
\(I_{d} V_{d} + I_{q} V_{q} - P_{e}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(I_{d} V_{q} - I_{q} V_{d} - Q_{e}\) |
Id |
\(I_{d}\) |
Algeb |
\(- I_{d} + y_{LGId}\) |
Iq |
\(I_{q}\) |
Algeb |
\(- I_{q} + y_{LGIq}\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(kp_{vd} \left(V_{d} - v_{ref2}\right) + xi_{PIvd} - y_{PIvd}\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(V_{q} kp_{vq} + xi_{PIvq} - y_{PIvq}\) |
a |
\(\theta\) |
ExtAlgeb |
\(- P_{e} u\) |
v |
\(V\) |
ExtAlgeb |
\(- Q_{e} u\) |
Idref |
\(Idref\) |
AliasAlgeb |
\(0\) |
Iqref |
\(Iqref\) |
AliasAlgeb |
\(0\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
Pref |
\(P_{ref}\) |
\(P_{0s} \gamma_{P}\) |
ConstService |
Qref |
\(Q_{ref}\) |
\(Q_{0s} \gamma_{Q}\) |
ConstService |
ixs |
\(1/xs\) |
\(\frac{1}{x_{s}}\) |
ConstService |
Id0 |
\(I_{d0}\) |
\(\frac{P_{ref} u}{V}\) |
ConstService |
Iq0 |
\(I_{q0}\) |
\(- \frac{Q_{ref} u}{V}\) |
ConstService |
vd0 |
\(v_{d0}\) |
\(V u\) |
ConstService |
vq0 |
\(v_{q0}\) |
\(0\) |
ConstService |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
PIvd |
\(PIvd\) |
PIController |
|
PIvq |
\(PIvq\) |
PIController |
|
LGId |
\(LGId\) |
Lag |
|
LGIq |
\(LGIq\) |
Lag |
Config Fields in [REGCV2]
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) |
REGF1#
Grid-forming inverter using droop.
Implementation of EPRI Memorandum
Ramasubramanian, "PROPOSAL FOR SUITE OF GENERIC GRID FORMING (GFM) POSITIVE SEQUENCE MODELS"
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\) |
Model MVA base |
100 |
MVA |
|
rf |
\(r_a\) |
resistance |
0 |
z |
|
xf |
\(x_s\) |
reactance |
0.200 |
z |
|
Vdip |
\(V_{dip}\) |
V threshold to freeze states |
0.800 |
p.u. |
|
Tfrz |
\(T_{frz}\) |
Time to keep state frozen |
0 |
||
PQFLAG |
P/Q priority flag; 0-Q priority, 1-P priority |
1 |
bool |
||
fn |
\(f\) |
rated frequency |
60 |
||
dwmax |
\(\Delta \omega_{max}\) |
maximum value of frequency deviation |
75 |
||
dwmin |
\(\Delta \omega_{min}\) |
minimum value of frequency deviation |
-75 |
||
wdrp |
\(\omega_{drp}\) |
frequency droop percentage |
0.033 |
||
Qdrp |
\(Q_{drp}\) |
Voltage droop percentage |
0.045 |
||
Tr |
\(T_c\) |
transducer time constant |
0.005 |
s |
|
Te |
\(T_e\) |
ouput state time constant |
0.005 |
s |
|
KPi |
\(K_{Pi}\) |
current control proportional gain |
0.500 |
non_negative |
|
KIi |
\(K_{Ii}\) |
current control integral gain |
20 |
non_negative |
|
KPv |
\(K_{Pv}\) |
voltage control proportional gain |
3 |
non_negative |
|
KIv |
\(K_{Iv}\) |
voltage control integral gain |
10 |
non_negative |
|
Pmax |
\(P_{max}\) |
max. active power |
1 |
non_negative,power |
|
Pmin |
\(P_{min}\) |
min. active power |
-1 |
power |
|
KPplim |
\(K_{Pplim}\) |
Kp for P limits |
5 |
non_negative |
|
KIplim |
\(K_{Iplim}\) |
KI for P limits |
30 |
non_negative |
|
Qmax |
\(Q_{max}\) |
max. reactive power |
1 |
non_negative,power |
|
Qmin |
\(Q_{min}\) |
min. reactive power |
-1 |
power |
|
KPqlim |
\(K_{Pqlim}\) |
Kp for Q limits |
0.100 |
non_negative |
|
KIqlim |
\(K_{Iqlim}\) |
KI for Q limits |
1.500 |
non_negative |
|
Tpm |
\(T_{pm}\) |
power signal input delay (3 Delta t) |
0.025 |
||
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
State in lag transfer function |
v_str |
|
Qsen_y |
\(y_{Qsen}\) |
State |
State in lag transfer function |
v_str |
|
Psig_y |
\(y_{Psig}\) |
State |
State in lag TF |
v_str |
|
Qsig_y |
\(y_{Qsig}\) |
State |
State in lag TF |
v_str |
|
PIplim_xi |
\(xi_{PIplim}\) |
State |
Integrator output |
v_str |
|
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
Integrator output |
v_str |
|
delta |
\(\delta\) |
State |
virtual delta |
rad |
v_str |
PIvd_xi |
\(xi_{PIvd}\) |
State |
Integrator output |
v_str |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
Integrator output |
v_str |
|
PIId_xi |
\(xi_{PIId}\) |
State |
Integrator output |
v_str |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
Integrator output |
v_str |
|
udLag_y |
\(y_{udLag}\) |
State |
State in lag transfer function |
v_str |
|
uqLag_y |
\(y_{uqLag}\) |
State |
State in lag transfer function |
v_str |
|
ud |
\(ud\) |
AliasState |
Alias of udLag_y |
||
uq |
\(uq\) |
AliasState |
Alias of uqLag_y |
||
Paux |
\(Paux\) |
Algeb |
v_str |
||
Qaux |
\(Qaux\) |
Algeb |
v_str |
||
PIplim_y |
\(y_{PIplim}\) |
Algeb |
PI output |
v_str |
|
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
PI output |
v_str |
|
vd |
\(V_{d}\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(V_{q}\) |
Algeb |
q-axis voltage |
v_str |
|
Pe |
\(P_{e}\) |
Algeb |
active power injection from VSC |
v_str |
|
Qe |
\(Q_{e}\) |
Algeb |
reactive power injection from VSC |
v_str |
|
Id |
\(I_{d}\) |
Algeb |
d-axis current |
v_str |
|
Iq |
\(I_{q}\) |
Algeb |
q-axis current |
v_str |
|
dw_x |
\(x_{dw}\) |
Algeb |
Value before limiter |
v_str |
|
dw_y |
\(y_{dw}\) |
Algeb |
Output after limiter and post gain |
v_str |
|
vref2 |
\(v_{ref2}\) |
Algeb |
voltage reference after droop |
v_str |
|
PIvd_y |
\(y_{PIvd}\) |
Algeb |
PI output |
v_str |
|
PIvq_y |
\(y_{PIvq}\) |
Algeb |
PI output |
v_str |
|
PIId_y |
\(y_{PIId}\) |
Algeb |
PI output |
v_str |
|
PIIq_y |
\(y_{PIIq}\) |
Algeb |
PI output |
v_str |
|
udref |
\(u_{dref}\) |
Algeb |
ud reference |
v_str |
|
uqref |
\(u_{qref}\) |
Algeb |
uq reference |
v_str |
|
a |
\(\theta\) |
ExtAlgeb |
Bus voltage angle |
||
v |
\(V\) |
ExtAlgeb |
Bus voltage magnitude |
||
Idref |
\(Idref\) |
AliasAlgeb |
Alias of PIvd_y |
||
Iqref |
\(Iqref\) |
AliasAlgeb |
Alias of PIvq_y |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
\(P_{e}\) |
Qsen_y |
\(y_{Qsen}\) |
State |
\(Q_{e}\) |
Psig_y |
\(y_{Psig}\) |
State |
\(Paux + y_{Psen}\) |
Qsig_y |
\(y_{Qsig}\) |
State |
\(Qaux + y_{Qsen}\) |
PIplim_xi |
\(xi_{PIplim}\) |
State |
\(y_{Psen}\) |
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
\(y_{Qsen}\) |
delta |
\(\delta\) |
State |
\(\theta\) |
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(I_{d0}\) |
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(I_{q0}\) |
PIId_xi |
\(xi_{PIId}\) |
State |
\(0.0\) |
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(0.0\) |
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref}\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref}\) |
ud |
\(ud\) |
AliasState |
|
uq |
\(uq\) |
AliasState |
|
Paux |
\(Paux\) |
Algeb |
\(0\) |
Qaux |
\(Qaux\) |
Algeb |
\(0\) |
PIplim_y |
\(y_{PIplim}\) |
Algeb |
\(K_{Pplim} \left(- y_{Psen} + y_{Psig}\right) + y_{Psen}\) |
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
\(K_{Pqlim} \left(- y_{Qsen} + y_{Qsig}\right) + y_{Qsen}\) |
vd |
\(V_{d}\) |
Algeb |
\(v_{d0}\) |
vq |
\(V_{q}\) |
Algeb |
\(v_{q0}\) |
Pe |
\(P_{e}\) |
Algeb |
\(P_{ref}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(Q_{ref}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d0}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{q0}\) |
dw_x |
\(x_{dw}\) |
Algeb |
\(\omega_{drp} w_{0} \left(y_{PIplim} - y_{Psen}\right)\) |
dw_y |
\(y_{dw}\) |
Algeb |
\(\Delta \omega_{max} z_u^{lim_{dw}} + \Delta \omega_{min} z_l^{lim_{dw}} + x_{dw} z_i^{lim_{dw}}\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(V_{ref} u\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(I_{d0} + K_{Pv} \left(- V_{d} + v_{ref2}\right)\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(I_{q0} - K_{Pv} V_{q}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(K_{Pi} \left(- I_{d} + y_{PIvd}\right)\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(K_{Pi} \left(- I_{q} + y_{PIvq}\right)\) |
udref |
\(u_{dref}\) |
Algeb |
\(u_{dref0}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(u_{qref0}\) |
a |
\(\theta\) |
ExtAlgeb |
|
v |
\(V\) |
ExtAlgeb |
|
Idref |
\(Idref\) |
AliasAlgeb |
|
Iqref |
\(Iqref\) |
AliasAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
\(P_{e} - y_{Psen}\) |
\(T_c\) |
Qsen_y |
\(y_{Qsen}\) |
State |
\(Q_{e} - y_{Qsen}\) |
\(T_c\) |
Psig_y |
\(y_{Psig}\) |
State |
\(Paux + y_{Psen} - y_{Psig}\) |
\(T_{pm}\) |
Qsig_y |
\(y_{Qsig}\) |
State |
\(Qaux + y_{Qsen} - y_{Qsig}\) |
\(T_{pm}\) |
PIplim_xi |
\(xi_{PIplim}\) |
State |
\(K_{Iplim} \left(- y_{Psen} + y_{Psig}\right)\) |
|
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
\(K_{Iqlim} \left(- y_{Qsen} + y_{Qsig}\right)\) |
|
delta |
\(\delta\) |
State |
\(y_{dw}\) |
|
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(K_{Iv} \left(- V_{d} + v_{ref2}\right)\) |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(- K_{Iv} V_{q}\) |
|
PIId_xi |
\(xi_{PIId}\) |
State |
\(K_{Ii} \left(- I_{d} + y_{PIvd}\right)\) |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(K_{Ii} \left(- I_{q} + y_{PIvq}\right)\) |
|
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref} - y_{udLag}\) |
\(T_e\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref} - y_{uqLag}\) |
\(T_e\) |
ud |
\(ud\) |
AliasState |
\(0\) |
|
uq |
\(uq\) |
AliasState |
\(0\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
Paux |
\(Paux\) |
Algeb |
\(Paux\) |
Qaux |
\(Qaux\) |
Algeb |
\(Qaux\) |
PIplim_y |
\(y_{PIplim}\) |
Algeb |
\(K_{Pplim} \left(- y_{Psen} + y_{Psig}\right) + xi_{PIplim} - y_{PIplim}\) |
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
\(K_{Pqlim} \left(- y_{Qsen} + y_{Qsig}\right) + xi_{PIqlim} - y_{PIqlim}\) |
vd |
\(V_{d}\) |
Algeb |
\(V u \cos{\left(\delta - \theta \right)} - V_{d}\) |
vq |
\(V_{q}\) |
Algeb |
\(- V u \sin{\left(\delta - \theta \right)} - V_{q}\) |
Pe |
\(P_{e}\) |
Algeb |
\(I_{d} V_{d} + I_{q} V_{q} - P_{e}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(I_{d} V_{q} - I_{q} V_{d} - Q_{e}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d} r_{a} - I_{q} x_{s} + V_{d} - y_{udLag}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{d} x_{s} + I_{q} r_{a} + V_{q} - y_{uqLag}\) |
dw_x |
\(x_{dw}\) |
Algeb |
\(\omega_{drp} w_{0} \left(y_{PIplim} - y_{Psen}\right) - x_{dw}\) |
dw_y |
\(y_{dw}\) |
Algeb |
\(\Delta \omega_{max} z_u^{lim_{dw}} + \Delta \omega_{min} z_l^{lim_{dw}} + x_{dw} z_i^{lim_{dw}} - y_{dw}\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(Q_{drp} \left(u y_{PIqlim} - y_{Qsen}\right) + V_{ref} - v_{ref2}\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(K_{Pv} \left(- V_{d} + v_{ref2}\right) + xi_{PIvd} - y_{PIvd}\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(- K_{Pv} V_{q} + xi_{PIvq} - y_{PIvq}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(K_{Pi} \left(- I_{d} + y_{PIvd}\right) + xi_{PIId} - y_{PIId}\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(K_{Pi} \left(- I_{q} + y_{PIvq}\right) + xi_{PIIq} - y_{PIIq}\) |
udref |
\(u_{dref}\) |
Algeb |
\(I_{d} r_{a} - I_{q} x_{s} + V_{d} - u_{dref} + y_{PIId}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(I_{d} x_{s} + I_{q} r_{a} + V_{q} - u_{qref} + y_{PIIq}\) |
a |
\(\theta\) |
ExtAlgeb |
\(- P_{e} u\) |
v |
\(V\) |
ExtAlgeb |
\(- Q_{e} u\) |
Idref |
\(Idref\) |
AliasAlgeb |
\(0\) |
Iqref |
\(Iqref\) |
AliasAlgeb |
\(0\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
Pref |
\(P_{ref}\) |
\(P_{0s} \gamma_{P}\) |
ConstService |
Qref |
\(Q_{ref}\) |
\(Q_{0s} \gamma_{Q}\) |
ConstService |
w0 |
\(w0\) |
\(2 \pi f\) |
ConstService |
ixf |
\(1/xf\) |
\(\frac{1}{x_{s}}\) |
ConstService |
Id0 |
\(I_{d0}\) |
\(\frac{P_{ref} u}{V}\) |
ConstService |
Iq0 |
\(I_{q0}\) |
\(- \frac{Q_{ref} u}{V}\) |
ConstService |
vd0 |
\(v_{d0}\) |
\(V u\) |
ConstService |
vq0 |
\(v_{q0}\) |
\(0\) |
ConstService |
udref0 |
\(u_{dref0}\) |
\(I_{d0} r_{a} - I_{q0} x_{s} + v_{d0}\) |
ConstService |
uqref0 |
\(u_{qref0}\) |
\(I_{d0} x_{s} + I_{q0} r_{a} + v_{q0}\) |
ConstService |
Discretes#
Name |
Symbol |
Type |
Info |
---|---|---|---|
Psig_lim |
\(lim_{Psig}\) |
AntiWindup |
Limiter in Lag |
Qsig_lim |
\(lim_{Qsig}\) |
AntiWindup |
Limiter in Lag |
dw_lim |
\(lim_{dw}\) |
HardLimiter |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
Psen |
\(Psen\) |
Lag |
|
Qsen |
\(Qsen\) |
Lag |
|
Psig |
\(Psig\) |
LagAntiWindup |
|
Qsig |
\(Qsig\) |
LagAntiWindup |
|
PIplim |
\(PIplim\) |
PIController |
|
PIqlim |
\(PIqlim\) |
PIController |
|
dw |
\(dw\) |
GainLimiter |
|
PIvd |
\(PIvd\) |
PIController |
|
PIvq |
\(PIvq\) |
PIController |
|
PIId |
\(PIId\) |
PIController |
|
PIIq |
\(PIIq\) |
PIController |
|
udLag |
\(udLag\) |
Lag |
|
uqLag |
\(uqLag\) |
Lag |
Config Fields in [REGF1]
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) |
REGF2#
Grid-forming inverter with VSM control.
Implementation of EPRI Memorandum
Ramasubramanian, "PROPOSAL FOR SUITE OF GENERIC GRID FORMING (GFM) POSITIVE SEQUENCE MODELS"
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\) |
Model MVA base |
100 |
MVA |
|
rf |
\(r_a\) |
resistance |
0 |
z |
|
xf |
\(x_s\) |
reactance |
0.200 |
z |
|
Vdip |
\(V_{dip}\) |
V threshold to freeze states |
0.800 |
p.u. |
|
Tfrz |
\(T_{frz}\) |
Time to keep state frozen |
0 |
||
PQFLAG |
P/Q priority flag; 0-Q priority, 1-P priority |
1 |
bool |
||
fn |
\(f\) |
rated frequency |
60 |
||
dwmax |
\(\Delta \omega_{max}\) |
maximum value of frequency deviation |
75 |
||
dwmin |
\(\Delta \omega_{min}\) |
minimum value of frequency deviation |
-75 |
||
wdrp |
\(\omega_{drp}\) |
frequency droop percentage |
0.033 |
||
Qdrp |
\(Q_{drp}\) |
Voltage droop percentage |
0.045 |
||
Tr |
\(T_c\) |
transducer time constant |
0.005 |
s |
|
Te |
\(T_e\) |
ouput state time constant |
0.005 |
s |
|
KPi |
\(K_{Pi}\) |
current control proportional gain |
0.500 |
non_negative |
|
KIi |
\(K_{Ii}\) |
current control integral gain |
20 |
non_negative |
|
KPv |
\(K_{Pv}\) |
voltage control proportional gain |
3 |
non_negative |
|
KIv |
\(K_{Iv}\) |
voltage control integral gain |
10 |
non_negative |
|
Pmax |
\(P_{max}\) |
max. active power |
1 |
non_negative,power |
|
Pmin |
\(P_{min}\) |
min. active power |
-1 |
power |
|
KPplim |
\(K_{Pplim}\) |
Kp for P limits |
5 |
non_negative |
|
KIplim |
\(K_{Iplim}\) |
KI for P limits |
30 |
non_negative |
|
Qmax |
\(Q_{max}\) |
max. reactive power |
1 |
non_negative,power |
|
Qmin |
\(Q_{min}\) |
min. reactive power |
-1 |
power |
|
KPqlim |
\(K_{Pqlim}\) |
Kp for Q limits |
0.100 |
non_negative |
|
KIqlim |
\(K_{Iqlim}\) |
KI for Q limits |
1.500 |
non_negative |
|
Tpm |
\(T_{pm}\) |
power signal input delay (3 Delta t) |
0.025 |
||
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
||
mf |
\(M_f\) |
VSM inertia constant |
0.150 |
||
dd |
\(d_d\) |
VSM damping factor |
0.110 |
||
pll |
PLL device idx (optional) |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
State in lag transfer function |
v_str |
|
Qsen_y |
\(y_{Qsen}\) |
State |
State in lag transfer function |
v_str |
|
Psig_y |
\(y_{Psig}\) |
State |
State in lag TF |
v_str |
|
Qsig_y |
\(y_{Qsig}\) |
State |
State in lag TF |
v_str |
|
PIplim_xi |
\(xi_{PIplim}\) |
State |
Integrator output |
v_str |
|
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
Integrator output |
v_str |
|
delta |
\(\delta\) |
State |
virtual delta |
rad |
v_str |
INTw_y |
\(y_{INTw}\) |
State |
Integrator output |
v_str |
|
PIvd_xi |
\(xi_{PIvd}\) |
State |
Integrator output |
v_str |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
Integrator output |
v_str |
|
PIId_xi |
\(xi_{PIId}\) |
State |
Integrator output |
v_str |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
Integrator output |
v_str |
|
udLag_y |
\(y_{udLag}\) |
State |
State in lag transfer function |
v_str |
|
uqLag_y |
\(y_{uqLag}\) |
State |
State in lag transfer function |
v_str |
|
ud |
\(ud\) |
AliasState |
Alias of udLag_y |
||
uq |
\(uq\) |
AliasState |
Alias of uqLag_y |
||
Paux |
\(Paux\) |
Algeb |
v_str |
||
Qaux |
\(Qaux\) |
Algeb |
v_str |
||
PIplim_y |
\(y_{PIplim}\) |
Algeb |
PI output |
v_str |
|
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
PI output |
v_str |
|
vd |
\(V_{d}\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(V_{q}\) |
Algeb |
q-axis voltage |
v_str |
|
Pe |
\(P_{e}\) |
Algeb |
active power injection from VSC |
v_str |
|
Qe |
\(Q_{e}\) |
Algeb |
reactive power injection from VSC |
v_str |
|
Id |
\(I_{d}\) |
Algeb |
d-axis current |
v_str |
|
Iq |
\(I_{q}\) |
Algeb |
q-axis current |
v_str |
|
wref |
\(\omega_{ref}\) |
Algeb |
speed ref |
pu |
v_str |
dw_x |
\(x_{dw}\) |
Algeb |
Value before limiter |
v_str |
|
dw_y |
\(y_{dw}\) |
Algeb |
Output after limiter and post gain |
v_str |
|
vref2 |
\(v_{ref2}\) |
Algeb |
voltage reference after droop |
v_str |
|
PIvd_y |
\(y_{PIvd}\) |
Algeb |
PI output |
v_str |
|
PIvq_y |
\(y_{PIvq}\) |
Algeb |
PI output |
v_str |
|
PIId_y |
\(y_{PIId}\) |
Algeb |
PI output |
v_str |
|
PIIq_y |
\(y_{PIIq}\) |
Algeb |
PI output |
v_str |
|
udref |
\(u_{dref}\) |
Algeb |
ud reference |
v_str |
|
uqref |
\(u_{qref}\) |
Algeb |
uq reference |
v_str |
|
a |
\(\theta\) |
ExtAlgeb |
Bus voltage angle |
||
v |
\(V\) |
ExtAlgeb |
Bus voltage magnitude |
||
plldw |
\(\Delta \omega_{PLL}\) |
ExtAlgeb |
PLL measured freq. deviation |
||
Idref |
\(Idref\) |
AliasAlgeb |
Alias of PIvd_y |
||
Iqref |
\(Iqref\) |
AliasAlgeb |
Alias of PIvq_y |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
\(P_{e}\) |
Qsen_y |
\(y_{Qsen}\) |
State |
\(Q_{e}\) |
Psig_y |
\(y_{Psig}\) |
State |
\(Paux + y_{Psen}\) |
Qsig_y |
\(y_{Qsig}\) |
State |
\(Qaux + y_{Qsen}\) |
PIplim_xi |
\(xi_{PIplim}\) |
State |
\(y_{Psen}\) |
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
\(y_{Qsen}\) |
delta |
\(\delta\) |
State |
\(\theta\) |
INTw_y |
\(y_{INTw}\) |
State |
\(\omega_{ref}\) |
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(I_{d0}\) |
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(I_{q0}\) |
PIId_xi |
\(xi_{PIId}\) |
State |
\(0.0\) |
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(0.0\) |
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref}\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref}\) |
ud |
\(ud\) |
AliasState |
|
uq |
\(uq\) |
AliasState |
|
Paux |
\(Paux\) |
Algeb |
\(0\) |
Qaux |
\(Qaux\) |
Algeb |
\(0\) |
PIplim_y |
\(y_{PIplim}\) |
Algeb |
\(K_{Pplim} \left(- y_{Psen} + y_{Psig}\right) + y_{Psen}\) |
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
\(K_{Pqlim} \left(- y_{Qsen} + y_{Qsig}\right) + y_{Qsen}\) |
vd |
\(V_{d}\) |
Algeb |
\(v_{d0}\) |
vq |
\(V_{q}\) |
Algeb |
\(v_{q0}\) |
Pe |
\(P_{e}\) |
Algeb |
\(P_{ref}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(Q_{ref}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d0}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{q0}\) |
wref |
\(\omega_{ref}\) |
Algeb |
\(1\) |
dw_x |
\(x_{dw}\) |
Algeb |
\(w_{0} \left(- \omega_{ref} + y_{INTw}\right)\) |
dw_y |
\(y_{dw}\) |
Algeb |
\(\Delta \omega_{max} z_u^{lim_{dw}} + \Delta \omega_{min} z_l^{lim_{dw}} + x_{dw} z_i^{lim_{dw}}\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(V_{ref} u\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(I_{d0} + K_{Pv} \left(- V_{d} + v_{ref2}\right)\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(I_{q0} - K_{Pv} V_{q}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(K_{Pi} \left(- I_{d} + y_{PIvd}\right)\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(K_{Pi} \left(- I_{q} + y_{PIvq}\right)\) |
udref |
\(u_{dref}\) |
Algeb |
\(u_{dref0}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(u_{qref0}\) |
a |
\(\theta\) |
ExtAlgeb |
|
v |
\(V\) |
ExtAlgeb |
|
plldw |
\(\Delta \omega_{PLL}\) |
ExtAlgeb |
|
Idref |
\(Idref\) |
AliasAlgeb |
|
Iqref |
\(Iqref\) |
AliasAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
\(P_{e} - y_{Psen}\) |
\(T_c\) |
Qsen_y |
\(y_{Qsen}\) |
State |
\(Q_{e} - y_{Qsen}\) |
\(T_c\) |
Psig_y |
\(y_{Psig}\) |
State |
\(Paux + y_{Psen} - y_{Psig}\) |
\(T_{pm}\) |
Qsig_y |
\(y_{Qsig}\) |
State |
\(Qaux + y_{Qsen} - y_{Qsig}\) |
\(T_{pm}\) |
PIplim_xi |
\(xi_{PIplim}\) |
State |
\(K_{Iplim} \left(- y_{Psen} + y_{Psig}\right)\) |
|
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
\(K_{Iqlim} \left(- y_{Qsen} + y_{Qsig}\right)\) |
|
delta |
\(\delta\) |
State |
\(y_{dw}\) |
|
INTw_y |
\(y_{INTw}\) |
State |
\(\Delta \omega_{PLL} \omega_{drp} d_{d} + \omega_{drp} \left(y_{PIplim} - y_{Psen}\right) + \omega_{ref} - y_{INTw}\) |
\(T_{int}\) |
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(K_{Iv} \left(- V_{d} + v_{ref2}\right)\) |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(- K_{Iv} V_{q}\) |
|
PIId_xi |
\(xi_{PIId}\) |
State |
\(K_{Ii} \left(- I_{d} + y_{PIvd}\right)\) |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(K_{Ii} \left(- I_{q} + y_{PIvq}\right)\) |
|
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref} - y_{udLag}\) |
\(T_e\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref} - y_{uqLag}\) |
\(T_e\) |
ud |
\(ud\) |
AliasState |
\(0\) |
|
uq |
\(uq\) |
AliasState |
\(0\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
Paux |
\(Paux\) |
Algeb |
\(Paux\) |
Qaux |
\(Qaux\) |
Algeb |
\(Qaux\) |
PIplim_y |
\(y_{PIplim}\) |
Algeb |
\(K_{Pplim} \left(- y_{Psen} + y_{Psig}\right) + xi_{PIplim} - y_{PIplim}\) |
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
\(K_{Pqlim} \left(- y_{Qsen} + y_{Qsig}\right) + xi_{PIqlim} - y_{PIqlim}\) |
vd |
\(V_{d}\) |
Algeb |
\(V u \cos{\left(\delta - \theta \right)} - V_{d}\) |
vq |
\(V_{q}\) |
Algeb |
\(- V u \sin{\left(\delta - \theta \right)} - V_{q}\) |
Pe |
\(P_{e}\) |
Algeb |
\(I_{d} V_{d} + I_{q} V_{q} - P_{e}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(I_{d} V_{q} - I_{q} V_{d} - Q_{e}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d} r_{a} - I_{q} x_{s} + V_{d} - y_{udLag}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{d} x_{s} + I_{q} r_{a} + V_{q} - y_{uqLag}\) |
wref |
\(\omega_{ref}\) |
Algeb |
\(1 - \omega_{ref}\) |
dw_x |
\(x_{dw}\) |
Algeb |
\(w_{0} \left(- \omega_{ref} + y_{INTw}\right) - x_{dw}\) |
dw_y |
\(y_{dw}\) |
Algeb |
\(\Delta \omega_{max} z_u^{lim_{dw}} + \Delta \omega_{min} z_l^{lim_{dw}} + x_{dw} z_i^{lim_{dw}} - y_{dw}\) |
vref2 |
\(v_{ref2}\) |
Algeb |
\(Q_{drp} \left(u y_{PIqlim} - y_{Qsen}\right) + V_{ref} - v_{ref2}\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(K_{Pv} \left(- V_{d} + v_{ref2}\right) + xi_{PIvd} - y_{PIvd}\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(- K_{Pv} V_{q} + xi_{PIvq} - y_{PIvq}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(K_{Pi} \left(- I_{d} + y_{PIvd}\right) + xi_{PIId} - y_{PIId}\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(K_{Pi} \left(- I_{q} + y_{PIvq}\right) + xi_{PIIq} - y_{PIIq}\) |
udref |
\(u_{dref}\) |
Algeb |
\(I_{d} r_{a} - I_{q} x_{s} + V_{d} - u_{dref} + y_{PIId}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(I_{d} x_{s} + I_{q} r_{a} + V_{q} - u_{qref} + y_{PIIq}\) |
a |
\(\theta\) |
ExtAlgeb |
\(- P_{e} u\) |
v |
\(V\) |
ExtAlgeb |
\(- Q_{e} u\) |
plldw |
\(\Delta \omega_{PLL}\) |
ExtAlgeb |
\(0\) |
Idref |
\(Idref\) |
AliasAlgeb |
\(0\) |
Iqref |
\(Iqref\) |
AliasAlgeb |
\(0\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
Pref |
\(P_{ref}\) |
\(P_{0s} \gamma_{P}\) |
ConstService |
Qref |
\(Q_{ref}\) |
\(Q_{0s} \gamma_{Q}\) |
ConstService |
w0 |
\(w0\) |
\(2 \pi f\) |
ConstService |
ixf |
\(1/xf\) |
\(\frac{1}{x_{s}}\) |
ConstService |
Id0 |
\(I_{d0}\) |
\(\frac{P_{ref} u}{V}\) |
ConstService |
Iq0 |
\(I_{q0}\) |
\(- \frac{Q_{ref} u}{V}\) |
ConstService |
vd0 |
\(v_{d0}\) |
\(V u\) |
ConstService |
vq0 |
\(v_{q0}\) |
\(0\) |
ConstService |
Tint |
\(T_{int}\) |
\(M_{f} \omega_{drp}\) |
ConstService |
udref0 |
\(u_{dref0}\) |
\(I_{d0} r_{a} - I_{q0} x_{s} + v_{d0}\) |
ConstService |
uqref0 |
\(u_{qref0}\) |
\(I_{d0} x_{s} + I_{q0} r_{a} + v_{q0}\) |
ConstService |
Discretes#
Name |
Symbol |
Type |
Info |
---|---|---|---|
Psig_lim |
\(lim_{Psig}\) |
AntiWindup |
Limiter in Lag |
Qsig_lim |
\(lim_{Qsig}\) |
AntiWindup |
Limiter in Lag |
dw_lim |
\(lim_{dw}\) |
HardLimiter |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
Psen |
\(Psen\) |
Lag |
|
Qsen |
\(Qsen\) |
Lag |
|
Psig |
\(Psig\) |
LagAntiWindup |
|
Qsig |
\(Qsig\) |
LagAntiWindup |
|
PIplim |
\(PIplim\) |
PIController |
|
PIqlim |
\(PIqlim\) |
PIController |
|
INTw |
\(INTw\) |
Integrator |
|
dw |
\(dw\) |
GainLimiter |
|
PIvd |
\(PIvd\) |
PIController |
|
PIvq |
\(PIvq\) |
PIController |
|
PIId |
\(PIId\) |
PIController |
|
PIIq |
\(PIIq\) |
PIController |
|
udLag |
\(udLag\) |
Lag |
|
uqLag |
\(uqLag\) |
Lag |
Config Fields in [REGF2]
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) |
REGF3#
Grid-forming inverter with dVOC.
Implementation of EPRI Memorandum
Ramasubramanian, "PROPOSAL FOR SUITE OF GENERIC GRID FORMING (GFM) POSITIVE SEQUENCE MODELS"
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\) |
Model MVA base |
100 |
MVA |
|
rf |
\(r_a\) |
resistance |
0 |
z |
|
xf |
\(x_s\) |
reactance |
0.200 |
z |
|
Vdip |
\(V_{dip}\) |
V threshold to freeze states |
0.800 |
p.u. |
|
Tfrz |
\(T_{frz}\) |
Time to keep state frozen |
0 |
||
PQFLAG |
P/Q priority flag; 0-Q priority, 1-P priority |
1 |
bool |
||
fn |
\(f\) |
rated frequency |
60 |
||
dwmax |
\(\Delta \omega_{max}\) |
maximum value of frequency deviation |
75 |
||
dwmin |
\(\Delta \omega_{min}\) |
minimum value of frequency deviation |
-75 |
||
wdrp |
\(\omega_{drp}\) |
frequency droop percentage |
0.033 |
||
Qdrp |
\(Q_{drp}\) |
Voltage droop percentage |
0.045 |
||
Tr |
\(T_c\) |
transducer time constant |
0.005 |
s |
|
Te |
\(T_e\) |
ouput state time constant |
0.005 |
s |
|
KPi |
\(K_{Pi}\) |
current control proportional gain |
0.500 |
non_negative |
|
KIi |
\(K_{Ii}\) |
current control integral gain |
20 |
non_negative |
|
KPv |
\(K_{Pv}\) |
voltage control proportional gain |
3 |
non_negative |
|
KIv |
\(K_{Iv}\) |
voltage control integral gain |
10 |
non_negative |
|
Pmax |
\(P_{max}\) |
max. active power |
1 |
non_negative,power |
|
Pmin |
\(P_{min}\) |
min. active power |
-1 |
power |
|
KPplim |
\(K_{Pplim}\) |
Kp for P limits |
5 |
non_negative |
|
KIplim |
\(K_{Iplim}\) |
KI for P limits |
30 |
non_negative |
|
Qmax |
\(Q_{max}\) |
max. reactive power |
1 |
non_negative,power |
|
Qmin |
\(Q_{min}\) |
min. reactive power |
-1 |
power |
|
KPqlim |
\(K_{Pqlim}\) |
Kp for Q limits |
0.100 |
non_negative |
|
KIqlim |
\(K_{Iqlim}\) |
KI for Q limits |
1.500 |
non_negative |
|
Tpm |
\(T_{pm}\) |
power signal input delay (3 Delta t) |
0.025 |
||
gammap |
\(\gamma_P\) |
P ratio of linked static gen |
1 |
||
gammaq |
\(\gamma_Q\) |
Q ratio of linked static gen |
1 |
Variables#
Name |
Symbol |
Type |
Description |
Unit |
Properties |
---|---|---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
State in lag transfer function |
v_str |
|
Qsen_y |
\(y_{Qsen}\) |
State |
State in lag transfer function |
v_str |
|
Psig_y |
\(y_{Psig}\) |
State |
State in lag TF |
v_str |
|
Qsig_y |
\(y_{Qsig}\) |
State |
State in lag TF |
v_str |
|
PIplim_xi |
\(xi_{PIplim}\) |
State |
Integrator output |
v_str |
|
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
Integrator output |
v_str |
|
delta |
\(\delta\) |
State |
virtual delta |
rad |
v_str |
vref2 |
\(vref_{2}\) |
State |
v_str |
||
PIvd_xi |
\(xi_{PIvd}\) |
State |
Integrator output |
v_str |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
Integrator output |
v_str |
|
PIId_xi |
\(xi_{PIId}\) |
State |
Integrator output |
v_str |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
Integrator output |
v_str |
|
udLag_y |
\(y_{udLag}\) |
State |
State in lag transfer function |
v_str |
|
uqLag_y |
\(y_{uqLag}\) |
State |
State in lag transfer function |
v_str |
|
ud |
\(ud\) |
AliasState |
Alias of udLag_y |
||
uq |
\(uq\) |
AliasState |
Alias of uqLag_y |
||
Paux |
\(Paux\) |
Algeb |
v_str |
||
Qaux |
\(Qaux\) |
Algeb |
v_str |
||
PIplim_y |
\(y_{PIplim}\) |
Algeb |
PI output |
v_str |
|
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
PI output |
v_str |
|
vd |
\(V_{d}\) |
Algeb |
d-axis voltage |
v_str |
|
vq |
\(V_{q}\) |
Algeb |
q-axis voltage |
v_str |
|
Pe |
\(P_{e}\) |
Algeb |
active power injection from VSC |
v_str |
|
Qe |
\(Q_{e}\) |
Algeb |
reactive power injection from VSC |
v_str |
|
Id |
\(I_{d}\) |
Algeb |
d-axis current |
v_str |
|
Iq |
\(I_{q}\) |
Algeb |
q-axis current |
v_str |
|
wref |
\(\omega_{ref}\) |
Algeb |
speed ref |
pu |
v_str |
Vref |
\(Vref\) |
Algeb |
v_str |
||
dw_x |
\(x_{dw}\) |
Algeb |
Value before limiter |
v_str |
|
dw_y |
\(y_{dw}\) |
Algeb |
Output after limiter and post gain |
v_str |
|
derv |
\(dV\) |
Algeb |
input to voltage integrator |
v_str |
|
PIvd_y |
\(y_{PIvd}\) |
Algeb |
PI output |
v_str |
|
PIvq_y |
\(y_{PIvq}\) |
Algeb |
PI output |
v_str |
|
PIId_y |
\(y_{PIId}\) |
Algeb |
PI output |
v_str |
|
PIIq_y |
\(y_{PIIq}\) |
Algeb |
PI output |
v_str |
|
udref |
\(u_{dref}\) |
Algeb |
ud reference |
v_str |
|
uqref |
\(u_{qref}\) |
Algeb |
uq reference |
v_str |
|
a |
\(\theta\) |
ExtAlgeb |
Bus voltage angle |
||
v |
\(V\) |
ExtAlgeb |
Bus voltage magnitude |
||
Idref |
\(Idref\) |
AliasAlgeb |
Alias of PIvd_y |
||
Iqref |
\(Iqref\) |
AliasAlgeb |
Alias of PIvq_y |
Initialization Equations#
Name |
Symbol |
Type |
Initial Value |
---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
\(P_{e}\) |
Qsen_y |
\(y_{Qsen}\) |
State |
\(Q_{e}\) |
Psig_y |
\(y_{Psig}\) |
State |
\(Paux + y_{Psen}\) |
Qsig_y |
\(y_{Qsig}\) |
State |
\(Qaux + y_{Qsen}\) |
PIplim_xi |
\(xi_{PIplim}\) |
State |
\(y_{Psen}\) |
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
\(y_{Qsen}\) |
delta |
\(\delta\) |
State |
\(\theta\) |
vref2 |
\(vref_{2}\) |
State |
\(V_{d}\) |
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(I_{d0}\) |
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(I_{q0}\) |
PIId_xi |
\(xi_{PIId}\) |
State |
\(0.0\) |
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(0.0\) |
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref}\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref}\) |
ud |
\(ud\) |
AliasState |
|
uq |
\(uq\) |
AliasState |
|
Paux |
\(Paux\) |
Algeb |
\(0\) |
Qaux |
\(Qaux\) |
Algeb |
\(0\) |
PIplim_y |
\(y_{PIplim}\) |
Algeb |
\(K_{Pplim} \left(- y_{Psen} + y_{Psig}\right) + y_{Psen}\) |
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
\(K_{Pqlim} \left(- y_{Qsen} + y_{Qsig}\right) + y_{Qsen}\) |
vd |
\(V_{d}\) |
Algeb |
\(v_{d0}\) |
vq |
\(V_{q}\) |
Algeb |
\(v_{q0}\) |
Pe |
\(P_{e}\) |
Algeb |
\(P_{ref}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(Q_{ref}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d0}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{q0}\) |
wref |
\(\omega_{ref}\) |
Algeb |
\(1\) |
Vref |
\(Vref\) |
Algeb |
\(V_{ref}\) |
dw_x |
\(x_{dw}\) |
Algeb |
\(\frac{\omega_{drp} w_{0} \left(y_{PIplim} - y_{Psen}\right)}{vref_{2}^{2}}\) |
dw_y |
\(y_{dw}\) |
Algeb |
\(\Delta \omega_{max} z_u^{lim_{dw}} + \Delta \omega_{min} z_l^{lim_{dw}} + x_{dw} z_i^{lim_{dw}}\) |
derv |
\(dV\) |
Algeb |
\(0\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(I_{d0} + K_{Pv} \left(- V_{d} + vref_{2}\right)\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(I_{q0} - K_{Pv} V_{q}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(K_{Pi} \left(- I_{d} + y_{PIvd}\right)\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(K_{Pi} \left(- I_{q} + y_{PIvq}\right)\) |
udref |
\(u_{dref}\) |
Algeb |
\(u_{dref0}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(u_{qref0}\) |
a |
\(\theta\) |
ExtAlgeb |
|
v |
\(V\) |
ExtAlgeb |
|
Idref |
\(Idref\) |
AliasAlgeb |
|
Iqref |
\(Iqref\) |
AliasAlgeb |
Differential Equations#
Name |
Symbol |
Type |
RHS of Equation "T x' = f(x, y)" |
T (LHS) |
---|---|---|---|---|
Psen_y |
\(y_{Psen}\) |
State |
\(P_{e} - y_{Psen}\) |
\(T_c\) |
Qsen_y |
\(y_{Qsen}\) |
State |
\(Q_{e} - y_{Qsen}\) |
\(T_c\) |
Psig_y |
\(y_{Psig}\) |
State |
\(Paux + y_{Psen} - y_{Psig}\) |
\(T_{pm}\) |
Qsig_y |
\(y_{Qsig}\) |
State |
\(Qaux + y_{Qsen} - y_{Qsig}\) |
\(T_{pm}\) |
PIplim_xi |
\(xi_{PIplim}\) |
State |
\(K_{Iplim} \left(- y_{Psen} + y_{Psig}\right)\) |
|
PIqlim_xi |
\(xi_{PIqlim}\) |
State |
\(K_{Iqlim} \left(- y_{Qsen} + y_{Qsig}\right)\) |
|
delta |
\(\delta\) |
State |
\(y_{dw}\) |
|
vref2 |
\(vref_{2}\) |
State |
\(dV w_{0}\) |
|
PIvd_xi |
\(xi_{PIvd}\) |
State |
\(K_{Iv} \left(- V_{d} + vref_{2}\right)\) |
|
PIvq_xi |
\(xi_{PIvq}\) |
State |
\(- K_{Iv} V_{q}\) |
|
PIId_xi |
\(xi_{PIId}\) |
State |
\(K_{Ii} \left(- I_{d} + y_{PIvd}\right)\) |
|
PIIq_xi |
\(xi_{PIIq}\) |
State |
\(K_{Ii} \left(- I_{q} + y_{PIvq}\right)\) |
|
udLag_y |
\(y_{udLag}\) |
State |
\(u_{dref} - y_{udLag}\) |
\(T_e\) |
uqLag_y |
\(y_{uqLag}\) |
State |
\(u_{qref} - y_{uqLag}\) |
\(T_e\) |
ud |
\(ud\) |
AliasState |
\(0\) |
|
uq |
\(uq\) |
AliasState |
\(0\) |
Algebraic Equations#
Name |
Symbol |
Type |
RHS of Equation "0 = g(x, y)" |
---|---|---|---|
Paux |
\(Paux\) |
Algeb |
\(Paux\) |
Qaux |
\(Qaux\) |
Algeb |
\(Qaux\) |
PIplim_y |
\(y_{PIplim}\) |
Algeb |
\(K_{Pplim} \left(- y_{Psen} + y_{Psig}\right) + xi_{PIplim} - y_{PIplim}\) |
PIqlim_y |
\(y_{PIqlim}\) |
Algeb |
\(K_{Pqlim} \left(- y_{Qsen} + y_{Qsig}\right) + xi_{PIqlim} - y_{PIqlim}\) |
vd |
\(V_{d}\) |
Algeb |
\(V u \cos{\left(\delta - \theta \right)} - V_{d}\) |
vq |
\(V_{q}\) |
Algeb |
\(- V u \sin{\left(\delta - \theta \right)} - V_{q}\) |
Pe |
\(P_{e}\) |
Algeb |
\(I_{d} V_{d} + I_{q} V_{q} - P_{e}\) |
Qe |
\(Q_{e}\) |
Algeb |
\(I_{d} V_{q} - I_{q} V_{d} - Q_{e}\) |
Id |
\(I_{d}\) |
Algeb |
\(I_{d} r_{a} - I_{q} x_{s} + V_{d} - y_{udLag}\) |
Iq |
\(I_{q}\) |
Algeb |
\(I_{d} x_{s} + I_{q} r_{a} + V_{q} - y_{uqLag}\) |
wref |
\(\omega_{ref}\) |
Algeb |
\(1 - \omega_{ref}\) |
Vref |
\(Vref\) |
Algeb |
\(V_{ref} - Vref\) |
dw_x |
\(x_{dw}\) |
Algeb |
\(\frac{\omega_{drp} w_{0} \left(y_{PIplim} - y_{Psen}\right)}{vref_{2}^{2}} - x_{dw}\) |
dw_y |
\(y_{dw}\) |
Algeb |
\(\Delta \omega_{max} z_u^{lim_{dw}} + \Delta \omega_{min} z_l^{lim_{dw}} + x_{dw} z_i^{lim_{dw}} - y_{dw}\) |
derv |
\(dV\) |
Algeb |
\(Kdvoc vref_{2} \left(Vref - vref_{2}\right) \left(Vref + vref_{2}\right) + \frac{\omega_{drp} \left(y_{PIqlim} - y_{Qsen}\right)}{vref_{2}} - dV\) |
PIvd_y |
\(y_{PIvd}\) |
Algeb |
\(K_{Pv} \left(- V_{d} + vref_{2}\right) + xi_{PIvd} - y_{PIvd}\) |
PIvq_y |
\(y_{PIvq}\) |
Algeb |
\(- K_{Pv} V_{q} + xi_{PIvq} - y_{PIvq}\) |
PIId_y |
\(y_{PIId}\) |
Algeb |
\(K_{Pi} \left(- I_{d} + y_{PIvd}\right) + xi_{PIId} - y_{PIId}\) |
PIIq_y |
\(y_{PIIq}\) |
Algeb |
\(K_{Pi} \left(- I_{q} + y_{PIvq}\right) + xi_{PIIq} - y_{PIIq}\) |
udref |
\(u_{dref}\) |
Algeb |
\(I_{d} r_{a} - I_{q} x_{s} + V_{d} - u_{dref} + y_{PIId}\) |
uqref |
\(u_{qref}\) |
Algeb |
\(I_{d} x_{s} + I_{q} r_{a} + V_{q} - u_{qref} + y_{PIIq}\) |
a |
\(\theta\) |
ExtAlgeb |
\(- P_{e} u\) |
v |
\(V\) |
ExtAlgeb |
\(- Q_{e} u\) |
Idref |
\(Idref\) |
AliasAlgeb |
\(0\) |
Iqref |
\(Iqref\) |
AliasAlgeb |
\(0\) |
Services#
Name |
Symbol |
Equation |
Type |
---|---|---|---|
Pref |
\(P_{ref}\) |
\(P_{0s} \gamma_{P}\) |
ConstService |
Qref |
\(Q_{ref}\) |
\(Q_{0s} \gamma_{Q}\) |
ConstService |
w0 |
\(w0\) |
\(2 \pi f\) |
ConstService |
ixf |
\(1/xf\) |
\(\frac{1}{x_{s}}\) |
ConstService |
Id0 |
\(I_{d0}\) |
\(\frac{P_{ref} u}{V}\) |
ConstService |
Iq0 |
\(I_{q0}\) |
\(- \frac{Q_{ref} u}{V}\) |
ConstService |
vd0 |
\(v_{d0}\) |
\(V u\) |
ConstService |
vq0 |
\(v_{q0}\) |
\(0\) |
ConstService |
Kdvoc |
\(Kdvoc\) |
\(\frac{400000000 \omega_{drp}}{\left(99990000 - 2 \left(100 - 100 Q_{drp}\right)^{2}\right)^{2}}\) |
ConstService |
udref0 |
\(u_{dref0}\) |
\(I_{d0} r_{a} - I_{q0} x_{s} + v_{d0}\) |
ConstService |
uqref0 |
\(u_{qref0}\) |
\(I_{d0} x_{s} + I_{q0} r_{a} + v_{q0}\) |
ConstService |
Discretes#
Name |
Symbol |
Type |
Info |
---|---|---|---|
Psig_lim |
\(lim_{Psig}\) |
AntiWindup |
Limiter in Lag |
Qsig_lim |
\(lim_{Qsig}\) |
AntiWindup |
Limiter in Lag |
dw_lim |
\(lim_{dw}\) |
HardLimiter |
Blocks#
Name |
Symbol |
Type |
Info |
---|---|---|---|
Psen |
\(Psen\) |
Lag |
|
Qsen |
\(Qsen\) |
Lag |
|
Psig |
\(Psig\) |
LagAntiWindup |
|
Qsig |
\(Qsig\) |
LagAntiWindup |
|
PIplim |
\(PIplim\) |
PIController |
|
PIqlim |
\(PIqlim\) |
PIController |
|
dw |
\(dw\) |
GainLimiter |
|
PIvd |
\(PIvd\) |
PIController |
|
PIvq |
\(PIvq\) |
PIController |
|
PIId |
\(PIId\) |
PIController |
|
PIIq |
\(PIIq\) |
PIController |
|
udLag |
\(udLag\) |
Lag |
|
uqLag |
\(uqLag\) |
Lag |
Config Fields in [REGF3]
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) |