Skip to content

rock-planning/motion_planners

Repository files navigation

motion_planners

The motion_planner package was initiated and is currently developed at the Robotics Innovation Center of the German Research Center for Artificial Intelligence (DFKI) in Bremen.

The motion_planner package contains different state of the art motion planners. This package is one of the main package of the Motion planner framework. The Motion planner framework is focussed on to generate a collision free path for complex robotics system with higher degrees of freedom. This package contains different state of the art motion planners. The current version supports optimization and sampling based motion planners. The following motion planners are currently integrated:

Requirements

motion_planner_framework

As shown in the above figure this package contains only the planner part, for collision detection and kinematics it depends on the following library:

Installation

On any Unix based operating systems, you can install this package. A simple way to install this package is to use Rock framework. As this package is dependent only on the base-types of the Rock framework, it can also be built independent of the Rock framework.

The optimization based planners: STOMP and TrajOpt will be installed along with this package. The sampling-based planner: OMPL is not installed by default. It is up to the user, whether to use the sampling-based planner or not. This package can alsp be build even without OMPL planner.

Features

  • Provides a collision free trajectory for complex robotic system.
  • Handles self collision and collision with the environment.
    • Grasped object can be added to the planner and it will be checked for collision.
    • External object can be added to the environment.
  • Easy to choose different planners. The code is written using factory design pattern.
  • Currently in development:
    • Adding Pose constraint
    • Real time planning

Directories

motion_planners contains the following directories:

  • include - contains header c++ files
  • src - contains source c++ files
  • src/planners/ - contains planner factory class.
  • src/planners/stomp - contains original stomp core library. In order to maintian the originality of the the code, only the ROS dependency is removed and some minor corrections are made.
  • src/planners/trajopt - contains original trajopt core library. In order to maintian the originality of the the code, only the openrave and bullet dependency is removed and some minor corrections are made. The original code used openrave for simulation/visualization and uses bullet for collision. As we use collision_detection library for collision detection, the bullet library is stripped from the code.
  • src/planners/src/wrappers - contain wrappers for OMPL, STOMP and TrajOpt library.

Deployment

  • A simple example code is in test folder.
    • usage: ./test_motion_planners "absolute_path_to_test_folder"
  • Using Orogen component:
    • Please refer to motion_planner deployment package for how to deploy this libray.

License

BSD 3-Clause License - The license file can be found here

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published