Mudanças entre as edições de "Transmissão digital em banda passante"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
 
(34 revisões intermediárias por um outro usuário não estão sendo mostradas)
Linha 1: Linha 1:
=Passband Modulation=
+
__TOC__
 +
==Introdução==
  
Este modelo mostra uma maneira simples para executar a modulação de banda passante, multiplicando um sinal complexo modulado com uma onda senoidal para transladar o sinal na frequência. Mais informações [https://www.mathworks.com/examples/simulink-communications/2826-passband-modulation].  
+
Na transmissão de dados banda base a sequência de dados de
 +
entrada é representada na forma de uma onda discreta modulada por
 +
amplitude de pulso que pode ser transmitida em um canal passa-baixa.
 +
O problema é quando deseja-se transmitir dados digitais em canais
 +
que a largura largura de banda é compartilhada por vários sistemas, como é o caso do canal de comunicação sem fio ou de satélite denominado canal passa-faixa.
 +
Assim, na transmissão de dados por um canal passa-faixa (bandpass modulation) optamos por trabalhar com uma estratégia onde a modulação dos pulsos é configurada ao redor de uma portadora senoidal cuja amplitude, fase ou freqüência é variada de acordo com a seqüência de dados contendo a informação.
 +
Deste modo torna-se possível, ao contrário da transmissão em banda base, enviar dados de diversas fontes distintas simultaneamente, configurando o denominado FDM (Multiplexação por Divisão de Frequência). Basicamente deslocamos o espectro do sinal para uma banda de frequêcia onde a atenuação do canal seja aceitável.
  
 +
==Modelo em Simulink==
 
[[Arquivo:modulaçao_banda_passante_simulink.png|780px]]
 
[[Arquivo:modulaçao_banda_passante_simulink.png|780px]]
  
Linha 18: Linha 26:
 
==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. O exemplo
+
Para realização da simulação, são necessários os '''Communications System Toolbox''' [http://www.mathworks.com/help/comm/index.html html], [http://www.mathworks.com/help/pdf_doc/comm/comm.pdf pdf] e '''DSP System Toolbox™''' [http://www.mathworks.com/help/dsp/index.html html], [http://www.mathworks.com/help/pdf_doc/dsp/dsp_ug.pdf pdf] fornecido pelo próprio Simulink. A seguir temos os blocos utilizados no modelo de simulação:
é realizado de acordo com o seguinte diagrama de blocos:
+
;Simulink
 
+
* [http://www.mathworks.com/help/simulink/slref/goto.html Goto];
 +
* [http://www.mathworks.com/help/simulink/slref/sum.html Sum];
 +
* [http://www.mathworks.com/help/simulink/slref/display.html Display];
 +
;Communications System Toolbox
 
* [http://www.mathworks.com/help/comm/ref/randomintegergenerator.html Random Integer Generator];
 
* [http://www.mathworks.com/help/comm/ref/randomintegergenerator.html Random Integer Generator];
 
* [http://www.mathworks.com/help/comm/ref/qpskmodulatorbaseband.html QPSK Modulator Baseband];
 
* [http://www.mathworks.com/help/comm/ref/qpskmodulatorbaseband.html QPSK Modulator Baseband];
* [http://www.mathworks.com/help/simulink/slref/goto.html Goto];
 
 
* [http://www.mathworks.com/help/comm/ref/raisedcosinetransmitfilter.html Raised Cosine Transmit Filter];
 
* [http://www.mathworks.com/help/comm/ref/raisedcosinetransmitfilter.html Raised Cosine Transmit Filter];
* Upconverter ([http://www.mathworks.com/help/simulink/slref/subsystem.html Subsystem)];
 
* [http://www.mathworks.com/help/simulink/slref/sum.html Sum];
 
* Interference ([http://www.mathworks.com/help/simulink/slref/subsystem.html Subsystem)];
 
* Upconverted Spectra ([http://www.mathworks.com/help/simulink/slref/subsystem.html Subsystem)];
 
 
* [http://www.mathworks.com/help/comm/ref/awgnchannel.html AWGN Channel];
 
* [http://www.mathworks.com/help/comm/ref/awgnchannel.html AWGN Channel];
* Downconverter ([http://www.mathworks.com/help/simulink/slref/subsystem.html Subsystem)];
 
 
* [http://www.mathworks.com/help/comm/ref/qpskdemodulatorbaseband.html QPSK Demodulator Baseband];
 
* [http://www.mathworks.com/help/comm/ref/qpskdemodulatorbaseband.html QPSK Demodulator Baseband];
* Compute BER ([http://www.mathworks.com/help/simulink/slref/subsystem.html Subsystem)];
 
* [http://www.mathworks.com/help/simulink/slref/display.html Display];
 
 
* [http://www.mathworks.com/help/comm/ref/constellationdiagram.html Constellation Diagram];
 
* [http://www.mathworks.com/help/comm/ref/constellationdiagram.html Constellation Diagram];
* Calculate RMS EVM ([http://www.mathworks.com/help/simulink/slref/subsystem.html Subsystem)];
 
* [http://www.mathworks.com/help/dsp/ref/spectrumanalyzer.html Spectrum Analyzer];
 
 
*[http://www.mathworks.com/help/comm/ref/eyediagramscope.html Eye Diagram].
 
*[http://www.mathworks.com/help/comm/ref/eyediagramscope.html Eye Diagram].
 +
;DSP System Toolbox
 +
* [http://www.mathworks.com/help/dsp/ref/spectrumanalyzer.html Spectrum Analyzer].
 +
;Subsistemas [http://www.mathworks.com/help/simulink/slref/subsystem.html Subsystem]
 +
* Upconverter;
 +
* Interference;
 +
* Upconverted Spectra;
 +
* Downconverter;
 +
* Compute BER;
 +
* Calculate RMS EVM.
  
 
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]]'''
Linha 43: Linha 53:
 
==Subsistemas==
 
==Subsistemas==
  
Alguns dos blocos do diagrama citado acima, correspondem a um conjunto de partes inter-relacionadas integrante de um sistema mais amplo, em outras palavras um subsistema. Os blocos utilizados em cada subsistema são especificados abaixo.
+
Alguns dos blocos do diagrama citado acima, correspondem a um conjunto de partes inter-relacionadas integrante de um sistema mais amplo, em outras palavras um subsistema. Os blocos utilizados em cada '''subsistema''' são especificados abaixo.
  
 
; Upconverter
 
; Upconverter
Linha 84: Linha 94:
 
* [http://www.mathworks.com/help/comm/ref/evmmeasurement.html EVM Measurement];
 
* [http://www.mathworks.com/help/comm/ref/evmmeasurement.html EVM Measurement];
  
==Modelo e parâmetros==
+
==Descrição do Modelo==
 
 
O modelo realiza a transmissão em banda passante de sinais modulados digitalmente por um canal ruidoso ou com desvanecimento por multipercurso (Rayleigh ou Rician). Ambos são combinados com uma interferência fora da faixa causadas por um tom processado com uma não-linearidade cúbica. A transmissão dos símbolso é realizado em ''frames''. 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:
 
  
 +
Este modelo mostra uma maneira simples para executar a modulação de banda passante, multiplicando um sinal complexo modulado com uma onda senoidal para transladar o sinal na frequência. Mais informações [https://www.mathworks.com/examples/simulink-communications/2826-passband-modulation]. O modelo realiza a transmissão em banda passante de sinais modulados digitalmente por um canal ruidoso ou com desvanecimento por multipercurso (Rayleigh ou Rician). Uma fonte de interferência pode ser combinada com o canal. A interferência tem uma não-linearidade cúbica que pode ser ativada ou desativada. Quando a não-linearidade está desligado, a interferência cai completamente fora de banda, mas quando ativada, o terceiro harmônico desta interferência é introduzido na banda desejada, causando interferência co-canal. A transmissão dos símbolos é realizado em ''frames''.
  
; Bloco Bernoulli Binary Generator :
+
==Parâmetros e Seleção das Configurações do Modelo==
 +
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:
 +
;Parâmetros do modelo:
 
* symbolRate -> Taxa de símbolos (bauds);
 
* symbolRate -> Taxa de símbolos (bauds);
* symbolPerFrame -> Número de símbolos por frame.
+
* symbolPerFrame -> Número de símbolos por frame;
 
 
; Bloco Modulador Baseband and Demodulator Baseband:
 
 
* Modulação digital utilizada -> Escolha da modulação usada (M-QAM,BPSK,QPSK,M-DPSK);
 
* Modulação digital utilizada -> Escolha da modulação usada (M-QAM,BPSK,QPSK,M-DPSK);
* M_ary -> Ordem da modulação.
+
* M_ary -> Ordem da modulação;
 
 
; Bloco Channel:
 
 
* maxDopplerShift -> Maximum Doppler shift of diffuse components (Hz);
 
* maxDopplerShift -> Maximum Doppler shift of diffuse components (Hz);
 
* delayVector -> Discrete delays of channel (s);
 
* delayVector -> Discrete delays of channel (s);
Linha 105: Linha 112:
 
* inputSignal -> Potência do sinal de entrada (watts);
 
* inputSignal -> Potência do sinal de entrada (watts);
 
* snr -> Relação sinal-ruído (SNR);
 
* snr -> Relação sinal-ruído (SNR);
* EbNo -> Relação sinal-ruído (Eb/No).
+
* EbNo -> Relação sinal-ruído (Eb/No);
 
 
; Bloco Interferer:
 
 
* Ativar/Desativar  interferencia não-linear;
 
* Ativar/Desativar  interferencia não-linear;
* fci -> Frequência do oscilador de interferência (Hz).
+
* fci -> Frequência do oscilador de interferência (Hz);
 
 
; Upconverter and Downconverter:
 
 
* fc -> Frequência do oscilador (Hz);
 
* fc -> Frequência do oscilador (Hz);
 
; Raised cosine filter:
 
 
* samplesPerSymbol -> Amostras por símbolo;
 
* samplesPerSymbol -> Amostras por símbolo;
  
 +
;Ver também: [[Dicas para o uso e configuração do Analisador de Espectros do Simulink]]
  
==Testes que podem ser feitos==
+
==Possibilidades de Testes==
  
 +
Os testes foram realizados nas versões 2014a e 2015a do software Matlab, funcionando perfeitamente nas mesmas. A seguir alguns testes que podem ser feitos com este modelo.
  
Os testes foram realizados nas versões 2014a e 2015a do software Matlab, funcionando perfeitamente nas mesmas. A seguir alguns testes que podem ser feitos com este modelo.
+
* Analise no dominio da frequência do sinal pós Upconverter e Downconverter;
 +
* Podemos ver o mapeamento dos bits modulados após o mesmo sofrer as degradações impostas pelo canal através de pontos em uma constelação pelo bloco  Received Constellation;
 +
* Outro teste válido é alterar o tipo de modulação utilizada para fins de comparação;
 +
* Observar a taxa de erro de bit, bem como o número de bits errados e transmitidos;
 +
* Observar o diagrama de olho dos símbolos transmitidos após os mesmos terem passado pelo canal;
 +
* Analisar a constelação dos símbolos transmitidos alterando da relação sinal-ruído com a simulação rodando para fins de comparação;
 +
* Observar o valor RMS do EVM(Error Vector Magnitude), que corresponde a diferença em vetores entre o sinal de entrada e o sinal recebido.
  
When the simulation runs, two spectrum analyzers and one scatter plot open.
+
Podemos ativar ou desativar a interfêrencia co-canal e observar as seguintes caracteristicas:
The first spectrum analyzer shows the signal and the interference signal at passband. With the nonlinearity turned off, the spectrum of the tone interferer falls outside the bandwidth of the desired signal. With the cubic nonlinearity on, the third harmonic of the interference falls into the band of the desired signal.
 
The second scope illustrates the signal after it has been downconverted back to baseband at the receiver, prior to the root raised cosine filtering. Note that with the nonlinearity on, you can see the interfering tone present with the baseband signal.
 
The third scope shows the scatter plot of the received signal, and by toggling the nonlinearity on and off, you can view the effect the interference has on the scatter plot. With the nonlinearity on, the signal constellation is more diffuse than when the nonlinearity is not present.
 
  
The model also contains two numerical displays. The first one displays the BER of the link. The BER calculation resets each time the nonlinearity is toggled on or off.
+
'''OFF'''
The second numerical display is the RMS Error Vector Magnitude (EVM).
 
  
;Experiências com o Exemplo
+
* Podemos ver após o processo de Upconverter, que no espectro esta interferência cai completamente fora da banda do sinal desejado.
  
School between on/off the nonlinearity on the interference signal. Observe the changes this has on the received spectrum, constellation, BER and EVM.
+
'''ON'''
By varying the Eb/No parameter, you can produce BER curves, and compare the results of the model with theoretical results. Note that the model achieves expected theoretical results[ 1 ] for QPSK with the nonlinearity off. Furthermore, you can see the effects the nonlinearity has on overall BER.
 
For further experimentation, try changing the value of the Eb/No parameter on the AWGN channel block, or changing the power of the interference signal. To change the power of the interference signal, open the Interference with Nonlinearity subsystem, and modify the gain value.
 
  
The Raised Cosine Transmit Filter and Raised Cosine Receive Filter blocks use a simple filtering method to perform pulse shaping. You can find an example showing more efficient pulse shaping implementations at: Pulse Shaping Filter Design
+
* Diante da não-linearidade, a terceira harmônica da interferência cai na banda do sinal desejado.
The Downconverter block uses a simple complex multiplication method to perform downconversion. You can find an example showing more efficient downconversion using IF subsampling at: IF Subsampling with Complex Multirate Filters
+
* Podemos observar após o processo de Downconverter, que no espectro você pode ver o tom de interferência presente com o sinal de banda base.

Edição atual tal como às 10h24min de 4 de fevereiro de 2016

Introdução

Na transmissão de dados banda base a sequência de dados de entrada é representada na forma de uma onda discreta modulada por amplitude de pulso que pode ser transmitida em um canal passa-baixa. O problema é quando deseja-se transmitir dados digitais em canais que a largura largura de banda é compartilhada por vários sistemas, como é o caso do canal de comunicação sem fio ou de satélite denominado canal passa-faixa. Assim, na transmissão de dados por um canal passa-faixa (bandpass modulation) optamos por trabalhar com uma estratégia onde a modulação dos pulsos é configurada ao redor de uma portadora senoidal cuja amplitude, fase ou freqüência é variada de acordo com a seqüência de dados contendo a informação. Deste modo torna-se possível, ao contrário da transmissão em banda base, enviar dados de diversas fontes distintas simultaneamente, configurando o denominado FDM (Multiplexação por Divisão de Frequência). Basicamente deslocamos o espectro do sinal para uma banda de frequêcia onde a atenuação do canal seja aceitável.

Modelo em Simulink

Modulaçao banda passante simulink.png

Primeiramente baixe o arquivo a seguir Sistema.zip (que é uma versão parametrizável daquele encontrado na pasta em /opt/MATLAB/R20xxx/toolbox/comm/commdemos). Descompacte e certifique-se que no Matlab você esteja no diretório onde descompactou o arquivo. Digite no terminal do Matlab:

open_system('bandpass_modulation')

ou

'bandpass_modulation'

Toolbox e blocos necessários

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

Simulink
Communications System Toolbox
DSP System Toolbox
Subsistemas Subsystem
  • Upconverter;
  • Interference;
  • Upconverted Spectra;
  • Downconverter;
  • Compute BER;
  • Calculate RMS EVM.

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

Subsistemas

Alguns dos blocos do diagrama citado acima, correspondem a um conjunto de partes inter-relacionadas integrante de um sistema mais amplo, em outras palavras um subsistema. Os blocos utilizados em cada subsistema são especificados abaixo.

Upconverter
Interference
Upconverted Spectra
Downconverter
Compute BER
Calculate RMS EVM

Descrição do Modelo

Este modelo mostra uma maneira simples para executar a modulação de banda passante, multiplicando um sinal complexo modulado com uma onda senoidal para transladar o sinal na frequência. Mais informações [1]. O modelo realiza a transmissão em banda passante de sinais modulados digitalmente por um canal ruidoso ou com desvanecimento por multipercurso (Rayleigh ou Rician). Uma fonte de interferência pode ser combinada com o canal. A interferência tem uma não-linearidade cúbica que pode ser ativada ou desativada. Quando a não-linearidade está desligado, a interferência cai completamente fora de banda, mas quando ativada, o terceiro harmônico desta interferência é introduzido na banda desejada, causando interferência co-canal. A transmissão dos símbolos é realizado em frames.

Parâmetros e Seleção das Configurações do Modelo

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:

Parâmetros do modelo
  • symbolRate -> Taxa de símbolos (bauds);
  • symbolPerFrame -> Número de símbolos por frame;
  • Modulação digital utilizada -> Escolha da modulação usada (M-QAM,BPSK,QPSK,M-DPSK);
  • M_ary -> Ordem da modulação;
  • maxDopplerShift -> Maximum Doppler shift of diffuse components (Hz);
  • delayVector -> Discrete delays of channel (s);
  • gainVector -> Average path gains (dB);
  • LOSDopplerShift -> Doppler shift of line-of-sight component (Hz);
  • KFactor -> Ratio of specular power to diffuse power;
  • inputSignal -> Potência do sinal de entrada (watts);
  • snr -> Relação sinal-ruído (SNR);
  • EbNo -> Relação sinal-ruído (Eb/No);
  • Ativar/Desativar interferencia não-linear;
  • fci -> Frequência do oscilador de interferência (Hz);
  • fc -> Frequência do oscilador (Hz);
  • samplesPerSymbol -> Amostras por símbolo;
Ver também
Dicas para o uso e configuração do Analisador de Espectros do Simulink

Possibilidades de Testes

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

  • Analise no dominio da frequência do sinal pós Upconverter e Downconverter;
  • Podemos ver o mapeamento dos bits modulados após o mesmo sofrer as degradações impostas pelo canal através de pontos em uma constelação pelo bloco Received Constellation;
  • Outro teste válido é alterar o tipo de modulação utilizada para fins de comparação;
  • Observar a taxa de erro de bit, bem como o número de bits errados e transmitidos;
  • Observar o diagrama de olho dos símbolos transmitidos após os mesmos terem passado pelo canal;
  • Analisar a constelação dos símbolos transmitidos alterando da relação sinal-ruído com a simulação rodando para fins de comparação;
  • Observar o valor RMS do EVM(Error Vector Magnitude), que corresponde a diferença em vetores entre o sinal de entrada e o sinal recebido.

Podemos ativar ou desativar a interfêrencia co-canal e observar as seguintes caracteristicas:

OFF

  • Podemos ver após o processo de Upconverter, que no espectro esta interferência cai completamente fora da banda do sinal desejado.

ON

  • Diante da não-linearidade, a terceira harmônica da interferência cai na banda do sinal desejado.
  • Podemos observar após o processo de Downconverter, que no espectro você pode ver o tom de interferência presente com o sinal de banda base.