Simple Module EpEnergyStorageBase

Package: inet.power.base
File: src/inet/power/base/EpEnergyStorageBase.ned

C++ definition

This is an abstract base module for power based energy storage models. It defines shared signals and statistics.

See also: EpEnergyConsumerBase, EpEnergySourceBase, EpEnergyGeneratorBase, EpEnergySinkBase

Author: Levente Meszaros

EpEnergyStorageBase

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram:

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Known subclasses:

Name Type Description
IdealEpEnergyStorage simple module

This energy storage model stores an infinite amount of energy. It can provide energy for any number of consumers, and it can absorb energy from any number of generators. The ideal energy storage never gets completely charged or depleted. This module is primarily useful for testing energy consumer and energy generator models. See the base module for signals and statistics.

SimpleEpEnergyStorage simple module

This energy storage model maintains a residual energy capacity by integrating the difference between the total consumed power and the total generated power over time. It initiates node crash when the residual energy capacity reaches zero. This model doesn't have various properties such as self-discharge, memory effect, overcharging, temperature-dependence, etc. that real world batteries have. See the base module for signals and statistics.

Properties:

Name Value Description
display i=block/plug
class EpEnergyStorageBase

Signals:

Name Type Unit
residualEnergyCapacityChanged
powerConsumptionChanged
powerGenerationChanged

Statistics:

Name Title Source Record Unit Interpolation Mode
residualEnergyCapacity Residual energy capacity residualEnergyCapacityChanged vector linear
powerConsumption Power consumption powerConsumptionChanged vector sample-hold
powerGeneration Power generation powerGenerationChanged vector sample-hold

Source code:

//
// This is an abstract base module for power based energy storage models.
// It defines shared signals and statistics.
//
// @see ~EpEnergyConsumerBase, ~EpEnergySourceBase, ~EpEnergyGeneratorBase, ~EpEnergySinkBase  
// @author Levente Meszaros
//
simple EpEnergyStorageBase like IEpEnergyStorage
{
    parameters:
        @display("i=block/plug");
        @class(EpEnergyStorageBase);
        @signal[powerConsumptionChanged];
        @signal[powerGenerationChanged];
        @signal[residualEnergyCapacityChanged];
        @statistic[powerConsumption](title="Power consumption"; source=powerConsumptionChanged; record=vector; interpolationmode=sample-hold);
        @statistic[powerGeneration](title="Power generation"; source=powerGenerationChanged; record=vector; interpolationmode=sample-hold);
        @statistic[residualEnergyCapacity](title="Residual energy capacity"; source=residualEnergyCapacityChanged; record=vector; interpolationmode=linear);
}