Sunteți pe pagina 1din 111

Universidad de Costa Rica

Facultad de Ingeniería
Escuela de Ingeniería Eléctrica

IE – 0502 Proyecto Eléctrico

Puesta a punto de herramientas de código abierto


para el diseño y simulación de circuitos electrónicos

Por:

Marvin David Elizondo Cerdas

Ciudad Universitaria Rodrigo Facio


Julio del 2009
Puesta a punto de herramientas de código abierto
para el diseño y simulación de circuitos electrónicos

Por:

Marvin David Elizondo Cerdas

Sometido a la Escuela de Ingeniería Eléctrica


de la Facultad de Ingeniería
de la Universidad de Costa Rica
como requisito parcial para optar por el grado de:

BACHILLER EN INGENIERÍA ELÉCTRICA

Aprobado por el Tribunal:

_________________________________
Ph.D. Jorge Arturo Romero Chacón
Profesor Guía

_________________________________ _________________________________
Ing. José Miguel Páez Jiménez Ing. Luis Felipe Córdoba Morales
Profesor lector Profesor lector

ii
DEDICATORIA

A mi madre, por ser un ejemplo de amor, sacrificio y esfuerzo, y además mostrarme

que aunque la distancia nos puede separar de los que más 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 comprensión en estos años, y por

mantenerse desde siempre como un ejemplo a seguir como padre y profesional,

motivándome a mantener siempre una actitud positiva ante cualquier problema y no ser

conformista con el mundo que nos rodea, buscando siempre la innovación 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 tía Sandra y mi abuela Virgita, por tratarme como un hijo más y sacrificarse

tanto por mí, buscando alcanzar la meta no encomendada de hacerme sentir más cerca de

mi hogar a través de ellas.

A mi novia, por ayudarme a crecer como persona y apoyarme siempre con sus

palabras de aliento, convirtiéndose en una motivación 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, además de

guiarme con consejos útiles siempre que le solicité ayuda.

A los ingenieros Don José Miguel Páez y Don Luis Felipe Córdoba por apoyarme

con su participación en este proyecto.

iv
ÍNDICE GENERAL

ÍNDICE GENERAL......................................................................................... v

ÍNDICE DE FIGURAS ................................................................................ viii

ÍNDICE DE TABLAS .................................................................................. xiii

RESUMEN ..................................................................................................... xiv

CAPÍTULO 1: Introducción ........................................................................... 1

1.1 Objetivos ................................................................................................................ 3

1.1.1 Objetivo general .......................................................................................................... 3

1.1.2 Objetivos específicos ................................................................................................... 3

1.2 Metodología ........................................................................................................... 3

CAPÍTULO 2: Herramientas libres disponibles ........................................... 5

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

2.1.1 Descripción................................................................................................................... 5

2.2 Herramientas......................................................................................................... 6

2.2.1 gschem .......................................................................................................................... 6

2.2.2 GNU Spice GUI (gspiceui) .......................................................................................... 8

2.3 Oregano ............................................................................................................... 11

2.3.1 Descripción................................................................................................................. 11
v
CAPÍTULO 3: Instalación de paquetes ....................................................... 13

3.1 Instalación de la suite gEDA .............................................................................. 13

3.2 Instalación de Oregano....................................................................................... 20

3.3 Instalación del motor de simulación NGSpice ................................................. 21

CAPÍTULO 4: Guía de uso de aplicaciones ................................................ 25

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

4.1.1 Uso de gschem ............................................................................................................ 25

4.1.2 Uso de gspiceui........................................................................................................... 35

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

CAPÍTULO 5: Creación de símbolos y asignación de modelos ................ 50

5.1 Creación de símbolos y asignación de modelos en gEDA ............................... 50

5.2 Creación de símbolos y asignación de modelos en Oregano ........................... 57

CAPÍTULO 6: Diseño de modelos ................................................................ 61

6.1 Diseño del MAX274 ............................................................................................ 61

6.2 Diseño del MF10 ................................................................................................. 73

CAPÍTULO 7: Comparación de herramientas libres con TINA .............. 86

CAPÍTULO 8: Conclusiones y recomendaciones ....................................... 88

8.1 Conclusiones ........................................................................................................ 88

vi
8.2 Recomendaciones ................................................................................................ 90

BIBLIOGRAFÍA ............................................................................................ 91

APÉNDICE A: Descripción de algunos elementos en ngspice [9] .............. 93

APÉNDICE B: Descripción 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 esquemáticos gschem. ......................................... 7

Figura 2.2. GNU Spice GUI. ................................................................................................ 8

Figura 2.3. Gwave graficando la simulación de un LM555 en modo astable usando el

motor gnucap....................................................................................................................... 10

Figura 2.4. Interfaz gráfica 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 instalación de paquetes. .................................................................... 17

Figura 3.8. Confirmación de instalación de paquetes...................................................... 18

Figura 3.9. Descarga de los paquetes a instalar. .............................................................. 18

Figura 3.10. Instalación 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 esquemáticos gschem. .................................................................... 26

Figura 4.3. Barra de herramientas de gschem. ................................................................ 26

Figura 4.4. Librerías de gschem. ....................................................................................... 27

Figura 4.5. Esquemático sin cablear. ................................................................................ 28

Figura 4.6. Editor de atributos de fuente.......................................................................... 29

Figura 4.7. Editor de textos gedit. ..................................................................................... 31

Figura 4.8. Líneas con “auto-uref” descomentadas. ........................................................ 32

Figura 4.9. Agregar valor de 1kΩ a resistencia. .............................................................. 33

Figura 4.10. Esquemático terminado. ............................................................................... 34

Figura 4.11. Ejecutar gspiceui. .......................................................................................... 35

Figura 4.12. Interfaz de gspiceui. ...................................................................................... 36

Figura 4.13. Elección de motor de simulación.................................................................. 36

Figura 4.14. Barra de herramientas de gspiceui. ............................................................. 37

Figura 4.15. Configuración de fuente en gspiceui. ........................................................... 38

Figura 4.16. Graficador gwave. ......................................................................................... 40

Figura 4.17. Representación gráfica de simulación. ........................................................ 41

Figura 4.18. Acceso a Oregano. ......................................................................................... 42

Figura 4.19. Interfaz gráfica de Oregano. ........................................................................ 43

Figura 4.20. Configuración de fuente CA en Oregano. ................................................... 44

ix
Figura 4.21. Configuración de resistencia en Oregano. .................................................. 45

Figura 4.22. Barra de herramientas de Oregano. ............................................................ 45

Figura 4.23. Esquemático en Oregano. ............................................................................. 47

Figura 4.24. Elección de motor de simulación.................................................................. 48

