DUNE: Uniform Navigational Environment
2019.02.1
|
Utility class to compute offline power conversions and hold model parameters.
Consider ONLY positive speed.
Public Member Functions | |
Model (Parsers::Config *cfg) | |
void | validate (void) const |
float | computeMotionEnergy (float rpm, float duration) const |
float | computePayloadEnergy (const std::string &label, float duration) const |
float | computeHotelEnergy (float duration) const |
float | computeIMUEnergy (float duration) const |
float | getBatteryCapacity (void) const |
float | getPowerConsumptionHotel (void) const |
float | getPowerConsumptionFull (void) const |
DUNE::Power::Model::Model | ( | Parsers::Config * | cfg | ) |
float DUNE::Power::Model::computeHotelEnergy | ( | float | duration | ) | const |
Compute energy consumed by minimal resources.
[in] | duration | amount of time in seconds |
float DUNE::Power::Model::computeIMUEnergy | ( | float | duration | ) | const |
Compute energy consumed by IMU.
[in] | duration | amount of time in seconds |
References DUNE::Parsers::Config::get(), and DUNE::Utils::String::str().
float DUNE::Power::Model::computeMotionEnergy | ( | float | rpm, |
float | duration | ||
) | const |
Compute energy consumed by motor for some RPM value.
[in] | rpm | value of rpms to convert from |
[in] | duration | amount of time rotating at rpm |
References DUNE::Math::piecewiseLI().
float DUNE::Power::Model::computePayloadEnergy | ( | const std::string & | label, |
float | duration | ||
) | const |
Compute energy consumed by a payload entity.
[in] | label | name of the payload |
[in] | duration | amount of time active |
|
inline |
Get the battery capacity.
|
inline |
|
inline |
void DUNE::Power::Model::validate | ( | void | ) | const |
Validate the model.