Skip to content
The MoveIt 2 Motion Planning Framework for ROS 2.0
Branch: master
Clone or download
Pull request Compare This branch is 1106 commits ahead, 36 commits behind ros-planning:master.
LanderU Merge pull request #128 from AcutronicRobotics/octomap_repo
Adding octomap upstream on moveit2.repos
Latest commit 238996d Jul 15, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.docker Update CI infrastructure Jun 9, 2019
.github Improve wording of probot for first pull request merged (#1232) Nov 27, 2018
.logo Update logos and gitignore Apr 7, 2019
moveit colcon ignore moveit Mar 28, 2019
moveit_commander colcon ignore moveit Mar 28, 2019
moveit_core
moveit_experimental Converting all libraries to SHARED May 8, 2019
moveit_kinematics Make it sure that headers properly should be installed at the desired… Jul 11, 2019
moveit_planners moveit_planners_ompl, fix to compile in OS X Jun 9, 2019
moveit_plugins address variadic function parameter types error Jun 9, 2019
moveit_ros Fix sub-components Jul 5, 2019
moveit_runtime colcon ignore moveit Mar 28, 2019
moveit_setup_assistant remove coma in MOVEIT_CLASS_FORWARD May 30, 2019
.clang-format improve clang-format settings Nov 20, 2018
.clang-tidy Apply clang tidy fix to entire code base (Part 2) (#1394) Mar 14, 2019
.gitignore Update logos and gitignore Apr 7, 2019
.travis.linux.env Update .travis.linux.env: Jun 15, 2019
.travis.osx.env Re-enable Travis in OS X (#54) Apr 21, 2019
.travis.yml
CONTRIBUTING.md Add CONTRIBUTING.md file, set pull request expectations (#557) Jul 23, 2017
LICENSE.txt Add license file to root of project (#349) Nov 14, 2016
MIGRATION.md moveit_commander.MoveGroupInterface.plan() to better align with C++ M… Mar 16, 2019
README.md Fixed Typo Jun 25, 2019
mara-ros2.repos Create mara-ros2.repos Mar 25, 2019
moveit.rosinstall fixing rosinstall branch (#70) Apr 1, 2019
moveit2.repos Update moveit2.repos Jul 15, 2019
osx-compile-moveit2.sh Update osx script to include OMPL planner Jun 9, 2019
osx-dependencies.sh Added dependency: Mar 9, 2019
osx-install-ros2-binary.sh resource retriever from sources May 8, 2019
osx-install-ros2-source.sh Re-enable Travis in OS X (#54) Apr 21, 2019
ubuntu-install.sh Update ubuntu-install.sh Apr 5, 2019

README.md

MoveIt 2 Logo

The MoveIt! Motion Planning Framework for ROS 2.0

Milestones

  1. Official announcement, commitment from Acutronic Robotics to allocate PMs and fund PickNik
  2. Why MoveIt 2 and approach
  3. Porting and understanding moveit_core
  4. First demonstrator in ROS 2, planning to a joint-space goal
  5. Sensorless collision detection with ROS 2
  6. Announcing MoveIt 2 alpha release

Progress

Update/setup infrastructure for development
  • Upgrade continuous integration for ROS 2.0
  • Convert all headers and link it to HRIM (contributed by @ibaiape)
  • Update/setup infrastructure for development
    • Delete metapackages
    • Upgrade continuous integration for ROS 2.0
    • Refactor/cleanup folder hierarchy
Dependencies on other packages
Convert moveit_core packages to ROS 2.0
  • Convert moveit_core packages to ROS 2.0
    • version
    • macros
    • backtrace
    • exceptions
    • profiler
    • logging
    • background_processing
    • kinematics_base
    • controller_manager
    • sensor_manager
    • robot_model
    • transforms
    • robot_state
    • robot_trajectory
    • collision_detection
    • collision_detection_fcl
    • kinematic_constraints
    • planning_scene
    • constraint_samplers
    • planning_interface
    • planning_request_adapter
    • trajectory_processing
    • distance_field
    • collision_distance_field
    • kinematics_metrics
    • dynamics_solver
    • utils
Other moveit packages (e.g. moveit_ros, ...)
Necessary for a Minimal Working Example
  • Necessary for a Minimal Working Example
    • moveit_core
    • moveit_ros_perception
      • occupancy_map_monitor
    • move_group
    • moveit_ros_planning
      • rdf_loader
      • collision_plugin_loader
      • kinematics_plugin_loader
      • robot_model_loader
      • constraint_sampler_manager_loader
      • planning_request_adapter_plugins
      • planning_pipeline
      • planning_scene_monitor
      • trajectory_execution_manager
      • plan_execution
    • planning_interface
      • common_planning_interface_objects
      • planning_scene_interface
      • move_group_interface (partially)
      • test
    • moveit_planner
      • ompl
    • moveit_kinematics
      • kdl_kinematics_plugin
    • moveit_plugins
      • moveit_fake_cotroller_manager
      • moveit_simple_controller_manager
New features in ROS 2.0 (not started)
  • New features in ROS 2.0 (see last survey for more insights)
    • Realtime support
    • Lifecycle management of the ROS nodes%
    • Replacing plugins with ROS 2 components
    • Security support
    • Improved namespace handling
    • Windows support
Documentation (not started)
  • Documentation
    • Tutorials for MoveIt2
    • Create tutorial on using ros1/ros2 bridge to support ros1 hardware drivers
    • Move install instructions to moveit.ros.org
Major refactoring and divergence from moveit2 (not started)
  • Major refactoring and divergence from moveit2
    • Run ROS2 C++ and python linters
    • Delete excesses packages that are left over from rosbuild stacks: moveit_runtime, moveit_plugins, moveit_ros
    • Rename non-package folders:
      • rename moveit_planners to planners
      • rename moveit_plugins to controller_interfaces
    • Restructure folder layout of moveit repo:
      • flatten moveit_ros folder to root of repo
      • rename all moveit_ros folders with moveit_ros prefix
    • Rename major classes
      • ControllerManagers become ControllerInterfaces
      • Rename related packages
    • Merge repos:
      • moveit 9.6 MB
      • moveit_task_constructor
      • moveit_tutorials 28.6 MB
      • moveit_msgs
      • moveit_resources 61 MB
      • moveit_visual_tools
      • moveit_advanced?
      • DELETE: moveit_kinematics_tests
    • Remove large binaries from moveit repo
    • Add gitlfs?

Install and Test MoveIt 2

Note that MoveIt 2 is a work in progress. Limited effort has been allocated to provide instructions on how to reproduce the available work.

Install and test options

Build From Source

Ubuntu 18.04

Install ROS 2 Dashing Diademata

Follow this to install ROS 2 Dashing

Compile MoveIt 2 and Dependencies:

Install additional build dependencies:

sudo apt-get install python-vcstool python3-colcon-common-extensions

Warning:--symlink-install flag is not compatible for now: https://github.com/AcutronicRobotics/moveit2/issues/112, https://github.com/AcutronicRobotics/moveit2/issues/104

Download and build MoveIt2:

mkdir -p ~/moveit2_ws/src
cd ~/moveit2_ws/src
git clone https://github.com/AcutronicRobotics/moveit2 -b master
cd ..
vcs import src < src/moveit2/moveit2.repos
export ROS_DISTRO=dashing
source /opt/ros/dashing/setup.bash
rosdep update && rosdep install -q -y --from-paths . --ignore-src --rosdistro ${ROS_DISTRO}
colcon build --merge-install

Using a Docker container

# Host machine
docker run -it ros:dashing
# Inside of the docker image
mkdir -p ~/moveit2_ws/src
cd ~/moveit2_ws/src
git clone https://github.com/AcutronicRobotics/moveit2 -b master
cd ..
vcs import src < src/moveit2/moveit2.repos
apt update
rosdep update && rosdep install -q -y --from-paths . --ignore-src --rosdistro ${ROS_DISTRO} --as-root=apt:false || true
colcon build --merge-install

OS X 10.14 (DEPRECATED)

Refer to https://acutronicrobotics.com/docs/products/robots/mara/moveit2/install/osx (outdated)

Using the CI infrastructure

Moveit uses a Docker-based CI infrastructure to run tests and validate commits. Such infrastructure adapted for MoveIt 2 is available at https://github.com/acutronicrobotics/moveit_ci.git.

Using the CI infrastructure, one can get access to MoveIt 2 current status and test its capabilities

Using the CI infrastructure in Ubuntu

Note: You need to have docker installed on your system.

cd ~ && git clone https://github.com/AcutronicRobotics/moveit2
cd ~/moveit2
git clone -q -b dashing --depth=1 https://github.com/acutronicrobotics/moveit2_ci.git .moveit2_ci
source .travis.linux.env
.moveit2_ci/travis.sh

Using the CI infrastructure in OS X

TODO

Continuous Integration

Build Status

Docker Containers

https://cloud.docker.com/u/acutronicrobotics/repository/docker/acutronicrobotics/moveit2

You can’t perform that action at this time.