Quite Universal Circuit Simulator

(Redirigido desde «Qucs»)

Quite Universal Circuit Simulator o Qucs, es un simulador de circuitos electrónicos de código abierto cuya licencia de distribución es GNU GPL. Posee la capacidad de elaborar un circuito con una interfaz gráfica de usuario (GUI) y simular el comportamiento del circuito en modo de gran señal, pequeña señal y con ruido eléctrico. Soporta además, la simulación de circuitos digitales usando VHDL y/o Verilog.

Quite Universal Circuit Simulator
Logo de Quite Universal Circuit Simulator
Captura de pantalla de Quite Universal Circuit Simulator
Captura de QUCS
Información general
Tipo de programa EDA
Autor Michael Margraf, Stefan Jahn et al.
Lanzamiento inicial 12 de agosto de 2003
Licencia GNU GPL v2+
Idiomas multilingüe
Información técnica
Programado en C++
Interfaz gráfica predeterminada Qt
Versiones
Última versión estable 0.0.19 ( 22 de enero de 2017 (7 años, 9 meses y 17 días))
Enlaces

Qucs soporta una lista creciente de componentes analógicos y digitales así como subcircuitos modelados en SPICE. Está pensado para ser mucho más sencillo de utilizar y manejar que otros simuladores de circuito como gEDA o PSPICE.

Tipos de análisis

editar

Los tipos de análisis que incluye son parámetros de dispersión o parámetros-S (incluyendo ruido), de corriente alterna AC (incluyendo ruido), de corriente continua DC, análisis transitorio, análisis en régimen armónico (todavía no finalizado), simulación digital (VHDL y Verilog-HDL) y variación de parámetros.

Características generales

editar
 
Esquemático creado con Qucs, en Ubuntu.

Qucs tiene una interfaz gráfica para elaborar esquemáticos. Los datos de simulación pueden representarse con varios tipos de diagramas, incluyendo el diagrama de Smith, diagramas cartesianos, tabulares, polares, combinación de polar y Smith, cartesianos en 3D, curvas de lugar, diagramas temporales y tablas de verdad.

La documentación ofrece muchos tutoriales útiles (WorkBook), informes (ReportBook) y una descripción técnica del simulador.

Otras características incluyen un calculador para líneas de transmisión, síntesis de Filtros, herramientas para el diagrama de Smith para potencia y ruido en adaptación de impedancias, síntesis para diseño de atenuadores, modelado de dispositivos y administrador de bibliotecas de subcircuitos, optimizador para diseños analógicos, interfaz Verilog-A, soporte para lenguajes múltiples (GUI y sistema de ayuda interna), jerarquía de subcircuitos (incluyendo parámetros), potente postproceso de datos utilizando ecuaciones y dispositivos lineales y no lineales definidos simbólicamente.

Herramientas

editar

Qucs consta de varios programas que interaccionan uno con otros a través de una GUI.

La GUI suele crear esquemáticos, realizar simulaciones, mostrar los resultados de las simulaciones, escribir código VHDL, etc.

 
Resultados en una simulación en Qucs, ejecutado en Ubuntu.

El simulador analógico es un programa por línea de comandos el cual está ejecutado por la GUI para simular el circuito previamente elaborado en el esquemático. Toma una lista de nodos (netlist), controla si existen errores, realiza las acciones requeridas para la simulación, y finalmente produce un conjunto de datos como resultado.

El editor de texto suele exhibir la información de las listas de nodos y logs de la simulación, y para editar los archivos incluidos por ciertos componentes (p. ej. lista de nodos elaborados en SPICE, o archivos Touchstone).

La aplicación de síntesis de filtros puede usarse para diseñar varios tipos de filtros.

La calculadora de líneas de transmisión puede usarse para el diseño y analizar tipos diferentes de líneas de transmisión (p. ej. microstrips, cables coaxiales).

El administrador de bibliotecas de componente tiene modelos de dispositivos de la vida real (p. ej. transistores, diodos, puentes, amplificadores operacionales). Puede también ser extendida por el usuario.

La aplicación para la síntesis de atenuadores puede usarse para diseñar varios tipos de atenuadores pasivos.

