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
 
(241 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 5: Linha 5:
 
*[[PSD-EngTel (Plano de Ensino) | Plano de Ensino]]
 
*[[PSD-EngTel (Plano de Ensino) | Plano de Ensino]]
  
==Registro on-line das aulas==
+
== Avisos importantes==
===Unidade 1===
+
Durante o 2º semestre de 2020, devido a Pandemia do Coronavirus Sars-CoV-2, as aulas da disciplina ocorrerão de forma remota. Seguem algumas informações importantes:
;Aula 1 (6 fev):
 
*[[PSD-EngTel (Plano de Ensino) | Apresentação da disciplina]]
 
  
*Revisão de Sinais e Sistemas no tempo discreto em Matlab:
+
*Todas os nossos encontros síncronos serão feitos usando a plataforma [https://meet.google.com/wkg-cmzv-bgh '''Google Meet'''].   Para ingressar nas aulas utilizem o email institucional (usuario@aluno.ifsc.edu.br).
:* Resposta de sistemas LTI (Experimento 1.1)
 
<syntaxhighlight lang=matlab>
 
%  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
+
*Após cada encontro, vocês terão acesso automático as gravações das aulas na '''Pasta compartilhada no Gdrive'''.
alpha = 1.15; N = 256;
 
x = [1 zeros(1,N)];
 
y = filter(1,[1 -1/alpha],x);
 
stem(y);
 
</syntaxhighlight>
 
 
:* Amostragem de Sinais (Experimento 1.2)
 
:* Uso do Matlab:  [http://www.mathworks.com/help/matlab/learn_matlab/help.html Help], F9 executa o código destacado no Help. [http://www.mathworks.com/help/matlab/learn_matlab/scripts.html Programação com scripts .m], [http://www.mathworks.com/help/matlab/matlab_prog/run-sections-of-programs.html?searchHighlight=script%20sections Execução de seções e variação de valores nos scripts],
 
:* Ver também o [http://www.mathworks.com/help/matlab/ref/publish.html Publish] para a geração automática de relatórios em html, doc, pdf, latex ou ppt.
 
:* Ver pag. 65 a 71 de <ref name="DINIZ2014"> 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 </ref>
 
:*Ver [http://www.mathworks.com/help/releases/R2014a/pdf_doc/matlab/index.html PDF Documentation for MATLAB]. Principalmente [http://www.mathworks.com/help/releases/R2014a/pdf_doc/matlab/getstart.pdf MATLAB Primer].
 
{{collapse top | Variação do Experimento 1.2}}
 
<syntaxhighlight lang=matlab>
 
%% 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')
 
</syntaxhighlight>
 
Varie o valor da frequência de amostragem de 6 até 20 Hz e observe:
 
# Em qual frequência deixa de ocorrer recobrimento do sinal 2.
 
# O que ocorre quando a frequência é 6, 7, 14 Hz? Explique
 
# 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}}
 
  
;Aula 2 (10 fev):
+
*A documentação das aulas será disponibilizada na página da [[PSD29007-Engtelecom(2020-2) - Prof. Marcos Moecke | '''Wiki da disciplina'''.]]
*Revisão de Sinais e Sistemas no tempo discreto em Matlab:
 
:* Filtragem de Sinais (Experimentos 1.3, 2.1 e 2.2)
 
:* Uso das funções [http://www.mathworks.com/help/matlab/ref/residue.html residue], [http://www.mathworks.com/help/signal/ref/residuez.html residuez], [http://www.mathworks.com/help/matlab/ref/roots.html roots], [http://www.mathworks.com/help/matlab/ref/poly.html poly], [http://www.mathworks.com/help/signal/ref/freqz.html freqz] (Experimentos 2.1 e 2.2)
 
:* [http://www.mathworks.com/help/matlab/learn_matlab/plots.html Uso de gráficos no Matlab].
 
:* Use das funções [http://www.mathworks.com/help/matlab/ref/subplot.html subplot], [http://www.mathworks.com/help/matlab/ref/plot.html plot], [http://www.mathworks.com/help/matlab/ref/stem.html stem]
 
:*Ver pag. 138 a 141 de <ref name="DINIZ2014"/>
 
{{collapse top | Variação do Experimento 2.2}}
 
<syntaxhighlight lang=matlab>
 
  
%% Experimento 2.2
+
*Para a entrega de atividades e avaliações será utilizada a plataforma Moodle. É necessário que vocês se autoinscrevam no [https://moodle.ifsc.edu.br/course/index.php?categoryid=2009 '''Moodle da disciplina'''] com a chave (engtelecom2020-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)
+
*Para a comunicação entre professor-aluno, além dos avisos no SIGAA, utilizaremos a plataforma Slack.  Inscrevam-se no [https://psd29007.slack.com/ '''Slack da disciplina'''].  O aluno pode usar qualquer email para acessar ao Slack, mas recomenda-se o uso do email institucional.
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')
 
</syntaxhighlight>
 
#Verifique a diferença entre os tipos de plots comentados no código.
 
#substitua o denominador de H(z) por dois polos em [-0.8 -0.8].
 
#verifique o que ocorre se forem utilizados polos complexos conjugados [0.3-0.4i  0.3+0.4i 0.1]
 
#verifique o que ocorre se forem utilizados polos complexos não conjugados [0.3-0.4i  0.3+0.8i]
 
#verifique o que ocorre se os polos estiverem fora do circulo unitário  [1.2 -0.2]. Interprete este resultado 
 
{{collapse bottom}}
 
  
;Aula 3 (13 fev):
+
*Para participar das aulas é recomendado que o aluno tenha disponível: 1 computador ou dispositivo móvel (smartphone ou tablet) para assistir os encontros presenciais ou gravações. É necessário um computador para utilizar os softwares e realizar atividades práticas de laboratório. O aluno deve ter acesso a '''Nuvem do IFSC''' ou instalar a '''VM''' com softwares '''Matlab/Simulink/HDL Coder'''. Acesso a Internet é fundamental, e recomenda-se que o aluno tenha um lugar silencioso para participar das aulas. O acesso ao '''Google Meet''', '''Drive''', '''Slack''', '''Moodle''' e '''Wiki''' podem ser feitos via navegador, mas a instalação das respectivas aplicações é recomendada. Recomenda-se ainda que cada aluno uso um fone de ouvido com microfone, pois isso melhora muito a qualidade do som e a interação nas vídeo conferências. Ao ingressar em um encontro síncrono mantenha sempre que possível a câmera aberta e também o microfone.  Se houver algum problema de ruído você será alertado.
*Revisão de Sinais e Sistemas no tempo discreto em Matlab:
 
:* Filtros Digitais (Experimento 2.3)
 
:* Filtragem de Sinais (Experimento 3.1)
 
:* Análise de Sinais (Experimento 3.2)
 
:* Uso das funções [http://www.mathworks.com/help/signal/ref/zp2tf.html zp2tf], [http://www.mathworks.com/help/signal/ref/tf2zp.html tf2zp], [http://www.mathworks.com/help/matlab/ref/fft.html fft], [http://www.mathworks.com/help/matlab/ref/ifft.html ifft], [http://www.mathworks.com/help/signal/ref/fftfilt.html fftfilt], [http://www.mathworks.com/help/matlab/ref/fftshift.html fftshift]
 
:*Ver pag. 141 a 145 e 230 a 235 de <ref name="DINIZ2014"/>
 
  
===Unidade 2===
+
* Nesta página wiki, você tem orientações para uso de ferramentas e também links que auxiliam no estudo da disciplina. Visite os links sempre que solicitado e lei essa página para lembrar futuramente onde estão as informações que necessita.
;Aula 4 (20 fev):
 
*Filtros Digitais:  Filtros IIR:
 
:* Aproximação de magnitude de filtros analógicos: do tipo Butterworth.
 
:*Ver pag. 186 a 193 de <ref name="SHENOI2006"> SHENOI, B. A. '''Introduction to Digital Signal Processing and Filter Design'''. 1.ed. New Jersey: John Wiley-Interscience, 2006. 440 p. ISBN 978-0471464822 </ref>
 
  
;Aula 5 (24 fev):
+
==Instalação da VM com Matlab/Simulink/HDL Coder em seu computador==
*Filtros Digitais:  Filtros IIR:
 
:* Projeto de filtros analógicos passa-baixas: do tipo Butterworth.
 
:*Ver pag. 194 a 204 de <ref name="SHENOI2006"/>
 
  
;Aula 6 (27 fev):
+
Para importar a VM para o seu computador e configurar ela para acessar a licença do IFSC veja a página [[Teste de VM para uso pelos alunos no ensino remoto#VM Matlab | Instalação da VM Matlab]]
*Filtros Digitais:  Filtros IIR:
 
:* Projeto de filtros analógicos passa-baixas: do tipo Chebyshev I.
 
:*Ver pag. 204 a 208 de <ref name="SHENOI2006"/>
 
  
;Aula 7 (3 mar):
+
==Instalação da VM com Quartus e Modelsim em seu computador==
*Filtros Digitais:  Filtros IIR:
 
:* Projeto de filtros analógicos passa-baixas: do tipo Chebyshev II.
 
:* Uso das funções [http://www.mathworks.com/help/matlab/ref/semilogx.html semilogx], [http://www.mathworks.com/help/matlab/ref/semilogy.html semilogy],[http://www.mathworks.com/help/matlab/ref/logspace.html logspace], [http://www.mathworks.com/help/matlab/ref/linspace.html linspace].
 
:*Ver em [http://www.mathworks.com/help/signal/ug/iir-filter-design.html IIR Filter Design],
 
::*Funçãos para projeto do filtro final (analógico com 's'): besself, '''butter''', '''cheby1''', '''cheby2''', '''ellip'''
 
::*Funções de estimação da ordem do filtro: '''buttord''', '''cheb1ord''', '''cheb2ord''', '''ellipord'''
 
::*Funções para projeto do filtro protótipo analógico passa-baixas: besselap, buttap, cheb1ap, cheb2ap, ellipap
 
::*Funções de transformação de frequencia: lp2bp, lp2bs, lp2hp, lp2lp
 
:* Transformação de frequência de filtros analógicos
 
::(passa-baixas -> passa-baixas, passa-baixas -> passa-altas, passa-baixas -> passa-faixa, passa-baixas -> rejeita-faixa)
 
:*Ver pag. 208 a 218 de <ref name="SHENOI2006"/>
 
  
;Aula 8 (6 mar):
+
Na fase do projeto final pode ser necessário importar também essa VM para o seu computador. Veja como importar e configurar ela para acessar a licença do IFSC veja a página [[Teste de VM para uso pelos alunos no ensino remoto#VM Quartus e Modelsim | Instalação da VM com Quartus e Modelsim]]
*Filtros Digitais: Filtros IIR: transformações do tempo contínuo no tempo discreto
 
:*Transformação invariante ao impulso (apenas para filtros com forte atenuação em frequência altas, ex: passa-baixas e passa-faixa)
 
:*Transformação bilinear (para todos tipos de filtro)
 
:*Ver em [http://www.mathworks.com/help/signal/ug/iir-filter-design.html IIR Filter Design],
 
::*Filter discretization functions: bilinear, impinvar
 
:*Ver pag. 219 a 229 de <ref name="SHENOI2006"/>
 
:*Ver pag. 403 a 415 e 434 a 435 de <ref name="DINIZ2014"/>
 
  
===Unidade 3===
+
==Recursos de Laboratório==
;Aula 9 (10/mar)
+
Nos laboratórios do IFSC, os softwares '''Matlab/Simulink/HDL Coder''' estão disponíveis diretamente na plataforma LINUX. Utilize preferencialmente a versão 2015.
*Filtros Digitais: Filtros FIR
 
:*Filtros de fase linear: simétricos e antisimétricos
 
:*Ver pag. 249 a 256de <ref name="SHENOI2006"/>
 
  
;Aula 10 (13/mar)
+
==Acesso a Nuvem do IFSC==
*Filtros Digitais: Filtros FIR
+
Para uso fora do IFSC dos recursos computacionais com licença educacional, o IFSC disponibiliza para seus alunos o IFSC-CLOUD (nuvem.sj.ifsc.edu.br).  A forma mais eficiente de acesso a nuvem de fora do IFSC é através do Cliente X2GO, mas dentro da rede do IFSC o acesso pelo ssh também tem boa usabilidade. 
:*Filtros de fase linear: propriedades
 
:*Ver pag. 256 a 260 de <ref name="SHENOI2006"/>
 
  
;Aula 11 (17/mar)
+
Para para utilizar o Quartus/Modelsim/QSIM através da Nuvem do IFSC, siga o procedimento de '''[[Acesso_ao_IFSC-CLOUD_(NUVEM)#Cliente_X2GO_.28recomendado.29 | instalação do X2Go]]''' e '''[[Acesso_ao_IFSC-CLOUD_(NUVEM)#Procedimento_para_uso_da_nuvem.sj.ifsc.edu.br | configuração do X2Go]]'''. '''Nota:''' O desempenho do Modelsim é ruim quando acesso da rede externa ao IFSC, e por isso deve ser evitado, dando-se preferencia ao uso da VM.
*Filtros Digitais: Filtros FIR
 
*Coeficientes da série de Fourier de filtros ideias: LP, HP, BP, BS
 
:*Passa-baixas (''Low-pass'')
 
::<math>c_\text{LP}(n) = \left \{ \begin{matrix} \frac{\omega_c}{\pi}; & \qquad n = 0 \\ \frac {\sin (\omega_c n)}{\pi n}; & \qquad \left | n \right | > 0 \end{matrix}\right. </math>
 
:*Passa-altas (''High-pass'')
 
::<math>c_\text{HP}(n) = \left \{ \begin{matrix} 1-\frac{\omega_c}{\pi}; \qquad n = 0 \\ -\frac {\sin (\omega_c n)}{\pi n}; \qquad \left | n \right | > 0 \end{matrix}\right. </math>
 
:*Passa-faixa (''Band-pass'')
 
::<math>c_\text{BP}(n) = \left \{ \begin{matrix} \frac{\omega_{c2}-\omega_{c1}}{\pi}; \qquad n = 0 \\ \frac {\sin (\omega_{c2} n)- \sin (\omega_{c1} n)}{\pi n}; \qquad \left | n \right | > 0 \end{matrix}\right. </math>
 
:*Rejeita-banda (''Band-stop'')
 
::<math>c_\text{BS}(n) = \left \{ \begin{matrix} 1-\frac{\omega_{c2}-\omega_{c1}}{\pi}; \qquad n = 0 \\ -\frac {\sin (\omega_{c2} n)- \sin (\omega_{c1} n)}{\pi n}; \qquad \left | n \right | > 0 \end{matrix}\right. </math>
 
*Janela retangular, fenômeno de Gibbs
 
:*Estudar no Matlab as funções [http://www.mathworks.com/help/signal/ref/wintool.html wintool], [http://www.mathworks.com/help/signal/ref/wvtool.html vtool], [http://www.mathworks.com/help/signal/ref/window.html window]
 
:*Ver pag. 261 a 265de <ref name="SHENOI2006"/>
 
  
;Aula 12 (18/mar)
+
==Modelos para relatório==
*Filtros Digitais: Filtros FIR
+
Para a geração de documentação/relatórios técnicos/artigos, use como base o modelo ABNTex2 para o padrão do IFSC para monografia que segue as normas da ABNT e do IFSC.
*Uso de funções de janelamento temporal no projeto de filtros digitais.  
+
Recomendo que os alunos da Engenharia de Telecomunicações utilizem esse modelo e o [https://www.overleaf.com Overleafv2], pois além de possibilitar o compartilhamento do documento entre os alunos, reduz o tempo perdido na formação do documento, permitindo que o aluno já aprenda alguma formatação de Latex que será útil na elaboração do TCC.  
*Tipos de janelas temporais usadas no projeto de filtros digitais.
+
*[https://www.overleaf.com/read/dbjkqgsghfbk Modelo para relatório em LaTex]
:*Retangular
 
::<math>w(n)=1; \qquad -M \le n \le M </math>
 
  
:*Bartlett
+
==Links auxiliares==
::<math>w(n)= 1 - \frac{\left | n \right |}{M+1}; \qquad -M \le n \le M  </math>
+
* [http://www.mathworks.com/help/matlab/examples/live-editor-introduction.html Live editor do Matlab] nesta interface é possivel executar comandos do Matlab sem necessitar da licença.  Isso ajuda a testar algumas funções quando o Matlab não está imediatamente disponível.
 +
* [https://www.tutorialspoint.com/execute_matlab_online.php Matlab online] sem interface gráfica.
 +
* [https://octave-online.net/ Octave online] com interface gráfica.
 +
* [http://www.mathworks.com/help/matlab/index.html Help on-line do Matlab]
 +
* [[Uso do calculo simbólico na Matlab]]
 +
* [http://www.mathworks.com/help/symbolic/performing-symbolic-computations.html Perform Symbolic Computations] - Matlab
 +
* [https://www.tutorialspoint.com/matlab MATLAB Tutorial], [https://www.tutorialspoint.com/matlab/matlab_quick_guide.htm MATLAB - Quick Guide]
 +
* [http://www.inf.ufsc.br/~bosco.sobral/ensino/ine5201/APOSTILA_MATLAB_DONIZETTI_15NOV2002.pdf ELEMENTOS BÁSICOS DE PROGRAMAÇÃO EM MATLAB] - UFSC, Donizetti.
 +
* [http://www.mathworks.com/help/releases/R2015b/pdf_doc/matlab/index.html PDF Documentation for MATLAB]
 +
:* [http://www.mathworks.com/help/releases/R2015b/pdf_doc/matlab/getstart.pdf Primer]
 +
:* [http://www.mathworks.com/help/releases/R2015b/pdf_doc/matlab/matlab_env.pdf Desktop Tools and Development Environment]
 +
:* [http://www.mathworks.com/help/releases/R2015b/pdf_doc/matlab/math.pdf Mathematics]
 +
:* [http://www.mathworks.com/help/releases/R2015b/pdf_doc/matlab/graphg.pdf Graphics]
 +
:*[http://www.macnicadhw.com.br/products/mercurion-4-devkit-board;jsessionid=0093F9C13FBA223AAFE42470153B57C0 Mercurio IV DevKit] Macnica
  
:*Hanning
+
* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/dsp/index.html Manuais do Matlab para o Toolbox de DSP].
::<math>w(n) = 0.5 + 0.5 \cos \left( \frac{2\pi n}{2M+1} \right),  -M \le n \le M</math>
+
:* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/dsp/dsp_gs.pdf DSP System Toolbox Getting Started Guide]
 +
:* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/dsp/dsp_ug.pdf DSP System Toolbox User's Guide]
 +
:* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/dsp/dsp_ref.pdf DSP System Toolbox Reference]
  
:*Hamming
+
*  [http://www.mathworks.com/help/releases/R2014a/pdf_doc/symbolic/index.html Manuais do Matlab para o Toolbox de Cálculo Símbolico].
::<math>w(n) = 0.54 + 0.46 \cos\left(\frac{2\pi n}{2M+1}\right); \qquad -M \le n \le M</math>
+
:* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/symbolic/symbolic_tb.pdf Symbolic Math Toolbox User's Guide]
 +
:* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/symbolic/mupad_ug.pdf MuPAD User's Guide]
 +
:* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/symbolic/mupad_ref.pdf MuPAD Reference]
  
:*Blackman
+
* [http://www.mathworks.com/help/dsp/ug/fixed-point-filter-design-1.html Fixed-Point Filter Design] - Mathworks
::<math>w(n) = 0.42 + 0.5 \cos\left(\frac{2\pi n}{2M+1}\right) + 0.08\cos\left(\frac{4\pi n}{2M+1}\right); \qquad -M \le n \le M</math>
+
* Dicas de como utilizar o Matlab - HDL Coder para gerar código HDL.
* em todas as janelas <math>w\left ( n \right ) = 0 </math> quando <math> \left | n \right | \ge M</math>
+
:* [http://blogs.mathworks.com/loren/2013/04/11/matlab-to-fpga-using-hdl-codertm/ MATLAB to FPGA using HDL Coder]
<!--::onde <math>M </math>  é <math>N/2</math> para <math>N</math> par e <math>(N+1)/2</math> para <math>N</math> impar-->
+
:* [http://www.mathworks.com/products/hdl-coder/code-examples.html]
*Projeto de filtro FIR utilizando janelas temporais
+
:* [http://www.mathworks.com/help/hdlcoder/examples/generate-hdl-code-for-programmable-fir-filter.html?prodcode=HD&language=en]
*Uso de janelas fixas no Matlab : [http://www.mathworks.com/help/signal/ref/rectwin.html rect], [http://www.mathworks.com/help/signal/ref/triang.html triang], [http://www.mathworks.com/help/signal/ref/bartlett.html bartlett], [http://www.mathworks.com/help/signal/ref/hann.html, hann], [http://www.mathworks.com/help/signal/ref/hamming.html, hamming], [http://www.mathworks.com/help/signal/ref/blackman.html blackman], [http://www.mathworks.com/help/signal/ref/blackmanharris.html blackmanharris], [http://www.mathworks.com/help/signal/ref/nuttallwin.html nuttall].
 
<syntaxhighlight lang=matlab>
 
L = 64;
 
wvtool(rectwin(L), triang(L), bartlett(L), hann(L), hamming(L), blackman(L), blackmanharris(L), nuttallwin(L));
 
</syntaxhighlight>
 
*Uso de janelas ajustáveis no Matlab: [http://www.mathworks.com/help/signal/ref/kaiser.html kaiser], [http://www.mathworks.com/help/signal/ref/chebwin.html chebyshev], [http://www.mathworks.com/help/signal/ref/gausswin.html gauss], [http://www.mathworks.com/help/signal/ref/tukeywin.html tukey], [http://www.mathworks.com/help/signal/ref/taylorwin.html taylor].
 
<syntaxhighlight lang=matlab>
 
L = 64;
 
r = 60;    % Chebyshev e Tukey
 
alpha = 3; % Gauss
 
betha = 8; % Kaiser
 
nbar = 10; % Taylor
 
wvtool(kaiser(L,betha), chebwin(L,r), gausswin(L,alpha),tukeywin(L,r), taylorwin(L,nbar,-r));
 
</syntaxhighlight>
 
:*Ver pag. 266 a 273 de <ref name="SHENOI2006"/>
 
 
 
;Aula 13 (24/mar)
 
*Filtros Digitais: Filtros FIR
 
:*Projeto de filtro com splines.
 
:*Passa-baixas (''Low-pass'')
 
::<math>c_\text{LP}(n) = \left \{ \begin{matrix} \frac{\omega_c}{\pi}; & \qquad n = 0 \\ \frac {\sin (\omega_c n)}{\pi n}; & \qquad \left | n \right | > 0 \end{matrix}\right. </math>
 
 
 
;Aula 14 (25/mar)
 
*Filtros Digitais: Filtros FIR
 
:*Filtro Equiripple com fase linear (Parks and McClellan)
 
:: Uso das funções do Matlab para projeto de filtro equiripple [http://www.mathworks.com/help/signal/ref/firpmord.html firpmord] e [http://www.mathworks.com/help/signal/ref/firpm.html firpm].
 
:: Projetar os seguintes filtros (frequencias em rad/s e rejeição em dB)
 
::*Passa-faixa: wr1 = 0.2, wp1 = 0.4, wp2 = 0.6, wr2 = 0.75, rr = 40, rp = 0.2.
 
::*Passa-faixa: wr1 = 0.2, wp1 = 0.4, wp2 = 0.6, wr2 = 0.7, rr = 40, rp = 0.2.
 
::*Passa-baixas: wp = 0.4, wr = 0.7, rr = 40, rp = 0.2.
 
::*Passa-altas: wp = 0.7, wr = 0.4, rr = 40, rp = 0.2.
 
:: Estudar [http://www.mathworks.com/help/signal/examples/practical-introduction-to-digital-filter-design.html?refresh=true Practical Introduction to Digital Filter Design], [http://www.mathworks.com/help/signal/ug/opening-fdatool.html Using FDATool]
 
 
 
;Aula 15 (30/mar)
 
*Filtros Digitais: Filtros FIR
 
:* Aula Prática: Uso do Fdatool para projeto de filtro IIR, FIR equiripple e FIR com janela.
 
 
 
===Unidade 4===
 
;Aula 16 (1/04)
 
*Realização de Filtros
 
:* Realização de filtros FIR: Forma Direta I, Transposta, Cascata, Polifase, filtros de fase linear simétrico e antissimétrico.
 
:* Estudar [http://www.mathworks.com/help/simulink/slref/discretefirfilter.html estrutura de filtros disrcetos FIR no Matlab].
 
:*Ver pag. 303 a 312 de <ref name="SHENOI2006"/>.
 
 
 
;Aula 17 (7/04)
 
*Realização de Filtros IIR
 
:* Bloco de IIR de 2ª ordem.
 
:<math> H(z) = \frac{Y(z)}{X(z)},    H(z) = \frac{b_0 z^2 + b_1 z^1 + b_2}{z^2 + a_1 z^1 + a_2},    H(z) = \frac{b_0 + b_1 z^{-1} + b_2 z^{-2}}{1 + a_1 z^{-1} + a_2 z^{-2}} </math>
 
: Separando H(z) em dois blocos  <math>\ H(z) = H_1(z) H_2(z) </math>, e obtendo o sinal intermediário W(z)
 
:<math> H_1(z) = \frac{W(z)}{X(z)} = b_0 + b_1 z^{-1} + b_2 z^{-2} </math>
 
:<math> H_2(z) = \frac{Y(z)}{W(z)} = \frac{1}{1 + a_1 z^{-1} + a_2 z^{-2}} </math>
 
:Podemos obter a realização de <math>\ H_1(z) </math>  na forma direta.
 
:<math>\ W(z) = (b_0 + b_1 z^{-1} + b_2 z^{-2})X(z) </math>
 
:Para obter a realização de <math>\ H_2(z) </math> , é necessário reescrever a saída <math>\ Y(z) </math> em função de <math>\ W(z) </math> e das saídas anteriores <math>\ Y(z) z^{-1} </math> e <math>\ Y(z) z^{-2} </math>:
 
:<math>\ Y(z) = \frac{W(z)}{1 + a_1 z^{-1} + a_2 z^{-2}} </math>
 
:<math>\ Y(z)({1 + a_1 z^{-1} + a_2 z^{-2}}) = W(z) </math>
 
:<math>\ Y(z) = W(z) - a_1 Y(z) z^{-1} - a_2 Y(z) z^{-2} </math>
 
: Com o ordenamento dos blocos <math>\ H_1(z) </math> e <math>\ H_2(z) </math> em ordem direta teremos a Forma Direta I:
 
::[[Arquivo:IIR_FDI.svg|400px]]
 
: Com o ordenamento dos blocos <math>\ H_1(z) </math> e <math>\ H_2(z) </math> em ordem reversa teremos a Forma Direta II (Canônica):
 
::[[Arquivo:IIR_FDII.svg|400px]]
 
 
 
:* Realização de filtros IIR: Forma Direta I e II, Transposta, Cascata, Paralela
 
:* Ver funções do Matlab: [http://www.mathworks.com/help/matlab/ref/roots.html roots], [http://www.mathworks.com/help/matlab/ref/poly.html poly], [http://www.mathworks.com/help/signal/ref/residuez.html residuez], [http://www.mathworks.com/help/signal/ref/tf2zp.html tf2zp],  [http://www.mathworks.com/help/signal/ref/zp2tf.html zp2tf], [http://www.mathworks.com/help/signal/ref/zp2sos.html zp2sos], [http://www.mathworks.com/help/signal/ref/tf2sos.html tf2sos], [http://www.mathworks.com/help/signal/ref/tf2latc.html tf2latc].
 
:* Implementar o exercício 6.3: Forma direta I, Forma direta II, Cascata.
 
:* Implementar o exercício 6.13: Forma direta I, Cascata e Paralela.
 
:*Ver pag. 313 a de 353 <ref name="SHENOI2006"/>.
 
:*Ver pag. 469 a 474 do Lathi <ref name="Lathi2007"/>
 
 
 
;Aula 18 (08/04)
 
*Realização de Filtros
 
 
 
;Aula 19 (14/04)
 
*Realização de Filtros
 
 
 
;Aula 20 (15/04)
 
*Realização de Filtros
 
 
 
;Aula 21 (22/04)
 
*Projeto e realização de Filtros IIR x FIR
 
:*Ver AE5 (Prazo de entrega 11/05/2015)
 
<!--
 
:*Ler [http://www.mathworks.com/help/dsp/ug/digital-filter-design-block.html Digital Filter Design Block]
 
:*Ler [http://www.mathworks.com/help/dsp/ref/filterrealizationwizard.html Filter Realization Wizard]
 
:*Ler [http://www.mathworks.com/help/signal/ug/filtering-data-with-signal-processing-toolbox.html Filtering Data With Signal Processing Toolbox Software]
 
:*Ler [http://www.mathworks.com/help/dsp/ug/use-fdatool-with-dsp-system-toolbox-software.html Use FDATool with DSP System Toolbox Software]
 
:*Ler [http://www.mathworks.com/help/dsp/ug/sample-and-frame-based-concepts.html Sample- and Frame-Based Concepts]
 
:*Ler [http://en.wikipedia.org/wiki/Double-precision_floating-point_format ponto flutuante de dubla precisão]
 
-->
 
 
 
;Aula 22 (28 abr):
 
*Projeto de Filtros IIR x FIR
 
* Ver Atividade AE5.
 
 
 
;Aula 23 (29 abr):
 
*Atraso de grupo em filtros IIR e FIR no Matlab.
 
*Filtro com fase nula
 
:* Ver atividade livre AL4.
 
 
 
;Aula 24 (5 mai):
 
*Projeto de filtros Passa-Tudo para equalizar a fase (atraso de grupo) de filtros IIR.
 
:* Projetar filtros Passa-tudo que equalizam a fase na faixa de passagem do filtro
 
:* Ver funções [http://www.mathworks.com/help/signal/ref/isallpass.html isallpass], [http://www.mathworks.com/help/dsp/ref/iirgrpdelay.html iirgrpdelay], [http://www.mathworks.com/help/matlab/ref/conv.html conv].
 
:* Estudar os quatro exemplos de [http://jp.mathworks.com/help/releases/R13sp2/pdf_doc/filterdesign/filterdesign.pdf] pag.2-56 a 2-63.
 
:* Obter o filtro cascata através da multiplicação dos polinômios do numerador e denominador.
 
:* Ler: Lang, M.; Laakso, T.I., [http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=275662 "Simple and robust method for the design of allpass filters using least-squares phase error criterion,"] Circuits and Systems II: Analog and Digital Signal Processing, IEEE Transactions on , vol.41, no.1, pp.40,48, Jan 1994
 
 
 
;Aula 25(6 mai):
 
*Filtros de fase mínima, fase máxima e mistos.
 
:*Ver [http://en.wikipedia.org/wiki/Minimum_phase fase mínima],
 
 
 
;Aula 26(12 mai):
 
:* Implementação de um filtro equalizador do atraso de grupo para o projeto AE-5
 
 
 
===Unidade 5===
 
;Aula 27(13 mai):
 
:*Uso do Simulink
 
::* Uso dos blocos de simulação [http://www.mathworks.com/help/simulink/slref/sinewave.html sinewave], [http://www.mathworks.com/help/simulink/slref/floatingscope.html scope] e [http://www.mathworks.com/help/dsp/ref/spectrumanalyzer.html Spectrum Analyzer].
 
::* Outros blocos [http://www.mathworks.com/help/simulink/slref/mux.html mux], [http://www.mathworks.com/help/simulink/slref/demux.html demux], [http://www.mathworks.com/help/simulink/slref/add.html sum], [http://www.mathworks.com/help/simulink/slref/product.html product].
 
::* Exemplo: construção de um modulador AM.
 
 
 
;Aula 28(19 mai):
 
:*Uso do Simulink
 
::*[http://www.mathworks.com/academia/student_center/tutorials/slregister.html Interactive Simulink Tutorial]
 
:::*[http://www.mathworks.com/academia/student_center/tutorials/simulink/onramp/player.html Bases da modelagem gráfica com Simulink (45 minutos)]
 
::::    Introduction: What Is Simulink? 4:42
 
::::    Constructing and Running a Simple Model 13:45
 
::::    Simulating a Model 10:10
 
::::    Working with MATLAB 9:12
 
::::    Creating Subsystems 6:46
 
:::*É importante ler informações complementares sobre o [http://www.mathworks.com/help/simulink/gui/solver-pane.html Solver Pane], [http://www.mathworks.com/help/simbio/ug/simulating-models.html Model Simulation], [http://www.mathworks.com/help/simulink/ug/choosing-a-solver.html Choose a Solver]
 
 
 
;Aula 29, 30 (20 e 26 mai):
 
:*Uso do Simulink
 
::*[http://www.mathworks.com/academia/student_center/tutorials/slregister.html?refresh=true Interactive Simulink Tutorial]
 
:::*[http://www.mathworks.com/academia/student_center/tutorials/simulink/modeldynamic/player.html Usando o Simulink para modelagem de Sistemas Dinâmicos Discretos(60 minutos)]
 
::::    Modeling Discrete Dynamical Systems 19:35
 
::::    Use Signal Processing Blockset 12:01
 
::::: dspstartup.m command
 
::::    Working with Signals in Simulink 9:59
 
:::*É importante ler informações complementares sobre, [http://www.mathworks.com/help/simulink/sample-time.html Tempo de amostragem (Time Sample)], [http://www.mathworks.com/help/simulink/ug/how-to-view-sample-time-information.html View Sample Time Information], [http://www.mathworks.com/help/dsp/ug/sample-and-frame-based-concepts.html Sample- and Frame-Based Concepts], [http://www.mathworks.com/help/simulink/slref/concatenate.html Vector Concatenate, Matrix Concatenate].
 
 
 
;Aula 31 (27 mai):
 
:*Visita aos equipamento da RNP na UFSC -> prof Sandro Lima.
 
 
 
;Aula 32 (2 jun):
 
:*Uso do Simulink
 
::*[http://www.mathworks.com/academia/student_center/tutorials/slregister.html?refresh=true Interactive Simulink Tutorial]
 
:::*[http://www.mathworks.com/academia/student_center/tutorials/simulink/modeldynamic/player.html Usando o Simulink para modelagem de Sistemas Dinâmicos Discretos(60 minutos)]
 
::::    Applying a Filter 9:04
 
::::    Designing and Implementing a Filter 10:23
 
 
 
;Aula 33 (3 jun):
 
:*Exemplos de uso do Simulink:
 
::* Cancelamento de Ruido usando Filtragem adaptativa LMS.
 
SP_adaptiveFilt
 
::* Remoção dos Lyrics de um arquivo de música com voz centrada em canal estéreo.
 
SP_lyricRemoval
 
::* Conversão da taxa de amostragem de um sinal de audio.
 
dspaudiosrc
 
::*Realizar Atividade de Avaliação AE7.
 
 
 
;Aula 34 e 35 (9 e 10 jun):
 
:*Uso do HDL Coder
 
::* [http://www.mathworks.com/help/hdlcoder/examples/getting-started-with-matlab-to-hdl-workflow.html Getting Started with MATLAB to HDL Workflow]
 
::* [http://www.mathworks.com/help/hdlcoder/examples/basic-hdl-code-generation-with-the-workflow-advisor.html Basic HDL Code Generation with the Workflow Advisor]
 
::* [https://www.mathworks.com/help/hdlcoder/examples/floating-point-to-fixed-point-conversion.html Floating-Point to Fixed-Point Conversion]
 
::* [https://www.mathworks.com/help/hdlverifier/ug/verify-hdl-model-with-matlab-testbench.html Verify HDL Model with MATLAB Testbench]
 
::* Ver também o uso da função [http://www.mathworks.com/help/fixedpoint/ref/fi.html fi] - Construct fixed-point numeric object
 
a = fi(-1, true, 8, 0)
 
a.bin
 
 
 
a = fi(-128, true, 8, 0)
 
a.bin
 
 
 
a = fi(127, true, 8, 0)
 
a.bin
 
::* Ver também a função resize da ieee.numeric_std library.
 
<syntaxhighlight lang=vhdl>
 
  function RESIZE (ARG: SIGNED; NEW_SIZE: NATURAL) return SIGNED;
 
  -- Result: Resizes the SIGNED vector ARG to the specified size.
 
  --        To create a larger vector, the new [leftmost] bit positions
 
  --        are filled with the sign bit (ARG'LEFT). When truncating,
 
  --        the sign bit is retained along with the rightmost part.
 
 
 
  function RESIZE (ARG: UNSIGNED; NEW_SIZE: NATURAL) return UNSIGNED;
 
  -- Result: Resizes the SIGNED vector ARG to the specified size.
 
  --        To create a larger vector, the new [leftmost] bit positions
 
  --        are filled with '0'. When truncating, the leftmost bits
 
  --        are dropped.
 
</syntaxhighlight>
 
 
 
;Aula 36 (16 jun):
 
:*Uso do HDL Coder
 
::*Simulação do projeto da aula anterior no ModelSim-ALTERA.
 
{{collapse top |Procedimentos para a Simulação}}
 
Abra o ModelSim:
 
/opt/altera/13.0sp1/modelsim_ase/bin/vsim &
 
Troque a pasta de trabalho para a pasta onde o Matlab gerou os arquivos .vhd e .do [File > Change Directory] ou digite na janela tcl:
 
cd  /tmp/mlhdlc_sfir/codegen/mlhdlc_sfir/hdlsrc
 
Execute o arquivo 
 
do mlhdlc_sfir_fixpt_tb_compile.do
 
Edite o arquivo mlhdlc_sfir_fixpt_tb_sim.do, comentando as linhas que forçam a saida do Modelsim.  Estas linhas foram criadas para a integração direta com o Matlab, mas ela não funciona com a versão do ModelSim que temos disponível. 
 
edit mlhdlc_sfir_fixpt_tb_sim.do
 
 
 
#onerror {quit -f}
 
#onbreak {quit -f}
 
...
 
#quit -f
 
 
 
Agora execute o arquivo mlhdlc_sfir_fixpt_tb_sim.do, o qual irá adicionar os sinais a serem analisados na janela '''Wave''' e executará todos os comandos vhdl do arquivo *_tb.vhdl gerado pelo Matlab. 
 
do mlhdlc_sfir_fixpt_tb_sim.do
 
 
 
Ao tinal da simulação a janela '''Transcript''' indicará se o teste passou:
 
# ** Note: **************TEST COMPLETED (PASSED)**************
 
#    Time: 20030 ns  Iteration: 1  Instance: /mlhdlc_sfir_fixpt_tb
 
ou se falhou:
 
# ** Note: **************TEST COMPLETED (FAILED)**************
 
#    Time: 20030 ns  Iteration: 1  Instance: /mlhdlc_sfir_fixpt_tb
 
 
 
Note ainda que os sinais de entrada (x_in), os sinais de saída (y_out e delayed_xout) e os dois sinais de referência gerados na simulação com o Matlab (y_out_ref e delayed_xout_ref) são mostrados como sequências de bits.  Para melhorar a visualização mude o Formato desses sinais para analógico [Clique Direito do Mouse> Format > Analog (automatic)].
 
 
 
{{collapse bottom}}
 
 
 
 
 
{{collapse top |Problemas na integração Matlab - Modelsim}}
 
*Foram criados os seguintes arquivos em /usr/local/bin
 
sudo gedit quartus
 
<code>
 
#!/bin/bash
 
VERSAO="13.0sp1"
 
cd /opt/altera/${VERSAO}/quartus/bin
 
exec ./quartus
 
</syntaxhighlight>
 
sudo chmod +x quartus
 
 
 
sudo gedit quartus_sh
 
<code>
 
#!/bin/bash
 
VERSAO="13.0sp1"
 
cd /opt/altera/${VERSAO}/quartus/bin
 
exec ./quartus_sh
 
</syntaxhighlight>
 
sudo chmod +x quartus_h
 
 
 
sudo gedit vsim
 
<code>
 
#!/bin/bash
 
VERSAO="13.0sp1"
 
cd /opt/altera/${VERSAO}/modelsim_ase/bin
 
exec ./vsim
 
</syntaxhighlight>
 
sudo chmod +x vsim
 
 
 
*Porque o Matlab/Simulink não funcionam com o ModelSim-Altera? 
 
<code>
 
### Launching ModelSim for cosimulation
 
Error using hdlsim/l_GetModelSimLibInfo (line 525)
 
Could not find ModelSim executable vsim. Make sure that ModelSim Linux 64-bit version is installed on this machine and its
 
executables are on the system path.
 
</syntaxhighlight>
 
:'''Resposta''' em: http://www.mathworks.com/help/releases/R2015a/hdlverifier/gs/supported-eda-tools.html.
 
:'''Solução''': Instalar ModelSim SE 10.1c nas maquinas.
 
: '''Novo problema''': O Software ModelSim SE é pago e não tem disponível para LINUX
 
{{collapse bottom}}
 
 
 
 
 
<!--
 
:*Periodograma de um sinal [http://www.mathworks.com/help/daq/examples/performing-spectral-analysis-on-live-audio-data.html Performing Spectral Analysis on Live Audio Data].
 
dspstfft
 
:*Analise de espectro - Domínio do tempo [http://www.mathworks.com/help/dsp/ug/display-frequency-domain-data-in-spectrum-analyzer.html Display Frequency-Domain Data in Spectrum Analyzer]
 
ex_spectrumanalyzer_tut
 
-->
 
:*Referência:
 
::[http://www.mathworks.com/help/pdf_doc/simulink/sl_gs.pdf Simulink® Getting Started Guide]. 
 
::[http://cn.mathworks.com/help/pdf_doc/hdlcoder/hdlcoder_gs.pdf HDL Coder™ Getting Started Guide].
 
::Consultar outros documentos sobre o [http://www.mathworks.com/help/pdf_doc/simulink/ Simulink no site da Mathworks].
 
 
 
===Unidade 5===
 
;Aula 37 a 40 (17/06 a 30/06)
 
*Projeto Final
 
:Implementação de filtros em VHDL usando o HDL Coder para projeto e Modelsim para Simulação
 
:*Os alunos trabalharam de forma individual na realização e implentação do filtro projeto anteriormente na atividade AE5.
 
:*Ao final do projeto cada aluno deve apresentar:
 
::* o arquivo de projeto do HDL Coder com os códigos ".m";
 
::* o arquivos em VHDL do filtro e seu testbench;
 
::* o arquivo ".do" para a simulação com Modelsim;
 
::* um artigo técnico completando o artigo iniciado no item AE5.
 
 
 
===Avaliações===
 
* Entrega dos diversos trabalhos ao longo do semestre AE1 a AE4.
 
* Entrega do artigo sobre a atividade AE5 (27%)
 
* Projeto Final. O projeto é avaliado nos quesitos: 1) Implementação do Sistema, 2) Documentação, 3) Avaliação Global do aluno no projeto. (40% do conceito)
 
  
==Atividades extra==
 
===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===
 
{{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==
 
* 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 [[Acesso ao IFSC-CLOUD | IFSC-CLOUD]] para ter acesso a estes softwares.
 
 
*Para a geração de documentação/relatórios técnicos/artigos, está disponibilizada a plataforma  [http://200.135.233.26:3000/project Sharelatex do IFSC-CLOUD]. Utilize preferencialmente o [http://200.135.233.26:3000/project/54750cb57ae8187440d60acd  modelo de artigo no padrão ABNT].  Ver também [[Modelo para uso em relatórios]].
 
 
==Links auxiliares==
 
* [http://www.mathworks.com/help/releases/R2014a/pdf_doc/dsp/index.html?refresh=true Manuais do Matlab para o Toolbox de DSP].
 
* [http://www.mathworks.com/help/matlab/index.html Help on-line do Matlab]
 
 
* [[Modelo para uso em relatórios]]
 
* [[Modelo para uso em relatórios]]
* [http://www.mathworks.com/help/dsp/ug/fixed-point-filter-design-1.html Fixed-Point Filter Design] - Mathworks
+
* [https://en.wikipedia.org/wiki/List_of_mathematical_symbols Lista dos Símbolos Matemáticos]
* [[PSD29007-Engtelecom(2015-1) - Prof. Marcos Moecke]]
 
  
 
==Alguns artigos para leitura==
 
==Alguns artigos para leitura==
Linha 807: Linha 91:
 
*[http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4610722 High Quality Low Order Nonrecursive Digital Filters Design Using Modified Kaiser Window]
 
*[http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4610722 High Quality Low Order Nonrecursive Digital Filters Design Using Modified Kaiser Window]
  
==Referências Bibliográficas==
+
== Registro Diário e Avaliação Anteriores ==
<references/>
+
* [[PSD29007-Engtelecom(2020-1) - Prof. Marcos Moecke | Semestre 2020-1]]
 +
* [[PSD29007-Engtelecom(2019-2) - Prof. Marcos Moecke | Semestre 2019-2]]
 +
* [[PSD29007-Engtelecom(2019-1) - Prof. Marcos Moecke | Semestre 2019-1]]
 +
* [[PSD29007-Engtelecom(2018-2) - Prof. Marcos Moecke | Semestre 2018-2]]
 +
* [[PSD29007-Engtelecom(2018-1) - Prof. Marcos Moecke | Semestre 2018-1]]
 +
* [[PSD29007-Engtelecom(2017-2) - Prof. Marcos Moecke | Semestre 2017-2]]
 +
* [[PSD29007-Engtelecom(2017-1) - Prof. Marcos Moecke | Semestre 2017-1]]
 +
* [[PSD29007-Engtelecom(2016-2) - Prof. Marcos Moecke | Semestre 2016-2]]
 +
* [[PSD29007-Engtelecom(2016-1) - Prof. Marcos Moecke | Semestre 2016-1]]
 +
* [[PSD29007-Engtelecom(2015-2) - Prof. Marcos Moecke | Semestre 2015-2]]
 +
* [[PSD29007-Engtelecom(2015-1) - Prof. Marcos Moecke | Semestre 2015-1]]
  
 
{{ENGTELECO}}
 
{{ENGTELECO}}

Edição atual tal como às 16h18min de 11 de novembro de 2020

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


Avisos importantes

Durante o 2º semestre de 2020, devido a Pandemia do Coronavirus Sars-CoV-2, as aulas da disciplina ocorrerão de forma remota. Seguem algumas informações importantes:

  • Todas os nossos encontros síncronos serão feitos usando a plataforma Google Meet. Para ingressar nas aulas utilizem o email institucional (usuario@aluno.ifsc.edu.br).
  • Após cada encontro, vocês terão acesso automático as gravações das aulas na Pasta compartilhada no Gdrive.
  • Para a entrega de atividades e avaliações será utilizada a plataforma Moodle. É necessário que vocês se autoinscrevam no Moodle da disciplina com a chave (engtelecom2020-2).
  • Para a comunicação entre professor-aluno, além dos avisos no SIGAA, utilizaremos a plataforma Slack. Inscrevam-se no Slack da disciplina. O aluno pode usar qualquer email para acessar ao Slack, mas recomenda-se o uso do email institucional.
  • Para participar das aulas é recomendado que o aluno tenha disponível: 1 computador ou dispositivo móvel (smartphone ou tablet) para assistir os encontros presenciais ou gravações. É necessário um computador para utilizar os softwares e realizar atividades práticas de laboratório. O aluno deve ter acesso a Nuvem do IFSC ou instalar a VM com softwares Matlab/Simulink/HDL Coder. Acesso a Internet é fundamental, e recomenda-se que o aluno tenha um lugar silencioso para participar das aulas. O acesso ao Google Meet, Drive, Slack, Moodle e Wiki podem ser feitos via navegador, mas a instalação das respectivas aplicações é recomendada. Recomenda-se ainda que cada aluno uso um fone de ouvido com microfone, pois isso melhora muito a qualidade do som e a interação nas vídeo conferências. Ao ingressar em um encontro síncrono mantenha sempre que possível a câmera aberta e também o microfone. Se houver algum problema de ruído você será alertado.
  • Nesta página wiki, você tem orientações para uso de ferramentas e também links que auxiliam no estudo da disciplina. Visite os links sempre que solicitado e lei essa página para lembrar futuramente onde estão as informações que necessita.

Instalação da VM com Matlab/Simulink/HDL Coder em seu computador

Para importar a VM para o seu computador e configurar ela para acessar a licença do IFSC veja a página Instalação da VM Matlab

Instalação da VM com Quartus e Modelsim em seu computador

Na fase do projeto final pode ser necessário importar também essa VM para o seu computador. Veja como importar e configurar ela para acessar a licença do IFSC veja a página Instalação da VM com Quartus e Modelsim

Recursos de Laboratório

Nos laboratórios do IFSC, os softwares Matlab/Simulink/HDL Coder estão disponíveis diretamente na plataforma LINUX. Utilize preferencialmente a versão 2015.

Acesso a Nuvem do IFSC

Para uso fora do IFSC dos recursos computacionais com licença educacional, o IFSC disponibiliza para seus alunos o IFSC-CLOUD (nuvem.sj.ifsc.edu.br). A forma mais eficiente de acesso a nuvem de fora do IFSC é através do Cliente X2GO, mas dentro da rede do IFSC o acesso pelo ssh também tem boa usabilidade.

Para para utilizar o Quartus/Modelsim/QSIM através da Nuvem do IFSC, siga o procedimento de instalação do X2Go e configuração do X2Go. Nota: O desempenho do Modelsim é ruim quando acesso da rede externa ao IFSC, e por isso deve ser evitado, dando-se preferencia ao uso da VM.

Modelos para relatório

Para a geração de documentação/relatórios técnicos/artigos, use como base o modelo ABNTex2 para o padrão do IFSC para monografia que segue as normas da ABNT e do IFSC. Recomendo que os alunos da Engenharia de Telecomunicações utilizem esse modelo e o Overleafv2, pois além de possibilitar o compartilhamento do documento entre os alunos, reduz o tempo perdido na formação do documento, permitindo que o aluno já aprenda alguma formatação de Latex que será útil na elaboração do TCC.

Links auxiliares

Alguns artigos para leitura

Artigos bases de alguns dos filtros digitais:

Relatórios simples:

Registro Diário e Avaliação Anteriores


Curso de Engenharia de Telecomunicações