Arduino Due Guitar ADC Input y DAC Output Mixer: 4 pasos

Arduino Due Guitar ADC Input y DAC Output Mixer: 4 pasos

Tabla de contenido:

Anonim

Esta es la secuela de mi otro instructivo que proporciona un circuito para ingresar señales generadas por una guitarra en el arduino debido al ADC.

Actualizado el 26 de enero de 2014 - el diagrama ha cambiado … vea las notas a continuación.

Este instructivo describe el hardware que proporciona dos funciones.

1) Tome la entrada de guitarra sin procesar y desvíe la señal para que se pueda reconocer comprando el ADC correspondiente (que solo reconoce los voltajes entre 0 V y 3,3 V).

2) Tome la salida del arduino due DAC y mezcle con la señal de guitarra original.

El hardware forma la base de mi proyecto de efectos de guitarra. Tengo un instrumento de guitarra llamado "8 de julio de 1947" que presenta un efecto de guitarra alienígena que estoy tratando de recrear fuera de Logic Pro.

www.reverbnation.com/bizarre

Esta instrucción solo describe el hardware. Escribiré otro instructivo sobre cómo programar el DAC y el ADC para el procesamiento de audio de baja latencia.

Suministros:

Paso 1: Diseño

No soy un ingeniero de audio eléctrico con amplia experiencia en amplificadores de audio. Sin embargo, estoy en esta era moderna y hay mucha ayuda disponible a través de la interweb. Utilicé esta cosa interweb y una aplicación de simulación de circuito android llamada EveryCircuit. Después de varios meses de error, terminé con el diseño anterior.

Como ocasionalmente me gusta triturar mi guitarra sin pensar, uno de los criterios de diseño fue que la señal de la guitarra en bruto debería pasar por el circuito con la menor interferencia de los condensadores de desplazamiento de fase y las resistencias generadoras de ruido. Mover los potes virtuales en la simulación muestra que este es el caso de este circuito.

El circuito está construido a partir de cuatro amplificadores operacionales. Utilicé el opa2132p. Ese dispositivo contiene dos opamps en un paquete dil de 8 pines. En el diagrama de arriba:

Verde: es la señal de entrada de la guitarra.

Azul: es la señal de entrada DAC de la debida.

Rojo: es la salida mixta.

Naranja: es la señal que se debe enviar al ADC en la fecha de vencimiento.

Op amp 1 (abajo a la izquierda): El propósito de este opamp es amortiguar la entrada de la guitarra. Esencialmente es solo un seguidor de voltaje. El amplificador operacional es alimentación de pines son 5V y -5V. Su salida es consumida por el circuito de mezcla (arriba a la derecha) y el circuito de polarización del ADC (abajo a la derecha).

Op amp 2 (abajo a la derecha): Esta toma la entrada de guitarra amortiguada del op amp 1 y le da una inclinación adecuada para alimentar el arduino ADC debido. La polarización se logra al proporcionar un voltaje fijo en la entrada + (ignore los 1.9V en el diagrama; en la práctica, esto es 1.65V, que es precisamente la mitad entre 0V y 3.3V). La señal se suministra a la entrada negativa a través de un condensador de desacoplamiento de 4.7uF y un potenciómetro de 10 kohmios que se puede usar para agregar algo de ganancia a la señal de modo que llene el rango de ADC 0-3.3V. La salida también se realimenta a través del potenciómetro para evitar que el amplificador operacional se sature. Este amplificador funciona con 5V y 0V en sus rieles de suministro.

La salida de este amplificador operacional está entre 0 y 5V. Así que he usado un divisor de voltaje de 22K, 22K + 68K para reducirlo a 3.3V.

Actualización: 26 de enero de 2014: he agregado un filtro de paso bajo de 16 KHz que consta de 1 kohm y 10 nF. Esto es porque estoy muestreando la señal a 32768Hz. Nyquist dice que las frecuencias por encima de 32768/2 pueden enmascararse como frecuencias por debajo de ese valor. Este filtro corta ese alias de nuevo. Por cierto, también los programas de audio se ejecutan a 44 KHz … cuando la audición humana solo llega a 20 KHz.

