Sunteți pe pagina 1din 60

2.

171 Problem Set 1


Assigned: Wednesday, September 6, 2006
Due:
Wednesday, September 13, 2006 (in class)
Reading: Franklin, Powell, and Workman (FPW) Ch 1, Ch 2, Ch. 3

Problem 1: FPW 2.9 a-f (not g) Calculate the transfer function TYc((ss)) for the complete
controller including the estimator and state feedback. Use Matlab to plot the loop
transfer function for the controller plus plant. What are the crossover frequency and
phase margin for this loop?
Problem 2: FPW 2.17
Problem 3: FPW 2.18
Problem 4: FPW 2.19
Problem 5: FPW 3.1
Problem 6: FPW 3.3
Problem 7: FPW 3.5
Note: You are to design a continuous-time PID controller to meet the problem speci
cations, and then map this controller to discrete-time via any of the approximations
presented in class or in the text. Carefully show your design approach and calculations.
(For the purposes of this problem, do the approximations by hand, rather than directly
using Matlab to generate the transformations.)
Use Matlab/Simulink to simulate the step response of your closed-loop system with
i) the continuous-time PID controller, and
ii) the approximating discrete-time controller which you designed. Please include plots
of the control signal (plant input) and the plant output for each case. How do these
repsonses compare?
In your Simulink simulations, reduce the sample rate from 6 kHz, and comment on the
eect of longer sample times in the resulting signals. Include relevant plots to show
these eects. At about what reduced sample rate does the system go unstable? FPW
2.9 a-f (not g) Calculate the transfer function TYc((ss)) for the complete controller including
the estimator and state feedback. Use Matlab to plot the loop transfer function for the
controller plus plant. What are the crossover frequency and phase margin for this loop?

2.171 Problem Set 2


Assigned: Wed. September 13, 2006
Due:
Wed. September 20, 2000
Reading: FPW Ch. 4 (starred sections optional)

Problem 1: FPW 4.5 a,b,c


Problem 2: FPW 4.6
Problem 3: FPW 4.9 a,b,c
Problem 4: FPW 4.11
Problem 5: FPW 4.12
Problem 6: FPW 4.15
Problem 7: FPW 4.16

2.171 Problem Set 3

Assigned: Mon. Sept 25, 2006


Due:
Wed. Oct 4 , 2006, in class
Reading: F,P,&W Ch. 4, starred sections optional; F,P,&W 5.1, 5.2, 5.3
(Sections 5.4 and 5.5 are only of historical interest at this point in time;
these techniques are largely obsolete in the present era.)

Problem 1 FPW 4.19 Use Matlab to plot the discrete-time Bode plot for this plant assuming a
DC gain of unity. Also, use Matlab to plot the system unit step response.
Problem 2 FPW 4.28
Problem 3 FPW 4.29
Problem 4 Consider a continuous-time signal ya (t) = sin t which is sampled at a rate of T
seconds/sample to yield y(k) = ya (kT ).
a) Show that y(k) = sin k where = T .
b) One can notice that although the sampled sinusoid is a pure harmonic at frequency , the time
waveform appears to consist of beats as approaches . Some insight into this appearance
may be gained as follows. Specically, show that a discrete-time signal y(k) = sin k may
be written as y(k) = sin k cos k, and thus as a beat tone between frequencies and ,
where .
Hint: First use the periodicity of discrete-time frequencies to write
1
sin k = [sin k + sin( 2)k].
2
The following trig identities may be helpful:
sin a + sin b = sin(A + B) + sin(A B) = 2 sin A cos B,
where A = (a + b)/2, and B = (a b)/2.
c) Make a sketch of one period of the waveform y(k) = sin(5/6)k. Indicate graphically how the
result of part b) applies to this waveform.
d) Assume T = 1 and that ya (t) = sin(5/6)t, so that the waveform in part c) could result from
sampling this sinusoid without aliasing. Sketch the relationship between the waveform ya (t)
and its samples y(k).
e) For the example in part c) we have chosen only slightly less than so that the beat tone is
at a relatively low frequency. However, the result from b) is general. Explain what happens
to the apparent beating phenomena as is small relative to , so that the sampled signal
looks very much like a sinusoid, with little apparent beating. You may want to illustrate the
point with a specic numerical example.

Problem 5 Consider the loop shown below in a gure taken from the notes handed out in class
last week.

Assume that the plant transfer function Gp (s) is as given in F,P,&W Problem 4.28, and
that we sample with T=10 msec as in that problem. Now assume that the digital controller
is a pure proportional gain K as shown in the gure. The reference r is assumed to be a
discrete-time signal.
a) Calculate the closed-loop transfer function Y(z)/R(z)
b) Calculate the closed-loop poles and zeros of the system as a function of K.
c) For what range of K is the closed loop system stable?
d) Use Matlab to simulate the closed-loop step response for several interesting values of K. Explain
these responses in light of the closed loop pole and zero locations.
Problem 6 Consider a system with a transfer function
H(z) =

0.5z 5 0.5
z 6 + 0.5z 5

(1)

a) Write the dierence equation corresponding to (1). What is the DC gain of this lter?
b) Draw a minimal block diagram representation of this system in terms of blocks consisting of
unit delays, summing junctions, and gains. What is the order of this system?
c) Sketch the response of this system to a unit pulse, i.e., a signal which is 1 for k = 0 and
zero elsewhere. Be sure to label both axes of your sketch and to show relative amplitudes.
Use whatever approach you nd easiest to develop your sketch, but be sure to explain your
method.
Problem 7 A given linear, time-invariant (LTI) system H has a unit-step response s(k) which is
s(k)

0.5
-1

-1

shown below
2

Note that the only non-zero values of s(k) are at k = 2, 3, 4.


a) Use any convenient method to determine the dierence equation for this system in terms of an
input e(k) and an output y(k). Please explain your approach.
b) Now suppose that the system input is a unit sample, i.e., e(k)=(k). Using whatever approach
you nd most ecient, write an expression for the resulting output y(k) which is valid for
all k.
c) Find the z-transform S(z) of s(k) as given in the gure above. How is this transform related to
the the system transfer function H(z)?

2.171 Problem Set 4

Assigned: Wed. Oct 4, 2006


Due:
Wed. Oct 11, 2006, in class
Reading: F,P,&W 5.1, 5.2, 6.1, 6.2, 7.1, 7.2, 7.3, Oppenheim and Wilsky Ch. 7, Notes from class

Problem 1 Oppenheim and Wilsky, Problem 7.29


Problem 2 Oppenheim and Wilsky, Problem 7.31
Problem 3 The gure below shows a discrete-time waveform y(k) = ya (kT ) which results from
sampling a continuous time sinusoid ya (t) = sin(t + ) at sampling instants t = kT . Note
that the waveform is periodic with period N = 16.
1
0.8
0.6
0.4
0.2

y(k)

0
-0.2
-0.4
-0.6
-0.8
-1

10

12

14

16

18

20

a) What are the values of and with the smallest magnitudes which could give the waveform
shown above? (These will of course depend on T.) Explain your reasoning and show the
relevant calculations.
b) What are all the possible values of and which could give the waveform shown above?
Explain your reasoning and show the relevant calculations.
Problem 4 F,P, & W 5.7
Problem 5 F,P, & W 6.3 Only work the problem for the forward, backward, Tustin, and polezero matching approaches, i.e., only for parts i, ii, iii, and v. Do not solve for the other
transformation types. Note: For this problem, let T = 0.015 s, rather than the sample time
indicated in the problem statement.
Problem 6 F,P, & W 7.3
Problem 7 F,P, & W 7.15

Problem 2 (15 points): The Bode plot of a stable discrete-time filter is shown below.

. . . . . . . . . .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . .

1o

10'

Frequency

.. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . .
. . . . . . . .
.. .. . . . .. .. . . . .

. . . . . . . .
,

1o

Frequency
a) What is the transfer function G ( z ) of this filter? Explain how you estimated the filter
transfer function from the given Bode plot. Sketch the filter poles and zeros on the
zplane.

P r o b l e m 3 (20 points): This problem considers six transfer functions. These are

H5(z) =
where rl = 0.99 and Q1 = 0.2.

1- 2rl cos R1
z2 - z2rl cos

+ rf
+ r:

(1- 2rl cos fll r;)(z2 - z2r2cos Q2


= (z2 - t2rl cos Cll r:)(l - 27-2cos R2
where rl = 0.99 and

Q1

= 0.2, as before, and

7-2

+ rg)
+
T;)

= 0.99 and f12 = 0.05.

On two pages attached to the end of this exam are six step responses and six
frequency response (Bode) plots. These plots are labeled A, B, C, D, E, F; and I,
11, 111, IV, V, VI; respectively. For each of the transfer functions above, indicate
which are the corresponding step and frequency responses. Your answer should
take the form of a number from 1-6 for each transfer function followed by a capital
letter indicating the corresponding step response, followed by a Roman numeral
indicating the corresponding frequency response. Wrong answers will count as
zero; no partial credit will be given in this problem.

2.171 Problem Set 6

Assigned: Wed. Nov 1, 2006


Due:
Wed. Nov 8, 2006, in class

Problem 1 Suppose we have a plant with the transfer function


Gp (z) =

(z 1)3
(z 0.999)3 (z 0.99)2

