This is my personal version of the MoveIt tutorial available here.
Motion planning problem part | movet interface class | classes used |
---|---|---|
Robot description | srdf |
rdf_loader::RDFLoader and setup assistant |
Workspace modelling, representation and collision detection | PlanningSceneMonitor and PlanningScene |
tf2_ros::Buffer , occupancy_map_monitor::OccupancyMapMonitor , moveit::RobotModel , collision_detection::CollisionPluginLoader |
Robot model, state and kinematics | robot_model::RobotModel , robot_state::RobotState |
JointModelGroup , Eigen::Isometry3d , robot_model_loader::RobotModelLoader |
Motion planning problem defintion and solver interface | planning_pipeline::PlanningPipelie |
PlanningContext , PlannerManager , PlanningRequestAdapter ,PlanningRequestAdapterChain |
Motion control | TrajectoryExecutionManager |
moveit_controller_manager::MoveItControllerManager and its derivaties as MoveItSimpleControllerManager |
/00_rsdf_and_setup_assistant
brief tutorial about using the MoveIt setup assistant. This procedure will generate the necesary files to describe the robot and its default workspace./01_robot_model_and_kinematics
how do the robot model and the robot state works. Here we will learn how the direc kinematics is computed. We will use the following classesrobot_model_loader::RobotModelLoader
robot_model::RobotModel
robot_state::RobotState
moveit::core::JointModelGroup
/02_planning_scene
How to use the planning scene to perform the collision detection task. We will use the following classesplanning_scene::PlanningScene
planning_scene::PlanningSceneMonitor
moveit_msgs::CollisionObject
moveit_msgs::AttachedCollisionObject
shape_msgs::SolidPrimitive
collision_detection::CollisionRequest
collision_detection::CollisionResult
/03_planning_contex_and_planner_manger
How to plan paths using theOMPL
. We will use the following classesplanning_interface::PlannerManager
This class is a pluginplanning_interface::PlanningContext
planning_interface::MotionPlanReques
planning_interface::MotionPlanResult
moveit_msgs::RobotTrajectory
androbot_trajectory::RobotTrajectory
/04_planning_pipeline
How to plan motions (paths and trajectories). We will use the following classesplanning_pipeline::PlanningPipeline
/common_packages
packages used across the tutorial/docker
docker files to build the image to run this tutorial.