Uploaded by ismaelbecker90

OFDM

advertisement
UNIVERSIDAD NACIONAL DE MISIONES
Universidad Nacional de Misiones
FACULTAD DE INGENIERÍA
Carrera:
Ingeniería en Computación
Tema:
Trabajo Integrador para la aprobación de materias
Comunicación de Datos (IC323) y Señales y Sistemas
(IC324)
Estudiante:
●
Becker, Ismael
●
Ing. Moya, Sergio Eduardo
●
Dr. Ing. Kolodziej, Javier Ernesto
Docentes:
Fecha de presentación: 13/12/23
2
Índice:
Objetivo
3
Consigna y puntos a resolver
3
Desarrollo
4
1) Simular la tasa de error de un sistema de comunicación por OFDM con simetría hermitiana y canal de
ganancia unitaria corrompido por AWGN para la constelación de datos solicitada.
4
Modulación
4
Envío por un canal de comunicación con ruido
6
Demodulación
6
Simulación
7
2) Investigar y explicar a qué valor de error máximo (en el BER) converge el sistema para SNR bajas y si
este valor cambia en función al tipo de constelación de datos utilizada en la modulación.
9
Simulación:
9
3) Graficar el espectro de la señal presente en el canal, previo a la adición de ruido. Debe respetar la
frecuencia de muestreo del sistema e indicar en el gráfico el ancho de banda utilizado en la transmisión.
10
4) Investigue qué es el PAPR (Peak-to-Average Power Ratio) y calcule cuánto vale para el sistema
simulado.
11
5) Investigar y explicar el motivo de uso de un prefijo cíclico en el enlace ¿La tasa de error de ambos
esquemas cambia cuando se modifica el prefijo cíclico?
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
11
3
Objetivo
Simular y fundamentar el funcionamiento conceptual de un sistema de comunicación OFDM con canal ideal
corrompido por ruido blanco con distribución gaussiana (AWGN). Las especificaciones del modulador son
las siguientes:
●
Bloque FFT: 1024
●
Número de portadoras activas: 165
●
Primera portadora activa: 30
●
Prefijo cíclico: 20 símbolos.
●
Frecuencia de muestreo del sistema: 15 MHz.
El objetivo principal es evaluar el desempeño del sistema mediante la tasa de error (BER) para un tipo de
codificación de datos equivalente a BPSK y cuya constelación se muestra a continuación:
Consigna y puntos a resolver
Debe responder al máximo de detalle posible cada una de las siguientes preguntas, siendo particularmente
claro en sus respuestas y agregando gráficas en aquellos casos que sea necesario.
1) Simular la tasa de error de un sistema de comunicación por OFDM con simetría hermitiana y canal de
ganancia unitaria corrompido por AWGN para la constelación de datos solicitada.
2) Investigar y explicar a qué valor de error máximo (en el BER) converge el sistema para SNR bajas y si este
valor cambia en función al tipo de constelación de datos utilizada en la modulación.
3) Graficar el espectro de la señal presente en el canal, previo a la adición de ruido. Debe respetar la
frecuencia de muestreo del sistema e indicar en el gráfico el ancho de banda utilizado en la transmisión.
4) Investigue qué es el PAPR (Peak-to-Average Power Ratio) y calcule cuánto vale para el sistema simulado.
5) Investigar y explicar el motivo de uso de un prefijo cíclico en el enlace ¿La tasa de error de ambos
esquemas cambia cuando se modifica el prefijo cíclico?
6) Investigue qué es y cómo se calcula la tasa de bits y cómo se relaciona con la velocidad de transmisión
para sistemas BPSK y 4-PSK. En el caso de las especificaciones del sistema, ¿Cuánto vale la tasa de bits y
velocidad de información?
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
4
Desarrollo
1) Simular la tasa de error de un sistema de comunicación por OFDM con simetría hermitiana y canal de
ganancia unitaria corrompido por AWGN para la constelación de datos solicitada.
La simulación se ha realizado en Python. A continuación, se desarrolla una detallada explicación del
funcionamiento en lo respectivo a esta consigna.
En primer lugar, se declararon todas las constantes iniciales para la simulación.
Posteriormente se crea una Matriz de dimensiones FFTSize x FFTSize*k que contiene FFTSize*k filas de
bloques de longitud FFTSize. Cada elemento de los bloques son 1, 0 o -1 dispuestos de forma tal que se
cumpla con la simetría hermitiana:
Modulación
Una vez creada esta matriz, se aplicó la IFFT a todos los bloques, obteniendo una nueva matriz con las
mismas dimensiones, pero donde los elementos son resultado de la aplicación de la IFFT, y como en este caso
la matriz de entrada tiene simetría hermitiana en cada fila, los elementos en la nueva matriz son números
reales.
A esta nueva matriz se le modifican sus filas (bloques), con el fin de lograr la aplicación del prefijo cíclico. En
primer lugar se concatenan los últimos Pc elementos de cada bloque a su inicio, y los primeros ws bloques a
su final.
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
5
Después, se crea una segunda matriz de iguales dimensiones, que tiene en cada bloque como primeros ws
elementos a los primeros ws elementos de la ventana de hann, en forma ascendente desde 0 hasta llegar a 1;
los últimos ws elementos de cada bloque son los últimos ws elementos de la ventana de hann, de forma
descendente desde 1 hasta llegar a 0.
Entonces se realiza la multiplicación entre los bloques de estas 2 matrices de iguales dimensiones,
obteniendo así una copia de la primera matriz en multiplicación, con sus extremos atenuados por la ventana,
pero con los bloques centrales de dimensión FFTsize intactos.
Una vez realizada esta multiplicación, se realiza la segmentación de todas las filas de esta matriz resultante, y
se disponen los bloques en serie sobre un único vector de longitud (Pc + FFTsize + ws) * FFTsize * k. Este
vector es inicializado con ceros, y los bloques son dispuestos de forma tal que su primeros Pc elementos se
suman con los últimos ws elementos del bloque anterior, es decir, existe un solapamiento y una suma entre
los elementos de los bloques al disponerse sobre el nuevo vector.
Este solapamiento reduce las dimensiones de cada bloque, dado que los últimos ws elementos de cada
bloque se terminan sumando con los primeros ws elementos del Pc del bloque siguiente, y como ws es
menor que Pc, los elementos del ws del bloque anterior permanecen solapados sobre el Pc del bloque
siguiente. Las dimensiones de los bloques pasan de ser Pc + FFTsize + ws a simplemente Pc +FFTsize. Este
comportamiento se repite hasta llegar al último bloque, que como no existe un bloque siguiente que
superponga sus últimos ws elementos, es el único bloque que permanecerá con dimensión Pc + FFTsize +
ws, pero que forzosamente más adelante perderá su últimos ws elementos, y de esta forma poseerá la misma
nueva dimensión que los demás.
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
6
Envío por un canal de comunicación con ruido
Este vector contiene la señal a enviar por el canal de comunicación. Durante esta transferencia se contempla
la suma del ruido, que modifica los valores originales de los elementos sobre la señal en serie
Demodulación
Se recibe la señal en serie, a la que se adicionó el ruido.
Producto de la reducción en la longitud de los FFTsize*k bloques, se pudo observar que desde la posición
(Pc + FFTsize + ws) * (FFTsize * k - 1) + (Pc + FFTsize + ws) en adelante, todos los elementos del vector de
bloques en serie, eran originalmente ceros, antes de la adición del ruido.
Como se redujo la longitud de cada bloque, se recorta la señal a un tamaño para que pueda paralizarse en
bloques de longitud Pc + FFTSize. Este recorte sobre la señal da como resultado lo siguiente:
Entonces ahora se procede a la paralelización de la señal recibida, en FFTsize*k bloques de longitud Pc
FFTsize:
Y se recorta el Prefijo Cíclico, obteniendo FFTsize*k bloques de longitud FFTsize:
En este punto, se realiza el paso al dominio de la frecuencia de todos los bloques, obteniendo entonces una
matriz de bloques, que dependiendo de cuánto haya sido la potencia del ruido aplicado sobre la señal cuando
fue transferida en el canal, se parecerá más o menos a la matriz de bloques IFFT inicial:
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
7
Entonces, se procede a almacenar los elementos ubicados únicamente sobre las portadoras activas, en las
matrices de bloques IFFT enviados y recibidos:
La segmentación se realiza en ambas matrices, y en cada caso se obtendrán matrices de estas dimensiones.
Se comparan los signos de las filas (bloques) de ambas matrices, elemento por elemento, y se cuentan la
cantidad de coincidencias.
Finalmente, el BER (Bit Error Rate), es calculado en función de la cantidad de coincidencias determinada, y la
cantidad de elementos en cuestión (FFTsize*k*Nc).
Simulación
Al ejecutar el código de Python, con las constantes iniciales indicadas, podemos obtener la siguiente
simulación:
●
Para SNR = 110 dB: se tiene una relación en dB que indica que la potencia de la señal es mucho
mayor que la del ruido, por lo que la diferencia entre los bloques enviados y recibidos es
prácticamente nula. En la imagen a continuación se puede ver como ejemplo la comparación entre el
primer bloque enviado y el primer bloque recibido. Tenga en cuenta que como estos existen 1023
(FFTsize*k-1)pares de bloques más que se generaron durante la ejecución del código, y que han sido
tenidos en cuenta para el cálculo del BER.
El BER total calculado para este caso, con SNR = 110 dB ha sido:
Esto indica que no existen diferencias entre todos los elementos de los 1024 bloques enviados y recibidos. El
cálculo del BER en el código tiene en cuenta todos los bloques en cuestión, pero en la gráfica solo se están
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
8
visualizando la emisión y la recepción del primer bloque.
●
Para SNR = 30 dB: Se redujo el valor de la SNR, esto trae como consecuencia una mayor potencia del
ruido por lo que los bloques enviados y los recibidos comienzan a diferir.
Aun así, dado que el cálculo del BER solo toma las portadoras activas y el signo de los elementos, el BER no es
demasiado alto, siendo:
●
Para SNR = -10 dB: Se redujo aún más el valor de la SNR, por lo que la potencia del ruido se
incrementa. Podemos observar que existe una diferencia de gran medida entre el primer bloque
enviado y el primer bloque recibido:
En este caso, el BER determinado resulta significativamente alto. La diferencia entre el primer bloque
enviado y el primer bloque recibido es máxima:
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
9
2) Investigar y explicar a qué valor de error máximo (en el BER) converge el sistema para SNR bajas y si este
valor cambia en función al tipo de constelación de datos utilizada en la modulación.
Para este punto en la simulación se realizó un proceso de variación de la SNR entre -25 dB y 50 dB, teniendo
en cuenta la misma señal de bloques en serie. Se procedió a demodular esta señal de la forma descrita
anteriormente, pero considerando la SNR en cuestión. Finalmente se hizo el contraste de los bloques
demodulados con los bloques enviados (los bloques enviados son los mismos para todas las comparaciones,
solamente van cambiando los bloques demodulados), se calcula el BER y se registra para qué valor de SNR
corresponde.
La ejecución total de este proceso es tardía, puesto que como se varía la SNR entre -25 dB y 50 dB, la
computadora 76 veces debe: demodular la señal, y comparar los elementos de 2 matrices de 165x1024,
determinar el BER, y registrar este valor para finalmente generar un gráfico que represente la evolución del
BER respecto de la SNR.
Simulación:
Al ejecutar el código con las constantes iniciales de la consigna, y luego de esperar a que se concluya el
proceso el gráfico obtenido es el siguiente:
Se puede apreciar la tendencia del BER hacia 0,5 mientras más negativa es la SNR. Tiene sentido que ese sea
el máximo de la curva, puesto que al estar analizando vectores con elementos que pueden alternar entre 2
valores, por máxima que sea la distorsión de la señal, y por ende, mayor sea la diferencia entre los bloques
recibidos y enviados, la probabilidad de existencia de elementos en común, será del 50%.
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
10
Este valor varía en función del tipo de constelación de datos a enviar. En el gráfico siguiente podemos
observar una comparación entre curvas de BER para distintos tipos de constelaciones:
Podemos concluir que constelaciones más densas son más sensibles al ruido, dado que si comparamos los
gráficos para un mismo valor de SNR, podemos ver que mientras mayor sea la densidad de la constelación,
mayor es el valor del BER, y que, en consecuencia, mayor será el valor al que finalmente tienda la curva.
3) Graficar el espectro de la señal presente en el canal, previo a la adición de ruido. Debe respetar la
frecuencia de muestreo del sistema e indicar en el gráfico el ancho de banda utilizado en la transmisión.
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
11
Se grafica el espectro de la señal presente en el canal, previo a la adición del ruido, teniendo en cuenta la
frecuencia de muestreo Fs, y es por esta razón, que el espectro simétrico respecto del eje vertical, es
representado hasta Fs/2, que en este caso es igual a 7.5 MHz.
El Ancho de Banda se calcula como:
4) Investigue qué es el PAPR (Peak-to-Average Power Ratio) y calcule cuánto vale para el sistema simulado.
El PAPR, que se traduce como "Relación de Potencia Pico a Promedio", se usa para cuantificar la variación de
la potencia de la señal transmitida. Representa la relación entre la potencia máxima instantánea de la señal y
su valor promedio.
Un PAPR alto indica una mayor variabilidad en la amplitud de la señal, lo que implica picos de potencia más
altos en comparación con la potencia promedio. Esto trae consigo efectos negativos, como por ejemplo el
hecho de que la capacidad del canal puede estar limitada por una potencia máxima de transmisión, y picos de
potencia elevados pueden exceder los límites de potencia permitidos, resultando en una mayor probabilidad
de interferencia y afectando la calidad de la comunicación. Otro ejemplo de consecuencia negativa sería el
consumo energético en dispositivos alimentados por batería, dado que señales con picos elevados pueden
agotar rápidamente la energía de la batería debido a la necesidad de proporcionar suficiente potencia para
los momentos de pico.
Para su cálculo en el código se utilizó la fórmula:
Al ejecutar la simulación, con las constantes iniciales indicadas, obtenemos un valor del PAPR de:
5) Investigar y explicar el motivo de uso de un prefijo cíclico en el enlace ¿La tasa de error de ambos
esquemas cambia cuando se modifica el prefijo cíclico?
El prefijo cíclico es una técnica utilizada para mitigar los efectos de la interferencia intersímbolo (ISI), un
fenómeno que ocurre cuando los símbolos transmitidos se superponen en el dominio del tiempo y afectan
negativamente a la demodulación y recuperación de la información en el receptor. Este prefijo consiste en
copiar una porción del final de la secuencia de símbolos y pegarla al principio antes de transmitir la señal. El
propósito principal del prefijo cíclico es reducir la interferencia causada por los caminos de propagación
múltiple en los canales inalámbricos, y facilitar la detección de los símbolos en el receptor.
Cuando se utilizan prefijos cíclicos, se introducen beneficios en términos de detección y corrección de
errores. Estos prefijos permiten a los receptores identificar y corregir errores que puedan ocurrir durante la
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
12
transmisión de datos. Además, facilitan la sincronización, lo que significa que los dispositivos de recepción
pueden alinearse adecuadamente con la información transmitida.
En cuanto a la tasa de error, la presencia del prefijo cíclico puede afectarla. En teoría, la adición de un prefijo
cíclico mejora la capacidad de detección y corrección de errores, lo que debería resultar en una menor tasa
de errores. Si se modifica el prefijo cíclico, se experimentan cambios en la tasa de error. Un prefijo cíclico más
largo puede ofrecer una mejor capacidad de corrección de errores, pero también puede introducir una mayor
sobrecarga en términos de ancho de banda. Por otro lado, un prefijo cíclico más corto puede reducir la
sobrecarga, pero podría ser menos efectivo en términos de corrección de errores.
6) Investigue qué es y cómo se calcula la tasa de bits y cómo se relaciona con la velocidad de transmisión para
sistemas BPSK y 4-PSK. En el caso de las especificaciones del sistema, ¿Cuánto vale la tasa de bits y velocidad
de información?
La tasa de bits (bit rate) es la cantidad de bits transmitidos por unidad de tiempo y se mide en bits por
segundo (bps). La velocidad de transmisión (baud rate) es la cantidad de símbolos transmitidos por unidad
de tiempo y se mide en baudios. En el caso de BPSK , como cada símbolo es representado con un único bit (1
o 0) la tasa de bits es igual a la velocidad de transmisión. Pero en otros esquemas como 4-PSK, como cada
símbolo se constituye por 2 bits, la tasa de bits es 2 veces la velocidad de símbolos. Se concluye que la tasa de
bits es igual a la velocidad de símbolos, multiplicada por la cantidad de bits por símbolo.
Se tiene que:
Trabajo Integrador para la aprobación de materias Comunicación de Datos (IC323) y Señales y
Sistemas (IC324) - Becker Ismael
Download