moveit / moveit_task_constructor

A hierarchical multi-stage manipulation planner
https://moveit.github.io/moveit_task_constructor
BSD 3-Clause "New" or "Revised" License
176 stars 150 forks source link

Collision check in ModifyPlanningScene should be optional #592

Closed LeroyR closed 2 months ago

LeroyR commented 2 months ago

In our tasks SimpleGrasp fails with collision during attach.

Since https://github.com/moveit/moveit_task_constructor/commit/9c05305effa7173a94f3befdae09386763e04f0a enables collision checks in ModifyPlanningScene, the attach step of SimpleGrasp checks for collision. In our case the Objects are too close to the surface (e.g. via padding) thus Attach fails. Before the change we allowed collision of the grasped object with everything before performing a short lift to move the object out of possible collision with others.

Do we need to perform collision check by default on each ModifyPlanningScene? I would propose to make the collision check optional with default OFF.

rhaschke commented 2 months ago

The collision check is necessary to ensure a valid state for the following stage. Obviously you need to allow collisions between object and surface before (or when) attaching the object.