0
$\begingroup$

I was just studying an old circuit analysis textbook that was describing how to design a Butterworth filter, and that seemed easy enough.. then, I started to wonder if I can take this analog filter and convert it into a digital filter. Its not really an exercise in the textbook, i was just curious how to convert the analog filter into a digital filter just for fun without the heavy DSP theory.

So I was tried to taking a toy Butterworth filter to do just that. For example, Let's suppose I had an analog filter:

$$H_a(j\Omega) = \frac{1}{(1+j\Omega)(2+j\Omega)}$$

and i wanted to convert this into a digital filter with say a sampling period $T=200\pi$ rad/sec, and neglecting the effects of aliasing, using this formula:

$$H(e^{j\omega}) = H_a(j\Omega)\Big|_{\Omega = \omega/T}$$

What would $H(z)$ and $h[n]$ look like for the digital filter?

$\endgroup$
12
  • 1
    $\begingroup$ need to look into the Bilinear Transform: $$ H(z) = H_a(s) \Big|_{s=\tfrac{2}{T} \tfrac{z-1}{z+1}} $$ $\endgroup$ Jan 30, 2020 at 5:30
  • $\begingroup$ what is the $\frac{z-1}{z+1}$, is that suppose to be there? $\endgroup$
    – pico
    Jan 30, 2020 at 5:32
  • $\begingroup$ it's the same $z$ that you have in $H(z)$. another question (that i assumed you were not asking) is: "How does one convert a transfer function $H(z)$ into a filter structure?" $\endgroup$ Jan 30, 2020 at 5:34
  • $\begingroup$ we can reduce the toy example down to one pole to keep it simple. $H_a(j\Omega) = \frac{1}{1+j\Omega}$ $\endgroup$
    – pico
    Jan 30, 2020 at 5:34
  • $\begingroup$ so what is "$s$" in your $H_a(s)$? $\endgroup$ Jan 30, 2020 at 5:35

1 Answer 1

2
$\begingroup$

Converting the analog filter $H_a(s)$ into a digital filter $H_d(z)$ using the bilinear transform where T is the sampling period:

$\Large H_d(z) = H_a(s)\bigg|_{s=\frac{2}{T}\frac{z-1}{z+1}}$

Example:

Given a first order Butterworth filter

$H_a(s) = \frac{1}{1+RCs}$

$H_d(z) = H_a\bigg( \frac{2}{T} \frac{z-1}{z+1} \bigg)$

$H_d(z) = \frac{1}{1+RC\Big(\frac{2}{T}\frac{z-1}{z+1} \Big)}$

$H_d(z) = \frac{1}{1+RC(\frac{2}{T}\frac{z-1}{z+1})}$

$H_d(z) = \frac{1+z}{(1-2RC/T)+(1+2RC/T)z}$

$H_d(z) = \frac{1+z^{-1}}{(1+2RC/T)+(1-RC/T)z^{-1}}$

The coefficients of the denominator are the 'feed-backward' coefficients and the coefficients of the numerator are the 'feed-forward' coefficients used to implement a real-time digital filter.

$\endgroup$
2
  • $\begingroup$ very good. now the next thing you gotta learn about, pico, is about frequency warping. $\endgroup$ Jan 30, 2020 at 15:02
  • $\begingroup$ Nice job! ..... $\endgroup$ Jan 30, 2020 at 19:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.