You are on page 1of 111

Universidad de Costa Rica Facultad de Ingeniera Escuela de Ingeniera Elctrica

IE 0502 Proyecto Elctrico

Puesta a punto de herramientas de cdigo abierto para el diseo y simulacin de circuitos electrnicos

Por: Marvin David Elizondo Cerdas

Ciudad Universitaria Rodrigo Facio Julio del 2009

Puesta a punto de herramientas de cdigo abierto para el diseo y simulacin de circuitos electrnicos

Por: Marvin David Elizondo Cerdas

Sometido a la Escuela de Ingeniera Elctrica de la Facultad de Ingeniera de la Universidad de Costa Rica como requisito parcial para optar por el grado de: BACHILLER EN INGENIERA ELCTRICA Aprobado por el Tribunal:

_________________________________ Ph.D. Jorge Arturo Romero Chacn Profesor Gua

_________________________________ Ing. Jos Miguel Pez Jimnez Profesor lector


ii

_________________________________ Ing. Luis Felipe Crdoba Morales Profesor lector

DEDICATORIA

A mi madre, por ser un ejemplo de amor, sacrificio y esfuerzo, y adems mostrarme que aunque la distancia nos puede separar de los que ms queremos, el amor nos une en el pensamiento y junta las almas en nuestros corazones. Simplemente la mejor. A mi padre, por brindarme todo su apoyo, amor y comprensin en estos aos, y por mantenerse desde siempre como un ejemplo a seguir como padre y profesional, motivndome a mantener siempre una actitud positiva ante cualquier problema y no ser conformista con el mundo que nos rodea, buscando siempre la innovacin y la felicidad. A mi hermano, por ser mi principal motivo para dar un buen ejemplo y por hacerme sentir tan orgulloso desde ahora al ver el hombre bueno en que se est convirtiendo y el excelente profesional que ser. A mi ta Sandra y mi abuela Virgita, por tratarme como un hijo ms y sacrificarse tanto por m, buscando alcanzar la meta no encomendada de hacerme sentir ms cerca de mi hogar a travs de ellas. A mi novia, por ayudarme a crecer como persona y apoyarme siempre con sus palabras de aliento, convirtindose en una motivacin adicional que me impulsa a superarme y alcanzar mis metas. A Dios, por todo.

iii

RECONOCIMIENTOS

A Don Jorge Romero por darme la oportunidad de realizar este proyecto, adems de guiarme con consejos tiles siempre que le solicit ayuda. A los ingenieros Don Jos Miguel Pez y Don Luis Felipe Crdoba por apoyarme con su participacin en este proyecto.

iv

NDICE GENERAL
NDICE GENERAL......................................................................................... v NDICE DE FIGURAS ................................................................................ viii NDICE DE TABLAS .................................................................................. xiii RESUMEN ..................................................................................................... xiv CAPTULO 1: Introduccin ........................................................................... 1
1.1
1.1.1 1.1.2

Objetivos ................................................................................................................ 3
Objetivo general .......................................................................................................... 3 Objetivos especficos ................................................................................................... 3

1.2

Metodologa ........................................................................................................... 3

CAPTULO 2: Herramientas libres disponibles ........................................... 5


2.1
2.1.1

Proyecto gEDA ...................................................................................................... 5


Descripcin................................................................................................................... 5

2.2
2.2.1 2.2.2

Herramientas......................................................................................................... 6
gschem .......................................................................................................................... 6 GNU Spice GUI (gspiceui) .......................................................................................... 8

2.3
2.3.1

Oregano ............................................................................................................... 11
Descripcin................................................................................................................. 11
v

CAPTULO 3: Instalacin de paquetes ....................................................... 13


3.1 3.2 3.3 Instalacin de la suite gEDA .............................................................................. 13 Instalacin de Oregano....................................................................................... 20 Instalacin del motor de simulacin NGSpice ................................................. 21

CAPTULO 4: Gua de uso de aplicaciones ................................................ 25


4.1
4.1.1 4.1.2

Uso de la suite gEDA .......................................................................................... 25


Uso de gschem ............................................................................................................ 25 Uso de gspiceui........................................................................................................... 35

4.2

Uso de Oregano ................................................................................................... 42

CAPTULO 5: Creacin de smbolos y asignacin de modelos ................ 50


5.1 5.2 Creacin de smbolos y asignacin de modelos en gEDA ............................... 50 Creacin de smbolos y asignacin de modelos en Oregano ........................... 57

CAPTULO 6: Diseo de modelos ................................................................ 61


6.1 6.2 Diseo del MAX274 ............................................................................................ 61 Diseo del MF10 ................................................................................................. 73

CAPTULO 7: Comparacin de herramientas libres con TINA .............. 86 CAPTULO 8: Conclusiones y recomendaciones ....................................... 88
8.1 Conclusiones ........................................................................................................ 88
vi

8.2

Recomendaciones ................................................................................................ 90

BIBLIOGRAFA ............................................................................................ 91 APNDICE A: Descripcin de algunos elementos en ngspice [9] .............. 93 APNDICE B: Descripcin de algunos elementos en gnucap [8] ............... 95 ANEXOS: Especificaciones del fabricante [3] [4] .......................................... 97

vi i

NDICE DE FIGURAS
Figura 2.1. Programa para captura de esquemticos gschem. ......................................... 7 Figura 2.2. GNU Spice GUI. ................................................................................................ 8 Figura 2.3. Gwave graficando la simulacin de un LM555 en modo astable usando el motor gnucap....................................................................................................................... 10 Figura 2.4. Interfaz grfica de Oregano. .......................................................................... 11 Figura 2.5. Despliegue del men de Oregano. .................................................................. 12 Figura 3.1. Ubuntu 9.04 Jaunty Jackalope. ...................................................................... 13 Figura 3.2. Acceso al Gestor de paquetes Synaptic. ........................................................ 14 Figura 3.3. Gestor de paquetes Synaptic. ......................................................................... 15 Figura 3.4. Buscador del Gestor de paquetes Synaptic. .................................................. 15 Figura 3.5. Marcar el paquete gEDA. ............................................................................... 16 Figura 3.6. Marcar paquetes requeridos por gEDA. ....................................................... 17 Figura 3.7. Aplicar instalacin de paquetes. .................................................................... 17 Figura 3.8. Confirmacin de instalacin de paquetes...................................................... 18 Figura 3.9. Descarga de los paquetes a instalar. .............................................................. 18 Figura 3.10. Instalacin de los paquetes descargados. .................................................... 19 Figura 3.11. Informe de cambios aplicados al sistema. ................................................... 19 Figura 3.12. Acceso al programa Terminal. ..................................................................... 22 Figura 3.12. Terminal. ........................................................................................................ 23
vi ii

Figura 4.1. Acceso a gschem. ............................................................................................. 25 Figura 4.2. Editor de esquemticos gschem. .................................................................... 26 Figura 4.3. Barra de herramientas de gschem. ................................................................ 26 Figura 4.4. Libreras de gschem. ....................................................................................... 27 Figura 4.5. Esquemtico sin cablear. ................................................................................ 28 Figura 4.6. Editor de atributos de fuente.......................................................................... 29 Figura 4.7. Editor de textos gedit. ..................................................................................... 31 Figura 4.8. Lneas con auto-uref descomentadas. ........................................................ 32 Figura 4.9. Agregar valor de 1k a resistencia. .............................................................. 33 Figura 4.10. Esquemtico terminado. ............................................................................... 34 Figura 4.11. Ejecutar gspiceui. .......................................................................................... 35 Figura 4.12. Interfaz de gspiceui. ...................................................................................... 36 Figura 4.13. Eleccin de motor de simulacin.................................................................. 36 Figura 4.14. Barra de herramientas de gspiceui. ............................................................. 37 Figura 4.15. Configuracin de fuente en gspiceui. ........................................................... 38 Figura 4.16. Graficador gwave. ......................................................................................... 40 Figura 4.17. Representacin grfica de simulacin. ........................................................ 41 Figura 4.18. Acceso a Oregano. ......................................................................................... 42 Figura 4.19. Interfaz grfica de Oregano. ........................................................................ 43 Figura 4.20. Configuracin de fuente CA en Oregano. ................................................... 44
ix

Figura 4.21. Configuracin de resistencia en Oregano. .................................................. 45 Figura 4.22. Barra de herramientas de Oregano. ............................................................ 45 Figura 4.23. Esquemtico en Oregano. ............................................................................. 47 Figura 4.24. Eleccin de motor de simulacin.................................................................. 48 Figura 4.25. Configuracin de parmetros de simulacin. ............................................. 48 Figura 4.26. Resultado de simulacin en Oregano. ......................................................... 49 Figura 5.1. Secuencia de formatos y archivos para obtener smbolo en gEDA. ........... 50 Figura 5.2. Seccin geda_attr antes y despus de modificar. .......................................... 52 Figura 5.3. Seccin pins despus de modificar. ................................................................ 53 Figura 5.4. Creacin de archivo vaco en el Escritorio.................................................... 54 Figura 5.5. Estructura bsica de un modelo. .................................................................... 55 Figura 5.6. Smbolo del MAX274 en gschem.................................................................... 56 Figura 5.7. Edicin de atributos del MAX274.................................................................. 56 Figura 5.8. Estructura bsica de librera en Oregano, parte 1. ...................................... 57 Figura 5.9. Estructura bsica de librera en Oregano, parte 2. ...................................... 58 Figura 6.1. Configuracin de pines del MAX274.[3]......................................................... 61 Figura 6.2. Esquemtico del filtro usado en el MAX274.[3]............................................. 62 Figura 6.3. Configuracin de resistencias externas usadas en el MAX274.[3] ............... 62 Figura 6.4. Respuesta pasabajos y pasabandas para un filtro del MAX274.[3] ............. 64 Figura 6.5. Modelo para subcircuito RX. .......................................................................... 65
x

Figura 6.6. Modelo para subcircuito RY. .......................................................................... 65 Figura 6.7. Modelo en frecuencia para amplificador operacional. ................................ 66 Figura 6.8. Modelo para subcircuito OPAMP. ................................................................ 67 Figura 6.9. Modelo para el MAX274, parte 1. ................................................................. 68 Figura 6.10. Modelo para el MAX274, parte 2. ............................................................... 69 Figura 6.11. Aplicacin tpica del MAX274. [3]................................................................. 69 Figura 6.12. Esquemtico de aplicacin tpica del MAX274. ......................................... 70 Figura 6.13. Respuesta en frecuencia de la aplicacin tpica del MAX274. .................. 71 Figura 6.14. Respuesta en frecuencia esperada de la aplicacin tpica del MAX274. [3] .............................................................................................................................................. 71 Figura 6.15. Configuracin para probar los filtros individualmente. [3] ........................ 72 Figura 6.16. Respuesta en frecuencia obtenida del Test Circuit A del MAX274. ..... 73 Figura 6.17. Configuracin de pines del MF10. [4] ........................................................... 74 Figura 6.18. Diagrama de bloques del MF10. [4]............................................................... 75 Figura 6.19. Integrador no inversor del MF10. [7] ............................................................ 76 Figura 6.20. Simulacin del integrador no inversor solo y en cascada. ......................... 78 Figura 6.21. Modelo MF10, parte 1. .................................................................................. 79 Figura 6.22. Modelo MF10, parte 2. .................................................................................. 80 Figura 6.23. Modelo MF10, parte 3. .................................................................................. 81 Figura 6.24. MF10 como filtro pasabajos de segundo orden, fc=1khz. ......................... 82
xi

Figura 6.25. Configuracin utilizada para probar MF10. [4] .......................................... 82 Figura 6.26. Ecuaciones de diseo para la configuracin de prueba. [4] ........................ 83 Figura 6.27. Resultado de simulacin del MF10 como filtro de segundo orden. .......... 84 Figura 6.28. Respuesta normalizada para varios filtros de segundo orden en funcin de Q. [4].................................................................................................................................. 84

xi i

NDICE DE TABLAS

Tabla 4.1. Lista de componentes bsicos .......................................................................... 30 Tabla 4.2. Lista de prefijos vlidos para value............................................................. 34

xi ii

RESUMEN

Este proyecto pretende servir como una gua de instalacin y puesta a punto de herramientas de cdigo abierto para el diseo y simulacin de circuitos electrnicos. Todo esto con la finalidad de brindar una alternativa a las tradicionales herramientas privativas que suelen estar fuera del alcance de la mayora de estudiantes y usuarios en general debido a sus elevados precios. Esto se logr desarrollando dicha gua para los programas Oregano y la suite gEDA trabajando bajo GNU/Linux, especficamente la distribucin Ubuntu 9.04. Adems se desarroll una gua de uso de dichos paquetes donde se aprende a dibujar y simular esquemticos, adems de la elaboracin de nuevos smbolos para sus libreras y la asignacin de sus respectivos modelos para lograr una simulacin exitosa. Adems se hizo una breve comparacin de dichas herramientas libres con la aplicacin TINA que se utiliza actualmente en la Escuela de Ingeniera Elctrica de la Universidad de Costa Rica. Como ltimo punto se probaron los programas de cdigo abierto simulando en ellos dos modelos originales para los filtros integrados MF10 y MAX274. Como resultado todo este proyecto determin que las herramientas de cdigo abierto poseen un gran potencial, principalmente en el caso de la suite gEDA, pudiendo convertirse en una herramienta poderosa y verstil para el diseo y simulacin de circuitos electrnicos, adems de otras opciones que posee, alcanzando el mismo nivel en algunos aspectos que aplicaciones privativas como TINA.
xi v

CAPTULO 1: Introduccin
La dependencia de software privativo para el diseo y simulacin de circuitos electrnicos entraa gastos muy elevados en el pago de licencias para poder utilizar dichas herramientas. En el caso de las personas que no pueden asumir este tipo de gastos, deben recurrir a versiones limitadas de estas mismas herramientas (versiones demo) o en algunas ocasiones los lleva a violar los derechos de autor al conseguir versiones completas de los distintos programas de forma ilcita. Debido a todo esto se hace evidente la necesidad de contar con herramientas de cdigo abierto capaces de sustituir los programas que normalmente se utilizan y que no son libres ni gratuitos. La importancia de hallar una alternativa econmica y accesible para el diseo y simulacin de circuitos electrnicos, fue suficiente motivacin para realizar una investigacin que tuviera como objetivo principal el identificar, configurar y probar las herramientas ya existentes en cdigo abierto. De forma ms especfica, se investig sobre las herramientas de diseo y simulacin de circuitos electrnicos ya existentes bajo la distribucin Ubuntu, ya que bajo la plataforma GNU/Linux existe gran variedad de programas en cdigo abierto que se adecuaron a los objetivos de la investigacin. Adems, tomando en cuenta que el objetivo del proyecto era utilizar herramientas de cdigo abierto, fue lgico pensar en utilizar un
1

sistema operativo que se rigiera bajo la licencia de software libre, obteniendo una alternativa totalmente libre y gratuita para cualquier persona con acceso a una computadora y con la necesidad de disear y simular circuitos electrnicos. Una vez que se tom todo esto en cuenta, se pudo pensar en objetivos ms especficos, como lo es la configuracin adecuada de diversos paquetes para constituir una suite integral que permita tanto la simulacin y diseo de circuitos electrnicos. Adems, se plante la necesidad de probar esta suite de forma que se comprobara su adecuado funcionamiento. Para lograr esto se pens en simular tres circuitos integrados poco usados en la suite creada, de los cuales al menos un circuito integrado sea modelado por primera vez. Por ltimo, se consider de mucha importancia la creacin de una gua en la que se detallara los pasos a seguir para la instalacin y puesta a punto de la suite integrada, incluyendo todos los requisitos de los distintos paquetes a ser instalados as como varios ejemplos del uso de la suite. Adems, se incluy el procedimiento utilizado para poder modelar nuevos dispositivos que fueran compatibles con las herramientas de cdigo abierto utilizadas.

1.1 Objetivos
1.1.1 Objetivo general Identificar, configurar y probar las herramientas de cdigo abierto usadas para el diseo y simulacin de circuitos electrnicos.

1.1.2 Objetivos especficos Identificar las herramientas de cdigo abierto existentes para el diseo y simulacin de circuitos electrnicos. Configurar las herramientas anteriores de tal forma que constituyan una suite integrada. Probar la suite integrada con la simulacin de tres circuitos integrados poco usados, con al menos uno de ellos siendo modelado por primera vez. Escribir una gua de usuario para la instalacin y puesta a punto de la suite integrada, que incluya ejemplos de su uso.

1.2 Metodologa
Para el desarrollo de este proyecto se requiri investigar sobre los paquetes disponibles para la simulacin de circuitos en Linux. Considerando que las herramientas a elegir para la elaboracin del proyecto deban ser lo ms completas posibles, es decir, que permitieran la descripcin y simulacin de circuitos analgicos y digitales, se eligieron los paquetes gEDA y Oregano como las herramientas de cdigo abierto a utilizar.

Posterior a esto se procedi a realizar la instalacin de los diferentes paquetes y sus respectivas dependencias para empezar a familiarizarse con dichas herramientas, de manera que se pudo conocer las ventajas y limitantes de dichos paquetes como herramientas para la simulacin y diseo de circuitos electrnicos. Una vez que se aprendieron a utilizar los programas se empezaron a probar modelos de PSpice, ya existentes de algunos circuitos integrados, para verificar su compatibilidad de dichos modelos con gEDA y Oregano. Una vez que se logr utilizar los modelos de PSpice correctamente en las herramientas de Linux, se procedi a desarrollar nuevos modelos de circuitos integrados poco comunes como lo son el MF10 que consiste en un filtro capacitor conmutado y el MAX274 que es un filtro analgico integrado. Se probaron en circuitos con alguna funcin en especfico y se compararon con los datos que brindan los fabricantes para verificar su desempeo como herramientas de simulacin. Adems se compar con el software utilizado en la Escuela de Ingeniera Elctrica, Tina.

CAPTULO 2: Herramientas libres disponibles


2.1 Proyecto gEDA
2.1.1 Descripcin El proyecto gEDA naci con el fin de crear una suite completa bajo la licencia GPL (General Public License) que sirviera como un equipo de herramientas para la automatizacin de diseo electrnico. Estas herramientas sirven para distintas tareas, ya sea el diseo de circuitos elctricos, dibujo de esquemticos, simulacin, creacin de prototipos y produccin. Bsicamente, cualquier programa independiente, bajo la licencia GPL y relacionado con la automatizacin de diseo electrnico, puede unirse al proyecto gEDA, ya que este proyecto es ms como una confederacin de programas que se complementan entre s y no una aplicacin nica e integral. La ventaja de que gEDA sea una suite y no una aplicacin nica es que le permite al usuario poder escoger la aplicacin que ms desee utilizar para cada tarea, de manera que se brinda una libertad que no se tiene en las aplicaciones tradicionales. Gracias a esta caracterstica, el usuario dentro de su flujo de diseo puede reemplazar alguna herramienta de gEDA por otra que prefiera ms, convirtiendo a gEDA en una aplicacin muy verstil. O igualmente, los encargados del mantenimiento del proyecto gEDA pueden fcilmente agregar ms herramientas al proyecto mejorndolo y volvindolo ms robusto. Una desventaja es que la interoperabilidad entre las herramientas no es perfecta, adems de generar cierta confusin en usuarios que intentan usar la suite por primera vez.
5

En general, las herramientas que componen el proyecto gEDA son las siguientes: gEDA/gaf Captura esquemtica y generacin de netlist ngspice Motor de simulacin SPICE gnucap Motor de simulacin anlogica gspiceui Interfaz grfica para ngspice y gnucap pcb Diseo PCB gerbv Visor Gerber Icarus Verilog Simulador Verilog GTKWave Visor de formas de onda digital wcalc Anlisis de lneas de transmisin y estructura electromagntica

2.2 Herramientas
Las herramientas presentadas a continuacin son las ms bsicas y necesarias para poder llevar a cabo las tareas ms comunes en el diseo de circuitos electrnicos.

2.2.1 gschem Es el programa para la captura de esquemticos de la suite gEDA (Figura 2.1). Se utiliza para facilitar de manera grfica el trabajo con esquemticos de circuitos, smbolos de componentes y diagramas de bloque.

El formato de los esquemticos usados en gschem es .sch y el formato para los smbolos usados en la librera es .sym. La librera de smbolos disponibles para trabajar en gschem es muy amplia, pero de igual forma se puede ampliar agregando smbolos creados por el usuario de la forma que se explicar ms adelante en este mismo documento. Vale la pena aclarar que los smbolos son simplemente la representacin grfica, pero con lo que no se cuenta de manera inmediata es con los archivos que modelan dichos dispositivos. Estos archivos se

Figura 2.1. Programa para captura de esquemticos gschem.

pueden crear o tambin se pueden descargar de las pginas de los fabricantes. El procedimiento para realizar los modelos y adjuntarlos a los smbolos se explicar ms adelante.

2.2.2 GNU Spice GUI (gspiceui) La aplicacin gspiceui es la interfaz grfica para realizar simulaciones de circuitos hechos en gschem o cualquier otro paquete que genere archivos en formato .sch (esquemtico), .ckt (circuito), .cir (circuito) y .net (netlist). Se vuelve una herramienta muy

Figura 2.2. GNU Spice GUI. 8

til para poder usar con mayor facilidad varios paquetes tales como gnetlist (generador de lista de nodos), ngspice (motor de simulacin), gnucap (motor de simulacin) y gwave (visualizador de formas de onda). Esta herramienta se vuelve muy verstil al poder utilizar dos motores de simulacin distintos, donde ngspice es un motor basado en el motor de simulacin original que utiliz en sus inicios el programa OrCAD PSpice, y gnucap es un motor de simulacin libre y gratuito, ambos se actualizan constantemente, pero gnucap presenta mayores opciones de simulacin que ngspice. Entre las opciones que posee gnucap y que ngspice no tiene ngspice no tiene estn la posibilidad de poder calcular los parmetros de intensidad de corriente elctrica, potencia elctrica y resistencia elctrica en cada dispositivo y nodo del circuito. Adems de poder simular para los modos de Fourier y Quiescent, y presentando la opcin utilizar escala logartmica para el modo AC y DC. Otra caracterstica que posee el programa gspiceui es que facilita una ventana donde muestra todos los pasos que se van ejecutando y que normalmente se tendran que hacer manualmente desde la consola de la distribucin de GNU/Linux para poder llevar a cabo la simulacin. Adems, en esta misma ventana se pueden visualizar y modificar los archivos que se van generando (.cir, .ckt, .sch y .net), adems del archivo original que se utiliz para la simulacin, permitiendo la posibilidad de corregir cualquier error cometido o agregar modificaciones consideradas a ltimo momento. Y por ltimo, se cuenta con un botn que abre el programa gschem para poder modificar el esquemtico a simular.

Figura 2.3. Gwave graficando la simulacin de un LM555 en modo astable usando el motor gnucap.

En la Figura 2.3 se puede observar al programa gwave graficando los resultados de la simulacin usando el motor gnucap para el integrado LM555 funcionando en modo astable. En el lado derecho de la figura se puede observar donde se encuentran todas las variables con posibilidad de ser graficadas, y en el lado izquierdo se encuentran unos paneles donde se graficarn los resultados. Lo nico que se tiene que hacer para graficar dichas variables es arrastrarlas de la ventana derecha hacia los paneles del lado izquierdo. En el caso de la Figura 2.3 se puede observar que se cuenta con dos paneles disponibles para agregar variables, pero tambin se puede aumentar o disminuir esta cantidad de paneles.
10

2.3 Oregano
2.3.1 Descripcin Oregano es una aplicacin para dibujar diagramas esquemticos y simular circuitos electrnicos (Figura 2.4), a diferencia de gEDA que consiste en una suite de aplicaciones para llevar a cabo las mismas tareas. Cuenta con una interfaz amigable para el diseo y descripcin del circuito a simular. Provee una amplia librera de smbolos incluyendo sdfssafsafsdf

Figura 2.4. Interfaz grfica de Oregano.

11

