68.9k views
5 votes
1. Design a recursive (IIR) low pass filter that has a maximally flat passband (Butterworth filter) with the following cutoff and attenuation characteristics. • fc = 100Hz • fr = 150Hz • A = 10dB - Min attenuation in stopband Design HA(s) by hand and then apply bilinear z-transformation to arrive at the corresponding digital filter HD(z) (indirect approach). Sam

User Jon Ownbey
by
5.4k points

1 Answer

7 votes

Answer:

See explaination

Step-by-step explanation:

MATLAB:

clc;

close all;

clear all;

%Specifications

Rp=1;Rs=10;Fs=1000;

wp=2*100/Fs;ws=2*150/Fs;

%Butterworth filter

[N1,wc]=buttord(wp,ws,Rp,Rs)

[b1,a1]=butter(N1,wc)

[b1,a1]=bilinear(b1,a1,1)

[H1,w]=freqz(b1,a1)

%chebyshev Filter 1

[N2,wp] = cheb1ord(wp,ws,Rp,Rs)

[b2,a2]=cheby1(N2,Rp,wp)

[b2,a2]=bilinear(b2,a2,1)

[H2,w]=freqz(b2,a2)

%Bessel Filter

wc=(wp+ws)/2

[b3,a3] = besself(N2,wc)

[b3,a3]=bilinear(b3,a3,1)

[H3,w]=freqz(b3,a3)

subplot(321)

plot(w/pi,20*log(abs(H1)),'m')

xlabel('w/pi')

ylabel('|H(w)| in db')

title('Log magnitude response-butterworth')

subplot(322)

plot(w/pi,angle(H1),'g')

xlabel('w/pi')

ylabel('<H(w)>')

title('Phase response-butterworth')

subplot(323)

plot(w/pi,20*log10(abs(H2)),'b')

xlabel('w/pi')

ylabel('|H(w)| in db')

title('Log magnitude response-chebyshev 1')

subplot(324)

plot(w/pi,angle(H2),'m')

xlabel('w/pi')

ylabel('<H(w)>')

title('Phase response-Chebyshev1 ')

subplot(325)

plot(w/pi,20*log10(abs(H3)),'r')

xlabel('w/pi')

ylabel('|H(w)| in db')

title('Log magnitude response-bessel')

subplot(326)

plot(w/pi,angle(H3),'g')

xlabel('w/pi')

ylabel('<H(w)>')

User Input
by
6.2k points