Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Filtros FIR
En este capítulo estudiaremos Filtros FIR para ello es necesario que se conozcan los
filtros con anterioridad, tanto digitales como analógicos. Junto con su correcto
funcionamiento y conceptos para así poder tener un concepto más amplio y completo
de filtros y reconocer con exactitud Filtros FIR.
Además de desarrollarse ejercicios y sus respectivas aplicaciones en este capítulo,
podemos observar que es de suma importancia los conceptos previos anteriormente
vistos, como señales en tiempo discreto y en tiempo continuo y sus respectivas
diferencias y representaciones, gráficas y analíticas.
1. Concepto de Filtros FIR:
Pertenece a un tipo de Filtro Digital, una de las clases en la cual dependerá del tiempo de
duración de la respuesta.
𝑦[𝑛] = ∑ 𝑏𝑘 𝑥[𝑛 − 𝑘]
𝑘=0
𝐻(𝑧) = ∑ 𝑏𝑘 𝑧 −𝑘
𝑘=0
Cuyas raíces son los ceros del filtro. Además la respuesta al impulso del sistema FIR es:
𝑏𝑛 0≤𝑛 ≤𝑀−1
ℎ(𝑛) {
0 𝑒𝑛 𝑜𝑡𝑟𝑜𝑠 𝑐𝑎𝑠𝑜𝑠
La función de transferencia de Filtros FIR es un polinomio en 𝑧 −1 . Por ende habrán propiedades
que deben cumplirse, las cuales son:
Sabemos que una respuesta en fase lineal genera un retardo, esto es posible reducir de tal
manera que el diseño se basa en la aproximación de la respuesta deseada.
2 Filtros FIR Cap.1
𝑦[𝑛] = ∑ 𝑏𝑘 𝑥[𝑛 − 𝑘]
𝑘=0
El filtro FIR se obtiene truncando hd(n) por medio de una ventana, como por medio
de una ventana rectangular:
1 𝑛 = 0,1, … , 𝑀 − 1
𝑤(𝑛) = {
0 𝑒𝑛 𝑜𝑡𝑟𝑜𝑠 𝑐𝑎𝑠𝑜𝑠
Es posible reescribir la ecuación en forma equivalente:
ℎ(𝑛) = ℎ𝑑(𝑛)𝑤(𝑛)
ℎ[𝑛] = 𝑤[𝑛]ℎ𝑑[𝑛]
Técnica de ventanazo:
Se diseñan obteniendo su respuesta en frecuencia
Se diseña una plantilla con los ejes de corte, etc. Una vez obtenida la plantilla, la muestreamos
para conseguir una transformada de Fourier digital. Hacemos la inversa y obtenemos la
respuesta impulso. Si hemos tomado muchos puntos para la plantilla, la respuesta tendrá
3 Filtros FIR Cap.1
muchos puntos. Se toma una fracción de esa respuesta impulso y se llama envantenar la
respuesta impulso.
Tipos de ventana:
Hamming
Hanning
Bartlett
Blackman3
Kaiser
Chebwin
Y se calcula la respuesta al impulso h(n), pero para reducir los lóbulos laterales se
utilizan métodos numéricos que muestran la banda de transición.
𝑀−1
2𝜋 𝑗2𝜋(𝑘+𝛼)𝑛
𝐻(𝑘 + 𝛼) = 𝐻 ( (𝐾 + 𝛼)) = ∑ ℎ(𝑛)𝑒 − 𝑀 , 𝑘 = 0,1, … 𝑀 − 1
𝑀
𝑛=0
Cuando α=0, las ecuaciones equivalen a la DFT, IDFT. Si h(n) es real se cumple:
𝐻(𝑘 + 𝛼) = 𝐻 ∗ (𝑀 − 𝐾 − 𝛼)
Respuesta impulsional es: ℎ(𝑛) = ±ℎ(𝑀 − 1 − 𝑛)
Donde W(w) es una función de ponderación de error que usualmente se define como
𝛿1
𝑊(𝑤) = { 𝛿2 𝑤 𝑒𝑛 𝑙𝑎 𝑏𝑎𝑛𝑑𝑎 𝑑𝑒 𝑝𝑎𝑠𝑜
1 𝑤 𝑒𝑛 𝑙𝑎 𝑏𝑎𝑛𝑑𝑎 𝑑𝑒 𝑟𝑒𝑐ℎ𝑎𝑧𝑜
𝑦(𝑛) = ∑ ℎ(𝑘)𝑥(𝑛 − 𝑘)
𝑘=0
Esta estructura requiere de M-1 posiciones de memoria para almacenar dichas entradas
anteriores y tiene una complejidad de M multiplicaciones y M-1 sumas para cada salida. Dichas
salidas constan de una combinación lineal ponderadda de M-1 valores anteriores de la entrada
y el valor actual de la entrada poderada.
𝐻(𝑧) = ∏ 𝐻𝑘(𝑧)
𝑘=1
Donde:
El parámetro del filtro puede ser distribuido en todas las secciones del filtro, asi como también
puede ser asignado a una sola sección del filtro.
Son estructuras alternativas para filtros FIR en las que los parámetros se caracterizan al filtro
con valores de respuesta en frecuencia deseada en lugar de las respuesta impulso h(n).Podemos
describir la respuesta en frecuencia como
𝑀−1
EJERCICIOS PROPUESTOS:
EJERCICIO Nº1:
EJERCICIO Nº2
hd = ideal_lp(wc1,M)+0.5*(ideal_lp(wc2,M)-ideal_lp(wc1,M));
hd = ideal_lp(wc1,M)+0.5*(ideal_lp(wc2,M)-ideal_lp(wc1,M));
% Determine the Window Design Impulse Response and Frequency Response
h = hd .* w_kai; [db,mag,pha,grd,w] = freqz_m(h,1); delta_w = pi/500;
Asd = floor(-max(db(ceil(w5/delta_w)+1:501))), % Actual Attn
Asd =
65
[Hr,w,P,L] = Ampl_res(h);
%
%% Filter Response Plots
Hf_1 = figure(’Units’,’inches’,’position’,[1,1,7,4],’color’,[0,0,0],...
’paperunits’,’inches’,’paperposition’,[0,0,7,4]);
set(Hf_1,’NumberTitle’,’off’,’Name’,’P7.15’);
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’); set(gca,’XTick’,[0;M-1],’fontsize’,8)
axis([-1,M,min(hd)-0.1,max(hd)+0.1]); 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’);
set(gca,’XTick’,[0;M-1],’fontsize’,8); set(gca,’YTick’,[0;1],’fontsize’,8);
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’); set(gca,’XTick’,[0;M-1],’fontsize’,8);
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’);
set(gca,’XTick’,[0;0.3;0.4;0.7;0.8;1]);
set(gca,’YTick’,[-Asd;0]); set(gca,’YTickLabel’,[’ 65’;’ 0 ’]);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’);
set(gca,’XTick’,[0;0.3;0.4;0.7;0.8;1]);
set(gca,’YTick’,[0;0.5;1]); grid;
EJERCICIO Nº3
Diseñe un filtro pasa banda de fase lineal utilizando la técnica de diseño de
ventanas de Hanning. Las especificaciones son: