Skelbimas
Jei žiūrite daug filmų savo asmeniniame kompiuteryje ar daugialypės terpės centre, esu tikras, kad susidūrėte su apšvietimo dilema; ar tu visiškai išjungi visas lemputes? Ar laikote juos visiškai sprogusius? O gal naudojate pritemdytą jungiklį, kad kažkur išlaikytumėte nuobodu geltoną spindesį? Na, daugiau nenukentėk.
Už mažiau nei 100 USD galite sukurti nuostabią apšvietimo sistemą, atspindinčią ekrane rodomus elementus; jei vaizdo įrašas yra mėlyna naktinė scena, lemputės bus mėlynos; kai užsidegs oranžinė ugnis, užsidegs ir tavo žiburiai. Sveiki atvykę į aplinkos RGB apšvietimą.
Komponentai
- RGB šviesos juostelė - tai 5 metrų RGB šviesos diodų juostelė, kurią galima nusipirkti „eBay“ ir atsiųsti iš Honkongo už mažiau nei 20 svarų sterlingų. Jei perkate elektronikos parduotuvėse, mokėsite už skaitiklį, o 5 m ritė kainuos tris ar keturis kartus daugiau, todėl pirkite internetu. Tokio tipo LED juosteles galima pakeisti bet kokia spalva, bet tik visas iš karto - jų negalima atskirai sureguliuoti.
- 12v maitinimo šaltinis - reikalinga galia (ampertais) priklauso nuo to, kiek LED juostų prijungsite. Kiekvienas matuoklis sunaudoja maždaug 0,6 amperų, tačiau tai priklauso nuo jūsų šviesos diodų tankio, todėl būtinai patikrinkite savo LED juostą. 3A pakaktų 5 mln. Juostų, kurias aš sujungiau aukščiau, o atskirų maitinimo šaltinių galima nusipirkti už maždaug 10 svarų sterlingų, jei negalite jų įsigyti kitur.
- 3 x MOSFET N tranzistoriai - Galbūt rasite pigiau, bet aš nusipirkau 6 pakuotes (tipas STP16NF06FP) už maždaug 10 svarų sterlingų. Jie naudojami norint atskirti srovę nuo Arduino - sujungus juosteles tiesiai į Arduino, jos būtų pakeltos tokiu srovės kiekiu. Kiekvienam LED spalvų kanalui reikia raudonos, žalios ir mėlynos spalvos 1 MOSFET tranzistoriaus.
- Arduino Kas yra Arduino ir ką su juo galite padaryti?„Arduino“ yra puikus mažas elektronikos prietaisas, tačiau jei niekada jo dar nenaudojote, tik kokie jie yra, o ką su tuo padaryti? Skaityti daugiau - Aš neįtraukiau šio elemento kainos, nes manoma, kad jūs jau turite jį. Be to, galite įsigyti įvairių klonų, jei negalite sau leisti oficialaus.
Taigi visos išlaidos buvo maždaug £40 neįskaitant Arduino.
Įvadas
Projektą sudaro dvi dalys. Pirmiausia mes sukursime pagrindinę „Arduino“ grandinę, kuri klausys komandos iš kompiuterio ir nustatys tinkamos spalvos RGB šviesos diodus. Antrasis - naudojant naują programą, vadinamą Apdorojimas „Java“ - kompiuterio pusėje - nustatyti, kokios spalvos šiuo metu yra ekrane, jas vidurkinti ir išvesti jas į nuosekliojo ryšio prievadą, kad Arduino galėtų reaguoti.
1 dalis: Grandinė ir Arduino
Kaip matote iš žemiau pateiktos schemos, mūsų naudojama grandinė yra labai paprasta. LED juostelę reikia tiekti su kištukiniu kištuku, kurio vieną galą galite įstatyti tiesiai į duonos lentą.

Jūsų LED juosta gali skirtis, bet jei atidžiai pažiūrėsite, pamatysite 12v, R, G, B parašyta ant bėgių kažkur. Šios juostelės iš tikrųjų gali būti supjaustytos šiuose vario taškuose (kas 3 šviesos diodai ant tų, kuriuos aš turiu), taigi, jei norite juosteles supjaustyti televizoriaus kampuose galite tai saugiai padaryti - taip pat nereikia naudoti viso 5 metrų, todėl galbūt dar liko šiek tiek ateičiai projektas. Prijunkite teigiamą 12v tiesiogiai prie išorinio maitinimo šaltinio.

MOSFET yra trys kaiščiai; vartai, nusausintiir šaltinis. Vartai yra tarsi elektroninis jungiklis, kurį valdys Arduino. Tada nustatoma, kokia srovė teka tarp šaltinio ir kanalizacijos. Kiekvieno MOSFET nutekėjimas turėtų būti sujungtas su Arduino ir maitinimo šaltiniais, o šaltinis jungiamas su LED juostos kanalais.

