5 votos

Carga de un condensador con otro condensador en LTspice

Estoy tratando de simular la carga de un condensador \$C_2\$ por otro \$C_1\$ utilizando LTspice. Siguiendo las derivaciones de este video Al final, descubrí que ambos condensadores \$C_1\$ y \$C_2\$ debería terminar con un voltaje de \$ \frac{C_1*V_0}{C_1 + C_2} \$ , donde \$V_0\$ es la tensión a la que \$C_1\$ se carga inicialmente. He adjuntado las figuras que muestran mi simulación y mi resultado.

enter image description here

enter image description here

Inicialmente, \$C_1\$ y \$C_2\$ están ambos a 0 V, como se esperaba. Después de 10 ms, cuando S1 se cierra, \$C_1\$ cargos. Con una constante de tiempo de 1 ms, \$C_1\$ se carga completamente en unos 5 ms, como se esperaba. Después de 20 ms, S2 se abre de nuevo, y, como se esperaba, \$C_2\$ conserva su carga. (En este punto, \$C_2\$ ya ha empezado a cargarse ligeramente, lo que contradice mis expectativas). Después de 30 ms, cuando S2 está cerrado (mientras S1 sigue abierto), espero \$C_2\$ para cargar mientras \$C_1\$ descargas hasta que se encuentren en algún lugar en el medio. Sin embargo, veo una rápida caída de tensión en \$C_1\$ y un aumento y disminución bruscos de la tensión en \$C_2\$ .

No estoy seguro de por qué ocurre esto, pero he probado un par de modificaciones. Primero añadí una resistencia de 1 k-ohm en serie con C2. La simulación y los resultados se muestran a continuación. No estoy seguro de cómo o por qué el cierre de S2 provoca la tensión en \$C_1\$ cambiar tan rápidamente (eso también, por \$C_1\$ hasta 16 V, que está muy por encima de la tensión Vin = 5V a la que se cargó el condensador) y por qué la simulación deja de mostrar abruptamente la tensión a través de \$C_2\$ a unos 33 ms.

enter image description here enter image description here

Finalmente, decidí probar con un amplificador de buffer en lugar de una resistencia. La simulación y los resultados se muestran a continuación. Una vez más no puedo explicar por qué los voltajes a través de \$C_1\$ y \$C_2\$ se comportan de forma tan errática.

enter image description here enter image description here

¿Podría alguien explicar qué impide que el segundo condensador se cargue del primero?

¿Hay alguna forma de modificar mi simulación para que esto funcione?

Esto es en realidad una pequeña parte de un circuito mucho más grande que necesito hacer funcionar, así que cualquier ayuda sería muy apreciada.

6voto

laptop2d Puntos 331

Conseguí que el tuyo funcionara, pero tuve que cambiar algunas cosas:

Tuve que cambiar el paso de tiempo del solver, esto podría ser un problema debido a la baja cantidad de resistencia que el solver está viendo lo que crearía una corriente muy grande entre las tapas. Esto es difícil para el solver ya que crea una señal de ~200kA.

En cierto sentido, la matriz tiene un "rango dinámico" si pones señales demasiado grandes con señales pequeñas, puede tener dificultades para encontrar la solución. Si ves especias que son anormalmente altas o bajas, puede que quieras insertar parásitos en tu diseño (especialmente parásitos físicos como capacitancias y resistencias de plano a plano que del cobre que recorre un cable o una traza). Lo que has creado aquí son dos supercondensadores separados por un interruptor superconductor.

Lo primero que probé fue un paso de tiempo muy fino, que funcionó bien con una simulación diferente (que mostraré más adelante). Lo segundo que hice fue separar los modelos de los interruptores, creo que esto puede ayudar a que la matriz sea un poco más estable, en caso de que no copie el modelo.

enter image description here

enter image description here

Ahora que he escrito lo que tenía arriba, otra cosa que hice fue bajar las resistencias a 1e-7 (que es algo más físico) pero lo más importante es que va a crear corrientes y voltajes que están por debajo de los ajustes de abstol y voltol para el solver que suelen ser alrededor de 1e-12 o 1e-15. Una resistencia de 1e-15 va a golpear el límite inferior de tolerancia para el solver y no será capaz de resolver el voltaje. El cambio de la resistencia también me solucionó el problema. (nota que la corriente también bajó y la forma del pico es diferente.

enter image description here

Aquí hay una forma interesante de simular la carga de tapa a tapa si te interesa:

enter image description here

1 votos

¡buen punto en la resistencia del interruptor e-15!

1 votos

Esto sucede una y otra vez, la gente simplemente ignora el solucionador numérico subyacente que está construido en un lenguaje de programación que trabaja con una CPU que trata con flotadores IEEE. Si no me equivoco, esto se especifica incluso en el manual, para evitar el uso de más de 6 órdenes de magnitud entre valores adyacentes. O allí o en ltwiki.org, no lo encuentro ahora. Sinceramente, la gente debería hacer downvote, no upvote, pasa demasiado a menudo.

1 votos

En estas situaciones, establecer numdgt a un valor lo suficientemente alto como para forzar el uso de double en lugar de float también puede ser útil

3voto

Spehro Pefhany Puntos 90994

No sé qué es lo que falla en tu simulación, pero yo lo he probado (de forma algo diferente- con interruptores controlados por tiempo en lugar de los controlados por tensión) y ha funcionado como se esperaba a la primera.

enter image description here

Estás viendo que C2 empieza a cargarse en tu simulación porque la resistencia de apagado del interruptor es 1M, no infinita. Modelar algo tan no lineal como un interruptor puede causar problemas, sin embargo, normalmente se mostrarán como una falta de convergencia.

0 votos

Gracias, @Spehro. Para mi circuito más grande dentro del cual está incrustado esto, necesito usar interruptores controlados por voltaje. ¿Tienes alguna idea de por qué los interruptores controlados por tensión no hacen lo mismo que los controlados por tiempo?

0 votos

La resistencia de tu interruptor es demasiado baja, y el solucionador no puede resolver las corrientes que intentas hacer pasar a través de él en las escalas de tiempo que tienes

0 votos

Lo que dijo @laptop2d, el primero es difícil, sin embargo no explica el segundo que no debe tener tiempos cortos ni corrientes altas. También puedes probar con el solucionador alternativo, que quizás funcione mejor. Panel de control->Spice->Solver.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X