Module Interface IEnergyManagement

Package: inet.power.contract
File: src/inet/power/contract/IEnergyManagement.ned

The energy management models monitors an energy storage, estimates its state, and controls the consumers and generators to protect the energy storage from operating outside its safe operating area.

See also: IEnergyConsumer, IEnergySource, IEnergyGenerator, IEnergySink, IEnergyStorage

Author: Levente Meszaros

IEnergyManagement

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
ICcEnergyManagement module interface

This interface extends the corresponding energy model interface. It requires implementations to describe energy consumption and energy generation with current [A], and storage capacity with charge [C] and output voltage [V]. The Cc is an abbreviation that is used for charge and current based interfaces.

IEpEnergyManagement 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.

Used in compound modules:

Name Type Description
NodeBase compound module

Contains the common lower layers (linklayer and networklayer) of Router, StandardHost, WirelessHost etc.

Properties:

Name Value Description
display i=block/plug

Source code:

//
// The energy management models monitors an energy storage, estimates its state,
// and controls the consumers and generators to protect the energy storage from
// operating outside its safe operating area.
//
// @see ~IEnergyConsumer, ~IEnergySource, ~IEnergyGenerator, ~IEnergySink, ~IEnergyStorage
// @author Levente Meszaros
//
moduleinterface IEnergyManagement
{
    parameters:
        @display("i=block/plug");
}