Figura 4.25. Configuración de parámetros de simulación. ............................................. 48

Figura 4.26. Resultado de simulación en Oregano. ......................................................... 49

Figura 5.1. Secuencia de formatos y archivos para obtener símbolo en gEDA. ........... 50

Figura 5.2. Sección geda_attr antes y después de modificar. .......................................... 52

Figura 5.3. Sección pins después de modificar. ................................................................ 53

Figura 5.4. Creación de archivo vacío en el Escritorio.................................................... 54

Figura 5.5. Estructura básica de un modelo. .................................................................... 55

Figura 5.6. Símbolo del MAX274 en gschem.................................................................... 56

Figura 5.7. Edición de atributos del MAX274.................................................................. 56

Figura 5.8. Estructura básica de librería en Oregano, parte 1. ...................................... 57

Figura 5.9. Estructura básica de librería en Oregano, parte 2. ...................................... 58

Figura 6.1. Configuración de pines del MAX274.[3]......................................................... 61

Figura 6.2. Esquemático del filtro usado en el MAX274.[3]............................................. 62

Figura 6.3. Configuración 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. Aplicación típica del MAX274. [3]................................................................. 69

Figura 6.12. Esquemático de aplicación típica del MAX274. ......................................... 70

Figura 6.13. Respuesta en frecuencia de la aplicación típica del MAX274. .................. 71

Figura 6.14. Respuesta en frecuencia esperada de la aplicación típica del MAX274. [3]

.............................................................................................................................................. 71

Figura 6.15. Configuración para probar los filtros individualmente. [3] ........................ 72

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

Figura 6.17. Configuración 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. Simulación 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. Configuración utilizada para probar MF10. [4] .......................................... 82

Figura 6.26. Ecuaciones de diseño para la configuración de prueba. [4] ........................ 83

Figura 6.27. Resultado de simulación del MF10 como filtro de segundo orden. .......... 84

Figura 6.28. Respuesta normalizada para varios filtros de segundo orden en función

de Q. [4].................................................................................................................................. 84

xi

i
ÍNDICE DE TABLAS

Tabla 4.1. Lista de componentes básicos .......................................................................... 30

Tabla 4.2. Lista de prefijos válidos para “value”............................................................. 34

xi

ii
RESUMEN

Este proyecto pretende servir como una guía de instalación y puesta a punto de

herramientas de código abierto para el diseño y simulación de circuitos electrónicos. Todo

esto con la finalidad de brindar una alternativa a las tradicionales herramientas privativas

que suelen estar fuera del alcance de la mayoría de estudiantes y usuarios en general debido

a sus elevados precios. Esto se logró desarrollando dicha guía para los programas Oregano

y la suite gEDA trabajando bajo GNU/Linux, específicamente la distribución Ubuntu 9.04.

Además se desarrolló una guía de uso de dichos paquetes donde se aprende a dibujar y

simular esquemáticos, además de la elaboración de nuevos símbolos para sus librerías y la

asignación de sus respectivos modelos para lograr una simulación exitosa. Además se hizo

una breve comparación de dichas herramientas libres con la aplicación TINA que se utiliza

actualmente en la Escuela de Ingeniería Eléctrica de la Universidad de Costa Rica. Como

último punto se probaron los programas de código abierto simulando en ellos dos modelos

originales para los filtros integrados MF10 y MAX274. Como resultado todo este proyecto

determinó que las herramientas de código abierto poseen un gran potencial, principalmente

en el caso de la suite gEDA, pudiendo convertirse en una herramienta poderosa y versátil

para el diseño y simulación de circuitos electrónicos, además de otras opciones que posee,

alcanzando el mismo nivel en algunos aspectos que aplicaciones privativas como TINA.

xi

v
CAPÍTULO 1: Introducción

La dependencia de software privativo para el diseño y simulación de circuitos

electrónicos entraña 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 ilícita.

Debido a todo esto se hace evidente la necesidad de contar con herramientas de

código abierto capaces de sustituir los programas que normalmente se utilizan y que no son

libres ni gratuitos.

La importancia de hallar una alternativa económica y accesible para el diseño y

simulación de circuitos electrónicos, fue suficiente motivación para realizar una

investigación que tuviera como objetivo principal el identificar, configurar y probar las

herramientas ya existentes en código abierto.

De forma más específica, se investigó sobre las herramientas de diseño y simulación

de circuitos electrónicos ya existentes bajo la distribución Ubuntu, ya que bajo la

plataforma GNU/Linux existe gran variedad de programas en código abierto que se

adecuaron a los objetivos de la investigación. Además, tomando en cuenta que el objetivo

del proyecto era utilizar herramientas de código abierto, fue lógico 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 diseñar y simular circuitos electrónicos.

Una vez que se tomó todo esto en cuenta, se pudo pensar en objetivos más

específicos, como lo es la configuración adecuada de diversos paquetes para constituir una

suite integral que permita tanto la simulación y diseño de circuitos electrónicos. Además, 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 creación de una guía en la que se

detallara los pasos a seguir para la instalación 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. Además, se incluyó el procedimiento utilizado para poder

modelar nuevos dispositivos que fueran compatibles con las herramientas de código abierto

utilizadas.

2
1.1 Objetivos

1.1.1 Objetivo general

 Identificar, configurar y probar las herramientas de código abierto usadas para el diseño

y simulación de circuitos electrónicos.

1.1.2 Objetivos específicos

 Identificar las herramientas de código abierto existentes para el diseño y simulación de

circuitos electrónicos.

 Configurar las herramientas anteriores de tal forma que constituyan una suite integrada.

 Probar la suite integrada con la simulación de tres circuitos integrados poco usados, con

al menos uno de ellos siendo modelado por primera vez.

 Escribir una guía de usuario para la instalación y puesta a punto de la suite integrada,

que incluya ejemplos de su uso.

1.2 Metodología

Para el desarrollo de este proyecto se requirió investigar sobre los paquetes

disponibles para la simulación de circuitos en Linux. Considerando que las herramientas a

elegir para la elaboración del proyecto debían ser lo más completas posibles, es decir, que

permitieran la descripción y simulación de circuitos analógicos y digitales, se eligieron los

paquetes gEDA y Oregano como las herramientas de código abierto a utilizar.

3
Posterior a esto se procedió a realizar la instalación 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

simulación y diseño de circuitos electrónicos. 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 analógico integrado. Se probaron en circuitos con alguna función

en específico y se compararon con los datos que brindan los fabricantes para verificar su

desempeño como herramientas de simulación. Además se comparó con el software

utilizado en la Escuela de Ingeniería Eléctrica, Tina.

4
CAPÍTULO 2: Herramientas libres disponibles

2.1 Proyecto gEDA

