Advances in model predictive control

Advances in processors and memory make it possible to embed MPC in the DCS

By Terry Blevins and Willy Wojsznis

When digital distributed control systems (DCS) were introduced in the late 1970s, control functionality was just a digital implementation of techniques that were common in an electronic, panel-based control system. So it caused quite a stir when Cutler and Ramaker presented a paper in 1980 providing information on a new technique known as dynamic matrix control. Shell Oil had developed and deployed this technique for the control of large, interactive, multiple input-multiple output (MIMO) processes such as refinery distillation columns. This work by Shell was the first version of what is commonly referred to today as model predictive control (MPC). MPC has since been installed in thousands of plants to increase production rates and/or reduce variation in key quality parameters.

Advances in processors and memory make it possible to embed MPC in the DCS. If the DCS controller supports MPC, it is possible to justify applying MPC to small processes that have historically been controlled using single-loop and multi-loop techniques. MPC may be used for the control of single input-single output (SISO), as well as MIMO processes. Also, the ability of MPC to use measurements provided by wireless transmitters provides a new level of flexibility in addressing control applications.

Embedded MPC

In its simplest form, MPC may be used to address a SISO process. For example, MPC can be used to effectively control a SISO process that is "dead-time-dominant" (process dead time is equal to or greater than the process time constant) where PID may not provide satisfactory performance (Figure 1).

The improvement is possible because the MPC algorithm is generated based on process response to a step change in process inputs (the step response model), rather than being predefined, as it is with PID. When a change is made in an input of a dead-time-dominant process, unlike the PID algorithm, the MPC algorithm is aware that this change will not be immediately reflected in the process. This allows the MPC algorithm to do a better job of controlling dead-time-dominant processes.

See also: Killing model-based control dead time

If a disturbance to a process can be measured, it may be incorporated into the MPC. In this way, MPC may be used to address applications that traditionally use a feedforward input to PID. The MPC block can automatically compensate for the disturbance and thus do a better job of maintaining the controlled parameter at setpoint. When a process output is a constraint parameter, that measurement is simply added as an input to the MPC block. The design and implementation of an override control strategy using an MPC block is thus much simpler than implementing override control using two PID blocks and a control selector block.

When a process is characterized by multiple manipulated inputs and multiple controlled outputs, there is a potential for interaction; that is, a change in one manipulated input may impact multiple controlled outputs. When the resulting interaction between control loops is significant, detuning the PID controller is the most common way to deal with it. When MPC is used, the interaction of the manipulated inputs and controlled outputs may be addressed by one MPC block (Figure 2).

Commissioning MPC

When MPC is supported in a control system, a software application is provided to automatically identify the process step response model. Similar to the tuning applications provided to tune PID, the MPC application is designed to allow the process to be automatically tested. With the push of a Test button, the step response model is automatically identified, and the MPC algorithm is generated and transferred to the MPC block used for control.

Before initiating a test, the user may specify how much the manipulated parameter is to be changed during testing. The user must also input his or her best guess, based on observation, of how long it takes the process to fully respond to a change in the manipulated parameter—the process time to steady state. The duration of the automated test is based on the estimated time to steady state, and it also determines the maximum time duration of pulses generated during testing.

When testing is initiated, the controller output will automatically generate a series of pulses of pseudo random duration to allow the process response to be observed and collected for model identification. After testing is complete and controller generation is selected by the user, the test variations of input and output are automatically analyzed, and the step response model and MPC controller are generated.

MPC and wireless transmitters

With the rapid spread of wireless measurements in the process industry, many measurements used in MPC can be wireless. Therefore, MPC should be ready to operate with partially or completely wireless measurements. Conventional MPC is based on the process model, which can also be used in wireless MPC. The process model can estimate control parameters between measurement updates provided by wireless transmitters, and those estimates can be used by the MPC controller much like observer estimates are used in a PID controller. It follows that MPC should have a flag that directs it to use a process model simulated measurement when a wireless measurement reading is not available, and should update the model and use a new measurement when a wireless reading becomes available.

In many recent MPC designs, a similar mechanism is used to facilitate MPC operation over a predefined period of time using a simulated measurement when a wired measurement failure is indicated by analog input (AI) status Bad. The same principle of using a simulated measurement is applied for lab measurements that are available at irregular periods of time with a much slower update rate than the MPC scan rate. The user may specify the maximum time that a simulated process value may be used without a new measurement update, and the type of MPC Fail mode if this time limit is exceeded.

To enable wireless MPC operation, wireless measurement status may be used to indicate whether a new value has been communicated or the last communicated value is being held. It follows that MPC will work with wireless measurements, provided the wireless measurements status is updated in this manner. If a wireless measurement status does not change as required for MPC wireless operation, then in most cases the required status indication can be created using tools provided by the DCS.

Wireless MPC provides continuity of operation independent of irregular measurements. MPC uses a simulated or a measurement value depending on the measurement status. This allows wireless MPC to operate when the measurement scan period is significantly longer than the MPC operation scan period. It also operates well when wireless measurements are delivered at irregular intervals. Wireless MPC uses its own internal model for simulating process parameter values in periods when there is no new measurement transmitted. When a new measurement is available, the model prediction and the simulated parameter value are updated.

In one implementation, measurement status "constant" causes MPC use its own model for measurement parameter simulation. Wireless measurements therefore should develop status Constant in the periods when a new measurement is not delivered. This approach allows the application of common MPC design to wireless operation. Another advantage of this approach is the same model and controller may be used for both wired and wireless control.

For more information on control using wireless transmitters, see Chapter 5 of the book, Wireless Control Foundation – Continuous and Discrete Control for the Process Industry. Workshops contained in the book are used to highlight key points. YouTube videos showing workshop solutions can be viewed at the book’s web site. The book may be purchased through the ISA web site and on Amazon.