Costruisci la tua illuminazione dinamica dinamica per un centro multimediale

Se guardi un sacco di film sul tuo PC o sul tuo media center, sono sicuro che hai affrontato il dilemma dell'illuminazione; spegni completamente tutte le luci? Li tieni in piena esplosione?

Se guardi un sacco di film sul tuo PC o sul tuo media center, sono sicuro che hai affrontato il dilemma dell'illuminazione;  spegni completamente tutte le luci?  Li tieni in piena esplosione?
Annuncio pubblicitario

media center light Se guardi un sacco di film sul tuo PC o sul tuo media center, sono sicuro che hai affrontato il dilemma dell'illuminazione; spegni completamente tutte le luci? Li tieni in piena esplosione? O usi un dimmer per mantenere un alone giallo opaco da qualche parte? Bene, non soffrire più.

Per meno di $ 100, puoi creare uno straordinario sistema di illuminazione che rifletterà ciò che appare sullo schermo; se il video è una scena notturna blu, le luci saranno blu; quando un bagliore di fuoco arancione lampeggia, così saranno le tue luci. Benvenuti nel mondo dell'illuminazione RGB ambientale.

componenti

  • Striscia di luce RGB: si tratta di una striscia di LED RGB da 5 metri che può essere acquistata su eBay e spedita da Hong Kong per meno di £ 20 ciascuno. Se acquisti nei negozi di elettronica pagherai a metro e una bobina di 5m avrà un costo tre o quattro volte, quindi acquista online. Questi tipi di strisce LED possono essere cambiati in qualsiasi colore, ma solo tutti in una volta - non possono essere regolati individualmente.
  • Alimentazione 12v: la potenza (amplificazione) richiesta dipende da quante strisce di LED si collegheranno. Ogni metro disegna circa 0, 6 ampere, ma questo dipende dalla densità dei LED, quindi assicurati di controllare la tua particolare striscia LED. 3A sarebbe sufficiente per la striscia di 5 metri che ho linkato sopra, e gli alimentatori separati possono essere acquistati per circa £ 10 se non puoi trovarne uno altrove.
  • 3 transistor MOSFET N: è possibile trovare un prezzo inferiore, ma ho acquistato un pacchetto di 6 (tipo STP16NF06FP) per circa £ 10. Questi sono usati per isolare la corrente dall'Arduino - collegando le strisce direttamente all'Arduino si friggerebbe con la quantità di corrente che disegna. È necessario 1 transistor MOSFET per canale di colore LED, per rosso, verde e blu.
  • Arduino Cos'è Arduino e cosa puoi fare con esso? Cosa è Arduino e cosa puoi fare con esso? L'Arduino è un eccezionale dispositivo elettronico, ma se non ne hai mai usato uno prima, cosa sono esattamente e cosa puoi fare con uno? Per saperne di più - Non ho incluso il costo di questo articolo poiché si presume che ne avrai già uno, e ci sono una varietà di cloni che puoi acquistare se non puoi permetterne uno ufficiale.

Il costo totale era quindi di circa £ 40 escluso Arduino.

introduzione

Il progetto consiste di due parti. Per prima cosa creeremo un circuito Arduino di base che ascolta i comandi dal computer e imposta i LED RGB su un colore appropriato. Il secondo prevede l'utilizzo di una nuova applicazione denominata Processing e Java sul lato del computer - per capire quali sono i colori attualmente sullo schermo, mediali e inviarli alla porta di comunicazione seriale affinché Arduino risponda.

Parte 1: Circuito e Arduino

Il circuito che stiamo usando è molto semplice, come puoi vedere dallo schema sottostante. La striscia LED deve essere fornita con una spina maschio su un'estremità che è possibile inserire direttamente nella breadboard.

media center light

La tua striscia di LED può variare, ma se guardi da vicino vedrai 12v, R, G, B scritti sui binari da qualche parte. Queste strisce possono effettivamente essere tagliate in questi punti di rame (ogni 3 LED su quelli che ho), quindi se vuoi tagliare le strisce agli angoli della tua TV puoi tranquillamente farlo - non è necessario utilizzare l'intero 5m, quindi potresti averne alcuni per un progetto futuro. Collegare il positivo 12 v direttamente all'alimentatore esterno.

illuminazione ambientale dinamica

I MOSFET hanno tre pin; gate, drain e source . Il cancello è come l'interruttore elettronico controllato da Arduino. Questo determina quindi la corrente che scorre tra la sorgente e lo scarico. Lo scarico di ciascun MOSFET deve essere collegato alla massa dell'Arduino e alla massa dell'alimentazione, mentre la sorgente si collega ai canali della striscia LED.

illuminazione ambientale dinamica

Una volta completato il circuito, scarica ed esegui questo codice di prova (originariamente da LadyAda, pin modificati). Dovresti vedere la striscia di LED che si muove attraverso una varietà di colori.

illuminazione ambientale dinamica

Parte 2: elaborazione

Scarica Elaborazione ed esegui. Potresti essere sorpreso di scoprire che sembra quasi esattamente come l'ambiente di sviluppo di Arduino; questo perché l'ambiente Arduino era basato su di esso, sebbene entrambi svolgessero funzioni diverse. Prendi questo codice - originariamente da Silicon Republic ma pesantemente modificato da me per rendere le impostazioni delle dimensioni dello schermo automatiche e con una migliore rappresentazione del colore - e prenditi un momento per esaminarlo. Fondamentalmente utilizza una classe Java chiamata Robot per eseguire una cattura dello schermo ogni 10 ms ; quindi preleva ogni pixel dispari e calcola la media del colore totale. Se le prestazioni sono un problema per te, aumenta la variabile skipValue su 3 o 4 per saltare più pixel - l'effetto complessivo dovrebbe essere lo stesso, ma verrà eseguito più velocemente mentre esamina meno pixel. Infine, ho aggiunto un filtro che aiuta a saturare il colore aumentando il massimo e diminuendo i valori minimi di RGB trovati (senza questo, ho trovato i colori troppo bianchi).

Esegui l'app; la prima volta, probabilmente riceverai un errore mentre tenta di accedere alla porta seriale sbagliata.

illuminazione ambientale dinamica

Controlla la finestra di debug per un elenco delle porte seriali correnti e prendi nota del numero accanto a quello in cui è inserito il tuo Arduino. Nel mio caso su un Mac, la connessione USB è la porta 4. Modificare il numero in questa linea sulla porta corretta:

 port = new Serial (questo, Serial.list () [4], 9600); // imposta la velocità di trasmissione 

Salva e riesegui; dovresti vedere una piccola finestra pop-up - questo rappresenta il colore medio di tutto sullo schermo. Avvia un'app di pittura o qualcosa con colori forti per provarlo, altrimenti probabilmente mostrerà solo una torbida sfumatura di grigio. Interrompi l'applicazione quando hai terminato i test poiché è necessario l'accesso alla porta seriale per programmare Arduino.

media center light

Infine, carica questo codice sul tuo Arduino. Invece di inviare colori casuali alla striscia LED, questo codice legge i valori dalla porta seriale (a cui viene eseguita l'elaborazione in). È abbastanza facile da capire, l'unica parte difficile potrebbe essere l'uso di un marcatore nei dati seriali:

if (Serial.available()>=4) { if(Serial.read() == 0xff){ red = Serial.read(); green= Serial.read(); blue = Serial.read(); } } 

Ciò garantisce che leggiamo i valori di byte corretti - l'app di elaborazione emette un marker come "punto di interruzione" tra ciascun set di valori in modo che Arduino non vada fuori sincrono e pensi che il valore verde sia per il blu ecc.

Una volta caricato il codice Arduino (inizialmente non dovrebbe esserci uscita sulla striscia LED), è possibile caricare ed eseguire l'app di elaborazione; immediatamente dovresti vedere la tua luce ambientale funzionante.

Ecco una demo video di come ha funzionato con un video casuale di musica trippy.

Cosa ne pensi?! Anche se non è così impressionante come qualcosa che analizza ogni parte dello schermo e utilizza i singoli pixel LED, è molto più economico e molto più luminoso. L'unico lato negativo di questo è che tutto deve essere eseguito sul tuo computer del centro multimediale - non funzionerà con le normali trasmissioni TV o Xbox 360, per esempio. Se hai problemi, domande o suggerimenti, chiedi pure via; o forse link a un video della configurazione completata.

In this article