Temario del curso
• Resultados de este curso
Después de completar este curso, el estudiante deberá ser capaz de abordar muchos de los problemas de investigación actualmente abiertos 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 complicadas que aparecen frecuentemente en la literatura de ingeniería de comunicaciones.
• 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 aproximarse a esos resultados.
• Crear los modelos de simulación de ideas propuestas por uno mismo.
• Emplear las habilidades de simulación adquiridas eficientemente junto con las potentes capacidades de MATLAB para diseñar códigos de MATLAB optimizados en términos del tiempo de ejecución del código, economizando asimismo el 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á extremadamente correlacionado. No se recomienda que un estudiante asista a un nivel a menos que haya asistido y comprendido profundamente su nivel anterior para garantizar la continuidad de los conocimientos adquiridos. El curso está estructurado en tres niveles, comenzando con una introducción a la programación en MATLAB hasta el nivel de simulación completa del sistema, de la siguiente manera.
Nivel 1: Matemáticas de Comunicaciones con MATLAB
Sesiones 01-06
Después de 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áficos en el dominio del tiempo y la frecuencia; gráficos de BER (Tasa de Error de Bit); patrones de radiación de antenas... etc.
Conceptos Fundamentales
1. El concepto de simulación
2. La importancia de la simulación en ingeniería de comunicaciones
3. MATLAB como entorno de simulación
4. Sobre la representación matricial y vectorial de señales escalares en las matemáticas de comunicaciones
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. Área 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 por elemento y matricial
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. Encontrar el índice de un elemento dentro de un vector o una matriz
26. Rearreglo 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 de suma
31. El operador de esperanza
32. Operador Mínimo
33. Operador Máximo
34. El operador de traza
35. Determinante de matriz |.|
36. Inversa de matriz
37. Transpuesta de matriz
38. Hermiteana de matriz
39. ...etc
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 pasante y conversión ascendente RF, revisión matemática
44. Formación de variables, vectores y matrices complejas
45. Exponenciales complejas
46. El operador de parte real
47. El operador de parte imaginaria
48. El operador conjugado (.)*
49. El operador absoluto |.|
50. El operador de argumento o fase
Funciones integradas de MATLAB
51. Vectores de vectores y matrices de matrices
52. La función raíz cuadrada
53. La función signo
54. La función "redondeo al entero"
55. La función "entero más bajo más cercano"
56. La función "entero más alto 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 de escala lineal
71. Representaciones visuales de señales continuas en tiempo y continuas en amplitud
72. Representaciones visuales de señales aproximadas por escalones
73. Representaciones visuales de señales discretas en tiempo y discretas en amplitud
Gráficos de escala logarítmica
74. Gráficos dB-década (BER)
75. Gráficos dékada-dB (Gráficos de Bode, respuesta en frecuencia, espectro de señales)
76. Grámetros dékada-déka
77. Gráficos dB-lineales
Gráficos polares 2D
78. (patrones de radiación de antena planar)
Gráficos 3D
79. Patrones de radiación 3D
80. Gráficos paramétricos cartesianos
Sección Opcional (proporcionada según la demanda de los aprendices)
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, control de flujo 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 sentencia 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 hrs)
Sesiones 07-14
Los objetivos principales de esta parte son los siguientes:
• Generar señales de prueba aleatorias que son necesarias para probar el rendimiento de diferentes sistemas de comunicaciones.
• Integrar muchas operaciones elementales de señales que pueden integrarse para implementar una sola función de procesamiento de comunicaciones, como codificadores, aleatorizadores, entrelazadores, generadores de códigos de expansión... etc., en el transmisor así como sus contrapartes en el terminal receptor.
• Interconectar correctamente estos bloques para lograr una función de comunicaciones.
• Simulación de modelos de canales estrechos deterministas, estadísticos y semi-aleatorios interiores y exteriores.
Generación de señales de prueba de comunicaciones
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 de escala de grises 2D
106. Sub-estructuración de señales de imagen y reconstrucción
Condicionamiento y Manipulación de Señales
107. Escalado de amplitud (ganancia, atenuación, normalización de amplitud...etc.)
108. Desplazamiento del nivel DC
109. Escalado de tiempo (compresión temporal, rarefacción)
110. Desplazamiento de tiempo (retraso de tiempo, adelanto de tiempo, desplazamiento circular de tiempo izquierdo y derecho)
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 serial-a-paralelo y paralelo-a-serial
115. Multiplexación y desmultiplexación
Digitalizació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 cuantizadas
119. Conversión decimal-binario y binario-decimal
120. Moldeado 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. La autocorrelación y la correlación cruzada de señales limitadas en tiempo
125. Las operaciones de Transformada Rápida de Fourier (FFT) e 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 la convolución, la correlación y las operaciones FFT
129. Filtrado en el dominio de la frecuencia, solo filtrado paso bajo
Funciones Auxiliares de Comunicaciones
130. Aleatorizadores y desaleatorizadores
131. Punchers y despunchers (extractores/punzadores)
132. Codificadores y decodificadores
133. Entrelazadores y desentrelazadores
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
• Suma – 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 con desvanecimiento selectivo en frecuencia
• Convolución en el dominio del tiempo – respuesta al impulso del canal
Ejemplos de modelos de canales deterministas
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 Comunes de Desvanecimiento por Tray múltiples Estacionarios y Cuasi-estacionarios
139. Generación de una VA (Variable Aleatoria) distribuida uniformemente
140. Generación de una VA de valor real distribuida Gaussiana
141. Generación de una VA compleja distribuida Gaussiana
142. Generación de una VA distribuida Rayleigh
143. Generación de una VA distribuida Ricean
144. Generación de una VA distribuida Lognormalmente
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 AWGN (Ruido Gaussiano Blanco Aditivo) reales y complejos
Caracterización del Canal por su Perfil de Retardo de Potencia
149. Caracterización del canal por su perfil de retardo de potencia
150. Normalización de potencia del PDP (Perfil de Retardo de Potencia)
151. Extracción de la respuesta al impulso del canal desde el PDP
152. Muestreo de la respuesta al impulso del canal a una tasa de muestreo arbitraria, desajuste de muestreo y cuantización de retardo
153. El problema del desajuste de muestreo de la respuesta al impulso del canal de canales de banda estrecha
154. Muestreo de un PDP a una tasa de muestreo arbitraria y compensación de retardo fraccionario
155. Implementación de varios modelos de canales interiores y exteriores estandarizados por IEEE
156. (Modelos de Canal COST - SUI - Ultra Banda Ancha...etc.)
Nivel 3: Simulación a Nivel de Enlace de Sistemas Prácticos de Comunicaciones (30 hrs)
Sesiones 15-24
Esta parte del curso se ocupa del aspecto más importante para los investigadores, es decir, cómo reproducir los resultados de simulación de otros artículos publicados mediante simulación.
Rendimiento de la Tasa de Error de Bit (BER) de Esquemas de Modulación Digital de Banda Base
1. Comparación del 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); gráficos de dispersión, tasa de error de bit.
2. Comparación del 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 exhaustivo mediante simulación para verificar expresiones teóricas).
3. Impacto de los canales con desplazamiento Doppler en el rendimiento de esquemas de modulación digital de banda base; gráficos de dispersión, tasa de error de bit.
Comunicaciones Helicóptero-Satélite
4. Artículo (1): Sistema de Voz y Datos en Tiempo Real de Bajo Costo para el Servicio Móvil por Satélite Aeronáutico (AMSS) – Enunciado del problema y análisis.
5. Artículo (2): Combinación de diversidad temporal antes de la detección con AFC precisa para Comunicaciones Helicóptero-Satélite – La primera solución propuesta.
6. Artículo (3): Un Esquema de Modulación Adaptativo para Comunicaciones Helicóptero-Satélite – Un enfoque de mejora del rendimiento.
Simulación de Sistemas de Espectro Expandido
1. Arquitectura típica de sistemas basados en espectro expandido.
2. Sistemas basados en espectro expandido por secuencia directa.
3. Generadores de secuencias binarias pseudoaleatorias (PBRS).
• Generación de secuencias de longitud máxima.
• Generación de códigos Gold.
• Generación de códigos Walsh.
4. Sistemas basados en espectro expandido por salto de tiempo (Time Hopping).
5. Rendimiento de la Tasa de Error de Bit (BER) de sistemas basados en espectro expandido en canales AWGN.
• Impacto de la tasa de codificación r en el rendimiento del BER.
• Impacto de la longitud del código en el rendimiento del BER.
6. Rendimiento de la Tasa de Error de Bit (BER) de sistemas basados en espectro expandido en canales de desvanecimiento Rayleigh lento con Multipath y Desplazamiento Doppler Cero.
7. Análisis del rendimiento de la tasa de error de bit de sistemas basados en espectro expandido en entornos de desvanecimiento de alta movilidad.
8. Análisis del rendimiento de la tasa de error de bit de sistemas basados en espectro expandido en presencia de interferencia multiusuario.
9. Transmisión de imágenes RGB sobre sistemas de espectro expandido.
10. Sistemas OCDMA (CDMA Óptico).
• Códigos ortópticos ópticos (OOC).
• Límites de rendimiento de sistemas OCDMA; rendimiento de la tasa de error de bit de sistemas OCDMA sincrónicos y asincrónicos.
Sistemas SS de Ultra Banda 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 del BER.
• Impacto del prefijo cíclico en el rendimiento del BER.
• Impacto del tamaño FFT y del espaciado de subportadora en el rendimiento del BER.
14. Rendimiento de la Tasa de Error de Bit (BER) de Sistemas OFDM en canales de desvanecimiento Rayleigh lento con Multipath y Desplazamiento Doppler Cero.
15. Rendimiento de la Tasa de Error de Bit (BER) de Sistemas OFDM en canales de desvanecimiento Rayleigh lento con Multipath y CFO (Frecuencia Central de Portadora).
16. Estimación del Canal en Sistemas OFDM.
17. Ecualización en el Dominio de la Frecuencia en Sistemas OFDM.
• Ecualizador de Forzamiento Cero (Zero Forcing).
• Ecualizadores MMSE.
18. Otras Métricas Comunes de Rendimiento en Sistemas Basados en OFDM (Relación Pico-Promedio de Potencia, Relación Portadora-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 consistente en tres artículos).
20. Artículo (1): Mitigación de interferencia entre portadoras.
21. Artículo (2): Sistemas MIMO-OFDM.
Optimización de un Proyecto de Simulación MATLAB
El objetivo de esta parte es aprender cómo construir y optimizar un proyecto de simulación MATLAB para simplificar y organizar todo el proceso de simulación. Además, el espacio de memoria y la velocidad de procesamiento también se consideran para evitar problemas de desbordamiento de memoria en sistemas de almacenamiento limitado o tiempos de ejecución largos 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. Técnicas de Gestión del Espacio de Memoria y Reducción del Tiempo de Simulación.
• Banda Base vs. Banda Pasante en la Simulación.
• 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 MATLAB libre de errores de depuración y que funcione 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 proceso]. Por esta razón y más, se imparte una conferencia adicional sobre "Programación de Interfaz Gráfica de Usuario (GUI)" con el fin de poner el control sobre varias partes de tu proyecto de simulación al alcance de tus dedos, en lugar de sumergirse en un código fuente largo lleno de comandos. Además, tener tu código MATLAB enmascarado con una GUI ayuda a presentar tu trabajo de una manera que facilita la combinación de múltiples resultados en una ventana maestra y hace más fácil comparar datos.
1. ¿Qué es una GUI MATLAB?
2. Estructura del archivo de función GUI MATLAB.
3. Componentes principales de GUI (propiedades y valores importantes).
4. Variables locales y globales.
Nota: Los temas cubiertos en cada nivel de este curso incluyen, entre otros, los declarados en cada nivel. Además, los elementos de cada conferencia particular están sujetos a cambios dependiendo de las necesidades de los aprendices y sus intereses de investigación.
Requerimientos
Con el fin de adquirir la vasta cantidad de conocimientos incrustados en este curso, los participantes deben tener conocimientos generales sobre lenguajes y técnicas de programación comunes. Se recomienda encarecidamente una comprensión profunda de los cursos de grado 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