2.1.1 Descripción

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

automatización de diseño electrónico. Estas herramientas sirven para distintas tareas, ya sea

el diseño de circuitos eléctricos, dibujo de esquemáticos, simulación, creación de prototipos

y producción. Básicamente, cualquier programa independiente, bajo la licencia GPL y

relacionado con la automatización de diseño electrónico, puede unirse al proyecto gEDA,

ya que este proyecto es más como una confederación de programas que se complementan

entre sí y no una aplicación única e integral.

La ventaja de que gEDA sea una suite y no una aplicación única es que le permite al

usuario poder escoger la aplicación que más desee utilizar para cada tarea, de manera que

se brinda una libertad que no se tiene en las aplicaciones tradicionales. Gracias a esta

característica, el usuario dentro de su flujo de diseño puede reemplazar alguna herramienta

de gEDA por otra que prefiera más, convirtiendo a gEDA en una aplicación muy versátil. O

igualmente, los encargados del mantenimiento del proyecto gEDA pueden fácilmente

agregar más herramientas al proyecto mejorándolo y volviéndolo más robusto.

Una desventaja es que la interoperabilidad entre las herramientas no es perfecta,

además de generar cierta confusión 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 esquemática y generación de netlist

 ngspice – Motor de simulación SPICE

 gnucap – Motor de simulación anólogica

 gspiceui – Interfaz gráfica para ngspice y gnucap

 pcb – Diseño PCB

 gerbv – Visor Gerber

 Icarus Verilog – Simulador Verilog

 GTKWave – Visor de formas de onda digital

 wcalc – Análisis de líneas de transmisión y estructura electromagnética

2.2 Herramientas

Las herramientas presentadas a continuación son las más básicas y necesarias para

poder llevar a cabo las tareas más comunes en el diseño de circuitos electrónicos.

2.2.1 gschem

Es el programa para la captura de esquemáticos de la suite gEDA (Figura 2.1). Se

utiliza para facilitar de manera gráfica el trabajo con esquemáticos de circuitos, símbolos de

componentes y diagramas de bloque.

6
El formato de los esquemáticos usados en gschem es .sch y el formato para los

símbolos usados en la librería es .sym.

La librería de símbolos disponibles para trabajar en gschem es muy amplia,

pero de igual forma se puede ampliar agregando símbolos creados por el usuario de la

forma que se explicará más adelante en este mismo documento. Vale la pena aclarar que los

símbolos son simplemente la representación gráfica, 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 esquemáticos gschem.

7
pueden crear o también se pueden descargar de las páginas de los fabricantes. El

procedimiento para realizar los modelos y adjuntarlos a los símbolos se explicará más

adelante.

2.2.2 GNU Spice GUI (gspiceui)

La aplicación gspiceui es la interfaz gráfica para realizar simulaciones de circuitos

hechos en gschem o cualquier otro paquete que genere archivos en formato .sch

(esquemático), .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 simulación), gnucap (motor de simulación) y gwave

(visualizador de formas de onda).

Esta herramienta se vuelve muy versátil al poder utilizar dos motores de simulación

distintos, donde ngspice es un motor basado en el motor de simulación original que utilizó

en sus inicios el programa OrCAD PSpice, y gnucap es un motor de simulación libre y

gratuito, ambos se actualizan constantemente, pero gnucap presenta mayores opciones de

simulación que ngspice. Entre las opciones que posee gnucap y que ngspice no tiene

ngspice no tiene están la posibilidad de poder calcular los parámetros de intensidad de

corriente eléctrica, potencia eléctrica y resistencia eléctrica en cada dispositivo y nodo del

circuito. Además de poder simular para los modos de Fourier y Quiescent, y presentando la

opción utilizar escala logarítmica para el modo AC y DC.

Otra característica que posee el programa gspiceui es que facilita una ventana donde

muestra todos los pasos que se van ejecutando y que normalmente se tendrían que hacer

manualmente desde la consola de la distribución de GNU/Linux para poder llevar a cabo la

simulación. Además, en esta misma ventana se pueden visualizar y modificar los archivos

que se van generando (.cir, .ckt, .sch y .net), además del archivo original que se utilizó para

la simulación, permitiendo la posibilidad de corregir cualquier error cometido o agregar

modificaciones consideradas a último momento. Y por último, se cuenta con un botón que

abre el programa gschem para poder modificar el esquemático a simular.

9
Figura 2.3. Gwave graficando la simulación 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 simulación 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 graficarán 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 también se puede aumentar o disminuir esta cantidad de

paneles.

10
2.3 Oregano

2.3.1 Descripción

Oregano es una aplicación para dibujar diagramas esquemáticos y simular circuitos

electrónicos (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 diseño y

descripción del circuito a simular. Provee una amplia librería de símbolos incluyendo

sdfssafsafsdf

Figura 2.4. Interfaz gráfica de Oregano.

11
componentes lineales, CMOS, TTL, amplificadores operacionales y mucho más.

El formato utilizado para la librería de símbolos es .oreglib, los modelos que

describen dichos dispositivos utilizan formato .model y los esquemáticos guardados por

Oregano usan el formato .oregano.

Además permite simular los circuitos dibujados siempre y cuando se cuente con el

modelo de todos los componentes utilizados en el esquemático, puede realizar análisis de

tiempo, de respuesta en frecuencia, para distintos valores de corriente directa (CD) y

análisis de Fourier. Puede elegir entre varias opciones de simulación, generar y editar el

listado de nodos (netlist) y utilizar de puntas de prueba. Oregano soporta como motores de

simulación 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 esquemáticos y simularlos, sin caer en una innecesaria

saturación de opciones en la interfaz y el menú.

12
CAPÍTULO 3: Instalación de paquetes

La instalación de todos los paquetes se realizó bajo la distribución Ubuntu 9.04

(cuyo nombre código es Jaunty Jackalope) usando una cuenta de usuario con privilegios de

administrador. Dicha distribución estaba recién 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 guía de instalación.

Figura 3.1. Ubuntu 9.04 Jaunty Jackalope.

3.1 Instalación de la suite gEDA

Esta sección describe un procedimiento diseñado para obtener como resultado la

adecuada instalación de la suite gEDA, incluyendo el motor de simulación gnucap.


13
Ver sección 3.3 para instalación del motor de simulación ngspice y revisar la

sección 5.1 para instalación de herramientas para crear símbolos.

Se diseñó esta guía con la intención de que sea útil y clara para personas que no se

encuentran familiarizadas con la instalación 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 >> Administración >> 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 botón “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 búsqueda 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 instalación se haga efectiva dar clic en el botón “Aplicar” del Gestor de

paquetes Synaptic, como en la Figura 3.7.

Figura 3.7. Aplicar instalación de paquetes.

17
8) Una última ventana de confirmación aparece (Figura 3.8), dar clic en “Aplicar”.

