Convergencia de simulación de oscilador de transistores

Para el circuito de la figura (tanto en Altium Designer 16 como en Proteus 8), al usar el modelo NPN Spice estándar, me resultó muy difícil intentar que la simulación convergiera.

Probé Trapezoidal y Gear del orden 2 al 6, tratando de aumentar el parámetro GMIN, cambiando las tolerancias, el paso de tiempo mínimo, etc. No pude hacer que este oscilador funcionara con el modelo estándar NPN Spice.

Al cambiar el NPN a un modelo 2N3904, la solución convergió sin problemas en ambos softwares.

Mi pregunta es ¿por qué sucede esto?, ¿qué componentes del modelo están en el 2N3904 que no están en el modelo NPN?... Pensé que ambos modelos eran iguales (el mismo Gummel y Poon), solo cambiando los valores de los parámetros. ¿O los valores de los parámetros en el 2N3904 son más "suaves" para permitir que el oscilador funcione?

Gracias de antemano.

ingrese la descripción de la imagen aquí

Su R 1 y R 3 son demasiado pequeños para el valor predeterminado β = 100 valor. Así que aumenta sus valores. Yo lo recomiendo 2.7 k Ω , para comenzar. La simulación aún puede ser lenta/difícil porque los tiempos de almacenamiento de la NPN están configurados en cero, de forma predeterminada. Pero puede, al menos, "funcionar" un poco mejor si lo espera. Cuando cambió a un 2N3904, su β tiene mucho mejor que el valor predeterminado. Por eso funcionó. Pero si realmente quiere que funcione mejor, configure TF o TR o ambos en algún valor distinto de cero, del orden de algunas docenas de nanosegundos o algo así. Debería funcionar entonces.
El T F y T r Los valores son un gran detalle!. Ambos se establecen como cero en el norte PAG norte , y alrededor 300 pag y 230 norte en el 2 norte 3904 . Con esos valores funciona imperfectamente, pero reduciéndolo a decenas, funciona sin problemas. No fue necesario cambiar las resistencias. ¡Tan malo que no puedo marcar tu comentario como respuesta!
Por lo general, estoy desgarrado por esas cosas. Si escribo una respuesta, debe ser ampliamente informativa. Solo me interesaba ayudarte, rápido. Pero otros aquí se quejan de que si no hay una respuesta, entonces la pregunta puede eliminarse en algún momento en el futuro y no estar disponible en ese momento. No estoy seguro de todos estos argumentos. Solo trato de ayudar. Pero voy a escribir una respuesta corta para usted.
hyprfrcb Veo que aceptaste la excelente respuesta de @jonk. Pensé en agregar algunas reglas de diseño importantes para que las recuerdes. Dado que estos funcionan con pulsos hasta la saturación, hFE reduce Vce a Vce (sat), donde en su mayoría tienen una clasificación de Ic/Ib=10, lo que significa que hFE cae a 10 o aproximadamente al 10 % de su valor lineal máximo cuando está saturado. Cuando las resistencias del colector y de la base provienen del mismo suministro (5 V), elija siempre Rb/Rc=10 a 20. Por lo tanto, cambiar Rb de 100k a 10k~20k funcionará todo el tiempo, pero f aumentará con un Rb más bajo. La otra es que si intenta con más de -5V en Vbe, necesita un diodo para sujetar
Intento esta sugerencia, pero para este caso particular esto estabiliza el sistema, es decir, no hay oscilaciones.

Respuestas (1)

NPN usa un parámetro predeterminado BF=100. Su circuito muestra una resistencia de colector que es 100 veces más pequeña que su resistencia base, además debe impulsar la siguiente etapa a través de un capacitor. Estas cosas me sugieren fuertemente que su resistencia de colector tiene un valor demasiado bajo (o que su resistencia base debería ser más baja). Si no cambia el valor predeterminado de BF = 100 con el modelo NPN, entonces recomendaría aumentar los valores de la resistencia del colector o reduciendo los valores de la resistencia base. O simplemente aumentar β configurando BF=200 más o menos.

El otro aspecto es el almacenamiento de carga dentro del BJT. Los dos parámetros que me gustaría cambiar serían TF o TR o ambos. TF se calcula a partir del ancho de banda de ganancia unitaria del BJT y TR se calcula a partir de la constante de tiempo de saturación. En el modelo NPN, ambos valores se establecen en 0, lo que no es del todo realista y causará problemas en un circuito como este.

TF no es realmente constante en un BJT real, pero los modelos más simples asumen que sí lo es. (En realidad, varía con la corriente del colector). Se usa para modelar el exceso de carga almacenado en el BJT cuando su unión base-emisor está polarizada directamente y se usa para calcular la capacitancia de difusión del emisor del BJT. (Puede calcular el valor usando una fuente de alimentación, una fuente de señal pequeña y un osciloscopio). Si no tiene idea de su valor, simplemente use TF=300p. Sin embargo, con RF BJT, será más pequeño que eso.

TR es más complicado de medir y modela el exceso de carga almacenado en el BJT cuando su unión colector-base tiene polarización directa. Calcula la capacitancia de difusión del colector del BJT. Si no tiene idea de su valor, simplemente use TR=20n.


Entonces, probablemente aceptaría el modelo NPN pero configuraría las cosas de esta manera:

.model MYNPN ako:NPN NPN(TR=20n TF=300p BF=200)

O algo similar. Es posible que pueda salirse con la suya con un BF más bajo. Pero dados los valores de su resistencia, evitaría la tentación y me quedaría con un valor más alto para BF que el predeterminado.

Ya revisé la resistencia. Dejar 1k es realmente problemático, y aumentarlo también mejoró el circuito. Además, noté que debería poner la base de uno de los transistores en tierra con una resistencia alta. Supongo que es simplemente para hacer referencia a los valores. Gracias.
@hyprfrcb Espero que haya ayudado un poco. Con TR y TF en cero, Spice está atascado con algo que "parece infinitamente rápido" como dispositivo y esto puede hacer que la solución sea bastante difícil. Sin embargo, ese problema, más el problema de BF, fueron los únicos que sentí que debían ajustarse. Me alegro de que haya ayudado.
Me di cuenta de que las sondas Proteus destruyen la convergencia. Prepararé una respuesta adecuada para esto más adelante.
@hyprfrcb No sabía sobre las sondas en Proteus. ¿Cargan el circuito?
Todavía no lo sé claramente... He estado todas estas horas haciendo el mismo circuito, y algunas veces al azar fallaron en obtener buenos resultados. Una vez que tenga una idea clara expondré mis resultados.
Definitivamente el mejor resultado es establecer el T F y T r parámetros a valores distintos de cero. Agregar un menú desplegable 1   METRO mi gramo resistencia (por ejemplo, la q 1 base) reducen el transitorio antes de las oscilaciones constantes. Aumentando el R C / R B relación > 10 estabiliza el circuito y destruye las oscilaciones.
@hyprfrcb El problema general con este diseño es la necesidad de establecer V mi por encima del suelo para ayudar a minimizar la variación significativa de la corriente base durante la oscilación. La falta de un voltaje de Thevenin de punto medio para la base también funciona en contra de la reducción de la variación de corriente de la base.