There seems to be some confusion here:
I wouldn't say a control system is using model based control unless it was really using a model. A simple example is a Smith Predictor.
If a model is used to calculate gains then I would call that model based design.
A PID is not a model. A PID cannot be use to predict what will happen if I apply a control signal to it. The PID gains are simple parameters that move the closed loop poles around.
Feed forwards are open loop terms and yet they could qualify for model based control as feed forward gains are calculated by inverting the open loop transfer function.
Still I would NOT call using feed forwards model based control, but it comes a lot closer than a PID. At least with feed forwards I can predict the response using the set point and its derivatives.
Model based control is when the control's output goes to the physical system and to a model like what happens in the Smith Predictor. The response of the model is compared with the response of the actual system and any error between them is used to correct the current state.
Here is an example. I am simulating a SOPDT system. The control output from the sliding mode control, SMC, is put in a delay queue to simulate the dead time. I can make the dead time as short or long as I want. In this example the dead time is relatively long compared to the plant dead time.
To make things more interesting I use a random function to simulate the fact that I may not know the plant parameters exactly. It is too easy if one does. Each time I hit ctrl-F9 a new simulation is created with different random values. I know a few of you are Mathcad users and will immediately recognize that I am using Mathcad.
Peter Nachtwey
Delta Computer Systems