Skip to content
Snippets Groups Projects
Commit ab8527cc authored by Dennis Mannhart's avatar Dennis Mannhart Committed by Beat Küng
Browse files

FlightTaskManualStabilized: limit manual yaw rate in flighttask

parent 03b3026e
No related branches found
No related tags found
No related merge requests found
......@@ -46,7 +46,8 @@ FlightTaskManualStabilized::FlightTaskManualStabilized(control::SuperBlock *pare
_tilt_max_man(parent, "MPC_MAN_TILT_MAX", false),
_throttle_min(parent, "MPC_THR_MIN", false),
_throttle_max(parent, "MPC_THR_MAX", false),
_throttle_hover(parent, "MPC_THR_HOVER", false)
_throttle_hover(parent, "MPC_THR_HOVER", false),
_yaw_rate_max(parent, "MPC_MAN_Y_MAX", false)
{}
bool FlightTaskManualStabilized::activate()
......@@ -62,6 +63,7 @@ void FlightTaskManualStabilized::_scaleSticks()
/* Scale sticks to yaw and thrust using
* linear scale for yaw and piecewise linear map for thrust. */
_yaw_rate_sp = _sticks(3) * math::radians(_yaw_rate_scaling.get());
_yaw_rate_sp = math::sign(_yaw_rate_sp) * math::min(fabsf(_yaw_rate_sp), math::radians(_yaw_rate_max.get()));
_throttle = _throttleCurve();
}
......
......@@ -69,5 +69,6 @@ private:
control::BlockParamFloat _tilt_max_man; /**< maximum tilt allowed for manual flight */
control::BlockParamFloat _throttle_min; /**< minimum throttle that always has to be satisfied in flight*/
control::BlockParamFloat _throttle_max; /**< maximum throttle that always has to be satisfied in flight*/
control::BlockParamFloat _throttle_hover; /**< yhrottle value at which vehicle is at hover equilibrium */
control::BlockParamFloat _throttle_hover; /**< throttle value at which vehicle is at hover equilibrium */
control::BlockParamFloat _yaw_rate_max; /** manual maximum yawspeed */
};
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment