Mudanças entre as edições de "PSD29007-Engtelecom(2017-2) - Prof. Marcos Moecke"
(→ATUAL) |
|||
(4 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 963: | Linha 963: | ||
:* Estudar os blocos do Simulink: [https://www.mathworks.com/help/dsp/ref/timescope.html Time Scope], [https://www.mathworks.com/help/dsp/ref/spectrumanalyzer.html Spectrum Analyzer], [https://www.mathworks.com/help/dsp/ref/sinewave.html Sine Wave], [https://www.mathworks.com/help/dsp/ref/chirp.html Chirp], [https://www.mathworks.com/help/dsp/ref/randomsource.html Random Source], [https://www.mathworks.com/help/dsp/ref/signalfromworkspace.html Signal From Workspace], [https://www.mathworks.com/help/dsp/ref/frommultimediafile.html From Multimedia File]. | :* Estudar os blocos do Simulink: [https://www.mathworks.com/help/dsp/ref/timescope.html Time Scope], [https://www.mathworks.com/help/dsp/ref/spectrumanalyzer.html Spectrum Analyzer], [https://www.mathworks.com/help/dsp/ref/sinewave.html Sine Wave], [https://www.mathworks.com/help/dsp/ref/chirp.html Chirp], [https://www.mathworks.com/help/dsp/ref/randomsource.html Random Source], [https://www.mathworks.com/help/dsp/ref/signalfromworkspace.html Signal From Workspace], [https://www.mathworks.com/help/dsp/ref/frommultimediafile.html From Multimedia File]. | ||
− | ;Aula 31 (4 Dez): | + | ;Aula 31 a 33 (4 Dez): |
* Aula de projeto (implementação da AE5) | * Aula de projeto (implementação da AE5) | ||
− | + | ||
− | ;Aula 34 ( | + | ;Aula 34 (14 Dez): |
:*Uso do HDL Coder | :*Uso do HDL Coder | ||
::* [http://www.mathworks.com/help/hdlcoder/hdl-code-generation-from-simulink.html HDL Code Generation from Simulink] | ::* [http://www.mathworks.com/help/hdlcoder/hdl-code-generation-from-simulink.html HDL Code Generation from Simulink] | ||
Linha 1 023: | Linha 1 023: | ||
hdlsetup('sfir_fixed') | hdlsetup('sfir_fixed') | ||
::*Siga o tutorial [http://www.mathworks.com/help/hdlcoder/gs/example-generating-hdl-code-from-a-simulink-model.html HDL Code Generation from a Simulink Model] | ::*Siga o tutorial [http://www.mathworks.com/help/hdlcoder/gs/example-generating-hdl-code-from-a-simulink-model.html HDL Code Generation from a Simulink Model] | ||
+ | <!-- | ||
;Aula 35 a 37 (26 Jun a 3 Jul): | ;Aula 35 a 37 (26 Jun a 3 Jul): | ||
Linha 1 192: | Linha 1 193: | ||
{{collapse bottom}} | {{collapse bottom}} | ||
− | {{collapse top | | + | {{collapse top | AE4 - Realização de Filtro Digitais FIR e IIR (Entrega e prazos ver Moodle (4 Dez as 13h00)}} |
: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 breve relatório mostrando as vantagens do filtro escolhido sobre o outro. | :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 breve relatório mostrando as vantagens do filtro escolhido sobre o outro. | ||
:2. É permitido (incentivado) o uso de ferramentas como o FDAtool e funções como o fdesign para o projeto do filtro. | :2. É permitido (incentivado) o uso de ferramentas como o FDAtool e funções como o fdesign para o projeto do filtro. | ||
Linha 1 260: | Linha 1 261: | ||
The thresholds and decision logic are regulated in order not to recognize character signals with a level below -30 dBm | The thresholds and decision logic are regulated in order not to recognize character signals with a level below -30 dBm | ||
and to recognize valid character signals with a level in the range of -4 dBm to -30 dBm. | and to recognize valid character signals with a level in the range of -4 dBm to -30 dBm. | ||
+ | </syntaxhighlight> | ||
+ | De acordo com [http://www.etsi.org/deliver/etsi_es/201200_201299/20123502/01.01.01_60/es_20123502v010101p.pdf ETSI ES 201 235-2 - Specification of Dual Tone Multi-Frequency (DTMF) Transmitters and Receivers; Part 3: Transmitters] as características dos componentes do transmissor são: | ||
+ | <code> | ||
+ | High group: signalling frequencies , which have nominal values of 1 209 Hz, 1 336 Hz, 1 477 Hz and 1 633 Hz | ||
+ | Low group: signalling frequencies, which have nominal values of 697 Hz, 770 Hz, 852 Hz and 941 Hz | ||
+ | The tolerances of the output frequencies shall be within ±1,5 % of their nominal values. | ||
+ | The sending levels when the DTMF transmitter is terminated with the reference impedance ZR,shallbe: | ||
+ | - for the high frequency group: -9,0 dBV, +2,0 dB / -2,5 dB; | ||
+ | - for the low frequency group: -11,0 dBV, +2,5 dB / -2,0 dB | ||
+ | where dBV - Absolute voltage level expressed in decibels relative to 1 volt. | ||
+ | The duration of any individual DTMF tone combination sent shall not be less than 65 ms. The duration of the pause between any individual DTMF tone combination shall not be less than 65 ms. | ||
+ | |||
</syntaxhighlight> | </syntaxhighlight> | ||
::* A frequência de amostragem ''f_s'' do sinal de entrada no sistema mostrado acima é de 8 kHz. | ::* A frequência de amostragem ''f_s'' do sinal de entrada no sistema mostrado acima é de 8 kHz. | ||
Linha 1 283: | Linha 1 296: | ||
* [http://www.etsi.org/deliver/etsi_es/201200_201299/20123503/01.01.01_50/es_20123503v010101m.pdf ETSI ES 201 235-3 - Specification of Dual Tone Multi-Frequency (DTMF) Transmitters and Receivers; Part 3: Receivers] | * [http://www.etsi.org/deliver/etsi_es/201200_201299/20123503/01.01.01_50/es_20123503v010101m.pdf ETSI ES 201 235-3 - Specification of Dual Tone Multi-Frequency (DTMF) Transmitters and Receivers; Part 3: Receivers] | ||
* [http://www.etsi.org/deliver/etsi_es/201200_201299/20123504/01.01.01_50/es_20123504v010101m.pdf ETSI ES 201 235-4 - Specification of Dual Tone Multi-Frequency (DTMF) Transmitters and Receivers; Part 4: Receivers for use in Terminal Equipment for end-to-end signalling] | * [http://www.etsi.org/deliver/etsi_es/201200_201299/20123504/01.01.01_50/es_20123504v010101m.pdf ETSI ES 201 235-4 - Specification of Dual Tone Multi-Frequency (DTMF) Transmitters and Receivers; Part 4: Receivers for use in Terminal Equipment for end-to-end signalling] | ||
+ | :* Outros links auxiliares: | ||
+ | *[https://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling DTMF] | ||
+ | * [https://en.wikipedia.org/wiki/Time_constant Relação entre constante de tempo e frequencia de corte] | ||
+ | * [http://www.sengpielaudio.com/calculator-db-volt.htm Calculador de dBV] | ||
{{collapse bottom}} | {{collapse bottom}} | ||
Edição atual tal como às 12h59min de 14 de dezembro de 2017
Registro on-line das aulas
Unidade 1 | ||||||
---|---|---|---|---|---|---|
Unidade 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);
% 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')
%% Experimento 2.3 - Filtros Digitais
% 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.
% FILE: Exp2_3.m
%% 1º filtro
p1 = 0.9*exp(1j*pi/4);
Z = [1 -1 ]'; P = [p1 p1']';
[num,den] = zp2tf(Z,P,1);
[h,w] = freqz(num,den);
figure(1); plot(w,abs(h)/max(abs(h)));
figure(2); zplane(num,den);
%% 2º filtro
z1 = exp(1j*pi/8);
z2 = exp(1j*3*pi/8);
p1 = 0.9*exp(1j*pi/4);
Z = [1 -1 z1 z1' z2 z2']';
P = [p1 p1' p1 p1' p1 p1']';
[num,den] = zp2tf(Z,P,1);
[h,w] = freqz(num,den);
figure(1); plot(w,abs(h)/max(abs(h)));
figure(2); zplane(num,den);
%% 3º filtro
z1 = exp(1j*pi/8);
z2 = exp(1j*3*pi/8);
p1 = 0.99*exp(1j*pi/4);
p2 = 0.9*exp(1j*pi/4 - 1j*pi/30);
p3 = 0.9*exp(1j*pi/4 + 1j*pi/30);
Z = [1 -1 z1 z1' z2 z2']';
P = [p1 p1' p2 p2' p3 p3']';
[num,den] = zp2tf(Z,P,1);
[h,w] = freqz(num,den);
figure(1); plot(w,abs(h)/max(abs(h)));
figure(2); zplane(num,den);
%% Carregando o som
clear, close, clc
load handel;
%% Reproduzindo o som
sound(y,Fs)
% Reproduzindo o som
%soundsc(y,Fs)
% Reproduzindo o som
%player = audioplayer(y, Fs);
%play(player);
%% Carregando o som
clear, close, clc
[y,Fs] = audioread('DTMF_8kHz.ogg');
%% Reproduzindo o som
sound(y,Fs)
%% Visualizando o som no DT
time = [0:length(y)-1]'/Fs;
plot(time',y'); xlabel('segundos');
xlim([0 time(end)]), ylim([-1 1]);
%% Visualizando o som no DF
Nfreq = length(y);
freq = linspace(0,2*pi,Nfreq)'*Fs/pi/2;
Y = fft(y,Nfreq)/Nfreq;
plot(freq,abs(Y)); xlabel('Hertz');
xlim([0 Fs/2]);
|
Unidade 2 |
---|
Unidade 2
ATENÇÃO!!!! Tinha um erro no valor de antes estava . Jessica obrigado por avisar.
%Butterworth lowpass Responses (db)
w = 0.1:0.01:10;
H=inline('10*log10(1./(1+w.^(2*n)))','w','n');
for k = 1:1:10
semilogx(w,H(w,k)); hold on;
end
grid on
%Butterworth lowpass Responses (linear)
w = 0.1:0.01:2;
H=inline('1./(1+w.^(2*n))','w','n');
for k = 1:1:10
plot(w,H(w,k)); hold on;
end
grid on
%% 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');
|
Unidade 3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Unidade 3
L = 64;
wvtool(rectwin(L), triang(L), bartlett(L), hann(L), hamming(L), blackman(L), blackmanharris(L), nuttallwin(L));
Projetar um filtro passa baixas usando uma janela temporal fixa (verificar a janela que atende a especificação) wp = 0.2*pi; Ap = 0.2 dB; Gp = 0 dB ws = 0.3*pi; As = 60 dB;
Projetar um filtro LP usando uma janela temporal fixa (hamming, bartlett-hanning, hanning). wp = 0.4*pi; Ap = 1 dB; Gp = 0 dB ws = 0.6*pi; As = 40 dB;
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));
Para a janela de Kaiser, a estimação do fator e da ordem do filtro são obtidos por:
Utilizando o Matlab é possível estimar esses valores utilizando a função kaiserord. Exemplo da obtenção de um filtro passa baixa com , , atenuação de 40 dB na "stopband" fsamp = 8000;
fcuts = [1000 1500];
mags = [1 0];
devs = [0.01 0.01];
[n,Wn,beta,ftype] = kaiserord(fcuts,mags,devs,fsamp);
Com os parâmetros é possível projetar o filtro usando a função fir1, que utiliza o método da janela para o projeto do filtro. h_fir = fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale');
[Hw,w] =freqz(h_fir);
plot(w*fsamp/2/pi,20*log10(abs(Hw)))
title(['Kaiser filter N = ' num2str(n)])
%fvtool(h_fir,1)
|
Unidade 4 |
---|
Unidade 4
Fs = 30000; % Sampling Frequency
Fpass = 12000; % Passband Frequency
Fstop = 13000; % Stopband Frequency
Dpass = 0.01; % Passband Ripple
Dstop = 0.01; % Stopband Attenuation
flag = 'scale'; % Sampling Flag
% Calculate the order from the parameters using KAISERORD.
[N,Wn,BETA,TYPE] = kaiserord([Fpass Fstop]/(Fs/2), [1 0], [Dstop Dpass]);
% Calculate the coefficients using the FIR1 function.
b = fir1(N, Wn, TYPE, kaiser(N+1, BETA), flag);
hFIR = dsp.FIRFilter;
hFIR.Numerator = b;
% Para definir diretamente os coeficientes
realizemdl(hFIR)
% Para definir os coeficientes através de uma matriz de entrada
realizemdl(hFIR,'MapCoeffsToPorts','on');
x=-0.2;
% Word length = 8, fraction length = 7
q=quantizer([8,7]);
xq=quantize(q,x);
binxq=num2bin(q,xq)
% Word length = 16, fraction length = 15
q1=quantizer([16 15]);
xq1 = quantize(q1,x);
binxq1=num2bin(q1,xq1)
Para configurar o Simulink para sistemas discretos execute o comando dspstartup.m antes de abrir um novo modelo. |
Unidade 5 - PROJETO FINAL |
---|
Unidade 5 - PROJETO FINALATUAL
hdllib Show Blocks Supported for HDL Code Generation
hdlsetup('teste_sin_HDLcoder')
cd hdl_prj/hdlsrc/teste_sin_HDLcoder ls *.vhd
vsim &
Subsystem_compile.do Subsystem_tb_compile.do Subsystem_tb_sim.do
IF Out1_testFailure = '0' THEN
ASSERT FALSE
REPORT "**************TEST COMPLETED (PASSED)**************"
SEVERITY NOTE;
ELSE
ASSERT FALSE
REPORT "**************TEST COMPLETED (FAILED)**************"
SEVERITY NOTE;
END IF;
sfir_fixed
hdlsetup('sfir_fixed')
|
Avaliações
- Entrega dos diversas Atividades Extraclasse ao longo do semestre.
- Entrega do Projeto Final. O projeto é avaliado nos quesitos:
- 1) Implementação do Sistema,
- 2) Documentação,
- 3) Avaliação Global do aluno no projeto.
- Entrega dos Atividades Extraclasse ao longo do semestre AE1 a AE(N). A entrega, detalhes e prazos de cada AE serão indicados na plataforma Moodle
- Autoinscrição na Plataforma Moodle de PSD29007 (engtelecom)
AE1 - Revisão de Sinais e Sistemas (prazo e forma de entrega ver na plataforma Moodle) | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Figura 1 - Análise no domínio da frequência do sinal
|
AE2 - Projeto de Filtros Digitais IIR (Entrega e prazos ver Moodle) | |||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Esta avaliação visa verificar se você conhece a metodologia de projeto de filtros digitais IIR: (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 o tipo de filtro desejado; (c) transformação do filtro analógico em filtro digital H(s) -> H(z) utilizando a transformação "Bilinear" ou pela transformação "Invariante ao Impulso". Nesta avaliação é solicitado que cada equipe realize o projeto de 5 filtros, e trabalhos individuais serão 4 filtros. Para todos os filtros considere como valores default fa = 4 kHz, Gp = 0 dB, Ap = 1 dB e As = 40 dB (exceto se indica outro valor na tabela abaixo. Os filtro BP deverão ter apenas o BP1 projetado conforme o procedimento completo, sendo que nos demais deverá ser aproveitado o filtro H(p) para obtê-los.
|
AE3 - Projeto de Filtros Digitais FIR (Entrega e prazos ver Moodle) |
---|
Esta avaliação visa verificar se você conhece a metodologia de projeto de filtros digitais FIR: (a) Projeto de filtros com Janela Fixas (filtro LP) e Ajustáveis filtro HP); (b) Projeto de filtros com o algoritmo de Parks-McCleallan (Filtros BP); Nesta avaliação é solicitado que cada equipe realize os mesmos filtros projeto de filtros da atividade AE2.
|
AE4 - Realização de Filtro Digitais FIR e IIR (Entrega e prazos ver Moodle (4 Dez as 13h00) |
---|
|
ATUAL
AE5 - Projeto de um Detector de DTMF (Entrega e prazos ver Moodle) | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
De acordo com ETSI ES 201 235-3 - Specification of Dual Tone Multi-Frequency (DTMF) Transmitters and Receivers; Part 3: Receivers as características dos componentes do receptor são:
|
Referências Bibliográficas
- ↑ 1,0 1,1 1,2 1,3 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 2,2 2,3 2,4 2,5 2,6 2,7 2,8 SHENOI, B. A. Introduction to Digital Signal Processing and Filter Design. 1.ed. New Jersey: John Wiley-Interscience, 2006. 440 p. ISBN 978-0471464822
- ↑ LATHI, Bhagwandas P. Sinais e Sistemas Lineares. 2. ed. Porto Alegre: Artmed-Bookman, 2007. 856 p. ISBN 978-8560031139