Вы находитесь на странице: 1из 13

TEMA 4: SIMULACIÓN DE CIRCUITOS CON

LTSPICE (Comandos)

1.- INTRODUCCIÓN

En este capítulo se verá una herramienta de simulación muy potente de Spice: los
comandos.

Aunque en temas anteriores se han tocado diversos comandos, en este tema se verán
comandos que hay que introducir “a mano”, es decir, que no se introducen automáticamente
como se ha visto en temas anteriores, como caracterizar una fuente de tensión, insertar
opciones de simulación. Aunque se hayan visto comandos anteriormente, se repasará la
introducción de comandos

Además se verá como introducir ecuaciones en determinadas características de


componentes electrónicos, y así que dependan de ciertas variables (sensores).

2.- LOS COMANDOS EN LTSPICE

LTspice a pesar de ser un programa gratuito soporta grán cantidad de comandos de


Spice tanto de componentes, análisis, inclusión de librerías, Aunque en este cursillo no se van
a ver todos los comandos, en este punto se van a mencionar todos los comandos de Spice
soportados por LTspice. (NOTA: La notación XXX hace referencia a la numeración del
componente. Así RXXX puede hacer referencia a R1)

2.1.- COMANDOS DE ELEMENTOS

Componentes pasivos.

Componente Comando asociado

Resistencia RXXX N1 N2 #Valor

Bobina LXXX N1 N2 #Valor

Condensador CXXX N1 N2 #Valor

Fuentes de tensión y corriente.

Componente Comando Asociado

Fuente de tensión VXXX N+ N- [DC #Valor] [AC #mag #phase] [Transient


constante specific]

Fuente de tensión EXXX N+ N- Nc+ Nc- #Ganancia


controlada por tensión

Fuente de tensión HXXX N+ N- Nc+ Nc- #Transr


controlada por corriente

Fuente de corriente IXXX N+ N- [DC #Valor] [AC #mag #phase] [Transient


constante specific]

Fuente de corriente GXXX N+ N- Nc+ Nc- #Transc


controlada por tensión

Fuente de corriente FXXX N+ N- Nc+ Nc- #Ganancia


controlada por corriente

Componentes activos.

Componente Comando Asociado

Diodo DXXX Na Nk modelo

Transistor Bipolar QXXX Nc Nb Ne modelo

Transistor FET JXXX Nd Ng Ns modelo

Transistor MOSFET MXXX Nd Ng Ns Nb


modelo

Transistor MOSFET BXXX Nd Ng Ns modelo


3terminales

Varios

Componente Comando Asociado

Bobinas acopladas KXXX Lxxx Lyyy IndMutua

Línea de transmisión TXXX Na+ Na- Nb+ Nb- Z0

Interruptor controlado SXXX Ns+ Ns- Nc+ Nc-


por tensión

Llamada a subcircuito XXXX N1 N2 … NN


s_nombre

2.2 SEÑALES

Señal Comando Asociado

Sinusoide SIN(Voffset Vampl Freq Tdelay Phase)

Exponencial EXP(Vini Vpulsed Trise trise Tfall tfall)

Pulsos PULSE(Vmin Vmax Tdelay Trise Tfall Ton


Ttotal)

“Por tramos” PWL(T1 V1 T2 V2 … TN VN)

Frecuencia modulada (FM) SFFM(Voffset Vampl Fcarr Modind Fsig)


2.3 ANALISIS

Tipo de Análisis Comando Asociado

Punto de trabajo del .OP


circuito

Barrido de tensión continua .DC Fte1 Vstart Vstop Vinc … Fte3 Vstart Vstop Vinc

Barrido en frecuencia .AC [DEC/OCT/LIN/LIST] Npnt Fstart Fstop


(Análisis en frecuencia)

Análisis Transitorio .TRAN Tprint Tstop Tstart_to_save Tstep(max) <option>


(Análisis temporal)

Función de transferencia .TF Out Fte_in


en continua (cuadripolo)

Análisis de ruido . NOISE Out In [LIN OCT DEC LIST] Npnt Fstart Fstop

Los comandos citados en el punto 2.1 son comandos utilizados para denominar
componentes en una lista de componentes para exportarlos a un subcircuito, a un programa de
Spice de diseño de PCB, etc.

Los comandos citados en 2.2 y 2.3 son comandos generales que se generan
automáticamente en las opciones de configuración de simulación (2.2) y de configuración de
fuentes (2.3), pero que conviene mencionarlos para saber que son y que función hacen.

