ecl attitude_fw fix excessive body fixed turn offset

-limit body fixed turn offset contrained roll to possible
roll setpoint range
-fixes #181
This commit is contained in:
Daniel Agar
2016-10-06 09:03:48 +02:00
committed by Lorenz Meier
parent 7dbb43f2cd
commit 0d02bb2612
+1 -1
View File
@@ -127,7 +127,7 @@ float ECL_PitchController::control_bodyrate(const struct ECL_ControlData &ctl_da
/* roll is used as feedforward term and inverted flight needs to be considered */
if (fabsf(ctl_data.roll) < math::radians(90.0f)) {
/* not inverted, but numerically still potentially close to infinity */
constrained_roll = math::constrain(ctl_data.roll, math::radians(-80.0f), math::radians(80.0f));
constrained_roll = math::constrain(ctl_data.roll, -ctl_data.roll_setpoint, ctl_data.roll_setpoint);
} else {
/* inverted flight, constrain on the two extremes of -pi..+pi to avoid infinity */