UniversalRobots / Universal_Robots_ROS_Driver

Universal Robots ROS driver supporting CB3 and e-Series

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Utilize blend radius in trajectory forwarding

t-schnell opened this issue · comments

Summary

The UR Client Library offers setting the blend-radius to be used by the robot trajectory interpolation. This should be controllable from the ROS side aswell.

Impact

This would offer better control over the trajectory execution in the trajectory forwarding mode.

Issue details

Currently, blend radius cannot be controlled in any way from the ROS side and the default value is always used. This means, that in trajectory forwarding it is, for example, not possible to ensure certain points along the trajectory are reached precisely. Functionality to control these values per point exist on the client library, but there is no direct equivalent to blend radius in the ROS trajectory definitions.

The general idea would be to use the path_tolerance value, which in the cartesian case should be mostly trivial. On the joint based side, though, there has to be some generalized way to move from joint based tolerances to a cartesian blend radius. For this, extra input and suggestions are appreciated.

This feels like it could be handled by the passthrough_controllers directly. I agree, that it would make sense to include it into the action interface, but we probably don't want to modify the joint trajectory interface, so that's a no-go.

Adding a parameter to the passthrough controllers would probably be the easiest way to achieve things, maybe also add a service call to update it during runtime.