Jak postavit cloud lampu se zvukovým reaktivním bleskem

  • Mark Lucas
  • 0
  • 3795
  • 298
reklama

Před několika měsíci se v tvůrčí komunitě stala virová hromada 3 000 dolarů a blesk. Bylo to ohromně krásné světlo, ale cenovka ho nechala mimo dosah kohokoli, kdo nemá zdravý rozum. To, co dnes uděláme, není úplně stejné - místo uměleckého díla děláme něco praktičtějšího, ale bude to mnohem chladnější a lépe přizpůsobitelné..

Rozhodl jsem se vynechat reproduktory za předpokladu, že pravděpodobně už máte ve svém pokoji dobrý pár reproduktorů, které byste raději použili, a upřímně řečeno, uvedení reproduktoru do lampy je trochu divné. Místo toho přidám mikrofon, který umožní blesku automaticky reagovat na hlasité zvuky - buď ze skutečné bouřky, nebo ze zvukové stopy přehrávané z vašeho PC nebo stereo.

Budeme také používat řadu plných RGB Neopixel LED (WS2812B), takže můžeme reprodukovat barvy jiné než bílé a mít kontrolu nad každým pixelem.

Varování: napájení, které jsem použil v tomto projektu, má šroubové svorky, které se připojují k živému střídavému vodiči. Pokud necítíte jistotu zapojení zástrčky, ujistěte se, že jste si zakoupili plně uzavřený zdroj napájení. Přinejmenším budete muset uzavřít jednotku PSU do zabezpečené projektové schránky.

Krok 0: Úvod

Zde je ukázkové video hotového projektu. Doposud jsem implementoval několik různých režimů, od standardního blesku po trippy kyselý mrak a barevnou vybledlou náladovou lampu, kterou lze vybrat z dálkového ovladače.

Potřebný úplný kód a knihovny jsou k dispozici ke stažení z tohoto úložiště Github.

Krok 1: Budete potřebovat

  • Pramen WS2812B, obvykle za cenu asi 50 dolarů za 5 metrů. Nebojte se, pokud máte jiný typ řetězce Neopixel, je to téměř jistě podporováno rozhraním FastLED, ale vaše zapojení se může lišit (můžete kromě signálu požadovat synchronizační linku).
  • Napájení 5V, 10A + - koupil jsem asi 15A jednotek za 11 $. Nabírají vstup 120 až 240 V stř. A produkují silný 5 V výstup, který bude dostačující k napájení všech našich pixelů při plném jasu a Arduino.
  • Elektrická kabeláž, zástrčka a inline spínač
  • Příloha projektu
  • Dva Arduinos. Klony Funduino v hodnotě 10 $ jsou v pořádku. Druhý je nutný pro dálkové ovládání, zatímco první ovládá hlavní logiku a LED.
  • Dva 2,2k (nebo jiné) ohmové rezistory - na přesné hodnotě tolik nezáleží, mělo by fungovat asi 1,5k až 47k.
  • Prkénko
  • TSOP4838 IR přijímač
  • IR dálkový ovladač - Hromadně jsem kupoval přibližně 2 $, ale každý dálkový ovladač by měl pracovat s úpravami kódu.
  • Velký mikrofonní modul
  • Šrot ze dřeva MDF, ze kterého vyříznete základnu, a skládačka.
  • Balící materiál z polystyrenu / vložky do krabic.
  • Výplň polštáře z polypropylenové bavlny. Vytáhl jsem víc než dost z několika strašidelných starých polštářů. Pokud to není možnost, měli byste mít možnost koupit nějaké nové za zhruba 10 $, nebo použít dokonce levnější vatu. Zkusil jsem to s oběma - vatová vlna potřebovala více práce, když ji musela škádlit a nebyla tak nadýchaná, ale ve špetce to bude fungovat.
  • Řetěz a háčky pro zavěšení cloudu - by měly zvednout více než 5 kg.
  • Lepicí pistole s nastavením nízké teploty
  • Spray lepidlo - snadnější přilepit nádivku na váš mrak s tím, ale lepidlo zbraň může také fungovat.

Celkové náklady se pohybují kolem 100 $ bez nástrojů, ale většinu z toho jsem se hnal kolem domu. Všechny elektronické komponenty jsou běžně dostupné; mikrofon lze nalézt v sadě senzorů nebo zakoupit samostatně.

Krok 2: Vyřízněte základnu

