Você está na página 1de 3

Disciplina: ESTI015-17 – Comunicações Móveis

Professores: Murilo Bellezoni Loiola e Pedro Ivo da Cruz

Laboratório 2
Projeto de Sistemas OFDM
Prazo de entrega: 21/04/2023 - 23:59

1 Objetivos
• Estabelecer os parâmetros adequados para o funcionamento de um sistema OFDM;

2 Descrição do Notebook
O notebook fornecido (“Lab2.ipynb”) contém o código necessário para a realização do experimento. Ini-
cialmente são importados pacotes básicos e depois algumas funções são definidas. São elas:

• generate channel(symbol rate, pdp, delays): esta função recebe a taxa de sı́mbolos (symbol rate),
os valores de potência em dB do perfil de potência de atraso (pdp) e os valores de atraso (delays)
correspondentes, e retorna a resposta ao impulso do canal para aquele perfil de potência de atraso
e taxa de sı́mbolo.

• bin2gray(bi): função auxiliar para o modular QPSK.

• qpskmodulator(input bits): recebe uma sequência de bits e realiza a modulação QPSK.

• qpskdemodulator(input symbols): Recebe sı́mbolos QPSK e realiza a demodulação.

• compute ber(input bits, output bits): calcula a taxa de erro de bit (BER, do inglês bit error rate)
entre duas sequências de bits

• awgn(sig, SNR): adiciona ruı́do AWGN ao sinal sig de forma a atingir determinada SNR, dada em
dB.

• ber theory qpsk ofdm(EbNo): calcula a BER teórica para um sistema OFDM usando mapeamento
QPSK sobre um canal com desnavecimento Rayleigh.

Atenção: Estas funções são essenciais para a simulação do sistema OFDM e realização do
experimento corretamente. Não altere estas funções!!!!
Em seguida, são definidos os parâmetros gerais do sistema, como a taxa de sı́mbolo, a ordem da
modulação QPSK, que é 4, e o número de bits contidos em cada sı́mbolo QPSK. Não altere esta
célula.
Depois é definido o canal através do perfil de potência de atraso. Neste experimento será usado o
Extended Pedestrian A model (EPA), sugerido pelo padrão LTE. Também são definidos os valores de SNR
que serão usados na simulação, com o objetivo de traçar a curva da taxa de erro de bit. Não altere esta
célula.
Em seguida, tem-se as definições dos parâmetros do sistema OFDM, especificamente o número de
subportadoras utilizado (Nc) e o número de amostras usadas para o prefı́xo cı́clio (Ncp). Esta é a única
célula que deverá ser alterada no notebook.

1
Por fim, tem-se as definições de alguns parâmetros de simulação, como o número de sı́mbolos OFDM
que serão usados em cada realização (frame) da simulação e o número de frames que serão simulados. A
célula seguinte contém um código para mostrar um resumo dos parâmetros utilizados. Não altere estas
células.
A simulação de fato é rodada na célula seguinte, que contem o código simulando um transmissor
OFDM, o canal de comunicação sem-fio com ruı́do, o receptor OFDM e, por fim, o cálculo da BER. A
BER é coletada ao longo de vários frames e uma média é obtida no final. Não altere esta célula.
A última célula calcula a BER teórica para este sistema e traça as curvas teórica e do sistema OFDM
simulado. Não altere esta célula.

3 Instruções para o Experimento


1. Baixar do Moodle o arquivo “Lab2.ipynb” e subir ao Google Colab, que pode ser acessado em:
https://colab.research.google.com/.

2. Rode todas as células do notebook. Observe e compare as curvas teórica e do sistema OFDM
simulado.

3. Se julgar que existe um problema com o sistema OFDM em questão, explique qual é o problema e
o porquê de isto ser um problema.

4. Encontre os parâmetros necessários para que o sistema funcione corretamente. Justifique as escolhas
destes parâmetros e mostre as curvas resultantes.
IMPORTANTE: Ajuste apenas os parâmetros de número de subportadoras e número de amostras
do prefı́xo cı́clico. A largura de banda e o uso de mapeamento QPSK são requisitos do sistema e
não devem ser alterados.

Dicas:

• A curva do sistema OFDM deve ser o mais próxima possı́vel da curva teórica.

• Embora seja possı́vel obter valores de BER do sistema OFDM simulado que bata exatamente com
a curva teórica, algo que se aproxime da curva teórica já é o suficiente.

• Com isto em mente, atente-se ao overhead devido ao prefı́xo cı́clico. Um maior overhead distanciará
mais a curva de BER do sistema simulado da curva teórica. Uma overhead em torno de 30% é
recomendado.

• Lembre-se de usar número de subportadoras que seja uma potência de 2, pois a FFT e a IFFT são
mais eficientes computacionalmente para estes valores.

• Maiores números de subportadoras resultam em uma simulação mais lenta, pois mais dados pre-
cisarão ser processados para obter os valores médios de BER. Tenha paciência.

• Lembre-se sempre de alterar somente o número de portadoras e o número de amostras do prefı́xo


cı́clico.

4 Instruções para elaboração de relatório


• Façam a atividade em grupos de 3 a 5 pessoas (o Google Colab permite compartilhar o notebook).
Somente um integrante de cada grupo deve submeter os arquivos do relatório no moodle.

• Não é necessário escrever introdução, objetivos e metodologia.

2
• Escreva de forma clara e objetiva, justificando os cálculos, análises e conclusões.

• Escreva um texto. Não escreva um relatório em forma de tópicos.

• Referencie as figuras e tabelas que incluir no relatório.

• Não coloque código no relatório.

• As perguntas colocadas neste roteiro são apenas um guia para ajudar a analisar os resultados obtidos.
Embora as respostas para estas perguntas devem estar de alguma forma no relatório, não elabore o
seu relatório no formato “pergunta e resposta”.

• Submeta o relatório em formato PDF.

• Submeta juntamente o arquivo notebook utilizado para as análises realizadas, contendo todos os
códigos necessários para chegar aos resultados mostrados no relatório.

• Garanta que todo o código esteja rodando no Google Colab, sem usar pacotes adicionais aos que já
estão sendo utilizados. Se o código não rodar ou apresentar errors, seu relatório não será avaliado.

Você também pode gostar