The Smith predictor (invented by Otto_J._M._Smith|O. J. M. Smith in 1957) is a type of predictive Controller_(control_theory)|controller for systems with pure time delay. The idea can be illustrated as follows.Suppose the plant consists of G(z) followed by a pure time delay z^{-k}.
As a first step, suppose we only consider G(z) (the plant without a delay) and design a controller C(z) with a closed-loop transfer function H(z)=\frac{C(z) G(z)}{1+C(z)G(z)} that we consider satisfactory.
Next, our objective is to design a controller \bar{C}(z) for the plant G(z) z^{-k} so that the closed loop transfer function \bar{H}(z) equals H(z) z^{-k}.
Solving \frac{\bar{C} G z^{-k}}{1+\bar{C}G z^{-k}} = z^{-k} \frac{C G }{1 + C G},
we obtain\bar{C} = \frac{C}{1+CG(1-z^{-k})}. The controller is implemented as shown in the following figure, where G(z) has been changed to \hat{G}(z) to indicate that it is a model used by the controller.
Note that there are two feedback loops. The outer control loop feeds the output back to the input, as usual. However, this loop alone would not provide satisfactory control, because of the delay; this loop is feeding back outdated information. Intuitively, for the k seconds during which no fresh information is available, the system is controlled by the inner loop which contains a predictor of what the (unobservable) output of the plant G currently is.To check that this works, a re-arrangement can be made as follows:
Here we can see that if the model used in the controller, \hat{G}(z)z^{-k}, matches the plant G(z) z^{-k} perfectly, then the outer and middle feedback loops cancel each other, and the controller generates the correct control action.

The Smith predictor (invented by Otto_J._M._Smith|O. J. M. Smith in 1957) is a type of predictive Controller_(control_theory)|controller for systems with pure time delay. The idea can be illustrated as follows.Suppose the plant consists of G(z) followed by a pure time delay z^{-k}.
As a first step, suppose we only consider G(z) (the plant without a delay) and design a controller C(z) with a closed-loop transfer function H(z)=\frac{C(z) G(z)}{1+C(z)G(z)} that we consider satisfactory.
Next, our objective is to design a controller \bar{C}(z) for the plant G(z) z^{-k} so that the closed loop transfer function \bar{H}(z) equals H(z) z^{-k}.
Solving \frac{\bar{C} G z^{-k}}{1+\bar{C}G z^{-k}} = z^{-k} \frac{C G }{1 + C G},
we obtain\bar{C} = \frac{C}{1+CG(1-z^{-k})}. The controller is implemented as shown in the following figure, where G(z) has been changed to \hat{G}(z) to indicate that it is a model used by the controller.
Note that there are two feedback loops. The outer control loop...