Distorsión extraña del filtro de paso bajo activo de segundo orden

Estoy alimentando una señal de audio PWM de 250 KHz desde un ATtiny85 a un filtro de paso bajo activo de segundo orden:

ingrese la descripción de la imagen aquí

Luego, la salida se alimenta a un capacitor de desacoplamiento y luego a un amplificador LM324. La salida del LM324 luego se alimenta a un capacitor de desacoplamiento y luego a un amplificador de audio LM386. El audio generalmente suena bien pero hay algo de distorsión. Cuando veo la forma de onda en OUT1 obtengo esto (el trazo amarillo es OUT1, el trazo azul está después del capacitor de desacoplamiento):

ingrese la descripción de la imagen aquí

¿Qué son las extrañas "gotas" que estoy viendo? La parte superior de la forma de onda se ve bien, pero la mitad inferior tiene estas gotas. Esto es algún tipo de distorsión, ¿sí? ¿Qué causa esto? ¿Cómo se puede eliminar esto?

ACTUALIZACIÓN 1: Aquí está el PWM del ATtiny85:

ingrese la descripción de la imagen aquí

ACTUALIZACIÓN 2: dije anteriormente que

Luego, la salida se alimenta a un capacitor de desacoplamiento y luego a un amplificador LM324.

Esto no es correcto. Lo que debería haber dicho es que la salida del LM324 se alimenta a un condensador de desacoplamiento y luego se alimenta a un amplificador de audio LM386.

ACTUALIZACIÓN 3: Aquí hay 12 ms de la entrada PWM de 250 KHz:

ingrese la descripción de la imagen aquí

ACTUALIZACIÓN 4: Aquí está el esquema completo:

ingrese la descripción de la imagen aquí

Abordando algunos de los comentarios y la solución sugerida:

  1. Moví el Vcc para el LM324 del suministro regulado de 3.3V al suministro de +6V. Esto limpió la señal proveniente del LM324 (es decir, el audio recuperado de la entrada PWM), pero aún se puede escuchar una distorsión significativa. Todavía necesito probar para ver si el LM324 está fallando en frecuencias específicas.

  2. Agregué una resistencia de 1K desde la salida del LM324 a tierra. Originalmente hice esto para abordar un comentario que sugería que tener la salida flotante no era una buena idea. La respuesta propuesta dice (si lo entendí correctamente) que esta resistencia de 1K conectada a tierra debería forzar la etapa de salida LM324 en un amplificador de clase A, evitando así un problema de cruce. Sin embargo, en el momento en que se sugirió esto para resolver cualquier problema de cruce, ya estaba implementado.

¿Es posible que el LM324 sea simplemente una muy mala elección para el audio? Escuché que tiene una velocidad de giro relativamente lenta que causa distorsión. ¿Debería buscar otro amplificador operacional (que funcione con un solo suministro de +6V)?

ACTUALIZACIÓN 5:

Aquí están las huellas del circuito actual. El amarillo es la salida del LM324. Después de mover la fuente de alimentación para el LM324 de +3.3V regulado a +6V, puede ver que no hay más caídas (lo que técnicamente resuelve esta pregunta). El trazo azul es la salida del amplificador de audio LM386. Hay distorsión en la parte inferior de la onda y es bastante audible. Creo que si puedo resolver esta distorsión, estoy listo para continuar. Y esto prueba que el LM324 es "suficientemente bueno" para esta aplicación de audio.

ingrese la descripción de la imagen aquí

ACTUALIZACIÓN 6:

Anteriormente dije que el LM324 era "lo suficientemente bueno" para mi aplicación, y esto es cierto. Si examina la forma de onda de salida del LM324 a una resolución más alta, puede observar que la señal es "ruidosa" (no incluí ni rastro de esto). Simplemente desconectando el LM324 y conectando un MC34074APG (sin otros cambios), limpió sustancialmente la forma de onda de salida. Este puede convertirse en mi nuevo amplificador operacional de fuente única favorito.

