|
|
de4d1bbe3a
|
feat: PID tuning interface via CAN/ROS2 (Issue #693)
- Mamba (STM32): add ORIN_CAN_ID_PID_SET (0x305) handler in orin_can.c.
Receives kp/ki/kd as uint16*100 (BE), applies to running balance loop,
replies with FC_PID_ACK (0x405) echoing clamped gains. Gains persist in
RAM until reboot; not saved to flash.
- Jetson: expose pid/kp, pid/ki, pid/kd as ROS2 parameters in
can_bridge_node. Parameter changes trigger encode_pid_set_cmd() and
send CAN frame 0x305 immediately. ACK frame 0x405 logged at DEBUG.
- mamba_protocol.py: add ORIN_CAN_ID_PID_SET / FC_PID_ACK IDs,
PidGains dataclass, encode_pid_set_cmd(), decode_pid_ack().
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-03-20 17:39:00 -04:00 |
|