![]() |
DUNE: Uniform Navigational Environment
2022.04.1
|
Motor simulator task
Public Member Functions | |
| Task (const std::string &name, Tasks::Context &ctx) | |
| void | onResourceRelease (void) |
| void | onResourceAcquisition (void) |
| void | onResourceInitialization (void) |
| void | onActivation (void) |
| void | onDeactivation (void) |
| void | reset (void) |
| void | consume (const IMC::Brake *msg) |
| void | consume (const IMC::Rpm *msg) |
| void | consume (const IMC::EstimatedState *msg) |
| void | consume (const IMC::DesiredSpeed *msg) |
| void | consume (const IMC::DesiredZ *msg) |
| void | consume (const IMC::ControlLoops *msg) |
| void | task (void) |
| void | onIdle (void) |
| void | onChecking (void) |
| void | onSubmerged (void) |
| void | onForcing (void) |
| bool | increaseSpeed (void) |
| bool | hasZReference (void) |
Public Attributes | |
| uint32_t | m_aloops |
| MachineStates | m_mstate |
| IMC::DesiredSpeed | m_forced_speed |
| IMC::DesiredSpeed | m_dspeed |
| IMC::DesiredZ | m_z_ref |
| unsigned | m_incs |
| float | m_speed_inc |
| Time::Counter< float > * | m_counter_solo |
| Time::Counter< float > * | m_counter_step |
| float | m_rpm |
| float | m_depth |
| float | m_alt |
| bool | m_got_data |
| bool | m_last_try |
| bool | m_braking |
| uint32_t | m_scope_ref |
| Arguments | m_args |
|
inline |
|
inline |
References Control::AUV::Diving::SM_FORCING, and Control::AUV::Diving::SM_IDLE.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Check if we have depth/altitude reference.
References Control::AUV::Diving::Arguments::depth_threshold.
|
inline |
Increase desired speed.
References Control::AUV::Diving::Arguments::max_increase, and Control::AUV::Diving::Arguments::speed_step.
|
inline |
On activation.
|
inline |
Checking state machine routine.
References Control::AUV::Diving::Arguments::depth_threshold, Control::AUV::Diving::SM_FORCING, Control::AUV::Diving::SM_IDLE, and Control::AUV::Diving::SM_SUBMERGED.
|
inline |
On deactivation.
|
inline |
Forcing state machine routine.
References Control::AUV::Diving::Arguments::depth_threshold, Control::AUV::Diving::SM_IDLE, and Control::AUV::Diving::SM_SUBMERGED.
|
inline |
Idle state machine routine.
References Control::AUV::Diving::Arguments::depth_threshold, Control::AUV::Diving::SM_CHECKING, and Control::AUV::Diving::Arguments::speed_tol.
|
inline |
Acquire resources.
References Control::AUV::Diving::Arguments::time_solo, and Control::AUV::Diving::Arguments::time_step.
|
inline |
Initialize resources.
|
inline |
Release resources.
|
inline |
Submerged state machine routine.
References Control::AUV::Diving::Arguments::depth_threshold, Control::AUV::Diving::SM_CHECKING, and Control::AUV::Diving::SM_IDLE.
|
inline |
Reset all variables.
References Control::AUV::Diving::SM_IDLE.
|
inline |
| uint32_t Control::AUV::Diving::Task::m_aloops |
Active loops.
| float Control::AUV::Diving::Task::m_alt |
Vehicle's altitude (if any)
| bool Control::AUV::Diving::Task::m_braking |
Braking flag.
| Time::Counter<float>* Control::AUV::Diving::Task::m_counter_solo |
Timer counter for solo attempt.
| Time::Counter<float>* Control::AUV::Diving::Task::m_counter_step |
Timer counter for each speed increase step.
| float Control::AUV::Diving::Task::m_depth |
Vehicle's depth.
| IMC::DesiredSpeed Control::AUV::Diving::Task::m_dspeed |
Last received desired speed.
| IMC::DesiredSpeed Control::AUV::Diving::Task::m_forced_speed |
Forced desired speed.
| bool Control::AUV::Diving::Task::m_got_data |
Got necessary data to proceed.
| unsigned Control::AUV::Diving::Task::m_incs |
Number of speed increases.
| bool Control::AUV::Diving::Task::m_last_try |
On last attempt.
| MachineStates Control::AUV::Diving::Task::m_mstate |
State machine state.
| float Control::AUV::Diving::Task::m_rpm |
Motor's rpms.
| uint32_t Control::AUV::Diving::Task::m_scope_ref |
Control loops last reference.
| float Control::AUV::Diving::Task::m_speed_inc |
Speed amount to increase.
| IMC::DesiredZ Control::AUV::Diving::Task::m_z_ref |
Last received desired z.
