TurbineGov

DEGOV

PowerSystems.DEGOVType
mutable struct DEGOV <: TurbineGov
    T1::Float64
    T2::Float64
    T3::Float64
    K::Float64
    T4::Float64
    T5::Float64
    T6::Float64
    Td::Float64
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    states_types::Vector{StateTypes}
    internal::InfrastructureSystemsInternal
end

Parameters Woodward Diesel Governor Model. DEGOV in PowerWorld.

Arguments

  • T1::Float64: Governor mechanism time constant, validation range: (eps(), 100)
  • T2::Float64: Turbine power time constant, validation range: (eps(), 100)
  • T3::Float64: Turbine exhaust temperature time constant, validation range: (eps(), 100)
  • K::Float64: Governor gain (reciprocal of droop), validation range: (eps(), 100)
  • T4::Float64: Governor lead time constant, validation range: (eps(), 100)
  • T5::Float64: Governor lag time constant, validation range: (eps(), 100)
  • T6::Float64: Actuator time constant, validation range: (eps(), 100)
  • Td::Float64: Engine time delay, validation range: (eps(), 100)
  • P_ref::Float64: Reference Load Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the DEGOV model are:
x_ecb1: Electric control box 1,
x_ecb2: Electric control box 2,
x_a1: Actuator 1,
x_a2: Actuator 2,
x_a3: Actuator 3,
  • n_states::Int: DEGOV has 5 states
  • states_types::Vector{StateTypes}: DEGOV has 5 differential states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

GasTG

PowerSystems.GasTGType
mutable struct GasTG <: TurbineGov
    R::Float64
    T1::Float64
    T2::Float64
    T3::Float64
    AT::Float64
    Kt::Float64
    V_lim::Tuple{Float64, Float64}
    D_turb::Float64
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    states_types::Vector{StateTypes}
    internal::InfrastructureSystemsInternal
end

Parameters of Gas Turbine-Governor. GAST in PSSE and GAST_PTI in PowerWorld.

Arguments

  • R::Float64: Speed droop parameter, validation range: (eps(), 0.1)
  • T1::Float64: Governor time constant in s, validation range: (eps(), 0.5)
  • T2::Float64: Combustion chamber time constant, validation range: (eps(), 0.5)
  • T3::Float64: Load limit time constant (exhaust gas measurement time), validation range: (eps(), 5)
  • AT::Float64: Ambient temperature load limit, validation range: (0, 1)
  • Kt::Float64: Load limit feedback gain, validation range: (0, 5)
  • V_lim::Tuple{Float64, Float64}: Operational control limits on fuel valve opening (Vmin, Vmax)
  • D_turb::Float64: Speed damping coefficient of gas turbine rotor, validation range: (0, 0.5)
  • P_ref::Float64: Reference Load Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the GAST model are:
x_g1: Fuel valve opening,
x_g2: Fuel flow,
x_g3: Exhaust temperature load
  • n_states::Int: GasTG has 3 states
  • states_types::Vector{StateTypes}: GAST has 3 differential states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

GeneralGovModel

PowerSystems.GeneralGovModelType
mutable struct GeneralGovModel <: TurbineGov
    Rselect::Int
    fuel_flag::Int
    R::Float64
    Tpelec::Float64
    speed_error_signal::MinMax
    Kp_gov::Float64
    Ki_gov::Float64
    Kd_gov::Float64
    Td_gov::Float64
    valve_position_limits::MinMax
    T_act::Float64
    K_turb::Float64
    Wf_nl::Float64
    Tb::Float64
    Tc::Float64
    T_eng::Float64
    Tf_load::Float64
    Kp_load::Float64
    Ki_load::Float64
    Ld_ref::Float64
    Dm::Float64
    R_open::Float64
    R_close::Float64
    Ki_mw::Float64
    A_set::Float64
    Ka::Float64
    Ta::Float64
    T_rate::Float64
    db::Float64
    Tsa::Float64
    Tsb::Float64
    R_lim::UpDown
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    states_types::Vector{StateTypes}
    internal::InfrastructureSystemsInternal
end

GE General Governor/Turbine Model. The GeneralGovModel (GGOV1) model is a general purpose governor model used for a variety of prime movers controlled by proportional-integral-derivative (PID) governors including gas turbines.

Arguments

  • Rselect::Int: Feedback signal for governor droop, validation range: (-2, 1), action if invalid: error
  • fuel_flag::Int: Flag Switch for fuel source characteristic, validation range: (0, 1), action if invalid: error
  • R::Float64: Speed droop parameter, validation range: (eps(), nothing), action if invalid: warn
  • Tpelec::Float64: Electrical power transducer time constant, seconds, validation range: (eps(), nothing), action if invalid: warn
  • speed_error_signal::MinMax: Speed error signal limits
  • Kp_gov::Float64: Governor proportional gain, validation range: (0, nothing), action if invalid: warn
  • Ki_gov::Float64: Governor integral gain, validation range: (0, nothing), action if invalid: warn
  • Kd_gov::Float64: Governor derivative gain, validation range: (0, nothing), action if invalid: warn
  • Td_gov::Float64: Governor derivative time constant, validation range: (0, nothing), action if invalid: warn
  • valve_position_limits::MinMax: Valve position limits
  • T_act::Float64: Actuator time constant, validation range: (0, nothing), action if invalid: warn
  • K_turb::Float64: Turbine gain, validation range: (0, nothing), action if invalid: warn
  • Wf_nl::Float64: No load fuel flow, pu, validation range: (0, nothing), action if invalid: warn
  • Tb::Float64: Turbine lag time constant, sec, validation range: (0, nothing), action if invalid: warn
  • Tc::Float64: Turbine lead time constant, sec, validation range: (0, nothing), action if invalid: warn
  • T_eng::Float64: Transport lag time constant for diesel engine, sec, validation range: (0, nothing), action if invalid: warn
  • Tf_load::Float64: Load limiter time constant, validation range: (0, nothing), action if invalid: warn
  • Kp_load::Float64: Load limiter proportional gain for PI controller, validation range: (0, nothing), action if invalid: warn
  • Ki_load::Float64: Load integral gain for PI controller, validation range: (0, nothing), action if invalid: warn
  • Ld_ref::Float64: Load limiter integral gain for PI controller, validation range: (0, nothing), action if invalid: warn
  • Dm::Float64: Mechanical damping coefficient, pu, validation range: (0, nothing), action if invalid: warn
  • R_open::Float64: Maximum valve opening rate, pu/sec, validation range: (0, nothing), action if invalid: warn
  • R_close::Float64: Maximum valve closing rate, pu/sec, validation range: (0, nothing), action if invalid: warn
  • Ki_mw::Float64: Power controller (reset) gain, validation range: (0, nothing), action if invalid: warn
  • A_set::Float64: Acceleration limiter setpoint, pu/sec, validation range: (0, nothing), action if invalid: warn
  • Ka::Float64: Acceleration limiter gain, validation range: (0, nothing), action if invalid: warn
  • Ta::Float64: Acceleration limiter time constant , validation range: (eps(), nothing), action if invalid: error
  • T_rate::Float64: Turbine rating, validation range: (0, nothing), action if invalid: warn
  • db::Float64: Speed governor deadband, validation range: (0, nothing), action if invalid: warn
  • Tsa::Float64: Temperature detection lead time constant, validation range: (0, nothing), action if invalid: warn
  • Tsb::Float64: Temperature detection lag time constant, validation range: (0, nothing), action if invalid: warn
  • R_lim::UpDown: Maximum rate of load increa
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the GGOV1 model are:
Pe: Machine Electrical Power Measurement,
x_g1: Governor differential control,
x_g2: Governor integral control, 
x_g3: Turbine actuator, 
x_g4: Turbine Lead-Lag, 
x_g5: Turbine load limiter measurement, 
x_g6: Turbine Load Limiter Integral Control, 
x_g7: Supervisory Load Control, 
x_g8: Acceleration Control, 
x_g9 Temperature Detection Lead - Lag:
  • n_states::Int: GeneralGovModel has 10 states
  • states_types::Vector{StateTypes}: GGOV1 has 10 differential states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

HydroTurbineGov

PowerSystems.HydroTurbineGovType
mutable struct HydroTurbineGov <: TurbineGov
    R::Float64
    r::Float64
    Tr::Float64
    Tf::Float64
    Tg::Float64
    VELM::Float64
    gate_position_limits::MinMax
    Tw::Float64
    At::Float64
    D_T::Float64
    q_nl::Float64
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    states_types::Vector{StateTypes}
    internal::InfrastructureSystemsInternal
