0% found this document useful (0 votes)
64 views

DSP Task

Uploaded by

Mohamed Waseem
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views

DSP Task

Uploaded by

Mohamed Waseem
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

‫‪DSP Task‬‬

‫سكشن‬ ‫االسم‬
‫‪4‬‬ ‫محمد وسيم محمد احمد‬
‫‪3‬‬ ‫محمد على عبدالفتاح شلتوت‬

‫‪1‬‬
Assignment

1. For each of the following filters plot frequency responses, impulse


responses (DON’T FORGET TO LABEL THE AXES AND TITLE YOUR
PLOTS), Fs = 10 kHz, Is the system stable?
▪ Butterworth filter with n = 4,21 (band pass fc1=200, fc2=2000)

for n=4 :
n = 4;
Fs =10000;
fc1 = 200 ;
fc2 = 2000 ;
f = [0:.001:1]*Fs/2;
[b a] = butter(n,[fc1 fc2]/(Fs/2),"bandpass");
figure(1) ;
subplot(2,1,1);
impz(b,a,50);grid;
title("Impulse Response of butter IIR Bandpass n = 4")
H = freqz(b,a,f,Fs);
subplot(2,1,2);
plot(f,abs(H));grid;
ylim([0 2]);
title("butter IIR Bandpass filter Fs = 10k ,fc1 = 500 ,fc2
=2k ,n=4")
xlabel("Physical Frequency f (HZ)");
ylabel("Frequency Response |H|");
if isstable(b,a)
disp("IIR filter with order n = 4 is Stable");
else
disp("IIR filter with order n = 4 is not Stable");
end

2
For n = 21
n = 21;
Fs =10000;
fc1 = 200 ;
fc2 = 2000 ;
f = [0:.001:1]*Fs/2;
[b a] = butter(n,[fc1 fc2]/(Fs/2),"bandpass");
figure(2);
subplot(2,1,1);
impz(b,a,50);grid;
title("Impulse Response of butter IIR Bandpass n = 21")
H = freqz(b,a,f,Fs);
subplot(2,1,2);
plot(f,abs(H));grid;
ylim([0 2]);
title("butter IIR Bandpass filter Fs = 10k ,fc1 = 500 ,fc2
=2k ,n=4")
xlabel("Physical Frequency f (HZ)");
ylabel("Frequency Response |H|");
if isstable(b,a)
disp("IIR filter with n = 21 is Stable");
else

3
disp("IIR filter with n = 21 is not Stable");
end

2. You have a file named “whistle.wav”:


▪ Read the file into MATLAB, specify #samples and time of recording in sec.

[whistle Fs]=audioread("whistle.wav");
N = length(whistle); % #samples
time = N/Fs ; % time of recording
sound(whistle , Fs, 16) ;
pause(2);

▪ Plot the frequency spectrum of signal x, do you notice the peaks

4
freq_signal = abs(fft(whistle));
f = linspace(0,Fs,N) ;
figure(3);
plot(f,freq_signal);
title('Amplitude Spectrum of whistle
signal')
xlabel('Frequency (Hz)')
ylabel('|whistle Signal|');
figure(9);
subplot(2,1,1);
specgram(whistle,512,Fs)
xlabel("Time");
ylabel("Frequency");
title("Signal with whistle ");

▪ Design a filter to reject the sinusoidal signals from signal x.

a = 1 ;
n = 400 ;
f = (0:.01:1)*Fs/2 ;
b = fir1(n,[400 600]/(Fs/2),"stop");
b1 = fir1(n,[1400 1600]/(Fs/2),"stop");

5
▪ Plot frequency response, impulse response of the designed filter. Is the filter stable?

Filter to remove the first peak :

Filter to remove the second peak :

▪ Plot the frequency spectrum of signal y (the output of the filter).

6
N = length(without_whistle);
without_whistle_in_freq =
abs(fft(without_whistle));
f = linspace(0,Fs,N);
figure(6);
plot(f,without_whistle_in_freq);grid;
title('Amplitude Spectrum of signal without
whistle')
xlabel('Frequency (Hz)')
ylabel('|Signal_without_whistle|');
ylim([0 2500]);

▪ Play the output signal is the whistle still there?

sound(without_whistle,Fs);

7
▪ Calculate the energy for the original signal and the filtered signal.

whisle_energy = sum(whistle.^2);
without_whistle_energy =
sum(without_whistle.^2);
disp("the Original signal Energy :
"+whisle_energy);
disp("the Energy Signal after filtering
: " + without_whistle_energy);

3. For each of the following filters plot frequency responses, impulse responses:
a. 𝑦[𝑛] = 1/8 (𝑥[𝑛] + 𝑥[𝑛 −1]+𝑥[𝑛−2]+𝑥[𝑛−3]+𝑥[𝑛−4]+ 𝑥[𝑛 −5]+𝑥[𝑛−6]+𝑥[𝑛−7])

8
b. 𝑦[𝑛] = 1/8 (𝑥[𝑛] − 𝑥[𝑛 −8])+𝑦[𝑛−1]

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy