CcEnergyStorageBase

Package: inet.power.base

CcEnergyStorageBase

simple module

C++ definition

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

<b>See also:</b> ~CcEnergyConsumerBase, ~CcEnergySourceBase, ~CcEnergyGeneratorBase, ~CcEnergySinkBase

Inheritance diagram

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

Known subclasses

Name Type Description
SimpleCcBattery simple module

This battery model maintains a residual charge capacity by integrating the difference between the total consumed current and the total generated current over time. This model uses a charge-independent ideal voltage source and a charge-independent internal resistance. It initiates node crash when the residual charge capacity reaches zero. See the base module for signals and statistics.

Extends

Name Type Description
SimpleModule simple module

Base module for all INET simple modules.

Parameters

Name Type Default value Description
displayStringTextFormat string ""

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

Properties

Name Value Description
class CcEnergyStorageBase
display i=block/plug

Signals

Name Type Unit Description
currentConsumptionChanged
residualChargeCapacityChanged
currentGenerationChanged

Statistics

Name Title Source Record Unit Interpolation Mode Description
currentGeneration Current generation currentGenerationChanged vector A sample-hold
residualChargeCapacity Residual charge capacity residualChargeCapacityChanged vector C linear
currentConsumption Current consumption currentConsumptionChanged vector A sample-hold

Source code

//
// This is an abstract base module for current-based energy storage models.
// It defines shared signals and statistics.
//
// @see ~CcEnergyConsumerBase, ~CcEnergySourceBase, ~CcEnergyGeneratorBase, ~CcEnergySinkBase
//
simple CcEnergyStorageBase extends SimpleModule like ICcEnergyStorage
{
    parameters:
        @class(CcEnergyStorageBase);
        @display("i=block/plug");
        @signal[currentConsumptionChanged];
        @signal[currentGenerationChanged];
        @signal[residualChargeCapacityChanged];
        @statistic[currentConsumption](title="Current consumption"; source=currentConsumptionChanged; record=vector; interpolationmode=sample-hold; unit=A);
        @statistic[currentGeneration](title="Current generation"; source=currentGenerationChanged; record=vector; interpolationmode=sample-hold; unit=A);
        @statistic[residualChargeCapacity](title="Residual charge capacity"; source=residualChargeCapacityChanged; record=vector; interpolationmode=linear; unit=C);
}

File: src/inet/power/base/CcEnergyStorageBase.ned