Mudanças entre as edições de "PSD-EngTel (página)"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 110: Linha 110:
  
 
==Atividades extra==
 
==Atividades extra==
 +
===PARA ENTREGAR===
 +
 
===JÁ ENCERRADAS===
 
===JÁ ENCERRADAS===
{{collapse top | AE1 - Experimento 3.2 (Prazo de entrega 23/02/2015)}}
 
#Escreva um script com funções do Matlab para gerar as representações no domínio do tempo sinais da Figura 3.26 <ref name="DINIZ2014"/>. Use o subplot para inserir todas os sinais em uma única Figure do Matlab.
 
#Escreva um script com funções do Matlab para gerar as representações no domínio da frequência sinais da Figura 3.27 <ref name="DINIZ2014"/>. Use o subplot para inserir todas os sinais em uma única Figure do Matlab.
 
#Faça uma estimação melhor do espectro do sinal, segmentando o sinal x(n) e calculando a média dos espectros obtidos.
 
# É importante utilizar as escalas e legendas corretamente nos gráficos. 
 
# Ver as funções do matlab [http://www.mathworks.com/help/matlab/ref/legend.html legend], [http://www.mathworks.com/help/matlab/creating_plots/add-title-axis-labels-and-legend-to-graph.html title, xlabel, ylabel].
 
#Escreva um pequeno relatório técnico mostrando os resultados obtidos e documentando o código escrito. Enviar para o meu email em formato pdf.
 
{{collapse bottom}}
 
 
{{collapse top | AE2 - Projeto de Filtro Analógicos (Prazo de entrega 09/03/2015)}}
 
*Projeto os seguintes '''filtros analógicos passa baixas''' que atenda as seguintes especificações (as atenuações são relativos ao ganho em f = 0 Hz):
 
:a) Frequência de passband f_p = 16 kHz. Frequência de rejeição (stopband) f_s = 60 kHz. Ganho de 10 dB em f = 0 Hz, atenuação de 3 dB em f_p e atenuação mínima de 35 dB em f_s, do tipo Butterworth.
 
:b) Frequência de passband f_p = 16 kHz. Frequência de rejeição (stopband) f_s = 60 kHz. Ganho de 10 dB em f = 0 Hz, atenuação de 0.25 dB em f_p e atenuação mínima de 35 dB em f_s, do tipo Butterworth
 
:c) Frequência de passband  f_p = 16 kHz. Frequência de rejeição (stopband) f_s = 60 kHz. Ganho de 10 dB em f = 0 Hz, atenuação de 0.25 dB em f_p e atenuação mínima de 35 dB em f_s, do tipo Chebyshev I
 
:d) Frequência de passband  f_p = 16 kHz. Frequência de rejeição (stopband) f_s = 60 kHz. Ganho de 10 dB em f = 0 Hz, atenuação de 0.25 dB em f_p e atenuação mínima de 35 dB em f_s, do tipo Chebyshev II
 
 
:* O projeto de cada filtro deve apresentar o cálculo da ordem do filtro, dos polos do filtro, a equação de H(p), H(s), |H(jw)|^2, o ganho na frequência de rejeição (stopband) f_s.
 
:* A resposta em frequência normalizada e real devem ser feitas usando o Matlab. Apresentar o gráfico do ganho em dB e da fase em cada caso com escalas corretas.
 
:* Deve ser apresentado o diagrama dos pólos do filtro H(p) e H(s).
 
:* Para fins de comparação dos filtros, os filtros de diferentes tipos devem ser sobrepostos nesses gráficos.
 
:*Escreva um pequeno relatório técnico mostrando os resultados obtidos e documentando o código escrito. Enviar para o meu email em formato pdf com o Assunto: '''PSD29007 - Projeto de Filtro Butterworth'''.
 
{{collapse bottom}}
 
{{collapse top |  AE3 - Projeto de Filtro Digitais IIR (Prazo de entrega 23/03/2015)}}
 
<syntaxhighlight lang=matlab>
 
%% Variação do Experimento 6.1 - DINIZ
 
% Parâmetros do filtro digital passa-faixa
 
Ap = 0.5; % Atenuação máxima na banda de passagem
 
Ar = 65; % Atenuação mínima na banda de rejeição
 
