Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Retroiluminación RGB + Visualizador de audio MSGEQ7

Componentes y suministros

Arduino Nano R3
× 1
Tira de LED direccionables Digilent WS2812
× 1
MSGEQ7
Ecualizador gráfico de siete bandas para análisis del espectro de audio
× 1
Fuente de alimentación conmutada Digilent 5V 2.5A
× 1

Herramientas y máquinas necesarias

Soldador (genérico)

Aplicaciones y servicios en línea

Arduino IDE

Acerca de este proyecto

Esta es una importación de mis Instructables originales ( haga clic aquí )

Bienvenido a mi tutorial sobre cómo construir una luz de fondo LED RGB por ejemplo la parte posterior de su televisor o escritorio.

El esquema en sí es muy simple, ya que las tiras de LED WS2812 son muy fáciles de interactuar con, por ejemplo, un Arduino Nano .

Nota: que no tiene que usar el circuito analizador de audio MSGEQ7 adicional si solo desea la retroiluminación LED sin visualización de audio.

Proporcioné una lista detallada de las piezas usadas y dónde puedes comprarlos:

  • Arduino Nano / Uno (Amazon / AliExpress)
  • Tira de LED RGB WS2812 (Amazon / AliExpress), tenga en cuenta que IP representa la protección (por ejemplo, impermeable si lo necesita) y el número representa la cantidad de LED por metro que tiene la tira (importante para la fuente de alimentación)
  • Fuente de alimentación de 5 V (Amazon) (depende de cuántas tiras de LED tiene) -> cada LED toma ~ 20mA, la tira utilizada en este tutorial tiene 45 LED (30 por metro), por lo que necesito un suministro de 45 * 20mA ~ 1, 5Ampere (Arduino, MSGEQ7 necesita algo también), conecté una fuente de alimentación que proporciona 3A, que definitivamente es suficiente para nosotros ahora
  • Conector de audio de 3,5 mm (Amazon / AliExpress)
  • Potenciómetro 10kOhmios (Amazon / AliExpress)
  • Botón pulsador (Amazon / AliExpress)
  • Resistencia (1x 10kOhm, 1x 220Ohm, para MSGEQ7:2x100kOhm)
  • Condensadores (1x 1000yF Electrolítico (Amazon / AliExpress), 2x 10nF, para MSGEQ7:2x 0.1yF, 1x33pF (Amazon / AliExpress)
  • Diodo simple (Amazon / AliExpress)
  • Conector de CC (Amazon / AliExpress)

Suministros:

Paso 1:compila el esquema

Esquema principal:

Entonces, interconectar la tira WS2812 con un Arduino es bastante sencillo usando la biblioteca Adafruit_NeoPixel.

La tira de LED tiene 3 pines: VCC, DATA, GND . VCC está conectado a 5 V, GND a tierra y el Pin de DATOS en el medio está conectado a LED_DATA Pin D6 en el Arduino. Ahora cada LED en la tira tiene un chip WS2812 que toma los datos que recibe del Arduino y los pasa al siguiente LED, por lo tanto, solo necesitamos alimentar los datos del LED una vez al primer LED en la tira.

La lógica del botón pulsador para cambiar los modos y el potenciómetro para controlar el brillo se explica en el siguiente paso.

El esquema exacto se puede encontrar en la captura de pantalla del archivo fritzing que también está disponible para descargar.

Nota que es muy importante solo conectar el Pin Arduino 5V a la fuente de alimentación a través del diodo , para que el Arduino no se dañe si enchufamos el Cable USB para programarlo. El 10nF y 1000uF también son por razones de seguridad, para que no haya escasez de energía.

Para el circuito MSGEQ7 :

Este es el circuito más común para conectar un MSGEQ7 a un Arduino. Aquí también es donde necesita el conector de audio de 3,5 mm . El pin medio de la mayoría de los conectores de audio es GND, los pines de la izquierda / derecha son los canales estéreo que se conectan a través de un condensador de 10nF al pin de entrada de señal del MSGEQ7 como se muestra en el esquema. Además, puede agregar un potenciómetro al pin de entrada de señal para controlar la sensibilidad de la señal de audio, pero en realidad no es necesario. El MSGEQ7 está conectado al Arduino con pin de salida analógica conectado a A1 (MSGEQ_OUT), Estroboscópico Fijar a D2 (ESTROBOSCÓPICO), Restablecer Fijar a D5 (RESTABLECER).

rgb_controller.fzz

Paso 2:el código

GitHub Enlace a boceto completo :RGBStripe_Control_WS2812

Notas sobre el código:

En el código declaramos el objeto WS2812 Strip con un nuevo objeto Adafruit_NeoPixel, pasando el número de Leds ( cambie NUM_LEDS para su configuración ), el Pin Arduino conectado al pin LED_DATA y el tipo de codificación + velocidad de transmisión de los valores de color.

Una vez hecho esto, configuramos el Brillo predeterminado en setup () a través de setBrightness (0-255) y enciende el Strip con begin () . Ahora podemos configurar cada píxel / LED individual a un color RGB específico con setPixel (LED, Color) . Cuando terminamos de configurar todos los LED a nuevos valores, actualizamos la tira con strip.show () . Esa es básicamente toda la lógica del código que necesitamos para programar cualquier animación que queramos. Ahora, para controlar realmente las animaciones / modos, agregamos un botón pulsador / Cambie táctil al Arduino. Por lo tanto, conectamos un extremo del botón a VCC y el otro a Arduino Pin D3 y con una resistencia de 10kOhm a GND. Adjuntamos una interrupción a este Pin en la configuración () , que activa una llamada a changeMode () método cada vez que pulsamos el botón. En changeMode () simplemente cambiamos al siguiente modo e indicarle a la animación actual que se rompa. Una vez que eso suceda, el loop () se ejecutará nuevamente y reproducirá la nueva Animación / Modo.

Las animaciones proporcionadas incluyen:desvanecimiento del color del arco iris, rojo, verde, azul, color blanco, modo analizador de música

Además agregué un potenciómetro de 10kOhmios para controlar el brillo de la tira . el método checkBrightness () comprueba la salida del potenciómetro conectado al pin A2 (pin medio del potenciómetro) y actualiza el brillo de la tira en consecuencia.

Para el modo musicAnalyzer () a través de MSGEQ7:

Este modo visualiza la señal de audio conectado a Signal In del MSGEQ7. El MSGEQ emite una señal analógica que muestra una sola banda de audio (8 bandas, de frecuencias bajas a altas). musicAnalyzer () el método obtiene los valores actuales de las bandas de audio reiniciando el MSGEQ y luego almacenando en búfer los valores analógicos proporcionados. La banda que se está emitiendo se puede cambiar colocando un flanco alto en el Pin Strobe. Después de que las 8 bandas se hayan almacenado en búfer, el método desplaza todos los valores de píxeles del LED uno hacia atrás y calcula el nuevo valor para el LED 0 . El color se compone de: color rojo de baja frecuencia (graves), color verde de frecuencia media y color azul de alta frecuencia. El cambio del valor antes de cargar el nuevo valor nos da una bonita animación sincronizada sin problemas.

Paso 3:Configura el audio en la PC

Para que su música / audio ingrese al MSGEQ7 pero aún así se reproduzca en sus parlantes, debe usar la función RealtekHD Stereomix o conectar la entrada de audio MSGEQ a p. Ej. salida de altavoz trasero de su tarjeta de sonido / placa base.

Para habilitar Stereomix en Win10, haga clic derecho en el icono del altavoz en la parte inferior derecha y haga clic en "Sonidos", aquí puede activar Stereomix en la pestaña "Grabación" (clic derecho -> activar). Si el Stereomix no está visible, haga clic derecho y elija "Mostrar dispositivos deshabilitados". Ahora abra la configuración del Stereomix y dígale que escuche y copie el audio de sus altavoces principales.

Si desea utilizar la salida del altavoz trasero, abra la configuración de su altavoz principal en el menú "Sonidos", pestaña "Mejoras" y luego seleccione "Entorno" de la lista y elija "Habitación" en el menú desplegable a continuación.

Esto ahora habilita la salida de audio en paralelo de sus parlantes y el MSGEQ7.

Paso 4:notas

Como el esquema no es tan complicado ni de gran tamaño, logré poner todo el circuito en una pequeña caja con orificios para el conector USB, el conector de audio, el conector de CC, el potenciómetro y el botón pulsador. Simplemente puede usar encabezados de clavija macho / hembra y conectar los 3 cables a la tira WS2812 a través de cables de puente.

Código

Descarga de Arduino Sketch
https://github.com/PhilKes/RGBStripe_Control_WS2812

Esquemas

Esquema de tablero para conectar Arduino a WS2812 Strip con control de brillo a través de potenciómetro fvwp3zyjs5c4z851_12HuWgZiDT.fzzStandalone MSGEQ7 Schematic se usa solo para el modo de visualizador de audio
Conecte la entrada de señal al canal izquierdo / derecho del conector de audio de 3,5 mm y los otros pines de control como se muestra en el otro esquema

Proceso de manufactura

  1. Sensor de luz pulsada
  2. Visualizador de música DIY LUMAZOID Arduino
  3. Detector de frecuencia de audio
  4. ¡Arduino con Bluetooth para controlar un LED!
  5. Reproducir audio en Arduino
  6. Arduino Cuadrúpedo
  7. Mezclador de colores Arduino RGB
  8. Máquina de tratamiento DIY Arduino RADIONICS
  9. DMX RGB LED para exteriores
  10. Juego de ruleta LED
  11. Garaje de estacionamiento automatizado Arduino