Plan path with minimum clearance.

2 vues (au cours des 30 derniers jours)
Lukas Schroth
Lukas Schroth le 25 Mai 2022
Commenté : Lukas Schroth le 29 Mai 2022
Hey all,
I am trying to plan a path using RRT for a robot manipulator using matlab.
Currently I am using manipulatorRRT as a planner, however i cannot find any way to change the minimal clearance of the planned path.
Due to safety of he application, I need a certain distance to all environment objects.
Is there any way to set the clearance in manipulatorRRT, or what can i use alternatively to achieve a path with a certain clearance?
Thank you very much for your help!
Yours,
Lukas

Réponse acceptée

Karsh Tharyani
Karsh Tharyani le 26 Mai 2022
Hi Lukas,
You can't specify a safety clearance in the planner. However, if your environment comprises of meshes (even if it isn't you can convert them to a collision mesh using convertToCollisionMesh), you can simply scale up the meshes in the environment and that should create a safety clearance for you.
Here's how you scale a mesh:
groundvehiclemesh=collisionMesh(stlread('groundvehicle.stl').Points);
% Show the original collision mesh
subplot(1,2,1)
show(groundvehiclemesh);
xlim([-150,150])
ylim([-150,150])
zlim([-60,60])
title("Original Mesh");
% Scale the mesh by a scaling factor
scalingfactor=2.5;
groundvehiclemesh.Vertices=scalingfactor*(groundvehiclemesh.Vertices);
% Show the scaled collision mesh
subplot(1,2,2);
show(groundvehiclemesh);
xlim([-150,150])
ylim([-150,150])
zlim([-60,60])
title("Scaled Mesh " + string(scalingfactor) + "X")
Then you can simply pass the scaled mesh to the planner "manipulatorRRT" during its creation.
Hope that helps,
Karsh
  1 commentaire
Lukas Schroth
Lukas Schroth le 29 Mai 2022
Thank you very much, that helped!!

Connectez-vous pour commenter.

Plus de réponses (1)

Image Analyst
Image Analyst le 25 Mai 2022
I suggest you get a mask of your objects then enlarge them with imdilate to create the safety buffer zone around them. Then see Steve's blog to get the shortest route:
  1 commentaire
Karsh Tharyani
Karsh Tharyani le 26 Mai 2022
Modifié(e) : Karsh Tharyani le 26 Mai 2022
The posts which you link are only relevant for 2D point like robots. The OP is asking about manipulatorRRT which uses a rigid body tree and involves collision checking for poses in 3D.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by