end

Hydro Turbine-Governor.

Arguments

  • R::Float64: Permanent droop parameter, validation range: (0, 0.1), action if invalid: warn
  • r::Float64: Temporary Droop, validation range: (0, 2), action if invalid: warn
  • Tr::Float64: Governor time constant, validation range: (eps(), 30), action if invalid: error
  • Tf::Float64: Filter Time constant, validation range: (eps(), 0.1)
  • Tg::Float64: Servo time constant, validation range: (eps(), 1), action if invalid: error
  • VELM::Float64: gate velocity limit, validation range: (eps(), 0.3), action if invalid: error
  • gate_position_limits::MinMax: Gate position limits
  • Tw::Float64: water time constant, validation range: (eps(), 3), action if invalid: error
  • At::Float64: Turbine gain, validation range: (0.8, 1.5), action if invalid: warn
  • D_T::Float64: Turbine Damping, validation range: (0, 0.5), action if invalid: warn
  • q_nl::Float64: No-power flow, validation range: (0, nothing), action if invalid: warn
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the HydroTurbineGov model are:
x_g1: filter_output,
x_g2: desired gate, 
x_g3: gate opening, 
x_g4: turbine flow
  • n_states::Int: HYGOV has 4 states
  • states_types::Vector{StateTypes}: HYGOV has 4 differential states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

IEEETurbineGov1

PowerSystems.IEEETurbineGov1Type
mutable struct IEEETurbineGov1 <: TurbineGov
    K::Float64
    T1::Float64
    T2::Float64
    T3::Float64
    U0::Float64
    U_c::Float64
    valve_position_limits::MinMax
    T4::Float64
    K1::Float64
    K2::Float64
    T5::Float64
    K3::Float64
    K4::Float64
    T6::Float64
    K5::Float64
    K6::Float64
    T7::Float64
    K7::Float64
    K8::Float64
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    states_types::Vector{StateTypes}
    internal::InfrastructureSystemsInternal
end

IEEE Type 1 Speed-Governing Model

Arguments

  • K::Float64: Governor Gain, validation range: (5, 30), action if invalid: warn
  • T1::Float64: Input Filter Lag, validation range: (0, 5), action if invalid: warn
  • T2::Float64: Input Filter Lead, validation range: (0, 10), action if invalid: warn
  • T3::Float64: Valve position Time Constant, validation range: (eps(), 1), action if invalid: error
  • U0::Float64: Maximum Valve Opening Rate, validation range: (0.01, 0.03), action if invalid: warn
  • U_c::Float64: Maximum Valve closing rate, validation range: (-0.3, 0), action if invalid: warn
  • valve_position_limits::MinMax: Valve position limits in MW
  • T4::Float64: Time Constant inlet steam, validation range: (0, 1), action if invalid: warn
  • K1::Float64: Fraction of high presure shaft power, validation range: (-2, 1), action if invalid: warn
  • K2::Float64: Fraction of low presure shaft power, validation range: (0, nothing), action if invalid: warn
  • T5::Float64: Time constant for second boiler pass, validation range: (0, 10), action if invalid: warn
  • K3::Float64: Fraction of high presure shaft power second boiler pass, validation range: (0, 0.5), action if invalid: warn
  • K4::Float64: Fraction of low presure shaft power second boiler pass, validation range: (0, 0.5), action if invalid: warn
  • T6::Float64: Time constant for third boiler pass, validation range: (0, 10), action if invalid: warn
  • K5::Float64: Fraction of high presure shaft power third boiler pass, validation range: (0, 0.35), action if invalid: warn
  • K6::Float64: Fraction of low presure shaft power third boiler pass, validation range: (0, 0.55), action if invalid: warn
  • T7::Float64: Time constant for fourth boiler pass, validation range: (0, 10), action if invalid: warn
  • K7::Float64: Fraction of high presure shaft power fourth boiler pass, validation range: (0, 0.3), action if invalid: warn
  • K8::Float64: Fraction of low presure shaft power fourth boiler pass, validation range: (0, 0.3), action if invalid: warn
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the IEEETurbineGov model are:
x_g1: First Governor integrator,
x_g2: Governor output,
x_g3: First Turbine integrator, 
x_g4: Second Turbine Integrator, 
x_g5: Third Turbine Integrator, 
x_g6: Fourth Turbine Integrator,
  • n_states::Int: IEEEG1 has 6 states
  • states_types::Vector{StateTypes}: IEEEG1 has 6 differential states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

