
Owen Little
0
1933
172
Ako gledate puno filmova na računalu ili medijskom centru, siguran sam da ste se suočili s dilemom rasvjete; potpuno isključite sva svjetla? Držite li ih u punoj eksploziji? Ili koristite prigušivač za prigušivanje svjetla da biste negdje zadržali prljav žuti sjaj? Pa, ne trpi više.
Za manje od 100 USD možete postaviti nevjerojatan sustav rasvjete koji će odražavati ono što se prikazuje na zaslonu; ako je video plava noćna scena, svjetla će biti plava; kada plamen narančaste vatre zasvijetli, tako će se i vaša svjetla. Dobrodošli u svijet ambijentalne RGB rasvjete.
komponente
- RGB svjetlosna traka - ovo je traka od RGB LED-a od 5 metara koja se može kupiti na eBayu i otpremiti iz Hong Konga za manje od 20 funti. Ako kupujete u trgovinama elektronike platit će vam se metar, a kolut od 5 m koštat će tri ili četiri puta više, stoga kupujte na mreži. Ove vrste LED traka mogu se promijeniti u bilo koju boju, ali samo sve odjednom - ne mogu se pojedinačno prilagoditi.
- 12V napajanje - potrebna snaga (ampage) ovisi o tome koliko LED traka ćete spojiti. Svaki metar crta otprilike 0,6 ampera, ali to ovisi o gustoći vaših LED-ova, stoga obavezno provjerite pojedinu LED traku. 3A bi bilo dovoljno za gornju traku od 5 metara, a odvojeni izvori napajanja mogu se kupiti za oko 10 funti ako ih ne možete nabaviti drugdje.
- 3 x MOSFET N tranzistora - vjerovatno ćete naći jeftinije, ali kupio sam paket od 6 (vrsta STP16NF06FP) za oko 10 £. Koriste se za izoliranje struje iz Arduinoa - spajanje traka izravno u Arduino pržilo bi je količinom struje koju vuku. Potreban vam je 1 MOSFET tranzistor po kanalu LED boja, za crvenu, zelenu i plavu.
- Arduino Što je Arduino i što možeš učiniti s tim? Što je Arduino i što možete učiniti s tim? Arduino je izvanredan mali elektronički uređaj, ali ako ga nikada prije niste koristili, samo što su točno i što možete učiniti s jednim? - Nisam uključio troškove ovog predmeta, jer pretpostavlja se da ga već imate, a postoji mnoštvo klonova koje možete kupiti ako si ne možete priuštiti službeni.
Ukupni trošak je, dakle, bio oko £ 40 ne uključuje Arduino.
Uvod
Projekt se sastoji iz dva dijela. Prvo ćemo kreirati osnovni Arduino sklop koji sluša naredbe s računala i postavljati RGB LED na odgovarajuću boju. Drugi uključuje upotrebu nove aplikacije pod nazivom Processing and Java na računalnoj strani - kako biste utvrdili koje su boje trenutno na zaslonu, procijenili ih prosječno i izveli na ulaz za serijsku komunikaciju kako bi Arduino reagirao.
Dio 1: Krug i Arduino
Krug koji koristimo je vrlo jednostavan, kao što možete vidjeti na donjem dijagramu. LED traka treba biti isporučena s muškim utikačem na jednom kraju koji možete postaviti izravno u ploču.
Vaša LED traka može se razlikovati, ali ako pažljivo pogledate, vidjet ćete 12v, R, G, B napisano negdje na tračnicama. Te se trake zapravo mogu rezati na tim bakrenim točkama (svaka 3 LED-a na onim koje imam), tako da ako želite rezati trake u kutovima televizora, to sigurno možete učiniti - ni 5 m ne trebate koristiti , pa vam je možda preostalo nešto za budući projekt. Pozitivnih 12 V priključite izravno na vanjsko napajanje.
MOSFET-ovi imaju tri igle; vrata, odvod, i izvor. Vrata su poput elektroničke sklopke kojom će Arduino upravljati. Time se određuje struja koja teče između izvora i odvoda. Odvod svakog MOSFET-a treba biti spojen na tlo Arduino-a i uzemljenje napajanja, dok se izvor spaja na kanale LED trake.
Kad završite krug, preuzmite i pokrenite ovaj testni kod (izvorno iz LadyAde, izmijenjeni su igle). Trebali biste vidjeti svoju LED traku kako se okreće u raznim bojama.
Dio 2: Obrada
Preuzmite Obrada i pokrenite. Možda ćete se iznenaditi kad to izgleda gotovo točno poput Arduinovog razvojnog okruženja; to je zato što se Arduino okruženje temeljilo na tome, iako obje obavljaju različite funkcije. Uzmi ovaj kod - izvorno iz Silicijske republike, ali ja je izmijenjen od strane mene kako bi postavke veličine ekrana bile automatske i s boljom reprezentacijom boja - i odvojite trenutak da ga pogledate. U osnovi koristi klasu Java koja se zove Robot napraviti svaki snimak zaslona 10ms; tada odabire svaki neobičan piksel i prosječno postigne ukupnu boju. Ako je za vas problem uspješnosti, pojačajte skipValue promjenjiva na 3 ili 4 za preskakanje više piksela - sveukupni učinak trebao bi biti isti, ali pokrenut će brže jer ispituje manje piksela. Na kraju sam dodao filter koji pomaže u zasićenju boje povećanjem maksimalnih i smanjenjem pronađenih minimalnih RGB vrijednosti (bez toga sam otkrio da su boje previše bijele).
Pokrenite aplikaciju; prvi put, vjerojatno ćete dobiti pogrešku dok pokušava pristupiti pogrešnom serijskom priključku.
Provjerite u prozoru za uklanjanje pogrešaka popis trenutnih serijskih portova i zabilježite broj pored onoga u koji je vaš Arduino priključen. U mom slučaju na Mac računalu, USB priključak je priključak 4. Promijenite broj u ovom retku u ispravan ulaz:
port = novi Serial (ovaj, Serial.list () [4], 9600); // postaviti brzinu prijenosa
Spremite i ponovo pokrenite; trebali biste vidjeti mali skočni prozor - to predstavlja prosječnu boju svega na zaslonu. Pokrenite aplikaciju za slikanje ili nešto jakih boja da biste je testirali, inače će vjerojatno prikazati samo mutnu nijansu sive. Zaustavite aplikaciju kada završite testiranje jer nam treba pristup serijskog porta za programiranje Arduino-a.
Napokon, učitajte ovaj kod na svoj Arduino. Umjesto slanja nasumičnih boja na LED traku, ovaj kod očitava vrijednosti iz serijskog porta (na koji obrada izlazi). To je prilično lako razumjeti, jedini težak dio može biti upotreba markera u serijskim podacima:
if (Serial.available ()> = 4) if (Serial.read () == 0xff) red = Serial.read (); zelena = Serial.read (); plava = Serial.read ();
To osigurava čitanje ispravnih vrijednosti bajtova - aplikacija Processing daje marker kao “prijelomna točka” između svakog niza vrijednosti kako Arduino ne bi bio izvan sinhronizacije i mislio da je zelena vrijednost za plavu itd.
Nakon što se prenese Arduino kod (prvo na LED traci ne bi trebao biti izlaz), tada možete učitati i pokrenuti aplikaciju Processing; odmah biste trebali vidjeti svoje ambijentalno svjetlo kako radi.
Evo video demonstracije kako mi je uspjelo s nekim nasumičnim trostrukim glazbenim videom.
Što misliš?! Iako nije toliko impresivno kao nešto što analizira svaki dio zaslona i koristi pojedinačne LED piksele, to je puno jeftinije i puno svjetlije. Jedina mana ovoga je da se sve mora izvoditi na računalu vašeg medijskog centra - na primjer, to neće raditi s uobičajenom televizijskom emisijom ili Xbox 360. Ako imate bilo kakvih problema, pitanja ili prijedloga, molimo pitajte ih; ili možda link do videozapisa vašeg dovršenog postava.