LTspice: Varíe el valor de una resistencia con el tiempo

Quiero simular la regulación de carga de una fuente de alimentación. Estoy seguro de que recuerdo haber podido variar el valor de una resistencia en el transcurso de una simulación en LTspice, pero no recuerdo cómo. ¿Alguien?

Respuestas (5)

Use el componente SpecialFunctions/Varistor.asy con una fuente de voltaje variable en el tiempo

Captura de pantalla

+1 Gracias, no es como recuerdo haberlo hecho, pero debería funcionar. Todavía no marcaré esto como aprobado. Me gustaría ver si alguien tiene alguna alternativa... (aunque no parece probable...)
Hay muchas alternativas: puede usar un transistor con una característica Rds conocida y cambiar el voltaje de la puerta de 0 a saturación, o simplemente colocar una fuente de voltaje o corriente y pasar por el rango de voltaje o corriente que desea establecer. tu resistencia. El varistor, sin embargo, es la resistencia controlable que solicitó.
Claro... pero si mi memoria me sirve correctamente (que probablemente no lo haga), es posible hacerlo con una resistencia normal + algún comando de simulación, lo que sería más intuitivo y sencillo. De todas formas gracias de nuevo por las sugerencias
¡Usa la fuente, Luke! Abra la definición y el subcircuito del modelo de varistor, y descubra lo que hace: los comandos SPICE deberían estar allí en alguna parte. Este documento: ltspice.linear.com/software/scad3.pdf debería ayudarlo.
¡Punto a favor! se me ocurrio... lo que usaba antes era un barrido parametrico
Esta solución no parece establecer la resistencia, sino que establece la caída de voltaje sobre ella. No parece ser diferente a simplemente colocar una fuente de voltaje en lugar del varistor, excepto que el varistor nunca dejará caer más voltaje del que se está suministrando.
@JolonB No es cierto: establece el umbral cuando el varistor comienza a conducir, y su conducción viene dada por el parámetro Rclamp. La resistencia efectiva será Rclamp + V(+,-), por ejemplo, con el valor predeterminado Rclamp=1y un voltaje de control de 3 V, la resistencia será de 4 ohmios. Es fácil configurar una fuente de corriente con 1 A a través de un varistor, y digamos una fuente de voltaje como control con SIN(1 1 1). Simule con .TRAN 1y obtendrá un seno que varía de 1 V a 3 V (2 Vpp + Rclamp predeterminado).

Desafortunadamente, usar un varistor no funcionará, ya que el varistor en sí mismo depende del voltaje que lo atraviesa. Mucho más simple es hacer clic derecho en una resistencia existente e ingresar una fórmula. P.ej

R=11-100*time

reducirá linealmente la resistencia de 11 ohmios a 1 ohmio durante 100 ms. Puede utilizar casi todas las funciones disponibles para las fuentes de voltaje b (fuente de voltaje de comportamiento arbitrario), así como todo tipo de mediciones, por ejemplo, de voltajes de otros nodos.

No funcionará para R=0+100*time.
@ 71GA: tampoco lo hará ninguna construcción que tenga una resistencia de 0Ω ... simplemente no lo hagas entonces.
¡Ay! Así que este era el problema. ¡Gracias!

Hay otra manera. Configure una fuente de voltaje y elija la salida que desee. Etiquete la resistencia VR neta de salida. Los voltios en la fuente serán exactamente lo que es la resistencia. Es decir, 10KV será lo mismo que 10K ohm. Luego use la resistencia estándar con la asignación R=V(Vresistencia). A medida que cambia la fuente de voltaje, la resistencia cambia con ella. Lo bueno de esto es que el archivo PWL ahora se puede usar para controlar la resistencia. Especialmente agradable cuando se ejecutan cosas desde Mathematica o Matlab.

Buen Paul, eso era exactamente lo que estaba buscando. Incluso probé "R=PWL(...)" como valor.
Tuve que buscar en Google "archivo PWL" , pero ahora veo una ventaja potencial de este método al interactuar con programas externos. Por cierto, creo que bajo el capó esto también funciona como comportamiento (expresión) para la resistencia.
Esta fue mi solución favorita. Redacción completa aquí: electronicspoint.com/resources/…
Creo que hice todo esto correctamente, pero recibo el error "No se puede encontrar la definición del modelo "V". Creé una fuente de voltaje PWL y conecté tierra y un nodo "Vres". tengo una resistencia R6 a la que le asigné el valor V (Vres) como resistencia.@Frederick, ¿hay un enlace actualizado que pueda proporcionar a esa página de punto de electrónica?
@Frederick No importa, encontré la página en una URL diferente. maker.pro/forums/resources/… Mi problema era que en el campo de resistencia de la resistencia, estaba tratando de usar "V (Vres)", cuando realmente necesitas la igualdad completa como mencionó Paul "R = V (Vres) ". Este fue mi error. Gracias a todos.
@AJbotic: sí ... aunque tenga en cuenta que la Fuente de su artículo es esta convo StackExange exacta ... ¡muy circular!

