跳转至

Planning

Layer Role

The planning layer is responsible for:

  • generating paths or trajectories from goals, maps, and robot state
  • local obstacle avoidance
  • motion feasibility and trajectory shaping
  • generating motion plans for manipulation tasks such as grasp execution

It is not responsible for:

  • raw hardware access
  • pure localization estimation
  • waypoint logic, behavior trees, or task dispatch
planning/

Modules such as ego-planner-swarm, venom_teb_controller, custom Nav2 controllers, and MoveIt grasp planning live here.

Current Status

The main workspace now contains a committed planning/ directory. planning/navigation/ already contains ego-planner-swarm and venom_teb_controller, while planning/manipulation/ remains the entry point for arm-side motion planning.

Current Layout Pattern

planning/
├── navigation/
│   ├── ego-planner-swarm/
│   └── venom_teb_controller/
└── manipulation/
    └── .gitkeep

planning/manipulation/ is currently the target location for future arm-side MoveIt / grasp-planning packages. No concrete package has landed there yet.

Current Modules And Reserved Entrypoints

  • ego-planner-swarm
  • venom_teb_controller
  • planning/manipulation/

Boundary With The Mission Layer

  • planning/ answers “how to move”
  • mission/ answers “when to dispatch goals, switch tasks, and advance flows”

Those concerns should stay separated.