Escolar Documentos
Profissional Documentos
Cultura Documentos
7_PFFIR_(3h00min)_ALUNOS E1 a E5
Copiar a numeração desta lista abaixo ( em word) e em seguida, copiar os enunciados do Ingle
&Proakis 3Ed. 2012.
Entregar na data/hora estipuladas. Escanear e postar na Sala de Aula Google. Não usar
compressão tipo zip ou rar. Postar a Resolução e o Código Matlab, .m., todos numerados.
1
*E1_p376_P7.2 –Dado Filtro FIR de fase linear tipo1, calcular a resposta em amplitude Hr(w).
Tp: 30min
Nós obtemos:
Por isso
então
2
3
*E2_p378_P7.8.1 –Dada resposta em frequência ideal de filtro notch em sistema LIT,
determinar a resposta a impulso ideal, hd(n).. Tp:30min
4
* E3_p378_P7.9 –Dadas as 4 frequências de borda, projetar um filtro fase linear passa-banda
usando janela Hann. Tp: 30min
Codigo matlab:
Plots:
5
E4_p378_P7.10 – Dadas as 4 frequências de borda, projetar um filtro rejeita-faixa usando
janela de Hamming Tp: 30min
Plot:
6
*E5_p379_P7.13-Dadas especificações para |H(ejw)|, projetar filtro FIR de fase linear e
determinar resposta a impulso de comprimento mínimo, h(n). Tp: 60min
Utilizando as funções:
Codigo Matlab:
clc;
close all;
%% Especificações:
wp1 = 0.25*pi; % lower passband edge
ws1 = 0.35*pi; % lower stopband edge
ws2 = 0.65*pi; % upper stopband edge
wp2 = 0.75*pi; % upper passband edge
delta1 = 0.025; % passband ripple
delta2 = 0.005; % stopband ripple
%
% Converter para decibeis
[Rp,As] = delta2db(delta1,delta2)
%
tr_width = abs(min((wp1-ws1),(ws2-wp2))); M = ceil((As-
7.95)/(2.285*tr_width)+1)+1;
M = 2*floor(M/2)+1, % choose odd M
n = [0:1:M-1];
beta = 0.1102*(As-8.7); w_kai = (kaiser(M,beta))'; % Kaiser Window
wc1 = (ws1+wp1)/2; wc2 = (ws2+wp2)/2;
hd = ideal_lp(pi,M)+ideal_lp(wc1,M)-ideal_lp(wc2,M); % Ideal HP Filter
h = hd .* w_kai; % Window design
[db,mag,pha,grd,w] = freqz_m(h,1); delta_w = pi/500;
Asd = floor(-max(db(ceil(ws1/delta_w)+1:floor(ws2/delta_w)+1))), % Actual
Attn
Rpd = -min(db(1:floor(wp1/delta_w)+1)), % Actual passband ripple
[Hr,w,P,L] = Ampl_Res(h);
%
%% Filter Response Plots
subplot('position',[0.08,0.6,0.25,0.35]);
Hs_1= stem(n,hd,'filled');
set(Hs_1,'markersize',3);
title('Ideal Impulse Response');
axis([-1,M,min(hd)-0.1,max(hd)+0.1]);
7
xlabel('n');
ylabel('h_d(n)');
subplot('position',[0.41,0.6,0.25,0.35]);
Hs_2 = stem(n,w_kai,'filled');
set(Hs_2,'markersize',3);
axis([-1,M,-0.1,1.1]);
xlabel('n');
ylabel('w_{ham}(n)');
title('Kaiser Window');
subplot('position',[0.74,0.6,0.25,0.35]);
Hs_3 = stem(n,h,'filled');
set(Hs_3,'markersize',3);
title('Actual Impulse Response');
axis([-1,M,min(hd)-0.1,max(hd)+0.1]);
xlabel('n');
ylabel('h(n)');
subplot('position',[0.09,0.1,0.4,0.35]);
plot(w/pi,db,'linewidth',1);
title('Magnitude Response in dB');
axis([0,1,-As-30,5]);
xlabel('\omega/\pi');
ylabel('Decibels');
grid;
subplot('position',[0.59,0.1,0.4,0.35]);
plot(w/pi,Hr,'linewidth',1);
title('Apmlitude Response');
axis([0,1,-0.05,1.05]);
xlabel('\omega/\pi');
ylabel('Amplitude');
grid;
Plots:
8
9
TpT ( Tempo previsto Total: 3h00min)
////////////////////////////////////////////////////////////////////
10