Function franka::limitRate(const std::array<double, 7>&, const std::array<double, 7>&, const std::array<double, 7>&)

Function Documentation

std::array<double, 7> franka::limitRate(const std::array<double, 7> &max_derivatives, const std::array<double, 7> &commanded_values, const std::array<double, 7> &last_commanded_values)

Limits the rate of an input vector of per-joint commands considering the maximum allowed time derivatives.

Note

FCI filters must be deactivated to work properly.

Parameters:
  • max_derivatives[in] Per-joint maximum allowed time derivative.

  • commanded_values[in] Commanded values of the current time step.

  • last_commanded_values[in] Commanded values of the previous time step.

Throws:

std::invalid_argument – if commanded_values are infinite or NaN.

Returns:

Rate-limited vector of desired values.