Work in progress: this documentation is still being written and reviewed. Check details against the source code.

Motion planning๏ƒ

MTC stages, planner selection, trajectory execution, and plan caching. The CMS Servo node provides a separate continuous-command path.

Read the guide ยท All subsystems ยท Symbol index

Start here๏ƒ

  • MoveToStages.add_to_task โ€” See how each MoveTo target becomes stages in an existing MTC task, including frame selection and planner fallbacks.

  • BaseStages.init_and_plan โ€” Follow task initialization and planning before a solution is submitted for execution.

  • BaseStages.execute_solution โ€” Trace how a planned solution is executed and how completion or failure is reported.

  • PlanCache.compute_key โ€” Check how resolved task inputs, gripper/cup model identity, and starting joints identify a reusable trajectory.

Modules๏ƒ

Module

Responsibility

Entries

MoveTo action server

Expose named, relative and Cartesian motion through MoveToAction.

3

MoveTo planning stages

Compose and execute named, relative and Cartesian MoveTo goals, using shared validation, target-specific fallback planners and TF-based tool-tip selection.

6

Shared motion stages

Provide shared MTC model loading, planners, pose conversion, constraints, previews, and execution. Import reads installed planning configuration; the first stage instance initializes the shared C++ MTC node.

30

Trajectory plan cache

Keep up to a configured number of serialized MTC solutions in an in-memory LRU cache. Keys combine normalized request JSON, model revision, and rounded six-joint start state; stored trajectories are not revalidated.

5

CMS Servo controller

Run the CMS MoveIt Servo node. It accepts joint-jog, twist, or pose commands and publishes controller commands and status.

13