Module Interface IEnergySource

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

The energy source models provide energy for multiple energy consumers.

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

Author: Levente Meszaros

IEnergySource

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

IEnergyStorage module interface

The energy storage models describe devices that absorb energy produced by generators, and provide energy for consumers. For example, an electrochemical battery in a mobile phone provides energy for its display, its CPU, and its wireless communication device. It can also absorb energy produced by a solar panel installed on its display, or by a portable charger plugged into a wall socket.

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

Properties:

Name Value Description
display i=block/plug

Source code:

//
// The energy source models provide energy for multiple energy consumers.
//
// @see ~IEnergyConsumer, ~IEnergyGenerator, ~IEnergySink, ~IEnergyStorage, ~IEnergyManagement
// @author Levente Meszaros
//
moduleinterface IEnergySource
{
    parameters:
        @display("i=block/plug");
}