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

Collisions not detected between attached object and environment?

asked 2011-02-16 02:22:30 -0600

Ugo gravatar image

updated 2016-10-24 09:01:14 -0600

ngrennan gravatar image


I'm now facing a new issue in my implementation of the manipulation stack: the collisions between the object I just picked up (which is correctly attached to the hand) and the environment don't seem to be computed.

I'm placing my object directly on top of another object and I don't get any collisions, though I'm getting collisions between the hand and the collision map if I try to place the object at a position where the hand would be in collision with the environment.

Any ideas?



PS: here is a link to a screencast I made to show the current status of my implementation of this stack.

More details regarding my questions: The collision_support_surface_name is definitely "table". I uploaded a new video to try to better show the problem I'm having with the collision.

In this video you can ignore the small orange/yellow spheres in rviz: it's a work in progress, but I'm just sending a list of targets to the place action and I'm (badly) displaying the grid for this list of targets.

As you can see there's no collision found between the object lying on the table and the attached object.

If I check the DEBUG messages, I can see lots of allowed collisions (between the attached body and the hand mostly), but none between the attached body and the other objects or the table. The collisions between the hand and the unattached body / environments are found.

edit retag flag offensive close merge delete


when you see an answer you like, mark it as an accepted answer
mmwise gravatar image mmwise  ( 2011-02-17 09:34:16 -0600 )edit

2 Answers

Sort by ยป oldest newest most voted

answered 2011-02-16 08:27:24 -0600

Matei Ciocarlie gravatar image

Hi Ugo,

Like Gil said, the manipulation pipeline will indeed disregard collisions between the object you are placing (identified as the "collision_object_name" in your PlaceGoal) and the support you are placing on (identified by the "collision_support_surface_name" in your PlaceGoal). This has to happen, otherwise any place operation would by definition bring your object in collision with whatever you are placing it on.

However, collision checking between the object and the support surface is disabled only in the last stage of the operation (interpolated IK), so that you don't hit the table with the object while moving around, but only when you're actually placing it.

I can not tell from the video what the support surface is in your case. If you're passing the "other object" as the "collision_support_surface_name" then the grasping pipeline will indeed put one object on top of the other. If you pass the table as the "collision_support_surface_name" then a place goal that brings your object in collision with the "other object" should be rejected.


edit flag offensive delete link more

answered 2011-02-16 03:36:46 -0600

egiljones gravatar image


That video is very cool! Looks like you are close to getting everything working.

As to your question, are you using the manipulation stack to compute the parts of the trajectory when the attached object comes into contact with the other object on the table? The manipulation stack sets some allowed collision operations during different parts of placing objects - for instance, I believe it allows contact between the attached object and the table when using interpolated ik to plan the final stages of the place. If you enable DEBUG output in whatever node is active during that trajectory segment you may see something like "collision but allowed touch between 'attached_object' and 'unattached_object'". That will be the clue that the node is intentionally disabling those collisions. Matei or Kaijen may also have more insight about what is being disabled and when.


edit flag offensive delete link more

Question Tools

1 follower


Asked: 2011-02-16 02:22:30 -0600

Seen: 658 times

Last updated: Feb 18 '11