Assume that this plant is in the forward path of a unity-negative-feedback loop, with a
controller transfer function Gc (z) preceeding the plant. The objective of this problem is to
design a controller which stabilizes this plant with as wide a bandwidth as possible.
a) Sketch the Bode plot of this plant. Use Matlab to conrm your sketch.
b) Design a controller Gc (z) which stabilizes this plant with as wide a bandwidth as possible.
Clearly explain your design thinking. Use a Nyquist analysis to indicate the stability issues
and to show that your design results in a stable system.
c) For your chosen controller, sketch a root locus as a function of loop gain. Use Matlab to conrm
your sketch.
Problem 2 FPW 7.13 ac only.
Problem 3 This problem looks at the diculties associated with the design in Problem 2. Specif
ically, we will see that the sample rate of 50 Hz specied in the problem is too low to allow a
robust design. Also, we will see that the rise time spec in Problem 2 is too long to guarantee
a suciently robust design.
a) Plot the response of your system in x and i to an initial position error in x of 1 mm. Comment
on the features of this response with respect to the designed damping and natural frequency.
b) Sketch a Bode plot of the loop transfer function of your design in Problem 2. You should see that
there are gain-increase and gain-decrease margins. By this we mean that the controlled system
will go unstable for some gain-increase factor and for some gain decrease factor. Another way
to say this is that the system is conditionally stable. What are these margins? What is the
loop phase margin? Put this information in the form of a Nyquist plot, and clearly indicate
the margins on this plot.
c) Now, repeat your design eorts with a sample rate of 5 kHz. This will yield the possibility of
acceptable control performance. Further, this time we will design to bandwidth and phase
margin specications. Develop a design which yields a gain-reduction margin of at least 4, and
a gain-increase margin of at least 4. Comment on the loop bandwidth (crossover frequency)
required to meet this specication. What phase margin results? Construct a Nyquist analysis
for your loop design and indicate these margins on the Nyquist plot.

Problem 4 In the next problem set we will consider the control of systems with resonances well
above the intended crossover frequency, and see that these cause signicant challenges in
achieving high loop bandwidth. In this problem, we take a brief look at the control of
systems with resonances below the intended crossover. Such a transfer function might occur
in the control of a mass mounted on a very compliant exure. Plant A represents a free mass,
and plant B represents a mass mounted on a compliant exure. The intuition here is that the
exure has little eect above the system resonant frequency. We dene the transfer functions
for systems A and B as
1
HA (z) =
(1)
(z 1)2

and

HB (z) =

1
(z Rej )(z Rej )

(2)

Here, the parameters have the values R = 0.999, and = 0.01.

a) Sketch Bode plots for both of these systems. Argue that the Bode plots are essentially identical
for frequencies > 0.01 rad/sample. Explain.
b) Use a root locus analysis to convince us that any controller with a lead network will be able to
stabilize both of these plants, and that the system poles will be in nearly identical locations
for both controllers once the bandwidth is above 0.01 rad/sample.
c) Assume that we use a lead compensator of the form
G(z) =

0.02(z 0.95)
(z 0.8)

(3)

to control plant A in a unity negative feedback loop. With these parameters, the loop crosses
over at about 0.1 rad/sample. Assuming this crossover frequency, and using any reasonable
approximations, calculate the phase margin of this loop.

Problem 5 Our studies so far have primarily considered loop transmissions which are essentially
low-pass. However, there are also some loops which are high-pass, i.e., have no gain at DC.
These types of loops also have stability issues, however, the unity magnitude crossover point
now occurs at low frequencies. Consider the discrete-time feedback loop shown below.

As can be seen in the gure, this loop has a reference input r(k), a control signal u(k), and
an output signal y(k). The loop transmission has a variable gain K, three zeros at z = 1, one
pole at z = a, and two poles at z = b. The zeros at z = 1 force the loop gain to be zero at
DC.
(a) For this loop, calculate the transfer functions H1 (z) = Y (z)/R(z) and H2 (z) = U (z)/R(z).
What are the zero locations for these two transfer functions?
(b) In this and subsequent sections, we assign the parameters b = 0.99 and a = 0.9. For these
values, and with K = 1, sketch a Bode plot of the negative of the loop transmission for this
system. For what value of frequency is the phase equal to +180 degrees? Be sure to show
how you found this frequency and include it on your Bode plot. What is the magnitude of
the loop transmission at this frequency?
(c) Sketch a root locus for this system with K as the variable loop gain. Do not bother to
numerically calculate real-axis breakaway points. (Hint: The angles of approach to the zeros
will help greatly in drawing the locus. Remember that the phase of the negative of the loop
transmission must be an odd multiple of 180 degrees in order for a point to be on the locus.
Remember also that all three poles must end up at the three zeros.) At approximately what
point(s) do poles cross the unit circle? Why? Label these points on your sketch.
(d) Using the analyses above, determine the approximate range of gain K > 0 for which the loop
is stable. Explain your approach.
(e) For K = 1, use your Bode plot from b) to develop a Nyquist analysis for this system. Note
that you do not need to detour around the zeros on the unit circle, since the magnitude is
zero there. Indicate how the Nyquist analysis shows the allowable range of K for stability.
Be sure also to show the contour on which you are evaluating the negative of the loop
transmission.
(f ) In this section, replace the gain K with a transfer function G(z). Choose G(z) to achieve a
loop crossover frequency of 0.01 rad/sample with about 45 degrees of phase margin. Clearly
indicate your design thinking; also clearly state your transfer function G(z) and the numerical
values of its parameters. Sketch a Bode plot of the negative of the loop transmission for your
design.

2.171 Analysis and Design of Control Systems

Prof. David Trumper

Final Exam
Problem 1: This problem considers a system for which the impulse response h(k) is
equal to 1 for N = 0, 1, ..., N 1, and equal to zero elsewhere. That is,
h(k) =

N
1

(k i)

(1)

i=0

The system has an input u and an output y.


a) For this system, solve for the transfer function H(z). Clearly show your
reasoning.
b) Find a dierence equation in terms of u and y which has this impulse
response h(k). Explain why this type of system is often referred to as an
N-point averager. (It may also be called a box-car lter, because of the
shape of the impulse reponse.)
c) Show that the frequency response of this system is given by
H(ej ) =

sin(N /2) j(N 1)/2


e
sin(/2)

(2)

Sketch a Bode plot for this system for the value N = 4. Use a linear
frequency and magnitude axis, and sketch from = 0 to = . Be sure
to include both magnitude and phase, and to label the axes with numerical
values.
d) For N = 4, at what frequencies is the frequency response equal to zero?
Explain why this occurs from a time-domain perspective for an input cos k.
Support your argument with relevant sketches.

Problem 2: This problem considers a continuous-time system with a transfer function


H(s) =

s2

a2
.
a2

(3)

This might model the linearized behavior of a magnetic suspension. Note


that both poles are real-axis, with one in the right-half plane.
a) Calculate the zero order hold equivalent Heq (z) for this system with a
sampling time T .

2.171 Analysis and Design of Control Systems

Prof. David Trumper

b) Show that for a = 40, T = 0.001 sec, Heq (z) becomes


Heq (z) =

8 104 (z + 1)
.
z 2 2.0016z + 1

(4)

Please use this transfer function for all subsequent work even if your answer
does not agree with it. Clearly state if this is the case, and then use the
answer we are providing above. Plot the poles and zeros of this system on
the z-plane. Do the poles map as z = esT ?
c) Sketch a Bode plot for Heq (z). Use care in handling the pole outside the
unit circle. Be sure to label and scale the axes. Hint: The magnitude
will be the same as for a system with coincident poles on the real axis
at the location of the single pole inside the unit circle. The phase will
however be dierent. You can also use a few test frequencies to guide you
in sketching. Does the DC gain agree with that of the continuous time
system? What is the high frequency gain (z = 1)?
d) Sketch a root locus for this system imbedded in a unity-negative-feedback
loop with a proportional controller G(z) = G0 . Will any value of G0
stabilize the system?
e) Develop a Nyquist stability analysis for this system under the proportional
control above, and describe how it conrms the root locus analysis in d).
It will be easiest to choose a z-plane contour which does not intersect the
real-axis pole outside the unit circle in order to avoid constructing detours.
Note that it is OK for the contour to intersect with a zero, since the loop
gain magnitude is nite there.
Clearly show both your chosen z-plane contour and the resulting GHplane image. Label corresponding points on the contours as A, B, C,
etc. Also clearly indicate how you handle the presence of the unstable
loop-transmission pole.
f) Design a lead compensator for this system of the form
G(z) =

K(z )
z

(5)

in order to stabilize the loop with a phase margin greater than 45 de


grees at as high a crossover frequency as possible. Clearly indicate your
design approach. What are the resulting values of phase margin m , and
crossover frequency c ? For what range of gains K will your design be
stable?
g) Sketch a root locus for your design above assuming that K varies from
0 to innity. Estimate the point at which the locus last crosses the unit
circle, and any other features of the locus which you nd pertinent. Do
not explicitly calculate breakaway and reentry points

2.171

Quiz #1

October 18, 2006

This quiz is open-book. There are four problems, and each is worth 25 points.
Problem 1 (25 points): This problem considers six transfer functions. These are
20(z 0.95)
z1

(1)

z1
z 0.9

(2)

H3 (z) =

z 0.9
10(z 0.99)

(3)

H4 (z) =

10(z 0.99)
z 0.9

(4)

1 2r1 cos 1 + r12


z 2 z2r1 cos 1 + r12

(5)

(1 2r1 cos 1 + r12 )(z 2 z2r2 cos 2 + r22 )


(z 2 z2r1 cos 1 + r12 )(1 2r2 cos 2 + r22 )

(6)

H1 (z) =

H2 (z) =

H5 (z) =
where r1 = 0.995 and 1 = 0.1.
H6 (z) =

where r1 = 0.995 and 1 = 0.1, as before, and r2 = 0.9995 and 2 = 0.01.


On two pages attached to the end of this exam are six step responses and six
frequency response (Bode) plots. These plots are labeled I, II, III, IV, V, VI; and
A, B, C, D, E, F; respectively. For each of the transfer functions above, indicate
which are the corresponding step and frequency responses. Your answer should
take the form of a number from 1-6 for each transfer function followed by a capital
letter indicating the corresponding step response, followed by a Roman numeral
indicating the corresponding frequency response. Wrong answers will count as
zero; no partial credit will be given in this problem.

Problem 2 (25 points): Consider a continuous time lter:


H(s) =

10(s + 1)
(0.5s + 1)(0.05s + 1)

a) Use the forward Euler approximation to map this to an approximating discrete-time


