¿Cómo estabilizo la oscilación del amplificador opamp?

Diseñé el siguiente circuito amplificador para amplificar una señal DAC (perdón por el símbolo opamp no estándar):

ingrese la descripción de la imagen aquí

Es un amplificador de potencia que amplifica la señal DAC de un microcontrolador de 0-5 V CC y muy baja corriente, a 0-22 V CC, con un consumo de corriente de hasta 2,5 A. Eso sería una ganancia de aproximadamente 4.4. El voltaje de entrada solo cambia varias docenas de veces por segundo. Digamos 100 Hz para estar seguros. Pero necesita operar en una amplia gama de cargas (fluctuantes). La carga puede ser de 5 ohmios a 5 megaohmios, por ejemplo.

Simula muy bien con el componente PMOS predeterminado, que supongo que es un FET ideal. Pero cuando agrego todos los componentes "reales", aparece una oscilación. ¿Cómo podría estabilizar esto? ¿Qué tan precisa es una simulación en tales cosas en comparación con un circuito real?

¿Hay algo más que parezca que podría ser un problema en este circuito, por ejemplo, elección de piezas, voltajes, etc.?

Descarga esquemática de LTspice v4.22s: ingrese la descripción del enlace aquí

EDITAR:

Hice algunos cambios basados ​​principalmente en prueba y error, pero educado por las respuestas a continuación. Logré eliminar la oscilación con bastante rapidez, pero no tengo idea de por qué agregar un capacitor en cada una de estas ubicaciones resolvió el problema. Los necesitaba a ambos, y necesitaba ajustar un poco sus valores.

Oscilación muy reducida usando una combinación de ideas

Esto es para una fuente de alimentación, por lo que el nuevo pico de voltaje al principio es bastante desastroso. Aquí hay un primer plano ahora con una resistencia agregada en serie con C1 para evitar que oscile:

Primer plano de un pico de tensión

Añade las características de tu amplificador (ganancia, ancho de banda...).
Agregado arriba, justo debajo de la captura de pantalla de LTspice.
No estoy seguro de cómo hacer que la captura de pantalla se pueda acercar, pero puedo ver el tamaño completo si hago clic con el botón derecho y voy a "abrir imagen en una pestaña nueva" en Chrome.
Agregue el archivo de especias, nos ayudará a simular y verificar la salida
R4 parece no productivo (eliminarlo) -> Hace que aparezcan 10 x (OpAmp_out - Vbe_Q1) en la puerta MOSFET. Eso está bien si está usando eso como su medio principal para obtener algo así como 10 x Vin en la salida y la salida es un amplificador de corriente, como fue el caso en su pregunta y circuito anteriores, PERO ahora está usando retroalimentación de voltaje " adecuada " a través de R3 / R2 y los dos métodos están luchando Y el MOSFET no es un amplificador de corriente per se, por lo que los dos están luchando. | Así que elimine / acorte R2. Más tarde, es posible que desee una resistencia en Q1c y una abrazadera zener en la puerta PFET, pero probablemente esté bien sin ella por ahora.
No estoy teniendo suerte con la eliminación de R4. La salida ahora solo rebota entre Vcc (23.5V) y el voltaje amplificado. Intenté agregar una resistencia. Pero no estoy seguro de cómo agregar un zener, o si eso resolvería el problema.
Un lugar conveniente para reducir la ganancia a altas frecuencias sería un capacitor a través de R5. 1000pF daría una constante de tiempo de 2.2uS, buena para 70kHz. No mencionas la frecuencia de oscilación, pero si es mucho más alta que eso, comenzaría aquí.
gracias brian Vea arriba para saber dónde coloqué los condensadores. ¿Es esta una colocación estúpida? Además, la oscilación comienza alrededor de 10Khz y aumenta hasta un máximo de 30Khz. Después de eso hay muchos matices y ruido. Puede ver la FFT en un comentario a continuación.
La compuerta MOSFET DEBE estar acoplada en CC a Q1. Un condensador allí también puede estar en orden (probablemente desde la puerta FET a tierra), pero sin una ruta de CC, sucederán algunas cosas muy extrañas y desagradables.
El condensador en la salida opamp (o la serie Zoebel RC en el mismo punto) es algo así como deslizar el embrague en un automóvil manual mientras espera una luz verde: la salida del amplificador se alimenta directamente a un circuito diseñado para disipar algo de su energía. En el mundo real, puede funcionar porque el amplificador operacional tiene una capacidad de transmisión finita, pero no es lo ideal. Los condensadores que ajustan el cambio de fase generalmente estarán en puntos de impedancia distinta de cero, por lo que forman un divisor de impedancia selectivo de frecuencia con otros componentes.

Respuestas (2)

Un OP-AMP básico es "casi inestable" en muchas circunstancias (incluso en circuitos muy simples). Hay un parámetro llamado margen de fase y esto informa al lector que en la ganancia unitaria, la entrada inversora está significativamente cerca de ser no inversora: el margen de fase le indica qué tan cerca se ha convertido la entrada inversora en una entrada no inversora.

Por ejemplo, un amplificador operacional típico podría tener un margen de fase de 40 grados. Esto significa que en lugar de que la entrada inversora produzca un cambio de 180 grados (es decir, una verdadera inversión), es más como 40 grados.

Esto, por supuesto, será a una frecuencia alta donde la característica del amplificador operacional se ha reducido a una ganancia unitaria, es decir, muy por encima de donde consideraría usarlo normalmente. Pero todavía está allí en cualquier circuito de amplificador operacional que pueda diseñar.

Si agrega amplificación de transistor (digamos 20dB) después de la salida del amplificador operacional (y antes de la retroalimentación), ahora tendrá un margen de fase de 40 grados con una ganancia de 20dB y, si determinó cuál es el margen de fase en un frecuencia más alta (una en la que los 20dB adicionales se erosionan a cero dB) es casi seguro que encontrará que el margen de fase pasa por cero grados y, por lo tanto, ¡ha creado un oscilador!

Aquí hay una pregunta/respuesta similar

EDITAR: agregué una imagen de la ganancia de bucle abierto y la fase de un amplificador operacional de velocidad media para considerar: -

ingrese la descripción de la imagen aquí

Este gráfico es la operación básica del amplificador operacional en cuestión (AD8605) y es independiente de cómo aplique la retroalimentación y cuánto aplique. El único punto es que la línea roja (ganancia) aumentará tal vez 10 dB cuando coloque transistores dentro del circuito de retroalimentación.

Con la línea roja aumentando en 10dB, el punto de cruce de la ganancia unitaria es de alrededor de 30MHz, ¿cuál es el nuevo margen de fase? Probablemente sea de unos -40 grados, es decir, mucho más allá del punto de estabilidad. Mire el gráfico: con suficiente ganancia agregada dentro del circuito de retroalimentación, este dispositivo (AD8605) oscilará a aproximadamente 25 MHz.

Reducir las ganancias en sus circuitos de transistores es mi consejo.

Hmm, esto parece un muy buen consejo. Leyendo el enlace que enviaste, creo que lo entiendo en gran medida. Sin embargo, lo que no entiendo es lo que llaman "frecuencia". ¿No está mi frecuencia siempre por debajo de 100 Hz, en ese caso, todo el problema no es un problema? Si no, ¿cómo puedo calcular la frecuencia?
Su frecuencia de operación deseada puede ser bastante pequeña y un amplificador operacional puede manejarla fácilmente, pero el amplificador operacional no respeta ni conoce los objetivos de su circuito; simplemente hace lo que mejor sabe hacer. No entiende que ha agregado transistores a su salida y no sabe que no está destinado a ser un oscilador.
¿Cómo puedo disminuir la ganancia de los transistores? No entiendo exactamente cómo estoy controlando su ganancia en absoluto. Si este gráfico significa algo, los transistores están agregando mucho más de 10dB: i.imgur.com/hvfqtOD.png
Usaría una resistencia de emisor en Q1; esto reducirá drásticamente la ganancia de Q1. ¿Por qué diablos tiene ese capacitor en serie con la puerta? Esto evitará que el circuito funcione correctamente porque no hay control de CC en el circuito.
Simplemente porque después de horas de probar cosas diferentes, es lo que funcionó. En el simulador, al menos agregar un capacitor en el emisor de Q1 realmente no tiene ningún efecto. De hecho, Russell me dijo que lo eliminara por completo (está en el esquema original de arriba)
De acuerdo, después de ver esta conferencia youtube.com/watch?v=YQMP-FLHvwk , me fascinó cómo se ajusta la capacitancia interna del opamp para su ganancia particular y su polo dominante. Hizo un comentario aleatorio de que la capacitancia podría ajustarse externamente a través de la entrada y salida del bucle de retroalimentación para ajustar ese polo y compensar la inestabilidad. Me llamó la atención que lo conseguí al azar trabajando antes. Así que ahora combiné esta técnica y volví a agregar una resistencia para reducir la ganancia del transistor BJT. ¡La oscilación opamp se establece! i.imgur.com/cVMWS7L.png
@Ryan Me complace que se haya calmado. El diablo está en los detalles con los amplificadores operacionales. Todos los amplificadores operacionales prácticos son bastante malos hasta que aplica retroalimentación negativa PERO hay consideraciones y el margen de fase es bastante importante si está insertando "cosas" en el ciclo de retroalimentación. También puede encontrar que agregar la tapa directamente en el amplificador operacional puede empeorar estos problemas. Intente eliminarlo o bajarlo y aplicar una entrada de demanda de paso; vea cómo la salida puede "sonar" antes de establecerse. Los chips reguladores intentan evitar este tipo de cosas porque la salida puede "sonar" y destruir los chips.
@Ryan, simulé su circuito, y creo que puede reducir el capacitor de retroalimentación a 100nF o incluso un poco más pequeño (en caso de que quiera hacerlo). Por cierto, con este capacitor, ha convertido el amplificador en un integrador con una constante de tiempo bastante grande. No me quedó claro desde el principio que su señal es tan baja como 4Hz solamente. En términos de teoría de control, realizó una gran compensación de retraso, lo que hace que todo el sistema sea bastante lento; sin embargo, si funciona solo a 4..5 Hz ... no hay problema.
¿Qué pasa si la entrada fue de 100Hz? Esa es mi frecuencia máxima de entrada.
@Ryan, el capacitor de retroalimentación a través del amplificador operacional tendrá una carga de 100 Hz si es demasiado alto, por lo que recomendaría usar la resistencia del emisor para reducir la ganancia y ver qué tan grande puede obtener esto antes de que se comprometa la operación funcional. Luego, probaría con una pequeña tapa en la resistencia de retroalimentación de 75k para ver qué efecto tiene. Esté preparado para descartar las ideas que no funcionan y vuelva a intentarlo con ideas diferentes en su lugar.

El dispositivo LM358 tiene compensación de ganancia unitaria. Eso significa: este amplificador operacional es estable hasta la ganancia unitaria con un margen de estabilidad que será "aceptable". La ganancia unitaria es idéntica a la ganancia de bucle = ganancia de bucle abierto del oamp (debido al 100% de retroalimentación). Sin embargo, en su caso, la ganancia de bucle es incluso mayor que la ganancia de bucle abierto del opamp (factor de retroalimentación con ganancia). Además, ambos transistores agregan cambio de fase al bucle, lo cual es muy crítico. Por lo tanto, no sorprende que el circuito oscile.

Puede estabilizar el circuito conectando una combinación de serie RC ENTRE ambos terminales de entrada del opamp. Los valores de los valores correspondientes dependen de la respuesta de frecuencia real de su circuito (ganancia de bucle). Por lo tanto, ¿puede mostrar la simulación de la respuesta de ganancia del bucle?

Claro, aquí hay una versión ampliada i.imgur.com/VyCq6zs.png
Entonces alrededor de 30Khz? Aquí hay una FFT, también hay algunos armónicos que suben aproximadamente 30Khz en cada banda i.imgur.com/CMRDxDo.png
¿Estoy tratando de implementar un filtro como un filtro de paso bajo Sallen-Key para eliminar los componentes de alta frecuencia? Cuando trato de agregar filtrado como usted dice, simplemente cambia dónde y con qué frecuencia ocurren esas frecuencias de oscilación, pero no parecen disminuir.
No, el filtrado no ayuda en absoluto. Debe inhibir las oscilaciones desde el principio (compensación de ganancia de bucle).
@ryan, he pedido la respuesta LOOP GAIN (simulación de CA); esto es necesario para determinar los elementos de compensación. La forma de onda de salida no ayuda demasiado.
Lo siento, no estoy seguro de qué es eso o cómo puedo producirlo. ¿Algun consejo?
Realice una simulación de CA. Para este propósito, coloque una fuente de voltaje de CA (1V) ENTRE la salida del opamp y la base de Q1. Luego, muestre la relación de voltaje salida/base (en dB). Para esta simulación, configure la entrada de señal (V2) a cero. Esto da la ganancia del bucle, que probará por qué oscila el circuito.
¿A qué frecuencia debo configurar el generador de voltaje de CA (sinusoidal)?
Lo configuré en 4 Hz, que era lo mismo que estaba usando antes para la entrada, y obtuve esto en la salida: i.imgur.com/8X5BUs5.png
Ryan, un análisis de CA es un análisis de pequeña señal en el dominio de la FRECUENCIA. Aquí, la frecuencia se sintoniza desde frecuencias bajas (1 Hz aproximadamente) hasta frecuencias muy altas (100 MHz). Usar registro. afinación y 100 puntos/década. ¡Intente familiarizarse con las opciones del simulador!
¡Oh! Bueno. ¿Como esto? (mi configuración se muestra en la parte inferior izquierda) i.imgur.com/7zqzGbv.png ¿qué significa? ¿Por qué hay dos líneas, continua y discontinua?
Sí, eso es un análisis de CA. ¿Configuró la fuente de entrada normal a cero? Muestra la RELACIÓN de voltaje (como se mencionó anteriormente). La magnitud resultante debe mostrar una característica decreciente comenzando con valores de ganancia altos. Importante es la FASE en esa frecuencia donde la magnitud cruza cero dB.
Sí, V2 está configurado en 0V. Pero, ¿cómo configuro RATIO?
Solo que ahora he visto que ha agregado una resistencia y un capacitor en la ruta de retroalimentación. Esa NO fue mi recomendación (he dicho: entre ambas entradas opamp). Sin embargo, esto también estabiliza el circuito al reducir drásticamente la ganancia, pero ¿qué pasa con la función principal deseada del circuito?
Pero, ¿cómo configuro RATIO? Nombre los nodos A y B y visualice dB(V(A)/V(B)).
Intenté poner RC entre las entradas opamp, pero no obtuve un resultado muy útil con eso. Por alguna razón, la ganancia permanece exactamente igual después de agregar esas cosas. Aquí está el gráfico de proporción. Sería interesante ver cómo calcular valores exactos a partir de él: i.imgur.com/mPAnewK.png
Ups, olvidé hacer la transformación de dB. Aquí está como lo describiste: i.imgur.com/CfxYBbW.png
Ok, entonces seguí este tutorial, y es un poco diferente a lo que explicaste: usan un bucle abierto y ponen el voltaje en la salida inversora youtube.com/watch?v=YYWlPFBebfc me dio este resultado: i.imgur. com/LNOG6Vm.png Margen de fase de -125 grados
Lo extraño es que traté de mantener la fase consistente con la ganancia agregando varios límites como en el video, y mi curva terminó en lo que pensé que era genial: i.imgur.com/xvebm3s.png sin embargo, la oscilación sigue siendo terribad: i.imgur.com/kbNQN9X.png Supongo que realmente no sé lo que estoy haciendo, o si este es realmente el método para resolver el problema con menos prueba y error... Supongo que tienes para ver ese video de 7 minutos para entender lo que estoy tratando de hacer.
¿Quizás el ángulo de fase debe ser lo más horizontal (invariable) posible, porque en su circuito opamp de trabajo original es bastante plano por un tiempo y luego se cae? EDITAR: Hmm, nop. Todo esto parece no tener nada que ver con deshacerse de la oscilación. No puedo ver una correlación entre las curvas que tienen la oscilación amortiguada rápidamente y cualquier forma particular en la que hago las curvas de ganancia/fase.
Ok, después de mucho piratear y comparar con otros videos de cómo debería verse esto, creo que esto es lo que estás buscando @LvW i.imgur.com/AyVu8Xa.png
Lo siento, estuve ausente por algunas horas. Sí, el gráfico muestra que la ganancia está por encima de 0 dB si la fase alcanza los 180 grados. Esto indica inestabilidad (criterio de Nyquist). Debe ser su objetivo que la ganancia del bucle ya esté por debajo de 0 dB para un cambio de fase de 180 grados.
Lo siento de nuevo, estuve ocupado durante algunas horas. Pregunta: ¿Qué muestra su respuesta de fase? No se ve bien (debería comenzar a -180 grados).
No puedo entender por qué comienza en 0 grados. Pero el circuito oscilante original sin tapas añadidas ya tiene una ganancia inferior a 0dB cuando la fase llega a -180.
Podría haberlo descubierto ... es la diferencia entre colocar la fuente .AC en el pin Vout del opamp frente al - pin del opamp. En la entrada de inversión: i.imgur.com/hvfqtOD.png
La respuesta parece correcta; sin embargo, muestra una situación MUY crítica, causada por la ganancia adicional de las etapas del transistor. ¿No puedes reducir la ganancia? Debe ser su objetivo tener una ganancia inferior a 0 dB si la fase es de 0 grados. (¡¡Actualmente tienes 70 dB!!). Pruebe las mismas simulaciones con un circuito RC en la ruta de retroalimentación (como ha mostrado en uno de sus circuitos) o como lo recomendé (RC directamente a través de ambas entradas opamp).
Simplemente no puedo hacer que funcione con RC en las dos entradas. Si lo prueba usted mismo en el archivo que cargué en la publicación, verá que simplemente está retrasando el tiempo que tarda en comenzar la oscilación. La oscilación luego se repite para siempre. Sin embargo, en respuesta a Andy Aka, puedes ver una nueva variación que hice allí. Veré si puedo hacer que un circuito RC funcione en el circuito de retroalimentación ahora.
No, ya no puedo hacer que eso funcione con la ganancia más baja de Q1. La mayoría de los valores para el condensador parecen empeorar la oscilación. O hacen la oscilación de V a 0V en lugar de V a Vcc.
Por cierto, ¿el MOS no requiere un voltaje GS positivo? ¿Deberíamos cambiar al chat?
Olvida mi último comentario.