¿Motivo del breve pico en la salida del amplificador operacional al cruzar 0V?

¿Alguien reconoce este pico en la salida de un amplificador operacional cuando la señal cruza 0V? Se dispara cuando se cruza hacia arriba y hacia abajo cuando se cruza hacia abajo. En uno de los videos de EEVBlog, Dave señaló algo exactamente como esto en el osciloscopio y dijo (como un aparte) que podría suceder cuando se usa una resistencia de retroalimentación de 10k o algo así. Pero no recuerdo qué video era. Esta es la salida de un TL071 (en realidad, 1/4 de un TL074). Se alimenta de la salida de otros 2 TL071 a través de resistencias de 2.2k y la retroalimentación tiene un potenciómetro de 10k.

esquemático

simular este circuito : esquema creado con CircuitLab

Pico a 0V

Actualización 10 de marzo

Como se menciona en los comentarios a continuación, el circuito consiste en un procesador ATmega328P que impulsa 8 líneas en un R2R DAC. La salida del DAC y un voltaje de polarización de CC destinado a centrar la salida del DAC en 0 V alimentan un amplificador operacional inversor TL071. La salida de este amplificador operacional es "OA2OUT" en el esquema anterior.

esquemático

simular este circuito

La salida de la red R2R tiene una impedancia de 10k, representada por R4. R1 y R2 me dan un voltaje compensado y tienen una impedancia paralela de 9.5k, que es bastante cercana a 10k. La resistencia de retroalimentación R3 también es de 10k. Así que creo que este circuito sumará e invertirá los voltajes R2R y de compensación.

Cuando compruebo la salida de la red R2R en el punto R2ROUT, no veo el pico.

Sin pico

Cuando compruebo la salida del amplificador operacional en VOUT, veo el pico.

un pico

Probé algunas otras cosas. Intenté reemplazar la resistencia de retroalimentación de 10k con una resistencia de 2.2k, solo porque estaba tirada y porque recuerdo que Dave mencionó algo sobre una resistencia de 10k en el video de EEVBlog. Eso empeoró el pico.

Un pico más grande

Luego intenté reemplazar el amplificador operacional TL074 con un amplificador operacional LM6144. He estado usando este circuito para probar varios amplificadores operacionales y tratar de entender qué los hace diferentes, así que sé que el circuito funciona (más o menos) con todos ellos. Esta vez obtuve picos en cada transición.

muchos picos

Finalmente probé un TLV2374, que es fantástico, pero todavía veo el pico. Es más pequeño pero sigue ahí.

Un último pico

Todavía estoy tratando de resolver esto. ¡Gracias a todos por su ayuda hasta ahora!

Actualización 13 de marzo

Intenté medir la salida R2R con una carga R/10 (1k) según el comentario de @WhatRoughBeast a continuación. ¡Ahora veo el pico! También parece mucho más ruidoso ... que es algo que noté antes e intenté arreglar con condensadores de 10uF en los rieles de alimentación y la tierra virtual. "Funcionó" en el sentido de que redujo el ruido, pero también introdujo la oscilación/timbre que mencioné cuando traté de instalar una pequeña tapa para suavizar la salida del DAC. Todas estas cosas obviamente están relacionadas, pero no estoy seguro de cómo.

Pico y ruido

Por cierto, probé la resistencia de 100 ohmios sugerida por @Brian Drummond anteriormente, pero la señal resultante era tan borrosa y ruidosa que no podía saber qué estaba pasando.

Entonces, ¿cuál es la comida para llevar aquí? El problema es obviamente el comportamiento de MSB que identificó @WhatRoughBeast. Esto y el ruido parecen empeorar con más corriente a través de la red R2R. Pensé, está bien, amortiguar la señal R2R a través de un amplificador operacional no inversor antes de hacer cualquier otra cosa con él, pero cuando hago eso, también veo el pico. ¿La única solución es filtrarlo y no preocuparse por él?

Tal vez el nombre del efecto que estás buscando es distorsión cruzada .
Aunque la fuente de señal es obviamente un DAC R-2R, la pregunta realmente debería mencionar esto. (NO es distorsión cruzada) Pruebe ejecutando el DAC en una resistencia de valor bajo (100R) en lugar de una entrada de tierra virtual en el opamp. Probablemente no será tan lineal, pero verás el mismo paso.
Gracias @Brian Drummond. No mencioné el R2R porque recordé el video de EEVBlog y estaba seguro de que era un problema del amplificador operacional. Tratando de mantener la pregunta enfocada, pero en este caso más información hubiera sido mejor.
Con el esquema actualizado, tenga en cuenta que su punto "R2R" es la entrada inversora del amplificador operacional y se mantendrá a un voltaje constante. Así que no deberías ver nada en ese punto. Intente conectar una resistencia R/10 a tierra.
Desconecté el amplificador operacional antes de tomar las capturas de pantalla del 10 de marzo.
@WillisBlackburn: según su última edición, no puede "simplemente" deshacerse del pico porque es una parte real de la señal que va al amplificador operacional. Brian Drummond sugirió la respuesta clásica. Ponga un muestreo y retención en la salida y un muestreo justo antes de cada paso. AS/H puede diseñarse con bastante facilidad con fallas de adquisición muy pequeñas, y estas fallas serán consistentes independientemente del valor del paso.
Otra posibilidad es agregar un par de inversores CMOS en serie entre el msb y el DAC. Esto retrasará el msb y, si tiene suerte, cancelará el sesgo que le está dando problemas. Solo tenga en cuenta que puede ser difícil encontrar inversores con las mismas características de salida que el ATmega.

