Motion planning only works without collision detection

Typically: "How do I... ", "How can I... " questions
lmustudent
Posts: 11
Joined: 03 Oct 2014, 16:55

Motion planning only works without collision detection

Post by lmustudent »

Hi everyone,

I need help regarding motion planning. I have a 6 DOF robot, which is able to plan a path to a certain target and move there. I used motionplanningdemo1 as a template.
However, this only works, as long as I have collision detection turned off and in some cases the robot will move 'through’ the floor or even worse, 'through’ itself. When I turn on collision detection in the motion planning module the robot won’t move at all.
Is this a common problem and what should I work on to solve it?

Thanks in advance!

Regards,

Richie

coppelia
Site Admin
Posts: 10410
Joined: 14 Dec 2012, 00:25

Re: Motion planning only works without collision detection

Post by coppelia »

Hello,

you very probably have a situation of constant collision state. In that case, all the moves (or nodes) that are tried out will fail. Best is to start by only enabling robot-environment collision detection. If that works, you can then only test the robot self-collision detection. If both work individually, then you can enable them at the same time.

The best would be to first create collision objects by specifying the same collision entities as in the motion planning dialog. When running the simulation and a collision is detected, then colliding entities will change colors. (this does not happen when using the motion planning functionality, since in that case thousands of collisions are tested, and collision detection is silent).

Cheers

lmustudent
Posts: 11
Joined: 03 Oct 2014, 16:55

Re: Motion planning only works without collision detection

Post by lmustudent »

Hi,
I created collision objects for both cases. And in both cases the whole robot changes color right at the beginning. So I think you are right, there is constant collision. But the problem must lie in the definition of collision, right? Of course the parts of the robot touch, but I don't want him to see that as collision. Where can I define these things?
Or do you think that the problem lies somewhere else?

Thanks for your help,

Richie

coppelia
Site Admin
Posts: 10410
Joined: 14 Dec 2012, 00:25

Re: Motion planning only works without collision detection

Post by coppelia »

Hello Richie,

yes, definition of self-collision collections might be a little bit tricky, if you want adjacent shapes to be allowed to collide, but not others.
In that case, define a collection with all objects in your manipulator. Then, for each collidable shape in the manipulator, adjust the collection self-collision indicator.

Cheers

lmustudent
Posts: 11
Joined: 03 Oct 2014, 16:55

Re: Motion planning only works without collision detection

Post by lmustudent »

Thank you coppelia, you really helped me a lot! I got everything working so far.

Cheers,

Richie

lmustudent
Posts: 11
Joined: 03 Oct 2014, 16:55

Re: Motion planning only works without collision detection

Post by lmustudent »

Hi coppelia,

it seems like not everything works as expected earlier. At the moment, no collisions are detected at all and the robot moves 'through' itself and the floor. I checked all object properties and everything is collidable. Collision detection is turned on. I don't know what else to check. Could you maybe help me and take a look at my scene? It is uploaded here: https://www.dropbox.com/s/2ch0h1ftjje4k ... 2.ttt?dl=0

Thank you very much!


Richie

coppelia
Site Admin
Posts: 10410
Joined: 14 Dec 2012, 00:25

Re: Motion planning only works without collision detection

Post by coppelia »

Hello Richie,

your robot collection is not correctly defined. It says:

Code: Select all

+ From objects (incl.) down [ABB_IRB2600]
but it should be

Code: Select all

+ From objects (incl.) up [ABB_IRB2600]
Then, your gripper is self-colliding. You can notice this is in the collision dialog you turn on Compute collision contour (you will see where it is colliding). Your robot is also colliding with the floor.

Before trying to compute anything with the motion planning, make sure your collision entities are correctly defined, otherwise it will be very difficult to find out what is going on.

Cheers

lmustudent
Posts: 11
Joined: 03 Oct 2014, 16:55

Re: Motion planning only works without collision detection

Post by lmustudent »

Hi coppelia,

thanks for your help! Unfortunately, that doesn't make it any easier :)
I changed the self-collection indicators of all my parts, so every two parts touching each other have a difference of 1. That is the right way to do it, isn't it? But still I get self-collision in the gripper and collison with the floor.

For the collision with the floor I also tried working with complimentary respondable masks in my base and the floor, but it did not help.
What can I do about the gripper? Is the self-collison indicator the only way to work around self-collision? I think in the gripper there are too many parts touching each other to make it work like that..

Here you can find the updated scene: https://www.dropbox.com/s/2ch0h1ftjje4k ... 2.ttt?dl=0


Cheers,

Simon

coppelia
Site Admin
Posts: 10410
Joined: 14 Dec 2012, 00:25

Re: Motion planning only works without collision detection

Post by coppelia »

Hello Simon,

the gripper is indeed a little bit tricky, since the self-collision indicator only works well with simple chains (branched chains can be problematic). Maybe the easiest would be to have a bounding volume for your gripper, and only that bounding volume will be colliding (make sure not to mix-up collidable and respondable, which are two different things).

To avoid having your floor collide with the base of the robot, you could slightly shift the robot up, or make the base of the robot non-collidable (but in that case your gripper (for instance) will not detect collisions with the base of the robot too). The best would be to define a second collection that doesn't include the base of the robot, and to indicate that collection for the robot-environment collision checking.

Cheers

lmustudent
Posts: 11
Joined: 03 Oct 2014, 16:55

Re: Motion planning only works without collision detection

Post by lmustudent »

Hello coppelia,

The floor-collision is fixed. I moved the robot up a little bit. Defining a second collection just shifted the collision from floor-base to base-link1.

For the gripper, I would like to try building a bounding volume, but I am not sure how to do it. I cannot just put a big cuboid around the gripper, because that would cause collisions. So do I need to add several cuboids? How do i fix them and make them invisble? Can you please help me on that?

Thank you very much.

Cheers

Post Reply