system for T = 0.1sec.
b) What is the approximating dierence equation?
c) Plot the poles in the z-plane. Comment on the quality of the approximation.

Problem 3 (25 points): A given linear, time-invariant (LTI) system H has an impulse
response s(k) which is shown below:

Note that the only non-zero values of s(k) are at k = 1, 3, 4, 5.


a) Use any convenient method to determine the dierence equation for this system in
terms of an input e(k) and an output y(k). Please explain your approach.
b) Draw a minimum block diagram realization of the system from the input to the
output.
c) Now suppose that the system input is a unit step, i.e., e(k)=us (k). Using whatever
approach you nd most ecient, write an expression for the resulting output y(k)
which is valid for all k.
d) Find the z-transform S(z) of s(k) as given in the gure above. How is this transform
related to the the system transfer function H(z)?

Problem 4 (25 points): A block diagram for a system with a varying plant model
and a xed lead compensator is shown below:

+
-

G c(z)

Gp(z)

Controller

Plant

Gc (z) = K z0.5
z0.2
Make reasonably accurate root locus plots for K 0.
a) Gp (z) =

1
(z1)2

b) Gp (z) =

1
(z 2 2R0 cos(0 )z+R02 )(z1)

where 0 = 4 , R0 = 0.9

c) Gp (z) =

z 2 2R1 cos(1 )z+R12


(z 2 2R2 cos(2 )z+R22 )(z 2 1)

where R1 = 0.99, 1 = 3 , 2 =

32
,
100

cos(1 )
R2 = R1 cos(
2)

(II)
1

0.8
Magnitude

Magnitude

(I)
10

6
4
2
0

0.6
0.4
0.2

200

400
600
Sample

800

1000

200

(III)

1000

800

1000

800

1000

1
0.8
Magnitude

50
Magnitude

800

(IV)

100

-50

-100

400
600
Sample

0.6
0.4
0.2

200

400
600
Sample

800

1000

200

(V)

400
600
Sample
(VI)

1200
1000

Magnitude

Magnitude

1.5

800
600
400

0.5
200
0

200

400
600
Sample

800

1000

200

400
600
Sample

(A)

(B)

10

Magnitude

Magnitude

10

10

10

-1

-1

10

10
-4

10

-2

10
Frequency (rad/sample)

-2

10

10
10
Frequency (rad/sample)

(C)

(D)

10

Magnitude

Magnitude

10

-2

10
Frequency (rad/sample)

-2

10

10

10
Frequency (rad/sample)

(E)

10

(F)

10

10

Magnitude

Magnitude

10
-1

10

-1

10

-2

10
-2

10

-2

10
10
Frequency (rad/sample)

-2

10

-1

10
10
Frequency (rad/sample)

2.171

Quiz #2

Nov. 20, 2006

This quiz is open-book. You may also refer to two 8 1/2 by 11 sheets of notes. There is one
problem; all seven sections of the problem will count equally.
Problem 1 This problem considers a continuous-time system with a transfer function
H(s) =

a2
.
s2 a2

(1)

This might model the linearized behavior of a magnetic suspension. Note that both poles are
real-axis, with one in the right-half plane.
a) Calculate the zero order hold equivalent Heq (z) for this system with a sampling time T .
b) Show that for a = 40, T = 0.001 sec, Heq (z) becomes
Heq (z) =

8 104 (z + 1)
.
z 2 2.0016z + 1

(2)

Please use this transfer function for all subsequent work even if your answer does not agree
with it. Clearly state if this is the case, and then use the answer we are providing above. Plot
the poles and zeros of this system on the z-plane. Do the poles map as z = esT ?
c) Sketch a Bode plot for Heq (z). Use care in handling the pole outside the unit circle. Be sure
to label and scale the axes. Hint: The magnitude at low frequencies will be approximately
the same as for a system with coincident poles on the real axis at the location of the single
pole inside the unit circle. The phase will however be dierent. You can also use a few test
frequencies to guide you in sketching. Does the DC gain agree with that of the continuous
time system? What is the high frequency gain (z = 1)?
d) Sketch a root locus for this system imbedded in a unity-negative-feedback loop with a propor
tional controller G(z) = G0 . Will any value of G0 stabilize the system?
e) Develop a Nyquist stability analysis for this system under the proportional control above, and
describe how it conrms the root locus analysis in d). It will be easiest to choose a z-plane
contour which does not intersect the real-axis pole outside the unit circle in order to avoid
constructing detours. Note that it is OK for the contour to intersect with a zero, since the
loop gain magnitude is nite there.
Clearly show both your chosen z-plane contour and the resulting GH-plane image. Label
corresponding points on the contours as A, B, C, etc. Also clearly indicate how you handle
the presence of the unstable loop-transmission pole.
f ) Design a lead compensator for this system of the form
G(z) =

K(z )
z

(3)

in order to stabilize the loop with a phase margin greater than 45 degrees at as high a crossover
frequency as possible. Clearly indicate your design approach. What are the resulting values
of phase margin m , and crossover frequency c ? For what range of gains K will your design
be stable?
g) Sketch a root locus for your design above assuming that K varies from 0 to innity. Estimate
the point at which the locus last crosses the unit circle, and any other features of the locus
which you nd pertinent. Do not explicitly calculate breakaway and reentry points.

2.171 Quiz 2 Solutions


Problem 1:
H(s) =

a2
s 2 a2

a) Calculate the zero order hold equivalent Heq (z).


Heq (z) =

z 1 G(s)
Z{
}
z
s

G(s)
a2
Z{
} = Z{ 2
}
s(s a2 )
s

Z{

Z{

G(s)
A
B

} = Z{
+
}

s(s + a) s(s a)
s

G(s)
1
a
1
a

} = Z{
+
}

s
2 s(s + a) 2 s(s a)

Using Transform 12 in Table B.2 of FPW, we have:


Z{

Z{

G(s)
z(1 eaT )
z(1 eaT )

}=
s
(z 1)(z eaT ) (z 1)(z eaT )

G(s)
z(1 eaT )(z eaT ) + z(1 eaT )(z eaT )
}=
s
(z 1)(z eaT )(z eaT )

Heq (z) =

z 1 z(1 eaT )(z eaT ) + z(1 eaT )(z eaT )


z
(z 1)(z eaT )(z eaT )

Heq (z) =

(1 eaT )(z eaT ) + (1 eaT )(z eaT )


(z eaT )(z eaT )

Heq (z) =

Heq (z) =

(2 eaT eaT )z eaT eaT


(z eaT )(z eaT )

(eaT + eaT 2)z + eaT + eaT


(z eaT )(z eaT )

b) Show that for


a = 40, T = 0.001sec, Heq (z) =

8 104 (z + 1)
z 2 2.0016z + 1

.
Heq (z) =

(e0.04 + e0.04 2)z + e0.04 + e0.04


(z e0.04 )(z e0.04 )

Heq (z) =

8 104 (z + 1)
z 2 2.0016z + 1

The answer matches, as expected.


The poles map closely to z = esT due to the fact that the sampling frequency is
signicantly higher than the frequency of the poles.
esT
1 = 1.0408 = p1z

esT
2 = 0.9608 = p2z
PoleZero Map
1
0.8
0.6

Imaginary Axis

0.4
0.2
0
0.2
0.4
0.6
0.8
1
1

0.5

0.5
Real Axis

Figure 1: Pole Zero Map of Plant

1.5

c) The DC value of the transfer function is -1, so the magnitude is 1 with a phase of
-180. This result can be found by plugging in z = 1. This discrete DC gain agrees
with the continuous time DC gain, as both are -1. The high frequency gain is 0,
as if z = 1, then the numerator goes to 0.
The poles near z=1 can both be treated as if they were at z=0.9608 for the purposes
of the magnitude plot. Because of this, the magnitude plot starts o with a at
slope, and the slope turns to -2 at the pole frequency. The value of the magnitude
at the breakpoint is -3db. The plot continues with this -2 slope until the zero is
approached, at which the magnitude decreases sharply towards 0.
The two poles wind up contributing 180 of phase to the system for low frequen
cies and 360 of phase at high frequencies. The zero is approached at an angle
nearly perpendicular to the real axis, so it contributes 90 at high frequencies.
Other interesting points such as the 2 frequency point can be observed. At 2
rad/sample, each pole contributes 135 of phase while the zero contributes 45 .
The magnitude that that point is 12 8 104. Connecting these points, we can
form a reasonable Bode plot.
0

Magnitude

10

10

10

10

15

10

10

10

10
Frequency (rad/sample)

10

10

Phase()

150
200
250

300
3
10

10

10
Frequency (rad/sample)

Figure 2: Bode Plot of Plant

10

10

d) There are no values of G0 that can stabilize the system. The poles break away from
the real axis outside of the unit circle, and proceed to circle around the zero in
a circular arch of radius 2. They break back into the real axis, but even at high
gains, one pole continues to remain unstable.
Root Locus
2

1.5

Imaginary Axis

0.5

0.5

1.5

2
3.5

2.5

1.5

0.5

0.5

Real Axis

Figure 3: Root Locus of Proportional Controller + Plant

1.5

e) The Nyquist contour can be developed using the unit circle, and thus the same data
points as described in the Bode plot construction.
In Figure 4, three points are indicated. These exist at frequencies of 0, 2 , and .
The Nyquist contour will rst be drawn for G0 = 1 and generalized afterwards.
At DC, the magnitude was already found to be 1 with a phase of 180 . At 2 , the
magnitude was found to be 12 8104 with a phase of 225 . Finally, at , the
magnitude is 0 due to the presence of the zero, and the phase is 180 180 +90 =
270 .
PoleZero Map
1
A=(1,0),B=(0,1),C=(1,0)
0.8
0.6

Imaginary Axis

0.4
0.2
0
0.2
0.4
0.6
0.8
1
1

0.5

0.5

1.5

Real Axis

Figure 4: Pole Zero Map of Plant and Useful Points for Nyquist

