You are on page 1of 51

European Journal of Control (2010)5:447–496

© 2010 EUCA
DOI:10.3166/EJC.16.447–496

On the Theory and Design of Linear Repetitive Control Systemsg


Richard W. Longman
Columbia University, MC4703, 500 West 120th Street, Room 220 Mudd, New York, NY 10027 USA

This article summarizes developments in linear repetitive periods, Optimal design in frequency domain, Repeti-
control (RC) that represent an effective overall design tive control, Repetitive control for periodic measurement
approach, allowing the user to optimize performance. This error, Repetitive control robustness, Stability of repetitive
involves the design of a compensator, a zero-phase low- control
pass filter, and an interpolator. Mathematical background
is developed that justifies and interprets the compensator
frequency domain optimization criterion. The compen-
sator designs can be very effective with a small number 1. Introduction
of gains, with fast well-behaved learning. Robustness to
model parameter uncertainties is accomplished by opti- Repetitive control (RC) is a relatively new field within
mizing the cost summed over models, by adjusting the control theory. The usual RC problem handles three situ-
learning rate as a function of frequency, and by relaxing ations. The RC modifies a feedback control system with
the zero error requirement as a function of frequency. The the aim of converging to zero error: (1) when the objec-
mathematical background needed is developed for mult- tive is to track with zero error a periodic command; (2) or
input multi-output (MIMO) systems, and the generalized when the desired output is a constant but there is a periodic
MIMO optimization criterion and solution are presented. disturbance, and then the aim is to cancel the influence of
One can also design a set of single-input single-output the periodic disturbance and get the desired constant out-
designs to handle MIMO systems. Regarding the zero- put; (3) or it aims to get zero tracking error to a periodic
phase filter used to robustify to unmodeled high-frequency command in the presence of a periodic disturbance, both
dynamics, specially tailored finite impulse response filter with the same period. This latter situation often occurs
designs cut off or cut down the learning at high frequen- because the observed disturbance is correlated with the
cies. Interpolation is used to improve performance when commanded periodic trajectory and hence exhibits the
the period of interest is not an integer number of time same period. In practice, one usually must compromise
steps, and it is shown how to use the designs when there and ask for zero error up to some chosen frequency cutoff.
are multiple unrelated disturbance periods. RC designed Any periodic command can be written as a sum of a
to eliminate periodic measurement error is also presented, fundamental frequency and all harmonics up to Nyquist
with results from computer disk drives. frequency. Anyone who has studied classical control
theory knows how to compute the steady-state frequency
Keywords: Cost function averaging over models, FIR response to each of these frequencies, and knows to
zero-phase low-pass filtering, Higher order repetitive expect the amplitude and the phase to be different from
control, MIMO repetitive control, Multiple disturbance that of the command. RC aims to fix these errors in
response to commands. And similarly periodic distur-
bances produce a periodic component to the output, and

Received 30 September 2009; Accepted 18 May 2010


E-mail: RWL4@columbia.edu Recommended by Hyo-Sung Ahn, D.W. Clarke
448 R.W. Longman

RC aims to modify the command or the error signal going field include [27, 28]. Reference [26] gives some basic
into the controller such that the effect on the output is models, and the book [29] gives an overview of multipass
minus that of the effect of the disturbance. People often processes. Stability theory underlying multipass processes
cite [48, 50] at the beginning of the 1980s as originat- and ILC appear in [96, 109, 108].
ing the field, and these publications were motivated by Perhaps the majority of control systems in the world
the desire to eliminate ripple in rectified voltage run- repeatedly perform the same task, and hence could fall
ning magnets in a particle accelerator. Early articles in into one of the above three categories. Also, the vast
the field include [48, 50, 49, 95, 82, 36, 37, 38, 133, 90, 39, majority of feedback control systems in the world are
94, 141, 123, 127, 4, 40, 91, 122, 20, 121, 111] from the designed using linear time invariant thinking. This is
1980s. Momentum in the field accelerated in the next true even when the system being controlled is definitely
decade. nonlinear, as in the use of classical control methods to
The sister field of iterative learning control (ILC) design controllers for robots. RC and ILC are no excep-
addresses very similar problems and can often make use tion. Reference [70] reports ILC results that improved the
of similar techniques. ILC considers control systems that tracking accuracy doing a specific maneuver by a factor
repeatedly execute a finite time desired trajectory. The of 1000 in 12 iterations. This is near the reproducibil-
system is reset to the same initial conditions before the ity level of the robot hardware, so it is not possible that
start of each run. The aim is to achieve zero tracking error a much more complicated nonlinear ILC design could do
at every time step of this finite time trajectory. Hence, any better. Hence, the author considers that for RC design,
it aims to simultaneously track the command and cancel by far the most important material is RC based on linear
any repeating disturbances that occur every run. Unlike time invariant models. And it is this topic that is treated
RC where control actions and transients can propagate here.
from one period into the next, control actions and tran- A short list of RC applications includes the following.
sients cannot propagate from near the end of one run into (1) The original application was to eliminate 60 Hz related
the start of the next run. This changes the mathematical fluctuations in the power supply to magnets of a syn-
conditions for asymptotic stability, or convergence to zero chrotron accelerator [48, 50]. References [67, 68, 69, 3]
error. A second difference is that RC asks for convergence are similarly motivated by 60 Hz disturbances to the
to zero error as the time step tends to infinity, i.e. zero error 8 GeV electron beam at the Thomas Jefferson National
during steady-state response to the periodic input and/or Accelerator Facility, where the objective is to elimi-
disturbance, while ILC wants zero error of every time step nate beam position fluctuations by learning a corrective
of a finite time trajectory. Hence it asks for zero error command history. (2) As with ILC, there are many
during the system initial transients. The original motiva- applications to repetitive tracking motions of robots, for
tion for ILC is usually ascribed to achieving zero error in example [82, 94, 123, 4, 111, 24]. A particularly important
robots performing repeated tracking commands. Arimoto class of applications is to make routine robot feedback
is a key originator and a prolific contributor to the field control systems actually perform optimized trajectories.
starting with his publications [5, 6] published in 1984. To Reference [60] examines how to pose the problem of
cite his own words, [12, 23] were similar developments making robots perform maneuvers at high speed, and [61]
by others the same year. To this one can add [82] as a considers implementing ILC to make the controllers actu-
digital RC treatment of the robotics problem. As often hap- ally perform the optimal maneuvers. The same methods
pens, there are precursors. Arimoto cites Uchiyama [129] apply to RC problems for robots. (3) A particularly impor-
published in 1978 motivated by robotics. Also, there is tant application is to computer disk drives, and to CD
a recently discovered patent related to ILC dating from tracking. The tracks on computer disks are written in
before 1970 [19]. Some basic or overview publications in while the disk is rotating, and vibrations cause the track
ILC include [102, 103, 84, 11, 85, 1, 70]. Reference [70] is to be not perfectly circular. RC can help the read/write
a publication related to this one, which discusses both ILC head track the irregularities with less error, which allows
and RC in parallel. the tracks to be more closely spaced and the disk to
Yet a third sister field is what some call multipass have more storage. Reference [20] presents experiments
processes. The essential difference between such pro- showing the benefits of RC. Reference [45] uses a differ-
cesses and ILC is that the interaction from run to run ent nonstandard formulation of the problem. It considers
comes from the physics of the system rather than being the wiggles in the written in track to be periodic mea-
induced by the control action. In some rough sense, it surement disturbances, and an RC process is created to
lies between ILC and RC because dynamic influences learn to ignore such measurement disturbances. This is
propagate across the run-to-run boundary. The original much easier for the hardware to do, and hence can give
motivation was in coal cutting, and the interaction from better results. Reference [93] shows block diagram struc-
run to run can create an instability. Early works in this tures for eliminating plant disturbances, and structures for
Theory and Design of Repetitive Control Systems 449

eliminating periodic measurement disturbances. The for- 2.1. Compensator Design (SISO)
mulation of this kind of RC is presented in Section 16.
(4) References [41–43] use RC to eliminate periodic veloc- • The compensator design is a finite impulse response
ity errors in a timing belt constant speed paper drive in a (FIR) filter that simply requires at each time step that
copy machine. Imperfect mounting of the gearing, imper- one create a linear combination of some measured errors
fect machining, and tooth meshing geometries, cause from the previous period. The design is optimized in the
fluctuations in speed, and the RC learns to eliminate frequency domain as presented in [99] (see Sections 6.2
these velocity error sources that degrade image quality. and 6.3). The choice of order and number of poles to
Also, [44] presents RC results for the lateral position- use at the origin can be guided by [138] (Section7).
ing of these belt drives, and this is again an example • The design need not use an analytical model of
of the nonstandard RC problem of eliminating periodic the system. The compensator can be designed based
measurement error discussed in Section 16. (5) Thickness directly on frequency response tests [97] (Section 6.4).
control in sheet metal rolling is similarly subject to peri- • If the design uses a model, and the parameters of the
odic errors from the hardware involved [34]. (6) Spacecraft model are uncertain, one can robustify the compen-
often have spinning wheels on board, such as three reaction sator design to such uncertainties by optimizing the
wheels or four control moment gyros as attitude control cost averaged over a set of models [104, 101, 59, 112]
system actuators. Slight imbalance in such wheels pro- (Section 8).
duces a vibration of the spacecraft, and one wants to isolate • If the design is based directly on frequency response
any fine pointing equipment from these vibrations. Some tests, similar averaging of the cost over a set of tests
experiments are reported in [30, 13, 16]. (7) Noncircular substantially improves robustness [97] (Section 8).
machining is studied in [127, 128]. (8) There are many
potential applications related to kinematics and mecha- 2.2. Compensator Design (MIMO)
nisms [22, 105, 106]. Often mechanisms are designed with
the assumption that the input shaft will move at constant • The above discussion is for single-input, single-output
angular velocity, but the mechanism presents a varying (SISO) systems. The cost function used can be gen-
impedance throughout a rotation, producing a periodic dis- eralized to multi-input, multi-output (MIMO) systems,
turbance to the speed control system of the input shaft. But and the resulting compensator equations are given in
once one opens the door to using RC on the input shaft, Section 6.5 based on [65] and robustified to parameter
one can address additional issues. For example, if a cam is uncertainties as in [10].
inaccurately machined, in some applications one can pro- • Alternatively, one can in a very straightforward manner
duce an RC system to correct for the machining errors by handle MIMO design by making a set of SISO designs
creating the needed input speed variation. One could go by the above methods [65] (Section 6.6).
further, and ask that the RC system adjust the input speed
in such a way that the cam behaves like a different and
2.3. Compensator Design for Multiple Periods
better behaved cam shape. References [22, 105, 106] coin
the terms intelligent mechanisms and morphing mecha-
• If the RC problem has multiple unrelated periods, a set
nisms to describe the possibilities of combining RC with
of SISO designs can be combined to handle the situa-
mechanism theory. (9) Reference [57] treats electrohy-
tion as shown in [139, 140] and modified to include the
draulic actuators for electronic cam motion generation.
design process here in [72, 73] (Section 15).
(10) Application to pulse width modulated rectification is
reported in [147]. (11) And pulse width modulated invert-
ers are treated in [145, 146]. (12) RC with shunt active 2.4. Zero-Phase Low-Pass FIR Filter Design
power filters appears in [25].
• To robustify the design to unmodeled high-frequency
dynamics, a zero-phase low-pass FIR filter is designed
2. The Objective and Organization based on [98, 8, 74, 51] (Section 9.1 and 9.2).
of this Article • One can choose to make a sharp cutoff, or to limit the
attenuation to just what is needed, possibly involving a
This article presents the author’s preferred approach to the tradeoff based on error distribution [113].
design of RC systems as developed in a series of publi-
cations. The overall approach aims to produce robust RC 2.5. Interpolator Design
designs, to be practical, and to create as high precision
motion as is practical. One needs to design a compensator, • When the period of the disturbance or the command
a zero-phase low-pass filter, and an interpolator. is not an integer number of time steps, improved
450 R.W. Longman

performance is obtained by using interpolation [56]


(Section 10.1)
• An alternative is to design a low-pass filter that also
serves the purpose of adjusting for the partial time step
in a period [131, 9] (Section 10.2).

2.6. Compensator Design to Eliminate Periodic


Measurement Disturbances Fig. 1. RC adjusting the command to a feedback control system.

• Similar methods allow one to design RC controllers that


learn to ignore periodic measurement disturbances [45]
(Section 16).
Other sections are added to give underlying theory or
to give perspective. Section 4.1 develops the stability
theory for SISO RC systems as presented in [70]. Then
Section 5 interprets this in a way that justifies the cost func-
tion used for optimizing the compensator designs [142],
Fig. 2. The RC system of Fig. 1 using the feedback control sys-
showing that it not only aims to satisfy the stability cri- tem closed loop transfer function G(z) and equivalent periodic output
terion, but it is also justified to think of the compensator disturbance V (z).
design as optimizing the convergence rate. Section 4.2
presents the stability theory for MIMO and develops the
disturbance, one needs to have a way to have the RC stay
MIMO analog of the SISO optimization criterion for use in
synchronized with it. In practice this may be accomplished
MIMO design [65]. The remaining sections are as follows.
for example, by use of an index pulse each revolution of
Section 11 presents some alternative compensator design
a shaft whose rotation is responsible for a periodic distur-
approaches, Section 12 discusses how to avoid images
bance, as was done in [41, 42, 43], or by a trigger pulse
of startup that deteriorate performance [71], Section 13
on the 60 Hz supply voltage in the case of [3]. Some dis-
presents ways to make RC performance more insensitive to
cussion of the options available when such a signal is not
variations of the period [117, 118, 63, 64], and Section 14
available is presented later.
discusses the possible bad effects of introducing a Kalman
For simplicity, we treat all transfer functions as digi-
filter into RC design [100].
tal. One can always refine the analysis in practice, using
digital-to-analog and analog-to-digital converters in the
3. Choice of RC Structure: appropriate locations and make the needed conversions
to digital. The command is denoted by y∗ (kT ) (or when
Simultaneously Addressing transformed Y ∗ (z)). The periodic disturbance most often
Feedback and RC Objectives comes between the controller and the plant and is given
as V ∗ (z) or v∗ (kT ). The relationship from the command
Perhaps the first step in making an RC design is to pick and the disturbance, to the output Y (z) or y(kT ) can be
one of three possible block diagram structures to use. written as
The compensator, zero-phase filter, and interpolator can be
   
the same for each, but there are some differences in perfor- C(z)P(z) P(z)
Y (z) = U(z) + V ∗ (z)
mance and implementation. Consider the block diagram 1 + C(z)P(z) 1 + C(z)P(z)
in Fig. 1, where the repetitive controller R(z) adjusts the
command u(kT ) (or U(z) when transformed, k is the = G(z)U(z) + V (z) (3.1)
integer time step and T is the sample time interval) to
a feedback control system. Its controller is C(z) and its This defines the closed loop transfer function of the feed-
plant is P(z), and the aim is to get the feedback control back control system G(z) and also the periodic output
system output to match the desired output. The desired disturbance V (z) or v(kT ) (use the frequency transfer func-
output can be periodic, or it can be a constant but there is tion version of the coefficient of V ∗ (z)) that is equivalent to
a periodic disturbance, or both command and disturbance the periodic physical disturbance V ∗ (z) between controller
are periodic with the same period. The period is p time and plant. This results in Fig. 2.
steps with p an integer unless otherwise noted, and it is The simplest RC law can be written as u(kT ) =
assumed known. Of course, in the case of a periodic com- u((k − p)T ) + φe((k − p + 1)). The command to the
mand, one knows the period. When there is a periodic feedback control system at the current time step is the
Theory and Design of Repetitive Control Systems 451

command one period back plus a RC gain times the error


one period back, but shifted forward by the time delay
through the system. We assume this delay is one step rep-
resenting the number of time steps from a change in the
input until a resulting change in the output appears. A
simple modification can adjust for different delay values.
The error is defined as e(kT ) = y∗ (kT ) − y(kT ). This
law is intuitively appealing: it says that if the output was
Fig. 3. Plug-in repetitive controller.
two units too low at this time in the previous period, then
add two units times gain φ to the command this period
(at the appropriate step). In order to make this simple law
into something practical, we design a compensator F(z)
that filters the error signal, in order to produce stability by
adjusting the phase and perhaps the amplitude as a func-
tion of frequency. In case p is not an integer, so there is
no command decision one period back, and no measure-
ment at the desired time, one can simply use the nearest
integer, or one can interpolate the right hand side between
Fig. 4. RC adjusting the command to the feedback control system but
adjacent time steps. This interpolation, denoted by I(z), modified to include a feedforward command signal.
could be linear interpolation or higher order interpolation.
In order to create robustness to unmodeled high-frequency
dynamics we introduce a zero-phase low-pass filter H(z) the desired trajectory Y ∗ (z) as the command U(z). The
to cut off (or cut down) the learning above some chosen error response to the command and disturbance is
frequency. This filter can be modified to introduce a lin-  
1
ear phase change in order to perform the function of the EFB (z) = Y ∗ (z)
interpolation as well as the learning cutoff, in which case 1 + P(z)C(z)
I(z) is not employed. The general form of the RC law is  
P(z)
written as − V ∗ (z) (3.5)
1 + P(z)C(z)
U(z) = z−p I(z)H(z)[U(z) + F(z)E(z)] (3.2) The transfer functions presumably do something reason-
ably good in responding to commands and in attenuating
or in transfer function form disturbances. The RC is introduced to more specifically
  target error having a specific period. Now introduce the
I(z)H(z)F(z) RC as in Fig. 1 or 2 and the equation becomes
U(z) = R(z)E(z); R(z) = (3.3)
zp − I(z)H(z)  
1
E(z) =
We will use this form of RC throughout this article, 1 + G(z)R(z)
but one may want to use one of two different block dia-    
gram structures as in Figs. 3 and 4, as discussed in [66]. ∗ P(z) ∗
× Y (z) − V (z) (3.6)
Fig. 3 presents the structure for a “plug-in” repetitive con- 1 + P(z)C(z)
troller [24, 82], which goes inside the feedback control
loop to find the error signal, and modifies it with the RC If instead one uses either Fig. 3 or 4 the result is
law R(z). All RC laws need access to the feedback mea-    
1 1
surement information, but going into the feedback loop E(z) = Y ∗ (z)
to get access to the error signal could be harder to do in 1 + G(z)R(z) 1 + P(z)C(z)
hardware. In that case, one can get the same performance   
P(z)
by using the RC law − V ∗ (z) (3.7)
1 + P(z)C(z)

U(z) = R(z)E(z) + Y ∗ (z) (3.4) One can easily see that Figs. 3 and 4 should have the same
results by examining the signal that enters the controller
in place of (3.3) as in Fig. 4. The differences between the C(z), which is equal in each case. In deriving the results
performance of these RC block diagram structures can be it may be helpful to remember that G = PC/(1 + PC)
seen as follows. First, consider the performance of the and therefore PC = G/(1 − G). The difference between
feedback control system alone without RC, when given (3.6) and (3.7) is that in the first case the command comes
452 R.W. Longman

Fig. 5. Magnitude frequency response of the sensitivity transfer func- Fig. 6. Same as Fig. 5 but using RC structure of Fig. 3 or Fig. 4.
tion from command to error for model (3.8) and repetitive control
structure of Fig. 2. (12 gain FIR design, solid φ = 1, dashed φ = 0.1.)
the FIR filter by the gain φ = 0.1, and we see that the
through as if the feedback controller were not there, and error is zero at the bottom of the notches corresponding
in the second, what the feedback controller would do to the fundamental frequency of the chosen period, and
to the command is present and then operated on by the at all harmonics to Nyquist frequency. Between these fre-
RC action. If the command is always a constant, or peri- quencies the error is very close to one, meaning the RC is
odic with period p time steps, then there is no difference not responding to commands at other frequencies. Fig. 6
between the performance of the three RC structures. gives the corresponding plot for the RC structure in either
To get some better understanding of the RC transfer Figs. 3 or 4. The envelop of the dashed curve is very close
function in the first parentheses on the right side of these to the magnitude frequency response of the feedback con-
equations, consider the simplest RC law again, in which trol system alone. The small error at low frequencies is
case this factor is equal to (zp − 1)/[(zp − 1) + φzG(z)]. the objective of most feedback control systems, and this
When multiplied by a signal with period p time steps, the small error is preserved when the RC law is included in the
result is zero, as the numerator simply shifts the signal manner of these two figures. By using a gain smaller than
one period and then takes a difference. If the gain φ is φ = 0.1, one can make the dotted curve come arbitrarily
made very small, then at other frequencies the factor will close to the feedback control curve, but with the notches
be close to unity. for the addressed frequencies of period p time steps. More
To illustrate this, consider the third-order transfer detail can be found in [66].
function The conclusion is that if one has a periodic disturbance
   to eliminate, and one wants to apply command signals that
a ω02 are not constant and not periodic with the chosen period,
G(z) = (3.8)
s+a s2 + 2ζ ω0 s + ω02 then one should implement the RC structure in Fig. 3 or 4.
And by picking a small enough RC gain, one can make
which is a reasonably good model of the command the RC system behave arbitrarily close to the behavior
to response of the control systems for each link of a of the feedback control system alone when treating these
Robotics Research Corporation robot [32]. The constants commands. Hence, one can then simultaneously have the
are a = 8.8, ζ = 0.5, and ω0 = 37. Suppose that it is benefits of feedback control for more general commands,
fed by a zero-order hold running at 100 Hz sample rate. and the benefit of RC for eliminating the influence of
Then Fig. 5 gives the magnitude frequency response from periodic disturbances.
command to error (the sensitivity transfer function) for
the structure in Figs. 1 and 2, using the recommended
RC design method [99] optimizing a 12 gain FIR filter to 4. Stability Theory of RC Systems
approximate the inverse of the steady-state feedback con-
trol system frequency response (for the entire system in The stability theory presented here for both SISO and
this case). The solid line is the result of simply using the MIMO systems necessarily involves some detail. Read-
design, which automatically assigns the gain, which we ers primarily interested in design methods for RC, upon
write as φ = 1. The dotted line is the result of multiplying first reading can simply note Theorem 2 (or Theorem 4 for
Theory and Design of Repetitive Control Systems 453

the MIMO case), then read the first paragraph of Section 5,


and go on to compensator design in Section 6.

4.1. The Stability Boundary, and the Stability


