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

Configuring state space in MoveIt+OMPL

asked 2016-09-13 08:21:31 -0500

alexpad gravatar image

updated 2016-09-14 06:07:07 -0500

Hello, I am using moveit+ompl to control and plan for my 6dof manipulator. I created .srdf and .yaml files from .urdf using MoveIt setup assistant. What i want to do is to add degrees of freedom to the existing state space before planning. By default there must be some state space which is generated from moveit config files (assumably). And trajectory is being planned in this state space. Is there a way to modify this state space?

For example i want to move a bottle with my manipulator. But there is obstacle in front of the bottle so i can't reach it. But moving the obstacle with manipulator will allow for the reach. My goal is to create such a state space where operation of moving the obstacle can be described through state space. It can be done by adding degrees of freedom of obstacle to existing state space plus some customization of state space validity checking to make sure we move the obstacle with manipulator. Where can i find information how moveit uses ompl and interacts with it, how can i access state spaces parameters and change them? Where do i even start?

Thanks in advance.

edit retag flag offensive close merge delete


So are you trying to move the bottle with your manipulator while knowing what is in the robot's workspace? For instance, if you cannot plan around the obstacle(s) to reach the bottle, you want to move the obstacle(s) out of the way?

MoveIt can add collision objects to the planing scene.

JoshMarino gravatar image JoshMarino  ( 2016-09-13 21:25:40 -0500 )edit

You are correct. I want to reach an object in workspace that is behind some obstacle. In order to reach it i need to move the obstacle away first. And i want to define state space in such a way that obstacle has dof's to let planner know that it can play with obstacle and move it to help reach goal.

alexpad gravatar image alexpad  ( 2016-09-14 01:40:44 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2016-09-14 19:05:28 -0500

JoshMarino gravatar image

MoveIt! allows for adding objects to the workspace through either directly the URDF, through the planning scene, or to the octomap (from a camera).

Pick and place can be used to move the object once you have it added to your workspace.

Then you should be able to move the bottle with your manipulator.

I am not aware of being able to move the obstacle out of the way when planning for the bottle however. From what I understand (correct me if wrong), you would have to manually move the obstacle out of the way if planning to the bottle is unsuccessful (from the obstacle stopping you from reaching the bottle). You could code this using Python/C++ though without too much effort I think.

edit flag offensive delete link more


I guess i will have to work with OMPL directly, without MoveIt. The idea is to test whether planning algorithms are able to find the solution and how well if are. Yes, there are different ways to solve the problem, but i want to test this specific one. Thanks for the help anyways.

alexpad gravatar image alexpad  ( 2016-09-15 05:03:33 -0500 )edit

Question Tools



Asked: 2016-09-13 08:21:31 -0500

Seen: 741 times

Last updated: Sep 14 '16