Figura 3.8. Confirmación de instalación de paquetes.

9) Todos los paquetes marcados serán descargados automáticamente (Figura 3.9).

Figura 3.9. Descarga de los paquetes a instalar.

18
10) Seguidamente los paquetes descargados se instalarán automáticamente como se observa

en la Figura 3.10.

Figura 3.10. Instalación de los paquetes descargados.

11) Al finalizar la instalación 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 Instalación de Oregano

Al igual que con la suite gEDA, la instalación del programa Oregano implica la

instalación del motor de simulación gnucap. Ver sección 3.3 para la instalación de ngspice.

El procedimiento para la instalación de Oregano es el siguiente:

1) Acceder al Gestor de paquetes Synaptic:

a. Este se encuentra ubicado en “Sistema >> Administración >> 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 botón “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 búsqueda 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 instalación se haga efectiva dar clic en el botón “Aplicar” del Gestor de

paquetes Synaptic, como en la Figura 3.7.

7) Una última ventana de confirmación aparece (Figura 3.8), dar clic en “Aplicar”.

8) Todos los paquetes marcados serán descargados automáticamente (Figura 3.9).

20
9) Seguidamente los paquetes descargados se instalarán automáticamente como se observa

en la Figura 3.10.

10) Al finalizar la instalación se presenta un informe de los cambios aplicados al sistema

(Figura 3.11), dar clic en “Cerrar”.

3.3 Instalación del motor de simulación NGSpice

La instalación del motor de simulación ngspice es distinta a la instalación de los

programas anteriores, ya que éste no se encuentra disponible en el Gestor de paquetes

Synaptic. Por lo que es necesario descargar su código fuente desde la página en internet

oficial de los desarrolladores de ngspice y luego compilarlo en Ubuntu.

Antes de explicar el procedimiento es importante aclarar que esta instalación, al

igual que las demás, precisa de tener acceso a una cuenta con privilegios de administrador.

Para este caso específico el nombre usuario de la cuenta que se usó fue “usuario”, por lo

que la ubicación de la “Carpeta personal” es “/home/usuario”, y la ubicación del

“Escritorio” es “/home/usuario/Escritorio”.

El procedimiento para realizar la instalación es el siguiente:

1) Acceder a la dirección en internet: “http://ngspice.sourceforge.net/download.html”.

2) Buscar la última versión 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 >> Administración >> Gestor de

paquetes Synaptic”. Tal como se muestra en la Figura 3.2.

4) Repetir los pasos del 2 al 5 del procedimiento de instalación de Oregano para los

paquetes “autoconf”, “libtool”, “automake” y “build-essential”.

5) Repetir los pasos del 6 al 10 del procedimiento de instalación 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 algún 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 contraseña de usuario que se utiliza para entrar a la sesión.

15) Esperar que finalice la acción del comando.

16) Cerrar la Terminal.

Con esto quedará instalado el motor de simulación ngspice y se podrá utilizar tanto

en la suite gEDA y en Oregano.

24
CAPÍTULO 4: Guía de uso de aplicaciones

4.1 Uso de la suite gEDA

El uso de la suite gEDA podría dividirse en dos etapas básicas: el dibujo del

esquemático (gschem) y la simulación del circuito representado por el esquemático

(gspiceui). A continuación se describe el uso básico de estas dos aplicaciones para poder

llevar a cabo una simulación exitosa.

4.1.1 Uso de gschem

Para poder acceder al programa gschem se debe seguir la secuencia “Aplicaciones

>> Electrónica >> 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 esquemáticos gschem.

En la Figura 4.3 se puede observar con más detalle la barra de herramientas

disponible en gschem.

Figura 4.3. Barra de herramientas de gschem.

26
Donde la numeración 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 librería de componentes.

7. Agregar cables.

8. Agregar buses.

9. Agregar texto.

10. Modo de selección.

Para agregar elementos al esquemático solamente es necesario dar clic en el sexto

botón de la Figura 4.3 y aparecerá una ventana como la Figura 4.4.

Figura 4.4. Librerías de gschem.


27
En esta ventana se pueden buscar fácilmente componentes para ser utilizados en el

esquemático a realizar. Es importante recordar que esta librería es de símbolos y no de

modelos, por lo que estos símbolos solo sirven para dibujar los esquemáticos. Para poder

simular los esquemáticos es necesario que cada componente tenga asignado un modelo que

lo describa. Solamente los componentes más básicos (fuentes, resistencias, inductores,

capacitores y tierra) pueden simularse sin asignarles modelos. El procedimiento para

agregar más símbolos a la librería y asignarle modelos a los símbolos se desarrollará en el

próximo capítulo.

Figura 4.5. Esquemático sin cablear.

28
En la Figura 4.5 se observa un esquemático sin cablear. En este caso solo es

cuestión de dar clic en el sétimo botón 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 opción de agregar nuevos atributos a la fuente y

modificar los ya existentes. Además 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 simulación para diferenciar

los distintos componentes del esquemático. 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 básicos

Componente Letra inicial

Fuente independiente de voltaje V

Fuente independiente de corriente I

Resistencia R

Capacitor C

Inductor L

Diodo D

Transistor de unión bipolar BJT Q

Transistor de efecto de campo MOSFET M

Subcircuito (.SUBCKT) X

En caso de encontrar muy molesto el tener que renombrar el atributo “refdes” de

todos los componentes, existe un procedimiento para modificar la configuración 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

contraseña de usuario.

3. Una vez en el editor de textos, dar clic en el botón “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 sección del documento que se refiere a la

autonumeración de los componentes. De manera que se deben “descomentar” las tres

líneas que contienen la palabra “auto-uref” borrando el símbolo “;” (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. Líneas con “auto-uref” descomentadas.

Para que estos cambios hagan efecto solo se debe cerrar gschem y volverlo a abrir.

Continuando con el esquemático 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 sección “Add Attribute” buscar el atributo “value”,

asignarle el valor de “1k” y dar clic en el botón “Add” como en la Figura 4.9. Si no se

desea hacer visible el nombre o el valor del atributo agregado, solo es cuestión 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 esquemático, aunque el hecho

de ser visible o invisible no afecta a la hora de la simulación.

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 mayúscula o

minúscula.

También es posible usar la notación “XeY” que sería equivalente a decir “𝑋 𝑥 10𝑌 ”,

en caso de que se considere más conveniente. Por lo que el valor de 1kΩ se puede expresar

como “1k” o “1e3”, en ambos casos es indiferente el uso de mayúsculas o minúsculas.

33
Tabla 4.2. Lista de prefijos válidos para “value”

Prefijo Nombre Valor


T Tera 1012
G Giga 109
MEG Mega 106
K Kilo 103
M Mili 10-3
U Micro 10-6
N Nano 10-9
P Pico 10-12
F Femto 10-15

Una vez que el esquemático tiene asignado todos los atributos para cada uno de los

componentes se debe guardar el esquemático en formato “.sch” para luego continuar con la

simulación en gspiceui. El resultado final debe parecerse al de la Figura 4.10.

Figura 4.10. Esquemático 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 parámetros de la fuente de una
34
forma más sencilla y amigable. En caso de existir más de una fuente en el esquemático sí se

debe prestar atención 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 demás

fuentes. Esto quedará más claro en la sección 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 más rápida para acceder a gspiceui es por medio de la

combinación 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 botón

“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 simulación 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. Elección de motor de simulación.

La Figura 4.14 corresponde a la barra de herramientas de gspiceui, de donde la

numeración corresponde a:

1. Abrir circuitos en formato .ckt, .cir y listas de nodo en formato .net.

36
2. Abrir esquemáticos en formato .sch.

3. Recargar archivo.

4. Cerrar archivo.

5. Crear simulación.

6. Correr simulación.

7. Detener simulación.

8. Editar esquemático.

9. Graficar resultados de simulación.

10. Ver manual.

Para poder realizar la simulación se debe cargar el esquemático a simular, por lo

que se debe dar clic en el segundo botón de la Figura 4.14 y buscar el archivo previamente

guardado en formato .sch en la sección anterior.

Figura 4.14. Barra de herramientas de gspiceui.

Una vez cargado el archivo, se puede observar que el cuadro de diálogo ubicado en

la parte inferior de la ventana muestra la lista de nodos del esquemático cargado.

37
Se deben marcar todos los nodos y componentes que sean de interés para

simulación. 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 sección

“Parameters” para tensión eléctrica, intensidad de corriente eléctrica, potencia eléctrica y

resistencia eléctrica.

Es necesario especificar la fuente del circuito en la sección “Signal source”. Esta

fuente será configurada con gspiceui. En caso de haber más de una fuente se debe elegir

una y las demás deben estar correctamente configuradas desde el esquemático.

Figura 4.15. Configuración 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 señal de reloj, independientemente del tipo de fuente que era en el

esquemático creado en gschem.

Una vez definida y configurada la fuente se debe proceder a determinar el tiempo de

inicio y final de la simulación, así como el tamaño 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.

Además, se marcaron los componentes R1, R2 y V1. Y solo se seleccionó la casilla

de tensión eléctrica en “Parameters”.

Teniendo todo esto listo se puede proceder a crear el archivo de simulación dando

clic en el quinto botón de la barra de herramientas.

Una vez creado el archivo de simulación se puede correr dicho archivo dando clic

en el sexto botón de la barra de herramientas.

Y finalmente, para poder observar de forma gráfica los resultados de la simulación

se da clic en el noveno botón 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 cuestión 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 más paneles dando clic derecho sobre alguno de ellos. También

es posible cambiar el color de las variables graficadas dando clic derecho sobre sus
39
nombres en el panel que se les asignó. Además es posible cambiar la escala del gráfico a

logarítmico al desplegar el menú “Options >> X Axis Scale”.

Figura 4.16. Graficador gwave.

En la Figura 4.17 se puede observar una propuesta de cómo presentar los resultados

de simulación del esquemático 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 gráfica para la variable de

algún componente básico (fuente, resistencia, capacitor e inductor) se encuentra

sdfsdfsdfsdfdsf

40
Figura 4.17. Representación gráfica de simulación.

“invertida”. Esto se debe a que el simulador usa una convención 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 posición y rotación de este dispositivo

dentro del esquemático a veces puede quedar “invertido” con respecto a la convención del

simulador, así que se debe colocar dicho dispositivo en la posición correcta invirtiendo la

conexión de las terminales, usando las herramientas para rotar el símbolo. Este detalle no

afecta el funcionamiento del circuito, solamente invierte la representación de los resultados

de simulación de algunos componentes, de manera que podría confundir al usuario en caso

de simular circuitos más 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 básicas

del diseño de un circuito electrónico: dibujo del esquemático y simulación del mismo.

Para poder acceder a Oregano se debe seguir la siguiente secuencia: “Aplicaciones

>> Electrónica >> Oregano, herramienta para la ingeniería electrónica”.

Figura 4.18. Acceso a Oregano.

Una vez dentro de Oregano se puede apreciar que tiene un aspecto muy similar a

otros programas diseñados para Windows como TINA.

42
Figura 4.19. Interfaz gráfica de Oregano.

En la Figura 4.19 se puede notar que se cuenta con fácil acceso a la biblioteca de

símbolos. Al igual que con gEDA, es importante recordar que esta librería es de símbolos y

no de modelos, por lo que estos símbolos solo sirven para dibujar los esquemáticos. Para

poder simular los esquemáticos es necesario que cada componente tenga asignado un

modelo que lo describa. Solamente los componentes más básicos (fuentes, resistencias,

inductores, capacitores y tierra) pueden simularse sin asignarles modelos. El procedimiento

para agregar más símbolos a la librería y asignarle modelos a los símbolos se desarrollará

en el próximo capítulo.

Para realizar el mismo esquemático 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 esquemático ya que los esquemáticos creados

con Oregano no se pueden usar en gspiceui, además 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. Configuración 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
automáticamente 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 esquemático 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. Configuración de resistencia en Oregano.

Al igual que con gEDA se pueden usar los prefijos de la Tabla 4.2 o la

representación 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 numeración corresponde a:

1. Esquemático nuevo.

2. Abrir esquemático.

3. Guardar esquemático.

4. Cortar.

5. Copiar.

6. Pegar.

7. Modo selección.

8. Ingresar texto.

9. Dibujar cable.

10. Agregar punta de prueba.

11. Correr simulación.

12. Parámetros de simulación.

13. Mostrar librería.

14. Mostrar cuadrícula.

15. Aumentar zoom.

16. Disminuir zoom.

Finalmente se dibujan los cables para terminar de crear el esquemático y se añaden

las puntas de prueba usando la barra de herramientas, quedando como resultado la Figura

4.23.
46
Figura 4.23. Esquemático en Oregano.

Para elegir el motor de simulación se puede acceder a través del menú en: “Editar

>> Preferencias”.

Seguidamente se procede a configurar los parámetros de simulación usando la barra

de herramientas. Se configura el tiempo inicial y final, así como el incremento (paso) de

tiempo. Además, Oregano posee la ventaja de poder realizar distintas pruebas al mismo

tiempo: Análisis en el tiempo, Fourier, CD y CA, a diferencia de gEDA que solo puede

realizar un tipo de simulación a la vez.

47
Figura 4.24. Elección de motor de simulación.

Figura 4.25. Configuración de parámetros de simulación.

Una vez configurados los parámetros de simulación, se procede a correr la

simulación, usando la barra de herramientas. Esto lanza automáticamente una ventana

como la Figura 4.26.

48
Figura 4.26. Resultado de simulación en Oregano.

En dicha ventana se pueden marcar todas las variables que se deseen graficar. Estas

variables corresponden a la tensión eléctrica en los nodos previamente seleccionados con

las puntas de prueba. Si se desea saber el número de cada nodo se puede ir a la ventana

principal (Figura 4.23) y seleccionar en el menú “Ver >> Etiquetas de los nodos”.

49
CAPÍTULO 5: Creación de símbolos y asignación de modelos

La clave en cualquier programa de diseño y simulación de circuitos electrónicos es

la capacidad de adoptar nuevos símbolos y poder asignarles sus respectivos modelos.

A continuación se mostrará el procedimiento mínimo necesario para realizar dichas

tareas tanto en la suite gEDA como en Oregano.

5.1 Creación de símbolos y asignación de modelos en gEDA

Los símbolos en gEDA usan formato “.sym”. Para llegar a esto se debe seguir la

siguiente secuencia de formatos y archivos. Parte del proceso requiere la utilización de una

herramienta de la suite gEDA llamada “tragesym”.

Figura 5.1. Secuencia de formatos y archivos para obtener símbolo en gEDA.

El programa “tragesym” convierte archivos de texto en esquemáticos “.sch”. Este

archivo de texto se basa en el archivo “tragesym-template2”. El archivo “tragesym-

template2” se puede conseguir en el directorio “/usr/share/doc/geda-doc/wiki/_media”.

La herramienta “tragesym” no queda instalada al realizar la instalación estándar, así

que es necesario instalar el paquete que la contiene. Este paquete es “geda-utils”. La

instalación 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 instalación se puede llevar a cabo desde

la Terminal ingresando la línea “sudo apt-get install geda-utils” y luego autorizando la

instalación 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 símbolo utilizando el procedimiento que

se muestra a continuación:

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 copiaría 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 símbolo 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 sección “options” no hace falta realizar cambios. En la

sección “geda_attr” deben modificarse como mínimo las celdas que están al lado de

“name”, “device” y “refdes” como en la Figura 5.2.

51
Figura 5.2. Sección geda_attr antes y después de modificar.

5. La sección “pins” debe quedar como la Figura 5.3. En la columna “#pinnr” deben

escribirse todos los números de pin que posee el componente, en el mismo orden que

estén 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 más “universal” viene siendo “line”. En la columna “posit”

simplemente se debe especificar la posición 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. Sección pins después de modificar.

6. Crear un archivo vacío en el escritorio y copiar todo el contenido del archivo

MAX274.ods en este archivo vacío.

7. Renombrar el archivo como “MAX274” (sin extensión).

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

esquemático del símbolo.

53
11. Abrir el esquemático 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 símbolo MAX274.sym en la librería “local”.

Ahora el símbolo puede ser accedido desde gschem.

Figura 5.4. Creación de archivo vacío 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 números que se muestran después 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 básica de un modelo.

Una vez que se cuente con este archivo se debe copiar a la dirección

“/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 símbolo MAX274.sym. Por lo tanto, cada vez que se agregue el símbolo

MAX274 al esquemático 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”. Además, se debe agregar el

atributo “file” indicando la dirección del modelo MAX274.CIR, la cual sería

“/usr/share/gEDA/sym/local/MAX274.CIR”.

55
Figura 5.6. Símbolo del MAX274 en gschem.

Figura 5.7. Edición de atributos del MAX274.

56
5.2 Creación de símbolos y asignación de modelos en Oregano

Las librerías en Oregano están basadas en XML, y usan la extensión “.oreglib”.

Estas librerías son capaces de describir varios símbolos al mismo tiempo y su estructura

básica 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_Símbolo</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_Símbolo</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 básica de librería 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 básica de librería en Oregano, parte 2.

58
Los números 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).

Además, 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 símbolo definiendo varias

coordenadas y uniéndolas por líneas. Además se determina la ubicación de los pines,

siempre manteniendo el orden antes mencionado. En el caso de este símbolo, 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 símbolo (Nombre_Símbolo) es independiente del modelo (Nombre_Modelo),

de manera que el mismo símbolo se puede usar en varios modelos. Esto es útil en casos

como amplificadores operacionales donde varios modelos distintos podrían usar un mismo

símbolo que los represente.

Se puede notar que en Oregano la creación de un símbolo requiere mucho trabajo,

ya que las Figuras 5.8 y 5.9 representan la forma de una librería con un solo símbolo, y

dicho símbolo con solamente dos pines. Por lo tanto, un símbolo con un número

considerado de pines se vuelve algo muy complicado, volviendo a Oregano casi obsoleto

con relación a la creación de símbolos.

Cualquier librería .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 librería se encontrara en el Escritorio.


59
De igual manera, para que un modelo pueda usarse en Oregano debe usar la

extensión “.model” y copiarse en el directorio “/usr/share/oregano/models”, además 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 automáticamente relacionado con su respectivo

símbolo, a diferencia de gEDA donde es necesario especificar la ubicación y nombre del

modelo cada vez que se utiliza el símbolo 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
CAPÍTULO 6: Diseño de modelos

6.1 Diseño del MAX274

El dispositivo MAX274 consiste en cuatro filtros activos de tiempo continuo

idénticos 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 señal de reloj, ni va a sufrir del ruido que este agrega a la señal de salida.

Figura 6.1. Configuración de pines del MAX274.[3]

En la Figura 6.2 se puede observar el esquemático de uno de los filtros, de donde se

puede destacar que todos los elementos son conocidos. Además se puede apreciar que las

resistencias RX y RY dependen de la conexión del pin FC.

61
Figura 6.2. Esquemático del filtro usado en el MAX274. [3]

Cada filtro del MAX274 solo requiere de cuatro resistencias para funcionar como

pasabajos o pasabandas. Dicha configuración de resistencias se puede observar en la Figura

6.3.

Figura 6.3. Configuración de resistencias externas usadas en el MAX274.[3]

62
Dicha configuración 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, además 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 información se procedió a realizar el diseño del modelo del MAX274.

Se consideró conveniente realizar un modelo dividido en distintos bloques con

tareas específicas para facilitar la escritura y depuración 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 basándose 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 tensión eléctrica 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 debía

