Construye tu propia iluminación ambiental dinámica para un centro multimedia

Construye tu propia iluminación ambiental dinámica para un centro multimedia / Bricolaje

Si ves muchas películas en tu PC o centro multimedia, estoy seguro de que te has enfrentado al dilema de la iluminación; ¿Apagas completamente todas las luces? ¿Los mantienes en plena explosión? ¿O usas un regulador de intensidad para mantener un brillo amarillo apagado en algún lugar? Pues no sufras mas.

Por menos de $ 100, puede configurar un increíble sistema de iluminación que reflejará lo que está en pantalla; si el video es una escena nocturna azul, las luces serán azules; cuando se enciende una llama de fuego naranja, también lo harán sus luces. Bienvenido al mundo de la iluminación ambiental RGB..

Componentes

  • Tira de luz RGB: se trata de una tira de 5 metros de LED RGB que se pueden comprar en eBay y enviarse desde Hong Kong por menos de £ 20 cada uno. Si compra en tiendas de electrónica, pagará con el medidor y un carrete de 5 m costará tres o cuatro veces más, así que compre en línea. Este tipo de tiras de LED puede cambiarse a cualquier color, pero solo a la vez, no se pueden ajustar individualmente.
  • Fuente de alimentación de 12 V: la potencia (amp.) Requerida depende de la cantidad de tiras de LED que conectará. Cada medidor consume aproximadamente 0.6 amperios, pero esto depende de la densidad de sus LED, así que asegúrese de revisar su tira de LED particular. 3A sería suficiente para la tira de 5 m que enlazé anteriormente, y se pueden comprar fuentes de alimentación separadas por alrededor de £ 10 si no puede obtener una en otro lugar.
  • 3 x transistores MOSFET N: puede ser más barato, pero compré un paquete de 6 (tipo STP16NF06FP) por alrededor de £ 10. Estos se utilizan para aislar la corriente del Arduino; conectar las tiras directamente al Arduino la freiría con la cantidad de corriente que extraen. Necesita 1 transistor MOSFET por canal de color LED, para rojo, verde y azul.
  • Arduino ¿Qué es Arduino y qué puedes hacer con él? ¿Qué es Arduino y qué puedes hacer con él? El Arduino es un pequeño dispositivo electrónico notable, pero si nunca ha usado uno antes, ¿qué son exactamente y qué puede hacer con uno? Lea más: no he incluido el costo de este artículo, ya que se supone que ya tendrá uno, y hay una variedad de clones que puede comprar si no puede pagar uno oficial.

El costo total fue por lo tanto alrededor £ 40 sin incluir el arduino.

Introducción

El proyecto consta de dos partes. Primero, crearemos un circuito básico de Arduino que escuche los comandos de la computadora y configure los LED RGB a un color apropiado. El segundo implica el uso de una nueva aplicación llamada Processing and Java en el lado de la computadora: para averiguar qué colores hay actualmente en la pantalla, promediarlos y enviarlos al puerto de comunicaciones serie para que Arduino reaccione.

Parte 1: Circuito y Arduino.

El circuito que estamos usando es muy simple, como puede ver en el diagrama a continuación. La tira de LED debe suministrarse con un enchufe macho en un extremo que puede colocar directamente en la placa de pruebas.

Su tira de LED puede variar, pero si mira de cerca verá 12v, R, G, B Escrito en los rieles en alguna parte. Estas tiras pueden cortarse en estos puntos de cobre (cada 3 LED que tengo), así que si quiere cortar las tiras en las esquinas de su televisor, puede hacer eso de manera segura, tampoco necesita usar los 5 m. , para que te quede algo para un proyecto futuro. Conecte el 12v positivo directamente a la fuente de alimentación externa.

Los MOSFET tienen tres pines; portón, desagüe, y fuente. La puerta es como el interruptor electrónico que controlará el Arduino. Esto determina la corriente que fluye entre la fuente y el drenaje. El drenaje de cada MOSFET debe conectarse a la tierra del Arduino y a la tierra de la fuente de alimentación, mientras que la fuente se conecta a los canales de tira de LED.

Cuando haya completado el circuito, descargue y ejecute este código de prueba (originalmente de LadyAda, pines modificados). Debería ver su tira de LED girando a través de una variedad de colores.

Parte 2: Procesamiento

Descargar Procesando y ejecutando. Puede que se sorprenda al encontrarlo. casi exactamente como el entorno de desarrollo Arduino; eso se debe a que el entorno Arduino estaba basado en él, aunque ambos realizan funciones diferentes. Toma este código - Originalmente por Silicon Republic pero muy modificado por mí para que los ajustes de tamaño de la pantalla sean automáticos y con una mejor representación de color. - y tómate un momento para echarle un vistazo. Básicamente utiliza una clase de Java llamada Robot para hacer una captura de pantalla cada 10ms; luego selecciona cada píxel impar y promedia el color total. Si el rendimiento es un problema para usted, aumente el skipValue variable a 3 o 4 para omitir más píxeles: el efecto general debería ser el mismo pero se ejecutará más rápido a medida que examine menos píxeles. Finalmente, agregué un filtro que ayuda a saturar el color al aumentar el máximo y disminuir los valores mínimos RGB encontrados. (sin esto, encontré los colores demasiado blancos).

Ejecutar la aplicación; la primera vez, probablemente obtendrá un error al intentar acceder al puerto serie incorrecto.

Consulte la ventana de depuración para obtener una lista de los puertos serie actuales y anote el número al lado del cual está conectado su Arduino. En mi caso en una Mac, la conexión USB es el puerto 4. Cambie el número en esta línea al puerto correcto:

puerto = nuevo Serial (este, Serial.list () [4], 9600); // establecer la velocidad en baudios

Guardar y volver a ejecutar; debería ver una ventana emergente emergente, que representa el color promedio de todo lo que aparece en pantalla. Lance una aplicación de pintura o algo con colores fuertes para probarlo, de lo contrario, probablemente solo mostrará un tono sombrío de gris. Detenga la aplicación cuando haya terminado de probar, ya que necesitamos el acceso al puerto serie para programar el Arduino.

Por último, cargue este código en su Arduino. En lugar de enviar colores aleatorios a la tira de LED, este código lee los valores del puerto serie (al que se envía el procesamiento). Es bastante fácil de entender, la única parte difícil puede ser el uso de un marcador en los datos en serie:

if (Serial.available ()> = 4) if (Serial.read () == 0xff) red = Serial.read (); verde = Serial.read (); azul = Serial.read (); 

Esto garantiza que leamos los valores de byte correctos: la aplicación Procesando genera un marcador como “punto de quiebre” entre cada conjunto de valores para que el Arduino no se desincronice y piense que el valor verde es para azul, etc..

Una vez que se haya cargado el código Arduino (inicialmente no debería haber salida en la tira de LED), entonces puede cargar y ejecutar la aplicación de procesamiento; Inmediatamente debería ver su luz ambiental funcionando..

Aquí hay una demostración de video de cómo funcionó para mí con un video musical aleatorio trippy.

¡¿Qué piensas?! Si bien no es tan impresionante como algo que analiza cada parte de la pantalla y utiliza píxeles LED individuales, es mucho más barato y más brillante. El único inconveniente de esto es que todo debe ejecutarse en la computadora de tu centro multimedia, por ejemplo, no funcionará con la transmisión de TV regular o tu Xbox 360. Si tiene algún problema, pregunta o sugerencia, no dude en preguntar; o tal vez enlace a un video de su configuración completa.

Explorar más sobre: ​​Arduino, Media Player.