El interruptor y la resistencia de 274Kohm es una simulación muy burda de la impedancia de entrada de ADC debida al arduino. Según la hoja de datos, la impedancia del ADC aumenta si se reduce la frecuencia de muestreo del ADC. Para velocidades de procesamiento de audio será mayor que 274Kohm. Al encender el interruptor no se muestra ninguna caída de voltaje preocupante.

Op amp 3 (entrada DAC): es solo otro seguidor de voltaje. La potencia es de 5V y 0V. La señal de salida se reduce con un divisor de voltaje de 4.7K y 6.8K para reducir la señal a niveles similares a la guitarra. Su salida es AC desacoplada y alimentada al mezclador opamp (arriba a la derecha).

Op amp 4 (mezclador): es un sumador de voltaje. Sus entradas provienen del opamp ADC y del opa DAC a través de potes de 10K. Un lado de cada uno de esos potes está conectado a tierra y proporcionan una forma de mezclar la guitarra en bruto y la señal efectuada desde el DAC. Los limpiaparabrisas llevan la señal a dos resistencias de 100Kohm. Estos proporcionan una tierra virtual en la entrada +.

Actualización 26 de enero de 2014: he reducido la resistencia de 100K en el sumador a 33K. Dale un poco más de volumen para el efecto.

La salida se realimenta a través de algunas resistencias de 1K que proporcionan una ganancia de 2.

La potencia para este amplificador operacional debe ser de 5V y -5V.

Al igual que el otro opamp de salida, he puesto en una resistencia de 1 Mohm, un interruptor para modelar (mal) la impedancia de entrada de un amplificador de guitarra.

El componente final es un filtro de paso bajo que consiste en un capacitor de 1K y 10nF. Esto suaviza el paso irregular como los voltajes suministrados por el DAC. Los voltajes similares a este cuentan con componentes armónicos que tienen una frecuencia mucho más alta que la reducción de 16 KHz que proporciona este filtro.

Paso 2: Breadboarding

Me pareció mejor construir lo anterior y hacer que funcione con un tablero de pruebas ya que hay muchas conexiones para equivocarse.

ADVERTENCIA: ten mucho cuidado con tus pines de arduino. Siempre verifique que tengan los rangos de voltaje correctos y que haya resistencias limitadoras de corriente presentes o podría perder un pin. Yo uso un pequeño osciloscopio para esto. Hay un montón de ámbitos de nivel TTL baratos disponibles ahora. Tengo DSG nano con el firmware BenF.

No seré responsable si rompes tu deuda.

Mi circuito se conecta al pin DAC1 y los pines A0 en la fecha de vencimiento.

Para generar el suministro de -5V, consulte mi otro instructivo.

Paso 3: Veroboarding

Dibujé un diseño de veroboard en un papel cuadrado (ver imagen arriba). Una vez hecho esto, puedes soldar todas las partes en un pedazo de veroboard.

El veroboard es el material de la línea recta y corté una línea en el medio para hacer las conexiones similares a la tabla de pruebas.

Con algunos conectores impares, logré crear algunos enchufes de montaje para conectar los enchufes, la fuente de alimentación y los cables de entrada ADC y DAC.

Paso 4: Pruebas

Desafortunadamente, mientras escribo esto, no tengo una guitarra para probar. Para solucionar esto, armé un pequeño bote y lo conecté a una computadora portátil que jugaba Steel Panther. La imagen del alcance de arriba es probablemente de su romántica balada "Stripper Girl". A pesar de la imagen, que parece haber sido mala suerte, la salida está dentro de unos pocos mV de 0V con un pico de voltaje pico-pico de aproximadamente 1V.

Sin embargo, los voltajes de salida parecen correctos y no han destruido el estéreo que estoy usando.

Adiós por ahora.