SteamTurbineGov1

PowerSystems.SteamTurbineGov1Type
mutable struct SteamTurbineGov1 <: TurbineGov
    R::Float64
    T1::Float64
    valve_position_limits::MinMax
    T2::Float64
    T3::Float64
    D_T::Float64
    DB_h::Float64
    DB_l::Float64
    T_rate::Float64
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    states_types::Vector{StateTypes}
    internal::InfrastructureSystemsInternal
end

Steam Turbine-Governor. This model considers both TGOV1 or TGOV1DU in PSS/E.

Arguments

  • R::Float64: Droop parameter, validation range: (0, 0.1), action if invalid: warn
  • T1::Float64: Governor time constant, validation range: (eps(), 0.5), action if invalid: error
  • valve_position_limits::MinMax: Valve position limits
  • T2::Float64: Lead Lag Lead Time constant , validation range: (0, nothing), action if invalid: warn
  • T3::Float64: Lead Lag Lag Time constant , validation range: (eps(), 10), action if invalid: error
  • D_T::Float64: Turbine Damping, validation range: (0, 0.5), action if invalid: warn
  • DB_h::Float64: Deadband for overspeed, validation range: (0, nothing), action if invalid: warn
  • DB_l::Float64: Deadband for underspeed, validation range: (nothing, 0), action if invalid: warn
  • T_rate::Float64: Turbine Rate (MW). If zero, generator base is used., validation range: (0, nothing), action if invalid: warn
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the SteamTurbineGov1 model are:
x_g1: Valve Opening,
x_g2: Lead-lag state
  • n_states::Int: TGOV1 has 2 states
  • states_types::Vector{StateTypes}: TGOV1 has 2 differential states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

TGFixed

PowerSystems.TGFixedType
mutable struct TGFixed <: TurbineGov
    efficiency::Float64
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    internal::InfrastructureSystemsInternal
end

Parameters of a fixed Turbine Governor that returns a fixed mechanical torque given by the product of P_ref*efficiency

Arguments

  • efficiency::Float64: Efficiency factor that multiplies P_ref, validation range: (0, nothing)
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}
  • n_states::Int: TGFixed has no states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

TGTypeI

PowerSystems.TGTypeIType
mutable struct TGTypeI <: TurbineGov
    R::Float64
    Ts::Float64
    Tc::Float64
    T3::Float64
    T4::Float64
    T5::Float64
    valve_position_limits::MinMax
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    internal::InfrastructureSystemsInternal
end

Parameters of a Turbine Governor Type I.

Arguments

  • R::Float64: Droop parameter, validation range: (0, nothing)
  • Ts::Float64: Governor time constant, validation range: (0, nothing)
  • Tc::Float64: Servo time constant, validation range: (0, nothing)
  • T3::Float64: Transient gain time constant, validation range: (0, nothing)
  • T4::Float64: Power fraction time constant, validation range: (0, nothing)
  • T5::Float64: Reheat time constant, validation range: (0, nothing)
  • valve_position_limits::MinMax: Valve position limits in MW
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the TGTypeI model are:
x_g1: Governor state,
x_g2: Servo state,
x_g3: Reheat state
  • n_states::Int: TGTypeI has 3 states
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source

TGTypeII

PowerSystems.TGTypeIIType
mutable struct TGTypeII <: TurbineGov
    R::Float64
    T1::Float64
    T2::Float64
    τ_limits::MinMax
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
    internal::InfrastructureSystemsInternal
end

Parameters of a Turbine Governor Type II.

Arguments

  • R::Float64: Droop parameter, validation range: (0, nothing)
  • T1::Float64: Transient gain time constant, validation range: (0, nothing)
  • T2::Float64: Power fraction time constant, validation range: (0, nothing)
  • τ_limits::MinMax: Power into the governor limits
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the TGTypeI model are:
x_g1: lead-lag state
  • n_states::Int: TGTypeII has 1 state
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source