Context
The current motion control chains (QUADPID, QUADPID_TRACKER) use PoseStraightFilter which enforces straight-line segments between waypoints (rotate → translate → rotate state machine). This makes curved trajectories impossible without stopping and rotating at each waypoint.
Goal
Add an Adaptive Pure Pursuit controller chain that generates continuous steering commands by tracking a lookahead point on the path. This enables smooth curved path following without the rotate-stop-translate pattern.
Key features
- Adaptive lookahead distance based on current speed
- Curvature-based speed limiting for safe cornering
- Forward and backward motion support
- Initial rotation phase for large heading errors
- Path interpolation between waypoints
Related
Context
The current motion control chains (QUADPID, QUADPID_TRACKER) use PoseStraightFilter which enforces straight-line segments between waypoints (rotate → translate → rotate state machine). This makes curved trajectories impossible without stopping and rotating at each waypoint.
Goal
Add an Adaptive Pure Pursuit controller chain that generates continuous steering commands by tracking a lookahead point on the path. This enables smooth curved path following without the rotate-stop-translate pattern.
Key features
Related