Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Tecnología Industrial

Fundamentos de la programación SPICE

Programar una simulación de circuito con SPICE es muy parecido a programar en cualquier otro lenguaje de computadora:debe escribir los comandos como texto en un archivo, guardar ese archivo en el disco duro de la computadora y luego procesar el contenido de ese archivo con un programa (compilador o intérprete) que comprenda dichos comandos. En un lenguaje de computadora interpretado, la computadora tiene un programa especial llamado intérprete que traduce el programa que escribió (el llamado archivo fuente ) en el propio idioma de la computadora, sobre la marcha, a medida que se ejecuta: En un lenguaje de computadora compilado, el programa que escribió se traduce de una vez al idioma de la computadora mediante un programa llamado compilador . Una vez que se ha "compilado" el programa que ha escrito, el ejecutable resultante El archivo no necesita más traducción para ser entendido directamente por la computadora. Ahora se puede "ejecutar" en una computadora, ya sea que se haya instalado o no el software del compilador en esa computadora: SPICE es un lenguaje interpretado. Para que una computadora pueda entender las instrucciones SPICE que escribe, debe tener instalado el programa SPICE (intérprete): Los archivos fuente de SPICE se denominan comúnmente "listas de red", aunque a veces se conocen como "decks" con cada línea en el archivo que se llama una "tarjeta". Lindo, ¿no te parece? Las listas de red las crea una persona como usted que escribe las instrucciones línea por línea utilizando un procesador de texto o un editor de texto. Los editores de texto son mucho más preferidos a los procesadores de texto para cualquier tipo de programación informática, ya que producen texto ASCII puro sin códigos especiales incrustados para resaltar el texto (como cursiva o negrita fuentes), que no son interpretables por el software de interpretación y compilación. Como en la programación general, el archivo fuente que cree para SPICE debe seguir ciertas convenciones de programación. Es un lenguaje informático en sí mismo, aunque simple. Habiendo programado en BASIC y C / C ++, y teniendo algo de experiencia leyendo programas PASCAL y FORTRAN, es mi opinión que el lenguaje de SPICE es mucho más simple que cualquiera de estos. Tiene aproximadamente la misma complejidad que un lenguaje de marcado como HTML, quizás menos. Hay un ciclo de pasos a seguir al usar SPICE para analizar un circuito. El ciclo comienza cuando invoca por primera vez el programa de edición de texto y hace su primer borrador de la lista de conexiones. El siguiente paso es ejecutar SPICE en esa nueva lista de conexiones y ver cuáles son los resultados. Si es un usuario novato de SPICE, sus primeros intentos de crear una buena lista de conexiones estarán plagados de pequeños errores de sintaxis. No se preocupe, como todo programador informático sabe, la competencia viene con mucha práctica. Si su ejecución de prueba produce mensajes de error o resultados que obviamente son incorrectos, debe volver a invocar el programa de edición de texto y modificar la lista de conexiones. Después de modificar la lista de red, debe ejecutar SPICE nuevamente y verificar los resultados. La secuencia, entonces, se parece a esto:

Para "ejecutar" un "programa" SPICE, debe escribir un comando en una interfaz de indicador de terminal, como el que se encuentra en MS-DOS, UNIX o la opción de indicador de MS-Windows DOS:

 especias  

La palabra "spice" invoca el programa de interpretación SPICE (¡siempre que el software SPICE se haya instalado en la computadora!), El símbolo "<" redirige el contenido del archivo fuente al intérprete SPICE y example.cir es el nombre del archivo fuente para este ejemplo de circuito. La extensión del archivo " .cir ”No es obligatorio; He visto " .inp "(Para" entrada ") y simplemente" .txt También funciona bien. Incluso funcionará cuando el archivo netlist no tenga extensión. A SPICE no le importa cómo lo nombre, siempre y cuando tenga un nombre compatible con el sistema de archivos de su computadora (para las máquinas MS-DOS antiguas, por ejemplo, el nombre del archivo no debe tener más de 8 caracteres, con 3 extensión de caracteres y sin espacios ni otros caracteres no alfanuméricos). Cuando se escribe este comando, SPICE leerá el contenido del example.cir , analice el circuito especificado por ese archivo y envíe un informe de texto a la salida estándar de la terminal de la computadora (generalmente la pantalla, donde puede verlo desplazarse). Una salida típica de SPICE tiene varias pantallas de información, por lo que es posible que desee revisarla con una ligera modificación del comando:

 especia  

Esta alternativa "canaliza" la salida de texto de SPICE a la utilidad "más", que permite que solo se muestre una página a la vez. Lo que esto significa (en inglés) es que la salida de texto de SPICE se detiene después de una pantalla completa y espera hasta que el usuario presiona una tecla del teclado para mostrar la siguiente pantalla llena de texto. Si solo está probando su archivo de circuito de ejemplo y desea verificar si hay errores, esta es una buena manera de hacerlo.

 especias  example.txt 