componentes lineales, CMOS, TTL, amplificadores operacionales y mucho ms. El formato utilizado para la librera de smbolos es .oreglib, los modelos que describen dichos dispositivos utilizan formato .model y los esquemticos guardados por Oregano usan el formato .oregano. Adems permite simular los circuitos dibujados siempre y cuando se cuente con el modelo de todos los componentes utilizados en el esquemtico, puede realizar anlisis de tiempo, de respuesta en frecuencia, para distintos valores de corriente directa (CD) y anlisis de Fourier. Puede elegir entre varias opciones de simulacin, generar y editar el listado de nodos (netlist) y utilizar de puntas de prueba. Oregano soporta como motores de simulacin a gnucap y ngspice.

Figura 2.5. Despliegue del men de Oregano.

Al observar la Figura 2.4 y 2.5 se puede notar que Oregano realmente posee lo necesario para poder crear esquemticos y simularlos, sin caer en una innecesaria saturacin de opciones en la interfaz y el men.
12

CAPTULO 3: Instalacin de paquetes


La instalacin de todos los paquetes se realiz bajo la distribucin Ubuntu 9.04 (cuyo nombre cdigo es Jaunty Jackalope) usando una cuenta de usuario con privilegios de administrador. Dicha distribucin estaba recin instalada a la hora de instalar la suite gEDA y Oregano para poder garantizar que se tomaran en cuenta todas las dependencias de dichos paquetes al realizar esta gua de instalacin.

Figura 3.1. Ubuntu 9.04 Jaunty Jackalope.

3.1 Instalacin de la suite gEDA


Esta seccin describe un procedimiento diseado para obtener como resultado la adecuada instalacin de la suite gEDA, incluyendo el motor de simulacin gnucap.
13

Ver seccin 3.3 para instalacin del motor de simulacin ngspice y revisar la seccin 5.1 para instalacin de herramientas para crear smbolos. Se dise esta gua con la intencin de que sea til y clara para personas que no se encuentran familiarizadas con la instalacin de programas en el ambiente GNU/Linux. Los pasos son los siguientes: 1) Acceder al Gestor de paquetes Synaptic: a. Este se encuentra ubicado en Sistema >> Administracin >> Gestor de paquetes Synaptic. Tal como se muestra en la Figura 3.2.

Figura 3.2. Acceso al Gestor de paquetes Synaptic.

14

2) Una vez dentro del Gestor de paquetes Synaptic dar clic en el botn Buscar. Este se puede apreciar en la Figura 3.3.

Figura 3.3. Gestor de paquetes Synaptic.

3) Buscar el paquete correspondiente a la suite gEDA ingresando la palabra geda en el buscador y dar clic en Buscar como en la Figura 3.4.

Figura 3.4. Buscador del Gestor de paquetes Synaptic.

15

4) Buscar entre los resultados de bsqueda el paquete geda y marcarlo para instalar dando clic derecho sobre el paquete, tal como se muestra en la Figura 3.5.

Figura 3.5. Marcar el paquete gEDA.

5) Seguidamente se mostrar una ventana que avisa que es necesario instalar otros paquetes requeridos por el paquete gEDA. Estos paquetes son llamados dependencias y son necesarios para el buen funcionamiento del programa, as que se debe dar clic en Marcar como lo muestra la Figura 3.6.

16

Figura 3.6. Marcar paquetes requeridos por gEDA.

6) Repetir los pasos del 2 al 5 para el paquete gspiceui (GNU Spice GUI). 7) Para que la instalacin se haga efectiva dar clic en el botn Aplicar del Gestor de paquetes Synaptic, como en la Figura 3.7.

Figura 3.7. Aplicar instalacin de paquetes. 17

8) Una ltima ventana de confirmacin aparece (Figura 3.8), dar clic en Aplicar.

Figura 3.8. Confirmacin de instalacin de paquetes.

9) Todos los paquetes marcados sern descargados automticamente (Figura 3.9).

Figura 3.9. Descarga de los paquetes a instalar.

18

10) Seguidamente los paquetes descargados se instalarn automticamente como se observa en la Figura 3.10.

Figura 3.10. Instalacin de los paquetes descargados.

11) Al finalizar la instalacin se presenta un informe de los cambios aplicados al sistema (Figura 3.11), dar clic en Cerrar.

Figura 3.11. Informe de cambios aplicados al sistema.

19

3.2 Instalacin de Oregano


Al igual que con la suite gEDA, la instalacin del programa Oregano implica la instalacin del motor de simulacin gnucap. Ver seccin 3.3 para la instalacin de ngspice. El procedimiento para la instalacin de Oregano es el siguiente: 1) Acceder al Gestor de paquetes Synaptic: a. Este se encuentra ubicado en Sistema >> Administracin >> Gestor de paquetes Synaptic. Tal como se muestra en la Figura 3.2. 2) Una vez dentro del Gestor de paquetes Synaptic dar clic en el botn Buscar. Este se puede apreciar en la Figura 3.3. 3) Buscar el paquete correspondiente al programa Oregano ingresando la palabra oregano en el buscador y dar clic en Buscar como en la Figura 3.4. 4) Buscar entre los resultados de bsqueda el paquete oregano y marcarlo para instalar dando clic derecho sobre el paquete, tal como se hizo con el paquete geda en la Figura 3.5. 5) Seguidamente se mostrar una ventana que avisa que es necesario instalar las dependencias requeridas por el paquete Oregano, as que se debe dar clic en Marcar como lo muestra la Figura 3.6. 6) Para que la instalacin se haga efectiva dar clic en el botn Aplicar del Gestor de paquetes Synaptic, como en la Figura 3.7. 7) Una ltima ventana de confirmacin aparece (Figura 3.8), dar clic en Aplicar. 8) Todos los paquetes marcados sern descargados automticamente (Figura 3.9).
20

9) Seguidamente los paquetes descargados se instalarn automticamente como se observa en la Figura 3.10. 10) Al finalizar la instalacin se presenta un informe de los cambios aplicados al sistema (Figura 3.11), dar clic en Cerrar.

3.3 Instalacin del motor de simulacin NGSpice


La instalacin del motor de simulacin ngspice es distinta a la instalacin de los programas anteriores, ya que ste no se encuentra disponible en el Gestor de paquetes Synaptic. Por lo que es necesario descargar su cdigo fuente desde la pgina en internet oficial de los desarrolladores de ngspice y luego compilarlo en Ubuntu. Antes de explicar el procedimiento es importante aclarar que esta instalacin, al igual que las dems, precisa de tener acceso a una cuenta con privilegios de administrador. Para este caso especfico el nombre usuario de la cuenta que se us fue usuario, por lo que la ubicacin de la Carpeta personal es /home/usuario, y la ubicacin del Escritorio es /home/usuario/Escritorio. El procedimiento para realizar la instalacin es el siguiente: 1) Acceder a la direccin en internet: http://ngspice.sourceforge.net/download.html. 2) Buscar la ltima versin estable del paquete ng-spice-rework comprimido en formato .tar.gz y descargarlo en el Escritorio de Ubuntu (en este caso el nombre del archivo descargado es ng-spice-rework-19.tar.gz). 3) Acceder al Gestor de paquetes Synaptic:
21

a. Este se encuentra ubicado en Sistema >> Administracin >> Gestor de paquetes Synaptic. Tal como se muestra en la Figura 3.2. 4) Repetir los pasos del 2 al 5 del procedimiento de instalacin de Oregano para los paquetes autoconf, libtool, automake y build-essential. 5) Repetir los pasos del 6 al 10 del procedimiento de instalacin de Oregano. 6) Luego acceder al programa Terminal por medio de Aplicaciones >> Accesorios >> Terminal como en la Figura 3.12.

Figura 3.12. Acceso al programa Terminal.

22

7) Una vez dentro de la Terminal (Figura 3.13), digitar cd /home/usuario/Escritorio.

Figura 3.12. Terminal.

8) Luego digitar tar -xvzf ng-spice-rework-19.tar.gz y esperar unos segundos hasta que nuevamente se habilite el ingreso de texto en la Terminal. Con este comando se descomprime el archivo descargado ng-spice-rework-19.tar.gz en el Escritorio. 9) Digitar cd /home/usuario/Escritorio/ngspice-19. En este caso el nombre de la carpeta creada al descomprimir el archivo se llama ngspice-19. 10) Digitar ./autogen.sh y esperar un momento mientras el comando finaliza de actuar. 11) Digitar ./configure y esperar. Si por algn motivo apareciera un mensaje diciendo Orden no encontrada o Permiso denegado se debe: a. Mantener la Terminal abierta.
23

b. Borrar la carpeta que se cre en el Escritorio al realizar el paso 8. c. Repetir los pasos del 7 al 9. d. Volver a digitar ./configure. Con esto el problema no debe aparecer y se debe esperar a que el comando termine de actuar y se vuelva a habilitar la entrada de comandos. 12) Digitar make y esperar varios minutos. Aguardar pacientemente, ya que este paso puede tardar varios minutos y no se debe interrumpir. 13) Digitar sudo make install. 14) Ingresar la contrasea de usuario que se utiliza para entrar a la sesin. 15) Esperar que finalice la accin del comando. 16) Cerrar la Terminal.

Con esto quedar instalado el motor de simulacin ngspice y se podr utilizar tanto en la suite gEDA y en Oregano.

24

CAPTULO 4: Gua de uso de aplicaciones


4.1 Uso de la suite gEDA
El uso de la suite gEDA podra dividirse en dos etapas bsicas: el dibujo del esquemtico (gschem) y la simulacin del circuito representado por el esquemtico (gspiceui). A continuacin se describe el uso bsico de estas dos aplicaciones para poder llevar a cabo una simulacin exitosa.

4.1.1 Uso de gschem Para poder acceder al programa gschem se debe seguir la secuencia Aplicaciones >> Electrnica >> gEDA Schematic Editor como lo muestra la Figura 4.1.

Figura 4.1. Acceso a gschem. 25

La ventana que se presenta al abrir gschem es la que se aprecia en la Figura 4.2.

Figura 4.2. Editor de esquemticos gschem.

En la Figura 4.3 se puede observar con ms detalle la barra de herramientas disponible en gschem.

Figura 4.3. Barra de herramientas de gschem.

26

Donde la numeracin de la Figura 4.3 corresponde a lo siguiente: 1. Archivo nuevo. 2. Abrir archivo. 3. Guardar. 4. Deshacer. 5. Rehacer. 6. Ir a la librera de componentes. 7. Agregar cables. 8. Agregar buses. 9. Agregar texto. 10. Modo de seleccin.

Para agregar elementos al esquemtico solamente es necesario dar clic en el sexto botn de la Figura 4.3 y aparecer una ventana como la Figura 4.4.

Figura 4.4. Libreras de gschem. 27

En esta ventana se pueden buscar fcilmente componentes para ser utilizados en el esquemtico a realizar. Es importante recordar que esta librera es de smbolos y no de modelos, por lo que estos smbolos solo sirven para dibujar los esquemticos. Para poder simular los esquemticos es necesario que cada componente tenga asignado un modelo que lo describa. Solamente los componentes ms bsicos (fuentes, resistencias, inductores, capacitores y tierra) pueden simularse sin asignarles modelos. El procedimiento para agregar ms smbolos a la librera y asignarle modelos a los smbolos se desarrollar en el prximo captulo.

Figura 4.5. Esquemtico sin cablear.

28

En la Figura 4.5 se observa un esquemtico sin cablear. En este caso solo es cuestin de dar clic en el stimo botn de la Figura 4.3 para poder realizar el cableado necesario. Luego es necesario modificar los atributos de cada componente agregado, ya que cada uno de ellos debe tener un nombre distinto y un valor asignado. Por lo que se debe dar doble clic sobre cada componente. En la Figura 4.6 se puede apreciar la ventana que se abre al dar doble clic sobre la fuente de la Figura 4.5.

Figura 4.6. Editor de atributos de fuente.

En esta ventana se cuenta con la opcin de agregar nuevos atributos a la fuente y modificar los ya existentes. Adems se puede escoger si se hace visible el nombre o el valor del atributo, o bien, dejarlo como invisible.

29

