Reklama

stredné svetlo médiíAk sledujete veľa filmov v počítači alebo v mediálnom centre, určite ste čelili dileme osvetlenia; úplne vypnete všetky svetlá? Myslíte si, že ich máte na dosah? Alebo použijete stmievač, aby ste niekde udržali matnú žltú žiaru? Už netrpia.

Za menej ako 100 dolárov môžete vytvoriť úžasný systém osvetlenia, ktorý bude odrážať to, čo je na obrazovke; ak je videom modrá nočná scéna, svetlá budú modré; keď sa rozsvieti plameň oranžového ohňa, rozsvietia sa aj vaše svetlá. Vitajte vo svete okolitého osvetlenia RGB.

súčasti

  • Svetelný pás RGB - je to 5 metrov pásik LED diód RGB, ktorý je možné kúpiť na eBay a odoslať z Hongkongu za menej ako 20 GBP. Ak nakupujete v obchodoch s elektronikou, budete platiť za meter a navijak 5 metrov vás bude stáť trikrát alebo štyrikrát, takže nakupujte online. Tieto typy LED pásov je možné zmeniť na akúkoľvek farbu, ale iba naraz - nie je možné ich individuálne upravovať.
  • Napájanie 12V - požadovaný výkon (zosilnenie) závisí od toho, koľko pásikov LED sa pripájate. Každý merač čerpá približne 0,6 ampéra, ale záleží to na hustote vašich LED diód, takže nezabudnite skontrolovať konkrétny LED pásik. 3A by stačilo na 5 m pásik, ktorý som prepojil vyššie, a samostatné zdroje napájania je možné kúpiť za približne 10 GBP, ak ich nemôžete získať inde.
    instagram viewer
  • 3 x Tranzistory MOSFET N - Môžete pravdepodobne nájsť lacnejšie, ale kúpil som si balíček 6 (typ STP16NF06FP) za približne 10 GBP. Používajú sa na izoláciu prúdu od Arduina - spojenie prúžkov priamo s Arduino by ho potiahlo množstvom prúdu, ktorý čerpajú. Potrebujete 1 tranzistor MOSFET na jeden farebný kanál LED pre červenú, zelenú a modrú.
  • Arduino Čo je Arduino a čo s tým môžete robiť?Arduino je pozoruhodné malé elektronické zariadenie, ale ak ste ho ešte nikdy nepoužívali, aké presne sú a čo s ním môžete urobiť? Čítaj viac - Nezahrnuli sme náklady na túto položku, pretože sa predpokladá, že ju už máte, a existuje niekoľko klonov, ktoré si môžete kúpiť, ak si nemôžete dovoliť oficiálny.

Celkové náklady sa preto pohybovali okolo £40 okrem Arduino.

úvod

Projekt pozostáva z dvoch častí. Najprv vytvoríme základný obvod Arduino, ktorý počúva príkazy z počítača a nastaví RGB LED na vhodnú farbu. Druhá obsahuje použitie novej aplikácie s názvom spracovanie a Java na strane počítača - na zistenie, aké farby sú momentálne na obrazovke, ich priemerovania a na výstup, ktorý Arduino reaguje na sériový komunikačný port.

Časť 1: Okruh a Arduino

Okruh, ktorý používame, je veľmi jednoduchý, ako môžete vidieť na obrázku nižšie. LED pásik by mal byť na jednej strane dodávaný so zástrčkou, ktorú môžete umiestniť priamo do doštičky.

stredné svetlo médií

Váš pás LED sa môže líšiť, ale ak sa pozriete pozorne, uvidíte 12v, R, G, B niekde napísané na koľajniciach. Tieto prúžky je možné skutočne orezať v týchto medených bodoch (každé 3 LED diódy na tých, ktoré mám), takže ak chcete prúžky orezať na v rohoch televízora to môžete bezpečne urobiť - nepotrebujete ani celých 5 metrov, takže niektoré z nich môžete mať do budúcnosti Projekt. Pripojte kladný 12V priamo k externému napájaciemu zdroju.

dynamické okolité osvetlenie

MOSFETy majú tri kolíky; brána, vypustiťa zdroj. Brána je ako elektronický spínač, ktorý ovláda Arduino. Toto potom určuje prúd, ktorý tečie medzi zdrojom a odtokom. Odtok každého MOSFETu by mal byť pripojený k zemi Arduino a k zemi napájacieho zdroja, zatiaľ čo zdroj sa pripája k kanálom LED pásov.

