Successfully reported this slideshow.

Cad avanzado para electrónica julio 2009 v2

1,897 views

Published on

UNAD, ingeneiria de telecomuicaciones, electronica, electrica,
matlab,simulink,
bloques,señales,funciones,
labview,
TOOLBOX DE MATLAB,
procesamiento de imagenes MATLAB,
Procesamiento de Señales MATLAB,
e imread y imshow del Toolbox Procesamiento de
Imagenes,
Tipos de modulación digital que soporta el
toolbox

Published in: Education
  • Be the first to comment

  • Be the first to like this

Cad avanzado para electrónica julio 2009 v2

  1. 1. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA   UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA PROGRAMA INGENIERIA ELECTRÓNICA 208008 – CAD AVANZADO PARA ELECTRÓNICA JUAN OLEGARIO MONROY VASQUEZ (Director Nacional) OSCAR DONALDO RODRIGUEZ (Acreditador) SOGAMOSO Julio de 2009  1
  2. 2. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA   This work is licensed under a Creative Commons Attribution‐NoDerivs 2.5 License.CURSO: CAD PARA ELECTRÓNICA@Copyright Universidad Nacional Abierta y a DistanciaISBN2009Vicerrectoría de Medios y Mediaciones  2
  3. 3. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  ASPECTOS DE PROPIEDAD INTELECTUAL Y VERSIONAMIENTOEl presente módulo fue diseñado en el año 2008 por el Ing. Electrónico ArmandoPortela Duarte, integrante de la Fundación Internacional Para La Investigación dela Cultura y la Participación.El presente módulo ha tenido una actualización, desarrollada en Julio de 2009 porlos Ingenieros Juan Olegario Monroy Vásquez y Sandra Isabel Vargas López,tutores de la UNAD en el CEAD Sogamoso. El Ingeniero Monroy se desempeñaactualmente como director del curso a nivel Nacional.En este mismo año el Ing. Oscar Donaldo Rodríguez, tutor del CEAD Pereira,apoyó el proceso de revisión de estilo del módulo y dio aportes disciplinares,didácticos y pedagógicos en el proceso de acreditación de material didácticodesarrollado en Julio de 2009.  3
  4. 4. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  INTRODUCCIÓNCAD Avanzado para Electrónica es un curso metodológico de 3 créditosenmarcados en un campo de formación disciplinario, cuya intencionalidad es la deformar las bases teóricas y prácticas en el estudiante para que éste puedaimplementar y ejecutar algoritmos en diferentes software de procesamientonumérico y de herramientas gráficas, mediante el uso de lenguajes de alto nivel.Esta temática es de gran importancia tanto para el estudio como para la vidaprofesional del individuo puesto que brinda herramientas con las cuales puedecontar a la hora de realizar complejos análisis y operaciones numéricas,simulaciones en el tiempo de modelos matemáticos de sistemas realesobteniendo información valiosa como datos estadísticos o gráficos que puedenrepresentar infinidad de variables durante determinados procesos de diseño oinvestigación científica.Para tal efecto el curso cosiste en 3 unidades didácticas, en la Primera Unidad sepresenta las herramientas de Matlab, que es el principal de los paquetes softwareobjeto del curso, en donde el estudiante se familiarizará con el entorno interactivodel programa así como con los comandos, toolbox y funciones, conociendo lascaracterísticas técnicas, operativas y ventajas de empleo de dicho software.En la Segunda Unidad se presentan de forma general las herramientas avanzadaspara aplicaciones específicas del Matlab, en especial se analiza el entorno gráficoo SIMULINK, herramienta potente al momento de hacer simulación de modelosde sistemas.Finaliza con el estudio del Labview, que es un entorno interactivo que emplea unlenguaje de programación muy novedoso conocido como programación gráfica oprogramación G altamente empleado en aplicaciones de adquisición de datos,instrumentación virtual y control industrial.Los contenidos del curso serán presentados al estudiante empleando documentosdigitales que podrán descargarse de la plataforma Moodle para que este sefamiliarice y profundice sus conocimientos al respecto durante el tiempo de estudioindependiente, esto se complementa con el correspondiente acompañamiento  4
  5. 5. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA tutorial en foros y sesiones de Chat predefinidas, la evaluación del curso serealizará a partir de la guía de actividades en donde el estudiante también entraráa interactuar con sus compañeros en grupos para la realización de ciertasactividades, dejando evidenciar la importancia de la participación activa de cadauno de los estudiantes en las diferentes actividades propuestas, de igual forma alfinal de cada unida se plantea un ejercicio de autoevaluación que busca identificarpuntos criticos donde es necesario hacer refuerzos o ampliar las consultas.CAD Avanzado para electrónica sienta pues las bases primordiales en elestudiante para que aplique sus conocimientos matemáticos así como en sistemasinformáticos para la programación de diferentes algoritmos y aplicacionesespecíficas que simplificarán ampliamente su trabajo en infinidad de aplicacionesdonde se requiera el análisis numérico y modelado de sistemas.  5
  6. 6. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  INDICE DE CONTENIDOUNIDAD 1. HERRAMIENTAS DE MATLAB 1CAPITULO 1: ENTRADA/SALIDA Y FUNCIONES DE MATLAB 2Lección 1: Manejo de archivos 3Lección 2: Archivos *.m 6Lección 3: Gráficas Bidimensionales. 9Lección 4: Gráficas Tridimensionales 12Lección 5: Funciones. 15CAPITULO 2: TOOLBOX DE MATLAB 18Lección 6: Introducción a los Toolbox de Matlab. 19Lección 7: Toolbox de Comunicaciones. 23Lección 8: Simulación de un Sistema de Comunicaciones 37Lección 9: Toolbox de Sistemas de Control. 43Lección 10: Simulación de un sistema de control 75CAPITULO 3: SIMULINK. CONCEPTOS BASICOS 80Lección 11: Características 80Lección 12: Entorno de trabajo en Simulink 82Lección 13: Modelos 86Lección 14: Subsistemas. 93Lección 15: Subsistemas condicionados en su ejecución. 96  6
  7. 7. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA ACTIVIDAD DE AUTOEVALUACIÓN UNIDAD 1 107FUENTES DOCUMENTALES UNIDAD 1 108UNIDAD 2. SIMULINK 111CAPITULO 1: MODELAR CON SIMULINK 113Lección 1. Modelar Ecuaciones 113Lección 2: Modelar con Control de Flujo Condicional 118Lección 3: Modelar con control de flujo Iterativo. 123Lección 4: Ejemplos de Modelado. 127Lección 5: Consejos para la Construcción de Modelos. 132CAPITULO 2. NAVEGAR POR LOS MODELOS 132Lección 6: Explorar, Buscar y Navegar por los Modelos. 133Lección 7: Ejecutar la Simulación del modelo. 139Lección 8: Importar y Exportar Datos. 142Lección 9: Establecer la Configuración de la Simulación. 147Lección 10: Resultados de la Simulación. 148CAPÍTULO 3 BLOQUES, SEÑALES Y FUNCIONES S 152Lección 11: Bloques y Señales. 152Lección 12: Tipos de datos 158Lección 13: Funciones S 159Lección 14: Usar Funciones S en los modelos 160Lección 15: Como trabaja una función S y como se escribe en MATLAB 163  7
  8. 8. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA ACTIVIDAD DE AUTOEVALUACIÓN UNIDAD 2 165FUENTES DOCUMENTALES UNIDAD 2 166UNIDAD 3. LABVIEW 170CAPITULO 1. CONCEPTOS BASICOS DE LABVIEW 172Lección 1: Características y Aplicaciones 172Lección 2: Entorno de Trabajo. Panel Frontal. 174Lección 3: Entorno de Trabajo. Diagrama de Bloques. 185Lección 4: Ejecutar y Depurar un Instrumento Virtual. 191Lección 5: Ejemplos. 195CAPITULO 2. PROGRAMACION ESTRUCTURADA. 204Lección 6: Estructuras Case y Sequence. 204Lección 7: Estructuras Iterativas For, While. 208Lección 8: Estructura Formula Node. 212Lección 9: Variables Locales y Globales. 214Lección 10: Sub VIs 216CAPITULO 3. APLICACIONES EN LABVIEW 222Lección 11: Filtrado de señales. 222Lección 12: Análisis Espectral 224Lección 13: Generación de Tablas en Labview para presentación de datos. 225Lección 14: Manipulación de puertos. 226Lección 15: Leer y escribir archivos desde Labview. 227  8
  9. 9. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA ACTIVIDAD DE AUTOEVALUACIÓN UNIDAD 3 230FUENTES DOCUMENTALES UNIDAD 3 231  9
  10. 10. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  LISTADO DE TABLAS Tabla 1. Funciones básicas para crear gráficas en 2D. 9 Tabla 2. Funciones para modificación de las gráficas. 10 Tabla 3. Otras Funciones graficas bidimensionales. 11 Tabla 4. Otras Funciones gráficas tridimensionales 14 Tabla 5. Tipos de modulación analógica que soporta el toolbox. 27 Tabla 6. Sintaxis de los distintos Tipos de modulación analógica que soporta el toolbox. 28 Tabla 7. Tipos de modulación digital que soporta el toolbox. 29 Tabla 8. Sintaxis de los distintos Tipos de modulación digital que soporta el toolbox. 30 Tabla 9. Tipos de filtros 37 Tabla 10. Comandos empleados para Modelar sistemas de control. 44 Tabla 11. Sintaxis y ejemplos de comandos empleados para Modelar sistemas de control. 44 Tabla 12. Sintaxis y ejemplos de comandos empleados para interconectar modelos. 56 Tabla 13. Sintaxis y ejemplos de comandos empleados para el análisis de sistemas de control. 64 Tabla 14. Sintaxis y ejemplos de comandos empleados para el análisis de la respuesta en frecuencia de sistemas de control. 68  10
  11. 11. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Tabla 15. Parámetros de un Motor de Corriente Continua 76 Tabla 16. Relación entre sentencias en C y bloques de SIMULINK I 118 Tabla 17. Relación entre sentencias en C y bloques de SIMULINK II. 123 Tabla 18. Bloques virtuales. 153 Tabla 19. Librerías y bloques de SIMULINK de uso común. 157 Tabla 20. Tipo de datos soportados por SIMULINK. 159  11
  12. 12. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  LISTADO DE GRÁFICOS Y FIGURAS Figura 1. Editor de Archivos *.m. 7 Figura 2. Función complejo.m en el editor de Archivos de Matlab 8 Figura 3. Ejecución del script complejo.m 8 Figura 4. Ejecución del comando plotyy() 9 Figura 5. Grafica de la función Seno. 10 Figura 6. Utilización del comando subplot. 11 Figura 7. Gráfica de una hélice. 12 Figura 8. Grafica de la superficie con el comando mesh. 13 Figura 9. Grafica de la superficie con el comando surf. 14 Figura 10. Escritura de la Función raices2.m 17 Figura 11. Uso de la Función raices2.m. 17 Figura 12. Esquema general de los toolboxes. 20 Figura 13. Utilización de imread y imshow del Toolbox Procesamiento de Imagenes. 21 Figura 14. Ventana Figure Matlab. Imagen a color 21 Figura 15. Utilización de rg2gray del Toolbox Procesamiento de Imagenes. 22 Figura 16. Ventana Figure Matlab . Imagen en escala de grises. 22 Figura 17. Modulación y demodulación por amplitud. 29  12
  13. 13. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 18. Diagrama de dispersión. 34 Figura 19. Primeros 40 datos binarios. 38 Figura 20. Primeros 10 Símbolos 39 Figura 21. Respuesta al impulso del sistema. 40 Figura 22. Patrón de ojo de la señal filtrada 41 Figura 23. Señal recibida antes y después del filtrado. 42 Figura 24. Interconexión en paralelo de dos modelos LTI. Adición y sustracción 53 Figura 25. Interconexión en serie 54 Figura 26. Modelo compuesto. 56 Figura 27. Ejemplo de interconexión de sistemas 58 Figura 28. Interconexión de un sistema en paralelo 61 Figura 29. Interconexión de un sistema en serie 62 Figura 30. Interconexión de un sistema con retroalimentación negativa 62 Figura 31. Diagrama generalizado de un sistema retroalimentado 63 Figura 32. Respuesta al impulso del sistema. 66 Figura 33. Respuesta al sistema al escalón unitario 68 Figura 34. Diagrama de bode del sistema. 70 Figura 35. Diagrama del sistema con una el rango de frecuencia ampliado. 70 Figura 36. Comparación de los diagramas de Bodes continuo y discretos 71  13
  14. 14. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 37. Diagrama de Nyquist del sistema 72 Figura 38. Lazos de retroalimentación 73 Figura 39. Diagrama del lugar geométrico de las raíces del sistema 75 Figura 40. Esquema del circuito eléctrico y diagrama mecánico rotacional 75 Figura 41. Acceso a SIMULINK. 83 Figura 42. Pantalla inicial de SIMULINK 83 Figura 43. Ventana de Inserción de bloques y simulación, Editor de Modelos. 84 Figura 44. Ventana de dialogo para realizar los reportes. 85 Figura 45. Creando un nuevo modelo. 86 Figura 46. Diagrama de bloques del ejemplo 87 Figura 47. Navegador de librerías 88 Figura 48. Bloques organizados dentro del editor de modelo 89 Figura 49. Puerto de entrada y de salida. 89 Figura 50. Conexión de los bloques. 89 Figura 51. Ramificación de una conexión. 90 Figura 52. Cuadro de diálogo para la configuración de los parámetros de simulación 91 Figura 53. Inicio y/o detención de la Simulación 91 Figura 54. Respuesta de la simulación. 92 Figura 55. Anotaciones o comentarios. 93  14
  15. 15. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 56. Ejemplo del subsistema. 94 Figura 57. Selección de bloques 95 Figura 58. Señal de habilitación de un subsistema. 96 Figura 59. Ventana de diálogo para el ajuste de las salidas. 97 Figura 60. Ventana de diálogo para el ajuste de estados. 98 Figura 61. Apagado de la señal de control. 99 Figura 62. Modelo de un subsistema habilitado. 100 Figura 63. Indicador del funcionamiento de cada bloque. 100 Figura 64. Nivel de señal. 101 Figura 65. Subsistema activado por disparo. 102 Figura 66. Ventana de diálogo para la selección del disparo. 102 Figura 67. Subsistema de ascenso, descenso o ambos. 103 Figura 68. Mostrar el puerto de salida. 103 Figura 69. Diagrama de flujo de un subsistema disparado y habilitado. 104 Figura 70. Símbolo del subsistema habilitado y disparado. 105 Figura 71. Ejemplo de un subsistema disparado y habilitado. 105 Figura 72. Rectificador de onda completa 106 Figura 73. Respuesta del ejemplo. 106 Figura 74. Bloques del ejemplo de conversión de unidades. 114 Figura 75. Bloques conectados. 114  15
  16. 16. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 76. Diagrama de bloques de la ecuación diferencial. 115 Figura 77. Visualización de la respuesta de la ecuación diferencial. 116 Figura 78. Modelo del ejemplo como función de transferencia. 117 Figura 79. Diagnóstico de un lazo inválido 118 Figura 80. Implementación de la sentencia si-sino en SIMULINK. 119 Figura 81. Utilización de If- Else 121 Figura 82. Diagrama del subsistema If – Action 121 Figura 83. Implementación de la sentencia Switch en SIMULINK. 122 Figura 84. Implementación de la sentencia While en SIMULINK 123 Figura 85. Implementación de la sentencia For en SIMULINK. 125 Figura 86. Factorial de un número en Matlab. 126 Figura 87. Programación de un For en Simulink 127 Figura 88. Simulación de un sistema de orden 1. 128 Figura 89. Sistema Mecánico. 129 Figura 90. Simulación Sistema Mecánico. 130 Figura 91. Circuito RLC serie 130 Figura 92. Simulación sistema RLC serie 131 Figura 93. Editor de modelo. 133 Figura 94. Árbol de jerarquía. 134 Figura 95. Panel de contenido. 135  16
  17. 17. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 96. Barra de menú principal. 135 Figura 97. Barra de búsqueda. 136 Figura 98. Controles de la barra de búsqueda. 136 Figura 99. El buscador. 137 Figura 100. Opciones de filtrado. 137 Figura 101. Panel de búsqueda avanzado. 138 Figura 102. Navegador de modelo. 139 Figura 103. Localización del botón de inicio 141 Figura 104. Localización del botón de parada, pausa y la barra de progreso de la simulación. 141 Figura 105. Modelo con dos entradas. 144 Figura 106. Explorador de modelo para el ajuste de la configuración. 148 Figura 107. Modelo para observar el uso del Scope. 149 Figura 108. Modelo para observar el uso de las variables de retorno. 149 Figura 109. Modelo para observar el uso del bloque Workspace. 150 Figura 110. Visor de diagnóstico de la simulación. 151 Figura 111. Bloque que genera el error. 152 Figura 112. Ventana de diálogo de propiedades del bloque. 154 Figura 113. Ventana de diálogo de anotaciones del bloque. 155 Figura 114. Bloque mostrando sus propiedades. 156  17
  18. 18. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 115. Ventana de diálogo de llamados del bloque. 156 Figura 116. Relación entre un bloque de función S, su ventana de diálogo y el archivo fuente que define el comportamiento del bloque. 161 Figura 117. Parámetros de la S- función 162 Figura 118. Esquema de la relación Matemática de los bloques 163 Figura 119. Como SIMULINK ejecuta una simulación. 164 Figura 120. Pantalla inicial de LabVIEW. 175 Figura 121. Ventanas del Instrumento Virtual, a) Diagrama de Bloques, b) Panel Frontal. 175 Figura 122. Paleta de Controles. 177 Figura 123. Controles e indicadores Numéricos. 178 Figura 124. Controles e indicadores deslizables. 178 Figura 125. Controles e indicadores giratorios. 179 Figura 126. Controles e indicadores de tiempo. 179 Figura 127. Paleta de los controles e indicadores booleanos. 180 Figura 128. Paleta de Cadena de Caracteres. 181 Figura 129. Paleta de Arrays, Matrix and Cluster. 182 Figura 130. Paleta de List & Table. 183 Figura 131. Terminal ícono de una perilla 186 Figura 132. Segmento Curva y Unión. 188 Figura 133. Ejecución de dos bloques simultáneamente. 190  18
  19. 19. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 134. Botón de correr (run) 192 Figura 135. Botón de correr (run) mientras se ejecute la simulación 192 Figura 136. Botón de correr continuamente (run continuously) 192 Figura 137. Botón de correr roto 193 Figura 138. Botón de Ejecución iluminada (Highligth Execution) 194 Figura 139. Botón de Ejecución de un paso a la vez (single stepping) 194 Figura 140. Subpaleta Numeric 196 Figura 141. Subpaleta Modern>>String & Path 196 Figura 142. Panel de control con los elementos escogidos 197 Figura 143. Controles e indicadores numéricos 198 Figura 144. Subpaleta de Functions>>Mathematics 198 Figura 145. Diagrama de bloques conectado. 199 Figura 146. Instrumento Virtual Funcionando 199 Figura 147. Panel frontal tanque.vi 200 Figura 148. Diagrama de bloques tanque.vi 200 Figura 149. Conexiones en el Diagrama de Bloques tanque.vi 201 Figura 150. Ubicación de la Función Simulate Signal. 202 Figura 151. Aspecto Final del Panel Frontal. Generación de Señales Seno y Coseno. 203 Figura 152. Aspecto final Diagrama de Bloques. Generación de Señales Seno y Coseno 203  19
  20. 20. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 153. Estructura Case 205 Figura 154. Ejemplo de la Estructura Case. Panel Frontal. 205 Figura 155. Ejemplo de la Estructura Case. Diagrama de Bloques. 206 Figura 156. Esquema general estructura Sequence. 207 Figura 157. Panel frontal. Estructura Sequence. 207 Figura 158. Diagrama de Bloques. Estructura Sequence. 208 Figura 159. Estructura General de un For. 209 Figura 160. Panel Frontal. Ejemplo Estructura For 210 Figura 161. Diagrama de Bloques. Ejemplo Estructura For. 210 Figura 162. Forma General de la Estructura While. 211 Figura 163. Panel Frontal. Ejemplo de un While. 211 Figura 164. Diagrama de Bloques. Ejemplo de un while. 212 Figura 165. Definición de Variables en Formula Node 213 Figura 166. Panel Frontal. Ejemplo Formula Node. 213 Figura 167. Diagrama de Bloques Ejemplo Formula Node. 214 Figura 168. Menu Variables globales. 216 Figura 169. Crear icono en un subVI. 217 Figura 170. Panel Frontal Ejemplo de un SubVI. 217 Figura 171. Diagrama de Bloques Ejemplo de un subVi. 218 Figura 172. Creación del subVI en la paleta Edit 218  20
  21. 21. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  Figura 173. Icono que representa al subVI. 219 Figura 174. Icono del subVi seleccionando show conector. 219 Figura 175. Icono del subVI con adición de variables entrada/salida. 220 Figura 176. Llamando un SubVI. 220 Figura 177. Icono del subVI en el Diagrama de Bloques. 221 Figura 178. Utilización de un SubVI, Panel Frontal 221 Figura 179. Utilización de un SubVI, Diagrama de bloques. 222 Figura 180. Panel Frontal Ejemplo extraer el seno.vi 223 Figura 181. Diagrama de bloques Ejemplo extraer el seno.vi 223 Figura 182. Diagrama de bloques. Cálculo de Transformada rápida de Fourier. 224 Figura 183. Diagrama de bloques. Cálculo de Transformada rápida de Fourier. 225 Figura 184. Panel Frontal. Generación de Tablas. 225 Figura 185. Diagrama de Bloques. Generación de Tablas. 226 Figura 186. Panel Frontal. Envio de datos al puerto paralelo. 226 Figura 187. Diagrama de Bloques. Envio de datos al puerto paralelo. 227 Figura 188. Paleta Opciones Leer/escribir archivos 227 Figura 189. Menú Programing/ Report Generation 228 Figura 190. Uso de Report Generation. 229  21
  22. 22. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  UNIDAD 1. HERRAMIENTAS DE MATLABINTRODUCCIÓNEn la primera Unidad se presenta las herramientas de Matlab, que es el principalde los paquetes software objeto del curso, en donde el estudiante se familiarizarácon el entorno interactivo del programa así como con los comandos, toolbox yfunciones, conociendo las características técnicas, operativas y ventajas deempleo de dicho software.JUSTIFICACIONEn electrónica es de gran relevancia esta temática puesto que los lenguajes dealto nivel forman parte de las herramientas diarias de trabajo tanto de estudiantescomo de profesionales y técnicos en el área. Estos tipos de software sonempleados en infinidad de aplicaciones que requieren el manejo de complejosmodelos matemáticos o en su defecto de operaciones iterativas que en unmomento dado pueden servir de apoyo en el diseño, simulación y análisis tanto decircuitos análogos como digitales así como en el modelado de sistemas de control,de telecomunicaciones, de audio, etc.INTENCIONALIDADES FORMATIVASPropósitosSe pretende desglosar el manejo general de Matlab desde el punto de vista de lasherramientas avanzadas para desarrollar habilidades que le permitan al estudianteidentificar y utilizar los aplicativos en el desarrollo de soluciones óptimas a la horade abordar los problemas y actividades propuestos, al tiempo que se contribuye agenerar esquemas mentales en el estudiante con los que podrá abordar por supropia cuenta tanto el diseño y desarrollo de soluciones a problemáticasplanteadas como el aprendizaje de otras herramientas software.  1
  23. 23. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA ObjetivosQue el estudiante amplíe complemente y profundice en las característicasoperativas, técnicas, los beneficios del aplicativo Matlab, desde el punto de vistade las herramientas de entrada/salida y manejo de toolbox, para que así puedanemplear y diferenciar las ventajas operativas que ofrecen los paquetes software deanálisis numérico sobre el desarrollo manual.CompetenciasEl estudiante conoce las características y posibilidades que le brindan lasherramientas E/S y los toolbox de Matlab, además conoce los procedimientossistemáticos para interactuar con éstos y dar soluciones a partir de susimplementación en problemas electrónicos.Metas de aprendizajeEl estudiante aprenderá de forma individual las temáticas del módulo del cursopara que así pueda aplicar lo aprendido en cada tema mediante ejercicios yactividades tanto individuales como grupales en las que se desarrollen pequeñosprogramas o aplicaciones en donde el estudiante se valga de toda la informacióndisponible, de su espíritu investigativo y del trabajo en grupo para buscar lamanera de generar las soluciones más óptimas y funcionales ante lasproblemáticas planteadas.Denominación de CapítulosCapítulo 1. Entrada/Salida y funciones de MatlabCapítulo 2. Toolbox de MatlabCapítulo 3. Simulink Conceptos Básicos CAPITULO 1: ENTRADA/SALIDA Y FUNCIONES DE MATLABIntroducción. MATLAB es una poderosa herramienta de programación quepermite realizar diversas aplicaciones, con la ventaja de poseer un lenguajesencillo e intuitivo y una gran cantidad de comando que simplifica la forma de  2
  24. 24. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA escribirlos, MATLAB dispone de funciones de lectura/escritura análogas, similaresa las del lenguaje C que facilitan la importación/exportación de los datos.Lección 1: Manejo de archivosLa introducción de datos en MATLAB puede hacerse de la siguiente manera: • Cargando un archivo externo (comando Load) • Creando una secuencia de entrada en el editor de comandos (Editor de archivos .m). • Ejecutando alguna función desde la ventana de comandos. • Desde la ventana de espacio de trabajo (workspace) directamente.Abriendo un archivo. En ciertas ocasiones es necesario escribir programas quenecesitan operar con datos que residen en otros archivos o escribir los resultadosde las operaciones de los programas hechos en MATLAB.Para poder abrir un archivo es necesario verificar su existencia. El comando paraabrir un archivo es fopen, este comando posee varios argumentos, los principalesson el nombre del archivo y la forma en el que MATLAB interactuará con éste. Elcomando retorna un valor entero mayor a 2 que es el número de identificación delarchivo, este será usado para escribir y/o leer del archivo. Los tipos de interaccióncon el archivo son: • ‘r’: si se desea abrir un archivo sólo para leer. • ‘w’: si se desea abrir un archivo sólo para escribir. • ‘r+’: si se desea abrir un archivo para leer y escribir. • ‘a’: si se desea añadir la salida del programa a un archivo. En el caso de que no exista MATLAB creará el archivo. Si el archivo existe MATLAB añadirá la salida del programa al contenido del archivo.Se pueden obtener todas las opciones dadas por este comando, digitando en laventana de comandos help fopenEstructura del comando: Variable = fopen (‘nombre_del_archivo’)  3
  25. 25. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Ejemplo:Abrir un archivo que se llama prueba.dat, que existe y reside en el directorio dearchivos que se está trabajando y se desea escribir sobre este, entonces laestructura quedaría. >>Identificador = fopen (‘prueba.dat’, ‘w’) MATLAB retorna el valor que identifica el archivo Identificador = 3Leyendo desde un archivo. Una vez abierto el archivo, para leerlo se utiliza elcomando fscanf. Este comando tiene tres argumentos, el primero es elidentificador que ha sido obtenido del comando fopen. El segundo es el formatodel dato en el cual está escrito en el archivo y el tercero es opcional que es elnúmero de datos que desean ser leídos.Ejemplos de la especificación de formatos: • ‘%d’: Lee los datos como enteros. Si se usa esta sentencia de formato este leerá hasta encontrar el punto decimal. • ‘%f’: Lee los números a la derecha del punto decimal. • ‘%s’: lee los datos de una cadena de caracteres. Ignorando los espacios en blanco y los caracteres de control • ‘%c’: lee los datos de una cadena de caracteres, sin embargo los espacios en blanco y los caracteres de control son preservados.Estructura del comando >>Variable = fscanf (identificador, ‘especificación de formatos’)Ejemplo:Se posee un archivo llamado datos.txt (archivo creado en un editor de texto) quecontiene los números del 1 al 10. En donde se asume que el archivo estánombrado correctamente y se encuentra en el directorio en el que se estátrabajando.  4
  26. 26. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  datos.txt : 1 2 3 4 5 6 7 8 9 10 >> Identificador = fopen (‘datos.txt’, ‘r’) Identificador = 3 >> a = fscanf(identificador, ‘%d’) a= 1 2 3 4 5 6 7 8 9 10Si se utilizara otro especificador de formatos, la repuesta de MATLAB sería: >> a = fscanf(identificador, ‘%s’) a= 12345678910Escribiendo a un archivo. Para poder escribir sobre un archivo debe estarabierto primero. El comando para realizar esta función es fprintf, el formato para suejecución es la siguiente:fprintf(identificador de archivo, formato, variable)El identificador de archivo es el valor retornado por el comando fopen. El formatoespecifica como se desea que sea escrito el valor y la variable es el nombre dondese tiene guardado el dato.  5
  27. 27. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Por ejemplo si se escribeA=5 >>fprintf(identificador, ‘%d’, A)En el archivo que se específico se escribirá el valor 5, como un entero debido queese fue el formato que se le especificó.Importar y exportar datos desde otras aplicaciones. Es posible traer datosdesde otras aplicaciones como por ejemplo desde EXCEL o desde un editor detexto, se puede hacer de diferentes formas: • se puede utilizar Copiar y Pegar para copiar datos de la aplicación original y depositarlos entre los corchetes de una matriz o vector, en una línea de comandos de MATLAB. • Se puede crear un fichero *.m con un editor de textos. • Es posible leer un flat file escrito con caracteres ASCII. Un flat file es un fichero con filas de longitud constante separadas con Intro, y varios datos por fila separados por espacios en blanco. Estos ficheros pueden ser leídos desde MATLAB con el comando load. Si se ejecuta load datos.txt el contenido del archivo se deposita en una matriz con el nombre datos. • El comando textread permite leer datos de cualquier tipo de un fichero siempre que estén convenientemente separados. • Los comandos xlsread y xlswrite permiten leer y escribir un archivo de Excel respectivamente. • Los comandos cvsread y cvswrite permiten leer y escribir un archivo que contiene únicamente datos numéricos y que esten separados por comas.Lección 2: Archivos *.mSon archivos que contienen instrucciones escritas; existen dos tipos de archivos*.m. los archivos de función que reciben argumentos de entrada para proporcionaruno o varios datos de salida y los archivos *.m de escritura (script) en los cuales  6
  28. 28. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA se ejecutan una serie de sentencias de MATLAB. Un script es una secuencia decomandos que se pueden ejecutar a menudo, se guardan en archivos deextensión *.m para no tener que escribirlos de nuevo. Un script puede llamar aotros ficheros script para ejecutar sus comandos.El editor es la ventana donde se escriben este tipo de archivos y permite alprogramador o al diseñador escribir los archivos en texto ASCII con la extensión*.m (aunque pueden ser creados con cualquier otro editor de textos ASCII), estoscontienen el conjunto de comandos o la definición de funciones creadas por elusuario. La importancia de los archivos m-files, radica en que al ser llamadosdesde la ventanas de comandos se ejecutan los comandos escritos de manerasecuencial, siempre y cuando se encuentren en una de las carpetas de trabajo delMatlab. Este editor no solo permite escribir los códigos, sino, que también permitedepurarlos, es decir, ejecutarlos paso a paso para verificar si contienen errores.(Ver Figura 1).Figura 1. Editor de Archivos *.m.Fuente: Captura de Matlab versión trial (2008).A continuación se muestra la escritura de un archivo script que calcula la magnitudy el ángulo de un número complejo. Se escriben las instrucciones en el editor, seguarda el archivo como complejo.m, y se llama desde la ventana de trabajo enmatlab.  7
  29. 29. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Figura 2. Función complejo.m en el editor de Archivos de Matlab   Fuente: Captura de Matlab versión trial (2008).Por ejemplo para calcular la magnitud y el ángulo del Numero complejo Z=2+3j, seasigna a la variable a el valor de 2 y a la variable b el valor de 3, y se llama elscript complejo, lo cual automáticamente arroja el resultado en las variables m yang.Figura 3. Ejecución del script complejo.mFuente: Captura de Matlab versión trial (2008).  8
  30. 30. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Lección 3: Gráficas Bidimensionales.Las gráficas en 2D de MATLAB están orientadas a la representación gráfica devectores y matrices. Para realizar todas las operaciones gráficas este programautiliza un tipo especial de ventanas. Algunos comandos abren una nueva ventanamientras que otros realizan operaciones sobre una ventana abierta conanterioridad.MATLAB posee cinco funciones básicas para crear gráficos bidimensionales, loscuales se diferencian en el valor de las escalas que son desplegadas en los ejesde las abscisas y de las ordenadas. Las funciones se pueden observar en lasiguiente tabla.Tabla 1. Funciones básicas para crear gráficas en 2D. Comando Descripción plot() Crea un gráfico a partir de vectores y matrices, con escalas lineales sobre ambos ejes plotyy () Dibuja dos funciones sobre una misma ventana gráfica con escalas lineales independientes en el eje de las ordenadas una a la derecha y otra a la izquierda de la figura. Figura 4 loglog() Genera gráficos con escalas logarítmicas en ambos ejes semilogx () Crea gráficos con una escala logarítmica en el eje de las abscisas y lineal en el de las ordenadas semilogx () Genera gráficos con una escala lineal en el eje de las abscisas y logarítmica en el de las ordenadas Polar() Crea un grafico en coordenadas polaresFuente: Armando Portela (2008)Figura 4. Ejecución del comando plotyy() 200 0.8 150 0.6 100 0.4 50 0.2 0 0 -50 -0.2 -100 -0.4 -150 -0.6 -200 -0.8 0 2 4 6 8 10 12 14 16 18 20Fuente: Captura de Matlab versión trial (2008).  9
  31. 31. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Existen otras funciones utilizadas para modificar las gráficas generadasañadiéndole títulos a las gráficas y a los ejes, etc. Estos comandos son:Tabla 2. Funciones para modificación de las gráficas. Comando Descripción title(‘título’) Le coloca título al gráfico xlabel(‘ejeX’) Le proporciona un título al eje de las abscisas. Con xlabel off desaparece. xlabel(‘ejeY’) Le proporciona un título al eje de las ordenadas. Con ylabel off desaparece. text(x,y,’texto’) Introduce ‘texto’ en lugar establecido por las coordenadas x e y, si estos son vectores, el texto se repetirá cada par de elementos . gtext(‘’texto) Introduce el texto en la posición en el que el puntero del ratón se encuentre en la gráfica y se haga clic grid() Activa la introducción de una cuadrícula sobre la gráfica. Con el comando grid off este se desactiva.Fuente: Armando Portela (2008)Ejemplo: Graficar la función seno, en el intervalo de -10 a 10, colocándole untítulo y una marquilla, y activándole la función de cuadrícula (grid) (Figura 5). >> x=[-10: 0.1:10]; >> y=sin(x); >> plot(x,y) >> grid >> gtext(Gráfica de seno) >> title(Seno de x)Figura 5. Grafica de la función Seno. Seno de x 1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 Gráfica de seno -0.6 -0.8 -1 -10 -8 -6 -4 -2 0 2 4 6 8 10Fuente: Captura de Matlab versión trial (2008).  10
  32. 32. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA El comando subplot permite dividir una ventana gráfica en m particioneshorizontales y n verticales, con el propósito de representar múltiples gráficos enella. Cada una de estas subventanas tiene sus propios ejes y conservan algunascaracterísticas comunes con las otras subventanas. La forma general de estecomando es: subplot(m,n,i), donde m y n son el número de subdivisiones en filasy columnas, e i es la subdivisión que se convierte en activa. Las subdivisiones senumeran consecutivamente empezando por las de la primera fila, siguiendo porlas de la segunda, etc. Por ejemplo, la secuencia de comandos que se observa enla figura 6 genera cuatro gráficos en la misma ventanaFigura 6. Utilización del comando subplot.Fuente: Captura de Matlab versión Trial (2008).Otras funciones gráficas bidimensionales son mencionadas en la tabla 3.Tabla 3. Otras Funciones graficas bidimensionales. Comando Descripción bar() Crea diagramas de barras barh() Realiza diagramas de barras horizontales bar3() Realiza diagramas de barras con aspecto 3-D bar3h() Crea diagramas de barras horizontales con aspecto 3-D pie() Genera gráficos con forma de “tarta” pie3() Genera gráficos con forma de “tarta” y aspecto 3-D area() similar plot(), pero rellenando en ordenadas de 0 a y errorbar() representa sobre una gráfica –mediante barras– valores de errores compass() Dibuja los elementos de un vector complejo como un conjunto de vectores partiendo de un origen comúnFuente: Armando Portela (2008)  11
  33. 33. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Lección 4: Gráficas TridimensionalesMATLAB posee varias posibilidades para realizar gráficas tridimensionales. Unade las maneras de realizar esto es la utilización del comando plot3, que es laanalogía de la función plot en los gráficos bidimensionales, con la diferencia quecon este comando es necesario definir tres vectores, una para cada eje, en vez dedos.La estructura de este comando es la siguiente: plot3 (vector_3, vector_2, vector_1);Un ejemplo de este comando es la de graficar una hélice. (ver Figura 7).>> X = [-2:0.01:2]; % Define el primer vector>> plot3 (cos(2*pi*X), sin(2*pi*X), X); % En esta línea se definen los otros 2vectores y se grafica la función.>> gridFigura 7. Gráfica de una hélice. 3 2 1 0 -1 -2 -3 1 0.5 1 0 0.5 0 -0.5 -0.5 -1 -1Fuente: Captura de Matlab versión trial (2008).  12
  34. 34. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Para dibujar superficies en un espacio tridimensional hay dos comandos básicos:mesh que grafica la estructura en forma de alambres (transparente), y surf quegenera las superficies opacas. Por ejemplo se grafica la “silla de montar” definidapor la función ‘z=x2 - y2’. (Ver Figura 8). >> [X,Y] = meshgrid(-2:.1:2, -2:.1:2); %este comando convierte los vectores en matrices para poder realizar la gráfica >> Z = X.ˆ2 - Y.ˆ2; >> mesh(X, Y, Z)Figura 8. Grafica de la superficie con el comando mesh. 4 3 2 1 0 -1 -2 -3 -4 2 1.5 1 2 0.5 1.5 1 0 0.5 -0.5 0 -1 -0.5 -1 -1.5 -1.5 -2 -2Fuente: Captura de Matlab versión trial (2008).La diferencia de esta con la gráfica (ver Figura 9.) anterior radica en el comandoque se utilizó en la última línea del código anterior, se cambió mesh por surf.  13
  35. 35. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Figura 9. Grafica de la superficie con el comando surf. 4 3 2 1 0 -1 -2 -3 -4 2 1.5 1 2 0.5 1.5 1 0 0.5 -0.5 0 -1 -0.5 -1 -1.5 -1.5 -2 -2Fuente: Captura de Matlab versión trial (2008).Otras funciones de gráficas tridimensionales son relacionadas en la tabla 4Tabla 4. Otras Funciones gráficas tridimensionales Comando Descripción trisurf Similar a surf, dibuja una superficie 3-D a partir de los valores de una función en una malla de triángulos. meshz mesh con plano de referencia en el valor mínimo y una especie de “cortina” en los bordes del dominio de la función trimesh Similar a mesh, dibuja una superficie 3-D a partir de los valores de una función en una malla de triángulos. surfl Utilizada para controlar la iluminación determinando la posición e intensidad de un foco de luz. Light Crea un foco de luz en los ejes actuales capaz de actuar sobre superficies 3-D. Se le deben pasar como argumentos el color, el estilo (luz local o en el infinito) y la posición. colorbar Adiciona el mapa de colores activo a la figura, redimensionando los ejes para hacerle un lugar. se puede colocar horizontal o verticalmente. sphere Dibuja una esfera 3-D de radio unidad. Cylinder Dibuja una superficie cilíndrica de radio 1 y altura 1, con 20 facetas laterales.Fuente: Armando Portela (2008)  14
  36. 36. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Lección 5: Funciones.Las funciones de MATLAB se asemejan a las funciones matemáticas, en lamedida en que representan una regla que modifica una variable de entradatransformándola en una variable de salida. La función en matlab es un llamado aconjunto de comandos, donde se le proporciona un dato de entrada y estaproporciona un resultado de salida.En muchas ocasiones es necesario definir nuevas funciones o emplear funcionesya existentes para anexarlas a los programas que se están desarrollando en unmomento dado, las funciones en Matlab son una herramienta muy útil en casos enlos que se requiere realizar operaciones repetitivas y que son aplicables adiferentes programas o a diferentes partes del mismo programa, se trata de piezasde código escritas y guardadas de una forma determinada en archivos conextensión *.m que pueden ser llamados por un programador para ejecutar tareasdeterminadas y así puedan ser usada en diversas ocasiones. Por tal motivo sehace necesario entender cómo debe ser creada y posteriormente empleada unafunción.Reglas para escribir funciones. Para elaborar funciones, se debe generar unnuevo archivo de texto con un nombre adecuado para reconocer la función, elarchivo debe tener la extensión *.m, para que MATLAB lo reconozca.La creación de funciones en MATLAB presenta algunas diferencias respecto de laelaboración de programas. La más relevante es la siguiente:Una función incluye en la primera línea del archivo una cabecera donde seespecifica su nombre, cuáles y cuántos argumentos tiene, y cuáles y cuántosvalores retorna. Dicha cabecera se identifica, además, por la palabra function, taly como se muestra en el siguiente ejemplo:function a=producto(x,y)Como se puede apreciar, se define una función de nombre producto, que tiene dosargumentos (x e y) y devuelve un valor en la variable a.  15
  37. 37. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA La primera línea es llamada línea de definición de función, donde se leproporciona el nombre, el número y el orden de los argumentos de entradas ysalidas. Siguiendo la línea de definición de función, se debe realizar comentariosanteponiéndoles el símbolo porcentual (%). Esas líneas son llamadas texto deayuda y son mostradas en respuesta del comando help seguido del nombre de lafunción. Las siguientes líneas constituyen el cuerpo de la función; estas contienenlas sentencias de MATLAB que calculan el valor de las funciones. Adicionalmentese pueden realizar comentarios acerca de cada sentencia (sin olvidar anteponer elsímbolo de porcentaje), todas las sentencias deben culminarse con un punto ycoma (;) para suprimir la salida de cada comando. Estos archivos pueden tenermúltiples entradas y múltiples salidas.El cuerpo de la función contiene las sentencias que sean necesarias para calcularlos valores que la función va a retornar. Para calcular dichos valores se utilizarántanto los argumentos de la función como todas aquellas otras variables auxiliaresque sean precisas. Hay que tener en cuenta que las variables que no seanargumentos son locales a la función (es decir, no toman valores desde el espaciode trabajo de MATLAB), y por tanto deberán ser inicializadas en ésta.Además hay que tener en cuenta que las funciones nunca modifican las variableso argumentos de entrada, a no ser que se incluyan también como valores deretorno. Si el usuario las modifica dentro de la función, automáticamente el Matlabsaca copias de esas variables (se modifican las copias, no las variablesoriginales). Lo que significa que para MATLAB los argumentos de las funcionessiempre son valores y no variables.Ejemplo: Crear una función que calcule las raíces de un polinomio de orden dos,ingresando los coeficientes a,b,c correspondientes al polinomio ax2+bx+c=0.Se escribe la función en el editor de matlab como se muestra en la figura 10,teniendo en cuenta la cabecera, es decir iniciando con la palabra function, seguidadel nombre de la función, el argumento y el valor de retorno. Se guarda la funciónen el directorio de trabajo de matlab y se procede a llamarla desde la ventana detrabajo del programa.  16
  38. 38. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Figura 10. Escritura de la Función raices2.mFuente: Captura de Matlab versión trial (2008)..Una vez creada la función, esta se puede utilizar en la ventana de comandosdigitando el nombre de la misma y asignando los valores de entrada. En la figura11 se observa el cálculo de las raíces del polinomio x2+2x+3=0, mediante elllamado de la función raíces2.m e ingresando los parámetros de entrada a, b, c,que en este caso corresponden a los números 1,2,3.Figura 11. Uso de la Función raices2.m.Fuente: Captura de Matlab versión trial (2008)..  17
  39. 39. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Funciones de MATLAB. MATLAB contiene una gran cantidad de funciones lascategorías incluyen: • Elfun: Estos son las funciones matemáticas elementales, incluyen las funciones trigonométricas, logarítmicas y exponenciales, funciones para la manipulación de los números complejos, funciones modulares y funciones para el redondeo de números. • Specfun: son comandos de funciones matemáticas más especializadas como funciones de Bessel, gamma y otras tantas usadas en el tratamiento analítico de sistemas. También incluye funciones para la creación de factores primos, otras para chequear que un número sea primo, funciones para encontrar el mínimo común múltiplo y el máximo común divisor y funciones para la conversión de coordenadas. • Matfun: Estas son las funciones de las matrices. • Datafun: son las funciones utilizadas en los análisis de datos, pueden determinar el valor máximo o mínimo dentro de una serie de números, incluyen funciones usadas en análisis estadísticos. Existen funciones para simular filtros y manipulación de archivos de sonido. • Polyfun: Incluye funciones de interpolación para análisis geométrico, para derivar y multiplicar polinomios. También incluye funciones para encontrar las raíces de los polinomios. • Funfun: son un grupo de funciones que resuelven ecuaciones diferenciales. También incluye funciones usadas para la integración numérica y funciones gráficas. • Strfun: incluye funciones que son usadas para manipular una cadena de caracteres. • Iofun: Son funciones usadas para la entrada y salida de datos. Existen funciones para el posicionamiento y renombramiento de archivos. • Timefun: contiene funciones que retornan flujo de datos y funciones de calendario y reloj. CAPITULO 2: TOOLBOX DE MATLABIntroducción. Matlab posee librerías especializadas que agrupan un determinadonúmero de funciones que poseen características similares y tienen aplicacionesespecíficas. A estas librerías se les denomina Toolbox, que traduce literalmentecaja de herramientas, gracias a estas ‘cajas de herramientas’ especializadas, seevita la escritura de códigos extensos y poco eficientes.  18
  40. 40. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Lección 6: Introducción a los Toolbox de Matlab.Los Toolbox o cajas de herramientas son una colección especializada de archivos.m diseñada para trabajar problemas específicos en ciertas áreas de Ingeniería,como Sistemas de Comunicaciones, Procesamiento de Señales, Redesneuronales, análisis Financiero entre otras.Algunos de los Toolbox de Matlab son: • Procesamiento de Señales • Matematica Simbolica • Logica Difusa • Redes neuronales • Procesamiento de Imágenes • Comunicaciones • Ecuaciones Derivadas parciales • Sistemas de Control • Identificación de sistemas • Optimización • Diseño de filtros • Bioinformatica • Estadistica • Analisis FinancieroCaracterísticas. Entre las características que poseen los toolbox se tiene: • Son grupos de comandos con características similares. • Ayudan a simplificar los cálculos de ciertas aplicaciones. • Facilitan la escritura de algoritmos.Esquema general de los Toolbox. Como se ha dicho los toolbox son libreríasespecializadas, los comandos ahí presentes se encuentran organizadas por ordenalfabético y por categorías, para observar la organización de estos, se debe remitira la ayuda que ofrece MATLAB desde su ventana de ayuda y de acuerdo altoolbox escogido así será la organización (Figura 12), aunque existen ítemscomunes para todos que son:  19
  41. 41. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  • Getting started (Inicio): Realizan una breve descripción del tema del cual está hecho el toolbox. • Examples (Ejemplo): Muestran ejemplos donde se aplican los comandos ahí presentes. • Functions - Categorical List (Funciones – Lista de categorías): Se observan los comandos organizados en categorías particulares de cada toolbox. • Functions – Alphabetical List (Funciones – Lista alfabética): Los comandos están organizados alfabéticamente. • Releases Notes (Notas relacionadas o de actualización): Muestra todas las notas relacionadas con el toolbox y todas las actualizaciones que existentes para este. • Printable Documentation (Información imprimible) (PDF): Este es un hipervínculo donde se muestra la información del toolbox en un formato de documento portable. • Product Page (Pagina del producto): Este es un hipervínculo que dirige al usuario a la página de Mathworks, referente al toolbox.Figura 12. Esquema general de los toolboxes.Fuente: Captura de Matlab versión trial (2008)..Ejemplo. Con ayuda del Toolbox de procesamiento de Imágenes tomar unafotografía a color, convertirla a escala de grises y generar un nuevo archivo con laimagen modificada.La imagen que se desea modificar debe estar en el directorio de trabajo de matlab,en este caso se trabaja con la imagen denominada ricardocarro.jpg, a través delos comandos imread y imshow se lee, se guarda en la variable imagen1 y semuestra la imagen en la ventana Figure.  20
  42. 42. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Figura 13. Utilización de imread y imshow del Toolbox Procesamiento deImagenes.Fuente: Captura de Matlab versión trial (2008)..Figura 14. Ventana Figure Matlab. Imagen a color Fuente: Captura de Matlab versión trial (2008)..Con el comando rgb2gray se convierte la Imagen a escala de grises y el resultadose guarda en la variable b, como se muestra en la figura 15.  21
  43. 43. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Figura 15. Utilización de rg2gray del Toolbox Procesamiento de Imagenes.Fuente: Captura de Matlab versión trial (2008)..En la figura 16 se observa la imagen convertida a escala de grises.Figura 16. Ventana Figure Matlab . Imagen en escala de grises. Fuente: Captura de Matlab versión trial (2008)..Mediante el comando imwrite se genera un archivo denominado ricardogris.jpgcon la imagen en escala de grises.imwrite(b,ricardogris,jpg)  22
  44. 44. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Lección 7: Toolbox de Comunicaciones.El toolbox de comunicaciones es una extensión de MATLAB, con funciones,comandos gráficos e interfaces empleadas para explorar, diseñar, analizar ysimular algoritmos con las diferentes etapas de un sistema de comunicación. Lascaracterísticas esenciales de este toolbox son: • Contiene funciones para diseñar las capas físicas de un enlace de comunicación, incluyendo codificación de fuente, codificación de canal, modulación, modelos de canal y ecualización. • Comando de graficación para la visualización de las señales de comunicación. • Interfaces graficas de usuario para comparar la tasa de error de bit de cualquier sistema con una amplia variedad de resultados analíticos probados. • Datos del tipo Galois para la construcción de algoritmos de comunicación.Nociones Básicas del toolbox. Este toolbox implementa una variedad decomandos relacionados con las comunicaciones. Muchas de las funciones realizancálculos asociados a un componente particular de un sistema de comunicaciones,como demoduladores o ecualizadores. Otras funciones que están enfocadas en eldiseño y el análisis de diferentes sistemas.Categorías de los comandos de los toolbox. Las funciones y comandos seencuentran organizadas por categorías, estas son:• Fuentes de señal: Comandos que crean fuentes de señales aleatorias.• Evaluación del desempeño: Analiza y visualiza la respuesta de un sistema, al ruido inherente al mundo real y a los componentes de dicho sistema. El desempeño es evaluado mediante el uso de gráficas y así determinar si cumple con los requerimientos.• BER Tool: Comandos utilizados para medir la tasa de error de bit.• Codificación de fuente: También conocido como cuantización o formateo de señal, es la forma de reducir la redundancia de los datos o prepararla para su posterior procesamiento. La conversión de datos análogo/digital y la compresión de datos son formas de codificación de fuente.• Modulación/Demodulación: Comandos para modular/demodular las señales tanto analógica como digital.  23
  45. 45. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA • Codificación del control de error: Son técnicas que detectan y posiblemente corrigen errores cuando son transmitidos en un sistema de comunicación digital. Para conseguir esto, el codificador no solo transmite los símbolos del mensaje si no que también transmite símbolos redundantes, el decodificador usa los símbolos redundantes para detectar y posiblemente corregir los errores.• Filtrado: Comandos que sirven para la selección de señales dentro de cualquier rango de frecuencias.• Interleaving (Entrelazador o entramador): Este permuta los símbolos de acuerdo a un mapeo, y el desentramado utiliza el mapeo inverso para recuperar la secuencia original de símbolos. El entramado y el desentramado son útiles para reducir los errores causados por ráfagas en un sistema de comunicaciones.• Canales: Los canales de comunicaciones introducen, ruido desvanecimiento, interferencias y otras distorsiones a las señales que son transmitidas por estos. La simulación de un sistema de comunicación involucra el modelado de un canal basado en descripciones matemáticas del canal. Los diversos medios de transmisión tienen diferentes propiedades y son modelados con características diferentes.• Ecualizadores: los canales dispersivos en función del tiempo pueden causar interferencia inter-simbólica (ISI), por ejemplo en un ambiente dispersivo multi- trayecto, el receptor observa versiones retrasadas de los símbolos transmitidos, los cuales pueden interferir con los otros símbolos transmitidos. Un ecualizador intenta mitigar el ISI y así incrementar el desempeño del receptor.• Campos computacionales de Galois: Es un campo algebraico que tiene un número finito de miembros. Los campos de Gaolis tienen 2m miembros que son utilizados para el control de codificación de error y son denotados GF(2m).Fuentes de Señales. Cada sistema de comunicaciones contiene una o másfuentes de señal, se puede usar este toolbox para generar señales aleatorias, locual es muy útil cuando se necesita simular ruido, errores o fuentes de señal. Lassecciones son las siguientes:• Ruido blanco gausiano: Esta función (wgn) genera matrices usando una distribución de ruido blanco gausiano donde se puede especificar la potencia y generar ruido tanto en valores reales como complejos y la potencia puede especificarse en unidades de dBW, dBm o lineales.  24
  46. 46. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  La estructura de este comando es las siguiente: >> Y = wgn(M,N,P) genera una matriz M x N de ruido blanco gausiano y P especifica la potencia del ruido en dBW Como ejemplo de este comando se puede generar un vector columna de una longitud de 70 conteniendo valores reales de ruido blanco gausiano el cual posee una potencia de 2 dBW. Cuando no se especifica el valor de la carga el comando lo asume como de 1 Ohm. >> y1 = wgn (70, 1,2)• Símbolos aleatorios: (randsrc) Este comando crea matrices aleatorias, independientes del alfabeto que el usuario especifique pero con una distribución que este proporciona. Por ejemplo, crear una matriz 5 X 4, con valores comprendidos entre 2, 4 y 6 >> A = randsrc(5,4,[2,4,6]) A= 2 2 2 4 4 2 6 6 6 4 4 4 2 2 6 2 2 2 4 6 Donde la estructura de este comando sería la siguiente; Variable = randsrc (M,N, Alfabeto) este comando crea una matriz aleatoria M x N con los elementos del alfabeto que se especificó.  25
  47. 47. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA • Enteros aleatorios (randint): Genera matrices aleatorias de valores enteros de un rango que es proporcionado por el usuario, un caso especial de este comando es crear matrices binarias. Por ejemplo crear una matriz 6 X 5, en el que sus elementos sean valores enteros entre 1 y 10. A = randint (6,5,[1,10]) A= 9 8 4 9 9 1 5 6 6 7 7 4 2 5 4 4 2 7 9 3 9 2 4 9 4 6 7 9 7 6• Patrones aleatorios para el error de bit (randerr): crea matrices en las cuales los elementos son unos y ceros, con una probabilidad ya dada. Estas funciones son utilizadas para medir la taza de error de bit.• Modulación y Demodulación.En la mayoría de los medios de comunicación, solo un rango de frecuencias estádisponible para la transmisión. Una forma de comunicar un mensaje cuya señalno se encuentre en el rango de frecuencias disponibles, es modificando lafrecuencia hasta alcanzar una que este en concordancia con el sistema decomunicación, esta modificación de la frecuencia es lo que se llama modulación yel volver la señal a un estado muy cercano al original se llama demodulación.MATLAB posee herramientas que permiten hacer tanto modulación analógicacomo digital.Dada una técnica de modulación, existes dos formas para simularlo, bandabase ypasabanda. La simulación bandabase también conocida el método equivalentepasabaja requiere menos cálculos computacionales. En esteToolbox la simulaciónbandabase es utilizada para la modulación digital mientras que para la modulaciónanalógica se utiliza la simulación pasabanda.Los métodos disponibles que contiene este Toolbox para realizar la modulación deun sistema de comunicación dependen del tipo de señal de entrada al sistema ya  26
  48. 48. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA sea análogo o digital. La siguiente tabla muestra las técnicas que soporta eltoolbox:Tabla 5. Tipos de modulación analógica que soporta el toolbox. Comando para la Comando para la Método de modulación analógica Acrónimo modulación demodulación Modulación de amplitud (con supresión o AM ammod amdemod transmisión de portadora) Modulación de frecuencia FM fmmod fmdemod Modulación de fase PM pmmod pmdemod Modulacion de amplitud de banda simple SSB ssbmod ssbdemodFuente: Armando Portela (2008)Argumentos necesarios para realizar la modulación/demodulación analógicacomunes para todos los tipos:x: mensaje a modulary: mensaje moduladoFc: Frecuencia de la señal portadora (Hz)Fs: Frecuencia de muestreo (Hz)Ini_phase: fase inicial en la señal modulada (radianes)  27
  49. 49. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Tabla 6. Sintaxis de los distintos Tipos de modulación analógica que soporta eltoolbox. Sintaxis del comando deModulación Sintaxis del comando de demodulación modulación y = ammod(x,Fc,Fs) z = amdemod(y,Fc,Fs) y = ammod(x,Fc,Fs,ini_phase) z = amdemod(y,Fc,Fs,ini_phase) y= z = amdemod(y,Fc,Fs,ini_phase,carramp) ammod(x,Fc,Fs,ini_phase,carramp) z=amdemod(y,Fc,Fs,ini_phase,carramp,nAM • carramp: amplitud de la portadora um,den) • carramp: amplitud de la portadora • num, den: establecen el numerador y el denominador del filtro pasabajas usado en la demodulación(radianes) y= fmmod(x,Fc,Fs,freqdev) z = fmdemod(y,Fc,Fs,freqdev) y = fmmod(x,Fc,Fs,freqdev,ini_phase z = fmdemod(y,Fc,Fs,freqdev,ini_phase) • freqdev: es la constanteFM • freqdev: es la constante desviación de desviación de frecuencia (Hz) de frecuencia (Hz) de la señal modulada. la señal modulada. y = pmmod(x,Fc,Fs,phasedev) z = pmmod(y,Fc,Fs,phasedev) y = pmmod(x,Fc,Fs,phasedev,ini_phase) z = pmmod(y,Fc,Fs,phasedev,ini_phase) • phasedev: es la constante • phasedev: es la constante desviaciónPM desviación de fase (radianes) de la de fase (radianes) de la señal señal modulada. modulada. y = ssbmod(x,Fc,Fs) z = ssbdemod(y,Fc,Fs) y = ssbmod(x,Fc,Fs,ini_phase) z = ssbdemod(y,Fc,Fs,ini_phase) z = ssbdemod(y,Fc,Fs,ini_phase,num,den)SSB y = ssbmod(x,fc,fs,ini_phase,upper) • num, den: establecen el numerador y • ‘upper’: Lado escogido para el denominador del filtro pasabajas realizar la modulación usado en la demodulación(radianes)Ejemplo: Modular y demodular una señal con el método de modulación poramplitud. >> Fs = 8000; % Tasa de muestreo 8000 muestras por segundo. Fc = 300; % Frecuencia de la portadora en Hz t = [0:.1*Fs]/Fs; % Tiempos de muestreo para 0.1 segundos x = sin(20*pi*t); % Representación de la señal y = ammod(x,Fc,Fs); % Modulación de x para producir y yruidoso = awgn(y,15,measured); %Transmisión a través de un canal ruidoso [num,den] = butter(10,Fc*2/Fs); % Definición del filtro pasabajas z = amdemod(yruidoso,Fc,Fs,0,0,num,den); % Demodulación. figure; subplot(3,1,1); plot(t,x); % Dibuja la señal de entrada(Superior).  28
  50. 50. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA  subplot(3,1,2); plot(t,yruidoso)% % Dibuja la señal modulada y transmitida(Medio). subplot(3,1,3); plot(t,z); % Dibuja la señal demodulada(Inferior).Figura 17. Modulación y demodulación por amplitud. 1 0 -1 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 2 0 -2 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 2 0 -2 0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1Fuente: Captura de Matlab versión trial (2008)..Tabla 7. Tipos de modulación digital que soporta el toolbox. Comando para la Comando para la Método de modulación digital Acrónimo modulación demodulaciónModulación por desplazamiento diferencial DPSK dpskmod dpskdemod de fase Modulación por desplazamiento de FSK fskmod fskdemod frecuencia Modulación por desplazamiento mínimo MSK mskmod mskdemod Modulación por desplazamiento en OQPSK oqpskmod oqpskdemod cuadratura compensada Modulación por desplazamiento de fase PSK pskmod pskdemod Modulación por amplitud de pulso PAM pammod pamdemod Modulación por amplitud en cuadratura QAM qammod qamdemodFuente: Armando Portela (2008)  29
  51. 51. UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA – UNAD  ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E INGENIERÍA  CONTENIDO DIDÁCTICO DEL CURSO: 208008 – CAD AVANZADO PARA ELECTRÓNICA Tabla 8. Sintaxis de los distintos Tipos de modulación digital que soporta eltoolbox. Sintaxis del comando deModulac Sintaxis del comando de modulación demodulación y = dpskmod(x,M) z = dpskdemod(y,M) y = dpskmod(x,M,phaserot) z = dpskdemod(y,M,phaserot) y = dpskmod(x,M,phaserot,symbol_order) z = dpskdemod(y,M,phaserot,symbol_order) • x: mensaje que consiste de enteros entre 0 • y: mensaje modulado y M – 1, si este fuera una matriz con • M: es el tamaño del alfabeto y debe múltiple columnas y filas MATLAB ser entero. procesa las columnas independientemente. • phaserot: especifica la rotación de • M: es el tamaño del alfabeto y debe ser fases en radianes. En este caso el entero. desplazamiento de fase total por DPSK símbolo es la suma del valor • phaserot: especifica la rotación de fases en radianes. En este caso el asignado en este argumento, más la desplazamiento de fase total por símbolo fase generada por la modulación es la suma del valor asignado en este diferencial. argumento, más la fase generada por la • symbol_order: especifica como la modulación diferencial. función asignará las palabras • symbol_order: especifica como la función binarias correspondientes a los asignará las palabras binarias enteros. correspondientes a los enteros. y = fskmod(x,M,freq_sep,nsamp) z = fskdemod(y,M,freq_sep,nsamp) y = fskmod(x,M,freq_sep,nsamp,Fs) z = fskdemod(y,M,freq_sep,nsamp,Fs) y = z = fskmod(x,M,freq_sep,nsamp,Fs,phase_co fskdemod(y,M,freq_sep,nsamp,Fs,symbo nt) l_order) y = • y: mensaje modulado fskmod(x,M,freq_sep,nsamp,Fs,phase_cont,sy • freq_sep: es la separación deseada entre mbol_order) dos frecuencias sucesivas. • x: mensaje que consiste de enteros entre 0 • nsamp: Es el número de muestras por y M – 1, si este fuera una matriz con símbolo en la señal modulada y debe ser múltiple columnas y filas MATLAB un numero positivo y mucho más grande procesa las columnas que 1. independientemente. • Por el teorema de muestreo de Nyquist , • M: es el tamaño del alfabeto y debe ser el valor de freq_sep y M deben satisfacer entero en potencias de 2. la condición de (M-1)*freq_sep <=Fs. • freq_sep: es la separación deseada entre • symbol_order: especifica como la función FSK dos frecuencias sucesivas. asignará las palabras binarias • nsamp: Es el número de muestras por correspondientes a los enteros símbolo en la señal modulada y debe ser un numero positivo y mucho más grande que 1. • Por el teorema de muestreo de Nyquist , el valor de freq_sep y M deben satisfacer la condición de (M-1)*freq_sep <=Fs. • phase_cont: Establece la continuidad de fase. Cuando se ajusta a ‘cont’ se forza una continuidad de fase a través de los límites de los símbolos. ’discont’ obliga una discontinuidad en la fase, por defecto es ‘cont’. symbol_order: especifica como la función asignará las palabras binarias correspondientes a los enteros  30

×