https://github.com/kavrakilab/moveit_ompl_planning_interface
Plugin interface for OMPL planning within MoveIt!
https://github.com/kavrakilab/moveit_ompl_planning_interface
Last synced: 4 months ago
JSON representation
Plugin interface for OMPL planning within MoveIt!
- Host: GitHub
- URL: https://github.com/kavrakilab/moveit_ompl_planning_interface
- Owner: KavrakiLab
- Created: 2015-01-19T21:02:51.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2020-10-22T03:17:54.000Z (over 5 years ago)
- Last Synced: 2023-02-27T20:23:24.770Z (over 3 years ago)
- Language: C++
- Size: 470 KB
- Stars: 5
- Watchers: 19
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.txt
Awesome Lists containing this project
README
The moveit_ompl_planning_interface supersedes the existing ompl_interface plugin that is packaged with moveit. The moveit_ompl_planning_interface interface provides a plugin framework to easily incorporate new OMPL-based planners into the framework without having to recompile the ompl_interface.
-- USAGE --
The new interface works with the existing ompl_planning.yaml files that are output with the MoveIt setup wizard. You can simply extend the yaml planner specification to specify the plugin where the PlannerManager can create the planning context for the given planner.
Example (ompl_planning.yaml):
planner_configs:
RRTkConfigDefault:
plugin: ompl_interface/GeometricPlanningContext # <-- This line was added. This is the fully-qualified name of the plugin you create
type: geometric::RRT
range: 0.0
goal_bias: 0.05
RRTConnectkConfigDefault:
plugin: ompl_interface/GeometricPlanningContext # <-- This line was added. This is the fully-qualified name of the plugin you create
type: geometric::RRTConnect
range: 0.0 # Max motion added to tree. ==> maxDistance_ default: 0.0, if 0.0, set on setup()
...
To load the plugin, you will need to modify move_group.launch to specify the moveit_ompl_planning_interface pipeline instead of the existing ompl planning pipeline.
-- Design --
The interface is plugin centric, where the planning context is responsible for the majority of its own configuration. New plugins must implement an OMPLPlanningContext class. For standard geometric planning, it is possible to derive from the existing GeometricPlanningContext class and simply configure your new planner.