# path planning exceeding velocity limits of ur5

Hi,

I am using moveit for path planning of a ur5. After finding a valid path, I want to execute it to the real robot (which is connected and communicating properly) but I always receive an error message like:

[ERROR] [WallTime: 1412925263.358047] Received a goal with velocities that are higher than 2.000000


the controller reports:

[INFO][ ... ]: Received new trajectory execution service request...
[WARNING][ ... ]: Controller handle reports status FAILED
[INFO][ ... ]: Execution completed: FAILED


any ideas how to fix that ?

edit retag close merge delete

Sort by » oldest newest most voted

[ERROR] [WallTime: 1412925263.358047] Received a goal with velocities that are higher than 2.000000

The error you are seeing is not caused by exceeding a real, actual velocity limit, but rather by a check in ur_driver that compares the requested velocities against a (private) parameter called max_velocity. The idea behind the check was most likely to be able to enforce a maximum velocity over a trajectory. This is currently not (very well) documented.

This parameter has a default of 2 rad/s (this is in joint space).

You can do two things:

1. add a max_velocity parameter to the ur_driver node element in ur_bringup/launch/ur_common.launch, like so:

<node name="ur_driver" pkg="ur_driver" type="driver.py" args="...">
<param name="max_velocity" type="double" value="YOUR_MAX_SPEED" />
</node>

2. edit ur_driver/src/ur_driver/driver.py, and increase the default value for the max_velocity parameter.

For now, I'd recommend you use option 1 on a source checkout of the universal_robot repository. Option 2 is really not a good idea.

I'll open a ticket on the github repository asking for this to be documented better.

Edit: for reference, see universal_robot/issues/124.

more

Thank you for your help. I modified the ur_bringup/launch/ur_common.launch file as stated in your option 1 but it seems to have no effect on the results.

In fact, I think the path planning function of MoveIt should be modified/constrained in such a way that it outputs only trajectories with joint velocities that are in the limits of max_velocity, right?

more

( 2014-10-10 04:13:32 -0600 )edit

[..] that it outputs only trajectories with joint velocities that are in the limits of max_velocity, right?

It depends: if you think it is safer when you work with the robot, or your application does not require higher velocities, then yes, you could do that.

The parameter should work though.

( 2014-10-10 04:17:17 -0600 )edit

I modified the ur_bringup/launch/ur_common.launch file as stated in your option 1 but it seems to have no effect on the results.

Did you install from binaries, or do you have a source checkout? Editing the source will require a catkin_make and source devel/setup.bash.

( 2014-10-10 04:21:16 -0600 )edit

ok - I got it working so far. After checking the velocity of various paths, it seems that many trajectories have velocities of up to 3.5, so I adjusted the max_velocity level to 3.5. I could excecute some paths on the real robot. Even though, I encountered two problems afterwards:

( 2014-10-27 08:00:40 -0600 )edit
• for some paths, even 3.5 seems not high enough
• for others, the robot moved, but stopped at some point due to the security stop. The velocity exeeded the limits of the real robot
( 2014-10-27 08:02:20 -0600 )edit

Some other users have noticed the issue with security stops as well. See universal_robot/issues/67 and issue 98 fi. Adding information on your specific setup could help solving this.

( 2014-10-27 08:21:18 -0600 )edit
1

PS: you should really have updated your original question with this new information.

( 2014-10-27 08:21:22 -0600 )edit