If you replace the pole at the original with a pole at some small value
(say -0.001) then you eliminate the integrator completely => no windup.
A good way to think about this is from the state space realization. An
integrator looks like:
xdot = e (e is the error = input to the controller)
y = x (y is output from controller)
If you have e > 0 for a long time, then when e becomes zero the output
of the controller stays large (due to the integrated error). The only
way to get y to go to zero is to make e negative until the integrator
decreases back to zero.
If, on the other hand, you have a pole, then this looks like:
xdot = -a x + e
y = x
If you now have some (small) error for a long time, you reach the
equilibrium point x = e/a (remember that a is small, so this could be
large). If e becomes zero, then the output *immediately* starts to decay
(since now xdot = -a x). How fast it decays depends on the location of
the pole, but you don't have to do anything but wait and the output will
go to zero.