Using the presented points, a Nyquist plot can be constructed.

Figure 5: Nyquist Plot


The loop that is created is a clockwise loop. We can normalize the system
by observing the encirclements of the G10 point. Because of the unstable looptransmission pole, our goal is to produce a counterclockwise encirclement of the
1
point. However, this is never achieved. For small G0 , there is no encirclement
G0
at all, so Z=N+P=0+1=1. For large G0 , there is a clockwise encirclement, and
Z=N+P=1+1=2.

f ) Design a lead compensator for the system of the form


G(z) =

K(z )
z

The lead pole has already been set at the origin. The location of the zero has to be
determined. One possibility is to place the zero near the pole at z=0.9608. This
will greatly oset the phase contribution of that pole.
PoleZero Map
1
0.8
0.6

Imaginary Axis

0.4
0.2
0
0.2
0.4
0.6
0.8
1
1

0.5

0.5

1.5

Real Axis

Figure 6: PZ Map with Lead with Zero at z=0.95


A suitable location for the crossover can be estimated from the pole-zero plots.
For both cases, at very small frequencies ( << 1), the pole at the origin and the
zero at -1 have very little eect. For our approximation, the 2 poles and zero near
z = 1 appear as a single pole near z = 1. Lets test some approximate points. At
= /2, the phase is 135 90 + 45 = 180 . There is not enough phase
margin at this point. At = /4, the phase is 110 45 + 22.5 = 135 .
The phase margin is approximately 45 , so that frequency will suce. All that is
left to do is solve for the gain necessary at that frequency. The gain can quickly be
approximated. The gain introduced by the lead compensator is K(1 ). Putting
aside the K term, the lead compensator has already contributed 1 = .04 to
the gain. With the design of the lead compensator, the zero nearly cancels the
pole near the origin, so it appears as if there were only one pole near the origin in
total. The pole outside of the unit circle can be treated as if it were at z=0.96 for
magnitude calculations. Thus there is a breakpoint at = 0.04, and the following
rad
asymptote has a slope of -1. At the desired crossover frequency, = 0.8 sample
,
7

PoleZero Map
1
0.8
0.6

Imaginary Axis

0.4
0.2
0
0.2
0.4
0.6
0.8
1
1

0.5

0.5

1.5

Real Axis

Figure 7: PZ Map with Lead with Zero at z=0.97

Magnitude

10

10

10

10

15

10

10

10

10
Frequency (rad/sample)

10

10

100

Phase()

150
200
250
300
3
10

10

10
Frequency (rad/sample)

10

10

Figure 8: Bode Plot of Compensated System, K=1


the -1 slope has resulted in a gain of
1
1
1

20
= 500
. K = 500.
25
8

.
20

These two gains result in a gain of

Magnitude

10

10

10

10

10

10

10

10
Frequency (rad/sample)

10

10

Phase()

100
150
200
250
300
3
10

10

10
Frequency (rad/sample)

10

10

Figure 9: Bode Plot of Compensated System, K=520


The design is stable until the frequency = 2 is reached. The dierence in gain
between this frequency and = 4 is about 2, due to the -1 slope. Thus the system
is stable until a gain of approximately K = 1000 is used.
g) As previously solved for, the poles cross the unit circle with a gain of 1000, and they
cross at i.

Root Locus
1.5

Imaginary Axis

0.5

0.5

1.5
5

Real Axis

Figure 10: Root Locus of Compensated System

10

2.171
Design Project
November 1, 2006
Due: November 17, 2006, in File Drawer in lab by noon
Reading: Biernson handout
Note: This problem will require signicant time to solve well. Please be sure to start early. You
are allowed to talk general ideas over with other class members, but are required to develop your
controller details and simulations individually.

This problem focuses on the design of a MIMO controller via classical techniques, by attempting
to decouple the plant and then control it via a pair of approximately independent compensators.
We also introduce nonlinearities such as friction and quantization which make real-world designs
more challenging than most textbook problems. Thus this design exercise will allow you to develop
a feel for the application of digital control in a realistic setting.
This problem studies the design of the motion control system for a wafer stepper. This problem is
based upon the stage of the GCA machine which I brought into class. Some of the control issues
of this stage are highlighted in the handout of Ch. 15 from Principles of Feedback Control, Vol. 2,
G. Biernson, John Wiley and Sons, 1988.
The problem is broken into several parts. In part 1, we study a linear model and ask you to develop
controllers which will move the stage and settle it to the nanometer level in a reasonable amount
of time. In part 2, we include oor vibration and the nonlinearity of sensor quantization, and study
their eect on positioning errors. Finally, part 3 includes the additional nonlinearities of bearing
friction and actuator saturation. Here you need to develop control strategies to deal with these
nonlinearities. You also need to consider how to generate the reference trajectories as well as any
feedforward signals for the stage commands. This problem is open-ended in that there is no one
correct solution; try to think creatively about the best ways to solve the problem.
The system which we will study is shown in Figure 1. This model is one-dimensional in the sense
that we model all of the masses as able to move in only the x-direction. Springs and dampers
connected between elements are sensitive to the relative x-motion of their ends, and forces are
applied in the x-direction.
The wafer is carried on the mirror M4 , which is mounted to the ne stage M3 via the spring k4
and damper b4 . These elements model the relatively sti kinematic coupling which connects the
mirror to the ne stage. The ne stage moves on relatively soft exures k3 and b3 with respect
to the coarse stage M2 as driven by the input force F2 . In the real system this force is supplied
by a voice coil actuator, which is not modeled in any further detail herein. The coarse stage rides
on plain bearings; in Parts 1 and 2 we will model these as frictionless; in Part 3 we will include
the signicant Coulomb friction present in these bearings. The coarse stage is driven by force F1
with respect to the machine base M1 . In the real system, this force is supplied by a rotary motor
through a rack-and-pinion drive, but this mechanism is not modeled here. The machine base is
supported on spring k1 and damper b1 . These model the vibration isolation legs which are present
on the real stepper. In order to isolate well, these elements are made to be compliant. However,
this introduces the problem that the base is driven by the stage input forces, as you will see in
more detail as you work through your solution.

y2
Wafer
M4

Mirror
k4,b4

x4

F2

y1
M3

Fine Stage
k3,b3

x3

F1
M2

Coarse Stage

x2

Plain Bearing

M1

Machine Base
k1,b1

x1

Floor
x0
x

Figure 1: Stage system model.


The two system outputs are y1 , which is the distance between the coarse and ne stages, and y2 ,
which is the distance between the machine base and the mirror. In practice, y1 is measured with
a linear dierential variable transformer (LVDT) and y2 is measured with a laser interferometer.
Since the system lens is modeled as rigidly attached to the machine base, and the wafer is carried on
the mirror, the output y2 is the critical output for control purposes. The details of the lithography
process require that the errors in y2 from its setpoint are less than 10 nanometers RMS in a
500 msec exposure interval after each step. Since it is carried on exures, the travel of the ne
stage is limited; in all trajectories, the output y1 must be strictly less than 200 m (we view the
ne stage as having hard stops outside this range, but do not model these dynamically).
The main task of the stage system is to take repeated 20 mm steps as frequently as possible while
maintaining an exposure window of 500 msec during which time the RMS position error spec is
maintained. In each of the sections below, we state the model assumptions. Under these constraints,
design a controller which meets the specications. Tell us how you designed the controller, what
gives you condence that it will meet the specs, and include relevant simulation outputs that
show the specs are met. Also tell us what is the maximum step rate at which you can meet the
specications.
One further note on numerics: This system is 8th order, and with the controllers the order will be
perhaps double that. There are also widely spaced singularities (i.e., its sti). So you will have
to be very careful with the numerics of any of your simulations. Do reasonableness tests on any of
your data to be sure youre not seeing a numerical artifact.

Part 1: In this section, the system model is linear; the plain bearings are assumed to be frictionless,
and the actuators can apply any requested force. The only nonlinear constraint is that the
ne stage relative excursion y1 must be maintained at less than 200 m at all times. We
assume no base vibration, i.e., x
0 = 0. The linear model is given by the system matrices A1 ,
B1 , C1 , and D1 . These matrices and associated parameters for this and the other parts of
this problem are given in the le part1.m. (This and the other necessary les are available
through the course web page.)
The task here is to take repeated 20 mm steps (these steps can then be generated by a
square wave signal source). Between each step, there must be a 500 msec exposure window
during which time the error in y2 is held to less than 10 nm RMS. This error must be met
in steady-state when the startup transients have decayed; it need not be met during startup.
Please let us know whether your design meets spec during startup.
a) Design a linear controller to meet the specs given above. The controller has access to the
measurements y1 and y2 but cannot use any other system outputs. The controller can drive
the two input forces F1 and F2 . In your design you must also plan for reasonable robustness.
That is, while you know the model perfectly here, do not unrealistically take advantage of
this in your design. For example, using notch lters to exactly cancel the plant modes is
not reasonable. You should plan that the resonances may change slightly in frequency and
damping over time. As part of the controller design, we expect you to generate appropriatelyshaped reference trajectories (this is likely to be necessary to meet spec in any case). You
may also generate feedforward signals to drive the stage command forces in order to more
rapidly converge on the nal value. Any such feedforwards have to work in the presence of
plant uncertainties, nonlinearities, etc. You need to demonstrate that your design works to
spec even when plant parameters vary randomly by 10%.
In solving this design problem, we ask that you take a classical approach. That is, we want
you to attempt to implement transformations on the plant inputs and outputs which allow
you to decouple the two inputs and outputs and then drive these with two independent
compensators. You are free to also develop your own approach to this problem as long as
it lies within the classical design tools of using series compensation of an approximately
decoupled plant. Please tell us how and why you picked your approach. Tell us how you
designed your controller: What is the design philosophy? What calculations were required?
Why do you expect it to meet specs? What design iterations did you go through? How
robust is your controller design to variations in the plant resonance locations, gain changes,
and phase shifts? You also need to show us Bode or Nyquist plots that indicate the design is
stable and has good phase margin.
b) Simulate your controller driving the stage system. Provide plots of the system response which
convince us that your design meets the required specs. What is the maximum step rate
(exposures per minute) that your design supports? What limits you from going faster than
this? Why? Do some additional simulations where plant parameters are varied by 10%
while the controller design is held xed in order to demonstrate robustness. Note that since
this section is linear, the plant can be readily simulated using the linear simulation tools in
Matlab, and that you dont necessarily need to use a Simulink model which would run slower.
Part 2: In this section, we make the design problem somewhat more realistic by adding in oor
vibration and sensor quantization. The underlying system model remains linear, except for

