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.

Inverse-Based Local Loop Shaping and

IIR-Filter Design For Precision Motion

Control

Xu Chen ∗Atsushi Oshima ∗∗ and Masayoshi Tomizuka ∗

∗Department of Mechanical Engineering, University of California,

Berkeley, CA, 94720, USA (e-mails:

{maxchen,tomizuka}@me.berkeley.edu).

∗∗ Mechatronics Development Center, NSK Ltd, Fujisawa, Kanagawa

251-8501, Japan (email:atsuoshi508@gmail.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

1. INTRODUCTION

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

0

0.005

0.01

0.015

0.02

0.025

0.03

Frequency (Hz)

Magnitude

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

shaping.

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

disturbance ampliﬁcation.

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

paper.

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

spectral peaks.

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)

T=¯

Gr→y=P C +z−mQˆ

P−1P

1 + P C +z−mQ(ˆ

P−1P−1) (1)

S= 1 −T=1−z−mQ

1 + P C +z−mQ(ˆ

P−1P−1).(2)

Here ˆ

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ˆ

P−1(z−1) is

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 ˆ

P−1P= 1,

(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.

+-

r(k

)

y(k

)

C

(z

¡

1

)

P

(z

¡

1

)

z

¡

m

z

¡

m

^

P

¡

1

(z

¡

1

)

Q

(z

¡

1

)

d

(k

)

+

+

+

+

+ +

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).

•robust stability–∀ω,

∆(e−jω )T(e−jω )

<1, where

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)

point.

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)

A(αz−1)K(z−1) (5)

Q(z−1) = BQ(z−1)

A(αz−1)(6)

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

i=1(1 −

2γcos ωiz−1+γ2z−2).

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)

give

Q(z−1) = (α2−1)z−2+m−(α−1) 2 cos ω0z−1+m

1−2αcos ω0z−1+α2z−2(9)

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 −

z−mQ(z−1)).

4(10) is a Diophantine equation. Some existing solvers are provided

in Landau and Zito (2006).

103104

−20

−15

−10

−5

0

Magnitude (dB)

1−z−mQ(z−1)

103104

−40

−30

−20

−10

0

Magnitude (dB)

Frequency (Hz)

Q(z−1)

α=0.945

α=0.993

Fig. 3. Magnitude responses of two example Q(z−1)’s and

the corresponding 1 −z−mQ(z−1)’s

101102103

−40

−30

−20

−10

0

10

Frequency (Hz)

Magnitude (dB)

baseline

α = 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

high frequencies;

•the robustness of the algorithm against plant uncer-

tainty is decreased as the term z−mQ(ˆ

P−1P−1) may

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′

Q(z−1).(11)

Designing B0(z−1) = 1 + z−1for example, will yield

Q(e−jω )

ω=π=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

Q(e−jω )

near ω=ωp.

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.

1−2βcos ωpz−1+β2z−2

βe±j ωparound ωp

β∈(0,1]

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

frequency-domain equality

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

103104

−8

−6

−4

−2

0

2

Magnitude (dB)

1−z−mQ(z−1)

103104

−50

−40

−30

−20

−10

0

Magnitude (dB)

Frequency (Hz)

Q(z−1)

B0 = 1

B0 = 1 + 0.7z−1

IIR B0

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

vibration.

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-

sigma values.

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%

102103104

0

50

100

Gain (dB)

102103104

−180

−90

0

90

180

Phase (degree)

Frequency (Hz)

Fig. 6. Frequency response of the plant in the HDD

benchmark

500 1000 1500 2000 2500 3000

0

0.01

0.02

0.03

Magnitude

w/o compensation

w/o compensation 3σ = 33.54 %TP

500 1000 1500 2000 2500 3000

0

0.01

0.02

0.03

Frequency (Hz)

w/ compensation

Magnitude

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

100101102103104

−20

−15

−10

−5

0

Magnitude (dB)

1−z−mQ(z−1)

100101102103104

−25

−20

−15

−10

−5

0

Magnitude (dB)

Frequency (Hz)

Q(z−1)

Fig. 8. 1 −z−mQ(z−1) and Q(z−1) used for vibration

rejection in HDDs

21 21.5 22 22.5 23

−30

−20

−10

0

10

20

30

Revolution

PES (%TP)

w/ compensation

w/o compensation

Fig. 9. Time traces of the position error signals with and

without compensation

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

vibration frequency.

0 0.2 0.4 0.6 0.8 1 1.2

−1

−0.5

0

0.5

1

Steering speed (rad/s)

w/o compensation: error 3σ = 0.19402

Reference

Measurement

0 0.2 0.4 0.6 0.8 1 1.2

−1

−0.5

0

0.5

1

Time (sec)

Steering speed (rad/s)

w/ compensation: error 3σ = 0.102

Reference

Measurement

Fig. 10. Time traces of the EPS tracking result during

variable-speed steering

5 10 15 20 25 30 35 40 45 50 55 60

0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

Frequency (Hz)

Magnitude (rad/s)

w/o compensation: 3σ = 0.20826

w/ compensation: 3σ = 0.052549

Fig. 11. Spectra of the tracking errors during constant

speed steering

5. CONCLUSION

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

analysis.

6. ACKNOWLEDGMENT

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.

REFERENCES

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

–415. doi:10.1109/TCST.2011.2178025.

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

Press.

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

Verlag.

Ohnishi, K., Shibata, M., and Murakami, T.

(1996). Motion control for advanced mechatronics.

IEEE/ASME Trans. Mechatronics, 1(1), 56 –67.

doi:10.1109/3516.491410.

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),

021019.

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:

10.1016/j.arcontrol.2008.07.002.

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.