Cree su propia iluminación ambiental dinámica para un centro multimedia

  • Lesley Fowler
  • 0
  • 1655
  • 345
Anuncio

Si ve muchas películas en su PC o centro multimedia, estoy seguro de que se ha enfrentado al dilema de la iluminación; ¿Apagas completamente todas las luces? ¿Los mantienes a todo volumen? ¿O utiliza un interruptor de atenuación para mantener un brillo amarillo apagado en alguna parte? Bueno, no sufras más.

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

Componentes

  • Tira de luz RGB: esta es una tira de 5 metros de LED RGB que se puede comprar en eBay y enviar desde Hong Kong por menos de £ 20 cada una. Si compra en tiendas de electrónica, pagará por metro 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 se puede cambiar a cualquier color, pero solo todas a la vez; no se pueden ajustar individualmente.
  • Fuente de alimentación de 12v: la potencia (ampage) requerida depende de cuántas tiras de LED esté conectando. Cada medidor consume aproximadamente 0.6 amperios, pero esto depende de la densidad de sus LED, así que asegúrese de verificar su tira de LED en particular. 3A sería suficiente para la tira de 5m que uní 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: probablemente pueda encontrarlos más baratos, 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 lo freiría con la cantidad de corriente que consumen. 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, ¿qué son exactamente y qué puede hacer con uno? - 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 de £ 40 sin incluir el Arduino.

Introducción

El proyecto consta de dos partes. Primero crearemos un circuito Arduino básico que escuche los comandos de la computadora y establezca los LED RGB en un color apropiado. El segundo implica el uso de una nueva aplicación llamada Procesamiento y Java en el lado de la computadora, para determinar qué colores están actualmente en la pantalla, promediarlos y enviarlos al puerto de comunicaciones serie para que el 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 en realidad se pueden cortar en estos puntos de cobre (cada 3 LED en los que tengo), por lo que si desea cortar las tiras en las esquinas de su televisor, puede hacerlo con seguridad: no necesita usar los 5 m completos tampoco , por lo que es posible que le quede algo para un proyecto futuro. Conecte el positivo 12v 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 la tira de LED.

Cuando haya completado el circuito, descargue y ejecute este código de prueba (originalmente de LadyAda, pines modificados). Deberías ver cómo tu tira de LED gira en una variedad de colores.

Parte 2: Procesamiento

Descargar Processing y ejecutar. Puede que se sorprenda al ver que se ve casi exactamente como el entorno de desarrollo Arduino; eso se debe a que el entorno Arduino se basó en él, aunque ambos realizan diferentes funciones. Agarra este código - originalmente de Silicon Republic, pero muy modificado por mí para que la configuración del tamaño de la pantalla sea automática y con una mejor representación del color - y toma un momento para mirarlo. Básicamente usa una clase Java llamada Robot 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 de RGB encontrados (sin esto, encontré que los colores eran demasiado blancos).

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

Consulte la ventana de depuración para obtener una lista de los puertos seriales actuales y anote el número al lado del que 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:

port = new Serial (this, Serial.list () [4], 9600); // establecer velocidad de transmisión

Guardar y volver a ejecutar; Debería ver una pequeña ventana emergente: esto representa el color promedio de todo en la pantalla. Inicie una aplicación de pintura o algo con colores fuertes para probarlo, de lo contrario, probablemente solo mostrará un tono gris oscuro. Detenga la aplicación cuando haya terminado las pruebas, 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 (en el que procesa la salida). 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 de procesamiento genera un marcador como “punto de ruptura” 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 carga el código Arduino (inicialmente no debe haber salida en la tira de LED), 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 usa píxeles LED individuales, es mucho más barato y mucho más brillante. La única desventaja de esto es que todo debe ejecutarse en la computadora de su centro de medios; por ejemplo, no funcionará con la transmisión de TV regular o su Xbox 360. Si tiene algún problema, pregunta o sugerencia, por favor pregunte; o tal vez un enlace a un video de su configuración completa.




Nadie ha comentado sobre este artículo todavía.

Sobre tecnología moderna, simple y asequible.
Tu guía en el mundo de la tecnología moderna. Aprenda a usar las tecnologías y los dispositivos que nos rodean todos los días y aprenda a descubrir cosas interesantes en Internet.