Temario del curso
Resultados de este curso
Al finalizar este curso, el estudiante debe ser capaz de abordar muchos de los problemas de investigación abiertos actualmente en el campo de la ingeniería de comunicaciones, ya que debe haber adquirido al menos las siguientes habilidades:
- Mapear y manipular expresiones matemáticas complejas que aparecen frecuentemente en la literatura de ingeniería de comunicaciones
- Capacidad para utilizar las funciones de programación ofrecidas por MATLAB con el fin de reproducir los resultados de simulación de otros trabajos o, al menos, aproximarse a ellos.
- Crear modelos de simulación para ideas propias.
- Utilizar eficientemente las habilidades de simulación adquiridas en conjunto con las potentes capacidades de MATLAB para diseñar códigos MATLAB optimizados en términos de tiempo de ejecución, ahorrando al mismo tiempo 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 es extremadamente correlacionado. No se recomienda que un estudiante asista a un nivel a menos que haya asistido y comprendido profundamente el nivel anterior, a fin de garantizar la continuidad del conocimiento adquirido. El curso está estructurado en tres niveles, comenzando desde una 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 complejas y construir fácilmente los gráficos adecuados para diferentes representaciones de datos, como representaciones en el dominio del tiempo y de la frecuencia; gráficos de BER (tasa de error de bits), patrones de radiación de antenas, etc.
Conceptos fundamentales
- El concepto de simulación
- La importancia de la simulación en la ingeniería de comunicaciones
- MATLAB como entorno de simulación
- Sobre la representación de matrices y vectores de señales escalares en matemáticas de comunicaciones
- Representación de matrices y vectores de señales en banda base compleja en MATLAB
Escritorio de MATLAB
- Barra de herramientas
- Ventana de comandos
- Área de trabajo
- Historial de comandos
Declaración de variables, vectores y matrices
- Constantes predefinidas en MATLAB
- Variables definidas por el usuario
- Arreglos, vectores y matrices
- Entrada 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 por elementos y por matriz
- Acceso a elementos específicos
- Modificación de elementos
- Eliminación selectiva de elementos (Truncamiento de matriz)
- Adición de elementos, vectores o matrices (Concatenación de matrices)
- Búsqueda del índice de un elemento dentro de un vector o una matriz
- Redimensionamiento de matrices
- Truncamiento de matrices
- Concatenación de matrices
- Inversión de izquierda a derecha y de derecha a izquierda
Operadores unarios de matriz
- El operador Suma
- El operador Esperanza
- Operador Mínimo
- Operador Máximo
- El operador Trazo
- Deteminante de matriz |.|
- Inversa de matriz
- Transpuesta de matriz
- Hermitiana de matriz
Operaciones binarias de matriz
- Operaciones aritméticas
- Operaciones relacionales
- Operaciones lógicas
Números complejos en MATLAB
- Representación en banda base compleja de señales en banda de paso y conversión ascendente RF, una revisión matemática
- Formación de variables, vectores y matrices complejas
- Exponenciales complejas
- El operador parte real
- El operador parte imaginaria
- El operador conjugado (.)*
- El operador absoluto |.|
- El operador 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 "redondeo a entero"
- La función "entero inferior más cercano"
- La función "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 de polinomios
- Integración de polinomios
- Multiplicación de polinomios
Gráficos en escala lineal
- Representaciones visuales de señales de tiempo continuo-amplitud continua
- Representaciones visuales de señales aproximadas por escalones
- Representaciones visuales de señales de tiempo discreto – amplitud discreta
Gráficos en escala logarítmica
- Gráficos dB-década (BER)
- Gráficos década-dB (gráficos de Bode, respuesta en frecuencia, espectro de señal)
- Gráficos década-década
- Gráficos dB-lineal
Gráficos polares 2D
- (patrones de radiación planares de antenas)
Gráficos 3D
- Patrones de radiación 3D
- Gráficos paramétricos cartesianos
Sección opcional (ofrecida según la demanda de los aprendices)
- Diferenciación simbólica y diferenciación 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, flujo de control condicional 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 declaración switch-case-end
- Iteraciones, errores de convergencia, operadores de suma multidimensionales
Comandos de entrada y salida de visualización
- El comando input(' ')
- El comando disp
- El comando fprintf
- Cuadro de mensaje msgbox
Operaciones de Señales y Sistemas
Sesiones 07-14
Los objetivos principales de esta parte son los siguientes
- Generar señales de prueba aleatorias necesarias para probar el rendimiento de diferentes sistemas de comunicaciones
- Integrar muchas operaciones de señal elementales que pueden combinarse para implementar una única función de procesamiento de comunicación, como codificadores, aleatorizadores, entrelazadores, generadores de códigos de expansión, etc., tanto en el transmisor como en sus contrapartes en el terminal receptor.
- Interconectar estos bloques adecuadamente para lograr una función de comunicaciones
- Simulación de modelos de canal estrecho banda determinísticos, estadísticos y semialeatorios, tanto interiores como exteriores
Generación de señales de prueba de comunicaciones
- Generación de una secuencia binaria aleatoria
- Generación de secuencias de enteros 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 en escala de grises 2D
- Subencuadrado 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 CC
- Escala de tiempo (compresión temporal, rarefacción)
- Desplazamiento de tiempo (retraso de tiempo, adelanto de tiempo, desplazamiento circular temporal a la izquierda y a la derecha)
- 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 de serie a paralelo y de paralelo a serie
- Multiplexación y demultiplexación
Digitalización de Señales Analógicas
- Muestreo en el dominio del tiempo de señales en banda base de tiempo continuo en MATLAB
- Cuantización de amplitud de señales analógicas
- Codificación PCM de señales analógicas cuantizadas
- Conversión de decimal a binario y de binario a decimal
- Moldeo 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 de duración limitada
- Operaciones de Transformada Rápida de Fourier (FFT) e IFFT
- Visualización del espectro de una señal en 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
- Punturadores y despunturadores
- Codificadores y decodificadores
- Entrelazadores y desentrelazadores
Moduladores y desmoduladores
- Esquemas de modulación digital en 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 gaussiano blanco 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 determinísticos
- 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 Comunes Canales Estacionarios y Quasi-Estacionarios de Desvanecimiento Multipath
- Generación de una RV distribuida uniformemente
- Generación de una RV gaussiana distribuida con valor real
- Generación de una RV gaussiana distribuida con valor complejo
- Generación de una RV distribuida Rayleigh
- Generación de una RV distribuida Ricean
- Generación de una RV distribuida Lognormalmente
- Generación de una RV con distribución arbitraria
- Aproximación de una función de densidad de probabilidad (PDF) desconocida de una RV por un histograma
- Cálculo numérico de la función de distribución acumulada (CDF) de una RV
- Canales de ruido gaussiano blanco aditivo (AWGN) reales y complejos
Caracterización de Canal por su Perfil de Retardo Potencia
- Caracterización de canal por su perfil de retardo 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 desajustado y retardo
- Cuantización
- El problema de muestreo desajustado de la respuesta al impulso del canal de 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 interior y exterior estandarizados por IEEE
- (COST – SUI - Modelos de Canal Ultra Wide Band, etc.)
Simulación a Nivel de Enlace de Sistemas de Com. Prácticos
Sesiones 15-24
Esta parte del curso se ocupa del tema más importante para estudiantes de investigación, a saber, cómo reproducir los resultados de simulación de otros trabajos publicados mediante simulación.
Rendimiento de Tasa de Error de Bit (BER) de Esquemas de Modulación Digital en Banda Base
- Comparación de rendimiento de diferentes esquemas de modulación digital en banda base en canales AWGN (Estudio comparativo exhaustivo mediante simulación para verificar expresiones teóricas); gráficos dispersos, tasa de error de bit
- Comparación de rendimiento de diferentes esquemas de modulación digital en banda base en diferentes canales de desvanecimiento estacionarios y quasi-estacionarios; gráficos dispersos, tasa de error de bit (Estudio comparativo exhaustivo mediante simulación para verificar expresiones teóricas)
- Impacto de canales de desplazamiento Doppler en el rendimiento de esquemas de modulación digital en banda base; gráficos dispersos, tasa de error de bit
- Comunicaciones Helicóptero-Satélite
- Papel (1): Sistema de Voz y Datos en Tiempo Real de Bajo Costo para Servicio Móvil Satelital Aeronáutico (AMSS) – Declaración del problema y análisis
- Papel (2): Combinación de Diversidad Temporal Pre-Detección con AFC Preciso para Comunicaciones Helicóptero-Satélite – La primera solución propuesta
- Papel (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 secuencias pseudoaleatorias binarias (PBRS)
- Generación de secuencias de longitud máxima
- Generación de códigos Gold
- Generación de códigos Walsh
- Sistemas basados en salto de tiempo de espectro expandido
- 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 BER
- Impacto de la longitud del código en el rendimiento 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 imagen RGB sobre sistemas de espectro expandido
- Sistemas Ópticos de Acceso Múltiple por Código (OCDMA)
- Códigos ortogonales ópticos (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 BER
- Impacto del prefijo cíclico en el rendimiento BER
- Impacto del tamaño de FFT y el espaciado de subportadoras en el rendimiento 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 Frecuencia en Sistemas OFDM
- Igualizador de Fuerza Cero
- Igualizadores MMSE
- Otros Métricas de Rendimiento Comunes en Sistemas Basados en OFDM (Relación de Pico a Potencia Promedio, Relación Portadora-Interferencia, etc.)
- Análisis de rendimiento de sistemas basados en OFDM en entornos de desvanecimiento de alta movilidad (como un proyecto de simulación consistente en tres papers)
- Papel (1): Mitigación de la interferencia entre portadoras
- Papel (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 global. Además, se consideran el espacio de memoria y la velocidad de procesamiento para evitar problemas de desbordamiento de memoria en sistemas de almacenamiento limitado o tiempos de ejecución largos derivados de un procesamiento lento.
- Estructura típica de proyectos de simulación de 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
- Gestión del Espacio de Memoria y Técnicas de Reducción del Tiempo de Simulación
- Simulación en Banda Base vs. Simulación en Banda de Paso
- 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 de GUI
Contar con un código de MATLAB libre de depuración 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 extra sobre "Programación de Interfaz Gráfica de Usuario (GUI)" para llevar el control de varias partes de su proyecto de simulación a la punta de los dedos, en lugar de bucear en códigos fuente largos 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 de 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 indicados en cada nivel. Además, los artículos de cada lección en particular están sujetos a cambios dependiendo de las necesidades de los aprendices y sus intereses de investigación.
Requerimientos
Para adquirir la vasta cantidad de conocimiento contenido en este curso, los participantes deben tener conocimientos generales de lenguajes y técnicas de programación comunes. Se recomienda fuertemente una comprensión profunda de las asignaturas de pregrado en ingeniería de comunicaciones.
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