the constraint on ne stage motion. The oor vibration model is a set of two sinusoids, i.e.,
x
0 (t) = e1 cos 1 t + e2 cos 2 t

(1)

The variables e1 , e2 , 1 , and 2 are given in the le part1.m (where w is used in place of .
The sensor quantization is as follows. The LVDT output y1 is quantized at the 25 nm level
(this represents an approximately 14-bit A/D converter on this channel). The interferometer
output y2 is quantized at the 2.5 nm level (this is a typical resolution for a laser interferometer
system). A Simulink representation of this model incorporating the oor motion and sensor
quantization is given in the le part2.mdl
a) For this system, design a controller which meets the specs. How did you address the base
vibrations? How did you address the sensor quantization? Include the outputs of simulations
which show that the specs have been met.
Part 3: In this section, we add in the constraints that the actuators have a maximum force ca
pability and that the plain bearings have a signicant friction term. Specically, assume
that F1 is limited to F1max and that F2 is limited to F2max . For this problem, assume
that F1max = 200 N and F2max = 50 N. Also, assume that the coarse stage plain bearings have
a Coulomb friction of 10 N. That is, the controller force (now termed F1c ) has subtracted
from it a term equal to 10 N times the sign of the relative velocity q4 , i.e.,
F1 = F1c 10 signum(q4 )

(2)

A Simulink representation of this model incorporating the actuator limits and bearing friction
is given in the le part3.mdl. Note that since we need an output of q4 to drive the friction
term, the plant in Part 3 uses augmented output matrices C2 and D2 as dened in part1.m.
One caution: the friction model introduces numerical chatter in the force applied to the
stage. You will need to run the simulation at a suciently ne update time in order to reduce
the eect of this chatter, so that artifacts are not signicant in the system outputs. The
simulation of Coulomb friction if problematic. If you can nd a better way to include this
term in your simulations, please change the block diagram to do so, and include information
to this eect in your lab report.
a) Under these additional nonidealities, and including all of the nonideal terms from the previous
two parts, design a controller to meet the system specications. How did you address the
bearing friction term? How did you address the actuator saturation? Include the outputs of
simulations which show that the specs have been met.
Plant linear model The linear dynamics for the system shown in Figure 1 may be expressed as
q = A1 q + B1 u
y = C1 q + D1 u
where the eight state variables are dened as
q1 = x1 x0
q2 = q1
q3 = x2 x1
q4 = q3
4

q5 = x3 x2
q6 = q5
q7 = x4 x3
q8 = q7
The state variables are dened in terms of relative position and velocity in order that the oor
acceleration x
0 enters conveniently. This formulation is also convenient when the nonlinear
friction term is added subsequently. In terms of these state variables, the system matrices
and numerical parameters are as given in the Matalb part1.m le.
Denition of RMS error For a continuous-time signal e(t), the RMS value is dened as:

1 T 2
eRM S =
e (t)dt
T 0

(3)

You will need to numerically compute the RMS error from your simulation data. Tell us how
you carry out this approximation. As a point of reference, a Gaussian random waveform will
have a peak-to-peak value
of about 6 times its RMS value, whereas a pure sinusoid has a
peak-to-peak value of 2 2 times its RMS value.

Laboratory Assignment 1

Sampling Phenomena

2.171 Analysis and Design of Digital Control Systems

Main Topics
Signal Acquisition
Audio Processing
Aliasing, Anti-Aliasing Filters
Digital Filter Design and Implementation

Equipment
Personal Computer with DS1102 (dSPACE, Inc.) Controller Card
Matlab, Simulink, Real-Time Workshop, Real-Time Interface, and Control Desk Software
Digital Storage Oscilloscope
Breadboarding System with Analog Electronics
Earphones
Function Generator
Music Source

Introduction

This set of exercises familiarizes you with the laboratory hardware and shows you how to use the
hardware to perform real-world tasks such as acquiring signals and processing them. We also ask you
to look at the non-idealities of these operations. You will look at the eects of sampling on signals
from the generator and on music. You will also study quantization. Finally, you will implement rst-,
second-, and higher-order discrete-time lters. These lters will be designed from the viewpoint of
approximating continuous-time analog lters and directly as digital lters.

4
4.1

Aliasing and Smoothing


Background and Equipment

In this lab, you will use sine waves and music as a source for signal processing. For the music source,
you can provide your own, or play music out from the computer at each station. When processing a
signal you will want to use nearly the full range of the A/D converters, so as to utilize the maximum
number of quantization levels. The signal from the most music sources is at the 100 mV level, which
is much lower than the full-scale 10 V range of the A/Ds. Thus you need to use an amplier to
increase this signal to the level of volts. We have designed an appropriate interface circuit for you as
shown in Figure 1.

Sig.Gen.

100K

Vin

+15 V

10K

2
3

Audio

0.1 uf

LM741 6
+
0.1 uf

Vad
ADC 1

-15 V

Anti-Aliasing Filter

Scope Input

C
22K
DAC 1

Vda

+15 V

22K

2
3

0.1 uf

LM741 6
+
0.1 uf

Vout

470

-15 V

Smoothing Filter

Scope Output

Figure 1: Anti-aliasing and smoothing lter circuit diagram.


We also want to be able to listen to the audio signals. Headphones have been provided at each
station for this purpose. Since the DAC cannot supply sucient current to drive these headphones
directly, we have built an interface amplier which can supply the headphone current. This amplier
is also shown in Figure 1. Both of these circuits have been pre-assembled for you on the electronic
protoboard.
The lab explores the use of anti-aliasing and smoothing lters. The anti-alias lter attempts to
remove high frequencies at the input before they reach the A/D. This is implemented by the input
amplier. The smoothing lter attempts to remove the high-frequencies associated with the staircase
output from the D/A. This is implemented in the output amplier which drives the headphones.
The anti-aliasing lter has a transfer function of
Vad (s)
Vin (s)

=
=

Rf
1

R1 Rf Cs + 1
10
.
5
10 C + 1

(1)
(2)

This is a rst-order lter with a low-frequency gain of -10, and a -3 dB frequency set by the capacitor
value.
The transfer function for the smoothing lter is similar to that of the anti-aliasing lter. It has a
low-frequency gain of 1, and the capacitor value sets the cuto frequency.

4.2

Experimental Procedure

a) Use Simulink and rtilib to create a model like that shown in Figure 2. Set the sampling rate
by selecting Simulation:Parameters from the simpleio menu bar. Set the options to a xedtime-step solver with a step size of 0.0001. Close the window, save the le again, and select
Tools:RTW Build. This step converts the block diagram into C-code, compiles this code, and
downloads the executable to the DSP. At the end of this step, the DS1102 should be reading from
the A/D and writing to the D/A at 100 s intervals.
b) We will now examine the eect of aliasing. Aliasing occurs whenever a signal is sampled at a rate
less than twice the maximum frequency contained in the signal. Aliasing is easily demonstrated
2

Image removed due to copyright restrictions.

Figure 2: Simulink block diagram simpleio.mdl used to demonstrate aliasing eects.


using a sinusoidal signal source and sampling at less than twice its frequency. More complex
eects occur when we sample a music signal. Pass a sinusoidal waveform from the signal generator
through the anti-aliasing lter, and into A/D Channel 1. Initially run with the capacitors switched
out, and thus no ltering. What eects do you observe in the output waveform? Try varying the
input frequency and look at the frequency content of the output waveform. You may want to try
changing the sample rate and recompiling to examine that eect. You should clearly see aliasing
when the input frequency is higher than half the sampling rate.
c) Switch in the anti-aliasing and/or smoothing lters. Investigate the eect that these have. We
want you to both observe the waveforms on the scope and to listen to the outputs and inputs
on the headphones. Try to correlate what you see on the scope with what you hear on the
headphones. Notice the beating phenomenon which occurs with the input frequency near half
the sampling frequency.
d) Sinusoids are a simple waveform. Music is much more complex, but allows us to see/hear many
eects simultaneously. Switch the input of your system to the music signal, and repeat the
experiments above to understand the eects of sampling on the music signal. The music enters
the system through the rst BNC connector on your board, and the function generator enters
through the second BNC. Move the wire to switch the input between them. Note the serious
distortions introduced by aliasing when sampling audio signals at low sample rates. Look at the
traces on the oscilloscope and listen to the music on the earphones as you lower the sampling
rate; what eects do you see and hear? This gives you an appreciation for the eect of aliasing
on real-world signals. What are the eects of the anti-alias and smoothing lters?

5
5.1

Quantization
Background and Equipment

Every digital system discretizes an analog signal in both time and amplitude. Only xed levels (quanta)
are permitted in a digital system. The DSP board used in this course has 16-bit A/Ds on channels
1 and 2, and 12-bit A/Ds on channels 3 and 4. All four of the D/A channels have 12-bit resolution.
3

Image removed due to copyright restrictions.

Figure 3: Simulink block diagram quantize.mdl used to demonstrate aliasing eects.


For the 12-bit channels, the operating voltage range of 10 volts is quantized into 4096 dierent levels,
which corresponds to 4.88 mV per quanta. For the two 16-bit A/Ds the signals are quantized into
65536 levels, which corresponds to 0.305 mV per quanta. The software interface to the DSP board
also takes the convention that the analog range of 10 V is mapped to a numerical range of 1 in the
block diagram. Be sure to note this scaling of 10:1!