disminuir conforme aumentaba el nivel de tensión eléctrica 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 ecuación G(s) de la Figura 6.4 para obtener la función de transferencia de un

filtro del MAX274 cuando trabaja como pasabajos. Todo esto teniendo que:

1 (6.1-5)
2 × 109 ≈
2𝜋𝐶

Donde C=79,575pF.

De manera que se llega a la siguiente función de transferencia:

𝑅2 𝑅3 𝑅𝑋
𝐺 𝑠 = 2
(6.1-5)
𝑅1 𝑅2 𝑅3 𝑅4 +5𝐾Ω 𝑅𝑌 (𝑠𝐶) +𝑅1 𝑅2 𝑅4 +5𝐾Ω 𝑅𝑋 𝑠𝐶 +𝑅1 𝑅3 𝑅𝑌

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 análisis matemático del circuito de la

Figura 6.3 se logró determinar la siguiente función de transferencia para el filtro en modo

pasabajos:

66
𝑅2 𝑅3 𝑅𝑋
𝐺 𝑠 = 𝑅1 𝑅2 𝑅3 𝑅4 +5𝐾Ω 𝑅𝑌 𝑠𝐶 2 +𝑅1 𝑅2 𝑅4 +5𝐾Ω 𝑅𝑋 𝑠𝐶 +𝑅1 𝑅3 𝑅𝑌 +
(6.1-6)
+𝐴(𝑠)−1 5𝑅1 𝑅2 𝑅3 𝑅4 +5𝐾Ω 𝑅𝑌 (𝑠𝐶)2 +… +𝐴(𝑠)−2 9𝑅1 𝑅2 𝑅3 … +𝐴(𝑠)−3 𝑅1 𝑅2 …

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 igualarían. Por lo tanto es necesario utilizar un

modelo de amplificador operacional lo más 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 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

XFILTROA 1 2 3 4 6 5 20 17 8 FILTRO
XFILTROB 12 11 10 9 7 5 20 17 8 FILTRO
XFILTROC 13 14 15 16 18 5 20 17 8 FILTRO
XFILTROD 24 23 22 21 19 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 1 2 3
* | | |
* + - OUT

E1 3 0 1 2 1E50
R1 1 2 1E50
.ENDS OPAMP

.ENDS

Figura 6.10. Modelo para el MAX274, parte 2.

Luego se procedió a simular el modelo MAX274 basándose en la configuración

típica que brinda el fabricante, igual a la Figura 6.11.

Figura 6.11. Aplicación típica del MAX274. [3]


69
El esquemático 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. Esquemático de aplicación típica 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. Además, coincide con la respuesta

esperada por el fabricante en la Figura 6.14.

70
Figura 6.13. Respuesta en frecuencia de la aplicación típica del MAX274.

Figura 6.14. Respuesta en frecuencia esperada de la aplicación típica del MAX274. [3]

71
De igual forma se hicieron pruebas simulando individualmente cada filtro del

MAX274 usando la configuración de la Figura 6.15, obtenida de las hojas del fabricante,

usando los parámetros del “Test Circuit A” que ahí mismo se observan.

Figura 6.15. Configuración 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 disminución de la señal a razón de 40dB por década, aproximadamente.

6.2 Diseño del MF10

El dispositivo MF10 consiste en dos filtros de capacitores conmutados idénticos

independientes, capaces de trabajar con dos señales de reloj distintas.

73
Figura 6.17. Configuración 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 características que se tuvo que tomar en cuenta a la hora de diseñar el

modelo es la función 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 composición 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 función del pin SA/B. Este sirve como

señal de mando para cambiar el estado de dos interruptores internos.

El pin LSh ayuda a desplazar la señal de reloj, dependiendo de si la señal es tipo

CMOS o TTL. La conexión del pin LSh también debe tomar en cuenta el tipo de

alimentación que se está utilizando.

El pin 50/100/CL permite cambiar la relación entre la frecuencia de la señal de reloj

y la frecuencia central del filtro, a razón de 50:1 y 100:1. También puede inhabilitar la

acción del filtro y activar un limitador de corriente en los pines de alimentación.

75
Dentro de los bloques que se pueden observar en el diagrama de la Figura 6.18

están 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 bifásicos de señales de reloj no traslapadas y dos

interruptores.

Estos bloques fueron tratados de la siguiente forma:

a) Amplificadores operacionales: considerados ideales, después de realizar un análisis

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 relación 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 relación entre C2 y C1 fuera 8:1

cuando se elegía la relación de frecuencias 50:1, y 16:1 cuando la relación de

frecuencias deseada era de 100:1. Por aparte se configuraron otros interruptores

controlados por voltaje para deshabilitar la acción del filtro cuando se ocupara y se

activara un circuito limitador de corriente hacia los pines de alimentación.

e) Desplazador de nivel: para simplificar el diseño, se hizo el diseño general del MF10 de

manera que pudiera trabajar con cualquier señal de reloj (TTL o CMOS), sin necesidad

de desplazar la señal.

f) Non overlapping clock: de igual manera que con el desplazador de nivel, se creó el

modelo de manera que esto no afectara. Además, 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 simulación al integrar una señal de corriente directa

(CD) se puede observar en la Figura 6.20 y es consistente con la Figura 6.19.

77
Figura 6.20. Simulación del integrador no inversor solo y en cascada.

En esta misma Figura 6.20 también se puede ver la señal 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 señal

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 14 15 16 17 18 19 20
* | | | | | | | | | | | | | | | | | | | |
* LPA | | | | | | | | | | | | | | | | | | |
* BPA | | | | | | | | | | | | | | | | | |
* N/AP/HPA| | | | | | | | | | | | | | | | |
* INVA | | | | | | | | | | | | | | | |
* S1A | | | | | | | | | | | | | | |
* SA/B | | | | | | | | | | | | | |
* VA+ | | | | | | | | | | | | |
* VD+ | | | | | | | | | | | |
* LSH | | | | | | | | | | |
* CLKA | | | | | | | | | |
* CLKB | | | | | | | | |
* 50/100/CL | | | | | | | |
* VD- | | | | | | |
* VA- | | | | | |
* AGND | | | | |
* S1B | | | |
* INVB | | |
* N/AP/HPB | |
* BPB |
* LPB

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

*************************************************************************************

.SUBCKT FILTRO 1 2 3 4 5 6 7 8 9 10
* | | | | | | | | | |
* INV | | | | | | | | |
* V+ | | | | | | | |
* S1 | | | | | | |
* AGND | | | | | |
* CLK | | | | |
* 50/100/CL | | |
* SA/B | | |
* N/AP/HP | |
* BP |
* 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 2 3 4 5
* | | | | |
* ENTRADA V+ 50/100/CL CLK 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 4 0 SWITCH1 OFF
S2 7 0 4 0 SWITCH1 OFF
S3 6 0 4 0 SWITCH2 ON
S4 7 8 4 0 SWITCH2 ON
.MODEL SWITCH1 SW (RON=10 ROFF=1E6 VT=1)
.MODEL SWITCH2 SW (RON=1E6 ROFF=10 VT=1)