Los comandos que se citan a continuación NO se generan automáticamente, por tanto


los hemos de generar nosotros “a mano”.

2.4 VARIOS

Función Comando asociado

Inclusión de Archivo .INCLUDE archivo

Inclusión de Librería .LIBRARY archivo

Definición de subcircuito .SUBCKT sub_name N1, N2, …NN


...
.ENDS
Condiciones iniciales IC N1 = #V1 N2 = #V2, …

Definición de modelo .MODEL nombre (Param1 = Val1 Param2 = Val2


…)

Inclusión de un .PARAM parametro = #valor


parámetro

Inclusión de un .STEP PARAM parametro = #valor_inic #valor_fin


parámetro variable incremento

3.- VALORES FIJOS

En algunas ocasiones, en los circuitos que se diseñan, determinados componentes


tienen el mismo valor (misma resistencia, capacidad o inductancia) y si es necesario realizar
algún ajuste de valor, dichos componentes deben variar a la vez.

Entonces al asignar un valor a un componente, en vez de asignar dicho valor, se


asigna entre corchetes la variable. En los componentes que se quiera tener el mismo valor, se
asigna la misma variable y así tenemos el mismo valor. Dicha variable se declara con el
comando.

.param parametro = #valor

Se verá esto con un ejemplo.

4.- VALORES VARIABLES, FÓRMULAS Y ECUACIONES

Hasta ahora en las simulaciones de LTspice siempre se han utilizado valores fijos en
los componentes pasivos como resistencias, bobinas y condensadores. Pero en determinados
casos es necesario analizar el comportamiento del circuito ante cambios de resistencia,
inductancia o capacidad, por ejemplo en el caso de utilizar potenciómetros, condensadores y
bobinas variables, sensores de resistencia, inductancia (acoplamiento) y capacidad variable,
etc. En este cursillo se van a analizar circuitos ante variaciones de resistencia.

4.1.- POTENCIÓMETROS Y SENSORES POTENCIOMÉTRICOS

Sabiendo el funcionamiento del potenciómetro, la resistencia es variable entre el


terminal central y cualquiera de los extremos. Además sabemos que entre el terminal central y
un extremo la resistencia es variable, y entre el central y el otro extremo la resistencia es la
nominal del potenciómetro menos la resistencia antes citada. Por lo tanto, entre un extremo y el
otro, la resistencia es fija y del valor nominal del potenciómetro.

Para denominar un potenciómetro en LTspice se puede poner una resistencia de valor


R (entre corchetes) y dicho valor hacerlo variable con el comando.

.step param variable #comienzo #fin #incremento

Donde “variable” es el nombre del parámetro que se pretende variar (en este caso R),
“comienzo” es el valor de inicio, “fin” es el valor final, y “inc” es el incremento

También se puede poner una variable a que varía entre 0 y 1 y multiplicarlo por la R,
dejando R fijo, es decir

a*R

También se pueden poner dos resistencias en serie, una que varíe de forma directa
con el parámetro variable y la otra de forma invertida.

a*R y (1-a)*R
En estos dos casos, el parámetro variable es a y no R, por tanto en el comando citado
antes, se pondrá como variable la a

Para dejar más claro este apartado, se pondrán ejemplos de utilización del
potenciómetro como resistencia variable convencional, como sensor de medida de distancias y
ángulos.

4.2.- RESISTENCIAS VARIABLES CON LA TEMPERATURA: NTC Y RTD

Hay varios tipos de resistencias variables con la temperatura, aquí solo se van a ver
dos tipos: Las denominadas NTC (Negative Temperature Coefficient. Coeficiente negativo de
temperatura) y las RTD (Resistance Temperature Dependent. Resistencia Dependiente con la
temperatura).

Las resistencias variables con la temperatura pueden tener una característica lineal o
no lineal con la temperatura. Se ha escogido la RTD por tener una característica lineal con la
temperatura y la NTC por tener una característica no lineal.

La característica de la RTD es:

Donde:

- R0 es la resistencia a 0ºC

- a es el coeficiente de temperatura

- T es la temperatura

La característica de la NTC es:

Donde:

- R0 es la resistencia a latemperatura T0

- B es el coeficiente no lineal de temperatura

- T0 es la temperatura de referencia (en Kelvin)

- T es la temperatura (En Kelvin)

Para pasar de Kelvin a grados centígrados, restar 273 a los Kelvin.

Estas dos expresiones antes citadas se pueden implementar de forma sencilla en


LTspice y hacer depender de la temperatura la resistencia en cuestión:

- Se le asigna primero a la resistencia que va a depender de la temperatura,


una variable, por ejemplo {R}, como aparece, con corchetes.

- Para asignar una ecuación de dependencia a la variable dependiente R, se


hace con el comando antes descrito, con .param variable = ecuación.
- Para declarar la variable independiente T (temperatura) y asignarle un
rango de valores, lo hacemos con .step param variable #comienzo #fin
#incremento.

Por ejemplo, para modelar una PT100, que es una RTD que ofrece 100W de
resistencia a 0ºC, con una resistencia, vamos a escribir el valor {R} en el recuadro de diálogo
de valor de la resistencia. A continuación se escribe con comandos la ecuación de
dependencia de temperatura

.param R = 100*(1+a*T)

Y la variable independiente

.step param T -10 40 1

5.- EJEMPLOS

En este tema se van a ver varios ejemplos de utilización de comandos: Primero se va a


modelar un potenciómetro, después un sensor potenciométrico y un sensor de temperatura
basado en RTD.

5.1.- POTENCIÓMETRO

En el circuito de la figura 4.1 se va a simular el funcionamiento de un circuito basado en


un potenciómetro.

figura 4.1: Circuito basado en potenciómetro.

Para montar el circuito, hacemos lo siguiente:

- El potenciómetro son dos resistencias en serie, para coger las resistencias


pulsamos resistor (figura 2.2).

- Para coger la fuente, click en component à voltage, ponemos una fuente

- Cableamos haciendo click en wire.

- Una vez montado se asignan valores


o En la fuente de tensión, hacemos click en botón derecho y nos
aparece el cuadro de diálogo y click en “Advanced” y en “DC value
se pone 1 (1 voltio)

o En una resistencia, hacemos click con botón derecho y nos


aparece el cuadro de diálogo y en el recuadro de abajo apuntamos
la fórmula entre corchetes {1000*a}, porque el potenciómetro que
se quiere modelar es de 1000W y el cursor (del potenciómetro)que
varía de 0 a 1 es a , esta es la resistencia que se ve desde el
cursor a un extremo.

o En la otra resistencia, hacemos lo mismo, pero en el recuadro de


abajo apuntamos la fórmula entre corchetes {1000*(1-a)}, porque
el potenciómetro que se quiere modelar es de 1000W y el cursor
(del potenciómetro)que varía de 0 a 1 es a, esta resistencia es la
que se ve desde el cursor al otro extremo.

- Si se desea, se pueden nombrar los nodos más significativos del circuito,


haciendo click en Label Net dando en nombre y situándolo donde se
desee,click con botón derecho para parar de poner etiquetas.

- Que no se olvide el punto de masa, haciendo click en Ground (figura 2.5) y


situando el punto de masa en el lugar deseado.

- El parámetro a del potenciómetro antes mencionado hay que declararlo


con un comando para que varíe desde un valor a otro con un incremento.
Para ello se hace click en SPICE directive y en el cuadro de diálogo se
introduce el comando .step param a 0.01 0.99 0.01. indicando que
queremos hacer variar a desde el valor 0.01 hasta 0.99 en pasos de 0.01

o Se hace desde 0.01 a 0.99 y no de 0 a 1 porque las resistencias en


LTspice no pueden tomar valor cero

Para simular se hace click en run (figura 2.16) y nos aparece el cuadro de diálogo de
simulación. Escogemos “DC OP PNT” y click en OK. Empieza la simulación y aparee un
diagrama de onda en blanco.

Una vez acabada la simulación, en el circuito situamos el puntero de ratón encima de la


salida (Vo en figura 4.1), nos aparece la punta de prueba, hacemos click y nos aparece la
relación entre la tensión de Vo y la variable a del potenciómetro. En la figura 4.2 se muestra el
resultado.
Figura 4.2: Relación entre la tensión de salida Vo y la variable a del potenciómetro

Una vez ya tenemos la gráfica que relaciona la tensión con la posición del cursor,
efectuamos las siguientes medidas: Tensión de salida cuando el potenciómetro está al 85% del
desplazamiento máximo, y pendiente en Voltios por unidad de desplazamiento.

- Primero se va a medir la pendiente en voltios por desplazamiento: Para ello


se hace click con botón derecho del ratón en el nombre de la gráfica v(v0)
y se selecciona “1st & 2nd” y “OK”.

- Se sitúa el cursor 1 en una posición distinta a la del 2 (figura 4.3 a), y en el


recuadro marcado como “slope” (pendiente), se indica la pendiente en
voltios/unidad de desplazamiento (figura 4.3 b), que es de 1V/UD

- Para medir la tensión al 85% del desplazamiento, se hace click con botón
derecho del ratón en el nombre de la gráfica v(v0) y se selecciona “1st” y
“OK”

- Se sitúa el cursor 1 en la gráfica donde marque 850m en el recuadro de la


figura 4.4, y se puede ver que la tensión es 850 mV.

a)
b)

Figura 4.3: A) Relación entre la tensión de salida y la posición del potenciómetro en %

Figura 4.4: Cursor 1 en la posición del 85% (850m) marcando la tensión de salida

5.2.- SENSOR POTENCIOMETRICO (PIE DE REY ELECTRÓNICO)

Como en un potenciómetro la resistencia varía en función de la posición del cursor,


dicha posición puede estar asociada a un pié de rey, y de esta forma efectuar medidas de
precisión.

En la figura 4.5 se muestra un circuito que convierte la posición del potenciómetro (que
es la medida) a tensión y luego la amplifica (NOTA: este circuito está simplificado para
comprender el funcionamiento a nivel didáctico de cómo puede funcionar un pié de rey).

Figura 4.5: Circuito didáctico del pié de rey electrónico


Una vez se haya montado el circuito, se instancia el OP AMP, y se dan valores a los
componentes del circuito:

- El potenciómetro será de 1K, y tendrá un recorrido de 200 mm (0.2m), por


tanto, para modelar el potenciómetro, en la resistencia R1 se hace click en
botón derecho y en el recuadro de valor se pone {1000*5*x} . En la
resistencia R2 se hace lo mismo, pero en el recuadro de valor se pone
{1000*(1-5*x)}. Obsérvese que la variable “x” está multiplicada por 5, para
que a 0.2 metros de el desplazamiento unitario (100%).

- El parámetro “x” variará de 0 a 0.2m en pasos de 1mm (no se escogió un


paso menor porque la simulación se alarga mucho), para ello creamos una
directiva de SPICE que sería .step param x 0.001 0.199 0.001 , no se
puede hacer de 0 a 0.2m por lo dicho antes, LTspice no admite
resistencias de valor cero

- La tensión de alimentación del potenciómetro será de 1V, para que circule


1mA, y la corriente por la patilla no inversora sea despreciable respecto a
la del potenciómetro.

- La ganancia del amplificador será de 10, para que la salida varíe de 0 a


10V de 0 a 0.2 metros de medida. Se ha escogido el OP AMP LT1498
porque admite alimentación sencilla (no simétrica) y la amplitud de la señal
puede ir desde cero a la alimentación (Rail to rail).

Una vez montado y dados los valores a los componentes, se procede a la simulación:
Pulsamos el botón run, y nos aparece el cuadro de dialogo de simulación, se selecciona DC
OP PNT, ya que se va a analizar el punto de operación de continua para cada valor de “x”.
Pulsamos OK y empieza la simulación, cuando acabe, en el circuito hacemos click en la
tensión de salida Vo, y nos sale la relación de la tensión de salida “Vo” con la distancia”x”.

También es posible mostrar la pendiente de la tensión respecto a la distancia, que no


es más que la derivada de la tensión con respecto a la distancia: Se hace click en el diagrama
de onda de la simulación y hacemos click en “Add Plot Pane” y aparece un segundo diagrama,
click con botón derecho en ese diagrama y se hace click en “add trace”. En el cuadro de
diálogo nos aparecen todas las variables del circuito, y en el recuadro de abajo se pone.

d(V(vo))/d(x)

Esto simboliza la derivada de Vo respecto de x. La relación entre la tensión Vo y la


distancia “x”, y la derivada de Vo respecto de la distancia se muestran en la figura 4.6.
Figura 4.6: Pendiente o derivada de la tensión respecto de la distancia (arriba) y relación entre
la tensión de salida y la distancia (abajo).

Como se puede ver en la figura 4.6 arriba, la derivada no es constante, es decir, tiene
una ligera variación, cuando lo que se espera es que sea totalmente constante, ya que la
variación de la tensión en el potenciómetro es completamente lineal con la distancia.

