Content uploaded by Xu Chen
All content in this area was uploaded by Xu Chen on Nov 25, 2015
Content may be subject to copyright.
Inverse-Based Local Loop Shaping and
IIR-Filter Design For Precision Motion
Xu Chen ∗Atsushi Oshima ∗∗ and Masayoshi Tomizuka ∗
∗Department of Mechanical Engineering, University of California,
Berkeley, CA, 94720, USA (e-mails:
∗∗ Mechatronics Development Center, NSK Ltd, Fujisawa, Kanagawa
251-8501, Japan (email:email@example.com)
Abstract: In motion-control problems such as vibration rejection, periodical reference tracking,
and harmonic disturbance cancellation, the disturbances/references share a common characteris-
tic of exhibiting concentrated energies at multiple bands of frequencies. In this paper, we discuss
a feedback loop-shaping approach to address such a class of control problem. An integration of
(inverse) system models is proposed to bring enhanced high-gain control at the required local
frequency regions. We show that such servo enhancement can be eﬀectively achieved if good
model information is available at the disturbance frequencies, and that a rich class of design
tools can be integrated for the controller formulation. The proposed algorithm is veriﬁed in
simulation and experiments on vibration rejection in hard disk drives and an electrical power
steering system in automotive vehicles.
Keywords: digital control, vibration rejection, digital-ﬁlter design, loop shaping, hard disk
drives, electrical power steering
Driven by the ever increasing demand for higher accuracy,
faster speed, and more robust performance, customized
control design is becoming more and more essential in
precision-motion-control systems. For example, in the ap-
plication to all-in-one personal computers and smart TVs,
modern hard disk drives (HDDs) are placed close to high-
power audio speakers that generate a signiﬁcant amount of
vibrations. Due to the nature of the disturbances (Deller
et al., 1999), these vibrations occur in several concentrated
bands of frequencies, near or even above the bandwidth
of the servo system. Fig. 1 demonstrates the impact of
actual audio vibrations on an HDD benchmark problem
(IEEJ, Technical Commitee for Novel Nanoscale Servo
Control, 2007). Despite the fact that a set of baseline
controllers have been designed to meet standard indus-
trial requirements, 1in the presence of strong vibrations,
we observe that common feedback design has diﬃculty
attenuating the local spectral peaks at around 880 Hz
and 1600 Hz. The servo challenge is additionally ampliﬁed
by the increasing demand on servo accuracy, as the HDD
disk density continues growing to meet the requirements
in modern and future data storage applications.
A related type of disturbance, with its spectral peaks
much sharper than those in Fig. 1, is the narrow-band
disturbance consisting of single-frequency vibrations. Such
disturbance is common in motion control that involves
periodic movements. Examples include but are not limited
1A set of notch ﬁlters and an PID controller have been applied to
attenuate the resonances and achieve a 1.19kHz bandwidth here.
500 1000 1500 2000 2500 3000
Fig. 1. A typical HDD error spectrum under vibrations
to: (i) engine noise in turboprop aircraft and automobiles
(Shoureshi and Knurek, 1996) (ii) repeatable runout, disk
ﬂutter, and fan noise in HDDs (Ehrlich and Curran,
1999; Guo and Chen, 2001) (iii) vibration in suspension
systems (Landau et al., 2009) and (iv) repetitive trajectory
tracking (Tomizuka, 2008). Customized servo design is
essential for attenuating these disturbances.
From the feedback-control perspective, both reference
tracking and disturbance attenuation are about shaping
the dynamic behavior of the servo loop. Based on the spec-
tral properties, we will regard narrow-band disturbances,
and vibrations that generate residual errors similar to that
in Fig. 1, as to belong to the same class of signals. We
denote such disturbances as band-limited disturbances, and
the corresponding closed-loop control design as local loop
The application of inverse system models is proposed to
address the aforementioned problem. Inverse-based control
has long been used in motion control (for example, in feed-
forward designs), but not extensively explored in feedback
vibration rejection, especially for attenuating audio vibra-
tions. Diﬀerent from narrow-band loop shaping that can be
achieved via e.g., peak ﬁlters (Zheng et al., 2006), repet-
itive control (Chew and Tomizuka, 1989; Cuiyan et al.,
2004), Youla parameterization (Landau et al., 2009), and
narrow-band disturbance observers (Chen and Tomizuka,
2012), general band-limited vibrations are much more
challenging to reject, since enhanced local loop shape is
usually accompanied by deteriorated servo performance
at other frequencies. This is the “waterbed eﬀect” from
Bode’s Integral Theorem. To balance between the desired
vibration rejection and the theoretical boundaries, we in-
vestigate methods to place a group of structured poles
and zeros for local loop shaping, and provide the design of
inﬁnite-impulse-response (IIR) digital ﬁlters to reduce the
The remainder of the paper is organized as follows. Section
2 discusses the controller structure and the loop-shaping
idea. Section 3 provides the customized ﬁlter design tech-
niques. Section 4 shows the simulation and experimental
results on vibration rejection. Section 5 concludes the
2. CONTROLLER STRUCTURE
Consider a general discrete-time feedback system with
the plant and the stabilizing negative-feedback controller
given by P(z−1) and C(z−1) respectively. In motion con-
trol, C(z−1) is designed such that y(k), the output of
the plant, tracks the reference r(k) while rejecting the
disturbance d(k). Corresponding, at frequencies below the
bandwidth of the closed loop, the complementary sensitiv-
ity function To(z−1) = Gr→y(z−1) = P(z−1)C(z−1)/[1 +
P(z−1)C(z−1)] approximates unity and the sensitivity
function (a.k.a. the output disturbance-rejection function)
So(z−1) = 1−To(z−1) = 1/[1+P(z−1)C(z−1)] should have
small magnitude at locations where d(k) presents large
Consider adding three elements z−mˆ
P−1(z−1), z−m, and
Q(z−1) around C(z−1) as shown in Fig. 2. Computing the
new sensitivity and complementary sensitivity functions
gives (due to space limit, we drop the index (z−1) here)
Gr→y=P C +z−mQˆ
1 + P C +z−mQ(ˆ
S= 1 −T=1−z−mQ
1 + P C +z−mQ(ˆ
P−1(z−1) is deﬁned as the inverse model of P(z−1).
We add the delay element z−mso that z−mˆ
realizable if the relative degree of P(z−1) is larger than
zero in Fig. 2. ˆ
P−1(z−1) is assumed to be stable. This
is practically not diﬃcult to satisfy for motion-control
systems (see, e.g., Ohnishi et al. (1996); Tomizuka (1987)).
For the case of unstable P−1(z−1), a related discussion of
optimal inverse design is provided in Chen et al. (2013).
To see the role of Q(z−1), note ﬁrst that when ˆ
(1) and (2) reduce to
T(z−1) = P(z−1)C(z−1) + z−mQ(z−1)
1 + P(z−1)C(z−1).(3)
S(z−1) = 1−z−mQ(z−1)
1 + P(z−1)C(z−1)(4)
If in addition z−mQ(z−1) = 1, then we have S(z−1)=0
and T(z−1) = 1 in the above equations, i.e., perfect
disturbance rejection and reference tracking. Furthermore,
the right hand side of (4) equals So(z−1)(1 −z−mQ(z−1)),
where So(z−1) is the baseline sensitivity function com-
puted at the end of the ﬁrst paragraph in this section.
S(z−1) is hence decomposed to have the additional free-
dom to shape the loop via 1 −z−mQ(z−1), while the
original sensitivity function So(z−1) remains intact.
Fig. 2. Block diagram of proposed loop shaping
The above is an ideal-case analysis due to the perfect-
model assumption. The condition z−mQ(z−1) = 1 is also
not practical as it requires an anti-causal Q(z−1) = zm.
However, replacing every z−1with e−jω and re-evaluating
the equations, we see that (4) and (3) still hold in the
frequency domain provided that ˆ
P−1(e−jω )P(e−jω ) = 1.
At this speciﬁc ωvalue, we still have S(e−jω)=0
and T(e−jω ) = 1 if e−mjωQ(e−j ω ) = 1. Therefore, en-
hanced local loop shaping remains feasible at the fre-
quency regions where good model information is avail-
able. At the frequencies where there are large model
mismatches, eﬃcient servo control is intrinsically dif-
ﬁcult from robust-control theory. We will thus make
e−mjω Q(e−jω )≈0, to keep the inﬂuence of the un-
certainty elements e−jmω Q(e−jω )ˆ
P−1(e−jω )P(e−jω ) and
z−mQ(e−jω )[ ˆ
P−1(e−jω )P(e−jω )−1] small in (2) and (1).
More formally, if the plant is perturbed to ˜
P(e−jω ) =
P(e−jω )(1 + ∆(e−jω )),2standard robust-stability anal-
ysis (see, e.g., Chap. 7.5 of Skogestad and Postlethwaite
(2005)) gives that the closed-loop system is stable if and
only if the following hold:
•nominal stability–the closed loop is stable when
∆(e−jω ) = 0 ∀ω, i.e., the nominal Nyquist plot has
the correct number of encirclements around (-1,0) in
the complex plane, and does not touch (-1,0).
∆(e−jω )T(e−jω )
Tis given by (1). This additionally guarantees that
2∆ is assumed to be stable and has ﬁnite magnitude response.
the perturbed Nyquist plot does not touch the (-1,0)
From (4) and (3) we see that nominal stability is satisﬁed
as long as Q(z−1) is stable. If Q(e−jω ) = 0, the add-on loop
shaping is essentially cut oﬀ in Fig. 2, and (1) reduces to
T(e−jω )≈To(e−jω ). We thus have
∆(e−jω )T(e−jω )
∆(e−jω )To(e−jω )
<1, which is the robust stability
condition for the baseline feedback loop, and is satisﬁed
by our assumption that C(z−1) is a stabilizing controller.
To summarize, in regions where good model information
is available, e−jmω Q(e−jω )≈1 in (4) gives small gain
in S(e−jω ) and we have enhanced servo performance at
this local frequency region; at frequencies where vibrations
do not occur or there are large model mismatches, letting
e−jmω Q(e−jω )≈0 maintains the original loop shape and
system stability. This concept will be the central of our
discussions in the following sections.
Finally we remark that when P(z−1) is minimum-phase
then the proposed controller structure forms a special
Youla parametrization (see e.g., Zhou and Doyle (1998)), 3
which indicates that any controller that stabilizes the feed-
back system can be formed by picking some stable Q(z−1)
in Fig. 2. The design of this Q ﬁlter in Youla parametriza-
tion however does not have a common rule. With the plant
inversion already achieved by ˆ
P−1(z−1), the next section
discusses how we can incorporate structured designs in
Q(z−1) for band-limited local loop shaping.
3. BAND-LIMITED LOCAL LOOP SHAPING
3.1 General Concept
Recall from Fig. 1, that band-limited disturbances show
peaks in the error spectrum. To introduce small gains at
these local frequencies in the sensitivity function (4), we
consider the following design on Q(z−1):
1−z−mQ(z−1) = A(z−1)
Q(z−1) = BQ(z−1)
where 0 < α < 1 and
A(γz−1),1−2γcos ω0z−1+γ2z−2, γ = 1, α (7)
=(1−γej ω0z−1) (1−γe−j ω0z−1).(8)
From the factorization (8), A(z−1)/A(αz−1) in (5) is
a special notch ﬁlter, with its zeros and poles respec-
tively given by e±jω0and αe±j ω0.ω0is in the unit
of radians here, and equals 2πΩ0Ts(Ω0is in Hz, Ts
is the sampling time in sec). The zeros e±jω0provide
small gains in A(z−1)/A(αz−1) around the center fre-
quency ω0(can check that A(e−jω0) = 0 from (8)). The
poles αe±jω0balance the magnitude response such that
A(e−jω )/A(αe−jω )≈1 when ωis far away from ω0. The
structured poles and zeros in (5) will be absorbed to the
sensitivity function due to the construction of (4), and
provides the desired local modiﬁcation to the loop shape.
Approximately, the -3dB bandwidth for this notch ﬁlter
is given by (1 −α2)/[(α2+ 1)(πTs)]. The notch shape
3The proof is omitted here due to space limit.
of |A(e−jω )/A(αe−jω )|becomes sharper and sharper as
αgets closer to 1.
We will demonstrate the placing of one notch shape in the
sensitivity function. The design of placing multiple notches
is analogous after replacing (7) with A(γz−1) = ∏n
In (5), the plant delay mis usually non-zero for practical
control systems. K(z−1) functions in this case to satisfy
the causality of Q(z−1): without K(z−1), equations (5-7)
Q(z−1) = (α2−1)z−2+m−(α−1) 2 cos ω0z−1+m
which contains the unrealizable term z−1+mif m > 1.
Assigning K(z−1) = k0+k1z−1+· · · +knKz−nK(an FIR
ﬁlter) reduces (5) to
A(z−1)K(z−1) + z−mBQ(z−1) = A(αz−1) (10)
where A(z−1), z−m, and A(αz−1) are known from the
previous design. Matching the coeﬃcients of z−1, we
can solve for BQ(z−1) and K(z−1). 4The minimum-
order solution satisﬁes deg(BQ(z−1)) = deg(K(z−1)) +
deg(A(z−1)) −mand deg(A(αz−1)) ≤deg(BQ(z−1)) + m.
The dashed line in Fig. 3 presents an example of the solved
Q(z−1) and 1−z−mQ(z−1), with α= 0.993, Ts= 1/26400
sec, Ω0= 3000 Hz, and m= 2. We observe that 1 −
z−mQ(z−1) is approximately unity except at the desired
attenuation frequency Ω0= 3000 Hz, where we have 1 −
e−mjω0Q(e−jω0) = K(e−jω0)A(e−jω0)/A(αe−jω0) = 0 due
to A(e−jω0) = 0 in (8). Thus, from (2), S(e−jω0) = 0
and disturbances at 3000 Hz gets perfectly attenuated.
Meanwhile, the magnitude of Q(z−1) reduces from 1
at 3000 Hz quickly down to -35dB (0.0178 in absolute
value) in the low-frequency region, and -50dB (0.0032)
in the high-frequency region. As discussed in the last
section, these small gains reduce the inﬂuence of the model
uncertainties, so that (4) and (3) are valid approximations
of (2) and (1).
With the same center-frequency conﬁguration, the solid
line in Fig. 3 shows the solved Q(z−1) and 1−z−mQ(z−1)
for α= 0.945. For this Q(z−1), the width of the pass band
at -3dB is approximately 475 Hz. We can see that the
desired loop shaping is also eﬀectively achieved, and that
such a Q(z−1) suits for rejecting disturbances with wide
spectral peaks such as the one described in Fig. 1.
Using the designs in Fig. 3, if we consider a standard
feedback design of 1/(1 + P(z−1)C(z−1)) and use (4), we
obtain the magnitude responses of S(z−1) in Fig. 4. The
dotted line is the magnitude response of So(z−1) = 1/(1 +
P(z−1)C(z−1)). In this example, we used a loop shape
that is common for motion control. The solid and the
dashed lines are the magnitude responses of S(z−1) after
we introduce the proposed designs in Fig. 3. We observe
that the shape of 1 −z−mQ(z−1) is directly reﬂected to
S(z−1) due to the relationship S(z−1)≈So(z−1)(1 −
4(10) is a Diophantine equation. Some existing solvers are provided
in Landau and Zito (2006).
Fig. 3. Magnitude responses of two example Q(z−1)’s and
the corresponding 1 −z−mQ(z−1)’s
α = 0.945
α = 0.993
Detail at 3000 Hz
Fig. 4. Magnitude responses of the sensitivity functions
with the designs in Fig. 3
3.2 Additional Customization
It is not practical to have an ideal bandpass ﬁlter that
equals either unity or zero at each frequency. In Fig. 3,
as the magnitude response of Q(z−1) gets sharper and
sharper, we more and more approximate an ideal ﬁlter
that passes only the frequency component at 3000 Hz.
In order to achieve the solid line, i.e., a larger-bandwidth
Q(z−1), and hence a wider range of attenuation frequencies
in Fig. 4, the computation of (10) has traded oﬀ the small
magnitudes of Q(z−1) at frequencies far away from 3000
Hz. As a result,
•in the top plot of Fig. 3, the solid-line |1−
e−jmω Q(e−jω )|becomes larger than unity at low and
•the robustness of the algorithm against plant uncer-
tainty is decreased as the term z−mQ(ˆ
become not negligible in (2).
These concerns will not occur in narrow-band loop shap-
ing, where the bandwidth of Q(z−1) is very small, but
should be examined with care in the case of rejecting gen-
eral band-limited disturbances. We discuss next methods
to reduce the above design trade oﬀs.
3.2.1 The eﬀect of ﬁxed zeros in Q(z−1)
In Section 3.1, we chose the IIR Q(z−1) with a cus-
tomized denominator A(αz−1) but have not placed speciﬁc
structural designs for BQ(z−1). Actually BQ(z−1) is the
unknown to be solved in (10) and its nontrivial frequency
response is solely determined by the algebraic equation.
Using the concept in pole placement, we can add a ﬁxed
part B0(z−1) such that
BQ(z−1) = B0(z−1)B′
Designing B0(z−1) = 1 + z−1for example, will yield
ω=π=BQ(−1)/A(−α) = 0, i.e., zero magnitude
at Nyquist frequency. More generally, introducing ﬁxed
zero near z=−1 and/or z= 1 in the z plane will provide
enhanced small gains for Q(z−1) in the high- and/or low-
frequency region. Extending this idea, we can essentially
place magnitude constraints at arbitrary desired frequen-
cies, by letting B0(z−1) = 1−2βcos ωpz−1+β2z−2in (11),
which places the ﬁxed zeros βe±jωpto penalize
Table 1 summarizes the eﬀects of diﬀerent conﬁgurations
for the ﬁxed term B0(z−1). For band-limited loop shap-
ing, it is natural to place magnitude constraints at both
low and high frequencies. In this case, the modules in
Table 1 can be combined to provide, e.g., B0(z−1) =
(1 + ρz−1)n1(1−z−1)n2, where ρ∈[0.5,1]; and n1,n2
are non-negative integers.
Table 1. Eﬀects of placing ﬁxed zeros to Q(z−1)
B0(z−1) zeros small |Q(e−jω )|
1 + z−1−1 around Nyquist freq.
1 + ρz−1, ρ ∈[0.5,1] −ρat high freq.
1−ρz−1, ρ ∈[0.5,1] ρat low freq.
βe±j ωparound ωp
1−z−11 at low freq.
3.2.2 Cascading a bandpass IIR ﬁlter to Q(z−1)
By (11) we essentially have cascaded the FIR ﬁlter
B0(z−1) to Q(z−1). B0(z−1) has been designed to con-
trol the magnitude response of Q(z−1) at some speciﬁc
frequency regions. It is well known that IIR design has
additional ﬂexibility compared to FIR ﬁlters. From the
frequency-response perspective, cascading two bandpass
ﬁlters with the same center frequency provides an new
bandpass Q(z−1), which can have reduced magnitudes
at all frequencies outside the passband. This suggests
to assign an IIR bandpass B0(z−1) and let Q(z−1) =
Q0(z−1)B0(z−1), where Q0(z−1) is the fundamental so-
lution from Section 3.1. Note that (5) indicates the
1−e−jmω Q0(e−jω ) = A(e−j ω )
A(αe−jω )K(e−jω ).(12)
At ω=ω0, we have A(e−jω0) = 0 from (8) and hence
Q0(e−jω0) = ej mω0at the center frequency ω0. Due to
this result, Q0(z−1) is not a conventional bandpass ﬁlter,
and B0(z−1) needs to satisfy B0(e−jω0) = 1 to preserve
the property Q0(e−jω0)B0(e−j ω0) = Q0(e−jω0) = ejmω0.
A standard bandpass ﬁlter will suﬃce this requirement.
Recall that A(z−1)/A(αz−1) is a notch ﬁlter. One candi-
date B0(z−1) is 1 −ηA(z−1)/A(αz−1): η∈(0,1] (unity
minus a notch shape generates a bandpass shape).
Fig. 5 presents the Q(z−1) and 1 −z−mQ(z−1) solved
from the discussed algorithms in this section. The solid
lines are the direct solution from Section 3.1; the dashed
lines are from Section 3.2.1; and the dotted lines from
Section 3.2.2. We observe from the magnitude responses
of 1 −z−mQ(z−1), that all three methods create the
required attenuation around 3000 Hz. Also, the additional
magnitude constraints on Q(z−1) are eﬀectively reﬂected
in the bottom plot of Fig. 5: in the dashed-line Q(z−1), the
design of B0(z−1) = 1+ 0.7z−1places a zero z=−0.7 near
the Nyquist frequency (z=eπ=−1), yielding the small
gain in the high-frequency region compared to the solid-
line Q(z−1); in the dotted-line Q(z−1), by cascading the
bandpass ﬁlter B0(z−1) we have reduced the magnitude of
Q(z−1) at both low and high frequencies.
Finally we note the presence of the “waterbed eﬀect” in
Fig. 5, a result of the fundamental limitation of feedback
loop shaping. Besides the strong disturbance attenuation
around 3000 Hz, the magnitude of 1 −z−mQ(z−1) holds
values higher than unity at other frequencies. The fun-
damental solution (solid line) from Section 3.1 evenly
spreads the ampliﬁcation throughout the entire frequency
region; the dashed line has enhanced robustness at high
frequencies and makes 1 −z−mQ(z−1) closer to unity
near Nyquist frequency; lastly the IIR-B0(z−1) algorithm
concentrates the ampliﬁcation near the center frequency
3000 Hz. In general, it is preferred to evenly spread the
ampliﬁcations, so the solid or the dashed lines are pre-
ferred from the performance perspective. Yet if large model
uncertainty exists which enforces Q(z−1) to have small
magnitudes at high and/or low frequencies, the dotted line
may be considered over the other designs. Nonetheless,
the maximum ampliﬁcation among all designs is around
1.6dB (1.2023) while the attenuation is more than -20dB
(0.1) in a large frequency region (perfect attenuation at
the center frequency 3000 Hz). One way to “smoothen”
the waterbed eﬀect is to replace Q(z−1) with kQ(z−1) at
the ﬁnal stage of design. This will trade oﬀ the perfect
disturbance attenuation with a less ampliﬁed loop shape
at other frequencies.
4. SIMULATION AND EXPERIMENTAL RESULT
4.1 Audio-vibration rejection in HDDs
In this section we apply the discussed control schemes for
audio-vibration rejection on a HDD benchmark system
(IEEJ, Technical Commitee for Novel Nanoscale Servo
Control, 2007). In this case study, the plant dynamics
involves a single-stage actuator that is powered by a
voice coil motor, and the control aim is to regulate the
plant output in the presence of external disturbances.
The frequency response of the sampled plant (sampling
frequency Fs= 26400 Hz) is shown in Fig. 6. The multiple
resonance modes are attenuated via several notch ﬁlters,
and the notched plant is treated as P(z−1) in Fig. 2.
The plant delay in this case is m= 3. The baseline
design C(z−1) is a PID controller which achieves a servo
B0 = 1
B0 = 1 + 0.7z−1
Fig. 5. Comparison of the magnitude responses in three
designs of Q(z−1) for wide-band disturbances: in the
dotted line, B0(z−1) = 1 −αA(z−1)/A(αz−1)
bandwidth of 1.19 kHz. The disturbance source is from a
scaled version of actual experimental results under audio
The top plot of Fig. 7 shows the spectrum of the posi-
tion error signal (PES) without the proposed local loop
shaping. To attenuate the main spectral peaks centered at
880 Hz and 1600 Hz, we apply the algorithm in Section
3.1, with a two-band Q(z−1), α= 0.945, and kQ(z−1) =
0.8Q(z−1). Fig. 8 presents the magnitude responses of
the loop shaping elements, where we observe the deep
attenuation at the desired 880 Hz and 1600 Hz. The
bottom plot of Fig. 7 shows the resulted PES, where the
spectrum has been greatly ﬂattened compared to the case
without compensation, and we can see a direct projection
of the shape of 1 −z−mQ(z−1) to the error spectrum.
The corresponding time traces are provided in Fig. 9.
The three-sigma value (sigma is the standard deviation)
has reduced from 33.54% TP (Track Pitch) to 22.79% TP
(here 1 TP = 254 nm), i.e., a 29.07 percent improvement.
Notice that 1600 Hz is above the bandwidth of the servo
system, where disturbance rejection was not feasible for
the original feedback design.
Additional customization on Q(z−1) is carried out using
the discussions in Section 3.2. Table 2 shows the attenua-
tion results on the three-sigma value of the position errors.
For all designs in the last three columns, we have enforced
Q(z−1) to have small gains in the high-frequency region.
Actually if the high-frequency gain of Q(z−1) is larger
than -10 dB the closed-loop becomes unstable. This can
be projected by plotting the frequency response of S(z−1)
and noting that the term z−mQ(ˆ
P−1P−1) is no longer
negligible. We observe that all designs provided large servo
enhancements by at least 21.85% reduction on the three-
Table 2. Comparison of servo enhancement
B0(z−1), i.e., the ﬁxed part in Q(z−1) 1 1 + z−11−z−2IIR bandpass 1 −αA(z−1)/A(αz−1)
3σw/ compensation (%TP) 23.79 24.33 24.76 26.21
3σreduction (baseline 33.54%TP) 29.07% 27.46% 26.18% 21.85%
Fig. 6. Frequency response of the plant in the HDD
500 1000 1500 2000 2500 3000
w/o compensation 3σ = 33.54 %TP
500 1000 1500 2000 2500 3000
w/ compensation 3σ = 23.79 %TP
Fig. 7. Spectra (FFT) of the position error signals with
and without compensation
4.2 Harmonic cancellation in an EPS system
In this section we apply the algorithm to an electrical-
power-steering (EPS) system described in Sugita and
Tomizuka (2012). This system features a variable-gear-
ratio (VGR) control module for enhanced vehicle steering.
VGR control provides speed-dependent assistive torque
during steering, to reduce driving eﬀort and to improve
driver comfort and safety. The problem of narrow-band
disturbance rejection occurs as the VGR system generates
unnatural reaction torques and contains imperfections in
the gear and motor rotations.
One level of the motion control involves a velocity feedback
servo loop, where the motor accepts torque input and the
rotational velocity is the output. In this case, the plant
under control is G(s) = 1/(Jms+Bm), where Jmis
Fig. 8. 1 −z−mQ(z−1) and Q(z−1) used for vibration
rejection in HDDs
21 21.5 22 22.5 23
Fig. 9. Time traces of the position error signals with and
the inertia of the motor and Bmis the friction damping
coeﬃcient. This plant is discretized at a sampling time of
1 ms. The system has a 4ms input delay, yielding m= 4
in the local loop shaping design.
The top plot of Fig. 10 demonstrates the motor velocity
during a variable-speed steering test (experimental re-
sults), where we observe large tracking errors between the
reference velocity and the actual motor speed. Further in-
vestigation shows that there are strong narrow-band vibra-
tions due to imperfect motor rotations. The dashed line in
Fig. 11 presents the spectrum of the tracking errors when
we apply a constant-speed steering. The strong spectral
peak at 15 Hz contributes greatly to the tracking errors.
Applying the proposed algorithm in Section 3.1 yields the
solid line in Fig. 11. Visual comparison indicates that the
algorithm has removed the original spectral peak at 15 Hz.
Computing the standard deviations for the tracking errors,
we obtain a 74.77% error reduction on the 3σvalue (from
0.20826 rad/s to 0.052549 rad/s). Besides these constant-
speed steering results, back to comparing the variable-
steering-speed test in Fig. 10, the algorithm also provides
signiﬁcant performance enhancement, both visually and
quantitatively (3σreduces from 0.19402 to 0.102). Here the
vibration frequency no longer stays at 15 Hz but actually
varies based on the steering speed. An adaptive Q(z−1)
is used to obtain the bottom plot of Fig. 10, using the
identiﬁed relationship between the steering speed and the
0 0.2 0.4 0.6 0.8 1 1.2
Steering speed (rad/s)
w/o compensation: error 3σ = 0.19402
0 0.2 0.4 0.6 0.8 1 1.2
Steering speed (rad/s)
w/ compensation: error 3σ = 0.102
Fig. 10. Time traces of the EPS tracking result during
5 10 15 20 25 30 35 40 45 50 55 60
w/o compensation: 3σ = 0.20826
w/ compensation: 3σ = 0.052549
Fig. 11. Spectra of the tracking errors during constant
In this paper we have discussed an algorithm for enhancing
the servo performance at several bands of frequencies. In
the presence of bandwidth limitations in feedback design,
such a local loop shaping approach suits well for at-
tenuating strong vibration-type disturbances. Simulation
and experimental results support the proposed design and
This work was supported in part by the Computer Me-
chanics Laboratory (CML) in the Department of Mechan-
ical Engineering, University of California at Berkeley.
Chen, X., Castellanos Silva, A., and Tomizuka, M. (2013).
Adaptive model inversion for rejection of time-varying
vibrations on a benchmark problem. In 2013 European
Control Conference (submitted).
Chen, X. and Tomizuka, M. (2012). A minimum parameter
adaptive approach for rejecting multiple narrow-band
disturbances with application to hard disk drives. IEEE
Transactions on Control System Technology, 20(2), 408
Chew, K. and Tomizuka, M. (1989). Digital control of
repetitive errors in disk drive systems. In Proceedings of
the 1989 American Control Conference, 540–548. IEEE.
Cuiyan, L., Dongchun, Z., and Xianyi, Z. (2004). A survey
of repetitive control. In Proceedings of 2004 IEEE/RSJ
International Conference on Intelligent Robots and Sys-
tems., volume 2, 1160–1166. IEEE.
Deller, J.R., Hansen, J.H.L., and Proakis, J.G. (1999).
Discrete-time processing of speech signals. Wiley-IEEE
Ehrlich, R. and Curran, D. (1999). Major HDD TMR
sources and projected scaling with TPI. IEEE Transac-
tions on Magnetics, 35(2), 885–891.
Guo, L. and Chen, Y.J. (2001). Disk ﬂutter and its
impact on hdd servo performance. IEEE Transactions
on Magnetics, 37(2), 866 –870. doi:10.1109/20.917633.
IEEJ, Technical Commitee for Novel Nanoscale Servo
Control (2007). NSS benchmark problem of hard disk
drive systems. http://mizugaki.iis.u-tokyo.ac.jp/nss/.
Landau, I.D., Constantinescu, A., and Alma, M. (2009).
Adaptive regulation-Rejection of unknown multiple nar-
row band disturbances. In 17th Mediterranean Confer-
ence on Control & Automation, 1056–1065. IEEE.
Landau, I.D. and Zito, G. (2006). Digital control systems:
design, identiﬁcation and implementation. Springer
Ohnishi, K., Shibata, M., and Murakami, T.
(1996). Motion control for advanced mechatronics.
IEEE/ASME Trans. Mechatronics, 1(1), 56 –67.
Shoureshi, R. and Knurek, T. (1996). Automotive appli-
cations of a hybrid active noise and vibration control.
IEEE Control Systems Magazine, 16(6), 72–78.
Skogestad, S. and Postlethwaite, I. (2005). Multivariable
feedback control analysis and design. New York.
Sugita, S. and Tomizuka, M. (2012). Cancellation of un-
natural reaction torque in variable-gear-ratio. Journal of
Dynamic Systems, Measurement, and Control, 134(2),
Tomizuka, M. (1987). Zero phase error tracking algorithm
for digital control. ASME Journal of Dynamic Systems,
Measurements, and Control, 109(1), 65–68.
Tomizuka, M. (2008). Dealing with periodic dis-
turbances in controls of mechanical systems. An-
nual Reviews in Control, 32(2), 193 – 199. doi:
Zheng, J., Guo, G., Wang, Y., and Wong, W. (2006).
Optimal narrow-band disturbance ﬁlter for pzt-actuated
head positioning control on a spinstand. IEEE Trans-
actions on Magnetics, 42(11), 3745–3751.
Zhou, K. and Doyle, J.C. (1998). Essentials of robust
control. Prentice Hall New Jersey.