Ws = 10000; Fs = Ws/(2*pi); Ts = 1/Fs; % Frequência de amostragem (Ws -> rad/s e Fs -> Hz), e período de amostragem
 
wr1 = 850; wr2 = 1150; % Frequências de rejeição (rad/s) normalizada em relação a Ws/2
 
wp1 = 980; wp2 =1020;  % Frequências de passagem (rad/s) normalizada em relação a Ws/2
 
 
% Cálculo do filtro digital passa-faixa usando transformação bilinear
 
wnr1 = wr1/(Ws/2); wnr2 = wr2/(Ws/2);  wr =[wnr1 wnr2]; 
 
wnp1 = wp1/(Ws/2); wnp2 =1020/(Ws/2); wp = [wnp1 wnp2]; 
 
[n wn] = ellipord(wp, wr, Ap, Ar); 
 
[b a] = ellip(n,Ap,Ar,wp);
 
[H, w] = freqz(b,a,10000);
 
fi = 0; ff = Ws/2;  % fi = 850*0.95; ff = 1150*1.05;
 
subplot(311); plot(w*Fs,abs(H)); grid on; xlim([fi,ff]);
 
subplot(312); plot(w*Fs,angle(H)); grid on; xlim([fi,ff]);
 
[gd,w] = grpdelay([b a], 10000);
 
subplot(313); plot(w*Fs,gd); grid on; xlim([fi,ff]);
 
figure; zplane([b,a]);
 
 
%% Análise do filtro usando um cosenso puro
 
t = 0:Ts:(1-Ts);
 
ti =0; tf= 1; % ti=0.5; tf=0.6;
 
w1 = 800;
 
x1 = cos(w1*t);
 
y1 = filter(b,a,x1);
 
figure; plot(t,x1,'k',t,y1,'b'); ylim([-1.5 1.5]), xlim([ti tf]);
 
</syntaxhighlight>
 
