So when updating odometry, the update function takes in a rotation2d gyro heading and the positions of the swerve modules. This seems to imply that odometry is calculated assuming that everything scales directly with distance (the field is flat).
Wouldn’t this be a problem with slanted surfaces? The differential between the swerve module encoders (current and prev) would be greater per unit of field distance (hypotenuse of triangle is greater than base), introducing a small amount of drift. Is there anything to correct for this in the code besides vision? Have any teams found solutions for this in any past games?
This seems to be important in Charged Up gameplay on the charge station ramp. The up/down ramps would induce an extra amount of calculated distance vs actual distance, which seems like it would introduce a large amount of drift during the match, especially if teams consistently go over the station to access the community. I’m curious whether this could turn out to be an issue or not in the season, any thoughts?