Mudanças entre as edições de "PSD-EngTel (página)"
Ir para navegação
Ir para pesquisar
Linha 298: | Linha 298: | ||
# Qual deveria ser a frequência do sinal f_2 para que as amostras tomadas sejam coincidentes como o sinal f_1 para uma frequência de amostragem f_s? Reescreva a equação e verifique no Matlab. | # Qual deveria ser a frequência do sinal f_2 para que as amostras tomadas sejam coincidentes como o sinal f_1 para uma frequência de amostragem f_s? Reescreva a equação e verifique no Matlab. | ||
{{collapse bottom}} | {{collapse bottom}} | ||
+ | |||
+ | {{collapse top | AE1 - Projeto de Filtros Digitais IIR (Prazo de entrega 07/10/2016)}} | ||
+ | :Uma das metodologias de projeto de filtros digitais IIR, consiste em: (a) projeto de um filtro protótipo analógico passa-baixas H(p); (b) transformação em frequência do filtro H(p) -> H(s), obtendo o filtro LP, HP, BP, BS, conforme desejado; (c) transformação do filtro analógico em filtro digital H(s) -> H(z) utilizando a transformação Bilinear. Neste exercício avaliativo é solicitado que cada aluno realize o projeto do um conjunto de filtros, seguindo os passos acima descritos. | ||
+ | <!-- | ||
+ | {| class="wikitable" border="1" cellpadding="3" cellspacing="0" style="text-align:left; font-size:100%" bgcolor="#efefef" | ||
+ | ! scope="col" width=10% align="left"| Equipe | ||
+ | ! scope="col" width=30% align="center"| Filtro 1 | ||
+ | ! scope="col" width=30% align="center"| Filtro 2 | ||
+ | ! scope="col" width=30% align="center"| Filtro 3 | ||
+ | |- | ||
+ | | Gustavo, Stephany, Fernando | ||
+ | | LP - Butter (fp = 5 kHz; fr = 20 kHz, fs = 44 KHz) | ||
+ | | LP - Cheby I (fp = 15 kHz; fr = 20 kHz, fs = 50 KHz) | ||
+ | | BP - Cheby II (fr1 = 6 kHz; fp1 = 8.2 kHz, fp2 = 14 kHz; fr2 = 20 kHz, fs = 50 KHz)) | ||
+ | |- | ||
+ | | Roicenir, Ernani | ||
+ | | LP - Butter (fp = 8 kHz; fr = 20 kHz, fs = 44 KHz) | ||
+ | | LP - Cheby I (fp = 15 kHz; fr = 20 kHz, fs = 100 KHz) | ||
+ | | BP - Butter (fr1 = 6 kHz; fp1 = 8.2 kHz, fp2 = 8.7 kHz; fr2 = 20 kHz, fs = 100 KHz)) | ||
+ | |- | ||
+ | | Ronaldo, Vinicius | ||
+ | | LP - Butter (fp = 10 kHz; fr = 20 kHz, fs = 44 KHz) | ||
+ | | HP - Cheby II (fr = 15 kHz; fp = 20 kHz, Ap = 2 dB, Ar = 40 dB, G_p = 0dB, fs = 80 KHz) | ||
+ | | BS - Ellip (fr1 = 7 kHz; fp1 = 8.2 kHz, fp2 = 8.7 kHz; fr2 = 10 kHz, fs = 80 KHz)) | ||
+ | |- | ||
+ | | Giulio, Walter, Tiago | ||
+ | | LP - Butter (fp = 5 kHz; fr = 20 kHz, fs = 50 KHz) | ||
+ | | HP - Ellip (fr = 15 kHz; fp = 20 kHz, Ap = 0.8 dB, Ar = 40 dB, G_p = 0dB, fs = 50 KHz) | ||
+ | | BS - Butter (fr1 = 7 kHz; fp1 = 8.2 kHz, fp2 = 8.7 kHz; fr2 = 10 kHz, fs = 50 KHz)) | ||
+ | |- | ||
+ | | Matias, Lucas, Markus | ||
+ | | LP - Butter (fp = 8 kHz; fr = 20 kHz, fs = 50 KHz) | ||
+ | | LP - Cheby II (fp = 15 kHz; fr = 20 kHz, fs = 200 KHz) | ||
+ | | BS - Cheby I (fr1 = 7 kHz; fp1 = 8.2 kHz, fp2 = 8.7 kHz; fr2 = 11 kHz, fs = 200 KHz)) | ||
+ | |} | ||
+ | |- | ||
+ | | 6 | ||
+ | | LP - Butter (fp = 10 kHz; fr = 20 kHz, fs = 50 KHz) | ||
+ | | HP - Cheby I (fr = 15 kHz; fp = 20 kHz, Ap = 1 dB, Ar = 40 dB, G_p = 0dB, fs = 100 KHz) | ||
+ | | BP - Butter (fr1 = 6 kHz; fp1 = 8.2 kHz, fp2 = 8.7 kHz; fr2 = 20 kHz, fs = 100 KHz)) | ||
+ | |- | ||
+ | | 7 | ||
+ | | LP - Butter (fp = 5 kHz; fr = 20 kHz, fs = 60 KHz) | ||
+ | | LP - Ellip (fp = 15 kHz; fr = 20 kHz, fs = 150 KHz) | ||
+ | | BP - Cheby I (fr1 = 6 kHz; fp1 = 8.2 kHz, fp2 = 12 kHz; fr2 = 20 kHz, fs = 150 KHz)) | ||
+ | | - | ||
+ | | 8 | ||
+ | | LP - Butter (fp = 8 kHz; fr = 20 kHz, fs = 60 KHz) | ||
+ | | HP - Cheby II (fr = 15 kHz; fp = 20 kHz, Ap = 1 dB, Ar = 40 dB, G_p = 0dB, fs = 250 KHz) | ||
+ | | BP - Ellip (fr1 = 6 kHz; fp1 = 8.2 kHz, fp2 = 8.7 kHz; fr2 = 20 kHz, fs = 250 KHz)) | ||
+ | |||
+ | --> | ||
+ | |||
+ | :onde: | ||
+ | :: LP - Passa Baixa, HP - Passa Altas, BP - Passa Faixa, BS - Rejeita Faixa | ||
+ | :: <math> Wz_N </math> - frequência de especificação N do filtro, A_p </math> - Atenuação máxima na banda de passagem (dB), <math> A_s </math> - Atenuação mínima na banda de rejeição (dB), <math> G_p </math> - Ganho médio na banda de passagem (dB). | ||
+ | :: ''Butter'' - Aproximação tipo Butterworth, ''Cheby I'' - Aproximação tipo Chebyshev I. | ||
+ | :: No filtro 1 são dados os valores fixos de Ap = 1 dB, As = 35 dB, G_p = 0 dB, para LP <math> Wz_1 = W_p </math>, <math> Wz_2 = W_s </math>, para HP <math> Wz_1 = W_s </math>, <math> Wz_2 = W_p </math>. | ||
+ | :: No filtro 2 são dados os valores fixos de Ap = 0.1 dB, As = 20 dB, para BP <math> Wz_2 e Wz_3 são W_p1 e W_p2 </math>, <math> Wz_1 e Wz_4 são W_s1 e W_s2 </math>, para BS <math> Wz_1 e Wz_4 são W_p1 e W_p2 </math>, <math> Wz_2 e Wz_3 são W_s1 e W_s2 </math>. | ||
+ | |||
+ | :* Os projetos dos filtro 1 e 2 deve apresentar o cálculo da ordem do filtro, dos polos, a equação de H(p), H(s), H(z), |H(jw)|^2, a magnitude e fase do filtro nas frequências de passagem e rejeição especificadas. | ||
+ | :* Para todos os filtros, apresente de modo gráfico a resposta em frequência do filtro (ganho em dB e fase) dos filtros (a) protótipo H(p), (b) Filtro analógico H(s) e Filtro digital H(z). | ||
+ | :* Apresentar o gráfico do ganho em dB e da fase em cada caso com escalas corretas e com legendas | ||
+ | :* Deve ser apresentado o diagrama dos pólos e zeros dos filtros H(s) e H(z) | ||
+ | :* Escreva um relatório técnico em PDF mostrando os resultados obtidos e comentando os resultados obtidos. | ||
+ | ::* O "Publish" pode ser utilizado, mas o arquivo entregue deve ser PDF e não HTML. | ||
+ | :* Envie o relatório e os arquivos ".m" utilizados para o email "moecke at ifsc.edu.br" com o Assunto: '''PSD29007 - AE2 - Projeto de Filtros Digitais IIR'''. | ||
+ | {{collapse bottom}} | ||
+ | |||
+ | <!-- | ||
+ | {{collapse top | AE2 - Projeto de Filtro Digitais FIR - MATLAB (Prazo de entrega 07/10/2016)}} | ||
+ | :1. Projeto os filtros digitais FIR com fase linear as seguintes características: tipo passa baixas; <math> f_p </math> = 3 kHz; <math> f_r </math> = 4 kHz; <math> f_s </math> = 20 kHz; <math> \delta_p </math> = 0.01; <math> \delta_r </math> = 0.01; <math> G_p </math> = 0 dB. | ||
+ | :onde: | ||
+ | :: <math> f_s </math> - frequencia de amostragem do sinal de entrada; <math> f_p </math> - frequência de passagem; <math> f_r </math> - frequência de rejeição, <math> \delta_p </math> - Atenuação máxima na banda de passagem (linear), <math> \delta_r </math> - Atenuação mínima na banda de rejeição (linear), <math> G_p </math> - Ganho médio na banda de passagem (dB). | ||
+ | |||
+ | :2. Verifique se é possível projetar o filtro usando as janelas do tipo ''Retangular'', ''Hanning'', '''Hamming'', ''Blackmann'', ''[http://www.mathworks.com/help/signal/ref/kaiser.html Kaiser]'', ''[http://www.mathworks.com/help/signal/ref/chebwin.html Chebyshev]''. | ||
+ | :* Utilize as funções [http://www.mathworks.com/help/signal/ref/firpmord.html firpmord] e [http://www.mathworks.com/help/signal/ref/kaiserord.html kaiserord] para estimar a ordem do filtro. | ||
+ | :* Utilize as funções adequadas do Matlab para obter os coeficientes das janelas e em seguida utilize a função [http://www.mathworks.com/help/signal/ref/fir1.html fir1] para obter os filtros. | ||
+ | :* Ajuste a ordem do filtro e frequência de passagem de modo a conseguir que cada filtro atenda as especificações iniciais. | ||
+ | :3. Para cada tipo de janela, apresente de modo gráfico a resposta em frequência do filtro (ganho) de menor ordem que atende as especificações. Sobreponha os gráficos inserindo uma legenda adequada (indicando o tipo de janela e ordem). Utilizando um escala em dB (entre 10 dB e -80 dB) e frequência em kHz. Utilize uma mascara com cor diferenciada para indicar claramente a especificação do filtro, e crie um segundo gráfico mostrando claramente a banda de passagem conforme ilustrado nas figuras abaixo: | ||
+ | [[Arquivo:KaiserFIR.png| 600 px | Resposta em frequência - Ganho em dB ]] [[Arquivo:KaiserFIRZoom.png |600 px | Detalhe da banda de passagem da resposta em frequência - Ganho em dB]] | ||
+ | :6. Gere um arquivo "pdf" utilizando o '''Publish''' com os resultados e texto explicativo e envie o email "moecke at ifsc.edu.br" com o Assunto: '''PSD29007 - AE2 - Projeto de Filtro Digitais FIR - MATLAB'''. | ||
+ | {{collapse bottom}} | ||
+ | --> | ||
====JÁ ENCERRADAS==== | ====JÁ ENCERRADAS==== |
Edição das 15h21min de 15 de setembro de 2016
MURAL DE AVISOS E OPORTUNIDADES DA ÁREA DE TELECOMUNICAÇÕES
- Link curto http://bit.ly/IFSC-PSD29007
- Carga horária, Ementas, Bibliografia, Professores
- Cronograma de atividades (PSD-EngTel)
- Plano de Ensino
Registro on-line das aulas
Unidade 1
- Aula 1 (11 Ago)
- Revisão de Sinais e Sistemas no tempo discreto em Matlab:
- Resposta de sistemas LTI (Experimento 1.1)
- Relembrar o conceito de equação de diferenças de um sistema LTI discreto e resposta ao impulso.
- Resposta ao delta de Kronecker do sistema LTI discreto
- onde , e logo
% Exemplos e Experimentos baseados no livro:
% DINIZ, P. S. R., DA SILVA, E. A. B., e LIMA NETTO, S. Processamento Digital de Sinais: Projeto e Análise de Sistemas. 2. ed. Porto Alegre: Bookman, 2014. 976 p. ISBN 978-8582601235.
%% Experimento 1.1
alpha = 1.15; N = 256;
x = [1 zeros(1,N)];
y = filter(1,[1 -1/alpha],x);
stem(y);
- Amostragem de Sinais (Experimento 1.2)
- Relembrar teorema da amostragem. Efeito da amostragem abaixo da frequência de Nyquist. Aliasing.
- Notar que as amostras de um sinal (3 Hz) e um sinal (7 Hz) são idênticas quando amostrado com um sinal de 10 Hz.
% Exemplos e Experimentos baseados no livro:
% DINIZ, P. S. R., DA SILVA, E. A. B., e LIMA NETTO, S. Processamento Digital de Sinais: Projeto e Análise de Sistemas. 2. ed. Porto Alegre: Bookman, 2014. 976 p. ISBN 978-8582601235.
%% Experimento 1.2
fs = 10; % frequencia (Hz) de amostragem dos sinais
Ts = 1/fs; fase = 0;
time = 0:Ts:(1-Ts);
f1 = 3; % frequencia (Hz) do sinal s_1
f2 = 7; % frequencia (Hz) do sinal s_2
s_1 = cos(2*pi*f1*time+fase);
s_2 = cos(2*pi*f2*time+fase);
fsa = 1000; % frequência auxiliar de amostragem usada apenas para representação dos sinais originais
Tsa = 1/fsa;
time_aux = 0:Tsa:(1-Tsa);
figure(1);
stem(time,s_1,'ob');
hold on;
plot(time_aux, cos(2*pi*f1*time_aux+fase),'--k');
stem(time,s_2,'+r');
plot(time_aux, cos(2*pi*f2*time_aux+fase),'--m');
hold off;
legend('s_1 discreto','s_1 contínuo','s_2 discreto','s_2 contínuo')
- Uso do Matlab: Help, F9 executa o código destacado no Help. Programação com scripts .m, Execução de seções e variação de valores nos scripts,
- Ver no Matlab: zeros, ones, plot, stem, subplot, filter.
- Uso de gráficos no Matlab.
- Ver pag. 65 a 71 de [1]
- Ver também PDF Documentation for MATLAB. Principalmente MATLAB Primer.
- Aula 2 (15 Ago)
- Revisão de Sinais e Sistemas no tempo discreto em Matlab:
Variação do Experimento 2.2 |
---|
% Exemplos e Experimentos baseados no livro:
% DINIZ, P. S. R., DA SILVA, E. A. B., e LIMA NETTO, S. Processamento Digital de Sinais: Projeto e Análise de Sistemas. 2. ed. Porto Alegre: Bookman, 2014. 976 p. ISBN 978-8582601235.
%% Experimento 2.2
% Resposta em frequencia usando a função freqz
N = 1;
num = [1 0 0 0];
den = poly([0.8 0.2])
%den = [1 0.6 -0.16];
% modo 1
%[H,w]=freqz(num,den,[0:pi/100:N*pi-pi/100]);
%plot(w/pi, abs(H));
% modo 2
%[H,w]=freqz(num,den);
%plot(w/pi, abs(H));
% modo 3
%[H,w]=freqz(num, den, 'whole');
%plot(w/pi, abs(H));
% modo 4
freqz(num, den, 'whole');
figure(2);
zplane(num,den);
%% Resposta em frequencia substituindo z -> e^(jw)
syms z
Hf(z) = symfun(z^2/(z-0.2)/(z+0.8),z);
pretty(Hf)
latex(Hf)
N = 1;
w = [0:pi/100:N*pi-pi/100];
plot(w/pi,abs(Hf(exp(1i*w))))
%title(['$' latex(Hf) '$'],'interpreter','latex')
text(0.2,2,['H(z) = ' '$$' latex(Hf) '$$'],'interpreter','latex')
xlabel(['w/' '$$' '\pi' '$$'],'interpreter','latex')
|
- Aula 3 (18 Ago)
- Revisão de Sinais e Sistemas no tempo discreto em Matlab:
- Filtragem de Sinais (Experimento 3.1)
- Análise de Sinais (Experimento 3.2) - Análise de um sistema h[n] correspondente a um filtro passa-faixa, utilizando um sinal de entrada x[n] senoidal (ou um sinal r[n] de ruído branco). Análise da entrada x[n] e saída y[n] usando a fft.
- Aula 4 (22 Ago)
- Revisão de Sinais e Sistemas no tempo discreto em Matlab:
- Exercício - Sinal DTMF com ruído
- Usando o Matlab, gerar o sinal DTMF correspondente ao número N e adicionar um ruido ao sinal.
- Filtrar o sinal resultante mantendo apenas a frequência da linha (ou coluna)
- Mostrar os sinais no domínio do tempo e da frequência.
- x1,X1 - soma das duas senoides.
- x2,X1 - soma de x1 com o ruído branco (gaussiano)
- y,Y - sinal filtrado.
- Utilizar uma frequência de amostragem de 8000Hz de fazer a duração do sinal igual a 200 ms.
- Para adicionar o ruído utilize a função y = awgn(x,snr), ou y = x + nivel*randn(n).
- Para a filtragem utilize?
- faça a filtragem no domínio do tempo, usando a função filter posicionando o polo sobre a frequência que deseja passar, e coloque um zero sobre a frequência que deseja rejeitar.
- faça a filtragem no domínio da frequência, convertendo o sinal x1 para DF usando X1 = fft(x1), Y = X1.*H, y = ifft(Y), onde H é um vetor de zeros e uns que indica as frequências que devem passar e quais devem ser rejeitadas.
- VER (Experimento 3.1, Experimento 3.2, Experimento 2.3)
Unidade 2
- Aula 5 (25 Ago)
- Filtros Analógicos:
- Função de transferência
- Resposta em frequência: para obter a resposta em frequência é necessário avaliar
- O projeto de filtros analógicos é realizado em 2 etapas:
- projeto de um filtro passa baixas (LP) protótipo normalizado com frequência de passagem
- transformação em frequência para o tipo de filtro (LP, HP, BP ou BS)
- A aproximação de magnitude de filtros analógicos pode ser realizado usando as aproximações de Butterworth, Chebyshev (tipo 1 ou 2) e Cauer.
- Projeto de filtros analógicos do tipo Butterworth, considerando: é a frequência de passagem do filtro LP, é a atenuação em dB na frequência de passagem, é a frequência de stopband do filtro, é a atenuação em dB na frequência de stopband, , , são as frequências de passagem e stopband do filtro protótipo.
- É necessário determinar a ordem do filtro:
- Em seguida obter os polos do filtro:
- Em seguida é necessário obter a função de transferência:
- , onde
- No caso de um filtro LP é necessário ainda obter a função de transferência do filtro especificado
- Ver pag. 186 a 204 de [2]
- Aula 6 ()
- Projeto de filtros analógicos do tipo Chebyshev I.
- Determine a ordem mínima necessária:
- Em seguida obter os polos do filtro:
- , onde
- Ver pag. 204 a 208 de [2]
- Aula 7 ()
- Filtros Analógicos:
- Uso das funções buttord, butter, cheb1ord, cheby1, cheb2ord, cheby2, ellipord, ellip para o projeto de filtros analógicos com Matlab (é necessário usar o parâmetro 's').
- Ler Comparison of Analog IIR Lowpass Filters em ellip
- Uso das funções freqs, "zplane", fvtool na análise da resposta em frequência de filtros analógicos.
- Exemplos de projeto de filtro passa-baixas com frequência de passagem de 16 krad/s com atenuação máxima de 0.3 dB, frequência de rejeição de 20 krad/s com atenuação mínima de 20 dB; e ganho em DC de 3 dB.
%% Projeto de filtro passa-baixas usando funções do Matlab
%% Especificações do filtro
Wp =16000; Ws = 20000; Ap = 0.3; As = 20; G0= 3;
% Para analisar o filtro projetado, use fvtool(b,a) para observar plano s, resposta em magnitude, fase e atraso de grupo
%% Butterworth
[n,Wn] = buttord(Wp, Ws, Ap, As,'s')
[b,a] = butter(n,Wn, 's');
%% Chebyshev I
n = cheb1ord(Wp, Ws, Ap, As,'s')
[b,a] = cheby1(n,Ap, Wp, 's');
%% Chebyshev II
n = cheb2ord(Wp, Ws, Ap, As,'s')
[b,a] = cheby2(n,As, Ws, 's');
%% Elliptic - Cauer
[n, Wn] = ellipord(Wp, Ws, Ap, As,'s')
[b,a] = ellip(n,Ap,As, Wn, 's');
Avaliações
- Entrega dos diversos trabalhos ao longo do semestre.
- Projeto Final. O projeto é avaliado nos quesitos: 1) Implementação do Sistema, 2) Documentação, 3) Avaliação Global do aluno no projeto.
Atividades extra
Neste tópico serão listadas as atividades extras que os alunos da disciplina deverão realizar ao longo do curso.
PARA ENTREGAR
AE1 - Variação do Experimento 1.2 (prazo XX/Ago/2016) |
---|
No Experimento 1.2 varie o valor da frequência de amostragem de 6 até 20 Hz e observe:
|
AE1 - Projeto de Filtros Digitais IIR (Prazo de entrega 07/10/2016) |
---|
|
JÁ ENCERRADAS
ESTUDOS SEM ENTREGA DE DOCUMENTAÇÃO
Recursos necessários
- O Software Matlab está disponível na maioria dos laboratórios do IFSC-campus São José em instalação local tanto em Windows como Linux. Adicionalmente de qualquer maquina do IFSC, pode-se fazer Acesso ao IFSC-CLOUD.
- Para a programação em FPGAs, os softwares da ALTERA (Quartus II, QSIM e Modelsim-Altera), estão instalados no Laboratório de Programação (ver outros disponíveis). Para acessar veja a página Software e equipamentos recomendados para programação de FPGAs.
- Adicionalmente de qualquer maquina do IFSC, pode-se fazer usar o IFSC-CLOUD para ter acesso a estes softwares.
- Para a geração de documentação/relatórios técnicos/artigos, está disponibilizada a plataforma Sharelatex do IFSC-CLOUD. Utilize preferencialmente o modelo de artigo no padrão ABNT. Ver também Modelo para uso em relatórios.
Links auxiliares
- Fixed-Point Filter Design - Mathworks
- Dicas de como utilizar o Matlab - HDL Coder para gerar código HDL.
- Modelo para uso em relatórios
- Lista dos Símbolos Matemáticos
- PSD29007-Engtelecom(2015-1) - Prof. Marcos Moecke
- PSD29007-Engtelecom(2015-2) - Prof. Marcos Moecke
- PSD29007-Engtelecom(2016-1) - Prof. Marcos Moecke
Alguns artigos para leitura
Artigos bases de alguns dos filtros digitais:
- On the Use of Windows for Harmonic Analysis with the Discrete Fourier Transform - FREDRIC J. HARRIS
- Some Windows with Very Good Sidelobe Behavior - ALBERT H. NUTTALL
Relatórios simples:
- High Pass Filter Design and Analysis Using Hamming, Hanning and Nuttall Windows
- Advantages of Blackman Window over Hamming Window Method for designing FIR Filter
- High Pass Filter Design and Analysis Using Nuttall and Parzen Windows
- Performance Analysis of Low Pass FIR Filters Design Using Kaiser, Gaussian and Tukey Window Function Methods
- High Quality Low Order Nonrecursive Digital Filters Design Using Modified Kaiser Window
Referências Bibliográficas
- ↑ 1,0 1,1 1,2 DINIZ, P. S. R., DA SILVA, E. A. B., e LIMA NETTO, S. Processamento Digital de Sinais: Projeto e Análise de Sistemas. 2. ed. Porto Alegre: Bookman, 2014. 976 p. ISBN 978-8582601235
- ↑ 2,0 2,1 SHENOI, B. A. Introduction to Digital Signal Processing and Filter Design. 1.ed. New Jersey: John Wiley-Interscience, 2006. 440 p. ISBN 978-0471464822