Browse Source

apply roll/pitch acro_rate_max in MC attitude controller

sbg
Mark Whitehorn 10 years ago
parent
commit
6b26594697
  1. 5
      src/modules/mc_att_control/mc_att_control_main.cpp

5
src/modules/mc_att_control/mc_att_control_main.cpp

@ -639,6 +639,11 @@ MulticopterAttitudeControl::control_attitude(float dt)
/* calculate angular rates setpoint */ /* calculate angular rates setpoint */
_rates_sp = _params.att_p.emult(e_R); _rates_sp = _params.att_p.emult(e_R);
/* limit roll and pitch rates */
for (int i = 0; i < 2; i++) {
_rates_sp(i) = math::constrain(_rates_sp(i), -_params.acro_rate_max(i), _params.acro_rate_max(i));
}
/* limit yaw rate */ /* limit yaw rate */
_rates_sp(2) = math::constrain(_rates_sp(2), -_params.yaw_rate_max, _params.yaw_rate_max); _rates_sp(2) = math::constrain(_rates_sp(2), -_params.yaw_rate_max, _params.yaw_rate_max);

Loading…
Cancel
Save