DUNE: Uniform Navigational Environment
2016.09.0
|
Public Member Functions | |
YoYoMotion (DUNE::Tasks::Task *task, float pitch, float z_ref, IMC::ZUnits zunits, float amplitude, float variation, float min_alt=5.0f, float max_depth=50.0f) | |
float | update (bool startup, float depth, float alt, float pitch) |
float | stabilize (float desired_pitch, float current_pitch) |
bool | isBetweenBounds (float state_z) |
void | startedBraking (void) |
|
inline |
Constructor.
[in] | task | pointer to calling task |
[in] | pitch | pitch angle to use in motion |
[in] | z_ref | z reference for yoyo motion |
[in] | z_units | z reference units for yoyo motion |
[in] | amplitude | z reference amplitude for yoyo motion |
[in] | variation | maximum variation for the pitch angle |
[in] | min_alt | minimum altitude reference admissible |
|
inline |
Check if vehicle is between yoyo bounds.
[in] | state_z | current z state |
Referenced by Maneuver::CompassCalibration::Task::onPathControlState().
|
inline |
Stabilize pitch in a certain value.
[in] | desired_pitch | pitch angle at which to stabilize |
[in] | current_pitch | current pitch angle |
Referenced by Maneuver::Multiplexer::YoYo::update().
|
inline |
System is now braking.
Referenced by Maneuver::Multiplexer::YoYo::onBrake().
|
inline |
Update yoyo motion.
[in] | startup | whether or not the yoyo motion is starting now |
[in] | depth | current depth position |
[in] | altitude | current altitude position |
[in] | pitch | current pitch angle |
References DUNE::Tasks::Task::debug(), and DUNE::IMC::Z_DEPTH.
Referenced by Maneuver::Multiplexer::YoYo::update(), and Maneuver::CompassCalibration::Task::yoyoMotion().