Generalized Predictive Control (GPC) –
Ready for Use in Drive Applications ?
Kennel R., Senior Member, IEEE, Linder A., Linke M.
University of Wuppertal,
42097 Wuppertal-Germany
Tel.:+49 (202) 439-3950, Fax +49 (202) 439-2924
www.ema.uni-wuppertal.de
Abstract — A usual argument against GPC is its demand for II. PREDICTIVE CONTROL SCHEMES
processing power. In industry, however, this is not a serious
argument if better control performance can be reached. As the A. Basic structure of GPC
development of new processors with increased performance
takes place rather rapidly, the lag of processing power never The concept behind several model based predictive algo-
was a long-term issue to prevent new algorithms from being rithms, especially GPC, is shown in fig. 1. The drive inverter
introduced. (process G(z)) includes the well-established space vector
This paper presents a practical realization of Generalized Pre-
modulation technique to control the switching states of the
dictive Control (GPC) for field oriented control of induction
machines. The results are compared with conventional PI- inverter.
control.
Considering the strong real time conditions of drive applica- constraints
tions, implementation aspects according to the great calculation
cost function
effort in case of GPC are discussed to contribute to closing the future
u1 process y
gap between theory and practice. error
G(z)
w optimizer u
Index terms — field-oriented control, predictive control, dJ (u , w , .. .)
Generalized predictive control (GPC), model based pre- du
dictive control (MBPC), observer, induction machine future
free
reference y(t-i|t)
value response model
~
G(z)
I. INTRODUCTION u(t-i|t)
predictor
total
y model
During the last decades several proposals have been made response ~
G(z)
to use predictive control algorithms for high performance
forced
systems. Few of the presented schemes, however, have been response
realized in industrial applications so far [1]. Nevertheless,
after some further progress, it can be expected that the Fig.1 Basic structure of GPC
advantages of predictive algorithms would lead to an
increased number of industrial implementations in the future. GPC belongs to the group of “long-range predictive control-
An interesting approach to unify different ideas of predic- lers” and generates a set of future control signals in each
tive control is Generalized Predictive Control (GPC) accord- sampling interval, but only the first element of the control
ing to [2-4]. It generates a sequence of (future) control sig- sequence is applied to the system input.
nals within each sampling interval to optimize the control The prediction of the system output y is based on two dif-
effort of the controlled system. This is done by minimizing a ferent components:
rather complex cost function. Due to the high calculation The “free response” represents the predicted behaviour of
power required for GPC, real applications in drive systems the output y(t+j|t) (in the range from t+1 to t+N), based on
are very rare. Therefore most papers just present simulation old outputs y(t-i|t) and inputs u(t-i|t), assuming a future con-
results. trol action of zero. The “forced response” represents the
This paper presents an implementation of GPC as both the additional component of the output y resulting from the op-
current and the speed control of an induction machine drive. timisation criterion.
The total prediction is the sum of both components (for ates a control sequence, which forces the future system re-
linear systems). Together with the known reference values sponse to be equal to the reference values. All calculations
the future errors can be calculated by are done at time t, especially the calculations concerning the
“future” of the system.
e(t+j|t)=w(t+j|t)–y(t+j|t) The minimization of the cost function within a special de-
fined time-interval is a criterion to classify predictive control
with j counting from 1 to N. Caused by these “future errors”, strategies. GPC uses a minimum and a maximum costing
future control signals are calculated to force the output to the horizon as well as an additional control horizon for optimiz-
desired reference values. ing the control behavior [2]. Even though there exist default
In addition to its well-known good control performance the values matching nearly all requirements it should be noted
robustness properties makes GPC interesting and realizable that these horizons, of course, influence the control perform-
for practical control applications. For this purposes GPC ance.
offers a compact control strategy in terms of model mis-
matches, variable dead time and disturbances [2]. C. The GPC process model
B. Model based predictive control A properly designed process model is the basis of all pre-
dictive control algorithms, because it is the fundament for
The classical predictive control approach in drive applica- prediction. GPC uses the CARIMA model [2,14] which
tions includes several different control strategies. As pre- offers inherent disturbance handling.
sented in [1] the different control schemes can be divided in
a few main groups. The most published schemes so far be- Ξ (z)
long to the “families” of hysteresis based or trajectory based Gd (z)
predictive controls. In difference to that GPC belongs to the U(z)
model based predictive control (MBPC) strategies, which are + Y(z)
G(z)
G(s)
founded on totally different ideas. +
The idea of MBPC has been developed to calculate a con-
Fig.3 Command step response and disturbance step response
trol function for the future time in order to force the con-
trolled system response reaching the reference value. There-
fore the future reference values have to be known (which is At least when considering small signal behavior, even a
the case in many industrial applications) and the system non-linear plant can usually be described by a locally-
behavior must to be calculable by an appropriate model. linearized parametric model like fig.3, where the capital
The control sequence is generated by an optimizing proce- letters indicate the z-transformed quantities of the input u(t),
dure, often resulting in a quadratic cost function. Fig.2 ex- the output y(t) and the disturbance ξ(t).
plains the basic idea of model based predictive control.
Y ( z ) = G( z )U ( z ) + Gd ( z ) Ξ( z ) (2.1)
It is generally impossible to predict the system behavior by
past future neglecting the disturbance term ξ(t) and considering the step
response only. The predicted output is improved significantly
by considering the disturbance ξ(t) term. Therefore several
control value strategies to develop a suitable disturbance model are dis-
reference value cussed in the literature [14].
GPC uses a model description
future response C ξ( t )
A y( t ) = B u( t − 1 ) + (2.2)
∆
... t ... t+TN where the backward shift operator in the polynomials A, B
and C is neglected for simplicity and ∆ is the differencing
Fig.2 Reference-, control- and response-signals operator. Note that t can be replaced by a discrete time.
The noise component Cξ(t) is hardly to be identified exactly
The reference values are assumed to be a constant sequence in industrial processes, but it can be used to assimilate a
as long as no additional information is available. The system priori knowledge according to the noise. To obtain good
response is based on future control action, model parameters disturbance rejection and robustness to parameter changes,
and the actual system state. The predictive control law gener- this component can be seen as a design polynomial.
Consequently it is derived from equation (2.2) III. DRIVE APPLICATIONS
∆ A GPC control scheme was implemented as both speed and
y f (t ) = y( t ) (2.3) current controller of a voltage source inverter fed squirrel
T
cage induction machine.
∆
u f ( t ) = u( t ) (2.4)
T A. Machine dynamics
These equations describe the filtered band-passed output The complex space vector theory is a powerful tool in dy-
and input signals by replacing C through a suitable design namic machine analysis [5]. The machine equations in com-
polynomial T. Even though a complete theoretical justifica- plex space vector quantities are
tion for this derivation is missing in literature, the inherent
disturbance model of GPC offers observer characteristics like dψ
s
a stationary Kalman-filter [9]. u s = rs i s + + jω k ψ (3.1a)
dτ s
d ψr
y 0 = rr i r + + j ( ωk − ω ) ψ r (3.1b)
dτ
1 y
while ωk is the angular velocity of a general reference frame,
ω is the rotor velocity and ψs, ψr represent the complex nota-
0 tion of the stator and rotor flux linkages. Therefore the flux
linkage equations can be derived as
u
-1 ψ s = ls i s + lh i r (3.2a)
ψ r = lh i s + lr i r (3.2b)
0 t1 t
a) Response y, control value u without T polynomial
The electromagnetic torque can be described by the external
product of the flux and current considering the load and
y normalized time constant.
1 y dω
τm = ψ × is − TL (3.3)
dτ s Z
0
u where the time is normalized as τ = ωsR t ( ωsR is the rated
speed of the rotor).
-1
After some basic transformations the currents in equation
(3.1a,b) can be replaced considering equation (3.2a,b) by the
equivalent flux linkages leading to a signal flow graph
0 t1 t according to fig. 5.
b) Response y , control value u with T polynomial
stator winding rotor winding
Fig. 4 Step response of PTTd -system controlled by GPC and addi- kr
tional noise disturbance at t1
ys yr
us τs' τs' ks τr'
The simulation results shown in fig. 4 illustrate the influ- jτs' j τr'
ence of the T-polynomial on a current control loop system in
drive applications. At t1 a step function is superimposed as
disturbance. Note the design polynomial, a low pass filter ωk ωr
function respectively, improves the disturbance rejection
(indicated by slower variations of the force function u) with- yr mechanical system
3p 4 kr
Te ω
out influencing the response time of the system. The GPC τm
controller working with observer polynomial T, however, is
needs more time to eliminate load disturbances, because the TL
sensitivity to high frequency noise is reduced. Fig. 5 Complex signal flow diagram of the induction machine
The signal flow graph represents three physically separated
isq ,i sd i sq
structures of an induction machine. The right hand side of
fig. 5 represents the rotor winding, the left hand side repre- 10 A
sents the stator winding both as first order systems. The isd
lower part of fig. 5 shows the mechanical system while TL 0
and ωk representing the load torque and the speed of the k-
reference system. (For a more detailed theoretical derivation
see [5]). -10 A
B. Analysis for current control
0 2 4 6 8 ms
t
Replacing the stator flux linkage by the stator current (see
fig. 5) and substituting the influence from the rotor to the b) current components i sd , i sq with
consideration of cross coupling
stator by an induction voltage uir leads to
Fig. 6 Step response of the stator currents and mutual
d is 1 interdependence
τs + i s = − jωk τs i s + ( u s − u ir ) (3.4)
dτ rs
C. Analysis of the speed control
The stator voltage us is used as a force function for the sta-
tor currents. Neglecting the induction voltage from the rotor The standard cascade control structure has been used to
due to its slower dynamic and replacing the k-reference sys- implement the speed controller on the basis of GPC, but
tem by the field reference system-s the stator transfer func- considering a future state control as well.
tion can be derived from equation (3.4). To optimize the speed control loop the current control loop
is replaced by an approximation, as it is dominated by the
1 1 inverter time constant. The field oriented control ensures
Gs ( s ) = (3.5) decoupling between the dq-components. Therefore equation
rs τs s + 1 + jωs τs
(3.3) gets modified to
Fig. 6 represents simulation results of an induction machine
according to fig. 5 fed by an inverter with 3 kHz switching dω
τm = ψ sd i sq − TL (3.6)
frequency, with and without consideration of the cross cou- dτ
pling. Of course, a linear approach cannot consider suffi-
ciently the non-linear cross couplings between the stator Considering equation (3.6) the dynamic behavior of the
currents isq, isd. To avoid the influence of cross coupling a speed control loop is described completely.
complex current controller is necessary.
IV. EXPERIMENTAL RESULTS
isq ,i sd isq
GPC control scheme was applied to a field oriented con-
10 A trolled induction machine and compared with conventional
i sd PI control. The PI-controllers have been optimized using
standard optimization criteria (e.g. symmetrical optimum).
0
GPC has been separately implemented in the current and
speed control loop according to [4]. To avoid the danger of
-10 A insufficient processing power, GPC was implemented in a
real laboratory setup on a Intel 233-MHz Pentium processor
to handle even sophisticated mathematical matrix functions
0 2 4 6 8 ms within the time limit. Besides the GPC controllers an addi-
t tional conventional PI-controller was used to ensure the
a) current components i sd , i sq without magnetizing flux at a constant value (see fig.7).
consideration of cross coupling
Both controllers make use of the maximum inverter voltage
for a short time, but GPC provides both, a shorter rise time as
well as a shorter settling time.
The real advantage of GPC becomes visible in more noisy
applications due to its inherent filter characteristics. The
speed control suffers under noisy signals as it must be opti-
mized for lower dynamics to avoid severe disturbances. With
GPC it is possible to ensure very fast step response without
additional filtering.
ω
ω R
0.01 i max ω
Fig.7 Control structure of the induction machine
The cross couplings of the currents were neglected in con- 0
troller design due to its great demand for calculation power. i sq
The experimental results of the current control loop are -0.01 -imax
shown in Fig.8.
isq
0 40 80 120 160 ms
i sq t
10 A umax a) Normalized speed using GPC controller
0 ω
u sq ω R
-10 A umax
-u max
0.01 ω
0
0 1 2 3 4 ms isq
t
a) Current component isq using GPC- controller -0.01
i sq
i sq
umax 0 40 80 120 160 ms
10 A t
b) Normalized speed using PI controller
0 Fig.9 Step response of the velocity according to small reference
u sq variations
-10 A umax
-u max
The observer characteristics expected by theoretical deriva-
tions in chapter II.C have been confirmed by experiment.
The respectable different results in fig.9 between the two
0 1 2 3 4 ms control strategies are obtained by less filtering in the case of
t
b) current component isq using PI-controller GPC. The conventional PI-control strategy is strongly influ-
enced by the dominating filter time constant.
Fig.8 Measured step response of the stator current
The results are obtained using a linear model approach for [3] D. W. Clarke, C. Mohtadi, P. S. Tuffs, Generalized Pre-
speed- and current-control to reduce the demand for process dictive Control – Part II. Extensions and Interpretations,
power. Even though time-saving precalculation has been Automatica, Vol. 23, No. 2, pp. 149-160, 1987
implemented in GPC it needs twice the calculation time of
the conventional control algorithm (see fig. 10). [4] D. W. Clarke, C. Mohtadi, Properties of Generalized
Predictive Control, Automatica, Vol. 25, No. 6, pp. 859-875,
1989
cycle GPC
[5] J. Holtz, The Dynamic Representation of AC Drive Sys-
1
tems by Complex Signal Flow Graphs, Conf. Record of ISIE
(International Symposium on Industrial Electronics), Santi-
0 ago de Chile, Chile, 1994, pp. 1-6
PI
[6] J. Holtz, Pulswidth Modulation – A Survey, Conf. Record
of PESC’92, Toledo, Spain, 1992, pp. 11-18
0 100 200 300 400 us [7] Zhang, L., Norman R., Shepered, W.: Long-Range Pre-
t dictive Control of Current Regulated PWM for Induction
Motor Drives Using the Synchronous Reference Frame,
Fig. 10 Cycle time of the different control strategy IEEE Transactions on control systems technology, Vol. 5,
No.1 Jan. 97
V. CONCLUSION
[8] Krauss, P., Daß, K., Bünte,T.: Prädiktiver Regler mit
A realization of the control algorithm GPC is described. Kalman-Filter zur Zustandsschätzung, at Automatisierungs-
GPC is proved to be robust against model–mismatching and technik 42 (1994) 12, Seite 533-539
unexpected dynamics and superior to PID-control due to the
precalculation of the system behaviour. It is a really competi- [9] Tonnes, M., Rasmussen, H.:Robust self-tuning control of
tive control algorithm through its inherent noise rejection AC-Servo drive, EPE, Firenze 1991, pp 3-049 - 3-053
without additional filters. The GPC algorithm offers interest-
ing features not obtainable with conventional algorithms. [10] Gambier, A., Unbehauen, H.: Multivariable generalized
On the other hand the higher demand on calculation time is state-space horizon control in a real- time environment, Auto-
not negligible. Therefore several proposals are made not to matica 35, 1999, pp 1785-1797
calculate the complete GPC algorithm on time, but to use
precomputing as far as possible [13]. These methods allow to [11] Zhang, L, Tayebi, H.R.: Optimal control of a CSI induc-
combine the advantages of GPC with less demanding calcu- tion machine drive for high performance current regulation
lations. and unity power factor, PESC’98, pp 1848-1853, 1998
REFERENCES [12] De Keyser R.M.C.,Van de Velde Ph. G. A.: A compara-
tive study of self-adaptive long-range predictive control
methods, Automatica, Vol. 24, No.2, pp 149-163,1988
[1] R. Kennel, A. Linder, Predictive Control of Inverter Sup-
plied Electrical Drives, Conf. Record of PESC’00 (Power [13] Bordons, C., Camacho, E.F.: A generalized predictive
Electronics Specialists Conference), Galway, Ireland, 2000, controller for a wide class of industrial processes, IEEE
Vol.3, pp. 761-766 Transactions on control systems technology, Vol.26, No. 3,
May 1998
[2] D. W. Clarke, C. Mohtadi, P. S. Tuffs, Generalized Pre-
dictive Control – Part I. The Basis Algorithm, Automatica, [14] Kanjilal, P. P.: Adaptive prediction and predictive con-
Vol. 23, No. 2, pp. 137-148, 1987 trol, Peter Peregrinus Ltd., London 1995 UK