Package: inet.physicallayer.wireless.common.energyconsumer
StateBasedEpEnergyConsumer
simple moduleProvides a radio power consumer model. The power consumption is determined by the radio mode, the transmitter state, and the receiver state using constant parameters.
Inheritance diagram
The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.
Known subclasses
| Name | Type | Description |
|---|---|---|
| Ieee80211StateBasedEpEnergyConsumer | simple module |
Provides a radio power consumer model for IEEE 802.11 radios. Default values are roughly based on CC3220 transceiver. The power consumption is determined by the radio mode, the transmitter state, and the receiver state using constant parameters. |
| SensorStateBasedEpEnergyConsumer | simple module |
This energy consumption module extends ~StateBasedEpEnergyConsumer and provides default values suitable for use in low-power wireless sensor nodes. Values are roughly based on the datasheet for the CC2500 RF transceiver. Used for accurate battery life simulation in wireless sensor networks. |
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 |
| energySourceModule | string | ||
| offPowerConsumption | double | 0mW | |
| sleepPowerConsumption | double | 1mW | |
| switchingPowerConsumption | double | 1mW | |
| receiverIdlePowerConsumption | double | 2mW | |
| receiverBusyPowerConsumption | double | 5mW | |
| receiverReceivingPowerConsumption | double | 10mW | |
| receiverReceivingPreamblePowerConsumption | double | receiverReceivingPowerConsumption | |
| receiverReceivingHeaderPowerConsumption | double | receiverReceivingPowerConsumption | |
| receiverReceivingDataPowerConsumption | double | receiverReceivingPowerConsumption | |
| transmitterIdlePowerConsumption | double | 2mW | |
| transmitterTransmittingPowerConsumption | double | 100mW | |
| transmitterTransmittingPreamblePowerConsumption | double | transmitterTransmittingPowerConsumption | |
| transmitterTransmittingHeaderPowerConsumption | double | transmitterTransmittingPowerConsumption | |
| transmitterTransmittingDataPowerConsumption | double | transmitterTransmittingPowerConsumption |
Properties
| Name | Value | Description |
|---|---|---|
| class | StateBasedEpEnergyConsumer | |
| display | i=block/cogwheel |
Signals
| Name | Type | Unit | Description |
|---|---|---|---|
| powerConsumptionChanged | double |
Statistics
| Name | Title | Source | Record | Unit | Interpolation Mode | Description |
|---|---|---|---|---|---|---|
| powerConsumption | Power consumption | powerConsumptionChanged | vector | W | sample-hold |
Source code
// // Provides a radio power consumer model. The power consumption is // determined by the radio mode, the transmitter state, and the receiver state // using constant parameters. // simple StateBasedEpEnergyConsumer extends SimpleModule like IEpEnergyConsumer { parameters: @class(StateBasedEpEnergyConsumer); string energySourceModule; double offPowerConsumption @unit(W) = default(0mW); double sleepPowerConsumption @unit(W) = default(1mW); double switchingPowerConsumption @unit(W) = default(1mW); double receiverIdlePowerConsumption @unit(W) = default(2mW); double receiverBusyPowerConsumption @unit(W) = default(5mW); double receiverReceivingPowerConsumption @unit(W) = default(10mW); double receiverReceivingPreamblePowerConsumption @unit(W) = default(receiverReceivingPowerConsumption); double receiverReceivingHeaderPowerConsumption @unit(W) = default(receiverReceivingPowerConsumption); double receiverReceivingDataPowerConsumption @unit(W) = default(receiverReceivingPowerConsumption); double transmitterIdlePowerConsumption @unit(W) = default(2mW); double transmitterTransmittingPowerConsumption @unit(W) = default(100mW); double transmitterTransmittingPreamblePowerConsumption @unit(W) = default(transmitterTransmittingPowerConsumption); double transmitterTransmittingHeaderPowerConsumption @unit(W) = default(transmitterTransmittingPowerConsumption); double transmitterTransmittingDataPowerConsumption @unit(W) = default(transmitterTransmittingPowerConsumption); @display("i=block/cogwheel"); @class(StateBasedEpEnergyConsumer); @signal[powerConsumptionChanged](type=double); @statistic[powerConsumption](title="Power consumption"; source=powerConsumptionChanged; record=vector; interpolationmode=sample-hold; unit=W); }File: src/inet/physicallayer/wireless/common/energyconsumer/StateBasedEpEnergyConsumer.ned