Integral action in a PID controller is the key element in eliminating steady-state error. The reason it does this is that the action is proportional to the integral of the error - if an error persists, then the integral and the resultant control action keeps getting larger.
The algorithm for a pure integral controller (a PID with the proportional and derivative bits switched off) is:

or, expressed in deviation variables:

Since the controller gain and the integral time constant can be freely selected by the engineer (on a real controller just by pressing some buttons), it is convenient for the analysis of pure integral control to replace the two constants with a single, integral gain:
![]()
Again let's just use the generic first-order process model:

We need to replace the manipulated variable, u, with the equation for the controller (since the controller output will now determine the value of the manipulated variable):

The integral on the right-hand side of the equation makes things a bit difficult, but we can get rid of it by differentiating both sides w.r.t. time:

Some really interesting things have happened:
A movie showing an example of integral control of a first-order process can be found here and the model used in the movie is here.