Vyřízněte hrubou základnu z kusu MDF pomocí skládačky - přesný tvar je zjevně na vás, ale z nějakého důvodu je v mé mysli ve tvaru ledviny. Připojíme k tomu nějaké háčky pro zavěšení, ale jinak to jen poskytuje pevný základ, na kterém lze stavět. Centrální oblast bude vyhrazena pro elektroniku, PSU a pro předání řetězu, takže se ujistěte, že máte dostatek místa, abyste mohli umístit alespoň svůj projektový prostor s několika háčky, které jej obklopují.

Krok 3: Vrstva na polystyrenu

Toto je nejobtížnější a nejkreativnější krok, ale opravdu vytváříme něco solidního a trochu-sorta ve tvaru cloudu, na který přilepí LED pásek. Přilepte velké kusy polystyrenu na základnu (a pod ní) pomocí nízkého zahřátí na lepicí pistoli. Pokud nemáte nízké nastavení, vypněte tepelnou pistoli a nechte ji trochu vychladnout, než se pokusíte přilepit. Pokud je teplota příliš vysoká, jednoduše se roztavíte přes obalový materiál.

Před lepením dalšího kusu se ujistěte, že je každý kus pevný, a je nejlepší nalepit ho víc, než jen málo.

Nezapomeňte v cloudu ponechat dostatečně velkou dutinu, aby se vešly na elektroniku, řetěz a háčky.

Krok 4: Vyřezejte 3D cloudový tvar

Pomocí řezbářského nože upravte oblak zaokrouhlením rohů a odříznutím zbytečného materiálu, dokud nedosáhnete hrubého 3D tvaru mraku. Nezáleží na tom, jak je to drsné, protože vše zaplníme později - můžete snadno skrýt chyby.

Krok 5: Opravte háčky, uklidte

Nakonec připevněte tři nebo čtyři háčky k základně MDF zevnitř každého rohu dutiny mraku. Budete muset vyvrtat malý pilotní otvor, protože MDF je obtížné přišroubovat přímo do.

Také jsem dal všechno jednoduchý nátěr bílé barvy ve spreji, abych zajistil jednotný barevný základ, ale nejsem si jistý, zda to bylo skutečně nutné.

Krok 6: Lepení LED pásů

Než začnete nanášet lepidlo na LED diody, začněte buď od nového proužku, nebo si spočítejte, kolik LED diod máte celkem - budete muset zjistit, kolik jste už použili později v programovacím kroku. Vyřízněte malou díru na boku vašeho mraku a prohrábejte dráty, které tvoří začátek vašeho pruhu LED do dutiny mraku. Buďte velmi opatrní, že začínáte od správného konce - LED pásy jsou citlivé na směr, takže zajistěte, aby signální šipky směřovaly pryč od dutiny.

Při pomalé práci nalepte pixely LED na polystyrenovou základnu v kruhovém vzoru a poté stáhněte proužek dolů k základně, abyste zakryli spodní stranu. Opět - tady nemusíte být dokonalí, protože jakmile jsme všechno rozptýlili a ucpali ho nádivkou, vypadá to stejně ohromující.

Celkem jsem použil 85 LED, nebo něco přes 2,5 m, dvakrát jsem obklíčil hlavní tělo a použil jediný řetězec LED na spodní straně.

Krok 7: Schéma zapojení

Zapojení je složité, ale snadno rozdělitelné na sekce.

Nejprve zapojte a zajistěte napájecí zdroj, nejlépe v samostatném projektu. Nebudu vás přednášet o bezpečnosti živých střídavých vodičů, takže předpokládám, že zvládnete tuto část, a máte od ní 5V a GND linku.

DŮLEŽITÉ: při programování a testování Arduino by 5V z vašeho napájecího zdroje mělo zůstat izolované od Arduino (GND jsou však všechny připojené) - mělo by to být pouze napájení LED pásku, zatímco Arduino používá 5V dodávané přes USB. Po dokončení programování by mělo být USB odpojeno a již nebude poskytovat Arduino 5 V - v tomto bodě byste měli připojit 5 V z vašeho zdroje k 5 V kolejnici na levé straně prkénko.

Začněte připojením zemních a 5V kolíků z každého Arduina k levým postranním kolejnicím prkénko. Budou sdílet stejný zdroj napájení, ať už je to externí jednotka PSU nebo USB připojené k jednomu z nich.

Dále vyplňte sekci zapojení I2C - to umožňuje komunikaci našich dvou Arduinos. Vezměte kolíky A4 z obou Arduinos na jeden řádek na prkénku a poté připojte rezistor 2,2k z této řady k 5V kolejnici. Opakujte pro A5 a připojte je na samostatnou řadu, s dalším 2,2k rezistorem znovu na 5V.

