Temario del curso
• Resultados del curso
Al finalizar este curso, el estudiante deberá ser capaz de abordar muchos de los problemas de investigación abiertos actualmente en el campo de la ingeniería de telecomunicaciones, ya que habrá adquirido al menos las siguientes habilidades:
• Mapear y manipular expresiones matemáticas complejas que aparecen con frecuencia en la literatura de ingeniería de telecomunicaciones.
• Capacidad para utilizar las capacidades de programación ofrecidas por MATLAB con el fin de reproducir los resultados de simulación de otros artículos o, al menos, acercarse a dichos resultados.
• Crear modelos de simulación de ideas propuestas por uno mismo.
• Emplear las habilidades de simulación adquiridas de manera eficiente, junto con las potentes capacidades de MATLAB, para diseñar códigos optimizados en términos de tiempo de ejecución, al mismo tiempo que se economiza el espacio de memoria.
• Identificar los parámetros de simulación clave 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á extremadamente interrelacionado. No se recomienda que un estudiante asista a un nivel sin antes haber asistido y comprendido a profundidad el nivel anterior, con el fin de garantizar la continuidad del conocimiento adquirido. El curso se estructura en tres niveles, comenzando desde una introducción a la programación en MATLAB hasta el nivel de simulación completa de sistemas, de la siguiente manera.
Nivel 1: Matemáticas de Telecomunicaciones con MATLAB
Sesiones 01-06
Al finalizar esta parte, el estudiante podrá evaluar expresiones matemáticas complejas y construir fácilmente los gráficos adecuados para diferentes representaciones de datos, como gráficos en el dominio del tiempo y de la frecuencia, gráficos de Tasa de Error de Bit (BER), diagramas de radiación de antenas, entre otros.
Conceptos fundamentales
1. El concepto de simulación
2. La importancia de la simulación en la ingeniería de telecomunicaciones
3. MATLAB como entorno de simulación
4. Sobre la representación matricial y vectorial de señales escalares en matemáticas de telecomunicaciones
5. Representaciones matriciales y vectoriales de señales de banda base complejas en MATLAB
Escritorio de MATLAB
6. Barra de herramientas
7. Ventana de comandos
8. Espacio de trabajo
9. Historial de comandos
Declaración de variables, vectores y matrices
10. Constantes predefinidas de MATLAB
11. Variables definidas por el usuario
12. Arreglos, vectores y matrices
13. Entrada manual de matrices
14. Definición de intervalos
15. Espacio lineal
16. Espacio logarítmico
17. Reglas de nomenclatura de variables
Matrices especiales
18. La matriz de unos
19. La matriz de ceros
20. La matriz identidad
Manipulación elemento a elemento y a nivel de matriz
21. Acceso a elementos específicos
22. Modificación de elementos
23. Eliminación selectiva de elementos (Truncamiento de matriz)
24. Adición de elementos, vectores o matrices (Concatenación de matrices)
25. Búsqueda del índice de un elemento dentro de un vector o una matriz
26. Reestructuración de matrices
27. Truncamiento de matrices
28. Concatenación de matrices
29. Volteo de izquierda a derecha y de derecha a izquierda
Operadores matriciales unarios
30. El operador suma
31. El operador esperanza
32. Operador mínimo
33. Operador máximo
34. El operador traza
35. Determinante de matriz |.|
36. Inversa de matriz
37. Transpuesta de matriz
38. Matriz hermítica
39. ...entre otros
Operaciones matriciales binarias
40. Operaciones aritméticas
41. Operaciones relacionales
42. Operaciones lógicas
Números complejos en MATLAB
43. Representación de banda base compleja de señales de banda pasada y conversión ascendente de RF; una revisión matemática
44. Formación de variables, vectores y matrices complejos
45. Exponenciales complejas
46. El operador parte real
47. El operador parte imaginaria
48. El operador conjugado (.)*
49. El operador valor absoluto |.|
50. El operador argumento o fase
Funciones integradas de MATLAB
51. Vectores de vectores y matriz de matrices
52. La función raíz cuadrada
53. La función signo
54. La función "redondeo a entero"
55. La función "entero inferior más cercano"
56. La función "entero superior más cercano"
57. La función factorial
58. Funciones logarítmicas (exp, ln, log10, log2)
59. Funciones trigonométricas
60. Funciones hiperbólicas
61. La función Q(.)
62. La función erfc(.)
63. Funciones de Bessel Jo (.)
64. La función Gamma
65. Comandos Diff, mod
Polinomios en MATLAB
66. Polinomios en MATLAB
67. Funciones racionales
68. Derivadas de polinomios
69. Integración de polinomios
70. Multiplicación de polinomios
Gráficos en escala lineal
71. Representaciones visuales de señales continuas en el tiempo y de amplitud continua
72. Representaciones visuales de señales aproximadas por escalones
73. Representaciones visuales de señales discretas en el tiempo y de amplitud discreta
Gráficos en escala logarítmica
74. Gráficos dB-decena (BER)
75. Gráficos decena-dB (Diagramas de Bode, respuesta en frecuencia, espectro de señal)
76. Gráficos decena-decena
77. Gráficos dB-lineales
Gráficos polares 2D
78. (Diagramas de radiación de antenas planas)
Gráficos 3D
79. Diagramas de radiación 3D
80. Gráficos paramétricos cartesianos
Sección opcional (impartida según la demanda de los estudiantes)
81. Diferenciación simbólica y diferenciación numérica en MATLAB
82. Integración simbólica y numérica en MATLAB
83. Ayuda y documentación de MATLAB
Archivos de MATLAB
84. Archivos de script de MATLAB
85. Archivos de función de MATLAB
86. Archivos de datos de MATLAB
87. Variables locales y globales
Bucles, flujo de control condicional y toma de decisiones en MATLAB
88. El bucle for...end
89. El bucle while...end
90. La condición if...end
91. Las condiciones if...else...end
92. La instrucción switch...case...end
93. Iteraciones, errores de convergencia, operadores de suma multidimensionales
Comandos de visualización de entrada y salida
94. El comando input(' ')
95. Comando disp
96. Comando fprintf
97. Cuadro de mensaje msgbox
Nivel 2: Operaciones de Señales y Sistemas (24 horas)
Sesiones 07-14
Los objetivos principales de esta parte son los siguientes:
• Generar señales de prueba aleatorias necesarias para evaluar el rendimiento de diferentes sistemas de comunicación.
• Integrar múltiples operaciones elementales de señal para implementar una única función de procesamiento de comunicación, como codificadores, aleatorizadores, interleavers, generadores de códigos de expansión, entre otros, tanto en el transmisor como en sus contrapartes en el terminal receptor.
• Interconectar estos bloques adecuadamente para lograr una función de comunicación.
• Simulación de modelos de canales de banda estrecha, determinísticos, estadísticos y semialeatorios, tanto para interiores como para exteriores.
Generación de señales de prueba de telecomunicaciones
98. Generación de una secuencia binaria aleatoria
99. Generación de secuencias de enteros aleatorios
100. Importación y lectura de archivos de texto
101. Lectura y reproducción de archivos de audio
102. Importación y exportación de imágenes
103. Imagen como matriz 3D
104. Transformación de RGB a escala de grises
105. Flujo de bits en serie de una imagen 2D en escala de grises
106. Submarco de señales de imagen y reconstrucción
Acondicionamiento y manipulación de señales
107. Escalado de amplitud (ganancia, atenuación, normalización de amplitud, etc.)
108. Desplazamiento del nivel de DC
109. Escalado temporal (compresión temporal, rarefacción)
110. Desplazamiento temporal (retraso temporal, adelanto temporal, desplazamiento circular temporal a la izquierda y a la derecha)
111. Medición de la energía de la señal
112. Normalización de energía y potencia
113. Escalado de energía y potencia
114. Conversión de serie a paralelo y de paralelo a serie
115. Multiplexación y desmultiplexación
Digitización de señales analógicas
116. Muestreo en el dominio del tiempo de señales de banda base continuas en MATLAB
117. Cuantificación de amplitud de señales analógicas
118. Codificación PCM de señales analógicas cuantificadas
119. Conversión de decimal a binario y de binario a decimal
120. Formado de pulsos
121. Cálculo del ancho de pulso adecuado
122. Selección del número de muestras por pulso
123. Convolución utilizando los comandos conv y filter
124. Autocorrelación y correlación cruzada de señales con duración limitada en el tiempo
125. La Transformada Rápida de Fourier (FFT) y operaciones IFFT
126. Visualización del espectro de una señal de banda base
127. Efecto de la tasa de muestreo y la ventana de frecuencia adecuada
128. Relación entre las operaciones de convolución, correlación y FFT
129. Filtrado en el dominio de la frecuencia, solo filtrado paso bajo
Funciones auxiliares de telecomunicaciones
130. Aleatorizadores y desaleatorizadores
131. Punturadores y despunturadores
132. Codificadores y decodificadores
133. Interleavers y desinterleavers
Moduladores y demoduladores
134. Esquemas de modulación digital de banda base en MATLAB
135. Representación visual de señales moduladas digitalmente
Modelado y simulación de canales
136. Modelado matemático del efecto del canal sobre 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 canales determinísticos
137. Pérdida de trayectoria en espacio libre y pérdida de trayectoria dependiente del entorno
138. Canales de bloqueo periódico
Caracterización estadística de canales de desvanecimiento por multitrayectoria estacionarios y cuasi-estacionarios comunes
139. Generación de una variable aleatoria (VA) distribuida uniformemente
140. Generación de una VA de valor real distribuida de forma gaussiana
141. Generación de una VA compleja distribuida de forma gaussiana
142. Generación de una VA distribuida de Rayleigh
143. Generación de una VA distribuida de Rice
144. Generación de una VA distribuida log-normalmente
145. Generación de una VA con distribución arbitraria
146. Aproximación de una función de densidad de probabilidad (PDF) desconocida de una VA mediante un histograma
147. Cálculo numérico de la función de distribución acumulada (CDF) de una VA
148. Canales de ruido blanco gaussiano aditivo (AWGN) reales y complejos
Caracterización del canal mediante su Perfil de Retardo de Potencia (PDP)
149. Caracterización del canal mediante su PDP
150. Normalización de potencia del PDP
151. Extracción de la respuesta al impulso del canal a partir del PDP
152. Muestreo de la respuesta al impulso del canal con una tasa de muestreo arbitraria, muestreo desajustado y cuantificación de retardos
153. El problema del muestreo desajustado de la respuesta al impulso del canal en canales de banda estrecha
154. Muestreo de un PDP con una tasa de muestreo arbitraria y compensación de retardo fraccional
155. Implementación de varios modelos de canales estandarizados por IEEE para interiores y exteriores
156. (COST – SUI – Modelos de canales de banda ultra ancha, etc.)
Nivel 3: Simulación a Nivel de Enlace de Sistemas de Comunicaciones Prácticos (30 horas)
Sesiones 15-24
Esta parte del curso se centra en el tema más importante para los estudiantes de investigación: cómo reproducir mediante simulación los resultados de otros artículos publicados.
Rendimiento de la Tasa de Error de Bit (BER) de esquemas de modulación digital de banda base
1. Comparación de rendimiento de diferentes esquemas de modulación digital de banda base en canales AWGN (Estudio comparativo integral mediante simulación para verificar expresiones teóricas); gráficos de dispersión, tasa de error de bit
2. Comparación de rendimiento de diferentes esquemas de modulación digital de banda base en diferentes canales de desvanecimiento estacionarios y cuasi-estacionarios; gráficos de dispersión, tasa de error de bit (Estudio comparativo integral mediante simulación para verificar expresiones teóricas)
3. Impacto de los canales con desplazamiento Doppler en el rendimiento de los esquemas de modulación digital de banda base; gráficos de dispersión, tasa de error de bit
Comunicaciones de helicóptero a satélite
4. Artículo (1): Sistema de voz y datos en tiempo real de bajo costo para el Servicio Satelital Móvil Aeronáutico (AMSS) – Planteamiento y análisis del problema
5. Artículo (2): Combinación de diversidad temporal pre-detección con AFC preciso para comunicaciones satélite-helicóptero – La primera solución propuesta
6. Artículo (3): Un esquema de modulación adaptativa para comunicaciones helicóptero-satélite – Un enfoque de mejora del rendimiento
Simulación de sistemas de espectro ensanchado
1. Arquitectura típica de sistemas basados en espectro ensanchado
2. Sistemas basados en espectro ensanchado de secuencia directa
3. Generadores de secuencias binarias pseudoaleatorias (PBRS)
• Generación de secuencias de longitud máxima
• Generación de códigos de Gold
• Generación de códigos de Walsh
4. Sistemas basados en espectro ensanchado por salto de tiempo
5. Rendimiento de la tasa de error de bit (BER) de sistemas basados en espectro ensanchado en canales AWGN
• Impacto de la tasa de codificación r en el rendimiento de la BER
• Impacto de la longitud del código en el rendimiento de la BER
6. Rendimiento de la tasa de error de bit (BER) de sistemas basados en espectro ensanchado en canales de desvanecimiento Rayleigh lento por multitrayectoria con desplazamiento Doppler cero
7. Análisis del rendimiento de la tasa de error de bit de sistemas basados en espectro ensanchado en entornos de desvanecimiento de alta movilidad
8. Análisis del rendimiento de la tasa de error de bit de sistemas basados en espectro ensanchado en presencia de interferencia multiusuario
9. Transmisión de imágenes RGB sobre sistemas de espectro ensanchado
10. Sistemas de CDMA óptico (OCDMA)
• Códigos ortogonales ópticos (OOC)
• Límites de rendimiento de los sistemas OCDMA; rendimiento de la tasa de error de bit de sistemas OCDMA síncronos y asíncronos
Sistemas SS de banda ultra ancha
Sistemas basados en OFDM
11. Implementación de sistemas OFDM utilizando la Transformada Rápida de Fourier
12. Arquitectura típica de sistemas basados en OFDM
13. Rendimiento de la tasa de error de bit (BER) de sistemas OFDM en canales AWGN
• Impacto de la tasa de codificación r en el rendimiento de la BER
• Impacto del prefijo cíclico en el rendimiento de la BER
• Impacto del tamaño de la FFT y del espaciado de subportadoras en el rendimiento de la BER
14. Rendimiento de la tasa de error de bit (BER) de sistemas OFDM en canales de desvanecimiento Rayleigh lento por multitrayectoria con desplazamiento Doppler cero
15. Rendimiento de la tasa de error de bit (BER) de sistemas OFDM en canales de desvanecimiento Rayleigh lento por multitrayectoria con desajuste de frecuencia portadora (CFO)
16. Estimación de canal en sistemas OFDM
17. Ecualización en el dominio de la frecuencia en sistemas OFDM
• Ecualizador de Cero Forzado (Zero Forcing)
• Ecualizadores MMSE
18. Otras métricas de rendimiento comunes en sistemas basados en OFDM (Relación Pico a Promedio de Potencia, Relación Portadora a Interferencia, etc.)
19. Análisis de rendimiento de sistemas basados en OFDM en entornos de desvanecimiento de alta movilidad (como un proyecto de simulación que consta de tres artículos)
20. Artículo (1): Mitigación de la interferencia entre portadoras
21. Artículo (2): Sistemas MIMO-OFDM
Optimización de un proyecto de simulación en MATLAB
El objetivo de esta parte es aprender a construir y optimizar un proyecto de simulación en MATLAB para simplificar y organizar el proceso general de simulación. Además, se considera 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 prolongados derivados de un procesamiento lento.
1. Estructura típica de proyectos de simulación a pequeña escala
2. Extracción de parámetros de simulación y mapeo de teórico a simulación
3. Construcción de un proyecto de simulación
4. Técnica de simulación Monte Carlo
5. Un procedimiento típico para probar un proyecto de simulación
6. Gestión del espacio de memoria y técnicas de reducción del tiempo de simulación
• Simulación de banda base vs. banda pasada
• 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 interfaces gráficas de usuario (GUI)
Tener un código de MATLAB libre de errores y que funcione correctamente para producir resultados precisos es un gran logro. Sin embargo, un conjunto de parámetros clave en un proyecto de simulación controla el proceso. Por esta razón y otras más, se imparte una clase adicional sobre "Programación de Interfaz Gráfica de Usuario (GUI)" para poner el control sobre las diversas partes de su proyecto de simulación al alcance de su mano, en lugar de bucear en largos códigos fuente llenos de comandos. Además, ocultar su código de MATLAB detrás de una GUI facilita la presentación de su trabajo, permitiendo combinar múltiples resultados en una ventana maestra y haciendo más fácil la comparación de datos.
1. ¿Qué es una GUI en MATLAB?
2. Estructura del archivo de función de GUI de MATLAB
3. Componentes principales de la GUI (propiedades y valores importantes)
4. 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 ítems de cada clase particular están sujetos a cambios dependiendo de las necesidades de los estudiantes y sus intereses de investigación.
Requerimientos
Para adquirir la gran cantidad de conocimiento implícito en este curso, los participantes deben contar con conocimientos generales sobre lenguajes y técnicas de programación comunes. Se recomienda encarecidamente un dominio profundo de los cursos de pregrado en ingeniería de telecomunicaciones.
Testimonios (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