Esta variación de la derivada (pendiente) es debida a la no-linealidad del OP AMP, e


introduce errores en la medida de la distancia.

5.3.- SENSOR DE TEMPERATURA LINEAL (RTD)

En este ejemplo se va a analizar un sensor de temperatura lineal: La PT100, que es un


sensor resistivo con un coeficiente positivo de temperatura y que a 0ºC ofrece 100W, y su
coeficiente de temperatura es 0.00385 ºC-1, como se ha visto antes, la ecuación que relaciona
la resistencia con la temperatura en una PT100 es:

Donde:

- R0 es la resistencia a 0ºC

- a es el coeficiente de temperatura

- T es la temperatura

El circuito que se va a simular es el de la figura 4.7.


Figura 4.7: Circuito de medida de la temperatura.

Como se puede ver en el circuito de la figura 4.7, el circuito se divide en 2 partes:

- La primera (1) convierte una corriente constante de 1mA a tensión con la


resistencia PT100, de esta forma, una variación de temperatura, que
provoca una variación de resistencia, a corriente constante, provoca una
variación de tensión.

- La segunda (2) es la parte de amplificación y acondicionamiento: Esta


parte consta de un amplificador de instrumentación hecho a partir de 3 OP
AMPS TL081.

Como a 0ºC la PT100 ofrece 100W, con 1mA de corriente la Vin es de 100mV, si
queremos que a la salida Vo hayan 0V, hay que poner 100mV de tensión de referencia. Si
además queremos que en Vo haya una sensibilidad de 100mV/ºC, sabiendo que en Vin
tenemos 385µV/ºC (1e-3 * 100 * 3.85e-3), la ganancia del amplificador de instrumentación debe
de ser de 259.75. La resistencia Rg debe ser de 385W. Las resistencias R1 a R4 tienen un
valor fijo de 50K.

Los valores de las resistencias (La pt100 y las del amplificador de instrumentación) se
asignan con comandos: En el cuadro de diálogo que nos aparece al hacer click con botón
derecho en cada resistencia, en el recuadro de valor se escribe entre corchetes el nombre de la
variable. Con el comando .param se asigna a un valor constante o a una fórmula en caso de
que sea variable dependiente. La variable de la que dependa el valor de la resistencia (como la
PT100), que es la temperatura, se hace variar con el comando .step param.

Los valores de las fuentes se pueden asignar directamente, haciendo click con botón
derecho, en el cuadro de diálogo click en advanced. En la ventana que aparece se pone 15V
para las tensiones de alimentación V1 y V2, y 0.1V para V3 que es la tensión de referencia.

Para instanciar el OP AMP, click con botón derecho en el nombre “opamp2” y se pone
el nombre correspondiente “TL081/301/TI” y se instancia la librería “tex_inst.lib” con el
comando .include tex_inst.lib.
Una vez montado y dados los valores a los componentes, se procede a la simulación:
Pulsamos el botón run, y nos aparece el cuadro de dialogo de simulación, se selecciona DC
OP PNT, ya que se va a analizar el punto de operación de continua para cada valor de “T”.
Pulsamos OK y empieza la simulación, cuando acabe, en el circuito hacemos click en la
tensión de salida Vo, y nos sale la relación de la tensión de salida “Vo” con la temperatura ”T”.

También es posible mostrar la sensibilidad o pendiente de la tensión respecto a la


temperatura, que no es más que la derivada de la tensión con respecto a la temperatura: Se
hace click en el diagrama de onda de la simulación y hacemos click en “Add Plot Pane” y
aparece un segundo diagrama, click con botón derecho en ese diagrama y se hace click en
“add trace”. En el cuadro de diálogo nos aparecen todas las variables del circuito, y en el
recuadro de abajo se pone la expresión.

d(V(vo))/d(T)

Esto simboliza la derivada de Vo respecto de T. La relación entre la tensión Vo y la


temperatura “T”, y la derivada de Vo respecto de la temperatura se muestran en la figura 4.8.

figura 4.8: Relación de la tensión con la temperatura (abajo). Derivada o pendiente de la


tensión respecto a la temperatura.

Como se puede ver en la figura 4.8, la relación entre la tensión y la temperatura es


absolutamente lineal, porque la derivada o sensibilidad de la tensión respecto a la temperatura
es constante y de valor 100mV/ºC.

Вам также может понравиться