ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Streaming latest position as goal in Moveit

asked 2016-02-04 02:02:33 -0600

cobhc999 gravatar image

Hello guys,

I'm currently working on a ABB robot (IRB140) which should fulfill following task: It should balance a ball on a tray. This means I have to stream the latest position in Z-direction which the robot should take place in. X,Y and the Orientation always stays the same, only Z varies.

Balancing a ball

Which would be the right approach in Moveit? Cartesian Path with waypoints? Normal planning but with Asyncmove? Problem is: Imagine the robot is on its way from z=0 to z= -0.5. But then the vision system says it should go to z= +0.5. Then it would be necessery that the robot reverses immediately and ignores the old goal z= -0.5.

Regards and thank you very much for your help! Timo

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2016-02-04 05:22:53 -0600

gvdhoorn gravatar image

updated 2016-02-04 05:25:05 -0600

I'm wondering if for this kind of 'low-level' dynamic task MoveIt is currently a good component to use. It seems there is very little planning needed here, which is what MoveIt is good at (but for which it needs some time).

If you already know where you need your TCP to go, it might make sense to generate a Cartesian trajectory yourself (basically interpolate between two poses: current and target), then use any IK service to convert those into joint space poses and feed them directly to your driver / action server. For true low-latency execution I'd imagine a driver / action server capable of something like trajectory replacement would be needed (if not using a package that supports direct streaming of position set points).

PS: may I ask which interface your are using to your ABB? The ROS-Industrial abb_driver package currently uses a download approach instead of streaming, which could negatively impact performance with these kind of tasks.

edit flag offensive delete link more


Isn't removing Moveit from the scenario increase the probability of self-collisions? Maybe this particular case the robot is safe, but I'm talking about other scenarios with similar requirements.

ipa-hsd gravatar image ipa-hsd  ( 2016-08-04 15:55:19 -0600 )edit

@intelharsh: well, yes. You could -- if timing and performance allows -- use the collision scene maintained by MoveIt to include some form of checking. But OMPL just isn't very well suited for the kinds of planning tasks that @cobhc999 wanted to do.

gvdhoorn gravatar image gvdhoorn  ( 2016-08-13 03:43:10 -0600 )edit

Question Tools



Asked: 2016-02-04 01:57:49 -0600

Seen: 388 times

Last updated: Feb 04 '16