0
470views
Design a digital Butterworth lowpass filter to have a passband edge frequency of 10 Hz, a stopband edge frequency of 90 Hz, a maximum passband attenuation of 0.5 dB...

Design a digital Butterworth lowpass filter to have a passband edge frequency of 10 Hz, a stopband edge frequency of 90 Hz, a maximum passband attenuation of 0.5 dB, and a minimum passband attenuation of 20 dB. The sampling frequency is 200 Hz.

0
24views

Solution:

(i) Compute the normalized digital frequencies:

\begin{aligned}\\ &\omega_P=2 \pi \frac{10}{200}=0.314 \mathrm{rad} / \mathrm{s} \quad \text { and } \\\\ &\omega_s=2 \pi \frac{60}{200}=1.8850 \mathrm{rad} / \mathrm{s}\\ \end{aligned}\\

Pre-warp the digital frequencies to obtain the frequencies of the analog LPF

\begin{aligned}\\ \Omega_P &=\tan (0.314 / 2)=0.1583 \mathrm{rad} / \mathrm{s} \quad \text { and } \\\\ \Omega_s &=\tan (1.8850 / 2)=1.3764 \mathrm{rad} / \mathrm{s}\\ \end{aligned}\\

(ii) Find the order of the LPF:

The inverse transition ratio $\frac{1}{k}=\frac{\Omega_s}{\Omega_P}=\frac{1.3764}{0.1583}=8.6949$.

From the specified ripple of $0.5 \mathrm{~dB}$ we have $10 \log _{10}\left(\frac{1}{1+\varepsilon^2}\right)=$ $-0.5$ which gives $\varepsilon^2=0.1220$. From the minimum stopband attenuation we have $10 \log _{10} \frac{1}{A^2}=-20$ which gives $A^2=100$. Therefore, the inverse discrimination ratio is given by $\frac{1}{k_1}=$ $\frac{\sqrt{A^2-1}}{\varepsilon}=28.4864$.

The order of the filter is given by,

$N=\frac{\log _{10}\left(\frac{1}{k_1}\right)}{\log _{10}\left(\frac{1}{k}\right)}=\frac{\log _{10} 28.4864}{\log _{10} 8.6949}=1.55 .$

The order is rounded up to the next higher integer, $N=2$. In order to determine $\Omega_c$ and to meet the stopband specifications exactly we use $\frac{1}{1+\left(\Omega_P / \Omega_C\right)^{2 N}}=\frac{1}{A^2}$ which gives $\Omega_c=$ $0.4364$.

(iii) The normalized transfer function of the second-order analog filter is given by,

$H(s)=\frac{1}{s^2+\sqrt{2} s+1}$. In order to frequency scale the transfer function we replace s with $\frac{s}{\Omega_c}$ which gives,

$\hat{H}(s)=\frac{\Omega_c^2}{s^2+\Omega_c \sqrt{2} s+\Omega_c^2}=\frac{0.1904}{s^2+0.6172 s+0.1904}\\$

(iv) Applying the bilinear transformation we get:

\begin{aligned}\\ H(z)=\left.\hat{H}\right|_{s=\frac{1-z^{-1}}{1+z^{-1}}} &=\frac{0.1904\left(1+2 z^{-1}+z^{-2}\right)}{1.8076-1.6192 z^{-1}+0.5732 z^{-2}} \\\\ &=\frac{0.105+0.210 z^{-1}+0.105 z^{-2}}{1-0.896 z^{-1}+0.317 z^{-2}} \\ \end{aligned}\\

(v) Implementation using direct form II structure:

The problem can also be solved using MATLAB. The functions used are in the appendix. In the bilinear transformation, one can cancel out the impact of T by using $T=2$.

The program does the pre-warping outside the bilinear function and therefore the pre-warping option is not used.

Results printed by the program:

$\Omega p=0.1584 \mathrm{rad} / \mathrm{s}, \Omega s=1.3764 \mathrm{rad} / \mathrm{s}$, Cut-off frequency of the analog filter $=0.4363 \mathrm{rad} / \mathrm{s}$ Order of the analog filter $=2$ The transfer function of the analog filter,

$H(s)=\frac{0.1904}{s^{\wedge} 2+0.6171 s+0.1904}\\$

The transfer function of the digital filter,

$H(z)=\frac{0.1053 z^{\wedge} 2+0.2107 z+0.1053}{z^{\wedge} 2-0.8958 z+0.3172}.\\$