Nejprve připojte IR přijímač - zkontrolujte konfiguraci pinů, pokud máte jiný model, ale v podstatě by signální pin měl jít na D11 na jednom Arduino. Nahrajte thundercloud_ir_receiver.ino náčrt k tomuto Arduino (zde všechen kód), poté odpojte USB, protože jej již nepotřebujeme.

Na druhém Arduinu připojte Data v signální pin od začátku LED pásku do D6. GND od vašich LED by měl být společný se všemi Arduiny, ale v tomto bodě 5V pochází přímo z PSU.

Také na tomto Arduino zapojte mikrofonní modul do A0. Nahrajte další thundercloud.ino náčrtu a udržujte USB připojený zatím, zatímco ladíte. Začněte změnou NUM_LEDS vhodně proměnná.

Krok 8: Lepení na výplň

Jako poslední krok nalepte na nádivku. Neexistuje žádná zvláštní technika - stačí nastrčit oblak vrstvou lepidla a chytit hrst nádivky. Je však snazší pracovat s nádivkou, pokud jste ji již škádlili, abyste zvětšili povrchovou plochu.

Pokud jste použili stejné dálkové ovládání jako já, tlačítko STROBE ho uvede do zvukového reaktivního cloudového režimu; FLASH je režim Trippy Color a FADE je pomalá vybledlá barevná náladová lampa.

Krok 9: Vysvětlení kódu

Proč dva Arduinos? Programování infračerveného přijímače i knihovna ovladačů pixelů WS2818B jsou velmi citlivé na načasování - pokud je načasování zpožděno, je infračervený signál poškozen. Tím, že každému obvodu poskytnete vlastní mikrořadič a necháte je mluvit protokolem I2C, můžeme zajistit, že na každém z nich bude perfektní načasování. Můžete také najít samostatné IR moduly s vestavěným vlastním mikroprocesorem, ale můj výzkum zjistil, že ty skutečně stojí víc než jednoduchý Arduino klon a IR LED. Thundercloud_ir_receiever by neměl vyžadovat vysvětlení, ale možná budete chtít nejdříve přečíst základy I2C.

Na hlavním ovladači blesku definujeme různé provozní režimy, například ZAP (bleskové efekty nejsou aktivovány zvukem), CLOUD (blesk je aktivován pouze zvukem), ACID (cloud zobrazuje trojité barvy) nebo jednoduché jednobarevné režimy. Chcete-li definovat nový režim, přidejte do výčet Nejprve otevřete konzolu a najděte tlačítko dálkového ovládání, na které se má namapovat - každý vzdálený stisk by měl vytisknout řádek ladění. V recipientEvent () metoda, zmapujeme tyto stisknutí kláves do režimu, takže tam přidáme další příkaz přepnutí. Konečně, hlavně smyčka() metoda tyto volby režimu nasměrujeme na různé funkce zobrazení.

Vyhlazovací kód mikrofonu je původně od Adafruit - zjednodušil jsem jej pro naše potřeby a přidal spoušť, když je slyšet hlasitější než průměrný šum.

Krok 10: Režimy blesku

Bleskové displeje kombinují tři různé “typy” blesku k dosažení něčeho dostatečně realistického nebo přinejmenším příjemného pro oko. První typ je crack(), kde se každá LED krátce rozsvítí na dobu 10 až 100 ms. Druhým typem je válcování () - kde každá LED má 10% šanci na aktivaci a celá smyčka se opakuje 2-10krát, s 5 až 100ms zpožděním mezi každým cyklem. Třetí typ je bouřka (), který vybírá dvě různé části proužku, každý mezi 10-20 LED, krátce zabliká tyto oddíly 3 až 6krát. Tyto metody podrobně prozkoumejte, abyste viděli, jak jsou jednotlivé LED aktivovány - barevné kolo HSV se používá po celou dobu (takže bílá je H = 0, S = 0, V = 255). Doporučuji vám vyladit nebo napsat nové blesky a poté je sdílet v komentářích, pokud se vám líbí.

Při každém spuštění blesku nebo spuštění smyčky se cloud náhodně vybere mezi třemi typy blesků. Nakonec reset () metoda vypne všechna světla, jinak budou “pamatovat” jejich předchozí stav.

Dotazy nebo problémy - prosím kontaktujte nás v komentářích a udělám vše pro to, abych vám pomohl. Pokud máte účet Github, můžete místo toho posílat chyby nebo problémy do sledování problémů. Pokud jste provedli nějaké změny nebo napsali nějaké nové světelné funkce, sdílejte prosím odkaz na svůj kód na Gist nebo Pastebin.




Bisher hat noch niemand einen Kommentar zu diesem Artikel abgegeben.

O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.