Today in Code Team - January 15, 2025

Your semi-regularly updated blog from the code team.

Code · Drive · Frc · Pid · Vision

Drake

1 minute

Overview

Today focused on two main areas: PID tuning for the test chassis and vision system improvements.

Drake, Sean, and Ethan worked on debugging the swerve drive PID loops. We’re seeing issues where the wheels know their target direction but aren’t reaching it correctly - they either undershoot/overshoot or exhibit erratic behavior. While the code correctly calculates desired wheel orientations, there appears to be a disconnect between the commanded positions and actual wheel movement. We suspect this could be related to how the PID controllers are interpreting feedback from the turn encoders.

PID Tuning HowTo

On the vision front, Lincoln made significant progress with our NetworkTables implementation. The minint client now supports array data types, which will be crucial for sending pose data. Additionally, we’ve integrated the AprilTag C library’s built-in pose estimation code, which should give us more reliable positioning data compared to our previous approach.

Previous AprilTag Detection

Thing of the day

Rust vs Python typecast