2023-05-31
Resolve output drift with non-unity motor_position.rotor_to_output_ratio
:
Previously, for some values of motor_position.rotor_to_output_ratio
, the output position could drift over time. This would manifest as an incorrect reported position, and if under control, an incorrect controlled position. Torque and velocity control worked correctly, and still do. This was most common with irrational or non-power of two ratios, although the rate of drift varies depending upon what ratio was selected.
Improve initialization of AS5047P encoder
When using the onboard AS5047P encoder, the relative position was previously incorrectly offset from 0.0 on startup, which could result in the output position not being within +-0.5 * rotor_to_output_ratio as intended.