Adaptive PID gain scheduler (Issue #309) #311

Merged
sl-jetson merged 2 commits from sl-controls/issue-309-gain-schedule into main 2026-03-03 00:19:53 -05:00

2 Commits

Author SHA1 Message Date
fc87862603 feat(controls): Adaptive PID gain scheduler (Issue #309)
Implements ROS2 adaptive PID gain scheduler for SaltyBot with:
- Subscribes to /saltybot/speed_scale for speed conditions
- Subscribes to /saltybot/terrain_roughness for surface conditions
- Adjusts PID gains dynamically:
  * P gain increases with terrain roughness (better response on rough)
  * D gain decreases at low speed (prevent oscillation when slow)
  * I gain scales with both conditions for stability
- Publishes Float32MultiArray [Kp, Ki, Kd] on /saltybot/pid_gains
- Configurable scaling factors for each gain modulation
- Includes 18+ unit tests for gain scheduling logic

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-03-02 21:37:08 -05:00
b8f9d3eca6 feat(mechanical): RPLIDAR A1 parametric dust/splash cover (Issue #301) 2026-03-02 21:36:58 -05:00