En el caso de la fuente solo se modifica el atributo refdes, de manera que se reemplaza V? por V1. Este atributo lo utiliza el motor de simulacin para diferenciar los distintos componentes del esquemtico. Pero en el caso de gEDA es muy importante que el este atributo empiece siempre con determinada letra que se puede deducir de la Tabla 4.1.

Tabla 4.1. Lista de componentes bsicos Componente Fuente independiente de voltaje Fuente independiente de corriente Resistencia Capacitor Inductor Diodo Transistor de unin bipolar BJT Transistor de efecto de campo MOSFET Subcircuito (.SUBCKT) Letra inicial V I R C L D Q M X

En caso de encontrar muy molesto el tener que renombrar el atributo refdes de todos los componentes, existe un procedimiento para modificar la configuracin de gschem y solucionar esta molestia. El procedimiento es el siguiente:
30

1. Abrir la Terminal. 2. Digitar sudo gedit /etc/gEDA/system-gschemrc. Este comando solicitar la contrasea de usuario. 3. Una vez en el editor de textos, dar clic en el botn Buscar como en la Figura 4.7.

Figura 4.7. Editor de textos gedit.

4. Buscar la palabra auto-uref con el buscador y luego cerrarlo. 5. Como resultado se estar ubicado en la seccin del documento que se refiere a la autonumeracin de los componentes. De manera que se deben descomentar las tres lneas que contienen la palabra auto-uref borrando el smbolo ; (punto y coma) del inicio de estas tres, quedando como la Figura 4.8. 6. Dar clic en Guardar y cerrar el editor de textos.

31

7. Cerrar la Terminal.

Figura 4.8. Lneas con auto-uref descomentadas.

Para que estos cambios hagan efecto solo se debe cerrar gschem y volverlo a abrir. Continuando con el esquemtico de la Figura 4.5, siempre es necesario agregar manualmente el atributo value a todas las resistencias, capacitores e inductores, ya que este atributo es el encargado de asignar el valor de ohmios para las resistencias, faradios para los capacitores y henrios para los inductores. Suponiendo que a las resistencias de la Figura 4.5 se les quiera asignar un valor de 1k, lo que se debe hacer es dar doble clic sobre cada resistencia y dentro de la seccin Add Attribute buscar el atributo value, asignarle el valor de 1k y dar clic en el botn Add como en la Figura 4.9. Si no se desea hacer visible el nombre o el valor del atributo agregado, solo es cuestin de

32

desmarcar la casilla correspondiente a N o V en esta misma ventana. La casilla Vis? debe estar marcada para que se haga visible el atributo en el esquemtico, aunque el hecho de ser visible o invisible no afecta a la hora de la simulacin.

Figura 4.9. Agregar valor de 1k a resistencia.

Es importante hacer referencia a los prefijos que pueden ser usados en el atributo value. Estos se puede observar en la Tabla 4.2. Es indiferente si se usa mayscula o minscula. Tambin es posible usar la notacin XeY que sera equivalente a decir 10 , en caso de que se considere ms conveniente. Por lo que el valor de 1k se puede expresar como 1k o 1e3, en ambos casos es indiferente el uso de maysculas o minsculas.

33

Tabla 4.2. Lista de prefijos vlidos para value Prefijo T G MEG K M U N P F Nombre Tera Giga Mega Kilo Mili Micro Nano Pico Femto Valor 1012 109 106 103 10-3 10-6 10-9 10-12 10-15

Una vez que el esquemtico tiene asignado todos los atributos para cada uno de los componentes se debe guardar el esquemtico en formato .sch para luego continuar con la simulacin en gspiceui. El resultado final debe parecerse al de la Figura 4.10.

Figura 4.10. Esquemtico terminado.

Es importante aclarar que el atributo value de la fuente es indiferente en este punto, ya que desde gspiceui se deben definir todos los parmetros de la fuente de una
34

forma ms sencilla y amigable. En caso de existir ms de una fuente en el esquemtico s se debe prestar atencin al atributo value de las fuentes. Pero de igual forma, una de las fuentes va a ser definida desde gspiceui, as que solo es necesario especificar las dems fuentes. Esto quedar ms claro en la seccin 4.2 de este documento.

4.1.2 Uso de gspiceui Al instalar gspiceui no se crea un acceso a este en el men de aplicaciones de Ubuntu, as que la forma ms rpida para acceder a gspiceui es por medio de la combinacin de teclas Alt + F2. Al presionar estas teclas al mismo tiempo se abrir una ventana como la Figura 4.11.

Figura 4.11. Ejecutar gspiceui.

En esta ventana se debe ingresar el texto gspiceui y dar clic en el botn Ejecutar. De esta forma se accede al programa gspiceui cuya interfaz se muestra en la Figura 4.12.

35

Figura 4.12. Interfaz de gspiceui.

Para escoger el motor de simulacin a utilizar se debe dar clic en Settings. Ah se abrir un men desplegable como el de la Figura 4.13 y se podr escoger entre gnucap y ngspice.

Figura 4.13. Eleccin de motor de simulacin.

La Figura 4.14 corresponde a la barra de herramientas de gspiceui, de donde la numeracin corresponde a: 1. Abrir circuitos en formato .ckt, .cir y listas de nodo en formato .net.
36

2. Abrir esquemticos en formato .sch. 3. Recargar archivo. 4. Cerrar archivo. 5. Crear simulacin. 6. Correr simulacin. 7. Detener simulacin. 8. Editar esquemtico. 9. Graficar resultados de simulacin. 10. Ver manual.

Para poder realizar la simulacin se debe cargar el esquemtico a simular, por lo que se debe dar clic en el segundo botn de la Figura 4.14 y buscar el archivo previamente guardado en formato .sch en la seccin anterior.

Figura 4.14. Barra de herramientas de gspiceui.

Una vez cargado el archivo, se puede observar que el cuadro de dilogo ubicado en la parte inferior de la ventana muestra la lista de nodos del esquemtico cargado.

37

Se deben marcar todos los nodos y componentes que sean de inters para simulacin. Esto se hace dando clic en el nombre de los nodos y componentes en las columnas Nodes y Components respectivamente. Luego se debe determinar la variable que se desea calcular de cada nodo y componente marcado. Es decir, se deben marcar todas las casillas deseadas de la seccin Parameters para tensin elctrica, intensidad de corriente elctrica, potencia elctrica y resistencia elctrica. Es necesario especificar la fuente del circuito en la seccin Signal source. Esta fuente ser configurada con gspiceui. En caso de haber ms de una fuente se debe elegir una y las dems deben estar correctamente configuradas desde el esquemtico.

Figura 4.15. Configuracin de fuente en gspiceui. 38

Para configurar la fuente se debe dar clic en Setup. En este caso se configur como una fuente CA de 1V de amplitud con una frecuencia de 1Hz. Es importante mencionar que esta fuente puede ser configurada como CA o CD, inclusive se puede configurar como una seal de reloj, independientemente del tipo de fuente que era en el esquemtico creado en gschem. Una vez definida y configurada la fuente se debe proceder a determinar el tiempo de inicio y final de la simulacin, as como el tamao del incremento del tiempo. Para este caso se defini un tiempo inicial en cero segundos y un tiempo final en 3 segundos, con un incremento de 10 milisegundos. Adems, se marcaron los componentes R1, R2 y V1. Y solo se seleccion la casilla de tensin elctrica en Parameters. Teniendo todo esto listo se puede proceder a crear el archivo de simulacin dando clic en el quinto botn de la barra de herramientas. Una vez creado el archivo de simulacin se puede correr dicho archivo dando clic en el sexto botn de la barra de herramientas. Y finalmente, para poder observar de forma grfica los resultados de la simulacin se da clic en el noveno botn de la barra de herramientas, de manera que se abren dos ventanas como las de la Figura 4.16. La ventana de la derecha muestra todas las variables que pueden ser graficadas. Solo es cuestin de arrastrar dichas variables con el mouse hacia los paneles de la ventana izquierda. Cada panel muestra las variables que se le sean asignadas y es posible crear ms paneles dando clic derecho sobre alguno de ellos. Tambin es posible cambiar el color de las variables graficadas dando clic derecho sobre sus
39

nombres en el panel que se les asign. Adems es posible cambiar la escala del grfico a logartmico al desplegar el men Options >> X Axis Scale.

Figura 4.16. Graficador gwave.

En la Figura 4.17 se puede observar una propuesta de cmo presentar los resultados de simulacin del esquemtico simulado previamente. En este caso se puede apreciar que se agregaron nuevos paneles y que se cambiaron los colores de las variables graficadas. Es importante aclarar que a veces puede ocurrir que la grfica para la variable de algn componente bsico (fuente, resistencia, capacitor e inductor) se encuentra sdfsdfsdfsdfdsf

40

Figura 4.17. Representacin grfica de simulacin.

invertida. Esto se debe a que el simulador usa una convencin donde siempre va a tomar como positivo uno de los nodos del dispositivo (usualmente el izquierdo en resistencias, capacitores e inductores), y dependiendo de la posicin y rotacin de este dispositivo dentro del esquemtico a veces puede quedar invertido con respecto a la convencin del simulador, as que se debe colocar dicho dispositivo en la posicin correcta invirtiendo la conexin de las terminales, usando las herramientas para rotar el smbolo. Este detalle no afecta el funcionamiento del circuito, solamente invierte la representacin de los resultados de simulacin de algunos componentes, de manera que podra confundir al usuario en caso de simular circuitos ms complejos y obtener una salida inesperada.

41

4.2 Uso de Oregano


A diferencia de la suite gEDA, en Oregano se pueden realizar las dos etapas bsicas del diseo de un circuito electrnico: dibujo del esquemtico y simulacin del mismo. Para poder acceder a Oregano se debe seguir la siguiente secuencia: Aplicaciones >> Electrnica >> Oregano, herramienta para la ingeniera electrnica.

Figura 4.18. Acceso a Oregano.

Una vez dentro de Oregano se puede apreciar que tiene un aspecto muy similar a otros programas diseados para Windows como TINA.

42

Figura 4.19. Interfaz grfica de Oregano.

En la Figura 4.19 se puede notar que se cuenta con fcil acceso a la biblioteca de smbolos. Al igual que con gEDA, es importante recordar que esta librera es de smbolos y no de modelos, por lo que estos smbolos solo sirven para dibujar los esquemticos. Para poder simular los esquemticos es necesario que cada componente tenga asignado un modelo que lo describa. Solamente los componentes ms bsicos (fuentes, resistencias, inductores, capacitores y tierra) pueden simularse sin asignarles modelos. El procedimiento para agregar ms smbolos a la librera y asignarle modelos a los smbolos se desarrollar en el prximo captulo. Para realizar el mismo esquemtico que se utiliz con gEDA, se procede a buscar una fuente CA, dos resistencias y un nodo de referencia (tierra). En este caso la fuente s
43

debe estar debidamente configurada desde el esquemtico ya que los esquemticos creados con Oregano no se pueden usar en gspiceui, adems se pueden realizar las simulaciones directamente desde Oregano. Para configurar la fuente correctamente solo basta con hacer doble clic sobre ella y llenar los espacios correspondientes a cada variable de la fuente, tal como se muestra en la Figura 4.20.

Figura 4.20. Configuracin de fuente CA en Oregano.

En el caso de Oregano no hace falta respetar las letras iniciales de la Tabla 4.1 para el atributo refdes, ya que Oregano se encarga de asignar dicha letra inicial. Esto se puede apreciar en el atributo Template de la Figura 4.20, donde se muestra que el nombre interno que Oregano usa para crear la lista de nodos es V_@refdes por lo que
44

automticamente la fuente ya posee la letra inicial V que la identifica como fuente independiente de voltaje, haciendo que el atributo Refdes de la Figura 4.20 simplemente sea un nombre que se muestra en el esquemtico para el usuario. Luego para configurar las resistencias se debe hacer doble clic en cada una de ellas y llenar los datos que corresponde en la ventana igual a la Figura 4.21.

Figura 4.21. Configuracin de resistencia en Oregano.

Al igual que con gEDA se pueden usar los prefijos de la Tabla 4.2 o la representacin de forma exponencial (XeY).

Figura 4.22. Barra de herramientas de Oregano.

45

En la Figura 4.22 se puede apreciar la barra de herramientas disponible en Oregano, y la numeracin corresponde a: 1. Esquemtico nuevo. 2. Abrir esquemtico. 3. Guardar esquemtico. 4. Cortar. 5. Copiar. 6. Pegar. 7. Modo seleccin. 8. Ingresar texto. 9. Dibujar cable. 10. Agregar punta de prueba. 11. Correr simulacin. 12. Parmetros de simulacin. 13. Mostrar librera. 14. Mostrar cuadrcula. 15. Aumentar zoom. 16. Disminuir zoom.

Finalmente se dibujan los cables para terminar de crear el esquemtico y se aaden las puntas de prueba usando la barra de herramientas, quedando como resultado la Figura 4.23.
46

Figura 4.23. Esquemtico en Oregano.

Para elegir el motor de simulacin se puede acceder a travs del men en: Editar >> Preferencias. Seguidamente se procede a configurar los parmetros de simulacin usando la barra de herramientas. Se configura el tiempo inicial y final, as como el incremento (paso) de tiempo. Adems, Oregano posee la ventaja de poder realizar distintas pruebas al mismo tiempo: Anlisis en el tiempo, Fourier, CD y CA, a diferencia de gEDA que solo puede realizar un tipo de simulacin a la vez.

47

Figura 4.24. Eleccin de motor de simulacin.

Figura 4.25. Configuracin de parmetros de simulacin.

Una vez configurados los parmetros de simulacin, se procede a correr la simulacin, usando la barra de herramientas. Esto lanza automticamente una ventana como la Figura 4.26.

48

Figura 4.26. Resultado de simulacin en Oregano.

En dicha ventana se pueden marcar todas las variables que se deseen graficar. Estas variables corresponden a la tensin elctrica en los nodos previamente seleccionados con las puntas de prueba. Si se desea saber el nmero de cada nodo se puede ir a la ventana principal (Figura 4.23) y seleccionar en el men Ver >> Etiquetas de los nodos.

49

CAPTULO 5: Creacin de smbolos y asignacin de modelos


La clave en cualquier programa de diseo y simulacin de circuitos electrnicos es la capacidad de adoptar nuevos smbolos y poder asignarles sus respectivos modelos. A continuacin se mostrar el procedimiento mnimo necesario para realizar dichas tareas tanto en la suite gEDA como en Oregano.

5.1 Creacin de smbolos y asignacin de modelos en gEDA


Los smbolos en gEDA usan formato .sym. Para llegar a esto se debe seguir la siguiente secuencia de formatos y archivos. Parte del proceso requiere la utilizacin de una herramienta de la suite gEDA llamada tragesym.

Figura 5.1. Secuencia de formatos y archivos para obtener smbolo en gEDA.

El programa tragesym convierte archivos de texto en esquemticos .sch. Este archivo de texto se basa en el archivo tragesym-template2. El archivo tragesymtemplate2 se puede conseguir en el directorio /usr/share/doc/geda-doc/wiki/_media. La herramienta tragesym no queda instalada al realizar la instalacin estndar, as que es necesario instalar el paquete que la contiene. Este paquete es geda-utils. La instalacin se puede hacer por medio del Gestor de paquetes Synaptic, tal como se hizo al
50

instalar la suite gEDA y Oregano. O si se desea, la instalacin se puede llevar a cabo desde la Terminal ingresando la lnea sudo apt-get install geda-utils y luego autorizando la instalacin de paquetes no autenticados. Teniendo ya instalado el paquete geda-utils quedar habilitada la herramienta tragesym. Por lo tanto se puede empezar a crear un smbolo utilizando el procedimiento que se muestra a continuacin: 1. Abrir la Terminal. 2. Ingresar el comando cp /usr/share/doc/geda-doc/wiki/_media/tragesym-template2 /home/usuario/Escritorio. De esta forma se copiara el archivo tragesym-template2 al escritorio en formato .ods. 3. Abrir el archivo tragesym-template2.ods con OpenOffice y renombrarlo con el nombre del componente que se quiere crear. Para este caso se crear un smbolo para el componente MAX274, as que el archivo tendr el nombre MAX274.ods. 4. El documento tragesym-template2.ods est compuesto por tres secciones: options, geda_attr y pins. En la seccin options no hace falta realizar cambios. En la seccin geda_attr deben modificarse como mnimo las celdas que estn al lado de name, device y refdes como en la Figura 5.2.

51

Figura 5.2. Seccin geda_attr antes y despus de modificar.

5. La seccin pins debe quedar como la Figura 5.3. En la columna #pinnr deben escribirse todos los nmeros de pin que posee el componente, en el mismo orden que estn declarados en el modelo que lo describe. La columna type define si el pin va a ser usado como entrada (i), salida (o), entrada/salida (io), reloj (clk), entre otros. Pero luego de realizar varias pruebas se consider que usar el tipo io garantizaba siempre un buen funcionamiento. De igual forma para style, existen varios tipos que se pueden usar pero el que es ms universal viene siendo line. En la columna posit simplemente se debe especificar la posicin del pin: izquierda (l), derecha (r), arriba (t) y abajo (b). Y finalmente la columna label simplemente corresponde al nombre que se le desee dar a cada pin, en este caso se usaron los nombres que da el fabricante.

52

Figura 5.3. Seccin pins despus de modificar.

6. Crear un archivo vaco en el escritorio y copiar todo el contenido del archivo MAX274.ods en este archivo vaco. 7. Renombrar el archivo como MAX274 (sin extensin). 8. Abrir la Terminal. 9. Suponiendo que el archivo MAX274 se encuentra en el Escritorio hay que ejecutar el siguiente comando en la Terminal: cd /home/usuario/Escritorio. 10. Digitar en la Terminal tragesym MAX274 MAX274.sch. Con esto se crear un esquemtico del smbolo.

53

11. Abrir el esquemtico y hacer los retoques necesarios como reordenar pines y acomodar lo que se desee. 12. Una vez realizados los cambios se debe hacer una copia de MAX274.sch y renombrarla como MAX274.sym. 13. Digitar en la Terminal sudo cp /home/usuario/Escritorio/MAX274.sym

/usr/share/gEDA/sym/local para copiar el smbolo MAX274.sym en la librera local. Ahora el smbolo puede ser accedido desde gschem.

Figura 5.4. Creacin de archivo vaco en el Escritorio.

Ahora se necesita contar con un modelo en formato .CIR. El cual debe contar con una estructura como el de la Figura 5.5, donde se empiece con .SUBCKT y se finalice con .ENDS. Los nmeros que se muestran despus de NOMBRE_MODELO corresponden a los pines del componente a modelar. Este orden de pines debe coincidir con el orden usado en el documento MAX274.ods.

54

Figura 5.5. Estructura bsica de un modelo.

Una vez que se cuente con este archivo se debe copiar a la direccin /usr/share/gEDA/sym/local. En el caso del MAX274, suponiendo que el modelo MAX274.CIR se encuentre en el Escritorio, se debe ingresar el siguiente comando en la Terminal sudo cp /home/usuario/Escritorio/MAX274.CIR /usr/share/gEDA/sym/local. No se logr determinar un procedimiento que asigne permanentemente el modelo MAX274.CIR al smbolo MAX274.sym. Por lo tanto, cada vez que se agregue el smbolo MAX274 al esquemtico como en la Figura 5.6, se deben modificar sus atributos como en la Figura 5.7, de manera que se agreguen los atributos model y model-name con el mismo nombre que usa el modelo, en este caso MAX274. Adems, se debe agregar el atributo file indicando la direccin del modelo MAX274.CIR, la cual sera /usr/share/gEDA/sym/local/MAX274.CIR.

55

Figura 5.6. Smbolo del MAX274 en gschem.

Figura 5.7. Edicin de atributos del MAX274. 56

5.2 Creacin de smbolos y asignacin de modelos en Oregano


Las libreras en Oregano estn basadas en XML, y usan la extensin .oreglib. Estas libreras son capaces de describir varios smbolos al mismo tiempo y su estructura bsica es la mostrada en la Figura 5.8 y 5.9.
<ogo:library> <ogo:name>Nombre_Libreria</ogo:name> <ogo:symbols> <ogo:symbol> <ogo:name>Nombre_Smbolo</ogo:name> <ogo:objects> <ogo:line>(X1 Y1)(X2 Y2)(X3 Y3)(X4 Y4)(X1 Y1)</ogo:line> <ogo:line>(X5 Y5)(X6 Y6)</ogo:line> <ogo:line>(X7 Y7)(X8 Y8)</ogo:line> </ogo:objects> <ogo:connections> <ogo:connection>(X5 Y5 NUM_PIN1)</ogo:connection> <ogo:connection>(X8 Y8 NUM_PIN2)</ogo:connection> </ogo:connections> </ogo:symbol> <ogo:symbol> . . . </ogo:symbol> . . . </ogo:symbols> <ogo:parts> <ogo:part> <ogo:name>Nombre_Modelo</ogo:name> <ogo:symbol>Nombre_Smbolo</ogo:symbol> <ogo:labels> <ogo:label> <ogo:name>Reference designator</ogo:name> <ogo:text>@refdes</ogo:text> <ogo:position>(X9 Y9)</ogo:position> <ogo:modify>yes</ogo:modify> </ogo:label> <ogo:label> <ogo:name>NUM_PIN1</ogo:name> <ogo:text>NUM_PIN1</ogo:text> <ogo:position>(X10 Y10)</ogo:position> <ogo:modify>no</ogo:modify> </ogo:label>

Figura 5.8. Estructura bsica de librera en Oregano, parte 1.

57

<ogo:label> <ogo:text>NOMBRE_PIN1</ogo:text> <ogo:position>(X11 Y11)</ogo:position> <ogo:modify>no</ogo:modify> </ogo:label> <ogo:label> <ogo:name>NUM_PIN2</ogo:name> <ogo:text>NUM_PIN2</ogo:text> <ogo:position>(X12 Y12)</ogo:position> <ogo:modify>no</ogo:modify> </ogo:label> <ogo:label> <ogo:text>NOMBRE_PIN2</ogo:text> <ogo:position>(X13 Y13)</ogo:position> <ogo:modify>no</ogo:modify> </ogo:label> <ogo:label> <ogo:name>Model</ogo:name> <ogo:text>@model</ogo:text> <ogo:position>(X14 Y14)</ogo:position> <ogo:modify>no</ogo:modify> </ogo:label> </ogo:labels> <ogo:properties> <ogo:property> <ogo:name>Refdes</ogo:name> <ogo:value>X</ogo:value> </ogo:property> <ogo:property> <ogo:name>Template</ogo:name> <ogo:value>X_@refdes %NUM_PIN1 %NUM_PIN2 @model</ogo:value> </ogo:property> <ogo:property> <ogo:name>Model</ogo:name> <ogo:value>Nombre_Modelo</ogo:value> </ogo:property> </ogo:properties> </ogo:part> <ogo:part> . . . </ogo:part> . . . </ogo:parts> </ogo:library>

Figura 5.9. Estructura bsica de librera en Oregano, parte 2.

58

Los nmeros de los pines deben mantener siempre la misma secuencia en todo el documento, y deben coincidir con la secuencia de pines declarada en el modelo (Figura 5.5). Adems, al observar detenidamente las Figuras 5.8 y 5.9 se puede notar que la primera parte del archivo lo que hace es definir la forma del smbolo definiendo varias coordenadas y unindolas por lneas. Adems se determina la ubicacin de los pines, siempre manteniendo el orden antes mencionado. En el caso de este smbolo, se puede apreciar que la forma de este es una figura cerrada, que inicia y termina en la coordenada X1,Y1. Con pines en las coordenadas X5,Y5 y X8,Y8. Este smbolo (Nombre_Smbolo) es independiente del modelo (Nombre_Modelo), de manera que el mismo smbolo se puede usar en varios modelos. Esto es til en casos como amplificadores operacionales donde varios modelos distintos podran usar un mismo smbolo que los represente. Se puede notar que en Oregano la creacin de un smbolo requiere mucho trabajo, ya que las Figuras 5.8 y 5.9 representan la forma de una librera con un solo smbolo, y dicho smbolo con solamente dos pines. Por lo tanto, un smbolo con un nmero considerado de pines se vuelve algo muy complicado, volviendo a Oregano casi obsoleto con relacin a la creacin de smbolos. Cualquier librera .oreglib creada debe copiarse al directorio

