Function franka::limitRate(const std::array<double, 7>&, const std::array<double, 7>&, const std::array<double, 7>&, const std::array<double, 7>&, const std::array<double, 7>&, const std::array<double, 7>&, const std::array<double, 7>&)
Defined in File rate_limiting.h
Function Documentation
-
std::array<double, 7> franka::limitRate(const std::array<double, 7> &upper_limits_velocity, const std::array<double, 7> &lower_limits_velocity, const std::array<double, 7> &max_acceleration, const std::array<double, 7> &max_jerk, const std::array<double, 7> &commanded_velocities, const std::array<double, 7> &last_commanded_velocities, const std::array<double, 7> &last_commanded_accelerations)
Limits the rate of a desired joint velocity considering the limits provided.
Note
FCI filters must be deactivated to work properly.
- Parameters:
upper_limits_velocity – [in] Per-joint upper limits of allowed velocity.
lower_limits_velocity – [in] Per-joint lower limits of allowed velocity.
max_acceleration – [in] Per-joint maximum allowed acceleration.
max_jerk – [in] Per-joint maximum allowed jerk.
commanded_velocities – [in] Commanded joint velocity of the current time step.
last_commanded_velocities – [in] Commanded joint velocities of the previous time step.
last_commanded_accelerations – [in] Commanded joint accelerations of the previous time step.
- Throws:
std::invalid_argument – if commanded_velocities are infinite or NaN.
- Returns:
Rate-limited vector of desired joint velocities.