Debe hacer referencia al terminal + a tierra en algún lugar (a través de alguna impedancia). Todo su circuito no está incluido, pero si solo tiene una entrada flotante desacoplada, probablemente no sea adecuada.
¿Cómo se ve la salida de la MCU? Sospecho que tienes un problema de firmware.
y cual es el V CC y V ss del LM324 en su circuito?
@rdtsc 6V y 0V respectivamente, utilizando 4 pilas AA en serie.
Tenga en cuenta que R1 = R2 y C1 = C2, por lo que aunque este es un filtro de segundo orden, ambos circuitos RC tienen el mismo corte. ¿Es una mala idea? ¿Esto está contribuyendo al problema? ¿No hay ningún beneficio en tener R1 = R2 y C1 = C2?
@Mark Agregué el seguimiento de PWM. Me parece bien.
Además, ¿tiene el amplificador operacional puenteado con un límite de 1uF más o menos? Volviendo a @rdtsc y lo que estaba diciendo con conexión a tierra, si su Vcc y Vss son 0 y 3.3V, probablemente no debería tener un límite de bloqueo de CC en la entrada de todos modos.
"La salida luego se alimenta a un condensador de desacoplamiento y luego a un LM324". La entrada op amp + no tiene voltaje de polarización. Omita el condensador de desacoplamiento y alimente el PWM directamente a R1. ¿Lo que pasa?
Sí, se ve bien cuando observa solo 24 microsegundos, pero su problema ocurre aproximadamente cada 4 milisegundos. necesitas una perspectiva más amplia. Esa instantánea de PWM en particular muestra solo un nivel de CC plano, porque es un período de tiempo muy corto. Mire un período de 5 a 10 milisegundos y busque la caída del PWM.
@BruceAbbott Indiqué mal lo que estaba haciendo con la salida del LM324. Corregí mi publicación original y también la anoté con la ACTUALIZACIÓN 2. Para ser claros, la salida PWM de ATtiny86 está conectada directamente a R1. Así, la salida del LM324 es una onda sinusoidal cuyo voltaje mínimo es cero voltios. Cambio la forma de onda hacia abajo de modo que la mitad de la onda esté por encima de cero voltios y la mitad por debajo de cero voltios con el condensador de desacoplamiento que se encuentra entre la salida del LM324 y la entrada del LM386 (PIN 3). El LM386 está configurado para una ganancia de 20.
¿Qué tipo de condensadores de derivación del riel de alimentación está utilizando?
Para continuar con mi comentario anterior, la salida amplificada del amplificador de audio LM386 está distorsionada, pero creo que probablemente se deba a la distorsión del LM324 que estoy tratando de resolver a través de esta publicación. Específicamente, la parte superior a cero de la salida LM386 se ve bien. La parte inferior está distorsionada, pero la parte inferior de la forma de onda no es plana; es decir, no parece que esté chocando contra los rieles. Se parece más a una onda triangular, probablemente el resultado de las caídas del LM324 que he descrito.
@Daniel Creo que la respuesta a tu pregunta es ninguna. La tierra LM324 está conectada directamente al riel de tierra; el Vcc está conectado a la salida de un regulador LD1117S33 de 3.3V que tiene un electrolítico de 10 uF entre la salida y la tierra. La tierra del amplificador de audio LM386 está conectada directamente al riel de tierra y su Vcc está conectado directamente al riel de +6V de la batería.
Estoy pensando que tal vez debería publicar el esquema completo... ¿sí?
@Mark Agregué un rastro de 12 milisegundos de la entrada PWM. No estoy seguro de qué puede concluir sobre la calidad de la entrada PWM a esta escala...
El brillo relativo de la línea superior con respecto a la línea inferior es una indicación del nivel de voltaje resultante. Cuanto más largo sea el tiempo de ENCENDIDO de PWM en relación con el tiempo de APAGADO, más brillante será la línea superior en relación con la línea inferior (puede ver uno de esos puntos cerca del medio). Ahora mire para ver si la línea superior se atenúa (o la línea inferior se ilumina) en un intervalo cercano a los 4 milisegundos. Es difícil saber cuándo está reproduciendo audio normal, así que pruebe con un sonido simple, como un tono de 1 kHz.
@Mark Te refieres a una codificación PWM de 250 KHz de una onda sinusoidal de 1 KHz muestreada a 44,1 KHz, ¿verdad?
Exactamente. Lo siento, no fui muy claro (se están lanzando tantas frecuencias).
"Debería publicar el esquema completo... ¿sí?" - ¡Sí!
¿Estás seguro de que tus mediciones de voltaje son confiables? ¿Puede ser alguna interferencia de las líneas eléctricas de OP AMP? ¿La tierra del visor es buena?
Y un comentario más: está utilizando OP AMP de "alto voltaje" en su rango de suministro más bajo (extremo): 0 / 3.3 V. Debe usar OP AMP especiales de bajo voltaje, por ejemplo, Rail-to-Rail OPA365. Nunca usaría OP AMP de alto voltaje con un suministro de 3.3 V.
Además, si pudiera usar un PWM de 100 kHz en lugar de 250 kHz, existe un IC de conversión directa a CC de un ciclo .

