POLES, ZEROS, AND STABILITY

Một phần của tài liệu Digital signal processing using MATLAB for students and researchers john w leis (Trang 153 - 159)

The z domain equations provide a convenient way for converting between a sampled waveform and a difference equation. The transfer function in z is also invaluable for the analysis of systems. The following shows the relationship between a transfer function and the time domain, and shows a way to graphically visualize a system ’ s expected response.

The poles and zeros of a system are quantities derived from its transfer func- tion, and are fundamental to an understanding of how a system responds to a given input. They are defi ned as follows:

The Zeros of a system are those values of z which make the numerator B ( z ) equal to zero.

The Poles of a system are those values of z which make the denominator A ( z ) equal to zero.

Note that we are effectively solving for the roots of a polynomial, and hence the value (s) of z may be complex numbers. As a simple example, consider a system with one real pole at z = p . The transfer function is:

H z z z p

( )=

− . (5.37)

The corresponding difference equation is:

y n( )=x n( )+py n( −1 . ) (5.38)

The parameter p controls how much of the previous output is fed back. This recursive term is crucial to the stability of the system. Suppose initially p = 0.9. We may implement this using the difference equation coding approach outlined earlier, or using the MATLAB fi lter () command:

c05.indd 146

c05.indd 146 4/13/2011 5:22:11 PM4/13/2011 5:22:11 PM

5.6 POLES, ZEROS, AND STABILITY 147

Figure 5.9 shows the family of impulse responses with poles in a variety of locations on the real axis. From this, some observations may be made:

1. Starting from the origin, as the pole location gets closer to ± 1, the response decays more slowly.

2. Poles at positive values of z show a smooth response, whereas poles at nega- tive values of z oscillate on alternating samples.

3. Poles whose magnitude is less than 1 are stable, whereas poles whose magni- tude is greater than one tend toward instability.

Now consider a system with complex poles. Because the coeffi cients of the time domain terms in the difference equation must be real, the coeffi cients of z when written out as a polynomial must in turn be real. This in turn means that the roots of the numerator and denominator polynomials in z (the zeros and poles respectively) must be complex conjugates. To give a simple second - order example, suppose a system has a transfer function:

G z z

z p z p

( )=

( − ) ( − )

2

* , (5.39)

where * denotes complex conjugation. Let the pole p be at p=0 9. ej10

π

. That is, a radius of 09 at an angle of π10. We may iterate the difference equation as shown

FIGURE 5.9 The impulse response of a system with poles on the real axis. Values of

| p | > 1 lead to a diverging response. Negative values of p have an alternating + / − response.

These effects are cumulative (as in the lower - right fi gure). That is, we have both alternation and divergence.

Response with poles on the real axis

p = +0.9 p = +0.6 p = +1.1

p = −0.8 p = −0.4 p = −1.2

c05.indd 147

c05.indd 147 4/13/2011 5:22:11 PM4/13/2011 5:22:11 PM

148 CHAPTER 5 REPRESENTING SIGNALS AND SYSTEMS

roots (a) ans =

0.8560 + 0.2781 i 0.8560 − 0.2781 i abs ( roots (a))

ans = 0.9000 0.9000 angle ( roots (a)) ans =

0.3142 −0.3142

previously using the coeffi cients derived from the polynomial expansion of the denominator of G ( z ). Defi ning p as the value of the pole location, the poly () function may be used as shown below to expand the factored equation to obtain the denominator coeffi cients a. The numerator coeffi cients b are obtained directly, since the numerator is 1 z 2 + 0 z 1 + 0 z 0 :

p = 0.9 * exp (j * pi /10) p =

0.8560 + 0.2781 i a = poly ([p conj (p)]) a =

1.0000 1.7119 0.8100 b = [1 0 0];

Note how the function conj () is used to fi nd the complex conjugate. The pole locations may be checked using roots (), which is the complement to poly ()

Note that MATLAB uses i to display the complex number j= −1, not j.

By convention, the pole – zero plot of a system shows the poles labelled × and the zeros labelled o. We can extend the MATLAB code to show the poles and zeros, together with the unit circle, as follows:

c05.indd 148

c05.indd 148 4/13/2011 5:22:12 PM4/13/2011 5:22:12 PM

5.6 POLES, ZEROS, AND STABILITY 149

