Tabla de contenido:

Visualizador de audio de tira de LED RGB no direccionable: 6 pasos (con imágenes)
Visualizador de audio de tira de LED RGB no direccionable: 6 pasos (con imágenes)

Video: Visualizador de audio de tira de LED RGB no direccionable: 6 pasos (con imágenes)

Video: Visualizador de audio de tira de LED RGB no direccionable: 6 pasos (con imágenes)
Video: VUmeter con ESP32 y Arduino IDE🎧 2024, Noviembre
Anonim
Image
Image

¡He tenido una tira de LED RGB de 12v alrededor de mi gabinete de TV durante un tiempo y está controlada por un controlador LED aburrido que me permite elegir uno de los 16 colores preprogramados!

Escucho mucha música que me mantiene motivado, pero la iluminación no crea el ambiente adecuado. Para solucionarlo, decidí tomar la señal de audio que se le dio a mi altavoz a través de AUX (conector de 3,5 mm), procesarla y controlar la tira RGB en consecuencia.

Los LED reaccionan a la música según la magnitud de las frecuencias graves (bajas), agudas (medias) y altas.

El rango de frecuencia - Color es el siguiente:

Bajo - Rojo

Medio - Verde

Alto - Azul

Este proyecto involucra muchas cosas de bricolaje porque todo el circuito se construyó desde cero. Esto debería ser bastante fácil si lo está configurando en una placa de pruebas, pero es bastante difícil soldarlo en una PCB.

Suministros

(x1) Tira de LED RGB

(x1) Arduino Uno / Nano (se recomienda Mega)

(x1) TL072 o TL082 (TL081 / TL071 también están bien)

(x3) Transistor NPN TIP120 (TIP121, TIP122 o MOSFET de canal N como IRF540, IRF 530 también están bien)

(x1) Potenciómetro lineal de 10kOhm

(x3) resistencias de 100kOhm 1/4 vatios

(x1) condensador electrolítico de 10uF

(x1) condensador cerámico de 47nF

(x2) Conector de audio de 3,5 mm - Hembra

(x2) batería de 9V

(x2) Conector a presión de batería de 9V

Paso 1: comprensión de los tipos de tiras de LED RGB

Comprensión de los tipos de tiras de LED RGB
Comprensión de los tipos de tiras de LED RGB

Hay dos tipos básicos de tiras de LED, el tipo "analógico" y el tipo "digital".

Las tiras de tipo analógico (fig. 1) tienen todos los LED conectados en paralelo, por lo que actúa como un enorme LED tricolor; puede configurar toda la tira en el color que desee, pero no puede controlar los colores de los LED individuales. Son muy fáciles de usar y bastante económicos.

Las tiras de tipo digital (fig. 2) funcionan de forma diferente. Tienen un chip para cada LED, para usar la tira hay que enviar datos codificados digitalmente a los chips. Sin embargo, esto significa que puede controlar cada LED individualmente. Debido a la complejidad adicional del chip, son más caros.

Si le resulta difícil identificar físicamente las diferencias entre las tiras de tipo analógico y digital,

  1. El tipo Anolog usa 4 pines, 1 positivo común y 3 negativos, es decir, uno para cada color de RGB.
  2. Uso de tipo digital 3 pines, positivo, datos y tierra.

Usaré las tiras de tipo analógico, porque

  1. Hay muy pocos o ningún Instructables que enseñen cómo hacer una tira de tipo analógico con música reactiva. La mayoría de ellos se enfocan en el tipo digital y es más fácil hacerlos reaccionar a la música.
  2. Tenía algunas tiras de tipo analógico por ahí.

Paso 2: amplificación de la señal de audio

Amplificación de la señal de audio
Amplificación de la señal de audio
Amplificación de la señal de audio
Amplificación de la señal de audio
Amplificación de la señal de audio
Amplificación de la señal de audio

La señal de audio que se envía a través del conector de audio es

una señal analógica que oscila entre + 200mV y -200mV. Ahora bien, este es un problema si queremos medir la señal de audio con una de las entradas analógicas de Arduino porque las entradas analógicas de Arduino solo pueden medir voltajes entre 0 y 5V. Si intentáramos medir los voltajes negativos en la señal de audio, el Arduino leería solo 0V y terminaríamos recortando la parte inferior de la señal.

Para solucionarlo tenemos que amplificar y compensar las señales de audio para que caigan dentro de un rango de 0-5V. Idealmente, la señal debería tener una amplitud de 2.5V que oscile alrededor de 2.5V para que su voltaje mínimo sea 0V y su voltaje máximo sea 5V.

Amplificación