/usr/share/oregano/libraries para poder utilizarse por Oregano, por medio del comando sudo cp /home/usuario/Escritorio/LIBRERIA.oreglib /usr/share/oregano/libraries desde la Terminal, suponiendo que la librera se encontrara en el Escritorio.
59

De igual manera, para que un modelo pueda usarse en Oregano debe usar la extensin .model y copiarse en el directorio /usr/share/oregano/models, adems debe tener la estructura de la Figura 5.5. Para copiar el modelo se debe ejecutar el siguiente comando desde la Terminal sudo cp /home/usuario/Escritorio/Nombre_Modelo.model /usr/share/oregano/models. Al realizar esto el modelo queda automticamente relacionado con su respectivo smbolo, a diferencia de gEDA donde es necesario especificar la ubicacin y nombre del modelo cada vez que se utiliza el smbolo creado por el usuario. Es importante destacar que el archivo de Nombre_Modelo.model debe llamarse igual a Nombre_Modelo usado en las Figuras 5.8 y 5.9.

60

CAPTULO 6: Diseo de modelos


6.1 Diseo del MAX274
El dispositivo MAX274 consiste en cuatro filtros activos de tiempo continuo idnticos de segundo orden, que al colocarse en cascada pueden obtener un filtro activo de orden ocho. Es capaz de trabajar como pasabajos y pasabandas con respuestas tipo Butterworth, Chebyshev, Bessel, entre otros. Al ser un filtro de tiempo continuo no necesita una seal de reloj, ni va a sufrir del ruido que este agrega a la seal de salida.

Figura 6.1. Configuracin de pines del MAX274.[3]

En la Figura 6.2 se puede observar el esquemtico de uno de los filtros, de donde se puede destacar que todos los elementos son conocidos. Adems se puede apreciar que las resistencias RX y RY dependen de la conexin del pin FC.
61

Figura 6.2. Esquemtico del filtro usado en el MAX274. [3]

Cada filtro del MAX274 solo requiere de cuatro resistencias para funcionar como pasabajos o pasabandas. Dicha configuracin de resistencias se puede observar en la Figura 6.3.

Figura 6.3. Configuracin de resistencias externas usadas en el MAX274.[3]

62

Dicha configuracin obedece a las siguientes ecuaciones:

( )

(6.1-1)

+ =

( )

(6.1-2)

(6.1-3)

(6.1-4)

Como complemento a estas ecuaciones se tiene la Figura 6.4 que describe la forma de las respuestas pasabajos y pasabandas, adems de sus respectivas ecuaciones que a la vez se relacionan con las ecuaciones 6.1-1, 6.1-2, 6.1-3 y 6.1-4. Con esta informacin se procedi a realizar el diseo del modelo del MAX274. Se consider conveniente realizar un modelo dividido en distintos bloques con tareas especficas para facilitar la escritura y depuracin del modelo. De manera que era necesario crear un bloque o varios que relacionaran el pin FC con RX y RY de manera que variara sus resistencias de acuerdo a la Figura 6.2. As que se decidi utilizar interruptores controlados por voltaje para simular las resistencias, ya que estos poseen la propiedad de cambiar la resistencia entre sus terminales basndose en la diferencia de potencial de dos nodos de control.

63

Figura 6.4. Respuesta pasabajos y pasabandas para un filtro del MAX274. [3]

Al observar la tabla dentro de la Figura 6.2 se puede apreciar que la resistencia RX aumenta cuando el pin FC es conectado a un nivel de tensin elctrica mayor, por lo tanto en el caso de RX se utilizaron resistencias e interruptores en serie para ir aumentando la resistencia equivalente en las terminales (RX) y as lograr el efecto deseado. El modelo del subcircuito creado para RX se puede observar en la Figura 6.5.

64

Figura 6.5. Modelo para subcircuito RX.

Luego se realiz algo similar para RY, solo que en este caso la resistencia deba disminuir conforme aumentaba el nivel de tensin elctrica en FC, por lo que se usaron resistencias e interruptores en paralelo. El subcircuito RY se aprecia en la Figura 6.6.

Figura 6.6. Modelo para subcircuito RY.

Teniendo las resistencias RX y RY listas solo hace falta definir el modelo para los amplificadores operacionales. Por lo que se procedi a sustituir las ecuaciones 6.1-1, 6.1-2,
65

y 6.1-4 en la ecuacin G(s) de la Figura 6.4 para obtener la funcin de transferencia de un filtro del MAX274 cuando trabaja como pasabajos. Todo esto teniendo que:

2 109

1 2

(6.1-5)

Donde C=79,575pF. De manera que se llega a la siguiente funcin de transferencia:

1 2 3 4 +5

2 3 2 + +5 () 1 2 4

+1 3

(6.1-5)

Figura 6.7. Modelo en frecuencia para amplificador operacional.

Luego, utilizando el modelo en frecuencia A(s) de la Figura 6.7 para la ganancia de los amplificadores operacionales y mediante un largo anlisis matemtico del circuito de la Figura 6.3 se logr determinar la siguiente funcin de transferencia para el filtro en modo pasabajos:

66

2 3 1 2 3 4 +5 2 +1 2 4 +5 +1 3 + +()1 51 2 3 4 +5 ()2 + +()2 91 2 3 +()3 1 2

(6.1-6)

De donde se hace evidente que si el modelo en frecuencia A(s) tiende a infinito entonces las ecuaciones 6.1-5 y 6.1-6 se igualaran. Por lo tanto es necesario utilizar un modelo de amplificador operacional lo ms cercano al ideal, donde la ganancia A(s) sea de la forma A(s)=K donde K es una constante que tiende a infinito. El subcircuito para el amplificador operacional ideal se muestra en la Figura 6.8.

Figura 6.8. Modelo para subcircuito OPAMP.

Una vez que se tuvo todo listo se procedi a escribir el modelo para el filtro MAX274 que se muestra en la Figura 6.9 y 6.10.

67

.SUBCKT MAX274 * * * * * * * * * * * * * * * * * * * * * * * * * XFILTROA XFILTROB XFILTROC XFILTROD 1 2 3 12 11 13 14 24 23

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LPOD | | | | | | | | | | | | | | | | | | | | | | IND | | | | | | | | | | | | | | | | | | | | | BPID | | | | | | | | | | | | | | | | | | | | BPOD | | | | | | | | | | | | | | | | | | | GND | | | | | | | | | | | | | | | | | | LPID | | | | | | | | | | | | | | | | | LPIC | | | | | | | | | | | | | | | | V| | | | | | | | | | | | | | | BPOC | | | | | | | | | | | | | | BPIC | | | | | | | | | | | | | INC | | | | | | | | | | | | LPOC | | | | | | | | | | | LPOB | | | | | | | | | | INB | | | | | | | | | BPIB | | | | | | | | BPOB | | | | | | | FC | | | | | | LPIB | | | | | LPIA | | | | V+ | | | BPOA | | BPIA | INA LPOA 4 6 5 20 10 9 7 5 15 16 18 22 21 19 17 8 FILTRO 20 17 8 FILTRO 5 20 17 8 FILTRO 5 20 17 8 FILTRO

.ENDS MAX274 *************************************************************** .SUBCKT FILTRO 1 2 3 4 5 6 7 8 9 * | | | | | | | | | * | | | | | | | | FC * | | | | | | | V* | | | | | | GND * | | | | | V+ * | | | | LPI * | | | BPO * | | BPI * | IN * LPO R5FIL 12 11 50k X4FIL 0 13 1 OPAMP X3FIL 0 11 4 OPAMP X2FIL 0 3 12 OPAMP X1FIL 0 2 10 OPAMP C2FIL 13 1 79.575p C1FIL 3 12 79.575p R7FIL 5 13 5k R6FIL 11 4 50k RELLENO 8 0 1K XRX 6 9 10 2 RX XRY 6 7 9 10 3 RY .ENDS FILTRO *********************************************** *** RESISTENCIA RX VARIABLE PARA MAX274 *** .SUBCKT RX 1 2 3 4 * | | | | * | | | N* | | N+ * | FC * V+ S1RX 3 5 1 2 SWITCHRX ON R1RX 5 4 13K .MODEL SWITCHRX SW (ROFF=39K RON=1E-200 VT=1) .ENDS RX ***********************************************

Figura 6.9. Modelo para el MAX274, parte 1. 68

*********************************************** *** RESISTENCIA RY VARIABLE PARA MAX274 *** .SUBCKT RY 1 2 3 4 5 * | | | | | * | | | | N* | | | N+ * | | FC * | GND * V+ S1RY 4 5 1 3 SWITCHRY1 ON S2RY 4 5 2 3 SWITCHRY2 ON .MODEL SWITCHRY1 SW (ROFF=16.250K RON=1E200 VT=1) .MODEL SWITCHRY2 SW (ROFF=81.250K RON=1E200 VT=1) R1RY 4 5 325K .ENDS RY *********************************************** .SUBCKT OPAMP * * E1 3 0 1 2 1E50 R1 1 2 1E50 .ENDS OPAMP .ENDS 1 | + 2 | 3 | OUT

Figura 6.10. Modelo para el MAX274, parte 2.

Luego se procedi a simular el modelo MAX274 basndose en la configuracin tpica que brinda el fabricante, igual a la Figura 6.11.

Figura 6.11. Aplicacin tpica del MAX274. [3] 69

El esquemtico de la Figura 6.11 fue dibujado y simulado en la suite gEDA, tal como muestran las Figuras 6.12 y 6.13.

Figura 6.12. Esquemtico de aplicacin tpica del MAX274.

En la Figura 6.13 se observa como la respuesta en frecuencia es consistente con un filtro de orden 8 con frecuencia de corte en 10KHz. Adems, coincide con la respuesta esperada por el fabricante en la Figura 6.14.

70

Figura 6.13. Respuesta en frecuencia de la aplicacin tpica del MAX274.

Figura 6.14. Respuesta en frecuencia esperada de la aplicacin tpica del MAX274. [3]

71

De igual forma se hicieron pruebas simulando individualmente cada filtro del MAX274 usando la configuracin de la Figura 6.15, obtenida de las hojas del fabricante, usando los parmetros del Test Circuit A que ah mismo se observan.

Figura 6.15. Configuracin para probar los filtros individualmente. [3]

72

Figura 6.16. Respuesta en frecuencia obtenida del Test Circuit A del MAX274.

Los resultados obtenidos se pueden observar en la Figura 6.16 y se hace evidente que el comportamiento corresponde a un filtro de segundo orden ya que se puede apreciar una disminucin de la seal a razn de 40dB por dcada, aproximadamente.

6.2 Diseo del MF10


El dispositivo MF10 consiste en dos filtros de capacitores conmutados idnticos independientes, capaces de trabajar con dos seales de reloj distintas.

73

Figura 6.17. Configuracin de pines del MF10. [4]

Al igual que el MAX274, el MF10 solo requiere de unas cuantas resistencias externas para funcionar correctamente. Una de las caractersticas que se tuvo que tomar en cuenta a la hora de disear el modelo es la funcin de algunos pines, como lo son SA/B, LSh y 50/100/CL. En la Figura 6.18 se puede ver el diagrama de bloques de la composicin interna del MF10. En este diagrama se puede observar que muchos pines del dispositivo son simplemente salidas disponibles de algunas de las etapas de los filtros.

74

Figura 6.18. Diagrama de bloques del MF10. [4]

Del mismo diagrama se puede observar la funcin del pin SA/B. Este sirve como seal de mando para cambiar el estado de dos interruptores internos. El pin LSh ayuda a desplazar la seal de reloj, dependiendo de si la seal es tipo CMOS o TTL. La conexin del pin LSh tambin debe tomar en cuenta el tipo de alimentacin que se est utilizando. El pin 50/100/CL permite cambiar la relacin entre la frecuencia de la seal de reloj y la frecuencia central del filtro, a razn de 50:1 y 100:1. Tambin puede inhabilitar la accin del filtro y activar un limitador de corriente en los pines de alimentacin.

