I am currently using DART 6.7 for robotic manipulation and I am trying to compute the time it took for the arm to reach a certain pose. I am recording the velocities of the joints at each timestep running: skeleton->getVelocities()
and I obtained velocities higher than the velocity limit for the joints.
The current velocity limit for a joint, I am currently interested on, is 0.43633, I set acceleration limits of ±0.01 and I am using a timestep of 0.001. I am using a PD controller with the formula P_gain * (target_position - current_position) + D_gain * (0 - current_velocity)
for the motion commands.
Is it normal/expected for the velocity obtained with getVelocities() to be over the velocity limit?. Am I missing some condition to enforce those limits?.