next up previous
Next: About this document ...

ELEC 6410 Project #5 Fall 2009

Assigned: 10/23/09 Due: 10/30/09

Z-transforms and Pole-Zero Response

This project will give you some exposure to z-transforms and the effects of pole and zero placement on the frequency response of a digital filter.

Exercises

  1. Consider a two-pole/two-zero system function

    \begin{displaymath}H(z) = \frac{1 + 0.2z^{-1} -0.8z^{-2}}{1 -0.95z^{-1} + 0.7z^{-2}} \end{displaymath}

    Find the pole and zero locations of this system. (Hint: the functions roots and poly may be useful in this exercise.) Generate a pole-zero plot using zplane. Sketch the frequency response you expect to see by looking at the pole-zero plot. Display the frequency response with freqz. Note that your sketch will reflect magnitude response, while the MATLAB plot will show log-magnitude response.
  2. Run fdatool. Go to File->Import Filter from Workspace. Select Direct-Form 1 filter structure, and specify [1 0.2 -.8] for the numerator and [1 -0.95 0.7] for the denominator. Then click "Import Filter." Go to the pole-zero editor by clicking the appropriate icon on the left side. Using trial-and-error, determine the pole and zero locations of a system so that it implements the best lowpass filter possible with cutoff $\frac{\pi}{3}$ using two poles and two zeros. ("Best" may be in the eye of the beholder to a degree.) Be sure to choose the poles and zeros so that the difference equation has real coefficients (complex-conjugate pole and zero locations). If you want complex-conjugate zeros, unselect "Conjugate", drag a zero off of the real axis, reselect "Conjugate", and then delete the unwanted zero that remains on the real axis. Select File->Export... and export the resulting coefficients to variables in MATLAB.

    Provide pole-zero and magnitude response plots.

  3. Determine the difference equation defined by the filter you designed in the previous step. Generate a signal $x[n] = \cos(0.1\pi n) +
\cos(0.9\pi n)$ of length 100. Filter this signal with filter and examine the result. Explain this result in terms of the frequency response of your filter.
  4. Generate a 50-point impulse response from the difference equation using impz. Does this impulse response look like it would implement a lowpass filter? Explain.
  5. Read in fanfare.au with auread. Filter this signal with the filter you designed and listen to the result with sound. Comment on the difference before and after filtering.

Write a short report describing your findings following my format instructions. The text should be no more than two pages of 12-point type with 1.5 line spacing, not including plots. The report should contain a concise description of your results. Include all plots you were required to generate. Include the plots as small as possible within the text of the report, not at the end. Be sure to answer all questions.

NOTE: All out-of-class work is to be done independently. Sharing of programming tips and discussing general concepts is ok. Collaborating on experiments or code-writing is not. Any such collaboration on these assignments will be considered an act of dishonesty and will be treated accordingly.

For further help:




next up previous
Next: About this document ...
Stan Reeves 2009-10-21