Note that we need to be a little careful with simple zeros at the origin, and in fact the above has two zeros at z = 0, as shown in the context of Equation 5.39 . Having more poles than simple zeros will only affect the relative delay of the impulse response, not the response shape itself.

The z plane pole/zero confi guration resulting from this transfer function is shown in Figure 5.10 . Iterating over 40 samples, the impulse response of this system is shown on the right - hand side. Note that it oscillates and decays as time progresses.

Figure 5.11 shows various responses with complex poles. From this, some observations may again be made:

1. Starting from the origin, as the pole gets closer to a radius of one, the response decays more slowly.

2. When the poles are on the unit circle, the response oscillates indefi nitely.

3. When the poles are outside the unit circle, the system becomes unstable.

FIGURE 5.10 The pole – zero plot for a system with poles at z=0 9. e±jπ/10 and two zeros at the origin is shown on the left. The unit circle (boundary of stability) is also shown. The corresponding impulse response is on the right.

−1.5 −1 −0.5 0 0.5 1 1.5

−1.5

−1

−0.5 0 0.5 1.0 1.5

22

z plane

Real

Imaginary

Unstable region

0 5 10 15 20 25 30 35 40

−2

−1 0 1 2

Impulse response

Sample number

Amplitude

p = 0.9 * exp (j * pi /10);

a = poly ([p conj (p)]);

b = (1 0 0);

theta = 0: pi /100:2 * pi ; c = 1 * exp (j * theta);

plot ( real (c), imag (c));

set ( gca , ‘ PlotBoxAspectRatio ’ , [1 1 1]);

zvals = roots (b);

pvals = roots (a);

hold on

plot ( real (pvals), imag (pvals), ‘ X ’ );

plot ( real (zvals), imag (zvals), ‘ O ’ );

c05.indd 149

c05.indd 149 4/13/2011 5:22:12 PM4/13/2011 5:22:12 PM

150 CHAPTER 5 REPRESENTING SIGNALS AND SYSTEMS

FIGURE 5.12 The z plane and its interpretation in terms of stability (the unit circle) and frequency (the angle of the poles relative to π ).

ω = π f =fs/2

ω = 0 f = 0

ω= 2π f =fs

FIGURE 5.11 The impulse responses of a system with complex poles at various locations.

Response with complex poles

p= 0.9e ±π/10 p= 1e ±π/10 p= 1.2e ±π/10

p= 1e ±π/4 p= 1e ±π/2 p= 1e±π/20

c05.indd 150

c05.indd 150 4/13/2011 5:22:12 PM4/13/2011 5:22:12 PM

5.6 POLES, ZEROS, AND STABILITY 151

4. When the magnitude of the poles is greater than one, the response expands.

5. When the magnitude of the poles is less than one, the response decays.

6. The angle of the pole controls the relative frequency of oscillation.

The previous arguments reveal that the relative angle of the poles controls the fre- quency of oscillation, and this may be visualized as shown in Figure 5.12 . The posi- tive real axis is the “ zero frequency ” axis, and the negative real axis is the “ half sampling frequency ” or fs 2 axis. This is the highest frequency a sampled data system can produce, because it is constrained by the sample rate. The location of the poles for an oscillator — which is termed a marginally stable system — is shown in Figure 5.13 . The relative frequency of oscillation ω is directly related to the angle of the poles, with an angle of π radians corresponding to a frequency of oscillation of fs 2. The true frequency of oscillation is found by:

f fs osc = ω

ρ 2. (5.40)

This may be expressed in words as:

FIGURE 5.13 The poles of a marginally stable system. It is termed “ marginally stable ” because the poles are on the unit circle. When subjected to an impulse input, the corresponding difference equation will produce a sinusoidally oscillating output at frequency ω radians per sample.

ω

The true frequency of oscillation is equivalent to the angle of the upper - half z - plane pole, scaled such that an angle of π radians is equivalent to a real frequency of fs 2 Hz.

c05.indd 151

c05.indd 151 4/13/2011 5:22:12 PM4/13/2011 5:22:12 PM

152 CHAPTER 5 REPRESENTING SIGNALS AND SYSTEMS

Một phần của tài liệu Digital signal processing using MATLAB for students and researchers john w leis (Trang 153 - 159)

Tải bản đầy đủ (PDF)

(386 trang)