:1. Varie o valor da frequência do sinal '''x1''' no mínimo entre 800 rad/s e 1300 rad/s e observe o ganho, a defasagem e o atraso de grupo. (DICA use o [http://www.mathworks.com/help/matlab/matlab_prog/run-sections-of-programs.html?searchHighlight=%22Increment%20Values%20in%20Code%20Sections%22 incremento de valores em seções de código] do Matlab)
 
::* O que é possível observar observando a escala de tempo de [0:1]? Explique
 
::* O que muda se observarmos um segmento menor de tempo [0.5 a 0.6]?  Explique
 
:2. Projete um filtro para as mesmas especificações usando uma das seguintes aproximações (Butterworth, Chebyshev I, Chebyshev II).
 
::* Como ficou a ordem dos filtros? 
 
::* Como ficou a resposta de ganho, fase e o atraso de grupo?
 
::* Leia sobre o filtro Bessel e depois faça um filtro e analise o resultado. Qual foi a principal diferença? (opcional)
 
:3. Escolha o tipo de aproximação que preferir e projete um filtro passa-baixas nas frequências wp2 =1020 rad/s e wr2 = 1150 rad/s. Analise o filtro obtido.
 
:4. Escolha o tipo de aproximação que preferir e projete um filtro passa-altas nas frequências wp1 = 980 rad/s e wr1 = 850 rad/s. Analise o filtro obtido.
 
:5. Escolha o tipo de aproximação que preferir e projete um filtro rejeita-faixa wp1 = 850 rad/s; wr1 = 980 rad/s; wr2 = 1020 rad/s ; wp2 = 1150 rad/s. Analise o filtro obtido.
 
:6. Escreva um relatório técnico mostrando os resultados obtidos e documentando o código escrito. Enviar para o meu email em formato pdf com o Assunto: '''PSD29007 - Projeto de Filtro Digital IIR'''. Não é necessário fazer a revisão teórico do assunto (visto em aula).  Foquem apenas na descrição dos filtros projetados, nos resultados e sua análise.  Cada figura/gráfico deve ter uma legenda e ser mencionado no texto.
 
{{collapse bottom}}
 
 
{{collapse top |  AE4 - Projeto de Filtro Digitais FIR - parte 1 (Prazo de entrega 30/03/2015)}}
 
:1. Projeto um filtro FIR com fase linear com ordem de 7 com as características abaixo:
 
{| class="wikitable"  border="1" cellpadding="3" cellspacing="0" style="text-align:left; font-size:100%" bgcolor="#efefef"
 
! scope="col" width=30% align="left"| Aluno
 
! scope="col" width=30% align="center"| Tipo de filtro
 
! scope="col" width=40% align="center"| Especificações
 
|-
 
| DANILO BEDAQUE || Passa-altas || wp = 0,8
 
|-
 
| ELTON FERREIRA BROERING|| Passa-faixa|| wp1 = 0,3; wp2 = 0,5
 
|-
 
| ERNANI RODRIGUES DE S.THIAGO || Passa-faixa|| wp1 = 0,1; wp2 = 0,2
 
|-
 
| JEAN MICHEL DE SOUZA SANT ANA || Passa-altas || wp = 0,4
 
|-
 
| LEONAN DA SILVA SARAIVA|| Passa-baixas|| wp = 0,2
 
|-
 
| THIAGO HENRIQUE BONOTTO DA SILVA || Passa-baixas|| wp = 0,4
 
|-
 
| THIAGO WERNER || Rejeita-faixa|| wp1 = 0,2; wp2 = 0,3
 
|}
 
:2. Projete o filtro usando as janelas do tipo Retangular, Hanning, Hamming e Blackmann.
 
:* O cálculo dos coeficientes da série de Fourier e amostras da janela e os coeficientes do filtro devem ser feitas de modo explicito, indicando as equações utilizadas.
 
:3. Projete o filtro usando outras 2 janelas a sua livre escolha entre as implementadas por funções do Matlab.
 
:*Neste caso utilize a função adequada do Matlab para o cálculo das amostras da janela.
 
:4. Apresente de modo gráfico o diagrama de zeros do filtro, a resposta em frequência do filtro (ganho), atraso de grupo e a resposta ao impulso do filtro.
 
:* Os ganhos devem ser apresentados em um gráfico único para permitir a comparação.
 
:5. Realize a medida em dB da atenuação na frequências de passagem, o valor do ripple (ondulação) máximo na banda de passagem, a atenuação do primeiro lóbulo lateral e a frequência na qual o filtro atinge pela primeira vez essa mesma atenuação.
 
:6. Escreva um relatório técnico mostrando os resultados obtidos e documentando o código escrito. Enviar para o meu email em formato pdf com o Assunto: '''PSD29007 - Projeto de Filtro Digital FIR - parte 1'''. Não é necessário fazer a revisão teórico do assunto (visto em aula).  Foquem apenas na descrição dos filtros projetados, nos resultados e sua análise.  Cada figura/gráfico deve ter uma legenda e ser mencionado no texto.
 
{{collapse bottom}}
 
{{collapse top |  AE5 - Projeto de Filtro Digitais FIR x IIR (Prazo de entrega 15/05/2015)}}
 
:1. Objetivo projetar filtros que tem a a mesma especificação de magnitude usando diferentes tipos de filtro digital, sendo um do tipo IIR e outro do tipo FIR. Estabelecer uma comparação entre esses filtros e escrever um artigo mostrando as vantagens do filtro escolhido sobre o outro.
 
:2. É permitido (incentivado) o uso de ferramentas como o FDAtool para o projeto do filtro.
 
:3. Cada aluno deverá realizar o projeto de um filtro (LP ou HP) e um filtro (BP ou BS), com as especificações abaixo:
 
{| class="wikitable"  border="1" cellpadding="3" cellspacing="0" style="text-align:left; font-size:100%" bgcolor="#efefef"
 
! scope="col" width=30% align="left"| Aluno
 
! scope="col" width=35% align="center"| Especificações do filtro 1
 
! scope="col" width=35% align="center"| Especificações do filtro 2
 
|-
 
| DANILO BEDAQUE
 
| LP; fs = 100kHz; fp = 20kHz; fr = 28kHz; Ap = 0.5 dB; Ar = 60 dB; H = 0 dB
 
| BP; fs = 44kHz; fr1 = 8kHz; fp1 = 12kHz; fp2 = 15kHz; fr2 = 18kHz; Ar1 = 50; Ap = 1.5 dB; Ar2 = 70 dB; H = +10 dB
 
|-
 
| ELTON FERREIRA BROERING
 
| HP; fs = 100kHz; fp = 40kHz; fr = 34kHz; Ap = 0.3 dB; Ar = 60 dB; H = 0 dB
 
| BS; fs = 44kHz; fp1 = 8kHz; fr1 = 12kHz; fr2 = 15kHz; fp2 = 18kHz; Ap1 = 0.1; Ar = 60 dB; Ap2 = 0.1 dB; H = +3 dB
 
|-
 
| ERNANI RODRIGUES DE S.THIAGO
 
| LP; fs = 100kHz; fp = 10kHz; fr = 15kHz; Ap = 0.5 dB; Ar = 40 dB; H = 0 dB
 
| BS; fs = 100kHz; fp1 = 8kHz; fr1 = 12kHz; fr2 = 15kHz; fp2 = 18kHz; Ap1 = 0.3; Ar = 40 dB; Ap2 = 0.3 dB; H = -3 dB
 
|-
 
| JEAN MICHEL DE SOUZA SANT'ANA
 
| HP; fs = 100kHz; fp = 18kHz; fr = 10kHz; Ap = 0.3 dB; Ar = 70 dB; H = 0 dB
 
| BP; fs = 100kHz; fr1 = 5kHz; fp1 = 13kHz; fp2 = 15kHz; fr2 = 20kHz; Ar1 = 60; Ap = 1.5 dB; Ar2 = 50 dB; H = +5 dB
 
|-
 
| LEONAN DA SILVA SARAIVA
 
| LP; fs = 44kHz; fp = 10kHz; fr = 13kHz; Ap = 0.5 dB; Ar = 60 dB; H = 0 dB
 
| BP; fs = 100kHz; fr1 = 5kHz; fp1 = 30kHz; fp2 = 37kHz; fr2 = 45kHz; Ar1 = 70; Ap = 1.5 dB; Ar2 = 50 dB; H = -10 dB
 
|-
 
| THIAGO HENRIQUE BONOTTO DA SILVA
 
| HP; fs = 44kHz; fp = 18kHz; fr = 15kHz; Ap = 0.3 dB; Ar = 70 dB; H = 0 dB
 
| BS; fs = 100kHz; fp1 = 4kHz; fr1 = 7kHz; fr2 = 8kHz; fp2 = 15kHz; Ap1 = 0.3; Ar = 40 dB; Ap2 = 0.3 dB; H = +6 dB
 
|-
 
| THIAGO WERNER
 
| LP; fs = 44kHz; fp = 8kHz; fr = 10kHz; Ap = 0.5 dB; Ar = 40 dB; H = 0 dB
 
| BS; fs = 100kHz; fp1 = 23kHz; fr1 = 26kHz; fr2 = 27kHz; fp2 = 34kHz; Ap1 = 0.3; Ar = 40 dB; Ap2 = 0.3 dB; H = -6 dB
 
|}
 
::onde: ''LP = passa-baixas; HP = passa-altas; BP = passa-faixa; BS - rejeita-faixa; fa = frequência de amostragem; fp = frequência de passagem; fr = frequência de rejeição;  Ap = atenuação máxima na passagem; Ar = atenuação mínima na rejeição; H = Ganho na banda de passagem''.
 
:4. A primeira etapa do projeto deve ser feita  utilizando precisão infinita.
 
:5. A segunda etapa do projeto será com precisão finita, devendo o aluno buscar minimizar a área necessária, considerando tanto a ordem do filtro, como o número de bits necessário. Para fins de simplificação, considere que a área de hardware (AHw) necessária corresponde a:
 
:: <math> Ah = (2 x N_{multiplicadores} + N_{somadores} + N_{atrasos}) N_{bits}. </math>
 
:6. Escreva um artigo mostrando os resultados obtidos e documentando o código escrito. Enviar para o meu email em formato pdf com o Assunto: '''PSD29007 - Projeto de Filtro Digitais FIR x IIR'''. É necessário fazer a revisão teórica dos filtros.  Foquem apenas na descrição dos filtros projetados, nos resultados e sua análise.  Cada figura/gráfico deve ter uma legenda e ser mencionado no texto. É necessário ter referências bibliográficas.
 
::Resultados que devem ser avaliados:
 
::*Comparação dos filtro FIR com IIR
 
::*Estabilidade, ordem, resposta de frequência, atraso de grupo dos filtros utilizando precisão infinita
 
::*Estabilidade, ordem, resposta de frequência, atraso de grupo, área de hardware estimada, número de bits, número de somadores, multiplicadores e atrasos dos filtros utilizando precisão finita.
 
{{collapse bottom}}
 
 
{{collapse top | PROJETO FINAL - Implementação de Filtros em VHDL  (Prazo de entrega 06/07/2015)}}
 
# Cada aluno deverá implementar em VHDL realizar  um filtro (LP ou HP) e um filtro (BP ou BS), conforme projetado em AE5.  Um dos filtros deverá ser IIR e o outro FIR.
 
# Na realização do filtro utilize os coeficientes quantizados.
 
# Deverá ser feita a simulação no ModelSim-Altera usando um arquivo de testbench.
 
# Após a verificação o filtro deverá ser implementado em um kit de FPGA a ser designado pelo professor. (opções DE2-115, Mercurio, DE0-Nano).
 
# Utilizar como base o artigo gerado na AE5 para incluir os novos resultados obtidos após os testes no hardware.
 
# Enviar os arquivos do projeto com o testbench em arquivo .zip junto com o novo relatório para o meu email com o Assunto: PSD29007 - Implementação de Filtros em VHDL.
 
{{collapse bottom}}
 
  
 
===ESTUDOS SEM ENTREGA DE DOCUMENTAÇÃO===
 
===ESTUDOS SEM ENTREGA DE DOCUMENTAÇÃO===
{{collapse top | AL1 - Resposta em frequência a partir da posição dos pólos-zeros}}
 
#Estudar a Seção 5.6 pag. 485 a 488 do livro do Lathi <ref name="Lathi2007"> LATHI, Bhagwandas P. '''Sinais e Sistemas Lineares'''. 2. ed. Porto Alegre: Artmed-Bookman, 2007. 856 p. ISBN 978-8560031139 </ref>.
 
#Use as funções zplane, pz2tf, freqz para realizar o estudo.
 
{{collapse bottom}}
 
 
{{collapse top | AL2 - Resposta em frequência em Sistemas de Tempo Discreto}}
 
#Estudar a Seção 5.5 pag. 474 a 475 do livro do Lathi <ref name="Lathi2007"/>.
 
{{collapse bottom}}
 
 
{{collapse top | AL3 - Desempenho do código de uma FFT}}
 
#Estudar o Exemplo M9.2 pag. 778 a 779 do livro do Lathi <ref name="Lathi2007"/>.
 
<syntaxhighlight lang=matlab>
 
N = 10000;
 
%% tamanho do vetor de 1015 -> 5 x 7 x 29
 
N0 = 1015;
 
y1 = rand(N0,1);
 
tic; for k = 1:N; Y1 = fft(y1)/N0; end; toc
 
 
%% tamanho do vetor de 1019 -> primo
 
N_0 = 1019;
 
y2 = [y1; zeros(N_0-N0,1)];
 
tic; for k = 1:N; Y2 = fft(y2)/N_0; end; toc
 
 
%% tamanho do vetor de 1024 -> 2^10
 
N_0 = 1024;
 
y3 = [y1; zeros(N_0-N0,1)];
 
tic; for k = 1:N; Y3 = fft(y3)/1024; end; toc
 
</syntaxhighlight>
 
{{collapse bottom}}
 
 
{{collapse top |  AL4 - Atraso de grupo em filtros IIR e FIR no Matlab}}
 
*:O '''atraso de  grupo''' de um filtro é a medida da atraso médio do filtro em função da frequência do sinal de entrada. Ele é obtido pela primeira derivada da resposta de fase do filtro. Se a resposta em frequencia é <math>H(e^{j \omega}) </math> , então o atraso de grupo é:
 
::<math>\tau_g(\omega) =\frac {d \theta (\omega)} {d \omega}</math>
 
::onde <math>\tau_g(\omega) </math> é a fase de <math>H(e^{j \omega}) </math>.
 
*[http://www.mathworks.com/help/signal/ref/grpdelay.html Função para o cálculo do atraso de grupo (group delay) no Matlab]
 
*[http://www.mathworks.com/help/signal/ug/compensate-for-the-delay-introduced-by-a-filter-with-feedback.html Compensação do atraso introduzido pelo filtro IIR].
 
*[http://www.mathworks.com/help/signal/ref/filtfilt.html Filtragem digital com fase nula].
 
*[http://www.mathworks.com/help/signal/ug/compensate-for-the-delay-introduced-by-a-filter.html Compensação do atraso introduzido pelo filtro FIR].
 
*Um filtro sem distorção de fase (Não causal) pode ser obtido ao passar uma sequencia x(n) por um filtro H1, tomando a saída do filtro revertida e passando novamente pelo mesmo filtro H1.  A saída do último filtro revertida corresponde ao sinal x(n) filtro com fase zero.  O filtro obtido desta forma tem as seguintes características:
 
:*A Distorção de fase nula
 
:*A função de transferência do filtro é igual a magnitude ao quadrada da função de transferência original do filtro H1.
 
:*A ordem do filtro é o dobro da ordem do filtro H1.
 
*Exemplo de aplicação a filtragem de um sinal ECG com ruído.
 
<syntaxhighlight lang=matlab>
 
%% Carregando um sinal de ECG com ruído com duração de 4 segundos.
 
load noisyecg.mat
 
x = noisyECG_withTrend;
 
fa = 500;  %% 2000 amostras em 4 segundos => 500 amostras por segundo.
 
t = [0:length(x)-1]*1/fa;
 
plot(t,x);
 
 
%% Projetando um filtro passa-baixa tipo IIR  butter com f_passagem = 0.15 rad/s
 
d = designfilt('lowpassiir', ...
 
    'PassbandFrequency',0.15,'StopbandFrequency',0.2, ...
 
    'PassbandRipple',1,'StopbandAttenuation',60, ...
 
    'DesignMethod','butter');
 
freqz(d)
 
 
%% Filtro de x revertido x e somando com x filtrado. OFF LINE
 
y = flip(filter(d,flip(filter(d,x))));
 
y1 = filter(d,x);
 
 
figure(2);
 
subplot(2,1,1)
 
plot(t, [y y1])
 
title('Filtered Waveforms')
 
legend('Zero-phase Filtering','Conventional Filtering')
 
 
subplot(2,1,2)
 
plot(t, [x y])
 
title('Original Waveform')
 
legend('noisy ecg ','fitered ecg')
 
</syntaxhighlight>
 
 
*Verifique também o resultado da filtragem usando um filtro IIR (ellip, cheby1 ou cheby2) e filtros FIR (equiripple e de janela)
 
 
<syntaxhighlight lang=matlab>
 
%% Projetando um filtro passa-baixa tipo FIR  equiripple com f_passagem = 0.15 rad/s
 
d = designfilt('lowpassfir', ...
 
    'PassbandFrequency',0.15,'StopbandFrequency',0.2, ...
 
    'PassbandRipple',1,'StopbandAttenuation',60, ...
 
    'DesignMethod','equiripple');
 
 
y = flip(filter(d,flip(filter(d,x))));
 
</syntaxhighlight>
 
*Note que nos filtros FIR de fase linear o procedimento mais simples é adiantar o sinal de acordo com o atraso de grupo (metade da ordem do filtro), devendo-se tomar cuidado para arredondar a meia amostra nos filtros de ordem impar.
 
 
<syntaxhighlight lang=matlab>
 
y1 = filter(d,x);
 
gd = grpdelay(d);
 
gd1 = ceil(gd(1));
 
y = [y1(gd1:end); zeros(gd1-1, 1)];
 
</syntaxhighlight>
 
 
O cálculo do atraso de grupo pode ser realizado utilizando a função '''grpdelay''' ou diretamente pela definição da derivada do ângulo em relação a frequência:
 
 
::<math>\tau_g(\omega) =\frac {d \theta (\omega)} {d \omega} = \lim_{\Delta_{\omega} \to 0} \frac{\theta(\omega+\Delta_{\omega}) - \theta(\omega)}{\Delta_{\omega}} </math>
 
 
<syntaxhighlight lang=matlab>
 
%% Calculo do atraso de grupo
 
% Método 1 - uso da função grpdelay
 
[z,p,k] = butter(30,0.2);
 
sos = zp2sos(z,p,k);
 
[gd,w]=grpdelay(sos,128);
 
figure(1)
 
plot(w/pi,gd),grid on;
 
% Método 2 - derivada obtida por aproximação discreta
 
% calculo a cada par de pontos (w2-w1)/delta_w
 
[h,w] = freqz(sos);
 
a = unwrap(angle(h));
 
hold on; plot(w/pi,a,'g');
 
delta_w = pi/length(a);
 
plot(w(1:end-1)/pi+delta_w/2,-(a(2:end)-a(1:end-1))/delta_w,'r');
 
</syntaxhighlight>
 
 
* Ler [http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=492552 Gustafsson, F. "Determining the initial states in forward-backward filtering." IEEE® Transactions on Signal Processing. Vol. 44, April 1996, pp. 988–992], artigo que propos um técnica de minimizaçao dos transientes de inicio e fim do sistema linear.
 
{{collapse bottom}}
 
 
===PARA ENTREGAR===
 
<!--
 
{{collapse top | expand =1 |AE6 - Separador de Voz-Instrumental (Prazo de entrega 19/06/2015)}}
 
# Elaborar no Simulink um sistema que permita separar um sinal com a Voz e um sinal do Instrumental de uma música stereo com Voz centrada (presente igualmente no canal direito e esquerdo).
 
# Use como entrada um arquivo Musica.wav (.mp3 ou .ogg) e grave o resultado em dois arquivos Voz.wav e Instrumental.wav. O arquivo de entrada deve ser um trecho de 2 segundos de uma música de sua preferência.
 
# Adicione ao Simulink analisadores de espectro que mostrem os sinais de entrada e saída
 
# Ouça um trecho dos arquivos Musica.wav, Voz.wav e Instrumental.wav e faça o julgamento da qualidade da separação obtida.
 
# Enviar o arquivo smx e os arquivos .wav  para o meu email com o Assunto: PSD29007 - Projeto Separador de Voz-Instrumental.
 
# Leia http://www.howcast.com/videos/418838-how-to-remove-lyrics-from-your-favorite-songs/ assista o vídeo:
 
# Ver https://www.youtube.com/watch?v=IhgAfXeSX28&feature=youtu.be&t=63
 
# Ver https://youtu.be/PvHq9jQ_xxI?t=20
 
# Ver https://youtu.be/_p5QC-4jGWA?list=RDPvHq9jQ_xxI
 
{{collapse bottom}}
 
-->
 
  
 
==Recursos necessários==
 
==Recursos necessários==

Edição das 11h35min de 30 de julho de 2015

MURAL DE AVISOS E OPORTUNIDADES DA ÁREA DE TELECOMUNICAÇÕES


Registro on-line das aulas

Unidade 1

Aula 1 (29 Jul)
  • Revisão de Sinais e Sistemas no tempo discreto em Matlab:
  • Resposta de sistemas LTI (Experimento 1.1)
%  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);
Variação do Experimento 1.2
%% Experimento 1.2
fs = 10; Ts = 1/fs; fase = 0;
time = 0:Ts:(1-Ts);
f1 = 3; f2 = 7;
s_1 = cos(2*pi*f1*time+fase);
s_2 = cos(2*pi*f2*time+fase);
fsa = 1000; 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')

Varie o valor da frequência de amostragem de 6 até 20 Hz e observe:

  1. Em qual frequência deixa de ocorrer recobrimento do sinal 2.
  2. O que ocorre quando a frequência é 6, 7, 14 Hz? Explique
  3. 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.


Suspensão do calendário acadêmico pela direção do Campus;
Aula 2 (No retorno do calendário acadêmico)
  • Revisão de Sinais e Sistemas no tempo discreto em Matlab:
Variação do Experimento 2.2
%% 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')
  1. Verifique a diferença entre os tipos de plots comentados no código.
  2. substitua o denominador de H(z) por dois polos em [-0.8 -0.8].
  3. verifique o que ocorre se forem utilizados polos complexos conjugados [0.3-0.4i 0.3+0.4i 0.1]
  4. verifique o que ocorre se forem utilizados polos complexos não conjugados [0.3-0.4i 0.3+0.8i]
  5. verifique o que ocorre se os polos estiverem fora do circulo unitário [1.2 -0.2]. Interprete este resultado

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

PARA ENTREGAR

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.
  • Adicionalmente de qualquer maquina do IFSC, pode-se fazer usar o IFSC-CLOUD para ter acesso a estes softwares.

Links auxiliares

Alguns artigos para leitura

Artigos bases de alguns dos filtros digitais:

Relatórios simples:

Referências Bibliográficas

  1. 1,0 1,1 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


Curso de Engenharia de Telecomunicações