GenericBattery

PowerSystems.GenericBatteryType
mutable struct GenericBattery <: Storage
    name::String
    available::Bool
    bus::ACBus
    prime_mover_type::PrimeMovers
    initial_energy::Float64
    state_of_charge_limits::MinMax
    rating::Float64
    active_power::Float64
    input_active_power_limits::MinMax
    output_active_power_limits::MinMax
    efficiency::NamedTuple{(:in, :out), Tuple{Float64, Float64}}
    reactive_power::Float64
    reactive_power_limits::Union{Nothing, MinMax}
    base_power::Float64
    operation_cost::Union{StorageManagementCost, MarketBidCost}
    services::Vector{Service}
    dynamic_injector::Union{Nothing, DynamicInjection}
    ext::Dict{String, Any}
    time_series_container::InfrastructureSystems.TimeSeriesContainer
    internal::InfrastructureSystemsInternal
end

Data structure for a generic battery

Arguments

  • name::String
  • available::Bool
  • bus::ACBus
  • prime_mover_type::PrimeMovers: Prime mover technology according to EIA 923
  • initial_energy::Float64: State of Charge of the Battery p.u.-hr, validation range: (0, nothing), action if invalid: error
  • state_of_charge_limits::MinMax: Maximum and Minimum storage capacity in p.u.-hr, validation range: (0, nothing), action if invalid: error
  • rating::Float64
  • active_power::Float64
  • input_active_power_limits::MinMax, validation range: (0, nothing), action if invalid: error
  • output_active_power_limits::MinMax, validation range: (0, nothing), action if invalid: error
  • efficiency::NamedTuple{(:in, :out), Tuple{Float64, Float64}}, validation range: (0, 1), action if invalid: warn
  • reactive_power::Float64, validation range: reactive_power_limits, action if invalid: warn
  • reactive_power_limits::Union{Nothing, MinMax}
  • base_power::Float64: Base power of the unit in MVA, validation range: (0, nothing), action if invalid: warn
  • operation_cost::Union{StorageManagementCost, MarketBidCost}
  • services::Vector{Service}: Services that this device contributes to
  • dynamic_injector::Union{Nothing, DynamicInjection}: corresponding dynamic injection device
  • ext::Dict{String, Any}
  • time_series_container::InfrastructureSystems.TimeSeriesContainer: internal time_series storage
  • internal::InfrastructureSystemsInternal: power system internal reference, do not modify
source