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_assistantbrief 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_kinematicshow 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::RobotModelLoaderrobot_model::RobotModelrobot_state::RobotStatemoveit::core::JointModelGroup
/02_planning_sceneHow to use the planning scene to perform the collision detection task. We will use the following classesplanning_scene::PlanningSceneplanning_scene::PlanningSceneMonitormoveit_msgs::CollisionObjectmoveit_msgs::AttachedCollisionObjectshape_msgs::SolidPrimitivecollision_detection::CollisionRequestcollision_detection::CollisionResult
/03_planning_contex_and_planner_mangerHow to plan paths using theOMPL. We will use the following classesplanning_interface::PlannerManagerThis class is a pluginplanning_interface::PlanningContextplanning_interface::MotionPlanRequesplanning_interface::MotionPlanResultmoveit_msgs::RobotTrajectoryandrobot_trajectory::RobotTrajectory
/04_planning_pipelineHow to plan motions (paths and trajectories). We will use the following classesplanning_pipeline::PlanningPipeline
/common_packagespackages used across the tutorial/dockerdocker files to build the image to run this tutorial.