Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for cylinder, capsule or urdf obstacles #127

Open
newuhe opened this issue Dec 11, 2023 · 5 comments
Open

Support for cylinder, capsule or urdf obstacles #127

newuhe opened this issue Dec 11, 2023 · 5 comments

Comments

@newuhe
Copy link

newuhe commented Dec 11, 2023

Does fabrics support cylinder, capsule or urdf obstacles? It seems now only support static sphere or moving sphere and static cuboid obstacles. Also, if num of obstacles increases to 5 or more, the planning time is quite slow.

@maxspahn
Copy link
Collaborator

The supported obstacle you described are correct. There is also support for signed distance Fields. For urdf obstacles you would need to define a function that computes the distance between mesh and robot.

The planning time should be fast, just the generation of the silver at the beginning might take a couple of seconds. Can you point me to the example that is slow?

@newuhe
Copy link
Author

newuhe commented Dec 12, 2023

For signed distance filed, is there any example for geometric fabrics with some complicated urdf?
As to the planning time, if there is obstacle in the scene, the closer the arm is to the target pose, the slower it moves. If there is no obstacle, the arm will reach target pose quickly. The scene is shown below:
screenshot-20231212-224431

@maxspahn
Copy link
Collaborator

@newuhe You seem to have spotted the example with the point_robot, where we use the euclidean signed distance field, right? Currently, there is no example with a robotic arm and collision avoidance with an arm.

Fabrics are designed to move slow in the proximity of obstacles, that is considered safer. So your described behavior is expected. However, you can always tune up the attractor weight to increase the general speed. Also, the arm will always slow down approaching the target to avoid overshooting.

@newuhe
Copy link
Author

newuhe commented Dec 26, 2023

I'm confused about definition of the distance between mesh and robot. Should it be signed distance filed? If so the collision avoidance is limited to current point view without consideration of 3D obstacle. Also, if the resolution to compute signed distance filed is expanded to 720,480, the planning time highly increased.

@maxspahn
Copy link
Collaborator

Indeed, it is taken the closest point of the robot to the obstacle and its gradient. This is why it is considered a reactive method with no time horizon. However. You can and should take multiple links of your robot for collision avoidance. For the planning time, can you give me an example of that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants