DynamicInverter

PowerSystems.DynamicInverterType
mutable struct DynamicInverter{
    C <: Converter,
    O <: OuterControl,
    IC <: InnerControl,
    DC <: DCSource,
    P <: FrequencyEstimator,
    F <: Filter,
} <: DynamicInjection
    name::String
    ω_ref::Float64
    converter::C
    outer_control::O
    inner_control::IC
    dc_source::DC
    freq_estimator::P
    filter::F
    limiter::Union{nothing, OutputCurrentLimiter}
    base_power::Float64
    n_states::Int
    states::Vector{Symbol}
    ext::Dict{String, Any}
    internal::InfrastructureSystemsInternal
end

A dynamic inverter with the necessary data for modeling the dynamic response of an inverter in a phasor or electromagnetic transient simulation.

A dynamic inverter is composed by 6 components, namely a Converter, Outer Loop Control, Inner Loop Control, a DC Source, a Frequency Estimator and a Filter.

It must be attached to a StaticInjection device using add_component!, which contains all the rest of the generator's data that isn't specific to its dynamic response.

Arguments

  • name::String: Name of the inverter

  • ω_ref::Float64: Frequency reference set-point in pu

  • converter::Converter: Converter model for the PWM transformation

  • outer_control::OuterControl: OuterControl controller model

  • inner_control::InnerControl: InnerControl controller model

  • dc_source::DCSource: DCSource model

  • freq_estimator::FrequencyEstimator: FrequencyEstimator (typically a phase-locked loop (PLL)) model

  • filter::Filter: Filter model

  • limiter::Union{Nothing, OutputCurrentLimiter}: (default: nothing) Inner Control Current Limiter model

  • base_power::Float64: (default: 100.0) Base power of the unit (MVA) for per unitization. In almost all cases, this should match the base_power of the attached StaticInjection device

  • n_states::Int64: (Do not modify.) Number of states (will depend on the components above)

  • states::Vector{Symbol}: (Do not modify.) Vector of states (will depend on the components above)

  • ext::Dict{String, Any}: (default: Dict{String, Any}()) An extra dictionary for users to add metadata that are not used in simulation

  • internal::InfrastructureSystems.InfrastructureSystemsInternal: (Do not modify.) PowerSystems.jl internal reference

source