Practile Design and Application

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Chapter 1

Introducing the Book


1.1 INTRODUCING THE AUTHORS
One of the unique features of this book is the fact that neither one of the
authors learned Model Predictive Control (MPC) in a classroom setting.
They both had to self-learn the theory, design, and implementation of MPC
in an application-oriented fashion. They have gone through the pain of failed
designs and tunings in their industrial experiences. They have learned coding
tricks, automated multiple MPC design techniques as well as robustness best
practices that they wanted to share with the industrial and academic world.
This important fact allows the reader to understand the how this book came
about and what benefits he/she will reap from reading this publication.
Both authors are academic and industrial controls experts. In addition to
MPC, they have studied, designed, and implemented several controller and
observer strategies such as sliding mode, fuzzy logic, adaptive techniques,
linear and nonlinear PID. Many of their designs were implemented and inte-
grated into industrial products such as diesel engine control, onboard diag-
nostics, automated testing stands, retail, and industrial refrigeration.
The authors have created a webpage that has additional resources related
to the book. The reader can contact the authors with questions, feedback,
seminars, or consultancy inquiries. As the authors receive a lot of similar
requests, please expect some delay in response. The objective of the authors
is to connect with readers, maximize the benefit to readers, as well as
improve the quality of the material related to this book.
www.practicalmpc.com

1.2 PRACTICAL APPROACH TO MPC


Since the eighties, a significant body of books have described theory in addi-
tion to examples of Model Predictive Control (MPC). Academics were drawn
to MPC since it provides a streamlined solution for solving Multi-Input
Multi-Output control problems that are subject to constraints in the system.
Furthermore, MPC provides the designer with the ability to handle the instan-
taneous as well as future performance of dynamic systems. In the case of
industrial process control, the Honeywell industrial MPC controller [1] was
designed to handle complex industrial process control that can’t be handled

Practical Design and Application of Model Predictive Control.


DOI: https://doi.org/10.1016/B978-0-12-813918-9.00001-0 1
© 2018 Elsevier Inc. All rights reserved.
2 Practical Design and Application of Model Predictive Control

with the traditional and popular PID. Yet, it seems that the popularity of
MPC hasn’t gained much traction in many industries, such as the automotive
world. It is rarely cited that MPC solutions made their way into production
electronic modules for vehicles. The authors believe that this is primarily due
to the significant resources which are required to change existing procedures
in software development by switching to MPC, limited capability of automo-
tive electronic control units (ECUs) in terms of throughput and memory, as
well as the lack of automotive control engineers who are well versed in
MPC. Moreover vehicle manufacturers are still finding ways to design their
closed loop controllers without using MPC. Nontechnical budget holders in
the automotive world continuously pose questions such as: Why should we
change the controller if it works? Why do we need to invest in new proce-
dures to adopt MPC? Do customers care about having an MPC controller in
their vehicles instead of nested PID loops? These are all valid questions and
the challenge that technical leaders face is how to quantify control robustness
as cost savings. The authors believe that until the complexity level of design-
ing and tuning control software for automotive applications in particular, and
other industries in general, reaches unmanageable levels through traditional
control techniques, there will not be wide adoption of MPC in the industry.
In an attempt to understand the academic interest in MPC compared to other
traditional control techniques, the authors used books.google.com/ngrams
which scans a serious volume of books written in English. The authors searched
for the frequency of usage of the following case-insensitive keywords: Model
Predictive Control, PID Control, Sliding Mode Control, State Feedback
Control. Fig. 1.1 shows the search results from 1970 till 2008 no data was avail-
able after 2008. At the beginning of the millennia, the frequency of usage of
MPC surpassed PID as well as other control techniques. Fig. 1.1 is a good indi-
cation that there is an increasing academic interest in MPC, especially with the
increased interest in the internet of things (IoT) and smart devices.
The theme of this book is streamlining the design, tuning, and deploy-
ment process of linear MPC. This will allow a wider spread of a very

FIGURE 1.1 ngrams search for various control techniques.


Introducing the Book Chapter | 1 3