C1A 7 9 2P
C1B 7 10 1P

.ENDS INTEGRADOR

*************************************************************************************

.SUBCKT OPAMP 1 2 3
* | | |
* + - OUT

E1 3 0 1 2 1E50
R1 1 2 1E50
.ENDS OPAMP

*************************************************************************************

.SUBCKT SCAP1 1 2 3 4
* | | | |
* ENT | | |
* 50/100/CL | |
* V+ |
* SALIDA

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

*************************************************************************************

.SUBCKT SCAP2 1 2 3 4
* | | | |
* ENT | | |
* 50/100/CL | |
* V+ |
* 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 4 5
* | | | | |
* AGND | | | |
* PTOSUMA | | |
* LP | |
* SA/B |
* 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 2 3 4
* | | | |
* N+ N- 50/100/CL 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 esquemático 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. Configuración utilizada para probar MF10. [4]

82
Figura 6.26. Ecuaciones de diseño para la configuración de prueba. [4]

El esquemático 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 esquemático con una señal de entrada

senoidal con amplitud de 1V y frecuencia igual a 10KHz (una década después de la

frecuencia de corte). La señal de salida esperada del filtro a esta frecuencia con la amplitud

de 1V sería 10mV (-40dB). Pero tal como se observa en la Figura 6.27 la señal 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 gráfica que muestra la respuesta de varios filtros de segundo

orden como función 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 simulación del MF10 como filtro de segundo orden.

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

No se logró obtener la atenuación esperada de la señal, 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

demás 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 simulación no permite aplicar un cambio brusco de

tensión eléctrica en las terminales del capacitor, posiblemente porque provocaría un pico de

intensidad de corriente eléctrica que teóricamente tendería 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 información 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 esquemático real utilizado por

el fabricante. Por lo que cualquier otro modelo basado en diagramas de bloques o

información menos precisa son simplemente aproximaciones que intentan imitar el

comportamiento esperado por el dispositivo a modelar, pero con posibles inconsistencias,

algunas más graves que otras.

85
CAPÍTULO 7: Comparación de herramientas libres con TINA

La herramienta utilizada en la Escuela de Ingeniería Eléctrica de la Universidad de

Costa Rica es TINA. Esta herramienta posee la facilidad de poseer una amplia librería de

símbolos y modelos, además de poder agregar modelos nuevos fácilmente por medio de

macros.

En un principio de la elaboración del presente proyecto se utilizó TINA para

realizar pruebas con varios modelos. Se utilizó la versión “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 versión gratuita de TINA.

Pero la versión demo de TINA se encuentra tan limitada que ciertas tareas como el simple

hecho de guardar los esquemáticos es imposible. Además se limita el tamaño de los

circuitos a simular de manera que solo es posible simular esquemáticos con una

complejidad muy baja.

Obviamente cuando se utiliza una versión de TINA distinta a la demo se habilitan

muchas opciones que no se disponen en la versión gratuita. Pero para poder usar la

aplicación TINA en su máxima 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 versátiles 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
CAPÍTULO 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 mayoría de aspectos la calidad de muchos

programas disponibles en Microsoft Windows que requieren de gran cantidad de

recursos y además cuestan mucho dinero, como es el caso de TINA.

 La suite gEDA, al no ser una aplicación única donde se centralicen las tareas, puede

provocar en los usuarios un proceso más lento de familiarización.

 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 presentación muy amigable con el usuario y por lo

tanto se convierte en una herramienta muy sencilla de utilizar por usuarios sin

experiencia en la simulación de circuitos electrónicos.

 La centralización de tareas que presenta Oregano lo convierte en una aplicación

muy rígida y poco personalizable.

 La herramienta tragesym de la suite gEDA hace que la creación de símbolos se

convierta en una tarea muy sencilla, además de tener un gran potencial para crear

símbolos que contengan muchos pines.

88
 La creación de símbolos en Oregano es muy tediosa y lenta, por lo que se vuelve

casi imposible pensar en crear un símbolo con un número elevado de pines.

 La simulación de circuitos en Oregano suele presentar problemas, especialmente

cuando se usa gnucap como motor de simulación, 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 versátil y con gran potencial, permitiendo usar los

motores de simulación a su máximo potencial.

 El motor de simulación gnucap es más robusto que ngspice, con mejores algoritmos

para simular los circuitos y más opciones de simulación. Además no se deriva de

Spice, como es el caso de ngspice.

 La suite gEDA posee mayor potencial y capacidad de expansión 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 esquemático real del dispositivo a modelar. Cualquier

modelo que no se base en el esquemático es simplemente una aproximación que

intenta imitar el comportamiento esperado por el dispositivo, pero con posibles

inconsistencias, algunas más graves que otras.

89
8.2 Recomendaciones

 Revisar las diferencias que existen entre los motores de simulación 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 demás paquetes que vienen incluidos con la suite gEDA, tanto los que

se instalan de manera estándar, 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 simulación de esquemáticos, sino que también posee otras herramientas

relacionadas con el diseño de PCB (“Printed Circuit Board” o circuito impreso) y

otras tareas más específicas que pueden ser de gran utilidad. Además hay que

recordar que la suite gEDA se está actualizando periódicamente 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 diseño del modelo.

 La utilización de interruptores controlados por voltaje y fuentes dependientes

facilita el diseño de modelos cuando no se posee el esquemático original del

dispositivo.

90
BIBLIOGRAFÍA

Libros:

1. Calvo Alpízar, J. G. “Diseño de modelos equivalentes de circuitos integrados

usando SPICE para TINA”, Escuela de Ingeniería Eléctrica, Universidad de

Costa Rica, Costa Rica, 2008.

2. Rashid, M. “Spice for Power Electronics and Electric Power”, 2 edición,

Taylor & Francis, Estados Unidos, 2006.

Páginas 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-1-

0506/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
APÉNDICE A: Descripción de algunos elementos en ngspice [9]

A continuación se muestra un extracto del manual de ngspice para comprender la


sintaxis utilizada en algunos elementos básicos usados en la descripción 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
APÉNDICE B: Descripción de algunos elementos en gnucap [8]

A continuación se muestra un extracto del manual de gnucap para comprender la


sintaxis utilizada en algunos elementos básicos usados en la descripción 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

S-ar putea să vă placă și