IEpEnergyGenerator

Package: inet.power.contract

IEpEnergyGenerator

module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with power [W] and storage capacity with energy [J]. The Ep is an abbreviation that is used for energy and power based interfaces.

See also: IEpEnergyConsumer, IEpEnergySource, IEpEnergySink, IEpEnergyStorage, IEpEnergyManagement

Inheritance diagram

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

Implemented by

Name Type Description
AlternatingEpEnergyGenerator simple module

This energy generator model alternates between two modes called generation and sleep mode. In generation mode it generates a randomly selected constant power for a random time interval. In sleep mode it doesn't generate energy for another random time interval.

EpEnergyGeneratorBase simple module

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

Extends

Name Type Description
IEnergyGenerator module interface

The energy generator models describe the energy generation process of devices over time. A solar panel, for example, produces energy based on time, the panel's position on the globe, its orientation towards the sun and the actual weather conditions.

Properties

Name Value Description
display i=block/plug

Signals

Name Type Unit
powerGenerationChanged double

Source code

//
// This interface extends the corresponding energy model interface. It requires
// implementations to describe energy consumption and energy generation with
// power [W] and storage capacity with energy [J]. The Ep is an abbreviation
// that is used for energy and power based interfaces.
//
// @see ~IEpEnergyConsumer, ~IEpEnergySource, ~IEpEnergySink, ~IEpEnergyStorage, ~IEpEnergyManagement
//
moduleinterface IEpEnergyGenerator extends IEnergyGenerator
{
    parameters:
        @display("i=block/plug");
        @signal[powerGenerationChanged](type=double);
}

File: src/inet/power/contract/IEpEnergyGenerator.ned