Boundary for All Periods p in SISO Systems

From the block diagram in Fig. 2, we can write the error


in terms of the desired output and the disturbance as
[1 + RG]E = Y ∗ − V , or equivalently

[(zp − I(z)H(z)) + I(z)H(z)G(z)F(z)]E(z)

= (zp − I(z)H(z))[Y ∗ (z) − V (z)) (4.1)

Once cleared of fractions, this can be considered a differ-


ence equation, with each power of z corresponding to a
shift forward by one time step in the time domain function
it multiplies. The right hand side represents a forcing func-
tion. Note that if no cutoff filter is used and no interpolation
is needed, then the first factor on the right is (zp −1) which Fig. 7. Nyquist contour going around p poles on the unit circle.
corresponds to shifting the functions Y ∗ and V forward by
one period and then subtracting the unshifted functions. larger radius must be at infinity. Unfortunately, there are
This comes out zero when these are periodic with p, and p poles on the unit circle (indicated by dots in the figure),
there is no forcing function under these conditions. Stabil- and as in the case of using the Nyquist contour with an
ity of the equation, as always, is determined by the solution integral controller in continuous time, we have to modify
to the homogeneous equation whose characteristic poly- the contour as indicated to make a half circle around each
nomial is the numerator in the square brackets on the left, such pole on the stability boundary, avoiding having the
multiplying the error. If all roots are inside the unit circle, contour go through these poles. The result is that the plot
then the error will converge to the steady-state particular of (4.2) will go to infinity, go 180◦ around at infinity, and
solution associated with the forcing function. And in the then come back to the unit circle p times while moving z
case just discussed when the forcing function is zero, the around the unit circle. Again, this is impractical. There is a
error converges to zero. method of performing a Nyquist analysis that works with
There are various ways of examining the stability of a the reciprocal of (4.2) as in [114, 107], but this method also
system, but RC can push each approach to its limit because has computational issues. Here, we present the method
of the high degree of the characteristic polynomial. Here, from [70, 46] which bypasses most of the computational
we present an approach that for most applications cir- difficulty.
cumvents the difficulty of dealing with a high-degree Before developing the approach, consider the follow-
characteristic equation. ing heuristic logic. Because stability is a property of the
One’s first thought in studying stability is to simply find homogeneous equation, set the right hand side of (4.1) to
the roots of the characteristic polynomial. This may be zero and rearrange terms to obtain
possible, but the value of p can be very large, for exam-
ple in a problem with a one second fundamental period zp E(z) = {I(z)H(z)[1 − G(z)F(z)]}E(z) (4.3)
when sampling at 1000 Hz, it is 1000. For sufficiently
high-degree polynomials, one should not trust any root One is tempted to consider the term in curly brackets as a
finding algorithm. And similarly it is unmanageable to transfer function from one period to the next, and then after
use such tests as the Jury test. Consider using the standard substituting z = exp(iωT ) it becomes the frequency trans-
Nyquist stability criterion, and for simplicity consider the fer function. Then it would appear that if one requires that
case where I(z)H(z) = 1. Then one must evaluate the left the magnitude of the frequency transfer function satisfy
side of R(z)G(z) = −1, i.e.
|I(z)H(z)[1 − G(z)F(z)]| < 1 ∀ z = eiωT (4.4)
G(z)F(z)
R(z)G(z) = p (4.2) the magnitude of all frequency components of the error
z −1
(actually the error transients that satisfy the homoge-
for z going around the Nyquist contour shown in Fig. 7. neous equation) would decay from one period to the
The smaller radius is going around the unit circle, and the next, suggesting asymptotic stability. This logic is flawed
454 R.W. Longman

because the frequency transfer function applies only in to obtain the number of roots of the RC system character-
steady-state response to sinusoids, and in steady state the istic polynomial outside the unit circle. Let us assume that
E(z) has become zero (if the RC system is stable) because p is sufficiently large that the degree of the denominator in
the error we are talking about is the solution to the homo- (4.6) is greater than that of the numerator. Then the part of
geneous equation. Hence, from the arguments presented the contour at infinity all maps to the origin, and the branch
here, we can only say that the magnitude on the left hand cut along the negative real axis can be ignored. Hence, one
side of (4.4) for a given frequency ω is an estimate of the can simply examine (4.6) for z on the unit circle, i.e. one
decay in amplitude from one period to the next under a can look only at the frequency response. We can state the
quasi-static assumption, i.e. that the decay rate is so slow result as a theorem.
that we can approximate the response in each period as if
it were in steady state. We will see in Section 5, that this Theorem 1: Consider a scalar transfer function G(z) and
estimate of the decay of the transients is in fact quite good, a scalar repetitive controller R(z) of the form in (3.3).
and is even good when the quasi-static assumption is very Suppose that all poles of G(z), R(z), F(z), H(z), I(z) are
much violated. It is shown below that condition (4.4) is a inside the unit circle, and suppose that p is sufficiently
sufficient condition for stability of the RC system. large that there are more poles than zeros in (4.6). Then,
Now we continue with the development of the stability if the plot of (4.6) for z going counterclockwise around the
boundary for RC. Rewrite the square bracket term in (4.4) unit circle does not encircle the point +1, the RC system
set to zero in the form is asymptotically stable for the value of p used in (4.6).

1 − z−p I(z)H(z)[1 − G(z)F(z)] = 0 (4.5) Then all solutions of the homogeneous part of the dif-
ference equation (4.1) will decay to zero. In practice, one
Once this is put over a common denominator, the numera-
is likely to want an RC system that is stable for all possible
tor polynomial represents the characteristic polynomial of
periods of disturbance or commands. Suppose that (4.4)
the RC system, whose roots we are interested in. Start with
is violated for some frequency, going out of the unit circle
z = 1 on the Nyquist contour in Fig. 7 and proceed once
for some frequency. Then one can always pick a value of
around the contour in the clockwise direction as indicated
p in (4.6) to spin the phase of the plot so that +1 is encir-
by the arrows, computing the complex number on the left
cled. (Note that if the violation is for z = 1 which has zero
hand side of (4.5). Note that this time there are no poles on
phase, one can still encircle +1 because violation at z = 1
the unit circle so that it is unnecessary to deal with the small
implies violation in a neighborhood of this zero angle, and
half circles. For example, if p1 is a root of the numerator
hence there exists p sufficiently large to spin the phase and
outside the unit circle as shown, then the numerator can be
encircle the point +1.) Hence, we conclude the following.
factored and will contain z−p1 whose phase angle θp1 will
increase by 360◦ as z goes around the contour (angle mea-
Theorem 2: A necessary and sufficient condition for
sured as positive in the counterclockwise sense). Phase
asymptotic stability of the RC system for all possible val-
angles of multiplicative factors add together. Hence, for
ues of period p is that inequality (4.4) be satisfied for all
every root of the characteristic polynomial outside the unit
frequencies ω from zero to Nyquist frequency.
circle, the phase angle of the left hand side of (4.5) will
increase by 360◦ . It would decrease by 360◦ for every root
Note that as the period p changes, the interpolation
of the denominator outside the unit circle, but we assume
transfer function changes, and one would then like to pick
that the poles of G, F, H, and I are all inside the unit circle
an interpolator with the property that |I(eiωT )| ≤ 1 for
as are the poles at the origin, so the denominator has no
all ω. This property holds for linear interpolation and cubic
influence on the total phase change. Then, if the angle of
interpolation.
the complex number represented by the left hand side of
Inequality (4.4) is therefore a sufficient condition for
(4.5) returns to its original angle after z goes once around
stability when p is specified, and is a necessary and
the contour, there are no roots of the numerator outside the
sufficient condition for stability for all possible periods p.
unit circle, and the RC system is asymptotically stable.
We further claim that there is very little point in con-
The “1” on the left in (4.5) is inconvenient because
sidering any RC law that does not satisfy Theorem 2, but
it makes the numerator and denominator have the same
does satisfy Theorem 1 for the desired period p. This is dis-
degree, and then one must consider the image of the part
cussed in detail in [70]. The phase of the zp = exp(ipωT )
of the contour at infinity. Instead, define
term in (4.6) for ωT going from zero to π at Nyquist fre-
Pc (z) = z−p I(z)H(z)[1 − G(z)F(z)] (4.6) quency, rotates fast. If p is 100 for a one second period
at 100 Hz, the phase of this factor reaches 50 revolutions
and count how many times it encircles the point +1 in the at Nyquist. This means that for reasonable values of p,
counterclockwise direction as z goes around the contour, the extra freedom when satisfying Theorem 1 compared
Theory and Design of Repetitive Control Systems 455

that created equation (4.4), for the MIMO problem.


Make the same quasi-static assumption of the frequency
response, and then consider the square bracket term in
(4.3) with z replaced by exp(iωT ), as a matrix of frequency
transfer functions from one period to the next. Consider
for the moment that all q components of the E(z) on the
right of (4.3) have frequency ω, and create a vector of
their amplitudes ᾱI , and make the corresponding vector
of the amplitudes of the product on the right, ᾱO . Con-
sider the Euclidean norm of each vector, and note that
they are related by the induced norm of the square matrix,
which is the maximum singular value of that matrix for
the chosen ω. Hence,

ᾱO 2 ≤ σmax {I(eiωT )H(eiωT )[1 − G(eiωT )F(eiωT )]}


Fig. 8. The stability boundary of Theorem 1 for a first-order system × ᾱI 2 (4.7)
for various values of period p and aT .

Then the generalization of (4.4) for monotonic decay of


to Theorem 2 is of no practical significance. This is illus-
the error vector amplitude from period to period according
trated in Fig. 8 from [114], which considers a first-order
to this heuristic argument is
system as in the first term on the right of (3.8), and uses
the simplest RC law described below (3.1). The Kmax is σmax {I(eiωT )H(eiωT )[1 − G(eiωT )F(eiωT )]} < 1 ∀ ω
the maximum value of gain φ for stability according to
Theorem 1, and it is given as a function of the value of p, (4.8)
and of aT . Note that when p increases the stability bound-
Of course, one can use any other norm and induced norm
ary soon becomes essentially independent of p. Note also
pair to create an analogous condition. One can also substi-
that the reciprocal of aT is the time constant of the system
tute the Frobenius norm in place of the maximum singular
measured in sample time steps, and one would certainly
value as discussed below. Below we will prove that satis-
like to have a sample time sufficiently fast so that there are
fying (4.8) is a sufficient condition for asymptotic stability,
at least 5 or 6 steps per system time constant. And in this
and we will develop the conditions for the actual stability
range the curves are even closer together.
boundary.
4.2. Stability Theory for MIMO RC Systems
4.2.2. The Necessary and Sufficient Condition for
Now consider how the above stability results generalize to Asymptotic Stability in MIMO Systems
MIMO systems. Consider that each line between blocks in
Fig. 2 is replaced with a double line with arrow, indicating For simplicity of presentation, consider the case when
that there are multiple signals being transmitted between H(z) and I(z) are both set to unity. The results with-
the blocks and summing junction. Suppose that there are out these assumptions will be stated later. We make the
q components in the output vector Y (z) that one wants to following assumptions:
track q desired output histories Y ∗ (z), and hence the error (i) The denominator characteristic polynomial for G(z)
vector E(z) is also q dimensional. In order to be able to do has all roots inside the unit circle. If G(z) is a feed-
this at every time step, one needs at least q components back control system transfer function matrix, this
in U(z), and for simplicity we will consider that there are assumption should be automatically satisfied.
exactly q components. This makes G(z), R(z) into q × q (ii) The same assumption is made for the denominator
transfer function matrices. The material presented in this of the compensator transfer function F(z) (and H(z)
section comes from [65]. and I(z) when included). Note that F(z) need not be
causal.
4.2.1. Heuristic Development of a Stability (iii) The value of p is sufficiently large to make the RC
Condition system causal, so we require the denominators of
all transfer function entries in (4.6) for the MIMO
Observe that the development of equation (4.3) still applies problem, have a higher degree than their numerators.
when converting the problem to MIMO. We can generalize (If this is not the case, one can always use 2p as the
the nonrigorous heuristic arguments above and below (4.4) period.)
456 R.W. Longman

Rewrite equation (4.1) for the MIMO case in the form In this new form, the RC system is asymptotically stable
if the angle of the line from the point −1 to the com-
E(z) = −(1−z−p )[z−p (I−G(z)F(z))−I]−1 [Y ∗ (z)−V (z)] plex number det[P∗ (z)] relative to the positive real axis,
comes back to its original value after z does one traversal
(4.9)
of the contour. Making this shift assists in the evaluation
and note that the inverse can be written in terms of the of stability by allowing one to only consider the part of the
adjoint as contour that moves z around the unit circle. By the assump-
tions above, there are more poles than zeros in P∗ (z), and
adj[z−p (I − G(z)F(z)) − I] therefore the part of the contour at infinity always maps to
[z−p (I −G(z)F(z))−I]−1 = the origin. And the branch cut just supplies a line to the
det[z−p (I − G(z)F(z)) − I]
origin and back, going along the real axis starting from the
(4.10)
image of z = −1. Hence, one only needs to consider z on
Then the unit circle corresponding to frequency response. The
result can be stated as a theorem for MIMO analogous to
det[P(z)]E(z) = −(1 − z−p )adj[P(z)][Y ∗ (z) − V (z)] Theorem 1.
(4.11)
Theorem 3: The MIMO RC system using compensator
P(z) = [z−p (I − G(z)F(z)) − I] F(z) and satisfying the assumptions above is asymptoti-
The determinant has both a numerator and a denominator cally stable if and only if the plot of
polynomial. The numerator polynomial is the characteris-
det[z−p (I − G(z)F(z))] (4.14)
tic polynomial of the MIMO RC system, and if all its roots
are inside the unit circle, then the system is asymptotically does not encircle the point −1 as z goes around the unit
stable. circle once. Equivalently, the angle made between the pos-
As before we use the principle of the argument and the itive real axis direction and the line from −1 to the complex
contour in Fig. 7, and because there are no poles on the number represented by (4.14) must come back to its orig-
unit circle, there is no need for the semi-circles around inal value (not modulo 2π ) when z goes once around the
poles on the unit circle. And, instead of working to unit circle.
find the numerator polynomial, consider working with
det[P(z)]. After substituting z on the contour into P(z), 4.2.3. Sufficient Conditions for Asymptotic
one has a complex matrix that can either be diagonalized Stability of MIMO RC Systems
or put in Jordan canonical form by a similarity transfor-
mation at each frequency. Denote either of these forms As in the SISO case one is interested to have conditions
as , whichever is needed. Then P(z) = NN −1 . The that guarantee stability independent of the period p. The
determinant of a product of matrices is the product of Frobenius norm of a square matrix is the square root of
determinants when defined, and because NN −1 = I, the sum of squares of all elements and its square can be
det N −1 = 1/ det N. Then written as A2F = tr(AH A) where superscript H indicates
det[P(z)] = det[(z)] = λ1 (z)λ2 (z) · · · λq (z) conjugate transpose. Another measure of interest is the
spectral radius ρ(A) equal to the largest absolute value of
= r1 eiθ1 r2 eiθ2 · · · rq eiθq all eigenvalues of the matrix A. One can show (e.g. [65])
that these are related according to
= (r1 r2 · · · rq )ei(θ1 +θ2 +···+θq ) (4.12)
AF ≥ σmax (A) ≥ ρ(A) (4.15)
The RC system is asymptotically stable if the sum of angles
θ1 + θ2 + · · · + θq comes back to its original value when We can generate a series of sufficient conditions for
z goes once around the contour. To simplify the process, stability. For z on the unit circle, the absolute value of the
define a new matrix and note the relationships between the determinant in (4.14) simplifies to the determinant with-
determinants according to out the z−p as this factor has magnitude unity on the unit
circle. Therefore, if the determinant in (4.14) is less than
P∗ (z) = [z−p (I − G(z)F(z)] = P(z) + I (4.13)
unity without this factor for all frequencies up to Nyquist,
det[P∗ (z)] = det[N −1 P∗ (z)N] then −1 cannot be encircled, and this forms a sufficient
condition for asymptotic stability. To create a second suffi-
= det[N −1 P(z)N + N −1 N] = det[ + I] cient condition, replace this determinant by the product of
the eigenvalues following (4.12) and it becomes clear that
= (λ1 (z) + 1)(λ2 (z) + 1) · · · (λq (z) + 1) keeping the magnitudes of all eigenvalues less than unity
Theory and Design of Repetitive Control Systems 457

is also a sufficient condition. Then using (4.15) develops rate. If desired one can later slow down the learning by
two more sufficient conditions, each more restrictive than introducing a gain multiplying the repetitive control law.
the former. These results are summarized in the following In classical control system design, asymptotic stability
theorem, which includes a stability condition that is the is not enough. One wants to know how fast the transients
MIMO version of that in Theorem 2. decay, and one wants to know that the decay behaves
in an acceptable manner. The heuristic condition (4.4)
Theorem 4: For a MIMO RC system satisfying the applied to equation (4.3) suggests monotonic decay of
assumptions above, all of the following are sufficient con- the amplitude of every frequency component of the error.
ditions for asymptotic stability. In addition, satisfying any And condition (4.8) applied to equation (4.7) suggests
one of these conditions guarantees asymptotic stability for monotonic decay of the amplitude vector norm for every
all possible periods p. frequency from zero to Nyquist, using the same quasi static
  assumption. We examine what is required for this assump-
 
det[(I − G(eiωT )F(eiωT ))] < 1∀ω (4.16) tion to be valid. First, consider the settling time of an RC.

ρ((I − G(eiωT )F(eiωT ))) < 1∀ω (4.17)


5.1. The Settling Time
σmax ((I − G(e )F(e ))) < 1∀ω
iωT iωT
(4.18)
  Settling time is a property of the homogeneous difference
  equation obtained by setting the right hand side of (4.1)
I − G(eiωT )F(eiωT ) < 1∀ω (4.19)
F to zero. The characteristic polynomial is obtained from

the numerator of the square bracket term on the left after


tr (I − G(eiωT )F(eiωT ))(I − G(eiωT )F(eiωT ))H
putting all terms over a common denominator. The degree

of the polynomial is given by nRC = p+nG +nF +nH +nI
= tr (I − G(eiωT )F(eiωT ))H (I − G(eiωT )F(eiωT )) where the degree of the denominators of G, F, H, and I
are included with the number of time steps in a period, p.
< 1∀ω (4.20) Assume that there are no repeated roots, and the associated
Each of these equations is more restrictive than the pre- roots are zj ; j = 1, 2, . . . , nRC . Then the general solution
vious equation, except that (4.20) and (4.19) are identical. of the homogeneous equation takes the form
Note that equation (4.18) says that the heuristically derived
e(kT ) = C1 z1k + C2 z2k + · · · + CnRC znkrc (5.1)
monotonic decay condition of equation (4.8) is rigorously
a sufficient condition for asymptotic stability. where the Cj are arbitrary constants determined by the
initial conditions from the first nRC time steps, which
If we reintroduce H(z), I(z), Theorems 3 and 4 can be
includes the first period of operation of the RC before there
easily generalized. Then P∗ (z) in (4.13) is replaced by
is any data from a previous period to use in the RC law.
z−p {I(z)H(z)[I − G(z)F(z)]}, and the (I − GF) factors in
The time constant of an exponential e−αt is the amount
equations (4.14) and (4.16) through (4.20) are replaced by
of time needed for the exponential to decay to e−1 of its
IH(I − GF).
original value, given by 1/α. One definition of the settling
time of a system is four times the longest time constant for
5. Evaluating the Learning Speed in RC any solution of the homogeneous equation, corresponding
to e−4 = 0.018, or the amount of time for the slowest
Section 6 designs compensators that minimize the square decaying exponential to decay to 1.8% of its original value.
of the left hand side of (4.4) summed of a chosen set This is a worst case analysis. It is possible that the solution
of discrete frequencies between zero and Nyquist. Obvi- that decays the slowest is associated with very small initial
ously this directly aims to satisfy the stability condition error, and in such a case the overall decay rate can seem
of Theorem 2. Heuristic arguments said that this left hand faster than predicted.
side represents the factor by which different frequencies The decay of the solutions in (5.1) every time step is
decay each period. However, that conclusion requires given by the magnitudes rj of the roots zj = rj exp(kϕj ).
making a quasi static assumption, i.e. one must assume If j is the value for the largest root magnitude, then the
that the learning is very slow. This section is devoted to settling time can be found by solving rjk = exp(−αkT ) =
showing that the left hand side is actually a very good (exp(−αT ))k for α. The result can be written in three
approximation of the decay rate of different frequency forms
components even when the learning is very fast [142, 143].
Hence, the cost function used in the next section is ts = −4T / ln rj tss = −4/ ln rj tsp = −4T /(p ln rj )
also designing compensators that have optimized learning (5.2)
458 R.W. Longman

The first gives the settling time in seconds, the sec- fraction once the period is longer than the settling time of
ond in units of time steps, and of particular importance the feedback control system.
is the third, which gives the settling time in units of peri-
ods. Since one is trying to learn to get zero error in a 5.2. The Learning Rate for Each Frequency
periodic situation, it is natural to examine how many peri-
ods one needs for learning before the process has settled. Computation of the settling time requires finding all of the
Reference [143] illustrates that as the period increases, roots of the characteristic equation, and this could be diffi-
the settling time in periods relatively quickly approaches cult numerically for large periods p. Also, the settling time
an asymptotic value, i.e. an asymptotic number of peri- is based on the decay with time of the slowest decaying
ods. Fig. 9 considers the third-order system of (3.8) and solution to the homogeneous equation.
uses the compensator design of [122] (discussed below). A different approach looks at the frequency response.
This cancels the poles and zeros inside the unit circle, and We return to the heuristic arguments below equation (4.3)
places a zero at the reciprocal location to the zero outside, suggesting that the magnitude of the frequency transfer
and puts a pole at the origin. Then the DC gain of the function in square brackets
compensator times the system is set to unity. The sample
rate is 100 Hz, the period is set to eight time steps. The [I(eiωT )H(eiωT )(1 − F(eiωT )G(eiωT ))] = M(ω)eiγ (ω)
settling time is given in time steps, and plotted vs. the (5.3)
gain φ. When the gain is unity, the settling time is roughly
15 periods. Fig. 10 considers the same system using a given by M(ω) is the change in the amplitude of the fre-
10 gain FIR compensator design using the recommended quency component of the error at frequency ω from one
method of [99], and the settling time is one period and a period to the next. Frequency transfer functions describe
steady state frequency response to a sinusoidal input.
There is no such input in the equation. And since it applies
to steady state, the equation rigorously applies only after
convergence, and therefore cannot be describing the decay
of the error E(z). Making the quasi static assumption then
says M(ω) is the amount of decay in a period provided
there is very little decay. However, experience shows
that the condition is a much better predictor of decay
rates than this thinking would suggest. Reference [142]
explains this phenomenon as follows.
For purposes of illustration, consider the simplest form
of RC described below (3.1), where F(z) = φz, and apply
it to a first-order system G(s) = 8.8/(s + 8.8) fed by a
zero-order hold input running at 100 Hz, and converted to
the equivalent G(z). Then the open loop transfer function
of the RC system has one system pole and p poles on the
Fig. 9. Settling time in time steps vs. learning gain for third-order
unit circle. When the gain is φ = 0, the roots are at these
system with p = 8, using a phase cancellation approach. poles, and as it tends to infinity one root goes to the zero
introduced by the one step lead in the error term of the
RC law, and all others go to infinity. Fig. 11 shows the
root locus plot when p = 8 and also indicates the root
locations associated with gain φ = 1. This is a natural
gain for a G(z) with DC gain of unity, since it corrects DC
error immediately.
The value p = 8 is very small for a realistic practical
problem. When p is increased to 40, the root locus plot is as
shown in Fig. 12. Note that 40 is perhaps still a small num-
ber in practice, if one wants good fidelity at representing
the desired periodic trajectory with zero error at this many
points. We note that as the number of time steps increases,
the radial distance to the roots from the origin, for gains
Fig. 10. Settling time in periods vs. period in time steps for the third- associated with asymptotic stability, becomes much closer
order system using a 10 gain FIR compensator design. to unity. One should expect this because the learning
Theory and Design of Repetitive Control Systems 459

Fig. 11. Root locus plot for first-order system using the simplest RC law
and period p = 8.
Fig. 13. Comparison of M(ω) (solid line), (rj )p (circles), (rj ) (pluses),
and system pole (square), for p = 8.

The amplitude associated with this frequency that is cre-


ated by the initial conditions is associated with the constant
Cj . Hence, we can examine the values of the root magni-
tudes rj associated with each integer i multiple of 2π/p
from zero up to Nyquist, for the poles around the unit
circle. Note that the arguments above make M(ω) an indi-
cator of the amount of decay of the frequency component
of the error for ω, observed over one period. In other words
one should compare the M(ω) with the associated (rj )p .
Fig. 13 gives this comparison for p = 8, and we see that
the circles corresponding to the actual decay rate of each
root over a period (rj )p , and the M(ω) curve already for
this low value of p lie close to each other. Note that the
approximate monotonic decay condition from period to
Fig. 12. Same as Fig. 11 except p = 40.
period from (4.3) knows nothing about the system poles,
and hence the decay rate of the system pole indicated
process needs to see a full period before it can react to by the square in Fig. 13 is not captured by this approx-
the error at each time step of a period, and this means the imate decay condition. Fig. 14 presents the results when
learning rate must in some way scale with the number of p = 40, and we see that the M(ω) prediction of learning
time steps in a period (as discussed above). The important rate is now an essentially perfect indicator of the decay
property to note here is that the root locus for the p poles rate of the initial error components.
on the unit circle do not penetrate very far into the unit Fig. 15 presents results using a 10 gain RC law designed
circle, and hence have magnitudes rather near unity. by the method of [99] discussed in Section 6.2 (design-
Each complex root to the homogeneous equation ing a 10 gain FIR filter to minimize the square of M(ω)
in (4.1) summed over a discrete set of evenly space frequencies
from zero to Nyquist) for the third-order system of (3.8)
zjk = (rj )k eikϕj
with 100 Hz sample rate. Both the approximate monotonic
= (rj )k cos((ϕj /T )kT ) + (rj )k sin((ϕj /T )kT ) (5.4) decay condition, as well as the roots of the characteristic
equation, indicate that this design learns very fast. In one
is associated with a radian frequency ϕj /T . When φ = 0 period the error at all frequencies is decreased by a factor
this frequency is precisely that of one of the poles on the of much more than 90% for nearly all frequencies. One
unit circle, either DC, fundamental, or a harmonic. As φ is expects that such fast learning would surely violate the
increased to a value that might be chosen in the RC design, quasi static assumption needed in the development of the
the root is still close to this frequency as in Fig. 12. Hence approximate monotonic decay condition. But nevertheless
we can associate each root with one of these frequencies. the results are quite good.
460 R.W. Longman

Fig. 16. Plot for third-order system using the compensator design
Fig. 14. Same as Fig. 13 except that p = 40. method of [19] for the asymptotic zero location outside unit circle for a
pole excess of 3.

substituting values of z for the poles on the unit circle, and


the other substituting zj from the roots of the characteristic
polynomial into the right hand side of (5.6). If the roots
are still relatively close to the poles on the unit circle as
in Fig. 12, then the approximations can be good. Looking
at the roots in Fig. 11 indicated by the crosses, they are
near one in magnitude. Consider the first cross at about
0.95. Then the left hand side of (5.6), which indicates the
actual learning rate for the associated frequency compo-
nent, is 0.95 to the 40th power which is 0.008, suggesting
that this is the change in the error for this frequency after
one period of 40 time steps. If the period were changed
to 80 time steps, the value becomes 0.00006486. So the
roots can be near the unit circle and still correspond to a
fast learning rate in periods.
Fig. 15. Figure corresponding to Fig. 13 for the third-order system We conclude that the approximate monotonic decay
with p = 40 using a 10 gain compensator design using the method condition is a very good indicator of the learning rate per
of Section 6.2 (with V = 0).
period for each frequency component of the error, pro-
vided p is a reasonably large integer as is usually the
Fig. 16 gives the corresponding plot using the method of case in applications. And as a result we can use it for
Tomizuka et al. [122] described below, with the asymptotic optimization of the RC design.
zero location of −3.73 in place of −3.31 that corresponds
to this sample rate. The settling time is 0.45 sec for the 5.3. The Phenomenon of Initial Convergence
feedback control system G(z) alone, and p = 40. Followed by Divergence
To understand how one can dramatically violate the
quasi static assumption and still have good predictions In classical control system design one can normally use
of decay rate, write the characteristic polynomial that is the concept of phase margin to determine stability. This
satisfied by root zj in the form concept relies on the usual property that the magnitude
p
zj = [I(zj )H(zj )(1 − F(zj )G(zj ))] (5.5) response of the open loop transfer function continues to
decay after it passes the zero dB crossing point where the
or phase margin is defined. RC is very unusual because it
 p  
(rj )p = zj  = I(zj )H(zj )(1 − F(zj )G(zj )) (5.6) asks for zero error for all signals of a given period, and
this means the fundamental and all harmonic, all the way
We conclude that the difference between the two predic- to Nyquist frequency. The result is that the open loop
tions of the decay rate of the transients is based on one magnitude response plot has many zero dB crossing points,
Theory and Design of Repetitive Control Systems 461

In practice, this type of instability is very often


observed, i.e. the RC is turned on and the error decreases
for some time, perhaps dramatically, and then slowly the
error starts to grow again. An understanding of this phe-
nomenon is given in [75] and it is also discussed in [70].
First, we evaluate the frequency content of the initial error
that is to be fixed by the RC action. The first period of
an RC system is running just a feedback control system
and establishes the initial conditions for the RC difference
equation. It can have relatively small error remaining for
very low frequencies, the main error is a little higher in fre-
quency, and then errors at very high frequency are usually
very small. A sizable amplitude at high frequency requires
high energy, and natural disturbances will not have such
Fig. 17. Polar plot of F(z)G(z) for a phase cancellation RC design for
energy. Also, in applications the command is often a con-
the timing belt drive system. stant, and otherwise one expects the periodic command to
concentrate on frequencies perhaps up to and a bit beyond
and one must have good knowledge of the system phase the bandwidth of the control system, but to stay far below
all the way to Nyquist. Nyquist frequency.
This is actually unreasonable in the practical world, and Starting from this error spectrum, the frequencies with
as a result we need to use a zero-phase low-pass filter H(z) substantial error are in a range where the model is rea-
to cut off the learning when the model is no longer good sonably good, and the RC makes the error learn relatively
enough. Examining equation (4.3) without such a filter quickly. But there are very small errors at high frequency
and without any interpolator, one can see that an effec- where the model is not good enough, and M(ω) goes
tive design for the compensator F(z) is to either try to above unity as a result. Because these errors are at a fre-
invert G(z), and if not that, then it should try to cancel quency far above the bandwidth of the system, the M(ω)
the phase of G(z). One can succeed in doing this when is only slightly above unity, and hence these errors grow
one has a good model, but at high frequencies one must very slowly. Now apply superposition of the errors at all
expect some extra un-modeled dynamics, often called par- frequencies, and the sum of all errors decreases quickly
asitic poles or residual modes. One extra un-modeled pole initially, and then eventually the small errors with the small
in continuous time puts in an extra 90◦ phase lag at high growth rate start to become evident. The H(z) cutoff filter
frequencies, and in discrete time approaching Nyquist it can be introduced to stop this growth, tuning the cutoff
may add 180◦ . This is enough to make condition (4.4) vio- frequency in hardware based on the frequency content of
lated. And by equation (5.3), it will be error components the error that is observed to be growing.
at these high frequencies that are amplified by M(ω) every
period. However, at very high frequencies, the magnitude 5.4. Perhaps You Do Not Need Stability
response of the system can be very small. The result is
that without H(z), one should expect essentially all RC As discussed in [76, 77], this phenomenon of what appears
systems to be unstable, but the growth rate of the instabil- initially to be convergence often being followed by diver-
ity may be very long. Reference [43] gives an example of gence offers an unusual option in control theory. It may be
RC of paper velocity in a copy machine that required about ok to use an unstable RC system. One applies the RC law
2000 periods before evidence of an instability started to and monitors the error as a function of period, e.g. compute
become apparent. Fig. 17 from [41] is a polar plot of the the root mean square of the error for the past period for each
product F(z)G(z) obtained from experimental frequency new time step, and once it is clear that the error has gone
response data for the timing belt drive system. If the plot through a minimum, go back to the RC command to the
goes outside the unit circle centered at +1, then (4.4) is feedback controller that was applied at the minimum, and
violated (with I(z)H(z) eliminated). This system started to simply use that as the command to the feedback controller
show instability after about 80 iterations. The plot does in from then on. One turns off the RC action, and freezes the
fact go outside the unit circle, but one needs a magnifying signal as the one that produced the smallest error.
glass to see this. The radial distance from +1 to the plot is Some form of learning is applied for a number of revo-
M(ω). The RC law used was computed as a convolution lutions for each track on computer disk drives. This is done
sum operator that cancelled system phase, and then it was at the factory, and the resulting control action is recorded
truncated to make an FIR filter (based on the ILC approach on the disk for use thereafter whenever reading the track.
of [31]). There is no need to be certain that the RC system is stable
462 R.W. Longman

in such an application. Hence, using an unstable RC can There are some exceptions to making the sum go all
quickly improve tracking error and allow more closely the way to Nyquist frequency. These include lack of con-
spaced tracks. fidence in the model above some frequency [97], or we
Whenever one learns an RC signal and then freezes it know in advance that we want a cutoff at some frequency
for future use, one pays a price in final error lever reached. based on hardware considerations [41], or when we are
RC and its sister field, iterative learning control, rely on using a simple RC law that is not capable of meeting this
looking at the error in a previous period or run and acting requirement with our model, and we adjust its parameters
on it assuming it will appear again in this run if no changes to get the best cutoff possible (e.g., the linear phase lead
are made. Therefore, the minimum possible error one can design discussed below).
hope to achieve, is to approach the reproducibility level of
the hardware. Iterative learning control experiments on a 6.1. Usually One Cannot Use the Inverse as a
robot [32] reached a level perhaps a factor of 3–5 above Compensator
this reproducibility level measured on a minute-to-minute
basis, but this level was far below the reproducibility level One might first think of using F(z) = G−1 (z), in which
when measured on a day-to-day basis. Thus, the learning case (6.1) is satisfied, and the learning should be immedi-
control was fixing errors of the size of how differently the ate after one period. This is usually not possible, because
robot behaves from one day to the next. If one chooses to when a continuous time system is fed by a zero-order hold,
freeze the RC signal, one gives up this potential for correct- and the equivalent z-transfer function is generated, usu-
ing errors that vary with time. This includes such things as ally there are zeros introduced, and these are often outside
errors changing as a machine warms up. On the other hand, the unit circle. This makes the inverse of most discrete
getting a very substantial improvement in performance by time systems unstable. Generically, when one changes the
simply making a few runs and computing an improved input to a zero-order hold feeding a differential equation,
command to an existing feedback control system, is very one will see a change in the sampled output one time step
attractive. later. Thus the discretization process introduces enough
zeros into the z-transfer function that there is one less zero
than pole. The zeros introduced lie on the negative real
6. RC Compensator Design: Using
axis (with frequency components at Nyquist frequency).
Optimization in the Frequency Domain When the pole excess in the differential equation is three
or more, then at least one zero will be introduced outside
Theorem 2 established that for asymptotic stability for all the unit circle for fast enough sample rates. Reference [7]
possible p, one needs to make the M(ω) in equation (5.3) develops the locations of the zeros introduced in the limit
less than unity for all ω. This M(ω) contains the cutoff as the sample time interval T tends to zero. An alternative
filter H(z) and the interpolation I(z). If one wishes the proof is presented in [62]. For pole excesses of 3 and 4, one
error to be eliminated up to as high a frequency as pos- zero is introduced asymptotically located at −3.732 and
sible, then one designs the compensator F(z) to satisfy −9.899, respectively. For a pole excess of 5, two zeros are
(5.3) without the cutoff, based on one’s model of the sys- introduced at −23.322 and −2.322. In RC we have the lux-
tem. Then when applying the resulting design to the real ury of using an interpolating hold instead of a zero-order
world, one most likely needs to introduce the cutoff filter hold or an extrapolating first-order hold. We are using data
to stabilize the process to high frequency model error. The from the previous period so we know both past and future
cutoff would be tuned based on the hardware performance points for the interpolation. Reference [62] shows that
with this design. Hence, in designing F(z) we may aim the same asymptotic locations apply to this case as well,
to satisfy M(ω) less than unity for all frequencies, with but the pole excess for which these numbers apply, are
H(z) removed. Similarly, it is reasonable to leave out I(z) one integer larger. Fig. 18 shows the location of the zero
as well. It is a low-pass filter also whenever the period tending to −3.732 as a function of the sample rate, for the
does not happen to be an integer number of time steps. We third-order system in equation (3.8). Only at unreasonably
conclude that in most cases our objective in the design of low sample rates is the zero inside the unit circle. Hence,
the compensator F(z) should be to satisfy use of the inverse of the z-transfer function will usually
 
MGF (ω) = 1 − G(eiωT )F(eiωT ) < 1 (6.1) create an unstable compensator, and produce an unstable
RC design.
for all frequencies up to Nyquist, based on our system
model. This section presents a recommended approach to 6.2. FIR Design for SISO Systems
the design of the compensator F(z) based on minimizing
the square of MGF (ω) summed over a suitably dense set What can be done without any such issue of instabil-
of discrete frequencies from zero to Nyquist [99, 97, 65]. ity is to make F(eiωT ) approximate the inverse of the
Theory and Design of Repetitive Control Systems 463

work. Of course it is a special case of cost function


(6.3) obtained by picking Wj appropriately. But use of
Wj set to unity often gives very good results. The VC
term is included in case one wants to limit the size of the
gains. Let G(exp(iωj T )) = MG (ωj ) exp(iϕG (ωj )). Then
substituting (6.2) into the cost function (6.3) produces
a set of linear equations to solve for the compensator
gains, Ax = b, where x is the column vector of the ai
coefficients, and

N
A= Wj MG2 (ωj )
j=0
 
1 + VC cos(ωj T ) L cos((n − 1)ωj T )
 cos(ωj T ) 1 + VC L cos((n − 2)ωj T )
Fig. 18. Location of zero introduced outside unit circle by discretization ×



for third-order system (3.8). M M O M
cos((n − 1)ωj T ) cos((n − 2)ωj T ) L 1 + VC
frequency response of the system G−1 (eiωT ). This section (6.4)
summarizes the approach to doing this presented in [99].
Pick F(z) in the form of an FIR (finite impulse response)  
cos((m − 1)ωj T + ϕG (ωj ))
filter  
N
cos((m − 2)ωj T + ϕG (ωj ))
b= 
Wj MG (ωj )  
F(z) = a1 zm−1 + a2 zm−2 + · · · + am z0 + · · · .. 
j=0  . 
an−1 z−(n−m−1) + an z−(n−m) cos((m − n)ωj T + ϕG (ωj ))

= (a1 zn−1 + a2 zn−2 + · · · + am zn−m + · · · The resulting designs (with VC = 0 and all Wj = 1),
when given the needed freedom by appropriate choice
+ an−1 z1 + an z0 )/z(n−m) (6.2) of n and m, produce various patterns for the optimized
zero locations of the compensator F(z). It will approxi-
In application this represents taking a simple linear com- mately cancel the system poles with zeros. It must supply
bination of past error measurements. Considered as a enough poles at the origin to make the sum of the num-
transfer function, it contains n zeros whose locations are ber of poles inside the unit circle equal to the number of
to be chosen, and n − m poles are introduced at the ori- zeros inside the unit circle, otherwise the design will fail
gin. The z0 term corresponds to the error one period back, to keep MGF (ω) < 1. To see this, note that one additional
e((k − p)T ), and terms are included both forward and zero inside will create a factor whose phase is 180◦ when z
backward from this time step. The coefficients in (6.2) are reaches Nyquist frequency at z = −1. Zeros either inside
picked to minimize the square of MFG (ω) summed over an or outside the unit circle will be compensated by includ-
appropriately chosen discrete set of frequencies ωj from ing additional zeros approximately symmetrically located
zero to Nyquist, i.e. minimize around circles about the origin of the same radial distance
as the zero being compensated.

N
Numerical experience suggests that the minimum num-
J= [1− G(eiωj T )F(eiωj T )]Wj [1− G(eiωj T )F(eiωj T )]∗
ber of gains to produce stability is equal to the order of
j=0
the system. For the third-order system of (3.8), use of
+ VC (a12 + a22 + · · · + an2 ) (6.3) three gains with VC set to zero in (6.3) gives the results
in Fig. 19. The polar plot of F(eiωT )G(eiωT ) stays within
When the objective is simply to approximate the inverse one unit of +1 so that MGF (ω) < 1 and the RC system
of the frequency response of the system over the full is asymptotically stable. The locations of the two zeros of
frequency range, one sets VC = 0 and sets the Wj the compensator are shown in the right part of the plot as
to one. We set VC = 0 unless otherwise stated. Note are the poles and zeros of G, except that the zero at −3.52
that based on the previous section, one might think to is off the plot. Use of one gain as in the simplest form of
make F(eiωT ) approximate G−1 (eiωT ) by making a cost RC is not able to stabilize a third-order system with a rea-
that is a similar sum over frequencies of the magni- sonable sample rate. It is interesting to note that one only
tude squared of their difference. This does not usually needs three gains to successfully stabilize such a system.
464 R.W. Longman

Fig. 19. Plot of F(eiωT )G(eiωT ), left, and of the poles and zeros of F(z)G(z), right, for third-order system using three gains in F(z).

Fig. 20. Pole-zero map for third-order system (3.8) for n = 8, m = 3 (left), and for n = 8, m = 4 (right).

When making a compensator design by this method,


one can pick a value of n to use, and then one must vary
the choice of m to find the best value. If one picks n = 8,
then use of m equal to 3, 4, 5, 6, and 7 all produce sta-
ble designs. The corresponding pole-zero locations for
F(z)G(z) are given in Figs. 20–22. Consider the m = 3
plot in Fig. 20. The third-order system (3.8) fed by a zero-
order hold at 100 Hz has three poles inside the unit circle,
one zero inside and one outside on the negative real axis.
The design has n − m = 5 poles at the origin. Add this to
the three system poles and there are eight poles inside
the unit circle. Then there must be eight zeros inside,
one of them is a system zero, and the seven others are
introduced as zeros of F(z). Three are used to approxi-
mately cancel the system poles. Therefore, there are four
more zeros introduced inside, and these are placed approx- Fig. 21. Pole-zero map for third-order system (3.8) for n = 8, m = 5.
imately evenly spaced around a circle of the radius of the
system zero. Because all possible zeros for n = 8 have The right side of Fig. 20 sets m = 4 so that the number of
already been allocated, there are no zeros introduced out- poles at the origin is now n − m = 4. Therefore, there will
side to compensate the effect of the system zero outside. be one less zero introduced around the circle of approxi-
Hence, the locations of the remaining zeros have been mately the radius of the system zero inside, and it is now
adjusted to try to compensate the influence of this zero necessary to introduce a zero outside the unit circle to reach
outside. eight zeros total. This zero is introduced approximately
Theory and Design of Repetitive Control Systems 465

Fig. 22. Pole-zero map for third-order system (3.8) for n = 8, m = 6 (left), and for n = 8, m = 7 (right).

evenly spaced around a circle of the radius of the sys-


tem zero outside. In this case, this means place a zero on
the positive real axis symmetrically located. Fig. 21 sets
m = 5 and needs one more zero outside, and one less
inside. The result is that both the zero inside and the zero
outside have a total of three zeros on the circles of their
radius. The pattern continues in Fig. 22 for m = 6 and 7.
In order to pick among these candidate designs, one might
look at the value of the square root of J in equation (6.3)
(with VC set to zero, N was set to 180 for these runs) which
produces 3.65, 1.05, 0.35, 0.73, and 2.86 for m from 3
to 7, respectively. We see that having the same number of
repeats of the zero inside and the zero outside is best in
this case. Section 7 develops methods of predicting how
many repeats one should aim for. When the zero outside Fig. 23. Plot of F(eiωT )G(eiωT ) for n = 8, m = 5.
and the zero inside have reciprocal locations the analysis
in Section 7 suggests the same number of repeats, and
this reciprocal relationship is approximately true for this
system. The reciprocal relationship becomes exact asymp-
totically as the sample time interval T tends to zero. When
the zero is closer to the unit circle, either inside or outside,
one should repeat it more times around its circle.
This type of RC compensator design can be very effec-
tive. Fig. 23 plots F(eiωT )G(eiωT ) for the 8 gain design
with m = 5. The radial distance from +1 to the plot rep-
resents the learning rate per period M(ω). It is clear that
use of just eight gains times eight errors from the previous
period, can produce an F(z) that is a very good approxi-
mation of the inverse of the frequency response of G(z).
Going to 12 gains produces the results in Fig. 24 which
deviates from the actual inverse of the frequency response
Fig. 24. Plot of F(eiωT )G(eiωT ) for a 12 gain design n = 12, m = 7.
function by roughly only 1%. The performance of such
designs in terms of the settling time has already been pre-
sented in Fig. 10 for a 10 gain design, and we see that the Cost function (6.3) has the option of introducing a
settling time for reasonable periods is one period and a nonzero weight VC that penalizes the use of large gains.
fraction. The settling time of the feedback control system Fig. 25 shows both the polar plot of F(eiωT )G(eiωT ) and
(3.8) alone, is approximately 0.45 seconds, or 45 sample its magnitude and phase plots, for the case of all Wj = 1
times. The learning rate per period for each frequency is and VC = 0.000005 with n = 12, m = 7. The effect
given in Fig. 15. of introducing VC is to decrease the gains by a factor
466 R.W. Longman

Fig. 25. Introducing a penalty on the size of the gains.

of roughly 10 at the expense of slower learning at high the forcing function at each step and run the difference
frequencies [99]. equation.
Fig. 26 examines the resulting design for F2 (z) when
6.3. The Two Choices, FIR or FIR With one designs it to compensate one zero located at z = −a
IIR Cancellation outside the unit circle, so that F(z)G(z) in (6.3) becomes
(z + a)F2 (z). The design simply repeats the existing zero
One has two choices in how to use the design method of the allowed number of times evenly spaced on the original
cost function (6.3). To illustrate the choices in a simple zero’s radius. The outer circle on the left of Fig. 26 corre-
manner, consider a G(z) of the form sponds to n = 2 (with no pole needed at the origin for these
problems), which puts one zero on the positive real axis at
KG (z − zI )(z − zO ) the symmetric location. The inner circle repeats the exist-
G(z) = (6.5)
(z − p1 )(z − p2 )(z − p3 ) ing zero every 90◦ around the circle (n = 4). The radius of
the circle for n = 2 is (1/a)2 , and for n = 4 is (1/a)4 . By
This could have come from (3.8) fed by a zero-order hold, looking at the corresponding magnitude and phase plot on
which introduces one zero zI inside the unit circle, and one the right of Fig. 26, we see that the polar plot on the left
zero zO outside. The system is assumed asymptotically goes around the outer circle once when going from zero
stable, so all poles are inside the unit circle. As presented to Nyquist frequency, while for n = 4 it goes around two
above, we design the FIR compensator F(z) using (6.3) times. Section 7 uses a different approach that helps one
to approximate G−1 (z), i.e. to approximately make the determine how many times one should repeat the zero, i.e.
frequency response of G(z)F(z) equal to unity in magni- how many gains one should use, in order to reach a cho-
tude and zero phase. The FIR form of F(z) allows it to sen level of error in representing the frequency response
put zeros over the poles inside the unit circle if (6.3) so of 1/(z − zO ) by the FIR filter F2 (z).
chooses, which it approximately does. But all poles must
be at the origin, so it is not possible for F(z) to put a pole
underneath zI , even though such a pole would be stable. 6.4. Design Directly From Frequency Response
The alternative is to split the compensator into two parts, Tests Without Producing a Model
F(z) = F1 (z)F2 (z), where
The optimization criterion (6.3) seems to require knowl-
(z − p1 )(z − p2 )(z − p3 ) edge of the transfer function of the feedback control
F1 (z) = (6.6)
KG (z − zI ) system, G(z). However, what is actually used is

is an infinite impulse response (IIR) difference equation G(eiωT ) = MG (ω)eiθG (ω) (6.7)
that comes from inverting everything that is stably invert-
ible. Then F2 (z) is designed using (6.3) to approximate which is the magnitude MG (ω) and phase θG (ω) frequency
1/(z − zO ), i.e. substitute for G(z)F(z) in (6.3) the expres- response information. One can experimentally determine
sion (z − zO )F2 (z) and design an FIR filter F2 (z). The IIR the Bode plots for one’s system, and hence it is not
filter is nonstandard as it wants future inputs to compute necessary to create a model.
the forcing function, but we know “future” inputs (as they Reference [97] (and [104, 101]) studies this option
come from the previous period) so one can compute in detail. The system (3.8) is used, and simulated data
Theory and Design of Repetitive Control Systems 467

Fig. 26. FIR compensator for a single zero outside the unit circle.

Fig. 27. Simulated experimental phase determination by different methods (left). True phase modulo 2π and identified phase using 5000 data points
(right).

generated using a rich deterministic input (a known ran- data. Nevertheless, it is still clear that one must make use
dom white Gaussian signal with unity standard deviation), of a zero-phase low-pass filter cutoff, as discussed below,
and then white Gaussian noise is added to the resulting since one is not able to get accurate phase information all
output data. The standard deviation of the deterministic the way to Nyquist. Of course, this is also necessary when
output signal is computed and the measurement noise is using a model, but the inaccuracy in the “model” is more
then added to give a signal to noise ratio of 100. A total of obvious using frequency response data here.
5000 data points are used. The smooth line in the left plot
in Fig. 27 is the actual system phase lag as a function of 6.5. MIMO Systems
frequency. The lowest curve is the result of computing the
phase by taking the ratio of the discrete Fourier transforms This section presents material developed in [65] and also
of the output divided by that of the input for each frequency presented in [10]. Theorem 4 above develops a series of
and looking at the phase. The much better irregular curve conditions that are sufficient conditions for stability of
is generated by the method of [134], which employs an MIMO RC systems. One might consider trying to pick
averaging technique to improve the results. Phase error gains in a compensator (6.2) to minimize the left hand side
is particularly important in stability, a phase error of 90◦ of any one of the stated inequalities. But doing a minimiza-
will send plots such as Figs. 17, 19, 23, 24, and 25 outside tion of the maximum eigenvalue magnitude or maximum
the unit circle centered at +1 and make the RC system singular value can be complicated numerically. The sta-
unstable. The right plot in Fig. 27 gives the actual phase bility criterion that is the MIMO analog of cost function
as a dashed line, and also shows the same curve shifted by (6.3) is (4.19) or equivalently (4.20). These represent
±2π . The irregular curve uses the method of [134] and quadratic objective functions and produce linear equations
an unwrap code is used to try to adjust the modulo 2π to to solve for the RC compensator gains in F(z), as described
make a curve without 2π jumps. It is clear that with noise below.
in the data, such unwrap codes will fail to get the right Write the MIMO compensator equation in the form
value of 2π at higher frequencies, and hence make it diffi-
cult to know up to how high a frequency one can trust the F(z) = M̄(z) (6.8)
468 R.W. Longman

where consider a two input, two output system with trans-


  fer function matrix G(z). Our objective is to design an
M̄(z) = zm−1 I zm−2 I · · · z−(n−m) I (6.9) F(z) whose frequency response looks like that of G−1 (z).
  Then
= a1T a2T · · · anT  
g11 (z) g12 (z)
Then the cost function analogous to (6.3) is G(z) = (6.13)
g21 (z) g22 (z)

N
 1
J= Wj tr [I − G(zj )M̄(zj ) ]H G−1 (z) =
j=1
g11 (z)g22 (z) − g12 (z)g21 (z)
 
 −g12 (z)
× [I − G(zj )M̄(zj ) ] z =e(iωj T ) + tr( T VC ) ×
g22 (z)
j
−g21 (z) g11 (z)
(6.10)

Superscript H represents the conjugate transpose. Tak- Therefore, our objective is to pick, for example, the f11 (z)
ing the derivative with respect to matrix and setting component of F(z) to imitate the frequency response of
the result to zero produces a linear set of equations g22 (z)
to solve for these compensator gains. To assist in tak- (6.14)
g11 (z)g22 (z) − g12 (z)g21 (z)
ing the derivative, note that: (1) tr(AB) = tr(BT AT )
for any matrices A and B. (2) Define the deriva- and similarly for the three other components. This makes
tive of a scalar J̄ with respect to a matrix B, as the four separate SISO design problems, one for each input-
matrix whose α.β component is ∂ J̄/∂Bαβ . (3) Note output pair. As noted earlier, it is not usually effective to
that ∂[tr(AB)]/∂B = AT . And (4) note also that try to minimize the difference between f11 (z) and (6.14).
∂[tr(BT AB)]/∂B = (A + AT )B. Then, if we con- Instead, one should make the product of f11 (z) and the
sider J̄ = tr[(I − GM )H (I − GM )] the derivative reciprocal of (6.14) closely match unity, i.e. minimize
becomes
N 
  
g11 (z)g22 (z) − g12 (z)g21 (z)
d J̄/d = −[(GM)T + (M H GH )] J11 = 1− f11 (z)
g22 (z)
j=1
+ [(M H GH GM) + (M H GH GM)T ] (6.11)    ∗ 
g11 (z)g22 (z) − g12 (z)g21 (z)
Introducing the summation, the weight factor Wj , and the × Wj 1 − f11 (z)
g22 (z)
VC term, produces the solution = A−1 B where (6.15)


N
for z = exp(iωj T ). Note that different terms can have
A= Wj [Re(M̄ H (zj )GH (zj )G(zj )M̄(zj )) different numbers of zeros introduced in the discretization
j=1 process, so there can be a different number of zeros outside
the unit circle.
+ Re(M̄ H (zj )GH (zj )G(zj )M̄(zj ))T ] + 2VC (6.12)

B= Wj Re(G(zj )M(zj ))T + Re(M H (zj )GH (zj )) 7. RC Compensator Design: Using
j=1 Taylor Expansions of the Transfer
Function Inverse
Of course, this design approach can design MIMO RC
systems directly from frequency response tests, as dis- This section presents a different design method [138], one
cussed in the previous section. Refer to [10] for examples that looks at G−1 (z) and makes a Taylor series expansion
of designing MIMO RC using (6.12). of any factor in the denominator that one wants the zeros
of F(z) to mimic. This is a valid RC design method, and it
6.6. MIMO Design as a Set of SISO Designs is very simple. It also supplies considerable understanding
of why the compensators in Figs. 20–22 behave the way
An alternative design approach for MIMO systems makes they do. But perhaps its biggest benefit is to produce a
use of a transfer function matrix model and reduces the guide as to how many times one needs to repeat a zero for
problem to solving a set of SISO designs by the methods a given level of accuracy in modeling the reciprocal of the
of previous sections, as presented in [65]. For simplicity, frequency response of G(z).
Theory and Design of Repetitive Control Systems 469

For simplicity of illustration, consider again the third- For a similar zero zI = −a, 0 < a < 1 inside the unit
order system (6.5). The inverse can be written grouped in circle, we use (7.3) by writing
two ways
     
  1 1 1 1 1 1
(z − p1 )(z − p2 )(z − p3 ) = = =
G−1 (z) = z − zI z+a z 1 + (a/z) z 1 + ẑ
KG
   (7.6)
1 1
× (7.1) This time ẑ = a/z and the series converges provided
z − zI z − zO
   |z| > a as needed. Note that this expansion supplies poles
−1 (z − p1 )(z − p2 )(z − p3 ) 1 at the origin. Suppose that r = 2, in which case the expan-
G (z) = (7.2)
KG (z − zI ) z − zO sion becomes 1 − a/z + (a/z)2 = (z2 − az + a2 )/z2 . This
supplies two poles at the origin, and one more from the
The former applies when we design F(z) of equation (6.2)
first factor on the right in (7.6) supplies another, so that the
to mimic all of G−1 (z). In this case we make Taylor series
total number of poles at the origin is equal to the number
expansions of the two last terms to approximate each term
of zeros inside the unit circle (which we know is required
by a set of zeros. The three factors (z − pi ) are then also
for our problem), two from the numerator above, and one
zeros of F(z). In the second form, the first term in square
from the original zero zI of G(z).
brackets is F1 (z) as before, and then we only need to use
When there are multiple zeros at different radial dis-
a Taylor expansion of the last square bracket in (7.2). We
tances from the origin, it is of interest to determine what
will consider only the zeros introduced on the negative
values of r to use for each so that there is a similar accu-
real axis, so that −zI and −zO are positive real numbers.
racy in representing the reciprocal factors. The magnitude
The same methods of course work on more general zeros  r+1
as well. of the error in (7.4) is ẑ , and we are interested in fre-
quency response with z on the unit circle, so that for a
The Taylor expansion needed is  r+1
inside and outside respectively, we have eiωT /a =
∞  iωT r+1
1 1/ |a| r+1
and a/e  = |a| . Suppose we set the
r+1
= 1 − ẑ + ẑ2 − ẑ3 + · · · = (−ẑ)k (7.3)
1 + ẑ desired accuracy level to a value ε, and then compute
k=0
the value of r necessary, then r + 1 = ln(1/ε)/ ln a and
 
which converges if ẑ < 1. Suppose that we select all r + 1 = ln ε/ ln a = ln(1/ε)/ ln(1/a) respectively. Note
terms up through power r in the infinite sum, and discard that as the zero location approaches the unit circle, the
the rest. This forms an approximation of the factors of number of repeats of the zero needed for a given level of
interest in (7.1) and (7.2). Note that when multiplied by accuracy tends to infinity. Fig. 28 plots a from 1.025 to
the corresponding factor 1 + ẑ in the numerator of G(z) 5 and from 0.1 to 0.975. An interesting property of the
we get the following simple expression equations and the plots is that the number of repeats for a
given error level for an a outside and an a inside are the
[1 + ẑ][1 − ẑ + ẑ2 − ẑ3 + · · · + (−ẑ)r ] = 1 − (−ẑ)r+1 (7.4) same if the two a values are reciprocals of each other. And
the asymptotic locations of the zeros introduced by the dis-
So the error in canceling the zero by the expansion through cretization obey this reciprocal location. This observation
power r is (−ẑ)r+1 . The roots of the last expression on the suggest we should expect Fig. 21 to be the best between
right are evenly spaced around the unit circle in the ẑ plane, Figs. 20–22.
starting at −1 and separated by 2π/(r + 1) radians. The optimization (6.3) does not exactly place the zeros
For a zero zO = −a outside the unit circle with a > 1 as suggested by the Taylor expansions made here. Never-
we apply (7.3) by using theless, one expects that the results here are a good guide
      to picking m in the design using (6.3) so that the error
1 1 1 1 1 1 level is minimized for a given n, and also as a guide to
= = =
z − zO z+a a 1 + (z/a) a 1 + ẑ picking the n necessary for a desired error level. To see
(7.5) the difference between the two approaches, consider a
system consisting of one zero outside the unit circle at
The series converges provided |z| < a, and our interest z = −2, and set the values of n and m, and the num-
is in z on the unit circle which is within the radius of ber r so that 1, 3, 7, and 15 zeros are introduced by both
convergence. The resulting compensator supplies r roots methods (Wj = 1, VC = 0). Fig. 29 shows the resulting
around a circle of radius a, and when combined with the zero locations. Of course, the Taylor series method of this
original zero at −a there are r + 1 roots evenly spaced on section places these extra zeros evenly spaced on a circle
this circle starting as −1. of radius 2. From the top left figure we see that the zero
470 R.W. Longman

Fig. 28. Number of repeats vs. zero location a for given error levels.

Fig. 29. Zero locations of F(z)G(z) when compensators are allowed to use 1, 3, 7, and 15 zeros.

introduced by (6.3) is at a radius somewhat larger than 2. 8. RC Compensator Design: Cost


From the top right we see that the zeros introduced by Averaging Over Model Distributions
(6.3) are not evenly spaced. These differences do improve for Robustification to Model Parameter
performance. And from the lower plots we see that as the
number of repeats gets large, the zero locations of the (6.3)
Uncertainties
method approach that of the Taylor series. When consider-
ing a zero inside the unit circle, (6.3) instead uses a shorter There are two kinds of robustness to consider in RC. One
radius, but the angular spacing of the zeros is similar. is robustness to inaccuracy of the parameters in the model
Theory and Design of Repetitive Control Systems 471

Fig. 30. Left: RC design based on the average of frequency response data. Right: RC design that minimizes the sum of the cost functions obtained
for each of the 10 data sets.

used to design the RC law, which is the topic of this section. another second-order factor with ω1 = 18(2π ), ζ = 0.1.
The second is the inevitable presence of unmodeled high Then input 5000 time steps of known rich inputs picked
frequency dynamics in the system, which is handled by as white noise samples, record the response, and com-
the methods of the next section. pute the frequency response using the method as before
As an example, we might consider that the coefficients from [134]. Note that this method already splits up the
a, ωo , ζ in (3.8) are uncertain, and we pick what we con- 5000 steps of data and does some averaging. We design
sider to be the most probable value or average value, but a 20 gain controller (6.2). Consider the case when there
we might specify a range of uncertainty and a probability is no noise included in the model, and one still gets the
distribution over that range. Normally, one would design behavior similar to that in Fig. 27. So, even with perfect
the RC law using the average values or the most likely val- measurements one cannot get perfect frequency response
ues. However, our RC laws are designed based on a cost information.
function, and the average of the cost function over the dis- The left side of Fig. 30 gives the magnitude frequency
tribution does not correspond to the design for the average response of |1 − GF| when F(z) was designed using the
values of the parameters. The relationship is nonlinear. average of the 10 frequency response tests as a model,
Reference [104] (and also [101, 59, 10, 119]) shows how and G(z) is the true system (the plot shows the influ-
one can dramatically improve the stability robustness of ence of several nonzero choices for the penalty function
the design. Pick a representative set of samples from the coefficient VC which slows down learning at higher fre-
probability distributions of all parameters. Then design quencies). The plot goes above unity at about 35 Hz
one RC control (6.2) to minimize (6.3) summed over all indicating that one would have to cut off the learning
models in this set. Refer to [104, 101, 59] for investiga- process for this and higher frequencies in order to be
tions of the robustness improvement. Reference [10] gives stable. Now consider what happens when we pick F(z)
examples for MIMO problems. to minimize the sum of 10 cost functions, one cost for
An analogous approach can significantly improve the the frequency response functions from each data set. The
RC designs obtained when designing directly from fre- results are on the right side of Fig. 30 and it is seen that
quency response data as in Section 6.4. One can perform the design is stable, and there is no need for a cutoff of
input–output tests as described in Section 6.4 to get the the learning process above some frequency. The same
magnitude and phase information for the system. One conclusions apply when one introduces measurement
might use just one long run to get this information, but noise.
some people might make for example 10 make such runs Reference [112] goes one step beyond the cost aver-
and average the results to improve the frequency response aging to obtain robustness. The cost averaging is seen to
information. Then one could design the RC law based on emphasize adjusting the phase as a function of frequency
this improved model. What is suggested here, is that one in order to get as many of the uncertain models as possi-
should keep all 10 data sets, and design one F(z) that min- ble into the stable region for that frequency. One can also
imizes the sum of (or the average of) the costs for all 10 adjust the learning rate as a function of frequency, with a
frequency responses. lower learning speed producing improved robustness up
Some results of numerical experiments in [101] to a limit. The algorithm in [112] does both averaging and
and [104] illustrate this. Start with the third-order model adjusting the learning rate to be as fast as is consistent with
in (3.8) and set ω0 = 6(2π) and ζ = 0.1. Then include the uncertainty at each frequency.
472 R.W. Longman

Fig. 31. Frequency spectrum of belt velocity errors with feedback control only (left), and after applying RC designed not to fix a peak at 240 Hz.

9. Zero-Phase Low-Pass Filter Design: was that one should not try to fix the 240 Hz peak,
Robustification to High Frequency which corresponded to the tooth meshing frequency
Model Error of the fast timing belt. It was sufficiently far above
the bandwidth of the control system that the correc-
There are various reasons to want to apply a frequency tive action required a command 11 times as large as
cutoff of the learning process: the error being corrected. Fig. 31 shows the frequency
spectrum of the velocity error with feedback control
(1) One reason was mentioned in the previous section, alone, and after applying such an RC law [41].
to obtain stability in the presence of unmodeled high (3) Similarly, one may reach actuator limitations when
frequency dynamics. Usually, there are extra poles in the corrective action is too far above the bandwidth of
a system at high frequency which are very likely not the system.
present in one’s model. These are sometimes called (4) Some simple RC laws do not try to keep the frequency
parasitic poles, or residual modes. In most control response of |1 − GF| less than one all the way to
systems this is not a serious problem. As discussed Nyquist, and hence even in the design stage they need
in Section 5.3, in RC one needs a model G(z) that a cutoff filter.
is good to better than ±90◦ all the way to Nyquist
if one wants to make |1 − GF| less than unity for all One approach to making the cutoff aims to make a per-
frequencies. In continuous time one extra pole at high fect zero-phase filter that is one in the passband and zero in
enough frequency subtracts 90◦ , and in discrete time the stopband. This is discussed in detail below. As noted
it is likely to subtract 180◦ at Nyquist since the phase above, one is likely to pick the cutoff by applying the
there must be a multiple of 180◦ . Hence, we should learning law to the real world, and finding what frequency
expect to see slow instability in RC if we do not use components of the error grow. Because the output at high
a cutoff filter. We cannot design a cutoff for this pur- frequencies is small, the instability is very often quite slow
pose analytically or numerically. We have to observe to develop, so it can be reasonable to apply an unstable
the way the learning law behaves applied to the real law in hardware for purposes of tuning. Another option in
world, perhaps monitor the discrete Fourier transform producing the zero-phase filter needed for stabilization is
of the error as time progresses to determine what fre- to make a filter that minimally attenuates, just enough to
quencies are growing. And then tune the filter cutoff make the stability condition (4.4) satisfied. It is interest-
accordingly. ing to note that one can not only observe which frequency
(2) Perhaps one needs to cut off the learning process above components grow, but also how fast they grow, and this
some limit in order to be kind to the hardware. Exper- information tells one the amount of cutoff needed for stabi-
iments were run to obtain constant velocity of a belt lization at each frequency, as it indicates how far the polar
in a copy machine, in spite of periodic speed fluctu- frequency response plot goes outside the unit circle [113].
ations related to once around of each gear and each Fig. 32 shows the differences between the sensitivity trans-
belt in the timing belt drive. We were able to elimi- fer functions for these two approaches applied to a system
nate all peaks, but the machine was making so much having missing high frequency dynamics [113]. The effect
noise we expected we would be wearing it out. Per- is to attenuate error at some harmonics of the addressed
haps the ball bearings were rattling. The conclusion period just above the cutoff without being able to achieve
Theory and Design of Repetitive Control Systems 473

Fig. 32. Sensitivity transfer function behavior with a perfect cutoff filter (left) and a filter doing a minimal attenuation as needed to satisfy the stability
condition (right).

zero error, and then this benefit must be paid for by actually backward in time as forward in time, and the gain for
amplifying some higher harmonics of the error. Without any backward in time term must equal the gain for the
knowing what is wrong with one’s model one is not able to corresponding forward in time term. Then the optimiza-
make an evaluation of which approach gives the best error tion criterion is
levels. Here we simply examine how to design a sharp
jp
cutoff filter.
JH = α [1 − H(eiωj T )][1 − H(eiωj T )]∗
9.1. FIR Filter Design j=0

References [21, 128] use what is termed a Q filter as


N−1

a zero-phase low-pass filter. Perhaps because of real + [H(eiωj T )][H(eiωj T )]∗ (9.2)
time computation limits, these filters have been simple j=js
and low order. Here, we consider how we might get
the best possible performance, aiming for as close to where the first summation is over the passband, and the
zero error as possible. The material reported here comes second summation is over the stopband. Simply adjusting
from [98, 8], which consider how to make improved FIR the parameter α can significantly influence performance
filters specialized for the RC objective. as shown in Fig. 33. The RC performance in the passband
One might like to have a perfect zero-phase low-pass can only be as good as the filter is at approximating the
filter H(z), one that is unity up to the cutoff frequency and desired unity value. Any error leaves a nonzero forcing
then zero above this cutoff. Let us ignore for the moment function in equation (4.1) producing a nonzero steady-
the possible need for an interpolator I(z). Then the forcing state particular solution. The right plot still has some
function in the difference equation (4.1) is zero below the ripple in the passband, and the stopband peaks have
cutoff frequency, and is simply Y ∗ (z) − V (z) above the been accentuated by going to the higher α. Minimiza-
cutoff where no learning is attempted. The cutoff would tion of (9.2) simply requires the solution of a linear set
then be chosen so that |H(z)[1 − F(z)G(z)]| < 1 for all z of equations, as in the case of the compensator design in
on the unit circle. When the compensator designed based Section 6.2.
on our model becomes so poor that the term in square We can improve the design by imposing constraints
brackets becomes larger than unity in magnitude, then the on the passband that it does not exceed unity, and that
H(z) is made zero. Of course we would need to tune this in the DC gain is equal to unity, and then we can allow a
hardware, taking advantage of the fact that the instability transition band between the passband and the stopband.
in hardware is likely to be slow. Fig. 34 shows the results of introducing the equality and
The filter is an FIR filter of the form inequality constraints into the problem with α = 1. Keep-
ing the peaks below unity is important in obtaining the

n
highest possible cutoff in practice. Fig. 35 shows dramatic
H(z) = ak z k (9.1)
improvement in both the stopband and the passband of
k=−n
Fig. 34 when a transition band of 10% Nyquist is intro-
In order to make a zero-phase filter, this needs an odd duced between the top frequency in the first term in (9.2)
number of gains, with the same number of terms going and the lowest frequency in the second term.
474 R.W. Longman

Fig. 33. The magnitude frequency response of a zero-phase low-pass filter with a cutoff of 30% Nyquist using 51 gains. The left plot uses α = 1 and
the right uses α = 5000.

To illustrate how the improved filters can benefit


the design, we consider an example of designing the
RC compensator from noisy frequency response data
as in Section 6.4 [97]. Because the frequency response
information is not good at high frequency, it is neces-
sary to cut off below 63 Hz. However, if the filter with
α = 1 from Fig. 33 were used with the cutoff adjusted as
needed, it would have to cut off at 47.5 Hz as shown in
Fig. 36. Changing the cutoff filter to that with α = 5000
produces the results on the right of Fig. 36 that allow a
63 Hz cutoff of the learning process.
The minimization of (9.2) with equality and inequality
constraints on the magnitude of the frequency response is
accomplished using quadratic programming. Such codes
are easy to use and run very quickly for the problems of
designing these low-pass filters.
Fig. 34. The result of imposing a DC gain of unity, and inequality
constraint on passband magnitude, α = 1.
Quadratic Programming Problem: Given the sequence
of numbers e(k) to filter, the filtered values are
given by
f (k) = an e(k − n) + an−1 e(k − n + 1) + · · ·

+ a0 e(k) + a1 e(k + 1) + · · · + an e(k + n)


(9.3)
 T
The unknowns: x = a0 2a1 · · · 2an
 T
Coefficient matrix: bj = 1 cos θj · · · cos nθj
Normalized frequencies: θj = jπ/N; j = 0, 1, 2, . . . , N − 1
Passband frequencies: j = 0, 1, . . . , jp (want filter to be
equal to 1 for these j)
Stopband frequencies: j = js , . . . , N − 1 (js ≥ jp + 1,
want filter to have zero output at these j)
Transition band frequencies: jp + 1 ≤ j ≤ js − 1 (there is
Fig. 35. Introducing a 10% transition band into the design of Fig. 33. no transition band unless js > jp + 1 )
Theory and Design of Repetitive Control Systems 475

Fig. 36. Left: Adjusting the cutoff to the highest possible value when there is model error, using a filter with α = 1. Right: Improvement in the cutoff
frequency to 63 Hz obtained by using α = 5000.

Fig. 37. Effective cutoff frequency vs. intended cutoff frequency.

Optimization Criterion: get zero error for all frequency components of the error up
  to this cutoff. A very surprising property of the frequency
 jp

N−1  cutoff is discovered in [74, 51], show that the effective
J = min α [1 − bjT x]2 + [bjT x]2 cutoff of the learning can be much lower than the cutoff
x  
j=0 j=js frequency used in the filter design. Hence, we are forced
  to pick the filter cutoff frequency based on stability con-
1 T
= min x Px + cT x (9.4) siderations, and might feel unhappy that we are unable to
x 2
learn above this cutoff. And then we find that the situation
is worse, we fail to learn above a much lower frequency.
Constraints: The sensitivity transfer function from command or
disturbance to error, from equation (4.1) (not considering
bjT x ≤ 1j = 0, 1, . . . , jc
the interpolator I(z)) is
a0 + 2a1 + · · · + 2an = 1 (9.5) zp − H(z)
S(z) = (9.6)
zp − H(z)[1 − G(z)F(z)]
9.2. The Discrepancy Between Intended Cutoff Note that our aim is to make signals of period p time steps
and Effective Cutoff Frequency have zero error, and for these frequencies zp = 1. This
makes the sensitivity transfer function for RC the same
One picks the cutoff in designing H(z) as needed in order as for iterative learning control, so the ILC results in [74]
to satisfy |H(z)[1 − F(z)G(z)]| < 1. The intention, and also apply here. Fig. 37 illustrates the phenomenon. For
the expectation is that the resulting RC system will try to simplicity of interpretation, the system transfer function
476 R.W. Longman

G(z) is taken to be the same as a fifth-order Butterworth


filter for 100 Hz sample rate. And the zero-phase low-
pass filter H(z) uses the same Butterworth filter run both
forward and backward. On the left of the figure is the situ-
ation when the product F(z)G(z) remains large until well
above the intended cutoff. And we see that the intended
cutoff, the frequencies when H(z) decays quickly, cor-
respond to the frequency when the sensitivity transfer
function stops giving small error. So the intended cutoff
and the actual cutoff coincide. The right part of the figure
designs a cutoff for a high frequency in H(z) which is well
above the frequency when F(z)G(z) has started to decay.
Note that we are using a linear magnitude scale, but if we
were using the usual dB scale we would be able to observe Fig. 38. Sensitivity transfer function amplitude at cutoff frequency as a
that the magnitude of F(z)G(z) is not zero, just small. RC function of the value of G(z)F(z) assuming it is real valued.
design often aims to fix errors above the bandwidth of an
existing feedback control system, the learning might be
aims to keep the G(z)F(z) product close to unity, then the
slow depending on the RC law, but it can nevertheless
sensitivity transfer function will be near 0.5 as desired. If
be beneficial to continue learning even when F(z)G(z)
the product has decayed to 0.1 then the sensitivity transfer
is small. However, the effective frequency cutoff of the
function value is around 0.9 meaning that it has its cutoff
learning is shown by the sensitivity transfer function curve
frequency at a far lower frequency.
which cuts off at approximately 24 Hz (50% cutoff value)
Although RC design by (6.3) does not have G(z)F(z)
compared to the intended cutoff at 40 Hz. This, such a
decay at high frequencies, perhaps most designs do decay,
design is sacrificing learning to eliminate errors between
and if the decay is large enough one should expect to see
24 and 40 Hz.
the behavior described here. Note that if one needs to use
One can understand this phenomenon as follows. The
interpolation, the effect can be accentuated as described
H(z) aims to equal 1 below the cutoff and 0 above, but
below.
makes this transition spread over a range of frequencies.
When zp = 1 in (9.6), it can be written as 1−H divided by
1−H[1−GF]. Looking only at the numerator, one expects 9.3. Batch Zero-Phase Low-Pass Filtering
that it will produce zero below the cutoff as intended,
and go to one above the cutoff. But the denominator can In iterative learning control one can use zero phase IIR
change this. When GF gets small, the numerator and the filtering as one can do computations between runs, or one
denominator can look like a number divided by itself, can compute during runs and apply when ready to the
giving about unity as an answer, in spite the fact that 1−H next run [33, 32, 79]. This allows one to use very effective
is still trying to be zero. Hence, one can get the sensitiv- high order Butterworth filters. One filters the data set for-
ity transfer function to look like one, meaning it does not ward in time using such a filter, which puts in phase lag.
attenuate error, even though the numerator is trying to be Then one reverses the time history of the resulting out-
zero. put, runs that through the filter again, canceling the phase
Fig. 38 from [51] evaluates this effect assuming that lag and doubling the attenuation, and finally reverses the
G(z)F(z) is real. Note that the frequency domain-based time sequence of the result. The Butterworth filter does not
optimization (6.3) can make this product very close to real, suffer from the ripple going above unity gain, which was
depending on the number of gains. And many other design fixed for the FIR design by use of quadratic programming
approaches simply aim to make this real, as this guarantees above.
stability provided one does not use some very large gain. There are situations in RC where, due to real time
Because we are using zero-phase filters for the cutoff, we computation limitations, one wants to apply zero-phase
choose the frequency when H = 0.5 as the intended cutoff low-pass filtering in a batch mode. This can be done as sug-
frequency (this is the square of the bandwidth definition gested in [42, 43] with some discussion given in [70, 80].
that results if one applies a causal filter forward and then One could use the following approach, for example. Con-
backward in time to get zero phase). Then if the sensitivity tinue to use the same input signal until a new batch update
transfer function is also at 0.5 we would say the effective arrives. After it arrives, we start applying it to the sys-
cutoff is equal to the intended cutoff. If it is close to one, tem. Each step of the first period is using a new input
then the sensitivity transfer function cuts off at some lower signal, so we might allow two periods to reach steady-
frequency. In Fig. 38, if one uses the design of (6.3) that state response to this signal. Then we start the forward
Theory and Design of Repetitive Control Systems 477

Butterworth filtering at the start of the third period, and back. Reference [75] shows how doing this over a num-
continue for three periods. The first of these has some ber of periods spreads the dependence over more and
Butterworth filter transients related to the filter initial con- more data points. This section presents material related to
ditions, so we ignore the filter output for this period. When references [56, 9, 136]. For simplicity, consider the sim-
the filtering reaches the end of the third period, it starts fil- plest form of RC with a simple gain φ. When the period
tering backward on stored data and continues backward pT does not correspond to an integer value for p, one can
for two periods. The first of these contains transients of use interpolation to approximate the unknown e(k −p+1)
the backward filter related to its initial conditions, so that in terms of the known errors e(k−p− +1) and e(k−p+ +1)
period filter results are ignored. One records the result and use
for the second period going backward in time, and uses
it for the update of the RC action, starting at the next u(k) = a1 [u(k − p− ) + φe(k − p− + 1)]
period after the results are available. Of course, depend-
ing on the period of interest and the settling times of the + a2 [u(k − p+ ) + φe(k − p+ + 1)] (10.1)
system and of the filter, one might speed up the pro-
where p+ is the nearest integer of the period p (in time
cess above using fewer time steps for decay to steady
steps) on the positive side, and p− is the nearest integer on
state.
the negative side, and a1 = p+ − p and a1 + a2 = 1. More
Perhaps this is easiest implemented with a separate com-
generally, we can write the RC law in transform space with
puter running in parallel. And then an apply when ready
no cutoff filter as
approach can also allow one to perform additional moni-
toring tasks, such as checking for possible growth of error +
zp U(z) = I2 (z)[U(z) + F(z)E(z)] (10.2)
at some frequency, and adjusting the cutoff. But one can
also interweave the computation for each step of the fil- I2 (z) = a1 z + a2
ter updates with the real time control computer, so it only
requires a real time computation level capable of doing To improve on linear interpolation, one can consider cubic
a Butterworth filter update each time step. Note also that interpolation that interpolates using two past points and
the initial condition for the Butterworth filter can be a two future points. The I2 (z) above is replaced by
problem in ILC, where there is no data to use before the
start time and typical zero-phase filter code makes some I4 (z) = a1 z−1 + a2 + a3 z + a4 z2 (10.3)
choice of how to reflect initial time steps of input to get
initial conditions to start the filter. It is shown in [79] that α = p+ − p, β = 1 − α
this process can in fact produce instability in the ILC
a1 = −(1/6)αβ(1 + β); a2 = (1/2)(1 + α)β(1 + β)
updates. For the RC application here, we have all the
data we need for initial conditions, so this issue does not a3 = (1/2)(1 + α)α(1 + β); a4 = −(1/6)(1 + α)αβ
arise.
The conditions for convergence of a batch update RC are When the RC law is used to compute the difference
somewhat different than for real time RC, and are studied equation for the error as in (4.1), the value of p in that
in [42]. equation becomes the integer p+ used in (10.2). Of course,
one can reformulate to use p− instead, if that is closer to
the true period. Fig. 39 plots the frequency response of the
10. Design for Non-Integer Periods: linear interpolator in (10.2) and of a 12 gain interpolator
Interpolator Design or Low-Pass for different values of the fractional part of the period, d,
Filter Modification in period p, ranging from zero when no interpolator is
needed to d = 0.5 when the interpolation point is half
10.1. Interpolation way between the recorded time steps. Note that when d is
zero the interpolator has amplitude one at all frequencies.
When the period of interest is not an integer number of When d is not equal to zero, the interpolation acts as a
time steps, one might decide to simply use the nearest low-pass filter, so the output of the interpolation is always
integer value for p. For low frequencies this may not magnitude one or less. And when d reaches 0.5, the output
cause much difficulty, but at Nyquist frequency being of the filter goes to zero at Nyquist frequency.
off by half a time step is equivalent to being off by 90◦
since there are only two samples per period. If one is Observation: Any RC law that has been designed to
using a learning cutoff that is low enough, then the nearest satisfy the stability condition
integer may be satisfactory. Otherwise, one can use inter-
polation to approximate unmeasured values one period |H(z)[1 − F(z)G(z)]| < 1∀ z = eiωT (10.4)
478 R.W. Longman

Fig. 39. The magnitude frequency response for linear interpolation (left) and for 12 gain interpolation (right) for different values of the fractional time
step d.

Fig. 40. Steady-state error due to interpolation vs. addressed frequency. Left: linear interpolation. Right: cubic interpolation.

cannot be destabilized by introducing an interpolation fil- laws do so. Consider using the simplest form of RC, with
ter with the property that its magnitude frequency response F(z) = φz and φ = 1, on a first-order system given by the
is less than or equal to unity at all frequencies. first-order factor on the right of (3.8). The corresponding
To see more clearly the effects of interpolation, let us result is given in Fig. 41. The RC with interpolation fails
examine the steady-state error as a function of addressed to significantly attenuate the error at many frequencies.
frequency. With H(z) set to one in (4.1), the coefficient The conclusion is that if one has to use interpolation, one
zp − I(z) on the right of the equation is trying to make the will get much better performance if one uses an RC law
forcing function zero at the addressed frequencies. Any that aims to cancel the system dynamics in the frequency
error in doing so means there is a nonzero forcing function, domain.
and a nonzero steady-state error. We can plot this error as a In Section 9.2 the discrepancy between the design cut-
function of the chosen addressed frequency by substituting off frequency perhaps dictated by stability considerations,
it into the sensitivity transfer function (9.6), and replac- and the effective cutoff in the sensitivity transfer function
ing p by p+ , and H(z) by the chosen I(z). The magnitude was discussed. From [51], to understand the influence of
response is given in Fig. 40, for the case of designing an introducing the interpolation, note that one replaces H
eight coefficient compensator (6.2) that minimizes (6.3) by HI in the sensitivity transfer function S = [1 − HI]/
for one zero on the negative real axis at the asymptotic [1−HI(1−GF)]. To illustrate the effect, suppose that H is
location for a third-order pole excess (−3.732). This cor- 0.5 and that the interpolation makes HI equal 0.25. When
responds to considering a third-order system such as (3.8) GF is one, then S is 0.75 so that the cutoff has appeared
and using the method of (6.6) to cancel everything inside earlier. And when GF is 0.1, then S is 0.97 (compared to
the unit circle. Of course this design aims to cancel the 0.91 without I) and the sensitivity transfer function has cut
steady-state frequency response of the system. Not all RC off the learning at a much lower frequency.
Theory and Design of Repetitive Control Systems 479

Fig. 41. Steady-state error due to interpolation for first-order system using the simplest RC law. Linear interpolation left, cubic right.

10.2. Modification of Zero-Phase Low-Pass Filter This is no longer a standard quadratic programming prob-
lem. General purpose minimization routines can give
References [131, 144] propose to produce an FIR filter to answers but can also give one trouble in converging to
mimic the frequency response properties of a fraction of a an answer. Quadratic minimizations subject to such a spe-
time step error in the period, and this filter can simultane- cial form of quadratic constraint offers the opportunity to
ously act as a low-pass filter as well. Reference [9] uses create specialized software for the purpose. One approach
this idea together with the improved low-pass filter design is presented in [9].
methods of Section 9.1. One uses an FIR filter as in (6.2) Fig. 42 presents example filter behavior when the filter
and picks the coefficients to minimize is designed purely to produce the phase of a partial time
step lead of 0.25T . The value of n is 52, and the values

jL
of m are given in the figure, where these numbers are
JH = α[(eiωj T )d − Hd (eiωj T )][(eiωj T )d − Hd (eiωj T )]∗ as in (6.2).
j=0


N−1
10.3. Other Options
+ [Hd (eiωj T )][Hd (eiωj T )]∗ (10.5)
j=jR The approach to RC so far is based on looking back one
period, in the control law. This initially aims to eliminate
aiming to match the linear phase and unit magnitude of a
all error having that period, i.e. all error of the fundamental
partial time step delay, and also to have the frequency cut-
frequency with that period, and all harmonics. Introducing
off. The constraint we wish to impose, that the magnitude
a cutoff filter stops this above some frequency. Another
response of the filter should not exceed unity, becomes
possibility is to aim at specific frequencies alone, instead
[Hd (eiωj T )][Hd (eiωj T )]∗ ≤ 1 which is now a quadratic
of aiming for all frequencies of a specific period. Such an
constraint on a quadratic minimization:
approach is mentioned here because it has the property that

jL
N−1 there is no need for interpolation. To do this, one needs
JH = α (1 − bjT x)(1 − bjT x)∗ + (bjT x)(bjT x)∗ to find the error components on the sine and cosine of the
j=0 j=jR chosen frequencies. These functions tell you how to do
(10.6) any “interpolation” needed, i.e. if you know the function,
you can evaluate it at any time you want.
 T
x = x0 x1 · · · xn (real) Early experiments doing this are reported in [81].
References [88, 89, 16, 135, 67] develop what is termed
 T
bj = eiθj (d−m) eiθj (d−m+1) · · · eiθj (d−m+n) matched basis function RC. The projection algorithm from
adaptive control theory is used to find components of the
θj = (π/N)j; 0 < d < 1; jR ≥ jL + 1 input and components of the output on chosen basis func-
tions. These functions are sines and cosines of the chosen
(bjT x)(bjT x)∗ ≤ 1 for j = 0, 1, . . . , jL frequencies, but those used in the input and those used
in the output are related by the amplitude change and the
x0 + x 1 + · · · + x n = 1 phase change produced by the system transfer function,
480 R.W. Longman

Fig. 42. Magnitude and phase plots for several choices of FIR filter H(z) designed to mimic the phase response of a partial time step delay.

i.e. they are matched input–output pairs. RC uses the dis- and then adjust the DC gain to unity. This has the effect of
crete equivalent of an integral for every signal of the given canceling the phase of the system. No attempt is made to
period in order to converge to zero error when there is adjust the magnitude, as is done by (6.3). To understand
some model error, and similarly there is a discrete version how the approach works, consider that everything inside
of integration for each basis function component. After the unit circle has been canceled by F1 (z) leaving just the
finding the frequency components of the error, one applies factor (z + zO ) with a zero at −zO (for example, at the
the needed matched input frequency components to can- asymptotic location −3.73). For improved ease of under-
cel the error. Note that this produces linear equations with standing in this development, we have changed the sign
periodic coefficients. in the definition of zO . Then the product of this remaining
Reference [67, 135] use Floquet theory to evaluate term and the compensator design, before normalizing, is
performance of such a design, and this is sometimes
referred to as time raising. References [88, 89] do fre- (z + zO )(z + 1/zO )/z = (z + zO )(z−1 + zO )/zO (11.1)
quency domain raising to handle the periodic coefficients.
An interesting property is that after considerable mathe- For z on the unit circle to evaluate frequency response, this
matics, there is a time invariant z-transfer function form is equal to
of the matched basis function RC law that originally has
periodic coefficients. Some experimental results and some [1 + (eiωT + e−iωT )zO + zO
2
]/zO
experience in the need to adjust gains for different fre-
= [1 + 2 cos(ωT )zO + zO
2
]/zO (11.2)
quencies can be found in [16]. One of the motivations for
these publications is to be able to handle multiple unre- The angle ωT goes from zero to 180◦ at Nyquist. At
lated frequencies in the disturbance. A method of doing zero the numerator is equal to (1 + zO )2 and at 180◦ it
this starting from the basic formulations of this article is is equal to (1 − zO )2 , both numbers being positive. Note
presented in Section 15. that the derivative of the numerator with respect to ωT is
−2 sin(ωT )zO which is zero at zero frequency, goes pos-
itive (for negative zO ) for all frequencies up to Nyquist
11. RC Compensator Design:
when again it reaches zero derivative. Hence, the value
Alternative Approaches of the numerator monotonically increases from the pos-
itive value (1 + zO )2 to the positive value (1 − zO )2 as
There have been many RC laws generated over the last the frequency goes from zero to Nyquist. Now introduce
decades. We discuss only a few of them here. the normalization that makes the complete term equal to
+1 when z = +1 for zero frequency, and we observe that
11.1. Tomizuka Phase Cancellation Design the product of this zero term and the compensator is real
and positive for all frequencies, and that its magnitude is 1
An alternative design method to that suggested above at zero frequency and decays as the frequency goes up.
using (6.3) is given in [120, 35, 55]. Instead of canceling The normalized value when reaching Nyquist frequency
everything inside the unit circle and designing F2 (z) as is then given by
in (6.6) by minimizing (6.3), these references introduce a
new zero at the reciprocal location, and a pole at the origin, (1 − zO )2 /(1 + zO )2 (11.3)
Theory and Design of Repetitive Control Systems 481

11.2. Some Other FIR Phase Cancellation Designs

Various iterative learning control laws have as their main


aim to cancel the phase. And there are ways to make use
of these ILC laws for RC, as demonstrated in experiments
on a constant velocity timing belt drive system [41, 42]
(see also [80, 70]). One design, termed a (Euclidean norm)
contraction mapping law [52, 53], can be viewed as imple-
Fig. 43. Magnitude frequency response of 1 − F(z)G(z). = φG(z−1 ), in which
menting F(z)
  case |1 − GF| < 1
becomes 1 − φG(eiωT )G(e−iωT ) < 1. The two Gs rep-
resent a complex number times its complex conjugate and
are hence positive. And for φ small enough, this is auto-
matically stable. There are various ways to use this law.
The difference equation represented by G(z−1 ) can be run
backward in time on error data from the previous period
that is future to the time step one period back. To avoid
needing correct initial conditions running this equation
backward, one needs to start sufficiently ahead to have the
transients settled once the time step where the result is
needed is reached. An alternative is to apply the convolu-
tions sum solution to the future error values which is done
in [41, 42]. The computation time may limit the number of
Markov parameters one can use to make this computation.
Fig. 44. Magnitude plot of G(z)F(z) canceling poles and zeros
If so, one can apply a window to the process, as demon-
inside unit circle, and using Tomizuka compensator for the asymptotic strated in [18]. Basically, the window needs to eliminate
locations of zeros outside. Pole excesses 3, 5, 7, and 9, top to bottom. any cliff left at the point where the Markov parameters are
truncated.
A disadvantage of this law is that the learning rate is
Fig. 43 plots the magnitude frequency response of related to the square
 of the
 magnitude frequency response
|1 − G(z)F(z)| for the system G(z) = (z + zO ) and com- of the system G(eiωT ), making the learning very slow
pensator F(z) just designed, for the case of zO = −2. at high frequencies. One can modify the law to take out
And the plot starts at zero and increases monotonically the magnitude part of the update, aiming to make F(z)
to 8/9 at Nyquist frequency. The design makes a low- match G(e−iωT ) divided by this magnitude. In the finite
pass filter. The plot also shows the corresponding plots time ILC problems this law is termed a partial isometry
for the design using (6.3) (with VC set to zero), and the law [54, 80, 70]. The law is implemented in ILC by taking
plot obtained using the design based on Taylor expansions. the singular valued decomposition of the Toeplitz matrix
Fig. 44 shows the design method applied to the asymptotic of Markov parameters, setting all singular values to unity,
locations (as T tends to zero) of the zeros outside the unit taking the transpose of the matrix and applying it to the
circle in discrete time, for pole excesses of the continuous future data. Note that these singular values are asymptot-
time feedback control system of 3, 5, 7, and 9, show- ically related to the magnitude frequency response of the
ing the attenuation produced at high frequency. Because system, and this relationship is studied in detail in [17].
this design cancels phase, G(z)F(z) is real, and one can Again, one can make these computations to determine the
directly apply Fig. 38 to get an indication of the discrep- gains needed for the implementation to RC, computing the
ancy between low-pass filter cutoff and the effective cutoff ILC law and picking the gains from the center of the matrix
in the sensitivity transfer function. This discrepancy is not of gains, to avoid end effects. Reference [31] develops
particularly serious for this design approach, unless one this phase cancellation design for ILC, but does so purely
wants to cut off at a high percent of Nyquist frequency. But from frequency response, so the results apply directly to
remember that interpolation accentuates this discrepancy. RC, and the approach is done for MIMO. RC experiments
The advantages and disadvantages of the design approach using this law are also presented in [41]. Note that Fig. 17
in this section include, (1) the approach is rather simple, is the experimental polar frequency plot of G(z)F(z) for
(2) but it is not amenable to design directly from frequency a phase cancellation design developed by this approach.
response data so one must develop a transfer function The design is made from frequency response tests con-
model, (3) and it produces a decay of the learning rate verted to pulse response histories using ratios of output to
with frequency that might not be desired. input discrete Fourier transforms. Perhaps a better method
482 R.W. Longman

of designing the FIR filter is to simply reformulate (6.3)


to fit (6.2) to the phase cancellation task, and this too can
be done using frequency response data without any need
to make a transfer function model.

11.3. Linear Phase Lead RC

We include one more RC design method, which has the


advantage of being very simple, and does not necessar-
ily require a mathematical model or frequency response
information. Instead it can just be tuned in the hardware.
In [80, 70] it was presented as an ILC or RC method some-
what analogous to using a PD, PI, or PID controller in
classical control, as it only involves tuning a couple param-
eters. The compensator is chosen as F(z) = φzγ where φ
is the usual RC gain, and γ is an integer. In the simplest Fig. 45. Tuning the cutoff when using linear phase lead RC.
form of RC, γ was picked as one, or more precisely as the
time step delay through the system. Here, we artificially maximum accuracy based on having the highest possible
increase this number, producing a compensator that is just cutoff of the learning process.
a linear phase lead, zγ = (eiωT )γ produces a phase lead
of (γ − 1)ωT beyond the one step needed for the delay
through the system. This approach was presented in [132], 12. Startup of an RC System
and various properties were investigated, including auto-
mated tuning of the parameters, in [78, 137]. Again, [41] In iterative learning control each iteration is supposed to
presents the results of some experiments on the timing belt start from the same initial condition, and that initial con-
drive using linear phase lead RC. Danwei Wang has also dition is on the desired trajectory. RC is different. There
published several works on this topic, e.g. [130], and calls is only one startup, and this cannot happen when the feed-
the approach anticipatory ILC. back control system is turned on, it must wait to start until
This linear phase lead is a very simple compensator, and it has data from the error for a complete period to use in the
one does not need to work hard designing this compen- RC law. In addition, often the purpose of the RC system is
sator for the system. One can use experimental frequency to cancel a periodic disturbance external to the system, and
response data, or a model, and apply the linear phase this external disturbance might be in any phase of its period
lead for a range of integer leads γ , and observe which at the time the RC is started. And this means that at the
value keeps the product G(z)F(z) inside the unit circle to time of start up, one should expect a step discontinuity in
the highest possible frequency. Or equivalently, plot the the RC input to the feedback control system. And [15, 71]
magnitude |1 − G(z)F(z)| for z = exp(iωT ) for a range show that there will be images of this startup disconti-
of choices of γ , and pick that value for which the plot nuity that can take a long time to disappear. Figs. 46–48
goes above unity at the highest frequency, see for example come from [71] and illustrate the phenomenon. Consider a
Fig. 45 from [137] where m corresponds to γ . Pick this G(s) = 8.8/(s + 8.8) that is fed by a zero-order hold sam-
value and then design the cutoff filter to cut off the RC pro- pling at 200 Hz sample rate. Let the command be zero,
cess a small but safe distance below this frequency. Note and the objective of the control system is to cancel the
that [137] studied an automated on-line tuning process for influence of an output disturbance that is a cosine at 1 Hz
this RC design, and discovered that one can have a higher frequency. And use the simplest form of RC that uses a
cutoff if one uses a limit cycle, picking different phase simple gain φ = 1 times the error e(k − p + 1). Turning on
leads each run in a periodic manner. the RC when the time step corresponds to the output dis-
In the previous methods the cutoff filter was needed to turbance at its maximum value, produces the command
produce robustness to high-frequency model errors. This history u(k) in Fig. 46, with a discontinuity of the size
time the cutoff is most likely needed because even with our of the disturbance at the turn on time. This introduces
model we know that the plot will go outside the unit circle. high frequency components into the control action, and
And based on the model, a plot like Fig. 45 says where the for some RC laws high frequencies will take a long time
cutoff is needed. Clearly, this approach puts emphasis on to learn. Figs. 47 and 48 show the influence of the startup
simplicity of the design process, and the implementation discontinuity just after turning the system on, and after
(it only needs one error measurement to compute the con- 34 and 35 periods, and periods 64 and 65. The amplitude
trol action each time step), at the expense of not aiming for is decaying, the frequency of the error is moving upward
Theory and Design of Repetitive Control Systems 483

and the error is spreading with repetitions as it decreases in no images of startup, the method eliminates the difficulty
magnitude. automatically. However, if one chooses to put a gain in
There are various methods of trying to decrease this phe- front of the resulting design that is less than unity, then
nomenon. First, note that when one uses the recommended the images of startup will reappear. This is also true if one
design approach here from optimization of (6.3), there are uses a VC  = 0. Also, if one is using a zero-phase low-pass
filter as in Section 9, then the images of startup will be
smaller, and the lower the cutoff frequency, the smaller
the images. But it can still be helpful to use other methods
to attenuate the images as well. One approach is to mon-
itor the control action that the RC law would choose to
use as a function of time step. Before turning the RC on,
this will be a periodic function. Then pick that time step
in the period when the RC comes closest to making no
change in the command signal. The discontinuity at start
up is minimized, and hence the images of startup are also
minimized. This is not always possible. Perhaps gravity
force makes the errors to be corrected always have the
same sign and never go through zero. One can deal with
both situations by turning on the RC slowly, i.e. change
the gain φ from zero to the desired value linearly with time
Fig. 46. Command history showing initial jump when RC is turned on, over one period or less.
and showing images of this jump in early periods.

13. RC Compensator Design: Period


Unknown, or Higher Order RC for
Insensitivity to Period Fluctuations
Throughout this article we have assumed that we know the
period of interest. If the purpose of the RC system is to
follow a desired periodic command, then we should know
the period. But if the purpose is to eliminate the influence
of an external periodic disturbance, then we need a way to
stay synchronized with the disturbance. Note from Figs. 5
and 6 that the notches in the sensitivity transfer function
frequency response plots can be quite narrow. And if one
turns down the gain, they become even narrower. Hence,
any adaptive scheme coupled with the methods described
Fig. 47. The resulting early error history showing the effects of images in this article must be able to adapt very accurately to the
of startup. true period if one is to get good performance. Relatively

Fig. 48. Later error associated with images of startup: periods 34 and 35 (left), and periods 64 and 65 (right).
484 R.W. Longman

small errors move a long way up the sides of the notches, where the weights αj are chosen by the designer. If one
and can make the RC process not very effective. There are wants to think of this as creating a weighted average, then
various situations in which one has the ability to measure one must pick all positive weights, but this is not necessary.
the period. In the case of RC tests for the Thomas Jefferson Generalizing to an RC analogous to (3.3) produces
National Accelerator Facility discussed above, the distur-
bance is from imperfect rectification of AC to DC voltage, H(z)F(z)[α1 z(N−1)p + α2 z(N−2)p + · · · + αN ]
and one can easily get a trigger signal on the AC supply RN (z) =
zNp − H(z)[α1 z(N−1)p + α2 z(N−2)p + · · · + αN ]
voltage that will keep the RC action synchronized. Simi-
larly, when the disturbance is from a slight imbalance in a (13.2)
rotating wheel causing unwanted vibrations, one may be
which produces the difference equation analogous to (4.1)
able to get a trigger signal on that wheel shaft. We con-
sider that one should have such a sensor available to get {zNp − H(z)[1 − F(z)G(z)]
superior performance with the class of RC laws discussed
here. × [α1 z(N−1)p + α2 z(N−2)p + · · · + αN ]}E(z)

= {zNp − H(z)[α1 z(N−1)p + α2 z(N−2)p + · · · + αN ]}


13.1. Some Alternative Approaches
× [Y ∗ (z) − V (z)] (13.3)
Various approaches to uncertain periods are treated in
the literature [126, 47, 124, 125]. Methods investigated by If one wants to converge to zero error, set H to unity,
the author and co-workers are reported in [14, 30, 86, 87] and then to obtain zero forcing function in this difference
where the emphasis is on situations where one does not equation requires that
have some signal like the trigger signal above, the period α1 + α2 + · · · + αN = 1 (13.4)
can change with time, and one wants to identify the period
in real time while canceling the disturbance effect, and one Of course, if there is a cutoff filter, then to get zero error
may also have more than one disturbance period as dis- below the cutoff also requires this relation to hold among
cussed in Section 15. The methods do not necessarily build the weights (and H must be unity there).
on the RC structure presented here, and can involve real If one considers the case when no cutoff filter is used,
time disturbance identification as in [14, 30] or use of a then (13.4) allows one to factor the denominator of the RC
phase lock loop as in [86]. Also, methods are developed transfer function as in the second- and third-order laws
that make use of the matched basis function RC concepts
from [67, 16, 88, 89]. F(z)(α1 zp + α2 )
R2 (z) =
(zp − 1)(zp + α2 )

13.2. Theory of Higher Order RC F(z)(α1 z2p + α2 zp + α3 )


R3 (z) = (13.5)
(zp − 1)[z2p + (1 − α1 )zp + α3 ]
Higher order RC refers to RC laws that make use of
This allows an important interpretation. One could com-
error information from not just the previous period, but
bine the extra terms into the definition of F(z), making a
additional previous periods as well [117, 118, 63, 64, 92].
new compensator with a different symbol, and then one
Generally, it has been difficult to determine any clear ben-
can consider that higher order RC can be viewed as first-
efits for higher order RC. But [117, 118] suggest using
order RC with a high order compensator, provided H is
higher order RC with negative coefficients on the measure-
set to unity. In the second-order case, it is clear that by
ments for some previous period errors, in order to make
going to second order, one has introduced p additional
RC less sensitive to period error or period fluctuations.
poles around a circle, satisfying zp = −α2 , and p addi-
References [63, 64] study this possibility in detail along
tional zeros satisfying zp = −α2 /α1 . The third-order RC
with higher order RC in general, examining the problem
is less obvious, but it supplies 2p extra poles and 2p extra
from the point of view of frequency response, and from the
zeros, again around circles. Reference [63] classifies the
point of view of root locus. The following mathematical
set of possible configurations of these circles and the root
background comes from [64].
distribution on these circles into six classes as a function
The Nth order RC using the simplest form of RC takes
of the relative values of the weights αj .
the form
The stability theory can be more complicated for higher

N order RC, and it can be much more difficult to establish
u(k) = αj [u(k − jp) + φe(k − jp + 1)] (13.1) whether a system is stable. Note that the heuristic argu-
j=1 ment for the monotonic decay condition of equation (4.3)
Theory and Design of Repetitive Control Systems 485

does not make sense for higher order RC. The development law is using more measurements, one might expect that the
of a necessary and sufficient condition for asymptotic sta- noise in measurements might average out somewhat, giv-
bility can parallel the development leading to Theorem 1 ing better error levels. The simulation studies made before
of Section 4. The function corresponding to equation (4.6) normalization seemed to support this conjecture [92].
for testing stability is But [64] decided to normalize each higher order RC so that
the DC gain was identical. When this was done, numerical
Pc (z) = z−Np H(z)[1 − F(z)G(z)] comparisons seemed to indicate that higher order RC nor-
mally made the final error level worse. The waterbed effect
× [α1 z(N−1)p + α2 z(N−2)p + · · · + αN ] (13.6) requires that if there are frequencies for which errors are
Theorem 2 is generalized to higher order RC by replacing attenuated, then there must be other frequencies for which
equation (4.4) by the errors from disturbances are amplified by the RC con-
trol [115, 116]. Reference [117] suggests that weights that
|H(z)[1 − F(z)G(z)] decay going back in repetitions should improve the perfor-
 mance at unaddressed frequencies. Before introducing the

× [α1 z(N−1)p + α2 z(N−2)p + · · · + αN ] < 1 (13.7) normalization, such an improvement seemed quite clear,
with the amplification of unaddressed frequencies being
giving a condition that is both necessary and sufficient for more uniform and smaller in general. However, when the
asymptotic stability for all possible periods p. RC designs being compared were normalized for the same
A simpler sufficient condition for stability is learning rate at DC, most of the benefit disappeared. The
numerical experience suggests that there is some benefit
|H(z)[1 − F(z)G(z)]| of higher order RC in this regard, but the benefit is rather
  small. However, as discussed below, by using negative
 
< 1/ max α1 z(N−1)p + α2 z(N−2)p + · · · + αN  weights it is possible to make the notches at the addressed
|z|=1
frequencies much wider [117].
(13.8)

These conditions must hold for all z around the unit circle. 13.3. Higher Order RC Used to Widen Notches
Suppose that all αj are positive. Then constraint (13.4)
indicates that the right hand side of (13.8) will be unity. The Widening the notches has benefit in applications where the
conclusion is that the sufficient condition for stability of period is subject to some random fluctuations. It could also
first-order RC given by (4.4) is also a sufficient condition be useful when one wants to make an adaptive algorithm
for stability of higher order RC under these conditions. that identifies the period in real time, so that the accuracy
If we need to establish stability for higher order RC of the identification is not so critical. Of course, you will
when one or more αj is negative, then one must use the have to pay for this benefit in performance by accepting
Theorem 1 or Theorem 2 results above. Of course (13.8) increased amplification of errors at other frequencies.
can be used, but it is very restrictive for such systems. Reference [117] suggests using weights for second-
The high power of z means that one must be very careful order RC given by α1 = 1.85, α2 = −0.85, and for
with the numerical computations for Theorem 1 or 2. For third-order RC α1 = 2.93, α2 = −2.93, α3 = 1, in
the special case when H is unity, we can consider that the order to widen the notches. Consider the very simple case
higher order RC is a first-order RC with a high order com- of a transfer function G(z)F(z) = 1 (this applies to the
pensator F(z) N (z), and then another sufficient condition transfer function, not just the frequency response). This
can be written from (4.4) as

|1 − F(z) N (z)G(z)| < 1 (13.9)

α1 z(N−1)p + α2 z(N−2)p + · · · + αN
N (z) =
z(N−1)p + (1 − α1 )z(N−2)p + · · · + (1 − α1 − · · · − αN−1 )

All of the above development ignored the possible need


for interpolation. One expects that going to higher order situation could only apply in the real world in special cases
would normally make it more important that one make use when all system poles and zeros are inside the unit circle
of interpolation. Several comparisons of the performance so that one can make a stable compensator that cancels
of higher order RC vs. first-order RC were made. One of them. But it helps develop understanding. Now modify
the anticipated advantages of higher order RC was a lower the compensator to include a new overall gain φ, so that
final error level in the presence of noise. Because the RC when it is zero, the roots are at the poles of the open loop
486 R.W. Longman

Fig. 49. Root locus plots for second-order (left) and third-order (right) RC using negative weights to widen notches, applied to system transfer
function G(z)F(z) = 1.

transfer function, and we can investigate how the roots angles this time, instead of being tangential to the unit
move as this gain is increased, turning on the RC. The left circle, will depart radially inward, and outward with an
of Fig. 49 presents the root locus for the second-order case. angle of +60◦ and −60◦ from radially outward. Therefore,
The extra p poles and extra p zeros introduced by going this design immediately goes unstable when the gain is
to second order are inside the unit circle with the zeros raised from zero. The right hand plot of Fig. 49 shows a
further inside the unit circle than the poles, and both are close up view of the root behavior as the gain is increased.
on the radial lines from the origin to the original p poles It uses slightly modified gains for computational reasons.
on the unit circle. To understand what is happening, it is The design is unstable until φ = 0.486 when the zeros
easier to slightly modify the gains to α1 = 2, α2 = −1. introduced inside the unit circle are able to attract the locus
Then the characteristic polynomial when the gain is zero inside the unit circle.
becomes z2p −2zp +1 = (zp −1)2 indicating that the design The top left of Fig. 50 gives the corresponding mag-
makes each of the poles on the unit circle into a double nitude of the sensitivity transfer function for the three
pole. The departure angle in that case will be tangent to designs, using a unity gain when possible, but for the third-
the unit circle, but the presence of a zero radially inside order RC the gain is indicated. The top right plot is a detail.
the unit circle will attract the locus making it move inward For the second-order RC, the right hand side of the dif-
when the gain is raised, becoming stable. For small gains ference equation (13.3) is the numerator of the sensitivity
the learning will be very slow because of this tangential transfer function, and when we look at the magnitude it
departure. When the gains are returned to their original will contain |zp − 1|2 . This will be a quadratic minimum.
specified value, the new p poles are no longer on top of the The first-order RC will have instead |zp − 1| which has a
original poles on the unit circle, and have moved inward cusp as a minimum. This is observed in the top right of the
slightly. The poles on the unit circle depart radially inward figure. Also in the top right we see the third-order RC go
so there is a short interval of gains where the decay rate to zero at two points close to the addressed frequency, one
decreases more quickly, while the new poles inside depart below and one above it. Note that one pays dramatically
radially outward to meet somewhere between and then for the widened notches. The influence of disturbances at
break away at right angles. What happens after that can be frequencies between the frequencies addressed by the RC,
very much influenced by what the actual system is. can be amplified by a factor of almost 8. The bottom left
The third-order design comes close to aiming to make of Fig. 50 presents results for the case of canceling every-
the original p poles on the unit circle into triple roots. One thing inside the unit circle, and there is one zero outside the
of the third-order RC root locus patters described in [63] unit circle at the asymptotic location for a third-order pole
puts the 2p extra poles all on one circle, with one pole a excess. It is compensated using the method of Tomizuka.
little behind and the other pole a little ahead of the original The bottom right in Fig. 50 uses a design based on (6.3)
poles on the unit circle. If the new poles were on the unit picking n and m to allow it to introduce three more zeros
circle then the sensitivity transfer function would go to outside approximately on the circle of the original zero
zero at the frequencies for the original poles and also go to outside, and to introduce four zeros inside (which will be
zero at some frequency just below and at some frequency similar to the reciprocal values). This design is similar to
just above the original addressed frequencies. If the poles repeating the Tomizuka patter four times around the cir-
are moved slightly in, they will make a minimum, but not cle, but we comment that this compensator is not as good
go all the way to zero. Note, however, that the departure as one that places all of the allowed zeros outside the unit
Theory and Design of Repetitive Control Systems 487

Fig. 50. Sensitivity transfer function magnitude plots for second- and third-order RC used to widen the notches, for several systems.

circle. Note that with this compensator, the results are influences this final error level. This was pointed out
essentially identical to those in the top left of the figure. in [102] where is was suggested that one might want to use
Hence, the design method of (6.3) improves the ability to an adaptive overall gain, using a large gain for fast learn-
get wide notches. ing initially, and turning it down as steady state is reached
in order to reach smaller final error levels in the presence
of noise. Reference [53] created a fuzzy gain adjustment
14. Dealing with Noise scheme for this purpose.
Various publications have considered the use of Kalman
When there is plant and measurement noise in the feed- filtering in RC in order to reduce the effects of noise, see
back control system, one cannot converge to zero error. for example [2, 110, 83]. Reference [100] did a detailed
Because the RC uses measured error from the previous study of the benefits and disadvantages of using a Kalman
period with the assumption that the same error will appear filter (one should actually use a Kalman smoother as one
again if nothing is changed in the input, the RC law will act has data both before and after the time steps for which one
on the nonrepeating part of the signal, amplifying the error wants filtered results). Some of the conclusions are listed
level due to noise. Reference [58] develops the equations below.
to compute the final error level due to noise. It is some-
what more complicated than in routine feedback control, Random Noise Effects: Of course, using a Kalman filter
because the plant and measurement noise influence the can significantly reduce the effects of random plant and
feedback control system, and they also influence the RC measurement noise on the output of an RC system. RC
system. also has the option of turning down an overall RC gain,
Of course, as the plant and measurement noise covari- and this has the effect of decreasing the importance of
ances increase, so does the covariance of the final error any one measurement, and of averaging the results from
level due to noise. Also, the gain of the RC law directly previous periods. Therefore, turning down the gain does
488 R.W. Longman

Fig. 51. Sensitivity transfer function at addressed frequencies from command to true error without a Kalman filter (left) and with a Kalman filter
(right), when the a of (3.8) is 10% too low in the physical model.

decrease the noise level, but no reasonable reduction in


the gain will reach the error levels that can be achieved by
a Kalman filter.

Model Error: The Kalman filter can do such a good job


because it makes use of knowledge that the data comes
from a given system model. As a result model errors make
significant errors in the RC output when a Kalman filter is
introduced. The left plot in Fig. 51 from [100] considers
model (3.8) and designs the RC law with the parameter a
of the model 10% lower than the true world. The RC still
converges to a numerical zero error. When a Kalman filter
is introduced using the same 10% error in a, the result
is given in the right plot of Fig. 51 which only plots the
error at the frequencies having the addressed period. One
observes that a 10% error in this one parameter produces
more than a 10% error in the converged output at most Fig. 52. Sensitivity transfer function from a disturbance to the output
frequencies. The conclusion is that one should only use of (3.8) to the error in the output of a repetitive controller, addressed
a Kalman filter in RC when the noise level is sufficiently frequencies only.
high that the error due to noise dominates any error in your
deterministic modeling of the system. plotting only those frequencies which are addressed by the
RC design, i.e. the RC without the Kalman filter produces
Periodic Disturbances: RC has two main applications, zero error. The conclusion is that, introducing a Kalman
one is to aim for zero tracking error following a periodic filter into RC destroys the ability of the RC system to can-
command, and the other is to aim for zero tracking error cel the influence of periodic deterministic disturbances.
in the presence of a periodic disturbance. In the latter cat- At low frequencies up to a couple bandwidths of the feed-
egory, if one wants to use a Kalman filter to construct the back control system there is some attenuations, but for
state estimate and improve the output estimate, one needs most frequencies the disturbance is unaltered by the RC.
to add the same disturbance to the filter as well. Most
often one does not pretend to know the disturbance per-
fectly, but this would be necessary for the filter to produce 15. RC for Multiple Unrelated Periods
a good estimate of the state. Fig. 52 from [100] studies RC
with a Kalman filter applied to system (3.8), with a peri- The RC laws developed above apply to only one dis-
odic disturbance added to the output of (3.8). It plots the turbance (or command) period. Thus they can address
sensitivity transfer function from this output disturbance a disturbance containing a constant or DC component,
to the error in the RC output as a function of frequency, a fundamental frequency of the given period, and all
Theory and Design of Repetitive Control Systems 489

Fig. 53. The structure of the multiple period repetitive controller.

harmonics up to the Nyquist frequency or up to the cutoff is an RC law designed for the jth period, φj is a separate
frequency. However, there are various applications that gain introduced for each period, and Ij (z) is any interpola-
have multiple unrelated periods. For example, spacecraft tor one wants to use for the jth period. In case the low-pass
often use three reaction wheels as actuators for the atti- filter H(z) is modified to also perform the phase adjust-
tude control system, alternatively they can use four control ment associated with a partial time step in the period, then
moment gyros. Any imbalance in these wheels produces it needs a subscript j, and the interpolator can be elimi-
vibrations. One can use RC to cancel the vibrations at the nated. The pj is the period in time steps if it is an integer,
location of fine pointing equipment. This application ini- or it is the nearest integer period in time steps if one uses
tially motivated the research on matched basis function nearest integer in place of interpolation. If interpolation or
RC discussed above [88, 89, 16, 135, 67]. Projecting onto Hj (z) is used to adjust for a partial time step in the period,
sines and cosines of the frequencies for each disturbance then it again is the nearest integer time step to the actual
allows it to address multiple unrelated frequencies. period. A new aspect to this design problem is that one
Yamada and co-workers in references [139, 140] might want to introduce the gain φj and adjust it differently
develop a method of dealing with multiple unrelated for each frequency. No such gain was included in the orig-
frequencies that builds on the usual structure of RC sys- inal optimized design by the methods of Sections 6 or 7.
tems as discussed here. References [72, 73] convert their The learning rate, however, is normally similar for differ-
approach to make use of the design methods presented ent frequencies when measured in units of the period, so
here. One simply needs to plug in the improved compen- different periods learn at different rates in time steps.
sator designed by the above techniques, the zero-phase From the block diagram, one can compute that
low-pass filter design as above, and use nearest integer 
period, or include interpolation explicitly, or as part of the W (z) = R(z)E(z) = [(R1 + R2 + R3 )
low-pass filter. For simplicity consider three such periods.
 2
The structure of the RC system is given in Fig. 53, for the + (R1 R2 + R2 R3 + R3 R1 )G + R1 R2 R3 G ]E(z)
case of three unrelated periods. Note that this block dia- (15.2)
gram is adjusting the command U(z) to a feedback control

system G(z), but one could reconfigure the diagram to be and that (1 + RG)E = (Y ∗ − V ). Then the difference
adjusting the error signal as in Fig. 3, where the R(z) rep- equation of the multiperiod repetitive controller is given by

resents the set of Rj (z) and G(z) blocks. In Fig. 53, Y ∗ (z)  
is the desired periodic output (which can be constant or [zp1 − HI1 (1 − φ1 G)][zp2 − HI2 (1 − φ2 G)]
a linear combination of frequencies of the given periods), 
 × [zp3 − HI3 (1 − φ3 G)]E
G(z) = F(z)G(z), and
= [zp1 − HI1 ][zp2 − HI2 ][zp3 − HI3 ](YD − V )
φj H(z)Ij (z)
Rj (z) = pj (15.1) (15.3)
z − H(z)Ij (z)
490 R.W. Longman

Fig. 54. Examples of systems with periodic measurement errors, belt steering problem (left), and computer disk drives (right).

The characteristic polynomial for the three period RC to ignore the signature associated with the irregularity of
is composed of the product of the characteristic poly- the belt edge. It worked quite well, but the approach has
nomials for each period. Hence, the design process is low bandwidth.
now decoupled, and one can separately design an RC for There has been considerable research effort related to
each period that is asymptotically stable by the methods tracking the written in tracks on computer disk drives. As
given previously, and the resulting three period RC will be described earlier, the read/write head must follow these
asymptotically stable. First, produce a single period design tracks to read or write data on the disk. The tracks are put
that satisfies Theorem 2, being asymptotically stable for all on the disk while it is rotating, and instead of being perfect
periods, designed as asymptotically stable without includ- circles, the vibrations create an irregular circle with some
ing the interpolation, and designed with gain φ = 1. Then higher frequency components as illustrated on the right
when this design is used for a factor in square brackets on of Fig. 54. Reference [20] considers this to be a standard
the left of (15.3), with any specific period, and any chosen RC problem, and seeks to find a command that makes the
reduced gain, and any needed linear or cubic interpola- feedback control system more closely follow the tracks,
tion, one is guaranteed that all roots of that factor of the allowing tracks to be more closely spaced, and the disk
characteristic polynomial are inside the unit circle. When to have more storage. A completely different formulation
applied to all three factors, then all factors represent poly- chooses to think of the irregularities of the track radius
nomials with all roots inside the unit circle. Hence, the RC as measurement disturbances, and learn to eliminate them
design for multiple periods is asymptotically stable. from the position error signal (PES) used by the feedback
control system. This is a much more effective objective,
it is much easier for a control system to follow a con-
16. A Different Kind of RC: Eliminating stant command than it is to follow a command with high
Periodic Measurement Error frequency content.
This reformulation was presented in [45] and is patented
There is a class of physical problems for which there is a by Seagate. Fig. 55 presents the block diagram structure.
periodic measurement disturbance, and one would like to The repetitive controller has the familiar form and transfer
eliminate these disturbances from your feedback signal. function, analogous to (3.2) and (3.3), given by
The left part of Fig. 54 shows a belt steering system from U(z) = M(z)Q(z)z−p [U(z) + F(z)E(z)] (16.1)
a copy machine. The belt is shown looking onto it, and
looking at its edge as it rolls over the drive roll. The belt U(z) M(z)Q(z)F(z)
L(z) = = p
moves paper and one would like the paper, or equivalently E(z) z − M(z)Q(z)
any mass element of the belt, to move in a straight line.
where F(z) is the compensator as before. The
Such belts can drift to one side or the other, so there is a
control system that tips the steering roll to keep the belt 1 1 − z−p
Q(z) = 1 − (16.2)
centered. The sensor for this feedback control system is p 1 − z−1
an edge sensor of the belt. Unfortunately, the belt must be
cut, and then sown together at a seam. Any inaccuracy in is a DC removal filter to avoid learning the DC error
the cut, and any mismatch at the seam makes the edge not portion. And
straight, and represents a measurement error which is peri- 1 !
odic. Reference [42] developed a control system to learn M(z) = 1 + z−p + z−2p + · · · + z−(N−1)p (16.3)
N
Theory and Design of Repetitive Control Systems 491

Fig. 55. Computer disk drive repetitive control system to eliminate periodic measurement error.

is a repetition based moving average filter to extract the This is an extremely important difference between
periodic portion of the signal for the learning update. RC to eliminate periodic measurement disturbances,
Note that this makes the design a higher order RC sys- and the standard RC problem. Observe the following
tem. The point is to average through data and positive items:
coefficients, all the same, are used. Note also that in this
• The numerator of K(z)P(z) might come from feed-
application, there is no issue of needing a sensor to stay
ing a continuous time plant with a zero-order hold.
synchronized. Comparing the L(z) here to the R(z) in
Hence, this numerator could contain zeros outside the
(3.3) we note that there is no need for interpolation in
unit circle that are introduced by the discretization
this application. Also, we will see below that the need
process.
for a zero-phase low-pass cutoff filter is likely to be gone
• But these zeros only appear in making up part of the
as well.
numerator of 1 + K(z)P(z). And the numerator is the
When this new repetitive controller is placed in the block
characteristic equation of the original disk drive con-
diagram, the PES E(z) is the solution of the following
trol system, and hence should have all roots inside
difference equation analogous to (4.1)
the unit circle. We conclude that we do not expect to
  have zeros outside the unit circle influencing our RC
zp − M(z)Q(z) [1 − F(z)S(z)] E(z) design.
  • The numerator of S(z) after clearing fractions, is just
= zp − zM(z)Q(z) S(z) [R(z) − W (z) − P(z)D(z)] the denominators of the controller and the plant, K(z)
(16.4) and P(z), and one expects that each of these would have
stable characteristic polynomials.
Here, R(z) is the constant reference signal for the track, • Therefore, the inverse of the transfer function S(z) is
D(z) is the plant disturbance, and W (z) is the written-in also stable. Unlike the usual RC design, we should be
repeatable run out WI-RRO, i.e. the error deviation from able to use the inverse of the transfer function making
circular for the written in track. We seek to learn this error it reasonable to design the compensator as
and subtract it from the contaminated measurements.
What is very new in this problem is that in place F(z) = cS −1 (z) (16.6)
of the closed loop transfer function G(z) for the given
feedback control system, we have the sensitivity transfer where c is a gain to be chosen.
function of the feedback control system without the RC • Sensitivity transfer functions have special properties.
block The number of zeros equals the number of poles. The
usual G(z) has more poles that zeros, and this makes
1 the gain get small at high frequencies. And this makes
S(z) = (16.5) the plots such as Fig. 17 tend to the boundary of the
1 + K(z)P(z)
492 R.W. Longman

stability region for many RC design methods. A miss- runout, which is dominated by the WI-RRO, the repeat-
ing pole in the model, or a missing complex conjugate able runout associated with the variations in the radius of
pair of poles can easily produce enough phase so that the written in tracks. The NRRO refers to non-repeatable
the compensator fails to keep (4.4) satisfied all the runout from nonrepeating error sources. And together they
way to Nyquist frequency. In the sensitivity transfer form the PES or position error. The table gives the 3 − σ
function such missing poles influence both the denom- values for each. The final result is that the RC law reduces
inator and the numerator. And it is much less likely the RRO by 98% within 15 revolutions. And this cor-
that they produce enough error to send the system responds to a 36% reduction in the 3 − σ value of the
unstable. PES. The profile learned by the repetitive controller can
• The analog of equation 4.3 is be stored on the disk at the factory, and used thereafter
by the disk drive. Of course one could also use the RC
zp E(z) = {M(z)Q(z) [1 − F(z)S(z)]}E(z) (16.7) in real time during operation of the servo track following
loop.
which suggests the heuristic monotonic decay condition
analogous to (4.4) is


 
M(ejωT )Q(ejωT ) 1 − F(ejωT )S(ejωT )  < 1 ∀ ω
(16.8)

Note that the development of the generalization of


Theorem 2 to apply to higher order RC, given by
equation (13.7) applies to this case as well, since our
weights are all positive for the N previous periods.
Hence, (16.8) represents a necessary and sufficient
condition for asymptotic stability of an RC system to
eliminate periodic measurement error for all possible
periods.
Fig. 56. Polar plot of M(z)Q(z)[1 − F(z)S(z)].
Fig. 56 gives the polar plot of the function inside the
absolute values in (16.8) based on experimental frequency
response tests and the designed M(z), Q(z), F(z). If the Table 1. Comparison of the 3 − σ values of RRO, NRRO,
plot stays within the unit circle, the system is stable. For and PES
this type of RC, it appears that this can be unambiguous, PES
that there seems to be no danger of going outside the cir- 3 − σ of RRO NRRO (µ-inch)
cle. Fig. 57 presents the PES error spectrum before and
Before learning 2.456 2.146 3.262
after learning, and Table 1 gives the various error lev-
After learning 0.057 2.074 2.075
els before and after. The error contains RRO, repeatable

Fig. 57. Frequency spectrum of the PES position error before the learning process (left), and with RC designed to eliminate periodic measurement
disturbances (right).
Theory and Design of Repetitive Control Systems 493

References 18. Chen K, Longman RW. Stability issues using FIR filtering
in repetitive control. Adv Astronaut Sci 2002; 112: 2002,
1. Ahn H-S, Chen Y, Moore KL. Iterative learning control: 1321–1339
brief survey and categorization. IEEE Trans Systems Man 19. Chen YQ, Moore KL. Comments on United States
Cybern 2007; 37: 1099–1122 Patent 3,555,252—Learning control of actuators in con-
trol systems. In: International Conference on Automation,
2. Ahn H-S, Moore KL, Chen Y-Q. Kalman filter-augmented
Robotics, and Control 2000, Singapore
iterative learning control on the iteration domain. In:
20. Chew K-K, Tomizuka M. Digital control of repetitive errors
Proceedings of the 2006 American Control Conference, in disk drive systems. In: Proceedings of the 1989 American
Minneapolis, MN June 2006, 250–255 Control Conference 1989, Pittsburgh, PA, 540–548, also in
3. Akogyeram RA, Longman RW, Hutton A, Juang J-N. On the IEEE Control Syst Mag 1990; 10(1): 16–20
the choice of method to cancel 60 Hz disturbances in beam 21. Chew K-K, Tomizuka M. Steady-state and stochastic per-
position and energy. In: Proceedings of the 2001 Particle formance of a modified discrete-time prototype repetitive
Accelerator Conference, 2001, Chicago, 1270–1272 controller. In: ASME Winter Annual Meeting 1988, also in
4. Aqui D, Anwar G, Tsai M-C, Tomizuka M. Cartesian space ASME J Dyn Syst Meas Control 1990: 35–41
repetitive control for two link planar robot manipulators. In: 22. Chew MS, Longman RW, Phan MQ. Intelligent mecha-
Proceedings of the 2nd USA-Japan Symposium on Flexible nisms. In: Proceedings of the 28th Biennial Mechanisms
Automation, July 1988, Minneapolis, 197–204 and Robotics Conference 2004, ASME Design Engineer-
5. Arimoto S, Kawamura S, Miyazaki F. Bettering operation ing Technical Conference DETC2004-57553, Salt Lake
of robots by learning. J Robot Syst 1984; 1(2): 123–140 City, UT
6. Arimoto S. Bettering operation of dynamic systems by 23. Craig JJ. Adaptive control of manipulators through repeated
learning: a new control theory for servomechanism or trials. In: Proceedings of the American Control Conference
mechatronics systems. In: Proceedings of the 23rd IEEE 1984, 1566–1573
Conference on Decision and Control, 1984, 1064 24. Cosner C, Anwar G, Tomizuka M. Plug-in repetitive con-
7. Astrom K, Hagander P, Strenby J. Zeros of sampled sys- trol for industrial robotic manipulators. In: Proceedings of
tems. In: Proceedings of the 19th IEEE Conference on the 1990 IEEE International Conference on Robotics and
Decision and Control, 1980, 1077–1081 Automation 1990, 2, 1970–1975
8. Bao J, Longman RW. Enhancements of repetitive con- 25. Costa-Castello R, Grino R, Fossas E. Odd-harmonic digi-
tal repetitive control of a single-phase current active filter.
trol using specialized FIR zero-phase filter designs. Adv
IEEE Trans Power Electron 2004; 19: 1060–1068
Astronaut Sci 2008; 129: 1413–1432
26. Edwards JB. Modelling of coal and mineral extraction
9. Bao J, Longman RW, Kostina EA, Wang DW, Wang Y. processes. In: Nicholson H (ed), Modelling of Dynamic
Improved repetitive control filter design for both learning Systems, Chapter 7, IEE Control Engineering 1981, Series
frequency cutoff and interpolation. In: Proceedings of the 13, Peter Peregrinus Ltd, Stevanage
AIAA/AAS Astrodynamics Specialist Conference 2008, 27. Edwards JB. Stability problems in the control of linear
Honolulu, Hawaii multipass prcesses. Proc IEE 1974; 121(11): 1425–1432
10. Brown HM, Phan MQ, Lee SC, Longman RW. Robusti- 28. Edwards JB, Greenberg JM. Longitudinal interactions in
fied repetitive controllers with monotonic convergence for multipass processes. Proc IEE 1977; 124(4): 385–392
multiple-input multiple-output systems. Adv Astronaut Sci 29. Edwards JB, Owens DH. Analysis and Control of Multi-
2007; 129: 1893–1912 pass Processes. Research Studies Press (then a Division of
11. Bien Z, Xu JX (eds). Iterative Learning Control: Analysis, Wiley), ISBN 0 471 10163 X, 1982
Design, Integration and Applications. Kluwer Academic 30. Edwards SG, Agrawal BN, Phan MQ, Longman RW.
Publishers, Boston, 1998 Disturbance identification and rejection experiments on
12. Casalino G, Bartolini G. A learning procedure for an Ultra Quiet Platform. Adv Astronaut Sci 1999; 103:
the control of movements of robotic manipulators. In: 633–651
IASTED Symposium on Robotics and Automation 1984, 31. Elci H, Longman RW, Phan M, Juang J-N, Ugoletti R. Auto-
Amsterdam, 108–111 mated learning control through model updating for preci-
13. Chen H-J, Agrawal BN, Longman RW, Phan MQ, sion motion control. Adaptive Structures and Composite
Frequency-domain clear-box disturbance rejection. Adv Materials: Analysis and Applications, ASME, Nov 1994,
Astronaut Sci 2000; 105: 73–92 AD-Vol. 45/MD-Vol. 54, 299–314
14. Chen H-J, Agrawal BN, Longman RW, Phan MP, 32. Elci H, Longman RW, Phan M, Juang J-N, Ugoletti R.
Discrete frequency based learning control for precision
Edwards SG. Rejection of multiple periodic distur-
motion control. In: Proceedings of the 1994 IEEE Interna-
bances using MELMS with disturbance identification. Adv
tional Conference on Systems, Man, and Cybernetics 1994,
Astronaut Sci 2002; 108: 587–606 San Antonio, TX, 2767–2773
15. Chen H-J, Longman RW. The importance of smooth updates 33. Elci H, Phan M, Longman RW, Juang J-N, Ugoletti R.
in producing good error levels in repetitive control. In: Experiments in the use of learning control for maximum
Proceedings of the 38th IEEE Conference on Decision and precision robot trajectory tracking. In: Proceedings of the
Control 1999, Phoenix AZ, 258–263 1994 Conference on Information Sciences and Systems
16. Chen H-J, Longman RW, Agrawal BN. Approaches to 1994, Princeton, NJ, 951–958
matched basis function repetitive control. Adv Astronaut 34. Garimella SS, Srinivasan K. Application of repetitive con-
Sci 2002; 109: 931–950 trol to eccentricity compensation in rolling. J Dyn Syst Meas
17. Chen K, Longman RW. Creating short time equivalents of Control 1996; 118(4): 657–634
frequency cutoff for robustness in learning control. Adv 35. Gross E, Tomizuka M, Messner W. Cancellation of discrete
Astronaut Sci 2003; 114: 95–114 time nonminimum phase zeros by feedforward control.
494 R.W. Longman

ASME Paper No. 92-WA/DSC-8, November 1992, also 53. Jang HS, Longman RW. An update on a monotonic learning
ASME J Dyn Syst Meas Control 1994; 116(1): 24–32 control law and some fuzzy logic learning gain adjustment
36. Hara S, Yamamoto Y. Synthesis of repetitive control sys- techniques. Adv Astronaut Sci 1996; 90: 301–318
tems and its applications. In: Proceedings of the 24th IEEE 54. Jang HS, Longman RW. Design of digital learning con-
Conference on Decision and Control 1985, Fort Lauderdale, trollers using a partial isometry. Adv Astronaut Sci 1996;
FL, 326–327 93: 137–152
37. Hara S, Omata T, Nakano M. Stability of repetitive con- 55. Jayasuriya S, Tomizuka M. Feedforward controllers for
trol systems. In: Proceedings of the 24th IEEE Conference perfect tracking that does not invert plant zeros outside
on Decision and Control 1985, Fort Lauderdale, FL, the unit circle. In: Proceedings of the 1996 IFAC World
1387–1392 Congress 1993, 3, Sydney, Australia, 91–94
38. Hara S, Omata T, Nakano M. Stability condition and synthe- 56. Kang W, Longman RW. The effect of interpolation
sis methods for repetitive control system. Trans Soc Instrum on stability and performance in repetitive control. Adv
Control Eng 1986; 22(1): 36–42 Astronaut Sci 2006; 123: 1163–1182
39. Hara S, Yamamoto Y. Stability of multivariable repetitive 57. Kim DH, Tsao T. Robust performance control of electro-
control systems—stability condition and class of stabilizing hydraulic actuators for electronic cam motion generation.
controllers. Trans Soc Instrum Control Eng 1986; 22(12): IEEE Trans Control Syst Technol 2000; 8: 220–227
1256–1261 58. LeVoci P, Longman RW. Frequency domain prediction of
40. Hara S, Yamamoto Y, Omata T, Nakano M. Repetitive final error due to noise in learning and repetitive control.
control system: a new type of servo system for peri- Adv Astronaut Sci 2002; 112: 1341–1359
odic exogenous signals. IEEE Trans Autom Control 1988; 59. Lee SC, Phan MQ, Longman RW. Multiple-model design
AC-33(7): 659–668 of robustified repetitive controllers with optimized conver-
41. Hsin YP, Longman RW, Solcz EJ, de Jong J. Experimental gence rate. In: Proceedings of the 2006 AIAA Guidance,
comparisons of four repetitive control algorithms. In: Pro- Navigation, and Control Conference, Keystone, CO, Aug
ceedings of the 31st Annual Conference on Information Sci- 2006
ences and Systems 1997, Johns Hopkins University, Depart- 60. Li J, Longman RW, Schulz VH, Bock HG. The choice of
ment of Electrical and Computer Engineering, Baltimore, appropriate cost functionals for optimizing the operating
Maryland, 854–860 speed of robots. Adv Astronaut Sci 1998; 97: 1821–1840
42. Hsin YP, Longman RW, Solcz EJ, de Jong J. Experiments 61. Li J, Longman RW, Schulz VH, Bock HG. Implementing
bridging learning and repetitive control. Adv Astronaut Sci time optimal robot maneuvers using realistic actuator con-
straints and learning control. Adv Astronaut Sci 1998; 99:
1997; 95: 671–690
355–374
43. Hsin YP, Longman RW, Solcz EJ, de Jong J. Stabilization
62. Li Y, Longman RW. Better holds can make worse intersam-
due to finite word length in repetitive and learning control.
ple error in digital learning control. In: Proceedings of the
Adv Astronaut Sci 1998; 97: 817–836
2006 AIAA/AAS Astrodynamics Specialist Conference,
44. Hsin YP, Longman RW, Solcz EJ, de Jong J. A repetitive
Keystone, CO, Aug 2006
control law designed to eliminate periodic measurement
63. Lo C-P, Longman RW. Root locus analysis of higher order
disturbances. Adv Astronaut Sci 1998; 97: 837–849 repetitive control. Adv Astronaut Sci 2005; 120: 2021–2040
45. Hsin YP, Longman RW. Repetitive control to eliminate peri- 64. Lo C-P, Longman RW. Frequency response analysis of
odic measurement disturbances: application to disk drives. higher order repetitive control. Adv Astronaut Sci 2006;
Adv Astronaut Sci 2003; 114: 135–150 123: 1183–1202
46. Huang Y-C, Longman RW. The source of the often observed 65. Longman RW, Xu K, Phan MQ. Design of repetitive
property of initial convergence followed by divergence in controllers in the frequency domain for multi-input multi-
learning and repetitive control. Adv Astronaut Sci 1996; 90: output systems. Adv Astronaut Sci 2008; 129: 1593–1612
555–572 66. Longman RW, Yeol JW, Ryu YS. Placing the repetitive con-
47. Hu JS. Variable structure digital repetitive controller. In: troller inside or outside the feedback loop: simultaneously
Proceedings of the American Control Conference 1992, achieving the feedback and repetitive control objectives.
2686–2690 Adv Astronaut Sci 2007; 127: 1703–1722
48. Inoue T et al. High accuracy control magnet power supply of 67. Longman RW, Akogyeram R, Hutton A, Juang J-N.
proton synchrotron in recurrent operation. Trans Inst Electr Stability of matched basis function repetitive control. Adv
Eng Jpn 1980; C100(7): 234–240 Astronaut Sci 2000; 105: 33–52
49. Inoue T, Iwai S, Nakano M. High accuracy control of 68. Longman RW, Akogyeram R, Juang J-N, Hutton A. Control
play-back servo system. Trans Inst Electr Eng Jpn 1981; law design for eliminating periodic disturbances above
C101(4): 89–96 Nyquist frequency. In: Proceedings of the AIAA/AAS
50. Inoue T, Nakano M, Iwai S. High accuracy control of a Astrodynamics Conference, Denver, CO, August 2000,
proton synchrotron magnet power supply. In: Proceedings 418–432
of the 8th World Congress of IFAC 1981, 216–221 69. Longman RW, Akogyeram R, Hutton A, Juang J-N. Trade-
51. Isik MC, Longman RW. Explaining and evaluating the offs between feedback, feedforward, and repetitive control
discrepancy between the intended and the actual cutoff fre- for systems subject to periodic disturbances. Adv Astronaut
quency in repetitive control. Adv Astronaut Sci 2010; 136: Sci 2002; 108: 1281–1300
1581–1598 70. Longman RW. Iterative learning control and repetitive con-
52. Jang HS, Longman RW. A new learning control law trol for engineering practice. Int J Control 2000; 73(10):
with monotonic decay of the tracking error norm. 930–954
In: Proceedings of the Thirty-Second Annual Allerton 71. Longman RW, Bao J. On the periodic images of start-
Conference on Communication, Control, and Computing up in repetitive control. Adv Astronaut Sci , 2007; 127:
1994, Monticello, Illinois, 314–323 1743–1762
Theory and Design of Repetitive Control Systems 495

72. Longman RW, Yeol JW, Ryu YS. Improved methods to can- the frequency domain. Adv Astronaut Sci 2005; 119:
cel multiple unrelated periodic disturbances by repetitive 1581–1600
control. Adv Astronaut Sci 2006; 123: 199–218 89. Nagashima M, Longman RW. The effect of averaging in
73. Longman RW, Yeol JW, Ryu YS. Tuning and performance matched basis function real time repetitive control. Adv
of robust multiple-period repetitive control. Adv Astronaut Astronaut Sci 2003; 114: 75–94
Sci 2006; 124: 687–705 90. Nakano M, Hara S. Microprocessor-based repetitive
74. Longman RW, Kang W. Issues in robustification of itera- control. Microprocess-Based Control Syst 1986: 279–296
tive learning control using a zero-phase filter cutoff. Adv 91. Nakano T, Inoue T, Yamamoto Y, Hara S. Repetitive
Astronaut Sci 2007; 127: 1683–1702 Control. SICE Publications, 1989
75. Longman RW, Huang Y-C. The phenomenon of appar- 92. Oh SJ, Longman RW. Analysis of stability and performance
ent convergence followed by divergence in learning and in higher order repetitive control. Adv Astronaut Sci 2004;
repetitive control. In: Beigi HSM (Guest Editor) Intelligent 116: 1291–1310
Automation and Soft Computing, Special Issue on Learning 93. Oh SJ, Longman RW, Hsin Y-P. The possible block dia-
and Repetitive Control, 2002; 8(2): 107–128 (Journal gram configurations for repetitive control to cancel periodic
version of [46].) plant or measurement disturbances. In: Proceedings of the
76. Longman RW, Huang Y-C. Use of unstable repetitive AIAA/AAS Astrodynamics Specialist Conference 2004,
control for improved tracking accuracy. ASME, 1994, Providence, RI
AD-vol. 45/MD-vol. 54, 315–324. Also, J Chin Soc Mech 94. Omata T, Hara S, Nakano M. Nonlinear repetitive con-
Eng, Special Issue on Dynamics and Control, 1998; 19(1): trol with application to trajectory control of manipulators.
81–93 J Robot Syst 1987; 4(5): 631–652
77. Longman RW. On the interaction between theory, exper- 95. Omata T, Nakano M, Inoue T. Applications of repetitive
iments, and simulation in developing practical learn- control method to multivariable systems. Trans SICE 1984;
ing control algorithms. Galkowski K, Longman RW, 20: 795–800
Rogers E (eds), Special Issue: Multidimensional Systems 96. Owens DH. Stability of multipass processes. Proc IEE
and Iterative Learning Control, Int J Appl Math Computer 1977; 124(11): 1079–1082
Sci 2003; 13(1): 101–111 97. Panomruttanarug B, Longman RW. Designing optimized
78. Longman RW, Wirkander S-L. Automated tuning con- FIR repetitive controllers from noisy frequency response
cepts for iterative learning and repetitive control laws. In: data. Adv Astronaut Sci 2007; 127: 1723–1742
Proceedings of the 37th IEEE Conference on Decision and 98. Panomruttanarug B, Longman RW. Frequency based opti-
Control, Tampa, FL, Dec 1998, 192–198 mal design of FIR zero-phase filters and compensators for
79. Longman RW, Songchon T. Trade-offs in designing learn- robust repetitive control. Adv Astronaut Sci 2006; 123:
ing/repetitive controllers using zero-phase filtering for long 2006, 219–238
term stability. Adv Astronaut Sci 1999; 102: 243–263 99. Panomruttanarug B, Longman RW. Repetitive controller
80. Longman RW. Designing iterative learning and repetitive design using optimization in the frequency domain.
controllers. In: Bien, Xu (eds), Iterative Learning Control: In: Proceedings of the 2004 AIAA/AAS Astrodynamics
Analysis, Design, Integration and Applications. Kluwer Specialist Conference 2004, Providence, RI
Academic Publishers, Boston, 1998, 107–146 100. Panomruttanarug B, Longman RW. The advantages and
81. Messner W, Kempf C, Tomizuka M, Horowitz R. A com- disadvantages of Kalman filtering in repetitive control.
parison of four discrete time repetitive control algorithms. Adv Astronaut Sci 2008; 129: 1433–1452
In: Proceedings of the American Control Conference 1972, 101. Panomruttanarug B, Longman RW, Phan MQ. Multiple
2700–2704, also in IEEE Control Syst Mag 1993; 13(6): model robustification of iterative learning and repetitive
48–54 control laws including design from frequency response data.
82. Middleton RH, Goodwin GC, Longman RW. A method Adv Astronaut Sci 2009; 134: 2259–2278
for improving the dynamic accuracy of a robot perform- 102. Phan M, Longman RW. A Mathematical theory of learn-
ing a repetitive task. Int J Robot Res 1989; 8: 67–74. Also, ing control for linear discrete multivariable systems. In:
University of Newcastle, Newcastle, Australia, Department Proceedings of the AIAA/AAS Astrodynamics Conference
of Electrical Engineering Technical Report EE8546, 1985 1988, Minneapolis, Minnesota, 740–746
83. Moore KL. An iterative learning control algorithm for 103. Phan MQ, Longman RW, Moore KL. Unified formulation
systems with measurement noise. In: Proceedings of the of linear iterative learning control. Adv Astronaut Sci 2000;
38th IEEE Conference on Decision and Control 1999, 105: 93–111
Phoenix, AZ, 270–275 104. Phan MQ, Longman RW, Panomruttanarug B, Lee SC.
84. Moore KL. Iterative learning control for deterministic sys- Robustification of iterative learning control and repetitive
tems, Springer-Verlag Series on Advances in Industrial control by averaging. Symposium on Learning Control,
Control, Springer-Verlag, London, January 1993 IEEE Conference on Decision and Control, Shanghai,
85. Moore K, Xu J-X (Guest Editors), Special issue on iterative China, December 2009
learning control. Int J Control 2000, 73(10) 105. Phetkong N, Chew MS, Longman RW. Morphing mecha-
86. Nagashima M, Longman RW. Cancellation of unknown nisms Part 1: using iterative learning control to morph cam
periodic disturbances by PLL./adaptive matched basis func- follower motion. Am J Appl Sci 2005; 2(5): 897–903
tion repetitive control. Adv Astronaut Sci 2005; 120: 106. Phetkong N, Chew MS, Longman RW. Morphing mecha-
2041–2060 nisms Part 2: using repetitive control to morph cam follower
87. Nagashima M, Longman RW. Comparison of methods for motion. Am J Appl Sci 2005; 2(5): 904–909
rejecting multiple frequency disturbances with frequency 107. Pierre DA. Reformulated Nyquist criterion for discrete time
tracking. Adv Astronaut Sci 2005; 120: 2061–2080 systems. IEEE Trans Educ 1989; 32: 59–61
88. Nagashima M, Longman RW. Stability and performance 108. Rogers E, Galkowski K, Owens DH. Control Systems
analysis of matched basis function repetitive control in Theory and Applications for Linear Repetitive Processes.
496 R.W. Longman

Lecture Notes in Control and Information Sciences 2007; for non-circular machining. J Dyn Syst Meas Control 1994;
349, Springer Verlag 116: 24–32
109. Rogers E, Owens DH. Stability Analysis for Linear 129. Uchiyama M. Formulation of high-speed motion pattern of
Repetitive Processes. Springer Verlag, Berlin, 1992 a mechanical arm by trial (in Japanese). Trans Soc Instrum
110. Saab SS. On a discrete-time stochastic learning con- Control Eng 1978; 14: 706–712
trol algorithm. IEEE Trans Autom Control 2001; 46(8): 130. Wang D. On D-type and P-type ILC designs and anticipa-
1333–1336 tory approach. Int J Control 2000; 73(10): 890–901
111. Sadegh N, Horowitz R, Kao W-W, Tomizuka M. A uni- 131. Wang Y. Robust Repetitive Learning Control With Appli-
fied approach to design of adaptive and repetitive con- cation to PWM DC/AC Converters. PhD Dissertation,
trollers for robotic manipulators. In: Proceedings of the Nanyang Technological University, Singapore, 2007
2nd USA-Japan Symposium on Flexible Automation 1988, 132. Wang Y, Longman RW. Use of non-causal digital signal
Minneapolis, 223–232, also in the ASME J Dyn Syst Meas processing in learning and repetitive control. Adv Astronaut
Control 1990; 112(4): 618–629 Sci 1996; 90: 649–668
112. Shi Y, Longman RW, Phan MQ. An algorithm for robustifi- 133. Watanabe K, Yamatari M. Stabilization of repetitive con-
cation of repetitive control to parameter uncertainties. Adv trol system—spectral decomposition approach. Trans Soc
Astronaut Sci, 2010; 136: 1953–1966 Instrum Control Eng 1986; 22(5): 535–541
113. Shi Y, Longman RW. The influence on stability robustness 134. Welch PD. The use of FFT for the estimation of power
of compromising on the zero tracking error requirement in spectra: a method based on time averaging over short, mod-
repetitive control. Adv Astronaut Sci, to appear ified periodograms. IEEE Trans Audio Electroacoust 1967;
114. Songschon S, Longman RW. Comparison of the stability AU-15: 70–73
boundary and the frequency response stability condition in 135. Wen H-P, Longman RW. Floquet stability analysis of distur-
learning and repetitive control. Int J Appl Math Comput Sci bance cancellation using iterative basis function feedback.
2003; 13(2): 169–177 Adv Astronaut Sci 1999; 102: 783–802
115. Songchon T, Longman RW. Iterative learning control and 136. Wen H-P, Longman RW. Repetitive control methods when
the waterbed effect. In: Proceedings of the AIAA/AAS the disturbance period is not an integer multiple of the
Astrodynamics Conference 2000, Denver, CO, 444–453 sample time. Adv Astronaut Sci 2002; 108: 1301–1320
116. Songchon T, Longman RW. On the waterbed effect in repet- 137. Wirkander S-L, Longman RW. Limit cycles for improved
itive control using zero-phase filtering. Adv Astronaut Sci performance in self-tuning learning control. Adv Astronaut
2002; 108: 1321–1340 Sci 1999; 102: 763–781
117. Steinbuch M. Repetitive control for systems with uncertain 138. Xu K, Longman RW. Use of Taylor expansions of the
period. Automatica 2002; 38(12): 2103–2109 inverse model to design FIR repetitive controllers. Adv
118. Steinbuch M, Weiland S, van den Erenbeemt J, Singh T. Astronaut Sci 2009; 134: 1073–1088
On noise and period time sensitivity in high order repetitive 139. Yamada M, Riadh Z, Funahashi Y. Design of robust repeti-
control. In: Proceedings of the 43rd IEEE Conference on tive control system for multiple periods. In: Proceedings of
Decision and Control 2004 the 39th IEEE Conference on Decision and Control 2000,
119. Takanishi K, Phan MQ, Longman RW. Multiple-model 3739–3744
probabilistic design of robust iterative learning controllers. 140. Yamada M, Riadh Z, Funahashi Y. Discrete-time repetitive
Trans North Am Manuf Res Inst 2005; 33: 533–540 control systems with multiple periods. In: Proceedings of
120. Tomizuka M. Zero phase error tracking algorithm for digital 6th International Workshop on Advanced Motion Control
control. J Dyn Syst Meas Control 1987; 109(1): 65–68 2000, 228–233
121. Tomizuka M, Kempf C. Design of discrete time repeti- 141. Yamamoto Y, Hara S. The internal model principle and
tive controllers with applications to mechanical systems. stabilizability of repetitive control system. Trans Soc
In: Proceedings of the 11th IFAC World Congress 1990, Instrum Control Eng 1987; 22(8): 830–834
Tallinn, Estonia, Vol. 5, 234–239 142. Yeol YW, Longman RW. Time and frequency domain eval-
122. Tomizuka M, Tsao T-C, Chew K-K. Analysis and synthe- uation of settling time in repetitive control. In: Proceedings
sis of discrete time repetitive controllers. J Dyn Syst Meas of the AIAA/AAS Astrodynamics Specialist Conference
Control 1989; 111: 353–358 2008, Hawaii
123. Tsai M-C, Anwar G, Tomizuka M. Discrete time repet- 143. Yeol YW, Longman RW, Ryu YS. On the settling time in
itive control for robot manipulators. In: Proceedings of repetitive control systems. In: Proceedings of the 17th IFAC
the 1988 IEEE International Conference on Robotics and World Congress 2008, Seoul, Korea
Automation 1988, 1341–1346 144. Zhang B, Zhou K, Wang Y, Wang D. Performance improve-
124. Tsao TC, Nemani M. Asymptotic rejection of periodic dis- ment of repetitive controlled PWM inverters: a phase-lead
turbances with uncertain period In: Proceedings of the 1992 compensation solution. Int J Circuit Theory Appl, to appear
American Control Conference 1992, 2696–2699 145. Zhou K, Wang D. Digital repetitive learning controller for
125. Tsao TC, Qian XY, Nemani M. RC for asymptotic tracking three phase CVCF PWM inverter. IEEE Trans Ind Electron
of periodic signals with uncertain period. J Dyn Syst Meas 2001: 820–830
Control 2000; 122: 364–368 146. Zhou K, Wang D, Low K. Periodic errors elimination in
126. Tsao TC, Qian XY, Nemani M. Repetitive control for CVCF PWM dc/ac converter systems: Repetitive control
asymptotic tracking of periodic signals with an uncertain approach. IEE Proc 2000; 147: 694–700
period. J Dyn Syst Meas Control 2000; 122(2), 364–368 147. Zhou K, Wang D, Xu G. Repetitive controlled three phase
127. Tsao T-C, Tomizuka M. Adaptive and repetitive control reversible PWM rectifier. In: Proceedings of the American
algorithms for noncircular machining. In: Proceedings of Control Conference 2000, 125–129
the American Control Conference 1988
128. Tsao TC, Tomizuka M. Robust adaptive and repetitive
digital tracking control and application to a hydraulic servo
Reproduced with permission of the copyright owner. Further reproduction prohibited without permission.

You might also like