diff --git a/libraries/APM_PI/APM_PI.cpp b/libraries/APM_PI/APM_PI.cpp index 6fd710a32a..c07b55210f 100644 --- a/libraries/APM_PI/APM_PI.cpp +++ b/libraries/APM_PI/APM_PI.cpp @@ -11,8 +11,12 @@ long APM_PI::get_pi(int32_t error, float dt) { _integrator += ((float)error * _ki) * dt; - _integrator = min(_integrator, (float)_imax); - _integrator = max(_integrator, (float)-_imax); + +if (_integrator < -_imax) { + _integrator = -_imax; + } else if (_integrator > _imax) { + _integrator = _imax; + } return (float)error * _kp + _integrator; }