mc_pos_control slowing down close to target take over previous setpoint if low

This commit is contained in:
Dennis Mannhart
2017-06-14 11:01:30 +02:00
committed by Lorenz Meier
parent ac3321dc6c
commit 807d45c99c
@@ -1760,6 +1760,13 @@ void MulticopterPositionControl::control_auto(float dt)
/* make sure that vel_sp_along track is at least min */
vel_sp_along_track = (vel_sp_along_track < vel_close) ? vel_close : vel_sp_along_track;
/* if we are close to target and the previous velocity setpoints was smaller than
* vel_sp_along_track, then take over the previous one
* this ensures smoothness since we anyway want to slow down
*/
vel_sp_along_track = (vel_sp_along_track > vel_sp_along_track_prev) ?
vel_sp_along_track_prev : vel_sp_along_track;
} else {
/* we want to stop at current setpoint */