InnerControl
CurrentModeControl
PowerSystems.CurrentModeControl
— Typemutable struct CurrentModeControl <: InnerControl
kpc::Float64
kic::Float64
kffv::Float64
ext::Dict{String, Any}
states::Vector{Symbol}
n_states::Int
end
Parameters of an inner loop PI current control using based on Purba, Dhople, Jafarpour, Bullo and Johnson. "Reduced-order Structure-preserving Model for Parallel-connected Three-phase Grid-tied Inverters." 2017 IEEE 18th Workshop on Control and Modeling for Power Electronics (COMPEL): 1-7.
Arguments
kpc::Float64
: Current controller proportional gain, validation range:(0, nothing)
kic::Float64
: Current controller integral gain, validation range:(0, nothing)
kffv::Float64
: Gain to enable feed-forward gain of voltage., validation range:(0, nothing)
ext::Dict{String, Any}
states::Vector{Symbol}
: The states of the CurrentModeControl model are:
γd_ic: d-axis integrator state of the PI current controller,
γq_ic: q-axis integrator state of the PI current controller
n_states::Int
: CurrentControl has 2 states
PowerSystems.get_ext
— Methodget_ext(value::CurrentModeControl) -> Dict{String, Any}
Get CurrentModeControl
ext
.
PowerSystems.get_kffv
— Methodget_kffv(value::CurrentModeControl) -> Float64
Get CurrentModeControl
kffv
.
PowerSystems.get_kic
— Methodget_kic(value::CurrentModeControl) -> Float64
Get CurrentModeControl
kic
.
PowerSystems.get_kpc
— Methodget_kpc(value::CurrentModeControl) -> Float64
Get CurrentModeControl
kpc
.
PowerSystems.get_n_states
— Methodget_n_states(value::CurrentModeControl) -> Int64
Get CurrentModeControl
n_states
.
PowerSystems.get_states
— Methodget_states(value::CurrentModeControl) -> Vector{Symbol}
Get CurrentModeControl
states
.
PowerSystems.set_ext!
— Methodset_ext!(value::CurrentModeControl, val) -> Any
Set CurrentModeControl
ext
.
PowerSystems.set_kffv!
— Methodset_kffv!(value::CurrentModeControl, val) -> Any
Set CurrentModeControl
kffv
.
PowerSystems.set_kic!
— Methodset_kic!(value::CurrentModeControl, val) -> Any
Set CurrentModeControl
kic
.
PowerSystems.set_kpc!
— Methodset_kpc!(value::CurrentModeControl, val) -> Any
Set CurrentModeControl
kpc
.
VoltageModeControl
PowerSystems.VoltageModeControl
— Typemutable struct VoltageModeControl <: InnerControl
kpv::Float64
kiv::Float64
kffv::Float64
rv::Float64
lv::Float64
kpc::Float64
kic::Float64
kffi::Float64
ωad::Float64
kad::Float64
ext::Dict{String, Any}
states::Vector{Symbol}
n_states::Int
end
Parameters of an inner loop current control PID using virtual impedance based on D'Arco, Suul and Fosso. "A Virtual Synchronous Machine implementation for distributed control of power converters in SmartGrids." Electric Power Systems Research 122 (2015) 180–197.
Arguments
kpv::Float64
: voltage controller proportional gain, validation range:(0, nothing)
kiv::Float64
: voltage controller integral gain, validation range:(0, nothing)
kffv::Float64
: Binary variable to enable feed-forward gain of voltage., validation range:(0, nothing)
rv::Float64
: virtual resistance, validation range:(0, nothing)
lv::Float64
: virtual inductance, validation range:(0, nothing)
kpc::Float64
: current controller proportional gain, validation range:(0, nothing)
kic::Float64
: current controller integral gain, validation range:(0, nothing)
kffi::Float64
: Binary variable to enable feed-forward gain of current, validation range:(0, nothing)
ωad::Float64
: active damping filter cutoff frequency (rad/sec), validation range:(0, nothing)
kad::Float64
: active damping gain, validation range:(0, nothing)
ext::Dict{String, Any}
states::Vector{Symbol}
: The states of the VoltageModeControl model are:
ξd_ic: d-axis integrator state of the PI voltage controller,
ξq_ic: q-axis integrator state of the PI voltage controller,
γd_ic: d-axis integrator state of the PI current controller,
γq_ic: q-axis integrator state of the PI current controller,
ϕd_ic: d-axis low-pass filter of active damping,
ϕq_ic: q-axis low-pass filter of active damping
n_states::Int
: VoltageModeControl has 6 states
PowerSystems.get_ext
— Methodget_ext(value::VoltageModeControl) -> Dict{String, Any}
Get VoltageModeControl
ext
.
PowerSystems.get_kad
— Methodget_kad(value::VoltageModeControl) -> Float64
Get VoltageModeControl
kad
.
PowerSystems.get_kffi
— Methodget_kffi(value::VoltageModeControl) -> Float64
Get VoltageModeControl
kffi
.
PowerSystems.get_kffv
— Methodget_kffv(value::VoltageModeControl) -> Float64
Get VoltageModeControl
kffv
.
PowerSystems.get_kic
— Methodget_kic(value::VoltageModeControl) -> Float64
Get VoltageModeControl
kic
.
PowerSystems.get_kiv
— Methodget_kiv(value::VoltageModeControl) -> Float64
Get VoltageModeControl
kiv
.
PowerSystems.get_kpc
— Methodget_kpc(value::VoltageModeControl) -> Float64
Get VoltageModeControl
kpc
.
PowerSystems.get_kpv
— Methodget_kpv(value::VoltageModeControl) -> Float64
Get VoltageModeControl
kpv
.
PowerSystems.get_lv
— Methodget_lv(value::VoltageModeControl) -> Float64
Get VoltageModeControl
lv
.
PowerSystems.get_n_states
— Methodget_n_states(value::VoltageModeControl) -> Int64
Get VoltageModeControl
n_states
.
PowerSystems.get_rv
— Methodget_rv(value::VoltageModeControl) -> Float64
Get VoltageModeControl
rv
.
PowerSystems.get_states
— Methodget_states(value::VoltageModeControl) -> Vector{Symbol}
Get VoltageModeControl
states
.
PowerSystems.get_ωad
— Methodget_ωad(value::VoltageModeControl) -> Float64
Get VoltageModeControl
ωad
.
PowerSystems.set_ext!
— Methodset_ext!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
ext
.
PowerSystems.set_kad!
— Methodset_kad!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
kad
.
PowerSystems.set_kffi!
— Methodset_kffi!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
kffi
.
PowerSystems.set_kffv!
— Methodset_kffv!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
kffv
.
PowerSystems.set_kic!
— Methodset_kic!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
kic
.
PowerSystems.set_kiv!
— Methodset_kiv!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
kiv
.
PowerSystems.set_kpc!
— Methodset_kpc!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
kpc
.
PowerSystems.set_kpv!
— Methodset_kpv!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
kpv
.
PowerSystems.set_lv!
— Methodset_lv!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
lv
.
PowerSystems.set_rv!
— Methodset_rv!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
rv
.
PowerSystems.set_ωad!
— Methodset_ωad!(value::VoltageModeControl, val) -> Any
Set VoltageModeControl
ωad
.