Sie sind auf Seite 1von 20

Sampling: What Nyquist Didn't

Say, and What to Do About It


by Tim Wescott
The Nyquist Theorem is useful, but often misused when
engineers establish sampling rates or design anti-
aliasing filters. This article explains how sampling
affects a signal, and how to use this information to
design a sampling system with known performance.
1 What Nyquist Did Say
During classes I am asked about the Nyquist theorem, and if there is a simple,
straight forward way to determine the correct minimum sample rate for a system.
The Nyquist theorem states that if you have a signal that is perfectly band limited to
a bandwidth of f0 then you can collect all the information there is in that signal by
sampling, as long as your sample rate is 2f0 or more. s theorems go this statement
is delightfully short. !nfortunately, while the theorem is simple to state it can be
misleading when one tries to apply it in practice.
The foremost difficulty with the Nyquist theorem is the requirement that the signal to
be sampled be perfectly band limited. This is unfortunate because no real world
signal is truly and perfectly band limited. In fact, if a signal were to have absolutely
no energy outside of some finite frequency band it must e"tend infinitely in time.
#hat this means is that no system that samples data from the real world can do so
perfectly $ unless you%re willing to wait an infinite amount of time for your results. If
no system can sample data perfectly, however, why do we bother with sampled time
systems& The answer, of course, is that with a bit of work you can design sampled
time systems that are good enough. 'ften, in fact, the advantages one gains by
processing signals in sampled time far outweigh the disadvantages of sampling,
making many sampled time systems superior to their continuous(time equivalents.
To understand how to make a sampled time system that%s good enough we must
understand what happens when a signal is sampled into the discrete(time domain,
what happens when it is reconstructed in the continuous(time domain, and how these
processes affect the quality of the signal.
2 Sampling
)o what is sampling, and what does it do& )ampling is the process by which
continuous(time signals, such as voltages or water levels or altitudes, are turned into
discrete time signals. This is usually done by translating the signal in question into a
voltage, then using an analog to digital converter *D+, to turn this continuous,
analog signal into a discrete, digital one. The D+ both samples
-
the voltage and
converts it to a digital signal.
)ampling is easy to represent mathematically. given a continuous signal x to be
sampled, the sampled version of x is simply x taken at those sample times.
x
k
=xT k . *-,
/igure - shows the result of sampling a signal. The upper trace is the continuous(
time signal, while the lower trace shows the signal after being sampled once per
millisecond. Note that the lower trace shows no signal between samples. This is
because after sampling there is no signal between samples $ any information that
may have e"isted between the samples in the original signal is irretrievably lost in
the sampling process.
- 'lder D+s and some very speciali0ed systems may require e"ternal sampling
circuitry, but nearly all current D+ integrated circuits include their own sampling
circuitry on board.
igure !" The #esults of $ampling.
2.1 Aliasing
1y ignoring anything that goes on between samples the sampling process throws
away information about the original signal. This information loss must be taken into
account during system design. The effect is called aliasing, and it is easily e"pressed
and modeled as a frequency(domain phenomenon.
To understand aliasing, consider a signal that is a pure sinusoid, and look at it%s
sampled version.
x
k
=cosT k . *2,
If you know the frequency of the original signal you%ll be able to e"actly predict the
sampled signal. This is a concept that most of the students in my classes easily
grasp, then apply. 1ut the sampled signal won%t necessarily be at the same
frequency as the original signal. there is an ambiguity in the signal frequency equal
to the sampling rate. This can be seen if you consider two signals, one at frequency f
and one at frequency f % -2T. The sampled version of these two signals will be
e"actly the same.
cos 2 f 1/ T T k =cos2k2 f T k=cos2 f T k . *3,
This ambiguity is aliasing, and it is happening all the time in the real world $ to me, to
my customers, and to the folks who attend my classes.
/igure 2 shows an e"ample of aliasing. Two possible input sine waves are shown. one
has a frequency of --450, the other has a frequency of ---450. They are sampled at
-44450. The dots show the value of the sine waves at the sampling instants. s
indicated by *-, these two possible inputs both result in exactly the same output.
0.00 0.01 0.02 0.03 0.04 0.05
-1.2
-0.8
-0.4
0.0
0.4
0.8
1.2
1.6
2.0
0.00 0.01 0.02 0.03 0.04 0.05
-1.2
-0.8
-0.4
0.0
0.4
0.8
1.2
1.6
2.0

igure &" 'liasing of Two $ine Wa(es.


+ontinuous(time signals can be thought of as consisting of a sum of different signals
at different frequencies
2
. This distribution of a signal%s energy over frequency can be
shown as a plot of spectral density vs. frequency, such as the solid plot in the center
of /igure 3.
liasing will make these signals indistinguishable from signals spaced an integer
number of sampling rates away. /urthermore, any real(world signal will have a power
spectrum that%s symmetrical around 4, so the %negative% frequency components in the
original signal will appear after sampling to be lower than the sample rate.
/igure 3 shows this effect. The central frequency density plot is the signal that%s
being sampled6 the others are the signal%s aliases in sampled time. If you sampled
this signal as shown, after sampling the signal energy would appear to 7fold back8 at
9 the sampling rate. This is, in fact, a reflection of Nyquist%s theorem. if the original
signal were band limited to 9 the sampling rate then there would be no overlapping
energy, and no ambiguity caused by aliasing.
igure )" 'liasing of a $ignal $pectrum.
2.2 Reconstruction
The opposite process from sampling is reconstruction. 1ecause a sampled(time
signal isn%t defined between samples it can%t be used directly in a continuous(time
system. To use a sampled(time signal in a continuous(time system it must be
converted into a continuous(time signal before it can be useful. This conversion from
sampled to continuous time is called reconstruction.
:econstruction is done by interpolating the output signal. Interpolation is the process
where the value of the continuous(time signals between samples is constructed from
2 This can be e"pressed formally using the /ourier transform6 I will restrict myself to
an informal discussion here.
-2/T -1/T 0T 1/T 2/T
0.000 0.001 0.002 0.003 0.004 0.005 0.006 0.007 0.008 0.009 0.010
-1.0
-0.8
-0.6
-0.4
-0.2
0.0
0.2
0.4
0.6
0.8
1.0

previous values of the discrete(time signal. In discrete(time control systems the first
step of this interpolation is almost universally done with digital(to(analog circuits,
which contain an intrinsic 0ero(order hold.
0ero order hold is simply a device which takes on the value of the most recent
sample and holds it until the ne"t sample time.
yt=y
floor t /T
, *;,
where 7floor8 is simply the floor function as you might find in the + math library.
In a block diagram a 0ero(order hold is indicated by a block containing a picture of an
interpolated signal, as shown in /igure ;. This is e"actly the function provided by
most digital(to(analog converters. the processor writes a number to the D+, which
drives a corresponding voltage *or current, output until the ne"t number is written.
igure *" ' +ero-,rder -old.
The result of using a 0ero(order hold is shown in /igure <. The sampled(time signal is
at the top, and the interpolated signal is on the bottom. Note the 7stair(step8 nature
of the interpolated signal, as well as the fact that on average it is delayed from the
original signal $ depending on your requirements this bit of delay may not matter at
all, or it may break your system%s error budget.
igure ." #econstruction.
:econstruction causes a form of aliasing
3
. when a signal at a certain frequency is
reconstructed the continuous(time signal will have components at the sampled(time
signal frequency, as well as all multiples of the sample rate plus and minus the
sampled(time signal frequency. /or e"ample, if the sampled(time signal is
3 'ne can unify the sampling and reconstruction processes with careful use of the
/ourier transform. )uch analysis can be a useful tool, but would require a lengthly
digression.
0.00 0.01 0.02 0.03 0.04 0.05
-1.2
-0.8
-0.4
0.0
0.4
0.8
1.2
1.6
2.0

0.00 0.01 0.02 0.03 0.04 0.05


-1.2
-0.8
-0.4
0.0
0.4
0.8
1.2
1.6
2.0
y
k
=cos2 f
0
k *<,
then the reconstructed signal will have components at
f =f
0,
1
T
s
f
0,
1
T
s
f
0,
2
T
s
f
0,
2
T
s
f
0,
... . *=,
In addition to this effect, the 0ero(order hold interpolator acts as a low(pass filter for
the signals going through it, with a frequency amplitude response of
A=sinc

T
s
f

=
{
1 f =0
sin T
s
f
T
s
f
otherwise
. *>,
This means that while all of the components shown in *3, will be generated, the high(
frequency components will be attenuated by the action of the 0ero order hold.
3 What Nyquist Didn't Say
The Nyquist theorem, with its limit on sampling rate vs. spectral content of the signal
does give you some rough bounds to look for in your system design. #hat the
Nyquist theorem $ absolutely and positively $ does not say, is that you can design
your system to operate right at the Nyquist rate, at least not with any reasonable
chance of success.
5ere are some system design decisions that I have heard made by some of my
students using the Nyquist rate as a guiding light. ?ach one of these decisions is
based on a faulty understanding of the Nyquist theorem $ I%ll list them here, then
e"plain why they were faulty later.
-. 7I am going to sample at @k50, so I need to use a filter with a ;k50 cutoff.8
2. 7I need to monitor the =450 power line, so I need to sample at -2450.8
3. 7#e have a signal at -k50 we need to detect, so I need to sample at 2k50.8
;. 7Ay control loop samples at @k50, so I need to use a filter with a -k50 cutoff.8
3.1 Nyquist and Filters
Nyquist didn%t say that if you are sampling at rate N that you could use an anti(
aliasing filter with a cutoff at frequency f B N22.
Cet%s take that voice signal as an e"ample. ssume that we want to sample the
human voice, and furthermore that we want to sample it for a communications
application $ so while we may care about the intelligibility of the sampled signal, we
aren%t looking for the kind of quality you%d get in a musical recording.
It%s accepted fact that for decent quality voice reproduction you need a passband that
ranges from 34450 to 3k50, and that you need an instantaneous
;
dynamic range of
around ;4d1, or a factor of a ratio of signal energy to aliased energy of -4
;
. It%s also
accepted that the spectral content of human speech is pretty constant to well above
3k50. This means that if you want to make a good sounding sampled signal of the
human voice you need to filter any aliased signals to less than 4.4-D of the energy of
the desired voice signal.
Eossibly the worst thing you could do in this case would be to design a system where
you go straight from a microphone to a sampler or D+. In this case all of the energy
; Fou need more overall dynamic range than this, but at any one instant in time the
ma"imum allowable noise voltage is about -D of the signal voltage.
of the incoming speech that occurs above 3k50 will be aliased back into your
sampled signal6 the result would sound terrible.
)o what does happen if you use a filter with a 3k50 cutoff, along with your =k50
sampling rate& /igure = shows what happens when we use a 3k50 -
st
(order lowpass
filter. The solid curve shows the spectrum of the filtered audio to the D+, while the
dashed curve shows the aliased audio. Fou can see that this is not going to give
good performance. In fact, if you take all the aliased energy into account the ratio
between the correct signal and the aliased signal is e"actly -.-G That%s not good at
all.
igure /" $ampling with ilter 0utoff 1qual to Nyquist.
+an you fi" this problem by increasing the filter order& Not really. /igure > shows the
result of using a -4
th
(order 1utterworth low pass filter instead of a -
st
(order filter.
#e%ve improved the situation $ we now have a 2>.- signal energy to alias ratio, and
the aliasing is concentrated in the upper end of our 3k50 band where it presumably
won%t sound as bad. The situation does improve as the filter order gets higher, but
you%d have to go to a 3<44 pole filter to get a signal to alias ratio greater than ;4d1.
+learly this is an absurdly large filter.
0 1000 2000 3000 4000 5000 6000
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
igure 2" ' -igher ,rder ilter with 0utoff 1qual to Nyquist.
)ince we%re talking about telephone(quality communications, let%s look at what the
telephone guys do. let%s sample the system at @k50, and let%s look at the audio from 4
to 3k50. /igure @ shows the situation with this new sampling rate and the same -4(
pole filter as in /igure >. This gets us a system with an alias to signal ratio of ;<44.-,
and a twelve pole filter gets us our desired signal to noise ratio.
igure 3" $ampling with ilter 0utoff 4elow Nyquist.
#e can get a bit more clever with our filter and buy increased stop band performance
for some ripple in the passband6 this gives us the response shown in /igure H. This
filter
<
is only =
th
(order, yet it drops off so quickly that it has a ;Hd1 signal to alias
ratio, which is more than good enough.
< It%s a =
th
(order filter with poles at >H4 I J-4H450, 3444 I J2>450 and
23>4 I J<@450, with a notch at ;3;450.
0 1000 2000 3000 4000 5000 6000
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
0 1000 2000 3000 4000 5000 6000 7000 8000
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
igure 5" The 1ffect of a 4etter ilter.
)o what does this mean&
#hen you%re designing your anti(alias filter it means that you simply cannot set the
cutoff frequency to the Nyquist rate. Fou%ll need to pay attention to the required
precision of the conversion, and specify your filter accordingly. Fou%ll probably find
that you%ll have to do some e"perimentation with the filter order, as well.
If you have the freedom to set the sampling rate, this filtering effect means that you%ll
need to make a trade(off between a low sampling rate and the comple"ity of your
anti(alias filtering. It is not uncommon for systems to have sampling rates that are
seemingly quite high, Just to simplify the task of designing the anti(alias filters.
3.2 Nyquist and Signal Content
Fou%re designing a device to monitor a power line and collect statistics about the
quality of the power being delivered. Fou know that the power grid in North merica
operates at =450 $ this means that you can do an adequate Job of monitoring your
power line if you sample at -2450, right&
/igure -4 shows a snapshot that I collected of the line voltage at my house. It%s
probably typical of the power that you%ll see in North merica $ it%s nominally =450
-->K, but you can see the distortion on the waveform. It turns out that the waveform
shown has significant harmonic content up to the <
th
harmonic $ 34450. If you
sampled that wave at -2450 you%d miss that distortion.
0 1000 2000 3000 4000 5000 6000 7000 8000
0.0
0.2
0.4
0.6
0.8
1.0
igure !0" $napshot of North 'merican 6ine 7oltage.
1ut can you catch that <
th
harmonic by sampling at =4450& /igure -- shows two
results of sampling a 34450 signal at =44 50. The filled diamonds show the peaks of
the signal being sampled, while the open diamonds show the signal being sampled at
it%s 0ero(crossings. #hat does this mean& It means that unless you happen to know
the phase of the signal that you%re sampling, you cannot sample right at the Nyquist
rate and get a meaningful answer.
igure !!" $ampling #ight 't the Nyquist #ate.
#hat is necessary to sample this signal& Cet%s assume a few things about our signal,
and see what we need to do to sample it adequately. /irst, we%ll assume that the only
interesting signal content is at the <
th
harmonic and lower. )econd we%ll assume that
there is no significant noise or signal above the <
th
harmonic. Third, we%ll assume that
-25 -20 -15 -10 -5 0 5 10 15 20 25
-200
-150
-100
-50
0
50
100
150
200
Ti me, Mi l l i seconds
V
o
l
t
a
g
e
-5 -4 -3 -2 -1 0 1 2 3 4 5
-1.0
-0.8
-0.6
-0.4
-0.2
0.0
0.2
0.4
0.6
0.8
1.0
ti me, mi l l i seconds
we want to make an accurate measurement in Just one cycle.
#e know that we can%t sample right at the Nyquist rate, that we have to sample
higher. The minimum frequency that we could sample at would be ==450 $ this
would catch the <
th
harmonic adequately. 1ecause we%re assuming a negligible
amount of noise no anti(alias filter is necessary or wanted.
In truth, sampling at ==450 would Just give you the bare minimum of overhead.
Aoreover, the math would be weird *who wants to deal with all those factors of --&,.
better rate to use would be H4450, or even -244, which gives you a 2(times
overhead of your <
th
harmonic.
3.3 Nyquist and Repetitive Signals
The Nyquist theorem isn%t always misinterpreted too optimistically. )ometimes a
signal can be sampled slower $ much slower $ than the Nyquist theorem would
indicate. This doesn%t happen as often as we%d like, but when it does you can make
significant reductions in your system cost through intelligent use of sampling.
Cet%s look at our power line sampling problem again. Cet%s assume that we%re using a
really cost(effective processor, and add the constraint that we can%t sample the wave
any faster than 2450. Now what&
If the signal is at e"actly =450, and we sample it at e"actly 2450, we%ll always sample
the same point in the cycle, every 3
rd
cycle. If we sample the signal slightly slower,
however, the signal phase within a cycle will advance a little bit with each new
sample, so the effect will be a replica of the original signal, only slower.
/igure -2 shows the waveform in /igure -4 after it%s been sampled at -H50. The
resulting waveform repeats at -50 instead of =4, but it faithfully replicates the
original waveform.
igure !&" " #esults of $ubsampling.
5ow can this work& #hy is it that we can apparently violate Nyquist%s rule so
thoroughly, and still get good results& It%s because we%re measuring something that
is so strictly cyclical. #e%ve already described this in the time domain $ how each
new sample lands a bit farther ahead on the cycle where it falls than the previous
sample did. If we try to think about this in the frequency domain we%re still left with
an apparent contradiction, however.
#hat is happening in the frequency domain is the result of a quirk in the Nyquist
theorem, and a matching quirk in the frequency domain behavior of repetitive
signals. The quirk in the frequency domain is that a steady, repetitive signal has it%s
energy concentrated in spikes around the fundamental frequency and its harmonics.
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
-200
-150
-100
-50
0
50
100
150
200
The more steady the cyclical waveform is, the narrower these spikes are. The quirk
in the Nyquist theorem is that the bandwidth of the signal doesn%t have to be
contiguous $ as long as you can chop it up into unambiguous pieces, you can spread
that Nyquist bandwidth out as much as you want.
1y sampling at Just the right rate, and interpreting the resulting signal as a slowed(
down replica of the input waveform, we are taking advantage of these quirks to
reconstruct the original waveform, even though our sampling is otherwise
outrageously slow.
There is a huge caveat to the foregoing approach, however. this approach only works
when the signal is steady, with a known frequency. In the e"ample I%m using it to
analy0e the voltage of the North merican power grid. This works well because in
North merica, as in most of the developed world, you can count on the line
frequency to be rock solid at the local standard frequency. This approach would not
work well at all on any unstable power source, such as one might see out of a
portable generator.
?ven in a developed country, this approach has the drawback that it simply will not
accurately catch transient events, or rapidly changing line levels. Transient events
have their own spectra that adds to the series of spikes of the basic power6 rapidly
changing line levels act to spread out the spikes in the power spectra, as does
changing line frequency. ny of these phenomena can completely destroy the
accuracy of the measurement.
3.4 Nyquist and Band Liited Signals
In a manner related to the power line sampling above, one can sample signals at
significantly higher frequencies than the sampling rate, as long as the signal in
question is limited in bandwidth.
s an e"ample, consider a radio receiver that must work with signals with a <4k50
bandwidth. common approach to receiving such signals is to translate them to
some intermediate frequency in the megahert0 region, filter them to a <4k50
bandwidth, then sample them an adequate rate *244k50 at a minimum,.
/or e"ample, consider a data link that generates a signal that is <4k50 wide, centered
on H43A50. This signal gets translated down by e"actly @H3.H<A50 and filtered, so it
is now centered on H.4<A50 and we can trust that there are no significant interfering
signals.
/igure -3 shows how this signal might look once it is translated down to the
intermediate frequency of H.4<A50. #hen this signal is sampled at 244k50, the
content at H.4<A50 will alias down to <4k50, and the overall signal will alias down to
a spectrum that runs from appro"imately 2<k50 to ><k50, which is well within the
Nyquist rate of -44k50.
igure !)" $ubsampling a #adio $ignal.
4 A Design Appoa!h
)o far in this discussion I have tried my best to destroy some commonly used rules of
thumb. I haven%t left any rules of thumb in their wake. #hy& 1ecause solving
problems in sampling and anti(alias filtering is not amenable to rules of thumb, at
least not general ones. #hen you%re solving sampling problems you%re best off
working from first principals and solving the problem by analysis.
In designing sampled(time systems, the variables that we need to Juggle are signal
accuracy *or fidelity, and various kinds of system cost *dollar cost, power
consumption, si0e, etc.,. Aeasured purely from a sample rate perspective, increasing
the signal sample rate will always increase the signal fidelity. It will often decrease
the cost of any analog anti(aliasing and reconstruction filters, but it will always
increase the cost of the system digital hardware, which will not only have to do it%s
computations faster, but which will need to operate on more data. ?stablishing a
system sample rate *assuming that it isn%t done for you by circumstances, can be a
comple" Juggling act, but you can go at it systematically.
In general when I am faced with a decision about sampling rate I try to estimate the
minimum sampling rate that I will need while keeping my analog electronics within
budget, then estimate the ma"imum sampling rate I can get away with while keeping
the digital electronics within budget. If all goes well then the analog(imposed
minimum sample rate will be lower than the digital(imposed ma"imum sample rate.
If all doesn%t go well then I need to revisit to my original assumptions about my
requirements, or I need to get clever about how I implement my system.
The common criteria for specifying a sampled(time system%s response to an input
signal are, in increasing order of difficulty. that the output signal%s amplitude
spectrum should match the input signal%s spectrum to some desired accuracy over
some frequency band6 that the output signal%s time(domain properties should match
the input signal%s time(domain properties to some desired accuracy, but with an
allowable time shift6 and that the output signal%s time domain properties should
match the input signal to some desired accuracy, in absolute real time.
9MHz (45/T) 9.05MHz 9.10MHz
4.1 !esigning "or Aplitude Response
In many cases where one is sampling an audio signal one only needs to concern
oneself with the amplitude response of the system over frequency. Indeed, this was
the case with the e"ample presented in the section titled 7Nyquist and /ilters8,
above.
To design to an amplitude response specification you need to determine what range
of frequencies you want to pass through your system, and how much amplitude
variation you can stand from the original *this can vary quite a bit and still be
acceptable,. Then you must determine how much off(frequency signal you can stand
being aliased down into your desired signal $ you can usually take this to be equal to
the least(significant bit of your D+, although you can often allow more, and in rare
cases you may need to allow much less. To determine how much attenuation you
need at these off frequencies you must have an idea of how much signal is there to
be filtered out $ it is usually conservative to assume that the entire signal is spectrally
flat, and plan your filter accordingly.
4.2 !esigning "or #ie$S%ape Response
There is a problem that arises when one designs for a pure frequency vs. amplitude
response. This problem is that the signal gets distorted in time.
/or some applications this matters little, if at all. The human ear is remarkably
insensitive to time distortions in a signal, as long as the overall frequency content
gets passed correctly. udiophiles may argue this point, but certainly for the
purposes of verbal communication and casual home entertainment quite a bit of time
distortion is acceptable.
/or other applications it is important that the signal, after processing, appear to
match the original signal as closely as possible. This requirement is particularly acute
for applications that involve vision *human or machine, or that require pattern
matching $ in these cases a signal that is distorted in time can be critically wrong.
/igure -; shows what happens if you pass a rectangular pulse through the filter that
we developed in the telephony e"ample, who%s frequency response is shown in /igure
H. There are two salient things to note about this response. one, it is considerably
delayed in time, and two, it shows severe ringing. If you were building a system that
needed to accurately portray the shape of a pulse this filter would be a disaster
=
.
= If you needed to transmit a pulse with significantly less delay it would be a
disaster twice $ we%ll cover that case in a later section.
igure !*" ilter #esponse to 8ulse.
The filter in /igure -; isn%t necessarily entirely as bad as it looks. often when we are
storing information for later display we can absorb any filter delay into the overall
delay of the system. This is shown in /igure -<, where the filter response is shown
artificially shifted back in time. This gives a much better looking response, although
the ringing is still present, and would still be obJectionable in many applications.
igure !." ilter with 9elay #emo(ed 'fter the act.
The nature of the data being measured can make a tremendous difference to the
filter response, however.
/or systems such as electrocardiogram displays, video systems, and pattern
matching systems, it is very important that the filter response doesn%t ring. It can be
very difficult to tell the difference between ringing artifacts and real signal features.
/igure -= shows an e"ample ?LM waveform
>
, in an unfiltered state. /igure -> shows
this same waveform, and the result of filtering it through a filter much like the one in
/igure H, only one %appropriate% for a <4450 sample rate. +learly this filter has
destroyed the integrity of the data.
> It%s fake, so if you know how to read these things $ rela".
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
-0.2
0.0
0.2
0.4
0.6
0.8
1.0
1.2
Ti me, ms
-0.5 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
-0.2
0.0
0.2
0.4
0.6
0.8
1.0
1.2
Ti me, ms
igure !/" 'n example 1:;.
igure !2" 1xample 1:; iltered with #inging.
#hy did this happen& The anti(alias filter of /igure H is designed to have a very
aggressive frequency response, with the greatest possible attenuation with the least
filter comple"ity. This is all well and good for a telephony application, but as we can
see it isn%t so good for other applications.
There are two effects at work to create ringing. 'ne of these is Just the sharp
transition from passing signal energy to not6 the other effect arises from different
components of the signal being delayed by different amounts. Fou%ll see it referred
to as %non(linear phase%, or %non(linear phase delay%. t any rate, to minimi0e this
effect you need to select a filter that minimi0es nonlinear phase delay effects.
!nfortunately, filters that minimi0e nonlinear phase delay effects don%t have good
frequency(domain properties. The best analog filter for minimi0ing phase delay is the
1essel filter *N1ud>;O,.
/igure -@ shows the frequency and alias response of a 1essel filter. +ertainly
compared the filter shown in /igure H this filter%s response is disappointing.
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
-5
0
5
10
15
20
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
-15
-10
-5
0
5
10
15
20
25
30
igure !3" requency #esponse of a 4essel ilter.
/igure -H shows the pulse response of the 1essel filter. +learly this response is much
slower than that shown in /igure -< (( but this filter shows no ringing at all, where the
pulse response in /igure -< rings like a bell. The slow rise and fall times of this filter
are a direct consequence of the fact that the filter isn%t passing as high of frequencies
as the telephony filter did, and if one wishes to avoid aliasing one is pretty much
stuck with it.
igure !5" 8ulse #esponse of 4essel ilter.
/igure 24 shows the results of filtering the sample ?LM with a 1essel filter. The
ringing is entirely eliminated, but you can see that the peak of the waveform is
severely attenuated. )uch filtering may or may not be acceptable in this situation $
there is obvious distortion of the waveform, but should there be noise on the signal it
will be reduced.
0 1000 2000 3000 4000 5000 6000 7000 8000
0.0
0.2
0.4
0.6
0.8
1.0
-1.0 -0.5 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
-0.2
0.0
0.2
0.4
0.6
0.8
1.0
Ti me, ms
igure &0" " $ample 1:; 'fter iltering with a 4essel ilter.
#hat, then, do we do& 'ne obvious solution is that if you are working with an
application that cannot tolerate ringing is to sample your signal faster. This will allow
you to use a more open anti(aliasing filter. nother solution, perhaps not so obvious,
is to sample at the rate that you can stand, and either increase the anti(alias filter
bandwidth above what might seem 7right8 or eliminate it altogether.
To determine if you can ease up on your anti(alias filter requirements you need to ask
yourself *a, if there is, indeed, high(frequency interference to your signal, or if it has
high(frequency components and *b, if such high(frequency components will cause
more signal degradation than an anti(alias filter. If the answer to both of these
questions is %no% then you should seriously consider not including a strict anti(alias
filter in your design.
4.3 !esigning "or A&solute #ie Response
The previous section was concerned with signals that must retain the general shape
of the original after sampling, but which could stand an arbitrary amount of delay.
Aany recording and data(analysis tasks fall into that category.
nother category of signal sampling tasks, however, involves real(time control of
systems. In this case we are wrestling with the dynamics of some thing that we%re
trying to control, and chances are we%re trying to speed up it%s response to
commands while minimi0ing its response to undesired input. In these cases not only
must we be concerned with the shape of the signal after sampling, but we must be
concerned with the amount of delay we introduce into the signal path.
#hen one is designing a controller one is very interested in the amount of phase
delay one is introducing into one%s signal path. This phase delay is often the signal
most important factor that limits the overall performance of the control loop, so one
generally puts a great deal of energy into minimi0ing it.
In any control loop that can be described using frequency(domain methods, we find
that there is a critical frequency at the point where the phase shift due to the
dynamics of the system being controlled, plus the dynamics of the controller, reaches
-@4 degrees. )hould the gain of the system at this frequency be equal to one, then
the system will oscillate, which will degrade performance if it doesn%t destroy the
system outright.
In a sampled(time control loop, the time delay due to sampling is appro"imately 9
the sampling rate. s a consequence, the phase delay due to sampling is
appro"imately 3=4 f Ts22 degrees, where f is the frequency of the signal and Ts is the
0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0
-5
0
5
10
15
20
mai n pl ot
0.37 0.38 0.39 0.40 0.41 0.42 0.43 0.44 0.45
-5
0
5
10
15
20
detai l
sample interval. This means that the phase delay contribution from sampling alone is
-@4 degrees at f B Ts.
In my classes I try to present easy rules of thumb where I can. The rule of thumb for
sampled(time control systems is to choose a sampling rate equal to ten or twenty
times your desired system bandwidth. !sing -4" oversampling the phase delay at
the system bandwidth is

delay
= 360
T
s
20T
s
=18degrees . *@,
#hat about anti(alias filters in our control system& ny anti(aliasing filter you can
use will add it%s own delay, and that delay can be considerable. dditionally, aliasing
in a control system is generally benign, unless the resulting aliased signal has a
frequency that is within the bandwidth of the control system. s long as the system
doesn%t put much noise on the feedback signal, the best anti(alias filter for a control
system is the one you don%t use.
If you do have noise in your system that could potentially alias down to a low
frequency and cause you trouble, you should analy0e your system to find out how
much delay you can stand, and design your filter *and sampling rate, accordingly.
" #inally
The theme of this paper can be summed up to this. the Nyquist rate is a line in the
sand, which you should be aware of when you%re designing systems. 1ut to really
determine an appropriate sampling rate, or to determine necessary anti(alias and
reconstruction filters for systems you have to understand aliasing and filtering, and
you have to use this knowledge to do your design $ using the Nyquist rate as a
guideline, rather than as a theoretical upper limit, will get you into trouble.
N'pp@3ONCyons4;O
$ibliogaphy
N1ud>;O ram 1udak. Eassive and ctive Network nalysis and )ynthesis.
5oughton Aifflin, -H>;
N'pp@3O lan K. 'ppenheim, lan ). #illsky, Ian T. Foung. )ignals and
)ystems. Erentice(5all, -H@3
NCyons4;O :ichard Cyons. !nderstanding Digital )ignal Erocessing. Erentice
5all, 244;

Das könnte Ihnen auch gefallen