Day 10
MoveIt 2: motion planning for the Panda
This is a valid v1.0 placeholder page for the later curriculum arc. Full interactive lab treatment ships after Week 1 dogfooding.
LECTURE & READING
Glossary primer (10 min)
- MoveIt 2 — ROS 2 motion-planning framework. Industry standard. Ships planners, Movement, Mechanics & Robot BodyInverse kinematics (IK)Calculating the joint values needed to reach a desired pose. solvers, collision checking, time parameterization.
- Control & PlanningPlanningFiguring out what the robot should do before or during movement. scene — Modern Robot LearningWorld modelA model that predicts how the world will change after actions. MoveIt sees: Core ConceptsRobotA physical system with sensors and actuators that can observe the world and take actions., attached objects, octomap from depth camera, collision meshes.
- OMPL — Open Control & PlanningMotion planningFinding a path or motion that gets the robot from start to goal. Library. MoveIt's default sampling-based planner (RRT-Connect, RRT*, PRM).
- Pilz Industrial Motion Planner — MoveIt's deterministic motion planner for trajectories with circular and linear segments.
- TRAC-IK / KDL — Movement, Mechanics & Robot BodyInverse kinematics (IK)Calculating the joint values needed to reach a desired pose. solvers MoveIt uses.
- Move group — A named subset of joints (e.g. "panda_arm", "panda_hand").
- Core ConceptsGoalThe desired outcome or target state for a robot task. Control & PlanningConstraintA rule the robot must obey, such as avoiding collisions or staying within joint limits. — Pose (Cartesian), Movement, Mechanics & Robot BodyJointA movable connection between robot parts. position, or visibility Control & PlanningConstraintA rule the robot must obey, such as avoiding collisions or staying within joint limits. defining where to plan to.
- Core ConceptsTrajectoryA sequence of states or actions over time. — Time-parameterized Movement, Mechanics & Robot BodyJointA movable connection between robot parts. path. MoveIt 2 uses Ruckig for time-parameterization (Day 7 callback).
- MoveIt Servo — Real-time Cartesian/Movement, Mechanics & Robot BodyJointA movable connection between robot parts. jogging at 100+ Hz, separate from Control & PlanningPlanningFiguring out what the robot should do before or during movement..
Real-world analogy
MoveIt is GPS for a Core ConceptsRobotA physical system with sensors and actuators that can observe the world and take actions. arm. You give it a destination (pose), it plans a route around obstacles, generates time-stamped waypoints, and hands them to the Control & PlanningControllerThe algorithm or system that turns desired behavior into motor commands.. OMPL is the "explore many random routes and pick the best" engine. Pilz is the "exact line/arc" engine for industrial settings.
Hour 1 — Concept primer
- MoveIt 2 Concepts page, full ~25 min: https://moveit.picknik.ai/main/doc/concepts/concepts.html
- PickNik Robotics MoveIt overview, "AI in Automotive Manipulation & TasksAssemblyPutting components together in a structured way. with MoveIt Pro and ROS"
Video
PickNik Robotics MoveIt overview, "AI in Automotive Manipulation & TasksAssemblyPutting components together in a structured way. with MoveIt Pro and ROS
Open source
Hour 2 — Tutorial setup
Install Panda MoveIt config:
sudo apt install -y ros-jazzy-moveit ros-jazzy-moveit-resources ros-jazzy-moveit-pyWalk through the official MoveIt 2 Quickstart in RViz tutorial up to "Plan to a pose Core ConceptsGoalThe desired outcome or target state for a robot task." (~30 min): https://moveit.picknik.ai/main/doc/tutorials/quickstart_in_rviz/quickstart_in_rviz_tutorial.html
You'll launch:
ros2 launch moveit2_tutorials demo.launch.pyDrag the interactive marker on the EE in RViz. Click "Plan & Execute". Confirm the arm moves smoothly.
LAB
Hour 3 — Lab: programmatic planning to a pose with MoveIt-Py (75 min)
What you're building. A standalone Python script that uses MoveIt's Python bindings (moveit_py) to plan and execute a sequence of three Cartesian goals on the Panda in Simulation & Sim-to-RealSimulationA virtual environment where robots can be trained or tested.. You will: pick up an "object" (no real grasp, just move close), retreat, move to a different pose, and Imitation & Reinforcement LearningReturnThe total accumulated reward over time. home.
What success looks like at the end. You have:
1. w2-systems/src/day10_moveit_pose_goals.py runnable.
2. Console output: each plan succeeds, reports Control & PlanningPlanningFiguring out what the robot should do before or during movement. time < 2 s and Core ConceptsTrajectoryA sequence of states or actions over time. length 0.5–3 s.
3. The Panda visibly executes 3 distinct motions in RViz.
4. A 30-second screen recording videos/day10_moveit.mp4.
Step 1 — Launch MoveIt with Panda (5 min)
In tmux pane 1:
Full source continues in the committed curriculum files. The v1.0 page exposes the day flow and lab surface without inventing content.