El amplificador es el primer paso en el circuito, aumenta la amplitud de la señal de alrededor de + o - 200mV a + o - 2.5V (idealmente). La otra función del amplificador es proteger la fuente de audio (lo que genera la señal de audio en primer lugar) del resto del circuito. La señal amplificada saliente obtendrá toda su corriente del amplificador, por lo que la fuente de audio (el teléfono / iPod / computadora portátil en mi caso) no "sentirá" ninguna carga que se le aplique más adelante en el circuito. Haga esto configurando uno de los amplificadores operacionales en el paquete TL072 o TL082 (figura 2) en una configuración de amplificador no inversor.

La hoja de datos del TL072 o TL082 dice que debe alimentarse con +15 y -15V, pero dado que la señal nunca se amplificará por encima de + o - 2.5V, está bien ejecutar el amplificador operacional con algo más bajo. Usé dos baterías de nueve voltios conectadas en serie para crear una fuente de alimentación de + o - 9V.

Conecte su + V (pin 8) y –V (pin 4) al amplificador operacional. Conecte la señal del conector mono a la entrada no inversora (pin 3) y conecte el pin de tierra del conector a la referencia de 0 V en su suministro de voltaje (para mí, esta fue la unión entre las dos baterías de 9 V en serie). Conecte una resistencia de 100 kOhmios entre la salida (pin 1) y la entrada inversora (pin 2) del amplificador operacional. En este circuito, utilicé un potenciómetro de 10 kOhm conectado como una resistencia variable para ajustar la ganancia (la cantidad que amplifica el amplificador) de mi amplificador no inversor. Conecte esta olla cónica lineal de 10K entre la entrada inversora y la referencia de 0V.

Compensación de CC

El circuito de compensación de CC tiene dos componentes principales: un divisor de voltaje y un condensador. El divisor de voltaje está hecho de dos resistencias de 100k conectadas en serie desde el suministro de 5V del Arduino a tierra. Dado que las resistencias tienen la misma resistencia, el voltaje en la unión entre ellas es igual a 2.5V. Esta unión de 2,5 V está vinculada a la salida del amplificador a través de un condensador de 10 uF. A medida que el voltaje en el lado del amplificador del capacitor sube y baja, hace que la carga se acumule momentáneamente y se repele del lado del capacitor conectado a la unión de 2.5V. Esto hace que el voltaje en la unión de 2.5V oscile hacia arriba y hacia abajo, centrado alrededor de 2.5V.

Como se muestra en el esquema, conecte el cable negativo de un capacitor de 10uF a la salida del amplificador. Conecte el otro lado de la tapa a la unión entre dos resistencias de 100k cableadas en serie entre 5V y tierra. Además, agregue un capacitor de 47nF de 2.5V a tierra.

Paso 3: descomposición de la señal en una suma de sinusoides estacionarios: teoría

Descomposición de la señal en una suma de sinusoides estacionarios: teoría
Descomposición de la señal en una suma de sinusoides estacionarios: teoría

La señal de audio enviada a través de cualquier conector de 3,5 mm está en el

rango de 20 Hz a 20 kHz. Se muestrea a 44,1 kHz y cada muestra se codifica en 16 bits.

Para deconstruir las frecuencias elementales básicas que componen la señal de audio, aplicamos la Transformada de Fourier a la señal, que descompone la señal en una suma de sinusoides estacionarias. En otras palabras, el análisis de Fourier convierte una señal de su dominio original (a menudo tiempo o espacio) a una representación en el dominio de la frecuencia y viceversa. Pero calcularlo directamente a partir de la definición suele ser demasiado lento para ser práctico.

Las figuras muestran cómo se ve la señal en el dominio del tiempo y la frecuencia.

¡Aquí es donde el algoritmo de Transformada Rápida de Fourier (FFT) es bastante útil!

Por definición, Una FFT calcula rápidamente tales transformaciones factorizando la matriz DFT en un producto de factores escasos (en su mayoría cero). Como resultado, logra reducir la complejidad de calcular la DFT desde O (N2), que surge si uno simplemente aplica la definición de DFT, a O (N log N), donde N es el tamaño de los datos. La diferencia de velocidad puede ser enorme, especialmente para conjuntos de datos largos donde N puede ser de miles o millones. En presencia de error de redondeo, muchos algoritmos de FFT son mucho más precisos que evaluar la definición de DFT directa o indirectamente.

En términos simples, solo significa que el algoritmo FFT es una forma más rápida de calcular la Transformada de Fourier de cualquier señal. Esto se usa generalmente en dispositivos con baja potencia informática.

Recomendado: