.. _StaticGen: ================================================================================ StaticGen ================================================================================ Generator group. Notes ----- For co-simulation with ANDES, check `ANDES StaticGen `_ for replacing static generators with dynamic generators. Common Parameters: u, name, idx, Sn, Vn, p0, q0, ra, xs, subidx Common Variables: p, q Available models: PV_, Slack_ .. _PV: -------------------------------------------------------------------------------- PV -------------------------------------------------------------------------------- PV generator model. TODO: implement type conversion in config Parameters ---------- +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Name | Symbol | Description | Default | Unit | Properties | +=========+===================+================================================+=========+===========+============+ | idx | | unique device idx | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | u | :math:`u` | connection status | 1 | *bool* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | name | | device name | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Sn | :math:`S_n` | Power rating | 100 | | non_zero | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Vn | :math:`V_n` | AC voltage rating | 110 | | non_zero | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | subidx | | index for generators on the same bus | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | bus | | idx of the installed bus | | | mandatory | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | busr | | bus idx for remote voltage control | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | p0 | :math:`p_0` | active power set point in system base | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | q0 | :math:`q_0` | reactive power set point in system base | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | pmax | :math:`p_{max}` | maximum active power in system base | 999 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | pmin | :math:`p_{min}` | minimum active power in system base | -1 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | qmax | :math:`q_{max}` | maximim reactive power in system base | 999 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | qmin | :math:`q_{min}` | minimum reactive power in system base | -999 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | v0 | :math:`v_0` | voltage set point | 1 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | vmax | :math:`v_{max}` | maximum voltage voltage | 1.400 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | vmin | :math:`v_{min}` | minimum allowed voltage | 0.600 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | ra | :math:`r_a` | armature resistance | 0 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | xs | :math:`x_s` | armature reactance | 0.300 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | ctrl | :math:`c_{trl}` | generator controllability | 1 | *boolean* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Pc1 | :math:`P_{c1}` | lower real power output of PQ capability curve | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Pc2 | :math:`P_{c2}` | upper real power output of PQ capability curve | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc1min | :math:`Q_{c1min}` | minimum reactive power output at Pc1 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc1max | :math:`Q_{c1max}` | maximum reactive power output at Pc1 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc2min | :math:`Q_{c2min}` | minimum reactive power output at Pc2 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc2max | :math:`Q_{c2max}` | maximum reactive power output at Pc2 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Ragc | :math:`R_{agc}` | ramp rate for load following/AGC | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | R10 | :math:`R_{10}` | ramp rate for 10 minute reserves | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | R30 | :math:`R_{30}` | 30 minute ramp rate | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Rq | :math:`R_{q}` | ramp rate for reactive power (2 sec timescale) | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | apf | :math:`a_{pf}` | area participation factor | 0 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | pg0 | :math:`p_{g0}` | active power start point (system base) | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | td1 | :math:`t_{d1}` | minimum ON duration | 0 | *h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | td2 | :math:`t_{d2}` | minimum OFF duration | 0 | *h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | zone | | Retrieved zone idx | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ Variables --------- +------+-------------+-------+----------------------------+--------+ | Name | Symbol | Type | Description | Unit | +======+=============+=======+============================+========+ | ud | :math:`u_d` | Algeb | connection status decision | *bool* | +------+-------------+-------+----------------------------+--------+ | p | :math:`p` | Algeb | active power generation | *p.u.* | +------+-------------+-------+----------------------------+--------+ | q | :math:`q` | Algeb | reactive power generation | *p.u.* | +------+-------------+-------+----------------------------+--------+ .. _Slack: -------------------------------------------------------------------------------- Slack -------------------------------------------------------------------------------- Slack generator model. Parameters ---------- +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Name | Symbol | Description | Default | Unit | Properties | +=========+===================+================================================+=========+===========+============+ | idx | | unique device idx | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | u | :math:`u` | connection status | 1 | *bool* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | name | | device name | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Sn | :math:`S_n` | Power rating | 100 | | non_zero | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Vn | :math:`V_n` | AC voltage rating | 110 | | non_zero | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | subidx | | index for generators on the same bus | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | bus | | idx of the installed bus | | | mandatory | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | busr | | bus idx for remote voltage control | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | p0 | :math:`p_0` | active power set point in system base | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | q0 | :math:`q_0` | reactive power set point in system base | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | pmax | :math:`p_{max}` | maximum active power in system base | 999 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | pmin | :math:`p_{min}` | minimum active power in system base | -1 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | qmax | :math:`q_{max}` | maximim reactive power in system base | 999 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | qmin | :math:`q_{min}` | minimum reactive power in system base | -999 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | v0 | :math:`v_0` | voltage set point | 1 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | vmax | :math:`v_{max}` | maximum voltage voltage | 1.400 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | vmin | :math:`v_{min}` | minimum allowed voltage | 0.600 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | ra | :math:`r_a` | armature resistance | 0 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | xs | :math:`x_s` | armature reactance | 0.300 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | a0 | :math:`\theta_0` | reference angle set point | 0 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | ctrl | :math:`c_{trl}` | generator controllability | 1 | *boolean* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Pc1 | :math:`P_{c1}` | lower real power output of PQ capability curve | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Pc2 | :math:`P_{c2}` | upper real power output of PQ capability curve | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc1min | :math:`Q_{c1min}` | minimum reactive power output at Pc1 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc1max | :math:`Q_{c1max}` | maximum reactive power output at Pc1 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc2min | :math:`Q_{c2min}` | minimum reactive power output at Pc2 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Qc2max | :math:`Q_{c2max}` | maximum reactive power output at Pc2 | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Ragc | :math:`R_{agc}` | ramp rate for load following/AGC | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | R10 | :math:`R_{10}` | ramp rate for 10 minute reserves | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | R30 | :math:`R_{30}` | 30 minute ramp rate | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | Rq | :math:`R_{q}` | ramp rate for reactive power (2 sec timescale) | 999 | *p.u./h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | apf | :math:`a_{pf}` | area participation factor | 0 | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | pg0 | :math:`p_{g0}` | active power start point (system base) | 0 | *p.u.* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | td1 | :math:`t_{d1}` | minimum ON duration | 0 | *h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | td2 | :math:`t_{d2}` | minimum OFF duration | 0 | *h* | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ | zone | | Retrieved zone idx | | | | +---------+-------------------+------------------------------------------------+---------+-----------+------------+ Variables --------- +------+-------------+-------+----------------------------+--------+ | Name | Symbol | Type | Description | Unit | +======+=============+=======+============================+========+ | ud | :math:`u_d` | Algeb | connection status decision | *bool* | +------+-------------+-------+----------------------------+--------+ | p | :math:`p` | Algeb | active power generation | *p.u.* | +------+-------------+-------+----------------------------+--------+ | q | :math:`q` | Algeb | reactive power generation | *p.u.* | +------+-------------+-------+----------------------------+--------+