75

Dentro de los bloques que se pueden observar en el diagrama de la Figura 6.18 estn dos amplificadores operacionales, dos puntos de suma, cuatro integradores no inversores, un bloque de control, dos level shifter o desplazadores de nivel, dos non overlapping clock o generadores bifsicos de seales de reloj no traslapadas y dos interruptores. Estos bloques fueron tratados de la siguiente forma: a) Amplificadores operacionales: considerados ideales, despus de realizar un anlisis similar al que se hizo con el MAX274. b) Puntos de suma: realizado usando un sumador inversor basado en amplificadores operacionales. c) Integradores no inversores: basados en la Figura 6.19, donde el modelo mostrado us interruptores controlados por voltaje y un amplificador operacional ideal. De la Figura 6.19 se puede notar que la frecuencia central del filtro depende de la relacin entre los capacitores C1 y C2.

Figura 6.19. Integrador no inversor del MF10. [7] 76

d) Control(50/100/CL): se usaron interruptores controlados por voltaje para conectar y desconectar distintos capacitores de manera que la relacin entre C2 y C1 fuera 8:1 cuando se elega la relacin de frecuencias 50:1, y 16:1 cuando la relacin de frecuencias deseada era de 100:1. Por aparte se configuraron otros interruptores controlados por voltaje para deshabilitar la accin del filtro cuando se ocupara y se activara un circuito limitador de corriente hacia los pines de alimentacin. e) Desplazador de nivel: para simplificar el diseo, se hizo el diseo general del MF10 de manera que pudiera trabajar con cualquier seal de reloj (TTL o CMOS), sin necesidad de desplazar la seal. f) Non overlapping clock: de igual manera que con el desplazador de nivel, se cre el modelo de manera que esto no afectara. Adems, la naturaleza misma del simulador hace que un traslape no sea posible. g) Interruptores: al no ser de la forma 1 polo 1 tiro, fue necesario crear un modelo aparte basado en interruptores controlados por voltaje.

Cada una de las partes se prob por aparte, teniendo resultados exitosos. Tal es el caso del integrador no inversor, cuya simulacin al integrar una seal de corriente directa (CD) se puede observar en la Figura 6.20 y es consistente con la Figura 6.19.

77

Figura 6.20. Simulacin del integrador no inversor solo y en cascada.

En esta misma Figura 6.20 tambin se puede ver la seal que se obtiene al colocar dos integradores no inversores en cascada como en el diagrama de bloques del MF10. La salida presenta una forma exponencial, tal como es esperado al integrar dos veces una seal CD. Luego de haber obtenido resultados positivos con todas las partes del MF10 se procedi a simular todos los subcircuitos en conjunto en el modelo del MF10 que se observa en las Figuras 6.21, 6.22, 6.23.

78

.SUBCKT MF10 1 2 3 4 5 6 7 8 9 10 11 12 13 * | | | | | | | | | | | | | * LPA | | | | | | | | | | | | * BPA | | | | | | | | | | | * N/AP/HPA| | | | | | | | | | * INVA | | | | | | | | | * S1A | | | | | | | | * SA/B | | | | | | | * VA+ | | | | | | * VD+ | | | | | * LSH | | | | * CLKA | | | * CLKB | | * 50/100/CL | * VD* * * * * * * XFILTROA 4 7 5 15 10 12 6 3 2 1 FILTRO XFILTROB 17 7 16 15 11 12 6 18 19 20 FILTRO XCORTO1 3 4 12 14 CORTO XCORTO2 2 3 12 14 CORTO XCORTO3 1 2 12 14 CORTO XCORTO4 17 18 12 14 CORTO XCORTO5 18 19 12 14 CORTO XCORTO6 19 20 12 14 CORTO XCORTO7 7 21 12 14 CORTO R1 21 0 2K XCORTO8 14 22 12 14 CORTO R2 22 0 2K RCORTO1 7 8 1E-20 RCORTO2 14 13 1E-20 .ENDS MF10

14 | | | | | | | | | | | | | | VA-

15 | | | | | | | | | | | | | | | AGND

16 | | | | | | | | | | | | | | | | S1B

17 18 19 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | INVB | | N/AP/HPB | BPB

20 | | | | | | | | | | | | | | | | | | | | LPB

************************************************************************************* .SUBCKT FILTRO * * * * * * * * * * * 1 | INV 2 | | V+ 3 | | | S1 4 | | | | AGND 5 6 7 8 | | | | | | | | | | | | | | | | | | | | CLK | | | 50/100/CL | SA/B | N/AP/HP 9 | | | | | | | | | BP 10 | | | | | | | | | | LP

XAMP 4 1 8 OPAMP XSUMA 3 8 11 12 PTOSUMA X2POLOS 4 11 10 7 2 SW2POLOS XINTEG1 12 2 6 5 9 INTEGRADOR XINTEG2 9 2 6 5 10 INTEGRADOR

Figura 6.21. Modelo MF10, parte 1.

79

.ENDS FILTRO ************************************************************************************* .SUBCKT INTEGRADOR * * 1 | ENTRADA 2 | V+ 3 | 50/100/CL 4 | CLK 5 | SALIDA

XSCAP1 9 3 2 6 SCAP1 XSCAP2 10 3 2 6 SCAP2 XAMPINT 0 8 5 OPAMP C2 8 5 15.9155P S1 1 6 S2 7 0 S3 6 0 S4 7 8 .MODEL .MODEL 4 0 SWITCH1 OFF 4 0 SWITCH1 OFF 4 0 SWITCH2 ON 4 0 SWITCH2 ON SWITCH1 SW (RON=10 ROFF=1E6 VT=1) SWITCH2 SW (RON=1E6 ROFF=10 VT=1)

C1A 7 9 2P C1B 7 10 1P .ENDS INTEGRADOR ************************************************************************************* .SUBCKT OPAMP * * E1 3 0 1 2 1E50 R1 1 2 1E50 .ENDS OPAMP ************************************************************************************* .SUBCKT SCAP1 1 2 * | | * ENT | * 50/100/CL * * 3 | | | V+ 4 | | | | SALIDA 1 | + 2 | 3 | OUT

S1 4 1 3 2 SWITCH ON .MODEL SWITCH SW (RON=1E20 ROFF=1E-3 VT=1) .ENDS SCAP1 ************************************************************************************* .SUBCKT SCAP2 1 2 * | | * ENT | * 50/100/CL * * 3 | | | V+ 4 | | | | SALIDA

S1 4 1 3 2 SWITCH OFF .MODEL SWITCH SW (RON=1E-3 ROFF=1E20 VT=1) .ENDS SCAP2

Figura 6.22. Modelo MF10, parte 2.

80

************************************************************************************* .SUBCKT PTOSUMA 1 2 3 4 * | | | | * S1 | | | * N/AP/HP | | * AGND/LP | * SALIDA X1INVERSOR 2 5 INVERSOR X2SUMAIN 1 5 3 4 SUMAINV .ENDS PTOSUMA ************************************************************************************* .SUBCKT SW2POLOS 1 2 3 * | | | * AGND | | * PTOSUMA | * LP * * 4 | | | | SA/B 5 | | | | | V+

SAGND 1 2 5 4 INTER1 OFF SLP 2 3 5 4 INTER2 ON .MODEL INTER1 SW (RON=1E-20 ROFF=1E20 VT=1) .MODEL INTER2 SW (RON=1E20 ROFF=1E-20 VT=1) .ENDS SW2POLOS ************************************************************************************* .SUBCKT CORTO 1 * | * N+ 2 | N3 | 50/100/CL 4 | V-

S1 1 2 3 4 CORCIR ON .MODEL CORCIR SW (RON=1E20 ROFF=1E-20 VT=1) .ENDS CORTO ************************************************************************************* .SUBCKT INVERSOR 1 2 XINVER 0 3 2 OPAMP R1 1 3 1K R2 3 2 1K .ENDS INVERSOR ************************************************************************************* .SUBCKT SUMAINV 1 2 3 4 XINVERS 0 5 2 OPAMP R1 1 5 1K R2 2 5 1K R3 3 5 1K R4 5 4 1K .ENDS SUMAINV ************************************************************************************* .ENDS

Figura 6.23. Modelo MF10, parte 3. 81

El circuito de prueba que se utiliz es el que corresponde a la Figura 6.24. Este circuito est basado en las hojas del fabricante. Las ecuaciones y esquemtico brindado por el fabricante son las correspondientes a las Figuras 6.25 y 6.26.

Figura 6.24. MF10 como filtro pasabajos de segundo orden, fc=1khz.

Figura 6.25. Configuracin utilizada para probar MF10. [4] 82

Figura 6.26. Ecuaciones de diseo para la configuracin de prueba. [4]

El esquemtico de la Figura 6.24 corresponde al uso del MF10 como dos filtros pasabajos de segundo orden con ganancia unitaria, frecuencia central y de corte igual a 1KHz y factor de calidad Q igual a 1. Dado todo esto se procedi a simular el esquemtico con una seal de entrada senoidal con amplitud de 1V y frecuencia igual a 10KHz (una dcada despus de la frecuencia de corte). La seal de salida esperada del filtro a esta frecuencia con la amplitud de 1V sera 10mV (-40dB). Pero tal como se observa en la Figura 6.27 la seal de salida presenta una amplitud cercana a los 100mV (-20dB). Dicho comportamiento no corresponde a un filtro pasabajos de segundo orden. De hecho el fabricante facilita una grfica que muestra la respuesta de varios filtros de segundo orden como funcin del factor de calidad, y en todos los casos se observa que sin importar el valor de Q la ganancia a 10 veces la frecuencia central debe ser -40dB.
83

Figura 6.27. Resultado de simulacin del MF10 como filtro de segundo orden.

Figura 6.28. Respuesta normalizada para varios filtros de segundo orden en funcin de Q. [4]

No se logr obtener la atenuacin esperada de la seal, pero s una forma de onda consistente con la de un filtro conmutado (forma escalonada). A pesar de que los integradores no inversores en cascada funcionan correctamente (Figura 6.20) y que los dems componentes fueron probados, no se logr determinar el motivo por el cual el modelo del MF10 no funciona correctamente. Existe una posibilidad de que el error sea
84

causado por el hecho de que no se pudieron utilizar interruptores ideales en los integradores no inversores, ya que el motor de simulacin no permite aplicar un cambio brusco de tensin elctrica en las terminales del capacitor, posiblemente porque provocara un pico de intensidad de corriente elctrica que tericamente tendera a infinito. As que los interruptores usados debieron usar valores de resistencia de encendido y apagado distintos a los ideales. Pero el hecho de que el error provenga de los integradores no inversores pierde fuerza al observar las simulaciones aplicados a estos, ya que los resultados son correctos. Por lo tanto, lo nico que se puede pensar es que el diagrama de bloques otorgado por el fabricante no brinda informacin suficiente para reproducir un modelo preciso y confiable. Vale la pena aclarar que el nico modelo que puede ser considerado completamente representativo del dispositivo real es aquel que se basa en el esquemtico real utilizado por el fabricante. Por lo que cualquier otro modelo basado en diagramas de bloques o informacin menos precisa son simplemente aproximaciones que intentan imitar el comportamiento esperado por el dispositivo a modelar, pero con posibles inconsistencias, algunas ms graves que otras.

85

CAPTULO 7: Comparacin de herramientas libres con TINA