Respuestas (3)

El LM324, si bien es un logro brillante con los transistores de la década de 1970, tiene un error bien conocido, documentado en su hoja de datos. Esta respuesta se basa en la suposición de que te estás encontrando con este error.

Algunas personas se burlan de él debido a limitaciones como esta, pero sigue siendo un buen opamp si diseñas con sus limitaciones.

Su etapa de salida de clase B está diseñada específicamente para baja potencia pero es asimétrica: es decir, puede subir (hacia V+) con bastante fuerza, pero no puede bajar con mucha eficacia. Esto evita un consumo de corriente excesivo en el que ambos transistores de salida pueden encenderse juntos momentáneamente (como en el bipolar 555), una posibilidad dada la velocidad relativamente baja de estos transistores.

(Consulte la Tabla 6.5, página 6, sección Corriente de salida, en la hoja de datos : a 5 V puede generar 20 mA pero solo absorber 8 uA, por lo que el pullup es 2500 veces más fuerte)


Esta combinación de circunstancias: etapa de salida de clase B, transistores lentos, fuerza asimétrica, le da un caso particularmente malo de distorsión cruzada en señales de alta frecuencia, hay una región donde ambos transistores de salida están apagados y el voltaje de salida es efectivamente indefinido.

Ejecute una onda sinusoidal a unos pocos kHz a través de este filtro (¡las pruebas unitarias son tan válidas en hardware como en software!) y verá que se eliminan grandes bits de la forma de onda de salida.


La solución (documentada si la busca ... EDITAR ... está en la sección 7.4 en la página 11, y mi memoria del problema está un poco apagada) es forzar la etapa de salida a la Clase A, con unos pocos kilohmios de pulldown resistencia a V- (sugiero 1K a este bajo voltaje). Ahora el transistor pulldown nunca tiene que encenderse en absoluto (aunque no pasa nada si lo hace) y el transistor pullup mucho más fuerte siempre tiene el control, tirando contra la resistencia.

Por lo tanto, el 324 está diseñado para usarse con éxito en Clase B para diseños de baja velocidad y baja potencia, o Clase A para diseños más rápidos.

La desventaja de la Clase A es obviamente un mayor consumo de energía; si eso importa, hoy en día puede elegir un amplificador operacional mejor.

Interesante. Me atrajo el LM324 por su capacidad de operar con una sola fuente de alimentación. Probaré con una onda sinusoidal como sugieres. Me encuentro con compromisos de fin de semana, así que no puedo publicar hasta el lunes.
Resulta que R17, 1K, ha estado en el circuito por un tiempo y esto no ha resuelto ningún problema de distorsión. Esto era lo que estabas sugiriendo, ¿sí?
Sí. Si hubiera publicado el esquema en primer lugar, no habría sido necesaria mi respuesta. El problema restante parece que simplemente le estás pidiendo demasiado al LM386: ¡baja un poco el volumen!
Si bien seguí teniendo problemas de distorsión después de pasar la salida del LM324 a tierra a través de una resistencia de 1K, esta resistencia resolvió el problema que pregunté en esta publicación. Desde entonces, eliminé esta resistencia adicional y el potenciómetro y reemplacé el potenciómetro con un divisor de voltaje cuya resistencia total es de aproximadamente 1K ohm, por lo que sigo forzando el funcionamiento del LM324 en Clase A, según esta respuesta. Agregar puentes adicionales entre los 4 rieles de alimentación de la placa de prueba (es una placa de prueba de 3) eliminó sustancialmente cualquier distorsión restante. LM324 y LM386 son ruidosos, pero lo suficientemente buenos para esta aplicación.

