Browse Source

FW: Allow counterclockwise loiter

Before, this check was always true, thus always falling back to
NAV_LOITER_RAD, which can't be negative.
sbg
David Jablonski 5 years ago committed by Daniel Agar
parent
commit
3d60ef9383
  1. 2
      src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp

2
src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp

@ -854,7 +854,7 @@ FixedwingPositionControl::control_position(const Vector2f &curr_pos, const Vecto @@ -854,7 +854,7 @@ FixedwingPositionControl::control_position(const Vector2f &curr_pos, const Vecto
float loiter_radius = pos_sp_curr.loiter_radius;
uint8_t loiter_direction = pos_sp_curr.loiter_direction;
if (pos_sp_curr.loiter_radius < 0.01f || pos_sp_curr.loiter_radius > -0.01f) {
if (fabsf(pos_sp_curr.loiter_radius) < FLT_EPSILON) {
loiter_radius = _parameters.loiter_radius;
loiter_direction = (loiter_radius > 0) ? 1 : -1;

Loading…
Cancel
Save