Usando la sugerencia de McHale, produje un Current Dummy xLoad para probar las fuentes de alimentación y los circuitos de alimentación. Basado en una secuencia PWL, la carga absorbe corriente de la fuente de alimentación, sin importar el voltaje en la fuente.

La secuencia PWL especifica un perfil de rampa y sacudida que ejercita la alimentación, por lo que se podría analizar el comportamiento de dicha alimentación, si rebota, oscila, suena, tiempo de recuperación de tensión, etc.

El archivo xLoad .asy puede ser cualquier cosa con dos conexiones, ya que se comporta como una resistencia dinámica que cambia su valor según los valores de PWL Y el voltaje aplicado en las entradas de carga. Puede aplicar 10 V CC con una ondulación de 9 V y la carga adaptará su resistencia dinámica para que siga el perfil actual del PWL.

El xLoad tiene solo un parámetro, "mult". Este parámetro le permite al usuario cambiar la corriente máxima del perfil PWL, por lo tanto, mult=1 usará un perfil que absorberá un máximo de 1A del suministro, mult=4.2 absorberá un máximo de 4.2A. Su xload.asy debe tener un atributo visible "mult=1", por lo que xLoad funcionará y podrá cambiar el atributo en cualquier momento.

El xLoad usa un pequeño capacitor para redondear bordes muy afilados que pueden simular frecuencias y anillos muy altos, lo que no sucede en la vida real, por lo que todas las esquinas están un poco redondeadas. Si desea cambiar o eliminar esta función, simplemente cambie el valor de C1 de 10n o incluso elimine esa línea. La función es solo un filtro RC, R2 y C1, otra forma de cambiar el filtro es cambiar el valor o R2, simplemente no elimine esa línea, xLoad no funcionará sin R2, puede cambiar su valor a cero ohmios para eliminar completamente el filtro, aun así no sé por qué querrás tener esquinas afiladas MegaHertz.

Cree un nombre de archivo de texto XLOAD.SUB en su directorio LTSPICE/LIB/SUB, con el siguiente contenido (la línea "v1" es larga, no está rota):

    * xLOAD
    * PWL Current Profile
    * By Wagner Lipnharski Nov/2015
    *
    *              Positive (Input)
    *              |  Negative (Output)
    *              |  |
    .SUBCKT XLOAD  1  2

    V1 3 2 PWL(0 0 +100m 0 +0.1m 0.2 +5m 0.2 +.1m 0.5 +5m 0.5 +.1m 1 +5m 1 +.1m 1.5 +5m 1.5 +.1m 2 +5m 2 +.1m 2.5 +5m 2.5 +.1m 3 +5m 3 +.1m 3.5 +5m 3.5 +.1m 4 +10m 4 +1m 3.5 +8m 3.5 +1m 4 +10m 4 +2m 2.5 +8m 2.5 +2m 4 +10m 4 +2m 1.5 +8m 1.5 +2m 4 +3m 4 +2m 0.2 +3m 0.2 +2m 4 +10m 4 +3m 0.2 +8m 0)

    R1 1 2 R=V(1,2)*4/(mult*V(4,2)+1n)

    R2 3 4 1k

    C1 4 2 10n

    .ENDS XLOAD

La simulación .asc simple con el símbolo que hice, y los planos de la trama que muestran la corriente y el voltaje ondulado del suministro a continuación. Tenga en cuenta que, según los tiempos de PWL, xLoad comienza a ejecutarse a los 100 ms y finaliza a los 235 ms. Puede cambiar esos tiempos en los valores PWL dentro del SUB.

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Si desea recorrer los valores de los valores de resistencia (ejemplo R):

  1. Establezca el valor de la resistencia que desea que sea variable, para que sea {R}(¡no olvide los corchetes!)
  2. Haga clic en .op(extremo derecho en la barra de herramientas)
  3. Tipo: .step param R 1 10k 1k(pasos de 1 a 10K en incrementos de 1k)

Si desea barrer el valor de R en el tiempo, entonces no es posible ya que los simuladores tendrán problemas de convergencia.

Sin embargo, no creo que esto sea lo que está buscando el OP, y otras respuestas sugieren que es posible.