capable control strategy that the authors believe will be an essential part of
the technology revolution of IoT, smart devices, and digital twins. The meth-
odology the authors use to educate readers is through solving real world
applications. The control problems discussed in this book are challenging
and nonlinear. The authors spent a significant amount of time modeling the
dynamics of the presented problems as well as designing and tuning the
MPC controllers. Where possible, all the challenges the authors encountered
were documented so that readers can benefit from the lessons learned. The
challenges ranged from the system identification of the plant, design of MPC
in MATLAB and Simulink, the untold tuning art of MPC as well as simu-
lating the MPC with the nonlinear plant in Simulink. Except for Chapter 10,
all the plant models and the designed MPCs can be downloaded from the
book’s website. The authors believe in open-sources sharing to advance
science and promote model-based control approaches.
To enrich the expertise pool that contributed to the book, the authors
reached out to Dr. Sharif Aljoaba to leverage his experience in modeling and
control of photovoltaic cells.
All the examples provided in this book have been developed using
MATLAB R2017a. The toolboxes used are: Model Predictive Control and
System Identification. The operating system used is Windows 10, 64 bit. If
the reader doesn’t have MATLAB, he/she can contact Mathworks for a
trial version.

1.3 ORGANIZATION OF THE BOOK


To the extent possible, the authors made the chapters independent from one
another. However, the book was written with an increasing level of
complexity. The process of designing, tuning, and implementing MPC is
re-iterated in all the chapters. Chapter 2 briefly discusses the theoretical
foundation of MPC which will set the stage for the subsequent implementa-
tion of MPC. The chapter suggests a hypothetical PID controller that
resembles MPC which is used to familiarize the reader with the concept of
MPC. The second half of the chapter introduces MPC. Chapter 3 covers a
streamlined approach for system identification and MPC design. The
approach is applied on a double mass-spring system. In Chapter 4, a nonlin-
ear model of long ship navigating at sea is introduced. The model is used
as a testbed for linear system identification. The same ship model is used
to implement and test MPC in Chapter 5. In Chapter 6, the concept of mul-
tiple MPC will be introduced. The controller is applied to the ship model
of Chapter 5, but the space of operation is expanded which necessitates the
use of multiple linear MPC controllers. Parallel Computing Toolbox is
demonstrated to design MPC. Additionally, the challenges with frequent
switching among the modes is tackled. A hysteresis logic is implemented to
mitigate actuators’ chattering.
4 Practical Design and Application of Model Predictive Control

In Chapter 7, the robustness of the multiple MPC designed in the previ-


ous chapter is challenged through Monte-Carlo simulations. In Chapter 8, the
novel model for photovoltaic cells developed by Dr. Sharif Aljoaba is intro-
duced and used as a testbed for the design of MPC. Chapter 9 describes the
process of embedding MPC in a real-time target application. Arduino Mega
is used to test the developed MPC controller. The book is concluded with
Chapter 10 which demonstrates a real application of MPC for the control of
a complex air-handling diesel engine. Simulation as well as experimental
results are shown.

1.4 SOFTWARE AND HARDWARE REQUIREMENTS


The MATLAB version that was used to develop the codes is R2017a.
MATLAB Toolboxes that were used are: MATLAB, Simulink, Model
Predictive Control Toolbox, System Identification Toolbox. In addition to
these toolboxes, MATLAB Parallel Computing Toolbox was used in
Chapter 6, and in Chapter 9 we used Embedded Coder, MATLAB Coder,
and Simulink Coder.
The operating system is Microsoft Windows 10 Home Version 10.0 (64-bit).

1.5 DOWNLOADING THE SOURCE CODES


The authors are big advocates of open-source as means to share and spread
scientific practices. All the codes are available on Mathworks’ website for
free download. Please reference the book in case you use the codes in your
publications.
To download the codes, follow the below link (file exchange) and search
for the ISBN or title of the book.
https://www.mathworks.com/matlabcentral/fileexchange/
Additionally, the hardware setup for Chapter 9 and other application pro-
blems can be purchased with the MPC controller loaded on Arduino Mega
from the book’s website:
https://www.practicalmpc.com/mpc-store

REFERENCE
[1] http://www.automationworld.com/process-control-software/pulppaper-and-power-gen-industries-
embrace-advanced-control

FURTHER READING
http://discover.rockwellautomation.com/Media/Files/Chlorine-DioxideAppProfile.pdf

You might also like