Esta segunda alternativa (arriba) redirige la salida de texto de SPICE a otro archivo, llamado example.txt , donde se puede ver o imprimir. Esta opción corresponde al último paso del ciclo de desarrollo mencionado anteriormente. Este autor recomienda que utilice esta técnica de "redirección" a un archivo de texto solo después de haber demostrado que su lista de conexiones de circuito de ejemplo funciona bien, para que no pierda el tiempo invocando un editor de texto solo para ver el resultado. durante las etapas de "depuración". Una vez que tenga una salida SPICE almacenada en un .txt archivo, puede usar un editor de texto o (¡mejor aún!) un procesador de texto para editar la salida, eliminando cualquier pancarta y mensaje innecesarios, incluso especificando fuentes alternativas para resaltar los encabezados y / o datos para una apariencia más pulida. Luego, por supuesto, puede imprimir la salida en papel si así lo desea. Dado que la salida directa de SPICE es texto ASCII simple, dicho archivo será universalmente interpretable en cualquier computadora, ya sea que SPICE esté instalado en él o no. Además, el formato de texto plano asegura que el archivo será muy pequeño en comparación con los archivos de capturas de pantalla gráficas generados por simuladores de “apuntar y hacer clic”. El formato de archivo netlist requerido por SPICE es bastante simple. Un archivo netlist no es más que un archivo de texto ASCII simple que contiene varias líneas de texto, cada línea describe un componente de circuito o un comando SPICE especial. La arquitectura del circuito se especifica asignando números a los puntos de conexión de cada componente en cada línea, conexiones entre componentes designados por números comunes. Examine el siguiente diagrama de circuito de ejemplo y su archivo SPICE correspondiente. Tenga en cuenta que el diagrama de circuito existe solo para facilitar la comprensión de la simulación a los seres humanos. SPICE solo comprende las listas de red:

 Lista de redes de ejemplo v1 1 0 dc 15 r1 1 0 2.2k r2 1 2 3.3k r3 2 0150 .fin 

Cada línea del archivo fuente que se muestra arriba se explica aquí:

  • v1 representa la batería (fuente de voltaje 1), terminal positivo numerado 1, terminal negativo numerado 0, con una salida de voltaje CC de 15 voltios.
  • r1 representa la resistencia R 1 en el diagrama, conectado entre los puntos 1 y 0, con un valor de 2,2 kΩ.
  • r2 representa la resistencia R 2 en el diagrama, conectado entre los puntos 1 y 2, con un valor de 3.3 kΩ.
  • r3 representa la resistencia R 3 en el diagrama, conectado entre los puntos 2 y 0, con un valor de 150 kΩ.

Los puntos (o "nodos") eléctricamente comunes en una descripción de circuito SPICE comparten números comunes, de la misma manera que los cables que conectan puntos comunes en un circuito grande generalmente comparten etiquetas de cables comunes. Para simular este circuito, el usuario escribiría esas seis líneas de texto en un editor de texto y las guardaría como un archivo con un nombre único (como example.cir ). Una vez que la lista de conexiones está compuesta y guardada en un archivo, el usuario procesa ese archivo con una de las declaraciones de la línea de comandos mostradas anteriormente ( spice ), y recibirán esta salida de texto en la pantalla de su computadora:

 1 ******* 10/10/99 ******** especia 2g.6 3/15/83 ******** 07:32:42 **** * 0example netlist 0 **** temperatura de lista de entrada =27.000 grados c v1 1 0 dc 15 r1 1 0 2.2k r2 1 2 3.3k r3 2 0150 .fin ***** 10/10/99 ********* especia 2g.6 3/15/83 ****** 07:32:42 ****** 0example netlist 0 **** temperatura de solución de polarización de señal pequeña =27.000 grados c voltaje del nodo voltaje del nodo (1) 15,0000 (2) 0,6522 Corrientes de fuente de voltaje nombre actual v1 -1.117E-02 disipación total de potencia 1,67E-01 vatios trabajo concluido 0 tiempo total de trabajo 0.02 1 ******* 10/10/99 ******** especia 2g.6 3/15/83 ****** 07:32:42 ***** 0 **** temperatura de lista de entrada =27.000 grados c 

SPICE comienza imprimiendo la hora, la fecha y la versión utilizada en la parte superior de la salida. Luego enumera los parámetros de entrada (las líneas del archivo fuente), seguido de una visualización de las lecturas de voltaje de CC de cada nodo (número de referencia) a tierra (siempre el número de referencia 0). A esto le sigue una lista de lecturas de corriente a través de cada fuente de voltaje (en este caso, solo hay una, v1). Finalmente, se imprime la disipación de potencia total y el tiempo de cálculo en segundos. Todos los valores de salida proporcionados por SPICE se muestran en notación científica. La lista de salida de SPICE que se muestra arriba es un poco detallada para el gusto de la mayoría de las personas. Para una presentación final, sería bueno recortar todo el texto innecesario y dejar solo lo que importa. Aquí hay una muestra de esa misma salida, redirigida a un archivo de texto ( spice example.txt ), luego se recortó juiciosamente con un editor de texto para la presentación final e imprimió:

 ejemplo de netlist v1 1 0 dc 15 r1 1 0 2.2k r2 1 2 3.3k r3 2 0150 .fin 
 voltaje del nodo voltaje del nodo (1) 15,0000 (2) 0,6522 
 corrientes de fuente de voltaje nombre actual v1 -1.117E-02 
 disipación de potencia total 1,67E-01 vatios 

Una de las cosas buenas de SPICE es que tanto los formatos de entrada como de salida son de texto plano, que es el formato electrónico más universal y fácil de editar que existe. Prácticamente cualquiera La computadora podrá editar y mostrar este formato, incluso si el programa SPICE en sí no reside en esa computadora. Si el usuario lo desea, es libre de utilizar las capacidades avanzadas de los programas de procesamiento de texto para que el resultado se vea más elegante. Incluso se pueden insertar comentarios entre líneas de la salida para mayor claridad para el lector.


Tecnología Industrial

  1. Introducción a SPICE
  2. Historia de SPICE
  3. La interfaz de línea de comandos
  4. Componentes del circuito
  5. Programación del microprocesador
  6. Dispositivos semiconductores en SPICE
  7. Simulación por computadora de circuitos eléctricos
  8. Espacios de nombres en la programación de C#
  9. Operadores de programación en C
  10. Tutorial C
  11. Fundamentos del rectificado de doble disco