mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
The units for angular Kv and Ka were inconsistent with the derivation. A second factory function overload was added for angular units that uses a trackwidth to convert to the other form. Notice how section 15.2 of https://file.tavsys.net/control/controls-engineering-in-frc.pdf defines the angular feedforward as u = Kv,angular v instead of u = Kv,angular + omega. The units cancel for elements of A but not B, so just the B matrix was incorrect in our code. This breaks existing C++ code since the units are part of the function signature.