dynamické okolité osvetlenie

Po dokončení okruhu stiahnite a spustite toto testovací kód (pôvodne od LadyAda, kolíky upravené). Mali by ste vidieť, ako sa prúžok LED krúti rôznymi farbami.

dynamické okolité osvetlenie

Časť 2: Spracovanie

Stiahnuť ▼ spracovanie a bežať. Možno vás prekvapí, že to vyzerá takmer presne ako vývojové prostredie Arduino; je to preto, že prostredie Arduino bolo založené na tom, aj keď oba vykonávajú rôzne funkcie. Chyťte tento kódpôvodne od Silicon Republic ale silno som upravil, aby sa nastavenie veľkosti obrazovky stalo automatickým a s lepšou farebnou reprezentáciou - a chvíľu sa na to pozri. V podstate používa triedu Java s názvom robot urobiť snímanie obrazovky každý 10ms; potom vyberie každý nepárny pixel a spriemeruje celkovú farbu. Ak je pre vás problém s výkonom, zvýšte skiphodnota premenná na 3 alebo 4, aby ste preskočili viac pixelov - celkový efekt by mal byť rovnaký, ale bude bežať rýchlejšie, pretože skúma menej pixlov. Nakoniec som pridal filter, ktorý pomáha saturovať farbu zvýšením maxima a znížením minimálnych nájdených hodnôt RGB (Bez tohto by som zistil, že farby sú príliš biele).

Spustite aplikáciu; Pri prvom pokuse o prístup k nesprávnemu sériovému portu sa pravdepodobne zobrazí chyba.

dynamické okolité osvetlenie

V okne ladenia nájdete zoznam aktuálnych sériových portov a poznačte si číslo vedľa toho, k čomu je Arduino pripojené. V mojom prípade na počítači Mac je pripojenie USB port 4. Zmeňte číslo v tomto riadku na správny port:

port = new Serial (this, Serial.list () [4], 9600); // nastaviť prenosovú rýchlosť

Uložiť a znovu spustiť; mali by ste vidieť malé vyskakovacie okno - to predstavuje priemernú farbu všetkého na obrazovke. Spustite aplikáciu na maľovanie alebo niečo so silnými farbami, aby ste si to mohli vyskúšať, inak to bude pravdepodobne len matný odtieň šedej. Po dokončení testovania zastavte aplikáciu, pretože na programovanie Arduino potrebujeme prístup na sériový port.

stredné svetlo médií

A konečne, načítať tento kód na vaše Arduino. Namiesto zasielania náhodných farieb na pásik LED tento kód číta hodnoty zo sériového portu (do ktorého sa spracováva spracovanie). Je to celkom ľahké pochopiť, jediná zložitá časť môže byť použitie značky v sériových údajoch:

if (Serial.available ()> = 4) { if (Serial.read () == 0xff) { red = Serial.read (); zelená = Serial.read (); modrá = Serial.read (); } }

To zaisťuje, že čítame správne bajtové hodnoty - aplikácia Spracovávanie vydá značku ako „bod prerušenia“. medzi každou sadou hodnôt, aby sa Arduino nevytratilo zo synchronizácie a aby si mysleli, že zelená hodnota je pre modrá atď.

Po odovzdaní kódu Arduino (na pruhu LED by na začiatku nemal byť žiadny výstup), potom môžete načítať a spustiť aplikáciu Spracovanie; Okamžite by ste mali vidieť, že vaše okolité svetlo funguje.

Tu je ukážka videa o tom, ako pre mňa vyšlo nejaké náhodné Trippy hudobné video.

Co si myslis?! Aj keď to nie je také pôsobivé ako niečo, čo analyzuje každú časť obrazovky a používa jednotlivé LED pixely, je to oveľa lacnejšie a oveľa jasnejšie. Jedinou nevýhodou je, že na počítači s multimediálnym centrom musí byť spustené všetko - nebude fungovať napríklad pri bežnom televíznom vysielaní alebo na vašom Xbox 360. Ak máte nejaké problémy, otázky alebo návrhy, opýtajte sa ich; alebo odkaz na video s dokončeným nastavením.

James má bakalárske štúdium v ​​oblasti umelej inteligencie a je držiteľom certifikátu CompTIA A + a Network +. Je popredným vývojárom MakeUseOf a trávi svoj voľný čas hraním VR paintballu a spoločenských hier. Staval počítače od malička.