¿Me estoy perdiendo de algo? El LM324 tiene un ancho de banda de ganancia de 1,2 MHz. Por lo tanto, su rango de frecuencia útil es de aproximadamente 10 kHz en un buen día. ¿Quieres alimentarlo con una onda cuadrada de 250kHz? Buena suerte con eso.
Estoy pensando que tal vez obtendrá mejores resultados con el filtrado pasivo.

Deberías editar tu comentario en tu respuesta. De hecho, esta es una buena observación y un problema crítico cuando se trata de crear formas de onda analógicas a partir de señales de alta frecuencia y baja resolución (PWM, modulación delta-sigma).
Sí, te estás perdiendo algo aquí. La señal PWM que ingresa al LM324 es de 250 KHz. La señal PWM es el resultado de la modulación por audio de 16 bits muestreado a 44,1 Hkz. Básicamente, es un archivo WAV de Microsoft. Lo que sale del LM324 es audio, en su mayoría alrededor de 2 KHz (puedes ver esto en los rastros del osciloscopio). El filtro activo de segundo orden, construido alrededor del LM324, tiene una frecuencia de corte de alrededor de 4 KHz (o tal vez fue de 3 KHz...). Y la salida del filtro, rastro amarillo, se ve bastante bien.
Ignora mi último comentario. Ok, sí, estoy alimentando el LM324 con una señal de 250 KHz y aparentemente está limitada a unos 10 KHz. Pero aún así, la señal de salida se ve bastante bien. No hay distorsión en la salida del LM324.
¿No está la ganancia de la unidad LM324 (una) en el esquema que proporcioné? Si es así, ¿no me da suficiente ancho de banda para una señal PWM de 250 KHz?
Sí, pero este es un tipo extraño de filtro. ¡El filtrado se realiza mediante la velocidad del amplificador operacional! Al menos considera algo pasivo.
¿Es C5,6 realmente 0.01mF (milli-Farad o 10µF, 0.00001 Farad), o 0.01µF (10nF?) No estoy convencido de que el 386 sea el problema, pero intente agregar un divisor de resistencia para sesgar ligeramente su entrada no inversora positivo y prueba. Parece estar recortando en el extremo inferior del riel de suministro. O intente suministrar un voltaje ligeramente negativo a Vss. O intente reemplazar C9 con un tipo no polarizado (o agregue un segundo C9 en paralelo pero con polaridad inversa).
C5 y C6 son ambos .01 MicroFarad, 103 de cerámica. Entonces... Estoy usando una placa de prueba de 3 con un total de 4 rieles de alimentación. Conectar todos los rieles negativos juntos y todos los rieles positivos juntos en múltiples ubicaciones resolvió muchos problemas. Ahora la distorsión está en la cima de la ola; ya no es el fondo. Pero es bastante mínimo, sin puntos afilados (es decir, sin puntos no diferenciables) y suena lo suficientemente bien.

El filtro Sallen-Key adolece del hecho de que usa una combinación de retroalimentación positiva y negativa: si se ve obligado a usar un amplificador con un ancho de banda limitado, la configuración de retroalimentación múltiple suele ser una mejor opción. Consulte http://www.ti.com/lit/an/sbfa001c/sbfa001c.pdf

Esto parece una muy buena herramienta. Sería mejor si pudiera sugerir y tener en cuenta el amplificador operacional que se está utilizando. El texto sugiere que el lector considere el TI UAF42, un amplificador operacional muy costoso a alrededor de $18 por una sola unidad. Como dije en una actualización de mi pregunta, el MC34074 es bastante bueno y cuesta alrededor de $ 1.36 por unidad.