5.2

Experimental Procedure

e) Create a model with quantization as shown in Figure 3. The quantization block is located in the
Simulink:Nonlinear library, and using it allows us to eectively increase the quanta size (thus
decreasing the resolution). To quantize to 2N levels, double-click the quantization block and
set the level to 1/2N 1 . Note that this value is chosen in light of the internal full range of 1
corresponding to analog signals of 10 V. As a starting point, let N = 4. Set the sample time (in
Simulation:Parameters) to 0.0001 s with a xed-time solver. Save the le as quantize.mdl,
and download with Tools:RTW Build.
f ) Choose the quantization bits N at several settings ranging from 2 to 12, recompiling after each
change. The resulting distortion due to quantization when using fewer bits can be appreciated
by listening to and looking at the quantized and analog signals. Remember that you have to keep
the magnitude of the analog signal large enough to be able to see all the levels, but not so large
as to be entering saturation. Use the function generator as the source initially and perform the
experiment with sinusoidal signals. Observe the eect of increasing and decreasing the amplitude
of the sinusoid. You should able to count o 4 levels for a 2 bit quantization level and 16 levels
for a 4 bit quantization level on the oscilloscope. Try the same experiment with the music source
instead of the waveform generator. Note the deterioration of sound quality as fewer bits are used.

6
6.1

Discrete-time ltering
First-order discrete-time lter

Discrete-time lters are described by dierence equations in much the same way that continuous-time
lters are represented by dierential equations. The discrete-time equivalent of a continuous-time lter
4

can be obtained by various approximations to the derivatives. A common approximation is by the


forward Euler rule. Let xa (t) be an analog signal and its value at the k th sampling interval be given
by x(k) = xa (kT ) where T is the sampling period. The Euler rule then approximates the derivative as
xa ((k + 1)T ) xa (kT )
T
x(k + 1) x(k)
x (k) =
T

xa (kT )

(3)

xa (t) at t = kT .
Let us now apply the above rule to a rst-order unity-gain continuous-time lter given by the
transfer function
Y (s)
b
=
(4)
U (s)
s+b
The corresponding dierential equation is then given by
sY (s) + bY (s) = bU (s)
y a (t) + bya (t) = bua (t)

(5)

As before, dene y(k) = ya (kT ) and u(k) = ua (kT ). Then the dierence equation which approximates
this via the forward dierence is given by
y(k + 1) y(k)
+ by(k) = bu(k)
T
y(k + 1) y(k) = bT u(k) bT y(k)
y(k + 1) = bT u(k) + (1 bT )y(k)

(6)

Equation 6 gives the dierence equation in a form suitable for implementation in a computer program.
That is, we can calculate the present value of y with knowledge of its previous value and of the previous
value of the input u.
We can also specify this discrete-time lter via its transfer function. Introducing the z-transform
variable z to represent a unit forward shift in discrete time, we can rewrite the dierence equation
above in transfer function form as
bT
H (z) =
(7)
z (1 bT )
where Y (z) = H (z) U (z).
The above system can be implemented in Simulink by using a discrete-time transfer function block
with num = [0 bT ] and den = [1 (1 bT )]. In discrete system representation, it is good practice to
enter the numerator and denominator polynomials as equal length vectors, padded with zeros as needed.
This avoids confusions which can occur due to the use of z or z 1 in transfer function polynomials. For
instance, in the signal processing literature, it is common to use H(z 1 ), whereas in the controls area
it is more standard to use H(z). We recommend H(z), but with the zero padding mentioned above,
both forms are equivalent.
h) Build and run a lter which implements this discrete-time transfer function.
i) Examine the eect of the digital lter on sinusoidal input signals from the function generator.
Initially, switch out the analog lter capacitors so that we do not have any anti-aliasing or
smoothing eects. Initially, set T = 0.0001 and b = 1000, and thus the resulting rst-order
digital lter should approximate a continuous-time lter with a time contant of 1 ms. Using the
scope, look at a sinusoidal waveform before and after the digital lter. Does it have the response
you expect? Look at the response for inputs at frequencies higher than the Nyquist (i.e. above
5000 Hz). You should see the amplitude of the output grow again. Can you use aliasing to
explain this eect?
5

j) Change the output of the function generator to a square wave, and adjust the scope to display
the step response of the digital lter. While keeping the sampling rate xed, change the value
of b and examine the step response of the digital lter. At low values of b, the response should
approximate a continuous system. Examine the shape of the response as you raise b. At what
value of b does the response depart signicantly from the continuous-time response? At what
value of b does the response become unstable? Note the z-plane pole location for each value of
b so that you can develop an intuition for the z-plane. Be sure you understand the response
characteristics in light of the z-plane pole location.

6.2

Second-order discrete-time lter

We will now create a discrete-time approximation to a second-order continuous-time system. A unitygain second-order continuous-time lter can be described by the transfer function
Y (s)
n2
= 2
.
U (s)
s + 2n s + n2

(8)

We will next apply the forward Euler rule to derive a corresponding transfer function,
H (z) =

n2 T 2
z 2 + (2n T 2) z + (T 2 n2 2n T + 1)

(9)

Please check this derivation to be sure that you understand it before proceeding further. The experi
mental procedure for this section of the lab is described as follows.
k) Create a model which implements this lter with a 10 kHz sampling rate.
l) Look at the lter output when using the function generator for a sinusoidal input. Does the fre
quency response match your expectations? At frequencies past the Nyquist, can you see the
increasing amplitude (as in the rst-order system)? Change the function generator to produce a
square wave output, and look at the step response on the scope. How well does the response cor
respond to the modeled continuous-time system? Look at dierent values of and n . How does
the response correspond with the location of the discrete-time poles? Determine a relationship
between , n , and T for stability. Compare this with the mapping viewpoint of the approximate
lter design. How does the approximation of the second order lter hold up for large n or small
values of ?

6.3

Other discrete-time lters

Experiment with additional discrete-time transfer functions in order to understand the eect of
pole and zero locations in the z-plane.
m) Take a look at the eect of pole and zero locations in the transfer function
H (z) =

b0 z 2 + b1 z + b 2
.
a0 z 2 + a1 z + a2

(10)

n) Design some interesting nite impulse response (FIR) lters, and implement these on the real-time
system. Compare the step and frequency responses with that predicted in Matlab, and explain
these responses in terms of the pole and zero locations. A separate handout on FIR lters will
be available shortly.

Laboratory Assignment 2

Direct Discrete-Time Frequency-Domain-Based Design

2.171 Analysis and Design of Digital Control Systems

Department of Mechanical Engineering

Massachusetts Institute of Technology

Cambridge, MA 02139

Due: In checkos on Friday, Ocotober 27, 2006

Main Topics
Servomotor control.
Proportional and Proportional-Integral velocity control via approximation to continuous-time
systems.
Proportional-Integral-Derivative position control via continuous-time approximation.
Integral anti-windup.
System identication via frequency response testing.
Servomotor control via loop shaping (lead and lag compensation).
Eect of sensor quantization on servo performance.

Equipment
Personal Computer with DS1102 (dSPACE, Inc.) Controller Card
Matlab, Simulink, Real-Time Workshop, Real-Time Interface
Digital Storage Oscilloscope
Breadboarding System with Analog Electronics

Function Generator

Servomotor with Tachometer and Potentiometer


Linear Power Amplier

Lab Overview

In this laboratory, we study digital control of a D.C. servomotor. Each station is equipped with a
D.C. motor having an integral tachometer to measure angular velocity, a single turn potentiometer
to measure angular position, and a power amplier to drive the motor. First, we develop a model
for the motor. This model is then used to design velocity and position controllers. For the purpose
of this lab, controller design is done using discrete time methods and equivalents.
Initial experiments focus on velocity control. We implement a proportional velocity controller rst.
With this control scheme, we observe steady-state errors. Also, we observe that increasing gain
reduces the steady-state errors. Next we implement a PI velocity controller to eliminate these
steady-state errors. Problems with integral windup are observed and an anti-windup scheme is
implemented. We meet natural frequency and damping ratio specications by designing a continous
time controller which is mapped into discrete-time.
Finally, we implement lead-lag position control of a servomotor.
Some of the non-idealities that you will see in this experimental hardware include an internal
700 Hz resonance of the servomotor (under velocity control), and the discontinuity that occurs at
the 10 V transition in the potentiometer (under position control).

Power Amplier Connections

Each station is equipped with a D.C. motor and a power amplier. As shown in Figure 2, the power
amplier provides a voltage gain of 2 for the signal from the DAC. The power amplier connections
have already been made for you.
Note: The power ampliers have an absolute maximum of 25 volts. Irreversable
damage will occur above this level. The supplies in the lab can provide more than
30 volts and thus are capable of destroying the amplier. Therefore, before shutting
o or turning on the supply always set it to 0 volts on both sides. As connected, the
right-hand supply provides +Vcc at its positive terminal, and the left-hand supply provides Vcc
at its negative terminal. Common is taken from the jumpered center connections (the negative
terminal of the right-hand supply and/or the positive terminal of the left-hand supply).
Set the current limits on both supplies to the maximum. Whenever you are about to turn on the
supply, rst adjust both voltage controls to zero. Set the right-hand meter to monitor voltage. Set
the left-hand meter to measure current. Then power up the supply. At this point you may increase
the supply voltage up to the desired 17 volt level. (The reason for choosing this voltage is that
it is comfortably below the ampliers absolute maximum rating of 25 volts.) We have pre-wired
the amplier to the supply for you as shown in Figure 1.

Left-hand supply

Black

Right-hand supply

Bare
Wire
Common

Vcc

Red
+ Vcc

Figure 1: Amplier/Supply Connections


The negative and positive terminals of the power op-amp are brought out on green and red wires
respectively. The board ground plane is also brought out on a black wire for connection on the
low-power side. On the high-power side, we have brought out the power supplies with +Vcc on a
red wire, Vcc on a black wire, and common on an unisulated wire. The amplier output is brought
out on a yellow wire along with another connection to common on a black wire.