Baigę trasą, atsisiųskite ir paleiskite tai bandymo kodas (iš „LadyAda“, kaiščiai modifikuoti). Turėtumėte pamatyti, kaip jūsų LED juostelė sukasi įvairiausiomis spalvomis.

2 dalis. Apdorojimas
parsisiųsti Apdorojimas ir bėgti. Galbūt nustebsite, kai atrodysite beveik tiksliai kaip Arduino vystymo aplinka; Arduino aplinka ja buvo pagrįsta, nors jie abu atlieka skirtingas funkcijas. Paimkite šį kodą – iš pradžių Silicio respublika bet stipriai modifikavau, kad ekrano dydžio nustatymai būtų automatiniai ir geriau atspindėtų spalvas - ir trumpam apžiūrėk. Iš esmės ji naudoja „Java“ klasę, vadinamą Robotas padaryti kiekvieną ekraną 10ms; tada jis išrenka kiekvieną nelyginį pikselį ir apskaičiuoja visos spalvos vidurkį. Jei našumas jums kelia problemų, padidinkite „skipValue“ kintama į 3 arba 4, jei norite praleisti daugiau taškų - bendras efektas turėtų būti toks pats, tačiau jis veiks greičiau, nes tiria mažiau taškų. Galiausiai pridėjau filtrą, kuris padeda prisotinti spalvą, padidindamas maksimalią ir sumažindamas RGB reikšmes (be šito, radau, kad spalvos yra per daug baltos).
Paleiskite programą; pirmą kartą tikriausiai gausite klaidą bandydami pasiekti netinkamą nuoseklųjį prievadą.

Patikrinkite derinimo langą, kad pateiktumėte dabartinių nuosekliųjų prievadų sąrašą, ir pažymėkite numerį šalia to, prie kurio jūsų „Arduino“ yra prijungtas. Mano atveju, „Mac“, USB jungtis yra 4 prievadas. Pakeiskite šios eilutės numerį į teisingą prievadą:
prievadas = naujas serialas (šis, Serial.list () [4], 9600); // nustatykite perdavimo spartą
Išsaugoti ir vėl paleisti; turėtumėte pamatyti iškylantį mažą langą - tai rodo vidutinę viso ekrano spalvą. Pabandykite paleisti dažymo programą arba ką nors su stipriomis spalvomis, kitaip tikriausiai bus rodomas tik niūrus pilkos spalvos atspalvis. Sustabdykite programą, kai baigsite bandymą, nes mums reikia nuosekliojo prievado prieigos, kad galėtume programuoti „Arduino“.

Galiausiai įkelk šį kodą į savo Arduino. Užuot siųsdamas atsitiktines spalvas į LED juostelę, šis kodas nuskaito nuosekliojo prievado (kurį apdorojama) išvestas vertes. Tai gana lengva suprasti, vienintelė sudėtinga dalis yra žymeklio naudojimas serijos duomenyse:
if (Serial.a available ()> = 4) { if (Serial.read () == 0xff) { raudona = Serial.read (); žalia = Serial.read (); mėlyna = Serial.read (); } }
Tai užtikrins, kad perskaitysime teisingas baitų reikšmes - programa „Apdorojimas“ pateikia žymeklį kaip „lūžio tašką“ tarp kiekvieno verčių rinkinio, kad Arduino neišeitų iš sinchronizacijos ir galvotų, kad žalia reikšmė yra mėlyna ir kt.
Įkėlę „Arduino“ kodą (iš pradžių LED juostelėje neturėtų būti išvesties), galėsite įkelti ir paleisti programą „Apdorojimas“; iškart turėtumėte pamatyti, kaip veikia jūsų aplinkos šviesa.
Pateikiame vaizdo įrašo demonstracinę versiją apie tai, kaip ji man pasirodė su atsitiktiniu tripy muzikos vaizdo įrašu.
Ką tu manai?! Nors tai nėra visai įspūdinga, kaip tai, kas analizuoja kiekvieną ekrano dalį ir naudojama individualūs LED taškai, jis yra daug pigesnis ir daug ryškesnis. Vienintelis neigiamas dalykas yra tai, kad viskas turi būti vykdoma jūsų medijos centro kompiuteryje - jis neveiks, pavyzdžiui, naudojant įprastą TV transliaciją ar, pavyzdžiui, „Xbox 360“. Jei turite kokių nors problemų, klausimų ar pasiūlymų, tada paprašykite; arba galbūt nuoroda į jūsų atliktos sąrankos vaizdo įrašą.
Jamesas yra dirbtinio intelekto bakalauras ir yra CompTIA A + bei Network + sertifikuotas. Jis yra pagrindinis „MakeUseOf“ kūrėjas ir laisvalaikį praleidžia žaisdamas VR dažasvydį ir stalo žaidimus. Nuo mažens jis statė kompiuterius.