La herramienta utilizada en la Escuela de Ingeniera Elctrica de la Universidad de Costa Rica es TINA. Esta herramienta posee la facilidad de poseer una amplia librera de smbolos y modelos, adems de poder agregar modelos nuevos fcilmente por medio de macros. En un principio de la elaboracin del presente proyecto se utiliz TINA para realizar pruebas con varios modelos. Se utiliz la versin demo ya que la idea era comparar las herramientas en igualdad de condiciones, es decir, ya que las herramientas gEDA y Oregano son gratuitas se pens en compararlos con la versin gratuita de TINA. Pero la versin demo de TINA se encuentra tan limitada que ciertas tareas como el simple hecho de guardar los esquemticos es imposible. Adems se limita el tamao de los circuitos a simular de manera que solo es posible simular esquemticos con una complejidad muy baja. Obviamente cuando se utiliza una versin de TINA distinta a la demo se habilitan muchas opciones que no se disponen en la versin gratuita. Pero para poder usar la aplicacin TINA en su mxima capacidad es necesario pagar mucho dinero, y el usuario promedio no requiere de todas estas opciones. Por lo que se puede considerar que para el usuario promedio, y en especial los estudiantes, pueden encontrar todo lo que necesitan en aplicaciones como la suite gEDA y Oregano. Es importante hacer ver que las aplicaciones libres como gEDA y Oregano pueden convertirse en herramientas muy poderosas y verstiles si se aprende a utilizarlas
86

correctamente, alcanzando en algunos aspectos el mismo nivel de muchas herramientas privativas como TINA, o incluso superarlas. Y cuando se comparan contra versiones demo de aplicaciones como TINA se puede notar una amplia ventaja por parte de las aplicaciones como Oregano y gEDA.

87

CAPTULO 8: Conclusiones y recomendaciones


8.1 Conclusiones
Los paquetes en el ambiente GNU/Linux no consumen muchos recursos pero poseen un gran potencial, igualando en la mayora de aspectos la calidad de muchos programas disponibles en Microsoft Windows que requieren de gran cantidad de recursos y adems cuestan mucho dinero, como es el caso de TINA. La suite gEDA, al no ser una aplicacin nica donde se centralicen las tareas, puede provocar en los usuarios un proceso ms lento de familiarizacin. El hecho de que gEDA sea una suite de aplicaciones brinda la posibilidad de ampliarla con nuevas herramientas o reemplazar algunas aplicaciones por otras que se consideren mejores. El programa Oregano tiene una presentacin muy amigable con el usuario y por lo tanto se convierte en una herramienta muy sencilla de utilizar por usuarios sin experiencia en la simulacin de circuitos electrnicos. La centralizacin de tareas que presenta Oregano lo convierte en una aplicacin muy rgida y poco personalizable. La herramienta tragesym de la suite gEDA hace que la creacin de smbolos se convierta en una tarea muy sencilla, adems de tener un gran potencial para crear smbolos que contengan muchos pines.

88

La creacin de smbolos en Oregano es muy tediosa y lenta, por lo que se vuelve casi imposible pensar en crear un smbolo con un nmero elevado de pines.

La simulacin de circuitos en Oregano suele presentar problemas, especialmente cuando se usa gnucap como motor de simulacin, a pesar de que el mismo circuito con los mismos modelos no falle al ser simulado en la suite gEDA.

La herramienta gspiceui es muy verstil y con gran potencial, permitiendo usar los motores de simulacin a su mximo potencial.

El motor de simulacin gnucap es ms robusto que ngspice, con mejores algoritmos para simular los circuitos y ms opciones de simulacin. Adems no se deriva de Spice, como es el caso de ngspice.

La suite gEDA posee mayor potencial y capacidad de expansin que Oregano. La suite gEDA es una herramienta muy poderosa que es capaz de realizar muchas y complicadas tareas si se aprende a usar correctamente.

El nico modelo que es totalmente representativo de un dispositivo es aquel que se basa completamente en el esquemtico real del dispositivo a modelar. Cualquier modelo que no se base en el esquemtico es simplemente una aproximacin que intenta imitar el comportamiento esperado por el dispositivo, pero con posibles inconsistencias, algunas ms graves que otras.

89

8.2 Recomendaciones
Revisar las diferencias que existen entre los motores de simulacin ngspice y gnucap a la hora de crear un modelo, ya que estos difieren en la forma que se declaran algunos elementos como lo son los interruptores y las fuentes dependientes y algunas independientes. Revisar los dems paquetes que vienen incluidos con la suite gEDA, tanto los que se instalan de manera estndar, como los que quedan disponibles y sin ser instalados en el Gestor de paquetes Synaptic ya que la suite gEDA no se limita solamente al dibujo y simulacin de esquemticos, sino que tambin posee otras herramientas relacionadas con el diseo de PCB (Printed Circuit Board o circuito impreso) y otras tareas ms especficas que pueden ser de gran utilidad. Adems hay que recordar que la suite gEDA se est actualizando peridicamente as que a veces se agrega o elimina paquetes de la suite. Debido a la comunidad de usuarios de aplicaciones libres que existe a nivel mundial, se debe estar al tanto de las nuevas herramientas que esta comunidad aporta y estar dispuesto a probar nuevos paquetes. Considerar como ideal cualquier componente que el fabricante no especifique, de manera que se simplifique el diseo del modelo. La utilizacin de interruptores controlados por voltaje y fuentes dependientes facilita el diseo de modelos cuando no se posee el esquemtico original del dispositivo.
90

BIBLIOGRAFA
Libros: 1. Calvo Alpzar, J. G. Diseo de modelos equivalentes de circuitos integrados usando SPICE para TINA, Escuela de Ingeniera Elctrica, Universidad de Costa Rica, Costa Rica, 2008. 2. Rashid, M. Spice for Power Electronics and Electric Power, 2 edicin, Taylor & Francis, Estados Unidos, 2006.

Pginas web: 3. Maxim. 4th- and 8th-Order Continuous-Time Active Filters, 1996. Descargado de: http://www.maxim-ic.com 4. National Semiconductor. MF10 Universal Monolithic Dual Switched Capacitor Filter, 1994. Descargado de: http://www.national.com 5. National Semiconductor. Introducing the MF10: A Versatile Monolithic Active Filter Building Block, 1998. Descargado de: http://www.national.com 6. National Semiconductor. A Basic Introduction to Filters-Active, Passive and Switched-Capacitor, 1991. Descargado de: http://www.national.com 7. Maxim. Dual Universal Switched Capacitor Filter, 1996.
91

Descargado de: http://www.maxim-ic.com 8. Davis, A. Gnucap The Gnu Circuit Analysis Package Users Manual, 2006. Descargado de: http://www.geda.seul.org/tools/gnucap/gnucap-man.pdf 9. NGSPICE User Manual, 2001. Descargado de: http://www-ti.informatik.uni-tuebingen.de/~bernauer/lehre/ti-10506/spice/ngspice.pdf 10. gEDA Project. gEDA Project's Homepage, http://www.gpleda.org/, 2009. 11. Lugfi. Oregano Schematic capture and circuit sumulator!,

http://oregano.gforge.lug.fi.uba.ar/, 2009.

92

APNDICE A: Descripcin de algunos elementos en ngspice [9]


A continuacin se muestra un extracto del manual de ngspice para comprender la sintaxis utilizada en algunos elementos bsicos usados en la descripcin de un modelo. Resistors General form: RXXXXXXX n+ n- value <ac=val> <m=val> <scale=val> <temp=val> + <dtemp=val> <noisy=0|1> Examples: R1 1 2 100 RC1 12 17 1K R2 5 7 1K ac=2K RL 1 4 2K m=2 Ngspice has a fairly complex model for resistors. It can simulate both discrete and semiconductor resistors. Semiconductor resistors in ngspice means: resistors described by geometrical parameters. So, do not expect detailed modelling of semiconductor effects. n+ and n- are the two element nodes, value is the resistance (in ohms) and may be positive or negative but not zero. Hint: If you need to simulate very small resistors (0.001 Ohm or less), you should use CCVS (transresistance), it is less efficient but improves overall numerical accuracy. Think about that a small resistance is a large conductance. Ngspice can assign a resistor instance a different value for AC analysis, specified using the ac keyword. This value must not be zero as described above. The AC resistance is used in AC analysis only (not Pole-Zero nor noise). If you do not specify the ac parameter, it is defaulted to value.

Capacitors General form: CXXXXXXX n+ n- <value> <mname> <m=val> <scale=val> <temp=val> + <dtemp=val> <ic=init_condition> Examples: CBYP 13 0 1UF COSC 17 23 10U IC=3V Ngspice provides a detailed model for capacitors. Capacitors in the netlist can be specified giving their capacitance or their geometrical and physical characteristics. Following the original spice3 "convention", capacitors specified by their geometrical or

93

physical characteristics are called "semiconductor capacitors" and are described in the next section. In this first form n+ and n- are the positive and negative element nodes, respectively and value is the capacitance in Farads.

Switches General form: SXXXXXXX N+ N- NC+ NC- MODEL <ON><OFF> WYYYYYYY N+ N- VNAM MODEL <ON><OFF> Examples: s1 1 2 3 4 switch1 ON s2 5 6 3 0 sm2 off Switch1 1 2 10 0 smodel1 w1 1 2 vclock switchmod1 W2 3 0 vramp sm1 ON wreset 5 6 vclck lossyswitch OFF Nodes 1 and 2 are the nodes between which the switch terminals are connected. The model name is mandatory while the initial conditions are optional. For the voltage controlled switch, nodes 3 and 4 are the positive and negative controlling nodes respectively. For the current controlled switch, the controlling current is that through the specified voltage source. The direction of positive controlling current flow is from the positive node, through the source, to the negative node.

Independent Sources General form:


VXXXXXXX N+ N- <<DC> DC/TRAN VALUE> <AC <ACMAG <ACPHASE>>> + <DISTOF1 <F1MAG <F1PHASE>>> <DISTOF2 <F2MAG <F2PHASE>>> IYYYYYYY N+ N- <<DC> DC/TRAN VALUE> <AC <ACMAG <ACPHASE>>> + <DISTOF1 <F1MAG <F1PHASE>>> <DISTOF2 <F2MAG <F2PHASE>>>

Examples: VCC 10 0 DC 6 VIN 13 2 0.001 AC 1 SIN(0 1 1MEG) ISRC 23 21 AC 0.333 45.0 SFFM(0 1 10K 5 1K) VMEAS 12 9 VCARRIER 1 0 DISTOF1 0.1 -90.0 VMODULATOR 2 0 DISTOF2 0.01 IIN1 1 5 AC 1 DISTOF1 DISTOF2 0.001

94

APNDICE B: Descripcin de algunos elementos en gnucap [8]


A continuacin se muestra un extracto del manual de gnucap para comprender la sintaxis utilizada en algunos elementos bsicos usados en la descripcin de un modelo. Capacitor Syntax Device
Cxxxxxxx n+ n value Cxxxxxxx n+ n expression Cxxxxxxx n+ n value {IC=initial-voltage} Cxxxxxxx n+ n model {L=length} {W=width} {TEMP=temperature} {IC=initial-voltage}

.capacitor label n+ n expression Model (optional) .model mname C {args} .model mname TABLE {args}

Voltage Controlled Voltage Source Syntax Device Exxxxxxx n+ n nc+ nc value Exxxxxxx n+ n nc+ nc expression .VCVS label n+ n nc+ nc expression Model (optional) .model mname TABLE {args} Purpose Voltage controlled voltage source, or voltage gain block. Comments N+ and n are the positive and negative element (output) nodes, respectively. Nc+ and nc are the positive and negative controlling nodes, respectively. Value is the voltage gain. You may specify the value in any of these forms: 1. A simple value. This is the voltage gain.

95

2. An expression, as described in the behavioral modeling chapter. The expression can specify the output voltage as a function of input voltage, or the voltage gain as a function of time. 3. A model, as described in the behavioral modeling chapter. The table model describes a table of output voltage vs. input voltage. Resistor Syntax Device Rxxxxxxx n+ n value Rxxxxxxx n+ n expression Rxxxxxxx n+ n model {L=length} {W=width} {TEMP=temperature} .resistor label n+ n expression Model (optional) .model mname R {args} .model mname TABLE {args}

Subcircuit Call Syntax Device Xxxxxxxx n1 {n2 n3 ...} subname {parameters} Subcircuit definition (optional) .subckt subname nodes subcircuit description .ends

Voltage Controlled Switch Syntax Device Sxxxxxxx n+ n nc+ nc mname {ic} .vswitch label n+ n nc+ nc mname {ic} Model (required) .model mname SW {args}

96

ANEXOS: Especificaciones del fabricante [3] [4]

97

You might also like