A WiFi radio energy model.
More...
#include <wifi-radio-energy-model.h>
List of all members.
Detailed Description
A WiFi radio energy model.
4 states are defined for the radio: TX, RX, IDLE, SLEEP. Default state is IDLE. The different types of transactions that are defined are: 1. Tx: State goes from IDLE to TX, radio is in TX state for TX_duration, then state goes from TX to IDLE. 2. Rx: State goes from IDLE to RX, radio is in RX state for RX_duration, then state goes from RX to IDLE. 3. Go_to_Sleep: State goes from IDLE to SLEEP. 4. End_of_Sleep: State goes from SLEEP to IDLE. The class keeps track of what state the radio is currently in.
Energy calculation: For each transaction, this model notifies EnergySource object. The EnergySource object will query this model for the total current. Then the EnergySource object uses the total current to calculate energy.
Default values for power consumption are based on CC2420 radio chip, with supply voltage as 2.5V and currents as 17.4 mA (TX), 18.8 mA (RX), 20 uA (sleep) and 426 uA (idle).
Member Typedef Documentation
Callback type for energy depletion handling.
Member Enumeration Documentation
Wifi radio states.
- Enumerator:
TX |
Radio is transmitting.
|
RX |
Radio is receiving.
|
IDLE |
Radio is idling.
|
SLEEP |
Radio is asleep.
|
Member Function Documentation
virtual void ns3::WifiRadioEnergyModel::ChangeState |
( |
int |
newState |
) |
[virtual] |
WifiRadioState ns3::WifiRadioEnergyModel::GetCurrentState |
( |
void |
|
) |
const |
virtual Ptr<Node> ns3::WifiRadioEnergyModel::GetNode |
( |
void |
|
) |
const [virtual] |
virtual double ns3::WifiRadioEnergyModel::GetTotalEnergyConsumption |
( |
void |
|
) |
const [virtual] |
static TypeId ns3::WifiRadioEnergyModel::GetTypeId |
( |
void |
|
) |
[static] |
This method returns the TypeId associated to ns3::WifiRadioEnergyModel.
This object is accessible through the following paths with Config::Set and Config::Connect:
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::AlohaNoackNetDevice/Phy/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/SSManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::NonCommunicatingNetDevice/Phy/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/Classifier/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/NoiseModel/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/NoiseModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/PropagationModel/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Channel/PropagationModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Mac/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Phy/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Phy/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Transducer/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::UanNetDevice/Transducer/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/BsIpcsPacketClassifier/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/SSManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/ServiceFlowManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/Classifier/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/LinkManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::SubscriberStationNetDevice/SSScheduler/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BandwidthManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/BurstProfileManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/NoiseModel/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/NoiseModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/PropagationModel/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Channel/$ns3::UanChannel/PropagationModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/ConnectionManager/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/NoiseModel/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/NoiseModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/PropagationModel/$ns3::DeviceEnergyModel/$ns3::WifiRadioEnergyModel
-
/NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/Phy/Channel/$ns3::UanChannel/PropagationModel/$ns3::WifiRadioEnergyModel
Attributes defined for this type:
-
TxCurrentA: The radio Tx current in Ampere.
-
Set with class: ns3::DoubleValue
-
Underlying type: double -1.79769e+308:1.79769e+308
-
Initial value: 0.0174
-
Flags: construct write read
-
RxCurrentA: The radio Rx current in Ampere.
-
Set with class: ns3::DoubleValue
-
Underlying type: double -1.79769e+308:1.79769e+308
-
Initial value: 0.0197
-
Flags: construct write read
-
IdleCurrentA: The default radio Idle current in Ampere.
-
Set with class: ns3::DoubleValue
-
Underlying type: double -1.79769e+308:1.79769e+308
-
Initial value: 0.000426
-
Flags: construct write read
-
SleepCurrentA: The default radio Sleep current in Ampere.
-
Set with class: ns3::DoubleValue
-
Underlying type: double -1.79769e+308:1.79769e+308
-
Initial value: 2e-05
-
Flags: construct write read
TraceSources defined for this type:
-
TotalEnergyConsumption: Total energy consumption of the radio device.
Reimplemented from ns3::DeviceEnergyModel.
virtual void ns3::WifiRadioEnergyModel::HandleEnergyDepletion |
( |
void |
|
) |
[virtual] |
- Parameters:
-
Sets callback for energy depletion handling.
virtual void ns3::WifiRadioEnergyModel::SetEnergySource |
( |
Ptr< EnergySource > |
source |
) |
[virtual] |
virtual void ns3::WifiRadioEnergyModel::SetNode |
( |
Ptr< Node > |
node |
) |
[virtual] |
The documentation for this class was generated from the following files:
- src/contrib/energy/model/wifi-radio-energy-model.h
- doc/introspected-doxygen.h