Temario del curso
Resultados de este curso
Al finalizar este curso, el estudiante estará en capacidad de abordar muchos de los problemas de investigación abiertos actualmente en el campo de la ingeniería de comunicaciones, habiendo adquirido al menos las siguientes habilidades:
- Mapear y manipular expresiones matemáticas complejas frecuentes en la literatura de ingeniería de comunicaciones
- Capacidad de utilizar las funciones de programación de MATLAB para reproducir resultados de simulación de otros documentos o, al menos, aproximarlos.
- Crear modelos de simulación de ideas propias.
- Aplicar eficientemente las habilidades de simulación adquiridas en conjunto con las potentes capacidades de MATLAB para diseñar códigos optimizados en términos de tiempo de ejecución y ahorro de espacio de memoria.
- Identificar los parámetros clave de simulación de un sistema de comunicaciones dado, extraerlos del modelo del sistema y estudiar el impacto de estos parámetros en el rendimiento del sistema considerado.
Estructura del curso
El material proporcionado en este curso está altamente correlacionado. No se recomienda que un estudiante asista a un nivel a menos que haya asistido al nivel anterior y lo haya comprendido a fondo, para garantizar la continuidad del conocimiento adquirido. El curso está estructurado en tres niveles, desde la introducción a la programación en MATLAB hasta el nivel de simulación de sistemas completos, de la siguiente manera.
Matemáticas de comunicaciones con MATLAB
Sesiones 01-06
Al completar esta parte, el estudiante será capaz de evaluar expresiones matemáticas complicadas y construir fácilmente los gráficos adecuados para diferentes representaciones de datos, como gráficas de dominio de tiempo y frecuencia, gráficas de BER, patrones de radiación de antenas... etc.
Conceptos fundamentales
- El concepto de simulación
- La importancia de la simulación en ingeniería de comunicaciones
- MATLAB como entorno de simulación
- Sobre la representación de señales escalares en matemáticas de comunicaciones mediante matrices y vectores
- Representaciones matriciales y vectoriales de señales de banda base compleja en MATLAB
Escritorio de MATLAB
- Barra de herramientas
- Ventana de comandos
- Espacio de trabajo
- Historial de comandos
Declaración de variables, vectores y matrices
- Constantes predefinidas de MATLAB
- Variables definidas por el usuario
- Arreglos, vectores y matrices
- Introducción manual de matrices
- Definición de intervalos
- Espacio lineal
- Espacio logarítmico
- Reglas de nomenclatura de variables
Matrices especiales
- La matriz de unos
- La matriz de ceros
- La matriz identidad
Manipulación elemento a elemento y matriz a matriz
- Acceso a elementos específicos
- Modificación de elementos
- Eliminación selectiva de elementos (truncamiento de matrices)
- Añadir elementos, vectores o matrices (concatenación de matrices)
- Encontrar el índice de un elemento dentro de un vector o matriz
- Reformulación de matrices
- Truncamiento de matrices
- Concatenación de matrices
- Inversión de izquierda a derecha y de derecha a izquierda
Operadores unarios de matrices
- El operador Suma
- El operador de expectativa
- Operador Min
- Operador Max
- El operador traza
- Deteminante de matriz |.|
- Inversa de matriz
- Transpuesta de matriz
- Hermitiana de matriz
Operaciones binarias de matrices
- Operaciones aritméticas
- Operaciones relacionales
- Operaciones lógicas
Números complejos en MATLAB
- Representación de banda base compleja de señales de banda pasante y conversión hacia arriba de RF, una revisión matemática
- Formación de variables, vectores y matrices complejos
- Exponenciales complejas
- El operador de parte real
- El operador de parte imaginaria
- El operador conjugado (.)*
- El operador absoluto |.|
- El operador de argumento o fase
Funciones integradas de MATLAB
- Vectores de vectores y matriz de matrices
- La función raíz cuadrada
- La función signo
- La función de "redondeo a entero"
- La función de "entero inferior más cercano"
- La función de "entero superior más cercano"
- La función factorial
- Funciones logarítmicas (exp, ln, log10, log2)
- Funciones trigonométricas
- Funciones hiperbólicas
- La función Q(. )
- La función erfc(. )
- Funciones de Bessel Jo (.)
- La función Gamma
- Comandos diff, mod
Polinomios en MATLAB
- Polinomios en MATLAB
- Funciones racionales
- Derivadas polinómicas
- Integración polinómica
- Multiplicación polinómica
Gráficas de escala lineal
- Representaciones visuales de señales de tiempo continuo y amplitud continua
- Representaciones visuales de señales aproximadas en escalera
- Representaciones visuales de señales de tiempo discreto y amplitud discreta
Gráficas de escala logarítmica
- Gráficas dB-decada (BER)
- Gráficas década-dB (gráficas de Bode, respuesta en frecuencia, espectro de señal)
- Gráficas década-decada
- Gráficas dB-lineales
Gráficas polares 2D
- (patrones de radiación de antenas planares)
Gráficas 3D
- Patrones de radiación 3D
- Gráficas paramétricas cartesianas
Sección opcional (ofrecida según la demanda de los aprendices)
- Diferenciación simbólica y numérica en MATLAB
- Integración simbólica y numérica en MATLAB
- Ayuda y documentación de MATLAB
Archivos de MATLAB
- Archivos de guion de MATLAB
- Archivos de función de MATLAB
- Archivos de datos de MATLAB
- Variables locales y globales
Bucles, condiciones de flujo de control y toma de decisiones en MATLAB
- El bucle for end
- El bucle while end
- La condición if end
- Las condiciones if else end
- La sentencia switch case end
- Iteraciones, errores convergentes, operadores de suma multidimensionales
Comandos de entrada y salida de visualización
- El comando input(' ')
- Comando disp
- Comando fprintf
- Caja de mensaje msgbox
Operaciones de señales y sistemas
Sesiones 07-14
Los principales objetivos de esta parte son los siguientes
- Generar señales de prueba aleatorias necesarias para probar el rendimiento de diferentes sistemas de comunicación
- Integrar muchas operaciones elementales de señal que pueden combinarse para implementar una única función de procesamiento de comunicaciones, como codificadores, aleatorizadores, entrelazadores, generadores de códigos de difusión... etc., tanto en el transmisor como en sus contrapartes en el receptor.
- Interconectar estos bloques adecuadamente para lograr una función de comunicaciones
- Simulación de modelos de canal estrecha banda deterministas, estadísticos y semi-aleatorios, tanto interiores como exteriores
Generación de señales de prueba de comunicaciones
- Generación de una secuencia binaria aleatoria
- Generación de secuencias enteras aleatorias
- Importación y lectura de archivos de texto
- Lectura y reproducción de archivos de audio
- Importación y exportación de imágenes
- Imagen como matriz 3D
- Transformación de RGB a escala de grises
- Flujo de bits serial de una imagen a escala de grises 2D
- Sudivisión de señales de imagen y reconstrucción
Condicionamiento y manipulación de señales
- Escala de amplitud (ganancia, atenuación, normalización de amplitud... etc.)
- Cambio de nivel de corriente continua
- Escala de tiempo (compresión, rarefacción)
- Desplazamiento de tiempo (retardo, avance, desplazamiento circular izquierdo y derecho)
- Medición de la energía de la señal
- Normalización de energía y potencia
- Escala de energía y potencia
- Conversión serial-paralela y paralela-serial
- Multiplexación y demultiplexación
Digitalización de señales analógicas
- Muestreo de señales de banda base de tiempo continuo en el dominio del tiempo en MATLAB
- Cuantificación de amplitud de señales analógicas
- Codificación PCM de señales analógicas cuantificadas
- Conversión decimal-binaria y binaria-decimal
- Formación de pulsos
- Cálculo del ancho de pulso adecuado
- Selección del número de muestras por pulso
- Convolución usando los comandos conv y filter
- Autocorrelación y correlación cruzada de señales limitadas en el tiempo
- Operaciones de Transformada Rápida de Fourier (FFT) y FFT inversa
- Visualización del espectro de una señal de banda base
- Efecto de la tasa de muestreo y la ventana de frecuencia adecuada
- Relación entre las operaciones de convolución, correlación y FFT
- Filtrado en el dominio de la frecuencia, solo filtrado paso bajo
Funciones auxiliares de comunicaciones
- Aleatorizadores y desaleatorizadores
- Puncturizers y depuncturizers
- Codificadores y decodificadores
- Entrelazadores y desentrelazadores
Moduladores y demoduladores
- Esquemas de modulación digital de banda base en MATLAB
- Representación visual de señales moduladas digitalmente
Modelado y simulación de canal
- Modelado matemático del efecto del canal en la señal transmitida
- Adición – canales de ruido blanco gaussiano aditivo (AWGN)
- Multiplicación en el dominio del tiempo – canales de desvanecimiento lento, desplazamiento Doppler en canales vehiculares
- Multiplicación en el dominio de la frecuencia – canales de desvanecimiento selectivo en frecuencia
- Convolución en el dominio del tiempo – respuesta al impulso del canal
Ejemplos de modelos de canal deterministas
- Pérdida de trayectoria en espacio libre y pérdida de trayectoria dependiente del entorno
- Canales de bloqueo periódico
Caracterización estadística de canales de desvanecimiento multitrAMO estacionarios y cuasi-estacionarios comunes
- Generación de una RV distribuida uniformemente
- Generación de una RV gaussiana de valor real
- Generación de una RV gaussiana compleja
- Generación de una RV distribuida por Rayleigh
- Generación de una RV distribuida por Ricean
- Generación de una RV distribuida lognormalmente
- Generación de una RV distribuida arbitrariamente
- Aproximación de una función de densidad de probabilidad (PDF) desconocida de una RV mediante un histograma
- Cálculo numérico de la función de distribución acumulada (CDF) de una RV
- Canales AWGN de ruido blanco gaussiano aditivo real y complejo
Caracterización de canal por su perfil de retardo de potencia
- Caracterización de canal por su perfil de retardo de potencia
- Normalización de potencia del PDP
- Extracción de la respuesta al impulso del canal desde el PDP
- Muestreo de la respuesta al impulso del canal con una tasa de muestreo arbitraria, muestreo y retardo no coincidentes
- Cuantización
- El problema del muestreo no coincidente de la respuesta al impulso del canal en canales de banda estrecha
- Muestreo de un PDP con una tasa de muestreo arbitraria y compensación de retardo fraccional
- Implementación de varios modelos de canal interiores y exteriores estandarizados por IEEE
- (COST – SUI - Modelos de canal Ultra Wide Band... etc.)
Simulación de nivel de enlace de sistemas de comunicaciones prácticos
Sesiones 15-24
Esta parte del curso se ocupa de la cuestión más importante para estudiantes de investigación, que es cómo reproducir los resultados de simulación de otros documentos publicados mediante simulación.
Rendimiento de Tasa de Error de Bit de Esquemas de Modulación Digital de Banda Base
- Comparación de rendimiento de diferentes esquemas de modulación digital de banda base en canales AWGN (estudio comparativo exhaustivo mediante simulación para verificar expresiones teóricas); diagramas dispersos, tasa de error de bit
- Comparación de rendimiento de diferentes esquemas de modulación digital de banda base en diferentes canales de desvanecimiento estacionarios y cuasi-estacionarios; diagramas dispersos, tasa de error de bit (estudio comparativo exhaustivo mediante simulación para verificar expresiones teóricas)
- Impacto de los canales de desplazamiento Doppler en el rendimiento de los esquemas de modulación digital de banda base; diagramas dispersos, tasa de error de bit
- Comunicaciones helicóptero-satélite
- Paper (1): Sistema de voz y datos en tiempo real de bajo costo para Servicio Móvil de Satélites Aeronáuticos (AMSS) – Enunciado del problema y análisis
- Paper (2): Combinación de diversidad temporal pre-detección con AFC preciso para comunicaciones de satélites de helicópteros – La primera solución propuesta
- Paper (3): Un esquema de modulación adaptativa para comunicaciones helicóptero-satélite – Un enfoque de mejora de rendimiento
Simulación de sistemas de espectro expandido
- Arquitectura típica de sistemas basados en espectro expandido
- Sistemas basados en espectro expandido de secuencia directa
- Generadores de secuencia binaria pseudo aleatoria (PBRS)
- Generación de secuencias de longitud máxima
- Generación de códigos Gold
- Generación de códigos Walsh
- Sistemas basados en espectro expandido de salto en tiempo
- Rendimiento de Tasa de Error de Bit de sistemas basados en espectro expandido en canales AWGN
- Impacto de la tasa de codificación r en el rendimiento de BER
- Impacto de la longitud del código en el rendimiento de BER
- Rendimiento de Tasa de Error de Bit de sistemas basados en espectro expandido en canales de desvanecimiento Rayleigh lento multipath con desplazamiento Doppler cero
- Análisis de rendimiento de tasa de error de bit de sistemas basados en espectro expandido en entornos de desvanecimiento de alta movilidad
- Análisis de rendimiento de tasa de error de bit de sistemas basados en espectro expandido en presencia de interferencia multiusuario
- Transmisión de imágenes RGB sobre sistemas de espectro expandido
- Sistemas de CDMA óptico (OCDMA)
- Códigos ópticos ortogonales (OOC)
- Límites de rendimiento de sistemas OCDMA; rendimiento de tasa de error de bit de sistemas OCDMA síncronos y asíncronos
Sistemas SS de banda ultra ancha
Sistemas basados en OFDM
- Implementación de sistemas OFDM usando la Transformada Rápida de Fourier
- Arquitectura típica de sistemas basados en OFDM
- Rendimiento de Tasa de Error de Bit de Sistemas OFDM en canales AWGN
- Impacto de la tasa de codificación r en el rendimiento de BER
- Impacto del prefijo cíclico en el rendimiento de BER
- Impacto del tamaño de FFT y el espaciado de subportadoras en el rendimiento de BER
- Rendimiento de Tasa de Error de Bit de Sistemas OFDM en canales de desvanecimiento Rayleigh lento multipath con desplazamiento Doppler cero
- Rendimiento de Tasa de Error de Bit de Sistemas OFDM en canales de desvanecimiento Rayleigh lento multipath con CFO
- Estimación de canal en sistemas OFDM
- Igualización en el dominio de la frecuencia en sistemas OFDM
- Iguizador Zero Forcing
- Iguizadores MMSE
- Otras métricas comunes de rendimiento en sistemas basados en OFDM (Relación de Potencia Pico a Promedio, Relación de Portadora a Interferencia... etc.)
- Análisis de rendimiento de sistemas basados en OFDM en entornos de desvanecimiento de alta movilidad (como proyecto de simulación consistente en tres documentos)
- Paper (1): Mitigación de interferencia entre portadoras
- Paper (2): Sistemas MIMO-OFDM
Optimización de un proyecto de simulación de MATLAB
El objetivo de esta parte es aprender cómo construir y optimizar un proyecto de simulación de MATLAB para simplificar y organizar el proceso de simulación general. Además, se consideran el espacio de memoria y la velocidad de procesamiento para evitar problemas de desbordamiento de memoria en sistemas con almacenamiento limitado o tiempos de ejecución largos causados por procesamiento lento.
- Estructura típica de proyectos de simulación a pequeña escala
- Extracción de parámetros de simulación y mapeo de teórico a simulación
- Construcción de un proyecto de simulación
- Técnica de simulación Monte Carlo
- Un procedimiento típico para probar un proyecto de simulación
- Técnicas de gestión del espacio de memoria y reducción del tiempo de simulación
- Simulación de banda base vs. banda pasante
- Cálculo del ancho de pulso adecuado para formas de pulso arbitrarias truncadas
- Cálculo del número adecuado de muestras por símbolo
- Cálculo del Número Necesario y Suficiente de Bits para Probar un Sistema
Programación GUI
Tener un código de MATLAB libre de depuraciones y funcionando correctamente para producir resultados correctos es un gran logro. Sin embargo, un conjunto de parámetros clave en un proyecto de simulación controla el. Por esta razón y otras, se imparte una clase adicional de "Programación de Interfaz Gráfica de Usuario (GUI)" para llevar el control sobre varias partes de su proyecto de simulación en la punta de sus dedos en lugar de bucear en largos códigos fuente llenos de comandos. Además, tener su código de MATLAB enmascarado con una GUI ayuda a presentar su trabajo de una manera que facilita combinar múltiples resultados en una ventana maestra y hace más fácil comparar datos.
- Qué es una GUI de MATLAB
- Estructura del archivo de función GUI de MATLAB
- Componentes principales de GUI (propiedades y valores importantes)
- Variables locales y globales
Nota: Los temas cubiertos en cada nivel de este curso incluyen, pero no se limitan a, los enunciados en cada nivel. Además, los elementos de cada lección particular están sujetos a cambios dependiendo de las necesidades de los aprendices y sus intereses de investigación.
Requerimientos
Para adquirir el vasto conocimiento contenido en este curso, los estudiantes deben tener un conocimiento general de lenguajes y técnicas de programación comunes. Se recomienda fuertemente una comprensión profunda de los cursos de pregrado en ingeniería de telecomunicaciones.
Reseñas (2)
Que conocí temas que no sabía
Ernesto Alonso Ocana Valenzuela - Instituto Tecnologico Superior de Comalcalco
Curso - Introduction to Image Processing using Matlab
Muchos ejercicios útiles, bien explicados
Helene Meadows - European Investment Bank
Curso - MATLAB Programming
Traducción Automática