Model predictive control is thus a software model of the process you want to control. By means of the model the software can predict what is coming out of the process before it actually (physically) gets out or happens. If the product you are making is not according to the specification, you are now able to interact with the process and correct it. A picture below is showing a production process which is for example being controlled by a DCS system.
The DCS interacts with the physical production process and controls it. The model interacts with the DCS, getting the actual values (measurements) and predicting the output. If the predicted output is not desired (for instance quality not good or output volume to low) we can adjust the correct parameters. The new parameters are sent as setpoint to the PID controllers who in turn influence the actual process. This is a great solution, providing the Model is an accurate ‘copy’ of the physical production process. So the problem now arises: how do we get an accurate model of the physical production process? Most current MPC solutions in the market use a step-response approach for each suspected input and some linearization to build a model. Not only is this very time-consuming (costly), but most of the time a simplified model is created. Another disadvantage is that during Model building, your actual production process is influenced by the step-responses.