rosflight / rosplane

Fixed-wing autopilot for ROSflight
https://rosflight.org/
BSD 3-Clause "New" or "Revised" License
15 stars 3 forks source link

Revamp the integrator wind up scheme #39

Closed iandareid closed 3 months ago

iandareid commented 3 months ago

The current anti-windup scheme is prone to errors. It relies on the assumption that any control effort over saturation is due to the integrator. This is not always the case, especially when control errors are large and proportional gains can drive saturation. This creates a situation where the integrator has a large value in the wrong direction resulting is poor control and strange behavior that is not immediately identifiable.

iandareid commented 3 months ago

We have considered an alternative scheme which is if we are at saturation to simply not integrate the error that time step. This appears to work well!

iandareid commented 3 months ago

This was fixed with commit b5987b, though the commit message is wrong.