OuterControl

The outer control is composed by the ReactivePowerControl and the ActivePowerControl types.

PowerSystems.OuterControlType
mutable struct OuterControl{
    A <: ActivePowerControl,
    R <: ReactivePowerControl
} <: DynamicInverterComponent
    active_power_control::A
    reactive_power_control::R
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
end

Parameters of a Outer-Loop controller using a active power controller and a reactive power droop controller.

Arguments

  • A <: ActivePowerControl: Active power controller (typically droop or virtual inertia).
  • R <: ReactivePowerControl: Reactive power controller (typically droop).
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: Vector of states (will depend on the components).
  • n_states::Int: Number of states (will depend on the components).
source

Virtual Inertia

PowerSystems.VirtualInertiaType
mutable struct VirtualInertia <: ActivePowerControl
    Ta::Float64
    kd::Float64
    kω::Float64
    P_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
end

Parameters of a Virtual Inertia with SRF using VSM for active power controller

Arguments

  • Ta::Float64: VSM inertia constant, validation range: (0, nothing)
  • kd::Float64: VSM damping constant, validation range: (0, nothing)
  • kω::Float64: frequency droop gain, validation range: (0, nothing)
  • P_ref::Float64: Reference Power Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the VirtualInertia model are:
θ_oc: Phase angle displacement of the virtual synchronous generator model
ω_oc: Speed of the rotating reference frame of the virtual synchronous generator model
  • n_states::Int: VirtualInertia has two states
source

Reactive Power Droop

PowerSystems.ReactivePowerDroopType
mutable struct ReactivePowerDroop <: ReactivePowerControl
    kq::Float64
    ωf::Float64
    V_ref::Float64
    ext::Dict{String, Any}
    states::Vector{Symbol}
    n_states::Int
end

Parameters of a Reactive Power droop controller

Arguments

  • kq::Float64: frequency droop gain, validation range: (0, nothing)
  • ωf::Float64: filter frequency cutoff, validation range: (0, nothing)
  • V_ref::Float64: Reference Voltage Set-point, validation range: (0, nothing)
  • ext::Dict{String, Any}
  • states::Vector{Symbol}: The states of the ReactivePowerDroop model are:
q_oc: Filtered reactive output power
  • n_states::Int: ReactivePowerDroop has 1 state
source