El programa por línea de comandos de conversión es una herramienta que utiliza la GUI para importar y exportar conjunto de datos, lista de nodos y esquemáticos de y hacia otros software CAD/EDA. Los formatos de archivo soportados así como la información para utilizarlos puede encontrarse en la página man de qucsconv.

Además, la GUI tiene otras herramientas EDA. Para simulaciones digitales (vía VHDL) puede utilizarse el programa FreeHDL.[1]​ Para optimización de circuitos (minimización de una función de costo), ASCO puede configurarse y ejecutarse.[2]

Componentes

editar

Las categorías de componentes que proporciona son las siguientes:

También tiene una biblioteca de componentes que incluye varios componentes estándares disponibles en el mercado (puentes, diodos, varistores, LEDs, JFETs, MOSFETS, y muchos otros más).

Modelos de transistores

editar

QUCS proporciona muchos modelos de simulación para transistores. Estos incluyen:

  • FBH-HBT
  • HICUM L0 v1.12
  • HICUM L0 v1.2
  • HICUM L2 v2.1
  • HICUM L2 v2.22
  • HICUM L2 v2.23
  • MESFET (Curtice, Statz, TOM-1 y TOM-2)
  • SGP (SPICE Gummel-Poon)
  • MOSFET
  • JFET
  • EPFL-EKV MOSFET v2.6.

Funciones matemáticas

editar

Las operaciones y las funciones que pueden ser aplicadas en ecuaciones QUCS son las siguientes:[3]

  • max(x,y): devuelve el valor más grande entre x e y
  • min(x,y): devuelve el menor de los valores entre x e y
  • rms(x): devuelve el valor medio cuadrático del vector x
  • sum(x): suma de valores en el vector x
  • prod(x): producto de valores en el vector x
  • diff(y,x): diferencia del vector y con respecto a x
  • diff(y,x,n): diferencia del vector y con respecto a x n-veces
  • integrate(x,h): integra el vector x numéricamente suponiendo un paso constante h
  • real(x): parte real de número complejo
  • imag(x): parte imaginaria de número complejo
  • abs(x): valor absoluto, magnitud de número complejo
  • mag(x): mismo que abs(x)
  • norm(x): norma de x
  • conj(x): complejo conjugado de x
  • phase(x): fase en grados
  • angle(x): fase en radianes
  • arg(x): mismo que angle(x)
  • deg2rad(x): convierte grados a radianes
  • rad2deg(x): convierte radianes a grados
  • dB(x): decibelio de voltaje
  • dbm(x): convierte voltaje a potencia en dB
  • dbm2w(x): convierte potencia en dBm a potencia en vatios
  • w2dbm(x): convierte potencia en vatios a potencia en dBm
  • sqr(x): cuadrado (x al cuadrado)
  • sqrt(x): raíz cuadrada
  • exp(x): función exponencial a base e
  • ln(x): logaritmo natural
  • log10(x): logaritmo decimal
  • log2(x): logaritmo binario
  • sin(x): seno
  • cos(x): coseno
  • tan(x): tangente
  • sinh(x): seno hiperbólico
  • cosh(x): coseno hiperbólico
  • tanh(x): tangente hiperbólica
  • arcsin(x): arco seno
  • arccos(x): arco coseno
  • arctan(x[,y]): arco tangente
  • arccot(x): arco cotangente
  • coth(x): cotangente hiperbólica
  • ceil(x): redondeo al entero próximo más alto
  • fix(x): trunca decimales de número real
  • floor(x): redondea al entero próximo más bajo
  • round(x): redondea al entero más cercano
  • sign(x): computa el signo de la función
  • sinc(x): devuelve sin(x)/x y uno en x=0
  • fft(x): computa la transformada rápida de fourier (FFT) del vector x
  • ifft(x): computa la transformada rápida fourier inversa (IFFT) del vector x

Véase también

editar

Referencias

editar
  1. «FreeHDL index Page». Freehdl.seul.org. Consultado el 1 de marzo de 2012. 
  2. «ASCO project :: homepage». Asco.sourceforge.net. Consultado el 1 de marzo de 2012. 
  3. «Mathematical functions for QUCS index Page» (en inglés). gnu-darwin.org. Archivado desde el original el 24 de septiembre de 2015. Consultado el 15 de abril de 2014. 

Enlaces externos

editar