Вы находитесь на странице: 1из 3

ELT 410 - Processamento Digital de Sinais

Aula Prtica 11: Filtros Digitais


Departamento de Engenharia Eltrica Centro de Cincia Exatas e Tecnolgicas, Universidade Federal de Viosa

Prof. Leonardo Bonato Felix Prof. Alexandre Santos Brando

Introduo

Sistemas lineares invariantes no tempo so comumente chamados de ltros e o processo de gerao de uma sada y[n] a partir de uma entrada x[n] chamado ltragem. O objetivo da ltragem realizar uma alterao do espectro de freqncia de um sinal. Por exemplo, um ltro simples pode ser especicado para remover sinais indesejados (rudos) acima de uma certa freqncia de corte. Um projeto mais sosticado pode partir da especicao dos nveis de oscilao permitidos na banda de passagem (Rp, em decibis) ou da largura da banda de transio (Wp - Ws, em Hertz). J uma abordagem mais precisa pode ainda exigir que os objetivos sejam alcanados com lro de ordem mnima, fase linear etc.

1.1

Filtros FIR

Filtros digitais com resposta ao impulso nita (FIR ou all-zeros) so obtidos truncandose a resposta ao impulso do ltro (ideal) pretendido. Filtros FIR possuem, dentre outras, as seguintes vantagens: Fase linear. Sempre so estveis. Podem ser implementados facilmente em hardware. O comando fir1 implementa ltros FIR passa-alta, passa-baixa, passa-faixa etc, baseado no mtodo do janelamento. O janelamento Hamming usado como default, mas o comando aceita outros tipos de janelas. Adicionalmente, a funo kaiserord estima parmetros otimizados para a funo fir1 de forma a atender uma srie de especicaes de ltragem. A ltragem propriamente dita realizada com o comando filter.

1.2

Filtros IIR

A principal vantagem de ltros digitais com resposta ao impulso innita (IIR) o fato de se alcanarem as especicaes de projeto com ordem bem menor que os ltro FIR. Embora estes ltros apresentem fase no-linear, o processamento digital permite que o processo de ltragem seja realizado o-line, o que torna possvel a realizao de um ltragem no-causal e que apresente fase zero (comando filtfilt) e, portanto, elimina as distores de fase do ltro IIR. Os ltros IIR clssicos - Butterworth, Chebyshev, Elptico - esto implementados no matlab (comandos butter, cheby1, cheby2, ellip), onde os coecientes so obtidos a partir das especicaes de cada ltro. A funo filter ltra um dado vetor com o ltro especicado pelas funes anteriores porm com a resposta de fase original do ltro (

recomendvel nesse caso usar o comando filtfilt ao invs do filter para eliminar a distoro em funo de fase no-linear do ltro IIR). ainda possvel otimizar os ltros em funo das caractersticas de resposta em freqncia desejadas. Nesse sentido, os comandos buttord, cheb1ord, cheb2ord, ellipord so responsveis pela obteno da ordem e dos parmetros adicionais dos ltros otimizados.

2
2.1

Roteiro
Exerccio 1: Filtro digital passa-baixa 400 Hz

Inicialmente necessrio normalizar as freqncias em funo da freqncia de Nyquist, a qual metade da freqncia de amostragem. Todas as funes da toolbox de processamento de sinais do Matlab trabalham com freqncias normalizadas, pelo fato de no necessitarem, assim, de um parmetro de entrada extra que seria a freqncia de amostragem. A freqncia normalizada est sempre no intervalo entre 0 e 1. Por exemplo, com 1000 Hz de freqncia de amostragem, 300 Hz 300/500 = 0, 6. Criemos um senide ruidosa: Acesse o help das funes e comente todas as linhas de cdigo! fs = 2000; t = 0:1/fs:5; s = sin(2*pi*262.62*t); n = 0.1*randn(size(s)); sn = s + n; Obtendo os parmetros timos para um ltragem Butterworth passa-baixa que atenue, pelo menos, 35 dB na banda de corte e que atenue, no mximo, 1 dB na banda de passagem alm de ter banda de transio entre 400 a 600 Hz: [N, Wn] = buttord(400/(fs/2), 600/(fs/2), 1, 35) [B,A] = butter(N,Wn,low) Vejamos a resposta em freqncia deste ltro (note a fase no-linear). freqz(B,A,1024,fs) Filtrando com filter y = filter(B,A,sn); figure;plot(t,y);axis([0 0.04 -1.1 1.1]);title(Usando filter) soundsc(y,fs) Filtrando com filtfilt y = filtfilt(B,A,sn); figure;plot(t,y);axis([0 0.04 -1.1 1.1]);title(Usando filtfilt) soundsc(y,fs) Descreva as diferenas percebidas entre os arquivos ltrados, caso existam. Alternativamente, pode-se implementar um ltro equivalente atravs de uma abordagem FIR. Por exemplo, para um passa-baixa FIR de ordem 20 e corte em 400 Hz: B = fir1(30,400/1000) freqz(B,1,1024,2000) y = filter(B,A,sn); 2

figure;plot(t,y); axis([0 0.04 -1.1 1.1]) soundsc(y,fs) Tente agora otimizar a ordem do FIR equivalente ao IIR acima. Use, por exemplo, a funo kaiserord.

2.2

Limpeza de udio

Acesse o PVAnet e projete ltros para limpar os arquivos 1.wav e 7.wav. No permitido usar informaes dos udios originais na soluo. Comente as diculdades na ltragem de cada um dos sinais, as solues encontradas e a qualidade sonora dos arquivos processados.

Вам также может понравиться