Content uploaded by Xu Chen
Author content
All content in this area was uploaded by Xu Chen on Nov 25, 2015
Content may be subject to copyright.
Selective Model Inversion and Adaptive Disturbance Observer For
Rejection of Time-varying Vibrations On An Active Suspension
Xu Chen and Masayoshi Tomizuka
Abstract— This paper presents an adaptive control
scheme for identifying and rejecting unknown and/or
time-varying narrow-band vibrations. We discuss an idea
of selective model inversion (SMI) for a (possibly non-
minimum phase) plant dynamics at multiple narrow fre-
quency regions, so that vibrations can be estimated and
canceled by feedback. By taking advantage of the structure
of the disturbance model, we can reduce the adaptation
to identify the minimum amount of parameters, achieve
accurate parameter estimation under noisy environments,
and flexibly reject the narrow-band disturbances with clear
tuning intuitions. Evaluation of the proposed algorithm is
performed via simulation and experiments on a benchmark
system for active vibration control.
I. Introduction
The rejection of multiple narrow-band disturbances
is a fundamental problem in many mechanical systems
that involve periodic motions. For example, the shak-
ing mechanism in active suspensions [1], the rotating
disks in hard disk drives [2], and the cooling fans for
computer products [3], all generate vibrations that are
composed of sinusoidal components in nature. Chal-
lenges of the problem are that we seldom have accurate
knowledge of the disturbance frequencies, and that in
many applications the disturbance spectra may change
w.r.t. time and/or among different products. In various
situations, hardware limitations or excessive re-design
cost make it infeasible to reduce these disturbance by
system reconstruction, and it is only possible to address
the problem from the control-engineering perspective.
As narrow-band vibrations are composed of si-
nusoidal signal components, controllers can be cus-
tomized to incorporate the disturbance structure for
asymptotic disturbance rejection. This internal-model-
principle [4] based perspective has been investigated in
feedback control design in [1], [3], [5]–[7], among which
[5], [6] used state-space designs, and [1], [3], [7] applied
Youla Parameterization, a.k.a. all stabilizing controllers,
with a Finite Impulse Response (FIR) adaptive Q filter.
Alternatively, the disturbance frequency can be firstly
estimated and then applied for controller design. This
indirect-adaptive-control perspective has been consid-
ered in [8]–[10].
In this paper we discuss a new adaptive incorpo-
ration of the internal model principle for rejection of
narrow-band disturbances. Different from FIR-based
X. Chen and M. Tomizuka are with Department of Mechanical En-
gineering, University of California, Berkeley, CA, 94720, USA (email:
maxchen@me.berkeley.edu;tomizuka@me.berkeley.edu)
adaptive algorithms, we construct the design with Infi-
nite Impulse Response (IIR) filters and inverse system
models. Applying these considerations we are able to
obtain a structured controller parameterization that re-
quires the minimum amount of adaptation parameters.
An additional consideration is that adaptation on IIR
structures enables the usage of adaptation algorithms
that use the parallel predictor, which is essential for
accurate parameter convergence under noisy environ-
ments [11]. Finally, with the inverse-model based de-
sign, the internal signals in the proposed algorithm
have clear physical meanings. This helps the tuning
of the algorithm, particularly in industrial applications.
The controller structure is an extension of the idea
in [2]. The main part of this paper, i.e., the design
of inverse models, the derivation of the cascaded IIR
filters, and the adaptation algorithm for time-varying
disturbance rejection are, however, all newly devel-
oped. An additional contribution is the application to
a new class of systems that has characteristics quite
different from the hard disk drive in [2].
The solid line in Fig. 1 shows the frequency response
of the active suspension system on which our algorithm
is evaluated. This system serves as a benchmark on
adaptive regulation in [12]. It has a group of resonant
and anti-resonant modes, especially at around 50 and
100 Hz. Additionally, the system is open-loop stable
but has multiple lightly damped zeros at mid frequen-
cies and nonminimum-phase zeros at high frequencies.
These characteristics place additional challenges not
just for adaptive disturbance rejection, but also for
general feedback control [13].
50 100 150 200 250 300 350 400
−80
−60
−40
−20
0
20
Gain (dB)
50 100 150 200 250 300 350 400
−180
−90
0
90
180
Phase (degree)
Frequency (Hz)
identified model
experimental data
Fig. 1. Frequency response of the plant
II. Selective Model Inversion
Fig. 2 shows the proposed control scheme. We have
the following relevant signals and transfer functions:
•P(z−1) and ˆ
P(z−1): the plant under control and its
identified model;
•C(z−1): a baseline controller designed to provide a
robustly stable closed loop;
•d(k) and ˆ
d(k): the actual (unmeasurable) disturbance
and its online estimate (note that ˆ
d(k)=P(q−1)u(k)+
d(k)−ˆ
P(q−1)u(k)≈d(k), where q−1is the one-step-delay
operator1);
•y(k): measured residual error;
•Parameter adaptation algorithm: provides online
information of the characteristics of ˆ
d(k);
•c(k): the compensation signal to asymptotically
reject the narrow-band disturbance in d(k);
•P−1
m(z−1) and z−m: these are constructed such that:
(i) Pm(z−1) has a relative degree of zero (and hence
P−1
m(z−1) is realizable); (ii) P−1
m(z−1) is stable; and (iii)
within the frequency range of the possible distur-
bances, P(z−1)z=ejω≈z−mPm(z−1)z=ejω, namely, P−1
m(z−1)
is a nominal inverse (without delays) model of P(z−1).
1
( )
Q z
−
d
(k
)
C
(z
¡
1
)
c
(k
)
0
^
d
(k
)
u(k
)
y(k
)
P
(z
¡
1
)
^
P
(z
¡
1
)
z
¡
m
P
¡
1
m
(z
¡
1
)
Fig. 2. Structure of the proposed control scheme
The intuition of the block-diagram construction is
to design the disturbance observer (estimator) to gen-
erate the compensation signal c(k) that approximates
P−1(q−1)d(k) if d(k) contains just narrow-band vibra-
tions. This forms the idea of a narrow-band disturbance
observer [2]. To see this, ignore first the shaded blocks
(about parameter adaptation) in Fig. 2, then the control
signal u(k)flows through two paths to reach the sum-
ming junction before Q(z−1): one from the plant P(z−1)
to the inverse P−1
m(z−1), and the other through z−m.
Hence the effect of u(k) gets canceled at the entrance of
Q(z−1), and only the filtered disturbance P−1
m(q−1)d(k)
enters the filter Q(z−1). To develop the structure of
Q(z−1), we can derive the sensitivity function, namely,
1In this paper, P(z−1), P(q−1), and P(e−jω) are used to denote
respectively the transfer function, the pulse transfer function, and
the frequency response of P(z−1) at ω.
the transfer function from d(k) to y(k):
S(z−1)=Gd2y(z−1)=1−z−mQ(z−1)/X(z−1) (1)
X(z−1),1+P(z−1)C(z−1)+Q(z−1)(P−1
m(z−1)P(z−1)−z−m)
(2)
From the frequency-response perspective, if P(e−jω)=
e−jmωPm(e−jω) in (1) and (2), then the last term in X(e−jω)
vanishes and
S(e−jω)=1−e−jmωQ(e−jω)/1+P(e−jω)C(e−jω).(3)
If we design a Q-filter, Q(z−1), as shown in Fig. 3, then
1−e−mjωQ(e−jω), and thus Gd2y(e−jω) in (1), will become
zero at the center frequencies of Q(z−1) (in this example,
60 Hz and 90 Hz), namely, disturbances occurring at
these frequencies will be strongly attenuated. Assume
first that vibrations occur exactly at 60 Hz and 90 Hz.
Q(z−1) will filter out all other frequency components
such that its output c(k) consists of signals only at the
disturbance frequencies.
0 50 100 150 200 250 300 350 400
0
0.5
1
1.5
Gain
1−z−mQ(z−1)
0 50 100 150 200 250 300 350 400
0
0.5
1
1.5
Gain
Ferquency (Hz)
Q(z−1)
Fig. 3. Frequency response of a Q-filter example
We remark that the shape of Q(z−1) in Fig. 3 is central
in the proposed design scheme. Uncertainties exist in
P(z−1) no matter how accurate Pm(z−1) is constructed
(based on modeling or system identification). It is not
practical (and is even dangerous) to invert P(z−1) over
the entire frequency region. Keeping the magnitude
of Q(z−1) small except at the interested disturbance
frequencies forms a selective (i.e., local/selected) model
inverse (SMI) of the plant dynamics, such that errors
due to model mismatches do not pass through Q(z−1)
and equation (3) remains a valid approximation of (1).
In this way, the system stability is easily preserved
as 1/(1 +P(z−1)C(z−1)) is the sensitivity function of the
baseline system (and hence stable). A stable Q(z−1)
in this case will assure the stability of S(z−1)≈(1 −
z−mQ(z−1))/(1+P(z−1)C(z−1)). Of course, an assumption
here is that good model information can be obtained at
the disturbance frequencies. If the system already has
large uncertainties at the disturbance frequencies, it is
best not to apply large control effort there in the first
place.
III. Design of The Inverse Dynamics
In the aforementioned analysis we have as-
sumed P−1
m(z−1) to be stable. It is well known that
nonminimum-phase zeros in P(z−1) not only make
P−1(z−1) unstable but also cause control limitations
(see, e.g., [13]). The benchmark system has multiple of
such zeros. We discuss next an H∞treatment of the
nonminimum-phase plant when designing P−1
m(z−1).
With the input-output data, standard system iden-
tification can be performed to obtain P(z−1) (we use
the subspace system identification technique [14]). Let
Sdenote the set of all stable discrete-time ratio-
nal transfer functions, and recall the ideal situation
where P(z−1)=z−mPm(z−1). We search among Sto find
M(z−1)=P−1
m(z−1) such that the following are satisfied:
(i) model matching: to minimize the cost func-
tion ||W1(z−1)M(z−1)P(z−1)−z−m||∞, namely, we min-
imize the maximum magnitude of the model mis-
match M(z−1)P(z−1)−z−m, weighted by W1(z−1). The
ideal solution, if P−1(z−1) is stable, is simply M(z−1)=
z−mP−1(z−1). The weighting function W1(z−1) deter-
mines the region where we would like to have good
model accuracy.
(ii) gain constraint: as the inverse is used for process-
ing the measured output signal in Fig. 2, we should
be careful not to amplify the noises in y(k). Consider
the problem of min||W2(z−1)M(z−1)P(z−1)||∞, where the
magnitude of M(z−1)P(z−1) is scaled by the weight
W2(z−1). If W2(z−1)=1, the optimal solution for this
part alone would be M(z−1)=0, i.e., M(z−1) will not
amplify any of its input components. To make full use
of this gain constraint, we combine it with the previous
discussion to form:
min
K(z−1)∈S
"W1(z−1)M(z−1)P(z−1)−z−m
W2(z−1)M(z−1)P(z−1)#
∞
.(4)
The optimization in (4) finds the optimal inverse that
preserves accurate model information in the frequency
region specified by W1(z−1), and in the meantime pe-
nalizes excessive high gains of M(z−1) at frequencies
where W2(z−1) has high magnitudes. Typically W1(z−1)
is a low-pass filter and W2(z−1) is a high-pass filter.
By the formulation of the problem, (4) falls into the
framework of H∞control, and can be efficiently solved
in the robust control toolbox in MATLAB. Actually,
the dashed line in Fig. 1 is the z−mPm(z−1) obtained
from the proposed H∞problem. We can see that the
optimal solution matches well with the actual plant
dynamics, and moreover, P−1
m(z−1) is stable although
P(z−1) is nonminimum-phase.
IV. Disturbance-Observer Design
With the inverse and other filters specified in Fig.
3, it remains to design Q(z−1), which is the heart for
SMI and the disturbance observer. For narrow-band
vibrations caused by sinusoidal excitations, there exist
configurations that can achieve optimal disturbance
rejection.
Recall (1). To regulate y(k)=S(q−1)d(k)to zero, it
suffices to design Q(z−1) such that at the steady state
1−q−mQ(q−1)d(k)=0.(5)
We propose an IIR structure Q(z−1)=
BQ(z−1)/AQ(z−1).For vibrations satisfying
d(k)=Pn
i=1Cisin(ωik+ψi), it can be verified that
1−2cos(ωi)q−1+q−2Cisin(ωik+ψi)=0. Define
A(z−1),
n
Y
i=1
(1 −2cos (ωi)z−1+z−2),(6)
then (5) is achieved if
1−z−mQ(z−1)=K(z−1)A(z−1)
AQ(z−1).(7)
To get a 1−z−mQ(z−1) that has a magnitude response
similar to that in Fig. 3, A(z−1)/AQ(z−1) should have a
notch-filter structure. A natural choice is to damp the
roots of A(z−1) by a scalar α∈(0,1) and let AQ(z−1),
Qn
i=11−2αcos(ωi)z−1+α2z−2, i.e., AQ(z−1)=A(αz−1).
This will later benefit the parameter adaptation algo-
rithm. To see this, expanding the product in (6) yields
A(z−1)=1+a1z−1+···+anz−n+···+a1z−2n+1+z−2n,(8)
where we have mapped the parameters {ωi}n
1in (6) to
{ai}n
1, and the new coefficient vector {1,a1,...,an,...,a1,1}
has a mirror symmetric form by the construction
of A(z−1). Replacing every z−1with αz−1, we obtain
AQ(z−1)=A(αz−1), which is also linear in {ai}n
1. There-
fore only these nparameters need to be later identified.
This is the minimum possible number for nunknown
narrow-band signals.
The filter K(z−1) is necessary to make the solution
causal for a general m. Without K(z−1), (7) indicates
that Q(z−1)=zm(AQ(z−1)−A(z−1))/AQ(z−1), where the
non-realizable zmis non-trivial to cancel. A design
guide for K(z−1) is that it should not introduce serious
magnitude distortion to the achieved notch shape of
A(z−1)/AQ(z−1)=A(z−1)/A(αz−1) in (7). This way we can
control the noise amplification in (5) when d(k) contains
other disturbances not modeled by (6). We discuss next
choices of K(z−1) for different values of m.
A. The case for m =0
For the simplest case m=0, a scalar value K(z−1)=k0
provides a realizable solution to (7). Recalling Q(z−1)=
BQ(z−1)/AQ(z−1)=BQ(z−1)/A(αz−1) and (8), we can re-
duce (7) to A(αz−1)−BQ(z−1)=k0A(z−1),which yields
BQ(z−1)=(1−k0)+(α−k0)a1z−1+···+(αn−k0)anz−n
+···+(α2n−1−k0)a1z−2n+1+(α2n−k0)z−2n.(9)
It can be shown [15] that k0=αnleads to the common
factor 1 −αz−2in BQ(z−1), which places two symmetric
zeros to Q(z−1) at ±√α. This provides balanced magni-
tude response for Q(z−1) at low- and high-frequencies.
B. The case for m =1
Applying analogous analysis as in Section IV-A, we
reduce (7) to A(αz−1)−z−1BQ(z−1)=k0A(z−1),the solu-
tion of which is BQ(z−1)=(1−k0)z+(α−k0)a1+···+(αn−
k0)anz−n+1+···+(α2n−1−k0)a1z−2n+2+(α2n−k0)z−2n+1.
To let the term (1−k0)zvanish for realizability, we
require k0=1, which gives
BQ(z−1)=
2n
X
i=1
(αi−1)aiz−i+1;ai=a2n−i,a2n=1.(10)
As an example, when n=1, (6), (8) and (10) yield a1=
−2cos ω1and
Q(z−1)=(1−α)2cos ω1−(1+α)z−1
1−2αcosω1z−1+α2z−2.
Using the identity 2cos(ω1)=ejω1+e−jω1, we can ob-
tain that Q(e−jω1)=ejω1. Thus, Q(z−1) provides exactly
one-step advance to counteract the one-step delay in
z−1Q(z−1) at the center frequency ω1, hence the zero
magnitude response of 1−z−1Q(z−1) at ω1.
C. The case for an arbitrary m
For m>1, assigning K(z−1)=k0no longer gives a
realizable solution. Consider the following IIR design
K(z−1)=
N
X
i=0
ki"A(z−1)
A(αz−1)#i
,ki∈ R.(11)
Namely, K(z−1) is chosen as a combination of N(≥0)
filters that influence only the local loop shape (recall
that A(z−1)/A(αz−1) is a notch filter). Take the example
of m=2. When N=1,2solving (7) gives
Q(z−1)=z2 1−k0
A(z−1)
A(αz−1)−k1
A(z−1)2
A(αz−1)2!.(12)
Partitioning, we obtain
Q(z−1),z2 1−ρ1
A(z−1)
A(αz−1)! 1−ρ2
A(z−1)
A(αz−1)!.(13)
The numerator of Q(z−1) is given by BQ(z−1)=
z2(A(αz−1)−ρ1A(z−1))(A(αz−1)−ρ2A(z−1)). Recalling (8)
we have A(αz−1)−ρiA(z−1)=1−ρi+α−ρia1z−1+···+
(α2n−ρi)z−2n. To make the z2term vanish in BQ(z−1) for
realizability of Q(z−1), we must have 1−ρi=0 for i=1,2,
yielding k0=2, k1=−1 in (12). With these solved ρiand
ki, after simplification, (13) and (11) become
Q(z−1)=
P2n
i=1(αi−1)aiz−i+1
A(αz−1)
2
;ai=a2n−i,a2n=1 (14)
K(z−1)=2−A(z−1)
A(αz−1).(15)
2If N=0, the problem is unsolvable since K(z−1) is a scalar again.
For a general integer m, analogous analysis gives that
Q(z−1)=
P2n
i=1(αi−1)aiz−i+1
A(αz−1)
m
(16)
1−z−mQ(z−1)=1− 1−A(z−1)
A(αz−1)!m
(17)
=A(z−1)
A(αz−1)
m
X
i=1 m
i!"−A(z−1)
A(αz−1)#i−1
(18)
It can be observed that the general result obtained
here is essentially a cascaded version of the developed
Q(z−1) in Section IV-B. For the sake of clarity, we denote
now the Q filter for m=0 and m=1 respectively
as Q0(z−1) and Q1(z−1). As has been discussed at the
end of Section IV-B, Q1(z−1) provides 1 step phase
advance to address the term z−1in 1−z−1Q1(z−1). For a
general m, we see that the cascaded Q(z−1)=hQ1(z−1)im
in (16) works the same way due to the factorization
1−z−mQ(z−1)=1−(z−1Q1(z−1))m, i.e., each Q1(z−1) block
compensates one z−1term, to achieve 1−e−jmωQ(e−jω)=
0 when ωbelongs to the set of disturbance frequencies
{ωi}n
1. Recall from Fig. 3, that Q(z−1) is a special type
of bandpass filter. Cascading multiple Q1(z−1) together
not only provides the compensation for z−m, but also
provides enhanced filter shape. If needed, we can ad-
ditionally cascade one or multiple blocks of Q0(z−1) to
Q(z−1), which will further reduce the filter magnitude
outside the passband, without losing the disturbance-
rejection property at the center frequencies of Q(z−1).
V. Parameter Adaptation
This section discusses the online adaptation of the
parameters {ai}n
i=1in Q(z−1) when the disturbance char-
acteristics is not known a priori. Recall from Fig. 2, that
y(k)=Gd2y(q−1)d(k)=S(q−1)d(k)≈1−q−mQ(q−1)
1+P(q−1)C(q−1)d(k).
The beginning of Section II has discussed the obtaining
of ˆ
d(k)≈d(k). Letting w1(k),ˆ
d(k)/(1 +P(q−1)C(q−1)) and
recalling the solution of 1−q−mQ(q−1) in (18), we get
y(k)≈
m
X
i=1 m
i!"−A(q−1)
A(αq−1)#i−1
A(q−1)
A(αq−1)w1(k)
For vibration rejection, y(k) will converge to zero if
A(q−1)/A(αq−1)w1(k) is asymptotically zero. We will use
w2(k),A(q−1)/A(αq−1)w1(k) as an adaptation model,3
which is linear w.r.t. the unknown coefficients θ,
[a1,a2,...,an]T. The structure is a special (and simplified)
one for adaptive control due to the close relationship
between A(q−1) and A(αq−1). The full parameter adap-
tation algorithm (PAA) is provided in [15]. Limited
by space, we focus on the application of the PAA
3Additional filtering can be applied on w1to improve the signal-
to-noise ratio. See, e.g., [10].
for identifying different time-varying vibrations. Recall
that the general adaptation formula has the structure:
ˆ
θ(k+1)=ˆ
θ(k)+Adaptation gain ×Error
F(k+1)=1
λ(k)
F(k)−F(k)φ(k)φ(k)TF(k)
λ(k)+φ(k)TF(k)φ(k)
where F(k) is the adaptation gain and the forgetting
factor λ(k) determines how much information is used
for adaptation. It is well-known that altering the for-
getting factor is the key for time-varying parameter
adaptationWe suggest the following tuning rules:
(i) rapid initial convergence: initialize λ(k) to be
exponentially increasing from λ0to 1 in the first several
samples, where λ0can be taken to be between [0.92,1)
(ii) adjustment for sudden parameter change: when
the prediction error encounters a sudden increase, in-
dicating a change of disturbance characteristics, reduce
λ(k)to a small value λ(e.g. 0.92 in the benchmark), and
then increase it back to its steady-state value λ(usually
close to 1), using the formula λ(k)=λ−λrate(λ−λ(k−1)),
with λrate preferably in the range (0.9,0.995).
(iii) adjustment for continuously changing parame-
ters: in this case, keep λ(k) strictly smaller than one,
using e.g., a constant λ(k)(<1).
VI. Simulation and Experimental Results
We apply in this section the proposed scheme to the
benchmark problem. In this system, the plant delay
m=2 in the modeling of P(z−1)z=ejω≈z−mPm(z−1)z=ejω.
Hence two Q1(z−1) blocks are needed in (16). Vibrations
occur in the middle frequency region between 50 Hz
and 95 Hz. There are also other noises at low and
high frequencies. To enhance the bandpass property,
we cascaded one additional Q0(z−1) block designed in
Section IV-A to Q(z−1), and prefiltered the input to the
PAA (denoted as w1(k) in Section V) by a bandpass
filter (passband: 50–95 Hz) to remove the bias and other
high-frequency noises in the estimated disturbance.
In the first stage of evaluation (denoted as level-
one test), the system is subjected to a single-frequency
vibration. Three cases are studied: the first with a
constant unknown frequency, the second with a sudden
frequency change at specific time instances, and the
third with a chirp disturbance.
Fig. 4 show the output spectra with and without
the proposed scheme. We can observe first, that the
simulation and the experimental results match well,
and that in both cases the strong vibrations have been
greatly attenuated, while the spectra at other frequen-
cies are nearly identical to that without compensation.
Fig. 5 shows the time trace (experimental result) of
the residual errors when the disturbance frequency has
abrupt changes. In the presence of various frequency
jumps, the algorithm still provides rapid and strong
vibration compensation. Comparing the data at 2 sec
and 7 sec, we see the steady-state residual errors have
been reduced to the baseline case where no narrow-
band disturbance is present.
0 50 100 150 200 250 300 350 400
−100
−80
−60
−40
error spectra (dB)
simulation
open loop
closed loop
0 50 100 150 200 250 300 350 400
−100
−80
−60
−40
Frequency [Hz]
error spectra (dB)
experiment
open loop
closed loop
Fig. 4. Rejection of a 55 Hz vibration
0 5 10 15 20 25 30 35 40
−0.02
0
0.02
Residual force [V]
Open loop
0 5 10 15 20 25 30 35 40
−0.02
0
0.02
Time [sec]
Residual force [V]
Closed loop
Hz: 75 85 75 65 75
Fig. 5. Experimental results of rejecting a vibration with frequency
jumps (frequency values indicated in the bottom subplot)
Fig. 6 shows the compensation results when the dis-
turbance frequency experienced a chirp-type evolution
between 50 Hz and 95 Hz. Fig. 7 shows the identi-
fied frequency (computed offline from a1=−2cosω1,
where a1is updated online). Under such time-varying
frequencies, we see the proposed algorithm maintains
its effectiveness of compensating the disturbance.
Figs. 8 to 11 show the experimental results of reject-
ing two and three narrow-band disturbances. Again,
disturbances with different time-domain characteristics
are tested as shown in Figs. 8 and 10. From Figs. 9 and
11, the strong spectral peaks in the specified frequency
region [50–95] Hz are all strongly attenuated. There
are several peaks outside the 50–95 Hz window. They
are not amplified in the closed-loop response (some
of them are actually attenuated). Indeed, the proposed
algorithm has the property of maintaining very small
amplification of other disturbances (see also Fig. 4),
due to the frequency-domain design criterion in Fig. 3.
The benchmark has set up several evaluation quantities
about performance, robustness, and complexity. The
proposed algorithm achieved 100% in the benchmark
5 10 15 20 25 30 35
−0.04
−0.02
0
0.02
0.04
Residual force [V]
Open loop
5 10 15 20 25 30 35
−0.04
−0.02
0
0.02
0.04
Time [sec]
Residual force [V]
Closed loop
Fig. 6. Rejection of a narrow-band disturbance with a chirp
frequency (experimental result)
0 5 10 15 20 25
40
60
80
100
time (sec)
Estimated frequency (Hz)
Fig. 7. Identified frequency for the case of Fig. 6
specification index for transient performance; 100%,
100%, and 99.78% respectively in steady-state simula-
tion performance; and ranked 1, 3, and 2, respectively
in experimental results. The recorded task execution
time is also moderate. Detailed summaries and com-
parison are provided in [16].
0 5 10 15 20 25 30
−0.05
0
0.05
Residual Force [V]
Simple Step Test
Maximum value = 0.029536
Open Loop
Closed Loop
0 5 10 15 20 25 30
−0.05
0
0.05
Residual Force [V]
Step Changes in Frequency Test
Maximum value = 0.042431
0 5 10 15 20 25 30
−0.05
0
0.05
Time [sec]
Residual Force [V]
Chirp Test
Maximum value = 0.035906
60−80 Hz
55−75 60−80 55−75 50−70 55−75
50−70 Hz 75−95 Hz 50−70 Hz
Fig. 8. Time-domain level-2 experimental results
VII. Conclusions
An adaptive control scheme has been introduced for
multiple narrow-band disturbance rejection. Applica-
tions to a benchmark on active suspension showed that
0 50 100 150 200 250 300 350 400
−90
−80
−70
−60
−50
−40
Frequency [Hz]
PSD estimate [dB]
Power Spectral Density Comparison
PSDOL
PSDCL
Fig. 9. Frequency-domain level-2 experimental results
0 5 10 15 20 25 30
−0.05
0
0.05
Residual Force [V]
Simple Step Test
Maximum value = 0.048526
Open Loop
Closed Loop
0 5 10 15 20 25 30
−0.05
0
0.05
Residual Force [V]
Step Changes in Frequency Test
Maximum value = 0.072771
0 5 10 15 20 25 30
−0.05
0
0.05
Time [sec]
Residual Force [V]
Chirp Test
Maximum value = 0.051947
60−75−90 Hz
50−65−80 Hz 65−80−95 Hz 50−65−80 Hz
55−70−85 60−75−90 55−70−8550−65−8055−70−85
Fig. 10. Time-domain level-3 experimental results
0 50 100 150 200 250 300 350 400
−90
−80
−70
−60
−50
−40
Frequency [Hz]
PSD estimate [dB]
Power Spectral Density Comparison
PSDOL
PSDCL
Fig. 11. Frequency-domain level-3 experimental results
the proposed algorithm significantly attenuated the
disturbance under various time-varying characteristics.
VIII. Acknowledgment
The authors thank Abraham Castellanos Silva for his
help on obtaining the experimental results.
References
[1] I.-D. Landau, M. Alma, J.-J. Martinez, and G. Buche, “Adaptive
suppression of multiple time-varying unknown vibrations using
an inertial actuator,” IEEE Trans. Control Syst. Technol., vol. 19,
no. 6, pp. 1327–1338, 2011.
[2] X. Chen and M. Tomizuka, “A minimum parameter adaptive
approach for rejecting multiple narrow-band disturbances with
application to hard disk drives,” IEEE Trans. Control Syst. Tech-
nol., vol. 20, pp. 408 – 415, March 2012.
[3] C. Kinney, R. de Callafon, E. Dunens, R. Bargerhuff, and C. Bash,
“Optimal periodic disturbance reduction for active noise cance-
lation,” J. of Sound and Vib., vol. 305, no. 1-2, pp. 22–33, Aug.
2007.
[4] B. Francis and W. Wonham, “The internal model principle of
control theory,” Automatica, vol. 12, no. 5, pp. 457–465, 1976.
[5] Q. Zhang and L. Brown, “Noise analysis of an algorithm for
uncertain frequency identification,” IEEE Trans. Autom. Control,
vol. 51, no. 1, pp. 103–110, 2006.
[6] W. Kim, H. Kim, C. Chung, and M. Tomizuka, “Adaptive output
regulation for the rejection of a periodic disturbance with an
unknown frequency,” IEEE Trans. Control Syst. Technol., vol. 19,
no. 5, pp. 1296–1304, 2011.
[7] F. Ben-Amara, P. T. Kabamba, and a. G. Ulsoy, “Adaptive
sinusoidal disturbance rejection in linear discrete-time systems–
part I: Theory,” ASME J. Dyn. Syst., Meas., Control, vol. 121, no. 4,
pp. 648–654, 1999.
[8] Y. Kim, C. Kang, and M. Tomizuka, “Adaptive and optimal
rejection of non-repeatable disturbance in hard disk drives,” in
Proc. 2005 IEEE/ASME International Conf. on Advanced Intelligent
Mechatronics, vol. 1, 2005, pp. 1–6.
[9] Q. Jia and Z. Wang, “A new adaptive method for identification
of multiple unknown disturbance frequencies in hdds,” IEEE
Trans. Magn., vol. 44, no. 11 Part 2, pp. 3746–3749, 2008.
[10] X. Chen and M. Tomizuka, “An indirect adaptive approach to
reject multiple narrow-band disturbances in hard disk drives,”
in Proc. 2010 IFAC Symp. on Mechatron. Syst., Sept. 13-15, 2010
Cambridge, Massachusetts, USA, 2010, pp. 44–49.
[11] L. Ljung, System Identification: Theory for the User, 2nd ed.
Prentice Hall PTR, 1999.
[12] I. D. Landau, T.-B. Airimitoaie, A. C. Silva, and G. Buche, “An
active vibration control system as a benchmark on adaptive
regulation,” in 2013 European Control Conf., July 17-19 (to appear).
[13] S. Skogestad and I. Postlethwaite, Multivariable Feedback Control:
Analysis and Design, 2nd ed. Wiley Chichester, UK, 2005.
[14] P. Overschee, B. Moor, D. Hensher, J. Rose, W. Greene, K. Train,
W. Greene, E. Krause, J. Gere, and R. Hibbeler, Subspace Iden-
tification for the Linear Systems: Theory–Implementation. Boston:
Kluwer AcademicPublishers, 1996.
[15] X. Chen and M. Tomizuka, “Selective model inversion and
adaptive disturbance observer for rejection of time-varying
vibrations on an active-suspension benchmark,” in European
Journal of Control (to appear).
[16] I.-D. Landau, A. C. Silva, T.-B. Airimitoaie, G. Buche, and
M. Noe, “Benchmark on adaptive regulation – rejection of
unknown/time-varying multiple narrow band disturbances,” in
European Journal Control, 2013 (to appear).