Robotics StackExchange | Archived questions

Control velocity of joints in Moveit/ROS

Hey all!,

I am trying to use Moveit to control the movements on my real robot. I have setup JointTrajectory Controllers which get the position and velocities from Moveit and relay it to my Arduino which in turn controls 3 steppes.

The problems I'm having , is with the velocityof the joints in Moveit. They are a bit high , due to which my steppers cannot keep-up and they eventually lose-sync for complicated trajectories. Is there a way to scale the velocities down? I have tried joint_limits to control the max velocity, but it does not help as it only limits and does not scale or slow down the motion in Moveit. Is there a way to slow down the execution time? I have seen time parameterization...but is there any other way to my problem?

Asked by pranavb104 on 2018-12-19 09:22:34 UTC

Comments

I have tried joint_limits to control the max velocity, but it does not help as it only limits and does not scale or slow down the motion in Moveit

this confuses me: if you limit the maximum velocity, would that not cause the motion as a whole to become slower / take more time?

Asked by gvdhoorn on 2018-12-19 15:37:44 UTC

My mistake....I thought the problem was that my joints were not moving slowly, but the problem is in my firmware/arduino and the rate at which values are being published from ROS to arduino....I will close this thread, as this question is irrelevant

Asked by pranavb104 on 2018-12-21 09:07:28 UTC

Answers

Take a look at MoveGroupInterface::setMaxVelocityScalingFactor and MoveGroupInterface::setMaxAccelerationScalingFactor right under it.

Asked by aPonza on 2018-12-19 11:19:23 UTC

Comments