Respuestas (2)

Lo que está viendo es una falta de coincidencia del tiempo de encendido/apagado del msb en comparación con los otros bits.

Imagine por un momento que este es un DAC de 8 bits, ubicado en el código 01111111. Si el siguiente código fuera 1000000, obtendría un paso de buen comportamiento. Pero lo que pasa es que internamente el msb responde un poco más rápido que los otros bits. Esto significa que la transición es en realidad 0111111 a 1111111 a 10000000. El código 11111111 solo persiste durante un tiempo muy corto, pero mientras está allí, la salida intenta ir a escala completa. Dado que el tiempo de desajuste (llamado sesgo de bit) solo dura un tiempo muy breve, solo obtiene un pulso relativamente pequeño (comúnmente llamado falla). Este efecto es bastante importante en los DAC de video, ya que el ojo es muy sensible a este tipo de cosas, y una característica importante de los DAC de video es la energía de falla total.

Lo siento, te marqué bien, pero luego lo desmarqué porque aún no puedo confirmar que este sea el caso. Necesito ver si la falla está presente en la salida DAC antes de que entre al amplificador operacional. Sin embargo, tiene sentido.
¿Podría ser que el motivo sea que el DAC es, de hecho, una red R2R de 8 bits y el MSB está físicamente más cerca de la salida? ¿Quizás el resto del circuito tiene algo de capacitancia y, por lo tanto, una parte de la señal 01111111 permanece cuando las entradas cambian a 10000000?
@WillisBlackburn: hay muchas posibilidades. El hecho de que el tamaño del paso sea más grande para el paso con la falla ciertamente indica que hay algo diferente en la unidad msb. Sin embargo, dada la base de tiempo relativamente larga que se muestra (20 usec/div), el problema de ubicación que le preocupa es poco probable. La falla parece tener un ancho de 10 a 100 nseg, y eso es demasiado para ser explicado por retrasos en la ubicación. ¿Capacidad parásita? No puedo decir sin un esquema del DAC.
@WillisBlackburn: no muestra la unidad para el DAC. Asumiendo que es una entrada paralela, intente colocar un registro de 8 bits como un 74HC374 en la entrada DAC, para que todos los bits cambien al mismo tiempo.
@WhatRoughBeast Estoy desconcertado sobre cómo llegaste a esta respuesta dado que la pregunta en realidad no menciona un DAC (por lo que puedo decir). Claramente hay un DAC como acordó OP, y la respuesta parece correcta, pero ¿tienes una bola de cristal o algo así?
@abligh La toma del alcance muestra el barrido de salida del amplificador operacional con una función de escalera, por lo que la entrada debe ser impulsada por un DAC (o un generador de funciones arbitrarias, que es solo un DAC elegante en una caja bonita). Este tipo de forma de onda se usa comúnmente cuando se prueba la linealidad y los códigos faltantes de ADC y DAC. Dado el lugar donde aparece el pico objetable en el plano del visor, esto se correlaciona con la mayor transición de acarreo de un DAC. Dado que esta es la transición en la que cambian todos los bits, a menudo hay un gran pico de corriente durante esta transición. El sesgo de bits también es posible, dependiendo de la implementación.
@abligh: no es una bola de cristal, pero WhatRoughBeast probablemente recuerda los días en que los DAC siempre iban seguidos de una etapa S&H para eliminar estos fallos, antes de que los interruptores fueran lo suficientemente rápidos como para hacer que el problema (en su mayoría) fuera lo suficientemente pequeño como para ignorarlo.
Es una unidad paralela. Los puertos D0 a D7 en un ATmega328P están conectados directamente a las entradas de la red R2R. Usé el puerto D porque es el único puerto con 8 bits que se puede configurar con una sola instrucción. (El puerto C tiene el bit 6 ocupado por el pin de reinicio y no el bit 7, mientras que los bits 6-7 del puerto B están ocupados por el cristal externo y, por supuesto, no hay puerto A). Así que estoy bastante seguro de que todos los interruptores están siendo configurados simultáneamente dentro de los límites de la capacidad de los microcontroladores. Esta tarde veré si aparece el glitch en la salida R2R.
El proyecto es de hecho un generador de funciones. Me doy cuenta de que puedo comprarlos; este es un ejercicio educativo. En última instancia, creo que la falla desaparecerá cuando introduzca un filtro para suavizar la salida. Pero otro problema que tengo es que cuando hago eso, el amplificador operacional oscila/suena, y la imagen empeora en lugar de mejorar. Probablemente otra pregunta de SE para eso, pero aún no estoy seguro de cómo enmarcarla.
@WillisBlackburn: coloque un límite pequeño, como 100 pF desde la salida hasta la entrada del amplificador operacional. No ponga un límite de salida a tierra. Tendrá que hacer un balance entre la reducción de picos y el redondeo de las esquinas.
Desafortunadamente, no veo el problema en la salida DAC, solo en la salida del amplificador operacional. Ver actualización de la pregunta. ¿Podría ser de alguna manera que sea el DAC pero solo lo veo a través del amplificador operacional?
@WillisBlackburn: pruebe mi consejo antes de decirme por qué no puede funcionar. Epílogos, sí. antes no

El problema que ve parece ser de OpAmps como lo mostraron sus experimentos. Intente poner una resistencia en serie con la entrada inversora del OpAmp (es decir, entre el nodo común R1/R2/R3/R4 y la entrada inversora. Use 10k más o menos para comenzar. Puede agregar otro a la entrada no inversora si le importa el desplazamiento en la salida.