Mudanças entre as edições de "Modulação por Codificação Diferencial de Pulso(DPCM)"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 22: Linha 22:
 
==Toolbox e blocos necessários==
 
==Toolbox e blocos necessários==
  
Para realização da simulação, é necessário o '''Communications System Toolbox™''' [http://www.mathworks.com/help/comm/index.html html], [http://www.mathworks.com/help/pdf_doc/comm/comm.pdf pdf] fornecido pelo próprio Simulink e os seguintes blocos:
+
Para realização da simulação, é necessário o '''DSP System Toolbox™''' [http://www.mathworks.com/help/dsp/index.html html], [http://www.mathworks.com/help/pdf_doc/comm/comm.pdf pdf] fornecido pelo próprio Simulink. A seguir temos os blocos utilizados no modelo se simulação:
 
+
;Simulink:
 
* [http://www.mathworks.com/help/simulink/slref/sinewave.html Sine Wave];
 
* [http://www.mathworks.com/help/simulink/slref/sinewave.html Sine Wave];
 
* [http://www.mathworks.com/help/simulink/slref/sum.html Sum];
 
* [http://www.mathworks.com/help/simulink/slref/sum.html Sum];
Linha 30: Linha 30:
 
* [http://www.mathworks.com/help/simulink/slref/goto.html  Goto];
 
* [http://www.mathworks.com/help/simulink/slref/goto.html  Goto];
 
* [http://www.mathworks.com/help/simulink/slref/from.html  From];
 
* [http://www.mathworks.com/help/simulink/slref/from.html  From];
* [http://www.mathworks.com/help/dsp/ref/analogfilterdesign.html Analog Filter Design];
 
 
* [http://www.mathworks.com/help/simulink/slref/zeroorderhold.html  Zero-Order Hold];
 
* [http://www.mathworks.com/help/simulink/slref/zeroorderhold.html  Zero-Order Hold];
 
* [http://www.mathworks.com/help/simulink/slref/pulsegenerator.html  Pulse Generator];
 
* [http://www.mathworks.com/help/simulink/slref/pulsegenerator.html  Pulse Generator];
Linha 36: Linha 35:
 
* [http://www.mathworks.com/help/simulink/slref/gain.html Gain];
 
* [http://www.mathworks.com/help/simulink/slref/gain.html Gain];
 
* [http://www.mathworks.com/help/simulink/slref/unitdelay.html Unit Delay];
 
* [http://www.mathworks.com/help/simulink/slref/unitdelay.html Unit Delay];
* [http://www.mathworks.com/help/vision/ref/frommultimediafile.html  From Multimedia File];
+
;DSP System Toolbox:
* [http://www.mathworks.com/help/vision/ref/tomultimediafile.html To Multimedia File].
+
* [http://www.mathworks.com/help/dsp/ref/analogfilterdesign.html Analog Filter Design];
 
+
* [http://www.mathworks.com/help/dsp/ref/frommultimediafile.html  From Multimedia File];
 +
* [http://www.mathworks.com/help/dsp/ref/tomultimediafile.html To Multimedia File].
 
Para uma melhor visualização dos blocos e subsistemas usar '''[Tools>[http://www.mathworks.com/help/simulink/ug/the-model-explorer-overview.html Model Explorer]]'''
 
Para uma melhor visualização dos blocos e subsistemas usar '''[Tools>[http://www.mathworks.com/help/simulink/ug/the-model-explorer-overview.html Model Explorer]]'''
  

Edição das 11h15min de 23 de novembro de 2015

Modulação por Codificação Diferencial de Pulso (DPCM) - Simulink

Para outra forma de modulação digital de pulso, observamos que quando um sinal de voz ou vídeo é amostrado a uma taxa um pouco mais alta do que a taxa de Nyquist, o sinal amostrado resultante exibe um alto grau de correlação entre amostras adjacentes. O significado desta alta correlação é que, na média, o sinal não varia rapidamente de uma amostra para a próxima. Quando estas amostras altamente correlacionadas são codificadas como um sistema PCM padrão, o sinal codificado resultante possui informação redundante. A redundância significa que símbolos que não são absolutamente essenciais à transmissão de informação são gerados como resultado do processo de codificação. Removendo esta redundância antes da codificação obtemos um sinal codificado mais eficiente, comparado ao PCM. Agora, se conhecermos uma parte suficiente de um sinal redundante, podemos inferir o resto ou, ao menos, fazer uma estimativa altamente provável. Em particular, se soubermos o comportamento passado de um sinal até um certo ponto no tempo, é possível fazer alguma inferência sobre seus valores futuros, este processo é chamado de predição. O fato de ser possível predizer os valores futuros do sinal de entrada é a motivação par ao esquema de quantização diferencial.


Dpcm.png

Primeiramente baixe o arquivo a seguir Sistema.zip. Descompacte e certifique-se que no Matlab você esteja no diretório onde descompactou o arquivo. Digite no terminal do Matlab:

open_system('dpcm')

ou

dpcm

Toolbox e blocos necessários

Para realização da simulação, é necessário o DSP System Toolbox™ html, pdf fornecido pelo próprio Simulink. A seguir temos os blocos utilizados no modelo se simulação:

Simulink
DSP System Toolbox

Para uma melhor visualização dos blocos e subsistemas usar [Tools>Model Explorer]

Modelo e parâmetros

O modelo simula o processo de modulação por Codificação Diferencial de Pulso(DPCM) de um sinal senoidal e um sinal de áudio. Neste esquema, o sinal de entrada do quantizador é definido pela diferença entre a amostra de entrada e a sua predição. Este valor predito é produzido por um filtro de predição, cuja entrada, consiste da versão quantizada das amostras de entrada. O sinal de saída do comparador é chamado de erro de predição, pois ele é o total pelo qual o filtro de predição falha em predizer exatamente o sinal de mensagem de entrada. Uma abordagem simples, mas eficaz, para a implementação do filtro de predição é utilizar um filtro de atraso de linha ou um filtro em tempo discreto, com o atraso básico igual ao período de amostragem. Codificando a saída do quantizador, obtemos a variação do PCM chamada de modulação por codificação diferencial de pulso (DPCM, do inglês differential pulse-code modulation). Este é o sinal codificado utilizado na transmissão. No receptor a versão quantizada da entrada original é reconstruída utilizando o mesmo filtro de predição do transmissor. Finalmente, uma estimativa do sinal de mensagem original é obtida passando a versão quantizado através de um filtro de reconstrução passa-baixa. Neste modelo é possível controlar através das variáveis do bloco "Parâmetros do modelo", os parâmetros para realização do mesmo bem como eventual testes. Os parâmetros fornecidos por este bloco são:

  • amp -> Amplitude do sinal de informação;
  • fm -> Frequência do sinal de informação (Hz);
  • fs -> Frequência de amostragem (Hz);
  • niveis -> Número de níveis de quantização;
  • fc -> Frequência de corte do filtro de reconstrução (Hz);
  • ordem -> Ordem do filtro de reconstrução.

Testes que podem ser feitos

Os testes foram realizados nas versões 2012a, 2014a e 2015a do software Matlab, funcionando perfeitamente nas mesmas.A seguir alguns testes que podem ser feitos com este modelo.

  • Visualizar o processo de conversão de um sinal analógico em digital;
  • Analisar as diferenças entre o DPCM e o DM;
  • Alteração de outros parâmetros para fins de comparação de resultados.
  • Analisar o ruído de quantização;