D.C. Motor model

Each station has a D.C. motor and a power amplier. Please follow the above precautions before
powering up your setup. The D.C. motor has a tachometer to measure velocity and a potentiometer
to measure angular position. The motor parameters are:
R = 7.5
L = 5.55 mH
L
e =
= 0.7 ms
R
KT = 0.024 Nm/A
J

= 1.5 105 Kgm2 (all loads referred to motor shaft)

Ktach 0.023 V/rad/sec


Vpp
Kpot =
0.5 V/rad (of motor)
2 (gear ratio)
No. of teeth on pinion = 36
No. of teeth on driven gear = 216
Gearing ratio, N = 6
JR
m =
200 ms
KT2
m (s)
1

=
Vm (s)
KT (m s + 1)

(1)

In this derivation, we are assuming that the motor inductance is low enough to be ignored, i.e., L

0. Substituting numbers gives the transfer function of this system from applied motor voltage Vm
to motor angular velocity m as
m (s)
41.7
=
.
(2)
Vm (s)
0.2s + 1
u

DAC1
AGND

connection to
power amp
ground

power amplifier

++
--

return to
power amp
ground

10 k
10 k

tachometer
vt

ADC1
AGND

+
-

-15V
vp

ADC2
AGND

anti-aliasing filter

flywheel

+ DC motor

CCW
1.5 k
wiper

C
+15V

ADC3
AGND

pinion

function
generator

1.5 k

CW

potentiometer, 5 k

gear

Figure 2: Connections for the D.C. motor setup including an anti-aliasing lter with the values
R = 100 k and C = 0.1 f.

The connection of the motor setup is shown in Figure 2. For the purposes of this lab, the reference
signal r is generated by the function generator. In your pre-wired lab kits, the function generator is
connected to AD channel 3, the tachometer signal connects to AD channel 1, and the potentiometer
signal connects to AD channel 2. The output of DA channel 1 connects to the input of the power
amplier.
In order to match the A/D input range, we connect the potentiometer to operate at a little less
than 10 volts (9.4 V). To do this, we use the 15 volt power source from the protoboard, and
use a pair of resistors to reduce the voltage to the desired value. The value of the potentiometer
resistance is 5 k, thus the pair of voltage dropping resistors are chosen as 1.5 k. These resistors
are soldered in place on the motor setup, so you dont need to supply them on your protoboard.
The complete block diagram contains the power amplier, motor, tachometer, and potentiometer
using the parameters given above. Throughout this lab, we will drive the motor with the power
amp congured for a voltage gain of 2.
The complete system transfer functions include the sensor gains in addition to the physical con
4

stants. Reducing the system block diagram brings us to the to the transfer function from DAC
output u to tachometer voltage vt ,
Vt (s)
2Ktach /KT
1.92
=
=
U (s)
m s + 1
0.2s + 1

(3)

Similarly, we arrive at the relationship between the DAC output u and the potentiometer voltage
vp ,
Vp (s)
41.7
2K pot/KT
=
=
(4)
U (s)
s (m s + 1)
s (0.2s + 1)

Velocity control

Use the motor model developed in the previous section for designing discrete-time velocity control
of the D.C. motor. The tachometer output is used as the feedback signal. In this section of the
lab, rst use a sampling time of T = 1 msec for the implementation on the real-time hardware
and complete all indicated sections. This is fast enough that the eects of sampling are negligible,
but it makes interesting interactions with a 700 Hz resonance in the motor. Also look at the eect
of redesigning the loop for faster sample rates. Once you have seen the eect of a relatively low
sample rate, decrease the sample time to T = 0.1 msec. What changes do you observe? Explain.

6.1

Proportional Velocity Control

a) Calculate the ZOH equivalent for the plant represented in Equation 3.


b) Design a proportional velocity controller of the form G1 (z) = Kp , which implements a crossover
rad
frequency of c = 50 rad
sec and thus c = 50T sample . Show your calculations. Implement this
controller on the real-time hardware. What mechanical impedance (i.e., what equivalent
spring/mass/dashpot) is created at the output shaft? How does this impedance vary with
changing controller gain Kp ? Why? (You can sense this impedance most easily at the
potentiometer shaft, since the gearing makes this the higher stiness point in the drivetrain.)
The impedance is most easily felt with the velocity set to zero.
c) What happens as you increase the gain Kp above its nominal design value? What limits the
achievable bandwidth?
d) Now please perform system identication via the swept-sine method. Download the dynamic
signal analyzer les into your working directory. Create a le like dsa demo.mdl, as shown
in Figure 4. This demo le is set up to test the frequency response of a lead compensator.
Compile and download this le with Tools:RTW Build. Next, go to the MATLAB command
window and type the line: mytf=dsa_tf(logspace(1,3,10),1). This starts the operation
of the dynamic signal analyzer. You will be asked a set of questions at the command line,
and should accept the default answers for all of them. This script le sweeps through a set of
input sinusoids, and records the resulting output waveform. It then measures the magnitude
and phase shift between them.
5

Image removed due to copyright restrictions.

Figure 3: dSpace block diagram used for the implementation of proportional velocity control.

Image removed due to copyright restrictions.

Figure 4: Simulink le dsa demo.mdl used to demonstrate the operation of a dynamic signal
analyzer.

The dynamic signal analyzer will create two windows, as shown in Figure 5. One allows you
to inspect the input and output signals for saturation or poor signal-to-noise. The other
builds an experimental bode plot. When complete, you can examine the data, and type help
dsa tf to see the options available.1 Perform the system identication on the motor velocity
plant from Equation 3 using rst a sample rate of 1 kHz and then 10 kHz. Explain the results.
e) Repeat your measurements in b) and c) with T = 0.1 msec.
1

This dynamic signal analyzer was developed by Katie Lilienkamp as part of a Bachelor of Science thesis project
in the Department of Mechanical Engineering at MIT.

Image removed due to copyright restrictions.

Figure 5: Output windows of the dynamic signal analyzer demonstration program.

6.2

PI velocity control

Note: For this section and the remainder of the lab use T = 0.1 msec.
Next, we implement PI control which removes the constant errors that were present with a propor
tional controller. Use a PI controller of the form

KI z
G2 (z) = Kp 1 +
z1

Use a discrete time integrator to implement the integral block. The presence of an integrator in
your control law can lead to integrator windup. This can be noticed if you cause the error to
accumulate in spite of saturation of the actuators. The integrating action of the controller keeps
accumulating the error and leads to large overshoots. You can observe this by setting a constant
velocity command, and by imposing a velocity error on the ywheel by clamping it with your hand.
Be careful not to get yourself hurt while doing this (i.e., Keep your ngers out of the gear mesh).
When you release the ywheel, you should be able to see a rather large overshoot. For the purpose
of observing windup, use the DC oset of the signal generator to set the velocity to an essentially
constant level. Note that the size of the overshoot is dependent on the time for which you hold the
ywheel stationary. It is also interesting to conduct this experiment with the velocity command
set to zero.
a) Design a PI velocity controller which has a crossover frequency of c = 30 rad
sec and thus c =
rad

30T sample , and with m 45 . Show your design. Explain how you calculated the necessary
values of Kp and KI . Implement this controller on the real-time hardware.
For a non-zero DC velocity reference, and with the integrator saturation limits set to innity,
clamp the ywheel with your hand for some period of time, and notice the large overshoots
when you release it. Modify the integrator saturation limits to prevent windup and re-run
the program. Again, impose velocity errors by holding the ywheel with your hand. Notice
the greatly improved recovery performance when the integral term is bounded. Explain the
dierence in the response. You can also most conveniently use the Control Desk interface to
set the integrator limits without recompiling.
b) What mechanical impedance (i.e., equivalent spring/mass/dashpot) is created at the output
shaft under PI velocity control? Why? Now use the Control Desk interface to set some
explicit limits on the integrated output. Where should you set these limits and why? How
does the mechanical output impedance change when anti-windup is implemented? Why?
(This impedance is best sensed with the velocity command set to zero.)

Position control

Position control is in some sense more dicult than velocity control, due to the additional integrator
in the transfer function. In position control, feedback is taken from the potentiometer. We use a
one-turn 5 k servo potentiometer in this setup. The term servo potentiometer means that it is
specied for continuous rotation with a reasonable life time. Conventional pots will have a rotation
stop at the extreme of rotation, and also will not endure continuous mechanical operation. Given
the selected 1.5 k series resistors and for the 15 V supplies the potentiometer voltage output varies
from 9.4 to +9.4 volts. There is a discontinuity at the end of the range as the voltage transitions
from the maximum negative to the maximum positive.
We have used the above information when developing the relationship between potentiometer out
put voltage and motor shaft angle. This relationship also depends on the gear ratio of the drive
8

Image removed due to copyright restrictions.

Figure 6: Contents of the discrete-time integrator block allowing the user to limit the integrated
value, and to apply anti-windup to the controller.
train. Note that due to the way the potentiometer is connected, the motor angle is 6 times the
potentiometer angle. The potentiometer angle is what you measure. However, in the model, we
refer all variables to the motor shaft.
We have added an anti-aliasing lter after the potentiometer, and before the A/D input. This
anti-aliasing lter consists of a passive RC lter with a time constant of 10 ms. Its phase lag is
signicant at our target crossover frequencies, and so you should include it in your plant model.
The specic values used for the components are R = 100 k and C = 0.1 f.

a) Create a ZOH equivalent from the plant in Equation 4 and including the anti-aliasing lter.
b) Design a lead-lag compensator using the servomotor plant model to implement a position
rad
controller which achieves a crossover frequency of c = 50 rad
s , c = 50T sample , and a phase
margin of 45 degrees. Solve for the poles and zeros of the resulting discrete-time transfer
9

