Modely energie sa agregujú priamo na uzly a zariadenia. Na uzol sa agreguje batéria t.j. základna alebo LiIon. Na zariadenie sa inštaluje/agreguje model spotreby.
1 2 3 4 5 6 |
EnergySourceContainer eSources; BasicEnergySourceHelper basicSourceHelper; WifiRadioEnergyModelHelper radioEnergyHelper; eSources.Add (basicSourceHelper.Install (*nodes)); radioEnergyHelper.Install (device, eSources.Get (eSources.GetN () - 1)); |
Do módu Rx, Tx, a Sleep je možné sa dostať iba z módu IDLE. Zatiaľ čo Rx a Tx tam ide automaticky po ukončení, Sleep používa okrem Go_to_Sleep aj End_of_Sleep. Tieto režimy majú rôzne nastavenie spotreby cez odber prúdu. IdleCurrentA, TxCurrentA, RxCurrentA, SleepCurrentA, SwitchingCurrentA (zmena vysielacieho kanálu), CcaBusyCurrentA (kanál média je obsadený, a teda čaká — cudzie CTS … ACK). Tieto prúdy sú prednastavené, ale dajú sa upraviť podľa návodu -„Datasheet“ od výrobcu.
V ns3 sú tieto modely batérii : LiIonEnergySource, BasicEnergySource
EnergyHarvester je trieda pre nabíjanie batérie napr. solárne.
1 2 |
cp examples/energy/energy-model-with-harvesting-example.cc scratch/hard.cc ./waf --run "hard --numPackets=13" |
1 2 3 4 |
+ Simulator::Stop (MicroSeconds (10)); //presun riadku do funkcie GenerateTraffic -> ak skonci posielanie - Simulator::Stop (Seconds (10)); c basicHarvesterHelper.Set("HarvestablePower", StringValue("ns3::UniformRandomVariable[Min=0.0|Max=0.05]")); //znizenie ma za nasledok ze niektore pack. sa nedostanu do ciela a caka sa na nabitie. |