feat(controls): Adaptive PID — auto-tuning balance controller based on payload weight #136

Closed
opened 2026-03-02 09:27:28 -05:00 by sl-jetson · 0 comments
Collaborator

Summary

Self-tuning PID controller that adapts gains based on detected payload/weight changes.

Requirements

  • Weight estimation: Estimate total robot weight from motor current draw at steady state
  • Gain scheduling: Pre-computed PID gain tables for weight ranges (empty, light, heavy)
  • Online adaptation: Gradual gain adjustment when weight change detected mid-operation
  • Safety bounds: PID gains clamped to safe ranges, revert to defaults if unstable
  • Calibration routine: On-demand weight calibration procedure (rock back and forth)
  • ROS2 params: Dynamic reconfigure for manual gain override
  • Logging: Log weight estimates and gain changes for offline analysis

Agent: sl-controls

Labels: phase-2, pid

## Summary Self-tuning PID controller that adapts gains based on detected payload/weight changes. ## Requirements - **Weight estimation**: Estimate total robot weight from motor current draw at steady state - **Gain scheduling**: Pre-computed PID gain tables for weight ranges (empty, light, heavy) - **Online adaptation**: Gradual gain adjustment when weight change detected mid-operation - **Safety bounds**: PID gains clamped to safe ranges, revert to defaults if unstable - **Calibration routine**: On-demand weight calibration procedure (rock back and forth) - **ROS2 params**: Dynamic reconfigure for manual gain override - **Logging**: Log weight estimates and gain changes for offline analysis ## Agent: sl-controls ## Labels: phase-2, pid
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: seb/saltylab-firmware#136
No description provided.