Você está acessando nosso website pela primeira vez. Nosso site, objetivando permitir, particularmente, uma melhor interação com você, bem como para permitir funcionalidades para melhorar o funcionamento técnico das páginas, mensurar a audiência do website e oferecer produtos e serviços relevantes por meio de anúncios personalizados, coleta informações do seu dispositivo e da sua navegação por meio de cookies. Para saber mais sobre a coleta de dados/informações e cookies que coletamos, acesse a nossa Política de Privacidade.

Aceitar Não aceitar

Para ver o formulário de contatos você aceita nossa Política de Privacidade.

Aceitar Não aceitar

Amostragem e Quantização

 

1. Amostragem

 

 

1.1 Revisão da teoria:

 

- Nenhum sinal digital tem componentes com frequências acima de fs/2.

- Se o sinal analógico a ser digitalizado tiver componentes acima de fs/2, estas devem ser eliminadas antes da amostragem.

- Se isto não for feito, ocorre o efeito de aliasing, que consiste na transposição dos sinais de alta frequência para a região compreendida entre 0 e fs/2, causando distorção do sinal.

 

aliasing1

 

 

1.2 Experiências

 

1. Gere um sinal digital de 1000 amostras que simule um sinal analógico, consistindo de uma única senóide de frequência 30.76 Hz, amostrada a 1 kHz por 1 segundo.  Plote este sinal digital com o eixo x sendo o tempo, de 0 a 1 s.

 
% Gerando sinal de 30.76 Hz amostrado a 1kHz.
fs = 1000; % Frequência de amostragem em Hertz
f = 30.76; % frequência do sinal a ser gerado em Hertz
t=0:1/fs:1; % Geração do eixo de tempo (1 segundo)
y=sin(2*pi*f*t); % Geração do sinal
% Mostrando o sinal gerado
plot(t,y)
title("Sinal amostrado a 1kHz");
xlabel("tempo (s)");
ylabel("amplitude (V)");
grid

 

 
2. Simule a amostragem deste sinal analógico a 200 Hz, descartando 4 amostras a cada 5 do sinal digital que você criou no passo 1.
 
% Reamostrando  o sinal a 200 Hz
tamanho=length(y);
t1=1;
t2=1;
while (t1<tamanho)
y200(t2) = y(t1);
t1 = t1+5;
t2 = t2+1;
end
 

 

 
a. Plote este sinal reamostrado, com o eixo x rotulado como "tempo", indo de 0 a 1 s.
 
% Mostrando o sinal gerado
fs2=200;
t=0:1/fs2:1; % Geração do eixo de tempo (1 segundo)
t=t(1:length(y200));
plot(t,y200)
title("Sinal amostrado a 200Hz");
xlabel("tempo (s)");
ylabel("amplitude (V)");
grid
 

 

 
b. Ocorreu aliasing neste sinal? Explique.
 
c. Qual é a freqüência deste sinal digital?
 
d. O sinal analógico original pode ser reconstruído a partir deste sinal digital?
 
 
3. Repita o exercício 2 com frequências de amostragem de 50 Hz, 33.33 Hz, e 28.57 Hz.
 
 
 

2. Quantização

 

 

2.1 Revisão da teoria

 

 
- Quando quantizamos um sinal analógico, geramos uma aproximação do mesmo, como mostrado na figura abaixo.
 
quantizacao
 
- A diferença entre o sinal analógico original e sua versão quantizada é chamada de ruído de quantização.
 
- Assim, quantizar um sinal analógico corresponde a adicionar uma certa quantidade de ruído.
 
- Quanto menos bits usamos na quantização, mais grosseira ela fica, e portanto temos mais ruído adicionado.
 
- A variância do ruído de quantização é dada por Var[Q] = (LSB)^2/12.
 
- O termo LSB é o passo de quantização, e representa a distância entre um nível de quantização e outro. Este é dado por Vmax/2^N, onde Vmax é a excursão máxima do sinal e N é o número de bits usados na quantização.
 
- Uma outra figura estatística muito usada para análise deste ruído é o desvio padrão do ruído de quantização, que é dado pela raiz quadrada da variância.
 
 

2.2 Experiências

 

 
1. Use o código abaixo para gerar e visualizar um sinal "analógico", composto por duas senóides.
 
% Gerando um sinal com duas senóides
fs = 1000; % Frequência de amostragem em Hertz
f2=100.47;
f = 40.76; % frequência do sinal a ser gerado em Hertz
t=0:1/fs:1; % Geração do eixo de tempo (1 segundo)
nAmostras = length(t);
y1=cos(2*pi*f*t); % Geração do sinal
y2=cos(2*pi*f2*t); % Geração do sinal
y=y1+y2;
maximo=max(abs(y));
y=y/maximo;
Vmax = max(y);
Vmin = min(y);
% Mostrando o sinal gerado
plot(t,y)
title("Sinal amostrado a 1kHz");
xlabel("tempo (s)");
ylabel("amplitude (V)");
grid
 

 

 
2. Faça a quantização deste sinal com 8 bits, e anote o valor da variância e do desvio padrão calculados.
 
Você vai precisar de duas funções: default quantiza e default normaliza .
 
nBits=8;
for n=1:nAmostras
z(n)=quantiza(y(n),Vmin,Vmax,nBits);
end
for n=1:nAmostras
zn(n)=normaliza(z(n),Vmin,Vmax,nBits);
end
plot(t,zn,'r')
diferenca=y-zn;
variancia = var(diferenca)
desviopadrao = sqrt(variancia)
 

 

 
3. Compare os resultados obtidos com os valores teóricos e discuta os resultados.
 
4. Repita este procedimento, alterando as frequências das senóides para outros valores. Os resultados são os mesmos? Porque?
 
5. Repita os exercícios 3 e 4 para N=7,6 e 4 bits.
 
 
Inatel

Instituto Nacional de Telecomunicações – Inatel

Campus em Santa Rita do Sapucaí - MG - Brasil

Av. João de Camargo, 510 - Centro - 37540-000

+55 (35) 3471 9200