function. Plot these poles and zeros on the z-plane. Sketch a discrete-time Bode plot of
the plant transfer function. Implement your controller on the real-time hardware. Use a
discrete-time transfer function block to enter the controller coecients. Be sure to keep
the lag portion of the controller separate so that you can implement integral anti-windup.
Separating the lag portion of the controller is a practical detail that should be addressed in
all controller designs. Design for a controller update rate of T = 0.0001 seconds. Record
the system step response and compare with that predicted in your paper analysis. Note
that the anti-aliasing lter creates signicant phase-shift in the vicinity of crossover and so its
dynamics must be accounted for in your design. Label the plot axes with frequency in rad/sec
and also in radians/sample so that you can think easily between continuous and discrete-time
frequencies.
c) Use the dynamic analyzer to measure the response of the plant and the compensated system.
Update your model in b) if necessary.
d) With the controller running, notice the eect of increasing the gain Kp on the servo stiness.
Do you notice any deterioration of position stability with increasing loop bandwidth? What
is this due to? What elements in the system limit the ultimate performance?
e) With the controller running, and with a xed reference, try manually rotating the potentiometer
shaft away from a xed reference point. Notice the restoring torque of the servo increases
with time due to the integral control term. Record the transient response of recovery from
this induced position error. Can you see the rather large overshoots caused by integral
windup? Try this experiment both with and without integral anti-windup and comment on
the dierence.

Quantization

Quantization of the position sensor input often limits the performance of position control systems.
In our system, we have quantization due to the analog-to-digital converter. In other systems, the
postion sensor is often an encoder or other nite-resolution device. Quantization eects are dicult
to see at the 16-bit level with our hardware, so in this section of the lab you will articially limit the
resolution of the A/D converter by adding a quantization block. Lower-resolution A/D converters
(such as 8-bit models) are typically less expensive and faster than 12-bit and 16-bit versions. They
are also often included with stand-alone microprocessors, and so may be the best converter for a
particular application. However, one needs to understand the performance limitations they create.
a) Modify your position control loop to include a quantization block limiting the resolution of the
position sensor. Try running the controller at several dierent quantization levels, compiling
and downloading after change. At what point do you notice the position response start to
degrade? How would you alter your controller if you were forced to use a low-resolution sensor?
Does having a limited sensor resolution aect your ability to take a swept-sine test with the
dynamic signal analyzer? What does the position noise look like as the quantization is
changed? What do the associated control outputs (DAC#1) look like? Why?

10

2.171 Project: Laser Light Show


Assigned: 11/29/06
Midpoint checkos: 12/7 and 12/8/06
Report due: In nal checkos on 12/12 and 12/13/06

Project Denition

The 2.171 nal project focuses on the design, construction, and testing of a laser x-y beam
scanner. We have acquired M-G350DT scanners from General Scanning, and xtured these
into a base along with appropriately mounted mirrors and a laser pointer used as a light
source. Your task is to use these scanners along with appropriate controller and trajectory
generation to create an interesting display. You need to experimentally develop a model
for the system, design appropriate control algorithms, and program the dSPACE controller
to display gures of your design. Each team should decide on something interesting that
they will display using their scanner. Each station comes equipped with its own patch of
ceiling which is used to display your image.

Project Plan

You have two weeks to complete this project. To keep you on track, we ask that you present
your work to the sta at a midpoint checko to be scheduled on 12/7 or 12/8. In order to
facilitate progress during this short time interval, we ask that you work in pairs, sharing a
common station to which you will be assigned. (If you have a compelling reason for working
alone, youll need to convince us that you can handle all of the workload, and explain your
reasoning.) Please use only your assigned station; do not move to other stations. If a
problem develops, please contact Kevin or Prof. Trumper and we will attempt to x the
setup as soon as possible. You will need to wisely partition your eorts between the two
group members in order to be eective in addressing all parts of the assignment.
Your two-person group will present their work during a set of nal checkos on 12/12/06
and 12/13/06. These checkos will be in the form of a slide presentation showing the design
details and results, as well as a demonstration of your operating scanner system. A printout
of the the slideshow and any relevant appendices will constitute your lab report for this
project.
In the project, at a minimum you will address the following issues:
Decide what you plan to display and why it will be interesting. What are the expected
typical images?
Develop the system architecture, i.e., a top-level view of how your display will operate,
and how the supporting software and controls will function.
1

Work out the geometry of your system, and provide us with sketches of the relvant
distances and angles which will allow you to draw gures of a desired shape by
controlling the angle of the galvanometers.
Develop a dynamical model of the system. Provide us with a block diagram show
ing the dynamics that you expect to be important. Given the short time interval,
your model can be based upon the experimentally-measured dynamics of the plant
including the power amplier, galvo, sensor, and interface electronics. Even better is
to have a model based upon analytical results. How does the model look reasonable?
What strange features does it have? Any explanations?
Lay out the controller design based on the model developed above, and show us what
crossover frequency and phase margin you have achieved in your system. Is this
bandwidth adequate to support the displays that you plan to implement?
How do you generate the trajectories and additional information required to drive
the galvo setpoints? Do you use feedforward? Explain the details of your data and
software architecture.
Proof of success is in the quality and depth of the presentation and in a successful hardware
demonstration.

Midpoint checko

We will hold 20 minute mini-checkos on 12/7 and 12/8 in which you are to demonstrate
the functioning of your system to a sta member. At a minimum, at this time you need
to have both servo loops closed, the ability to electrically modulate the laser pointer on
and o, and be displaying something on the ceiling to demonstrate that your system is
operational. While we do not require any written documentation at this time, we expect
that you will be able to explain pertinent details of your designs.

Project presentation and demonstration

We will schedule 30 minute presentations for each group on Tuesday 12/12 or Wed. 12/13,
which includes time for the sta to ask questions about your work. Your presentations
must be complete in 20 minutes maximum; we will cut you o at 20 minutes in order
to allow time for questions. The presentation should lay out the essential issues faced in
the design of your device and software architecture, provide calculations supporting your
design choices, documentation of experimental results, and compare experimental results
with your predictions. Please tell us what is good about the design and how it worked
and document it, but also tell us what is not good about the design, document it, and
describe ways to improve these problems. Experimental data is an essential part of the
2

documentation, as are analyses of key performance issues. Your presentation slides will
constitute the lab report for the project.
Your presentation will be followed by a 30 minute demonstration of your working sys
tem. At this checko, you are expected to demo the operation of your system, and explain
the details of your design to the sta.
We ask that you document at least the following in your presentation and checko:
What is the crossover frequency and phase margin of each of your scanner servos? You
must also include experimentally-measured plant transfer functions for the galvos and
use this to document the position loop transmission. Explain to us how you designed
your controller to achieve the highest performance possible. What steps did you
take in input trajectory generation and in compensation to achieve good dynamic
response. What is good? How is this manifested in the image quality?
What is the settling time of each axis to 0.1% of a step input? How can you measure
this settling time?
To document the performance of your display system, please draw the following
images: 1)diagonal line, 2) circle, 3) square, 4)triangle. Explain any anomalies you
see in the image. For best performance, you will need to do some trajectory planning
so as not to require excessively high scanner accelerations.
Demonstrate the scanner displaying images of your own design. Show us what these
represent and explain why you chose these images.
Explain the details of your design, i.e., controllers, interface electronics, data pro
cessing, etc.

System overview

We have precongured the system electronics for you as show in the schematic below.

Please double check the connections before applying power, so that you dont burn out the
sensor or scanner coil. As before, do not apply greater than 17 volts to the power amplier
supplies.
We have preconnected the PA-21 ampliers for you, and have included a 10 ohm power
resistor in series with the galvanometer coil to prevent overdriving the galvo. (Note however
that in most industrial practice, these resistors would not be included, since they dissipate
power and limit the amount of transient torque that can be applied to the actuator.)
The two sensor output pins can be modeled as a current source in parallel with a 4.4 nF
capacitor. The sensor pins provide a dierential (i.e., opposite polarity in each pin) output
current with a sensitivity of 31 A per degree of rotation at each pin. In order to keep the
circuitry simple, we only use one channel of the dierential output; the other is connected
to common. (In a real system, using both channels would give better signal to noise
and interference immunity.) For the single output, we have designed a current to voltage
converter circuit (transresistance amplier) to translate this into a voltage proportional to
angle. Use this current sensitivity to calculate the expected sensitivity in volts per radian.
Note that the circuit also includes a low-pass lter to remove the 2 MHz sensor bridge
drive frequency.
Since the pointer battery life is nite (about 4 hrs per set of batteries), please put a
protoboard switch in series with the pointer electrical circuit so that you can turn o the

pointer when you are not actively looking at the display. The sta does not guarantee to
supply an innite set of replacement batteries. You are not allowed to alter the pointer in
any way. If the batteries run down, buy a new set and replace them in the laser pointer.
A required 10 volt bias to the sensor oscillator is supplied by the resistors shown. The
capacitors act as a low-impedance source for the oscillator supply voltage. In a commercial
implementation, where high position accuracy is required, a more stable voltage source
would be required, likely congured to use the automatic gain control (AGC) output. For
the purposes of this lab, the simple RC circuit is sucient.
In your model for the galvo, be sure to include the back emf of the actuator, as this
provides damping to the system. (Try the torsional impulse response of a representative
galvo with coils shorted vs open.)

Laser Scanner Final Project: Updates


Prof. David Trumper
2.171 Fall 2006

Sensor Bias Voltage


The sensor oscillator nominally runs off 10V. For high accuracy, this needs to be
carefully stabilized. However, for our purposes, this is not so critical. The following
circuit will work fine:

Note that Ive not shown the cable connections. You can work these out.

Laser on/off driver


The following diagram describes the suggested laser on/off driver.

It works better than the original version, shown below:

Transresistance Amplifier for Sensor Interface

Datasheets
[Four pages from General Scannings G100 and G300 Series Galvanometer Optical
Scanners, dated 1991, removed due to copyright restrictions.]

S-ar putea să vă placă și