CcEnergyStorageBase

Package: inet.power.base

simple module CcEnergyStorageBase

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

See also: CcEnergyConsumerBase, CcEnergySourceBase, CcEnergyGeneratorBase, CcEnergySinkBase

inet.power.base.CcEnergyStorageBaseCcEnergyStorageBasesimple

Inheritance 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

currentGenerationChanged

residualChargeCapacityChanged

Statistics

Name

Title

Source

Record

Unit

Interpolation Mode

Description

currentConsumption

Current consumption

currentConsumptionChanged

vector

A

sample-hold

currentGeneration

Current generation

currentGenerationChanged

vector

A

sample-hold

residualChargeCapacity

Residual charge capacity

residualChargeCapacityChanged

vector

C

linear

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