reklama

Vánoce jsou tu znovu, a ať už je to váš oblíbený svátek roku nebo vás přivede do studeného potu, dekorace začínají stoupat. V letošním roce, proč nezačlenit do svých dekorací nějakou technologii pro kutily, aby byly vynikající

V tomto projektu postavíme odolnou, pohybově aktivovanou 8 x 8 LED matici od nuly... za méně než 20 $. Je navržen tak, aby se vešel do středu standardního vánočního věnce dveří, ale mohl být použit kdekoli v domě. A protože je napájen z baterie, kdekoli mimo dům!

Seznam dílů

Pro tento projekt budete potřebovat:

  • Arduino.
    • Použil jsem Nano pro svou malou velikost, ale můžete použít téměř cokoli Mikrokontrolér kompatibilní s Arduino Průvodce nákupem Arduina: Kterou desku byste měli získat?Je tam tolik různých druhů desek Arduino, bylo by vám odpuštěno, že jste zmatení. Které byste si měli koupit pro svůj projekt? Pomozte nám s tímto průvodcem nákupem Arduino! Přečtěte si více .
  • 64 x červené LED diody.
  • Rezistory 8 x 220 Ohm.
  • Pohybový senzor PIR.
    • Mnoho Arduino startovací soupravy
      instagram viewer
      Co je součástí sady Arduino Starter Kit? [MakeUseOf vysvětluje]Předtím jsem zde na MakeUseOf představil open-source hardware Arduino, ale potřebujete něco víc než jen skutečného Arduina, abyste z něj něco vytvořili a mohli začít. Arduino "startovací sady" jsou ... Přečtěte si více pojďte s nimi. Koupil jsem si multi-pack od Amazon za 10 $.
  • 1 kus prototypová deska.
    • Zde použitý byl 9 x 7 cm, ale můžete použít libovolnou velikost.
  • Baterie 7-12V.
    • Jednoduchá baterie se zde používá z rozpočtových důvodů, ale mobilní bankovní nabíječka Nejlepší Pokemon Go Power BankPokemon Go bije sakra z baterie telefonu. Vytlačení trochu více šťávy z Pokémonu z telefonu vyžaduje energetickou banku. Ale co je nejlepší baterie venku? Přečtěte si více může trvat i déle.
  • Rozmanité krátké kousky drátu.
  • Tupperwarová krabička nebo podobný kryt odolný proti povětrnostním vlivům.
    • Ujistěte se, že bude dostatečně velký, aby se vešly všechny vaše součásti dovnitř!
  • Vánoční věnec.
    • Kdokoli udělá, jen se ujistěte, že krabička se do ní vejde.
  • Páječka a pájka.

I když to není nezbytně nutné, protože jste mohli komponenty pájet přímo na Nano, při testování jsem také zjistil, že je velmi užitečná malá prkénko. Horká lepicí pistole také pomáhá při sestavování všech částí dohromady.

části matice vedené vánoční věnec

Tento projekt vyžaduje hodně pájení a jako začátečník se může zdát skličující. Osobně jsem stále velmi začátečníkem v pájení a zjistil jsem, že to není tak náročné nebo časově náročné, jak se zdá. Pokud jste také pájení zde, některé jsou některé dobré tipy na pomoc Naučte se pájet pomocí těchto jednoduchých tipů a projektůJste trochu zastrašeni myšlenkou na horké železo a roztavený kov? Pokud chcete začít pracovat s elektronikou, musíte se naučit pájet. Pomozte nám. Přečtěte si více .

Pokud si opravdu nepřejete myšlenku pájení, je tento projekt možný také LED pásky Víkendový projekt: Vytvořte obří LED pixelový displejMiluji LED pixely: jasný, snadno ovladatelný, levný a tak všestranný. Dnes je proměníme v velký pixel displej, který lze zavěsit na zeď. Přečtěte si více nebo hotová matice LED, kterou můžete mít ve své startovací sadě. Pokud se rozhodnete jít touto cestou, budou nutné některé úpravy kódu.

Nastavení Arduino

Začneme schématem zapojení Arduino a vodičů, které připojíme k našemu PIR senzoru a LED matici.

věnec fritzing

Uvnitř Matice

Nyní vytvořte naši matici 8 x 8 LED. Je dobré začít s vytvářením jednoho řádku a jednoho sloupce matice, abyste se ujistili, že je přesně tam, kde je chcete na prototypovací desce.

testování, kam dát led

Na výše uvedené fotografii jsou všechny LED diody umístěny tak, aby anody (delší, pozitivní rameno) směřovaly k horní části protoboardu. To je důležité, protože vytváříme sloupce společných anod jejich spojením a řady společných katod (kratší, záporná noha). Získání tohoto právě teď ušetří bolesti hlavy později!

Budeme stavět společnou matici katodových řad, tento diagram ukazuje, jak je vše propojeno.

dvojitá diag

Zpočátku to může vypadat trochu skličující, ale je to docela jednoduchá konfigurace. V každé řadě jsou všechny katody spojeny zprava doleva a poté připojeny k jednomu z našich Arduino pinů. Poté uděláme totéž pro každý sloupec anod. Tímto způsobem, v závislosti na tom, na který sloupec aplikujeme energii, a na které řadě se připojíme k zemi, můžeme zapnout jakoukoli jednotlivou LED v poli.

Nechte pájení začít

Začněte umístěním první řady LED. Ujistěte se, že všechny anody směřují nahoru a otočte je. Zjistil jsem, že přidání další LED v každém rohu a připojení dalšího kusu protoboardu nahoře pomocí elastického kabelu pomohlo udržet vše na místě.

proto elastický

Nyní jeden po druhém ohýbejte katodové (krátké) rameno každé LED diody doleva, aby se všechny navzájem překrývaly. Nejjednodušší je začít zleva a pracovat vpravo. Pokud používáte větší kus protoboardu, můžete je nejprve připájet k desce a pomocí podložek je spojit dohromady. Dávejte pozor, abyste se nepřipojili k žádné katodě k žádným jiným čarám na desce ani k žádné z anod!

pájecí katodová záhyb

Tento postup opakujte pro všech osm řádků a až budete hotovi, měli byste mít něco, co vypadá takto:

obrázek hotových řádků

Skákající anody!

Sloupce anod jsou trochu chmurnější. Ve výše uvedeném diagramu jsou anodové křivky pokaždé, když procházejí řadou katod. Je to proto, že se nemohou vůbec dotýkat řádků. Musíme ohnout anody přes řady katod a připojit je k sobě. Možná zjistíte, že používání pera k ohnutí nohou hodně pomáhá.

Ben pájecí anody

Udělejte to pro každou řadu anod a ke každé horní anodě připojte odpor. Pravděpodobně bude snazší vložit odpor do další díry v protoboardu a připojit se k podložkám pomocí pájky. Nyní byste měli mít něco takového:

dokončeno pájení

Gratulujeme! Matice LED je kompletní. V této fázi pečlivě zkontrolujte pájení, abyste se ujistili, že nedochází k přerušení a že žádný ze sloupců se nedotýká řádků. Nedělejte si starosti, pokud to nevypadá hezky, potřebujeme, aby to fungovalo! Nyní můžete každou LED diodu zkontrolovat jednotlivě připojením 5V k některému z konců sloupce a uzemnění k některému z konců řádku.

testovací matice

Pokud je vše v pořádku, připojte vodiče ke každému sloupci a každé řadě a připojte je k Arduinu, jak je znázorněno na obrázku výše.

Pojďme si kódovat

Otevřete Arduino IDE a vyberte si svou desku a port. Pokud jste pro Arduino nováčkem, podívejte se na toto úvodní průvodce. Začínáme s Arduino: Příručka pro začátečníkyArduino je platforma s otevřeným zdrojovým kódem elektroniky založená na flexibilním, snadno použitelném hardwaru a softwaru. Je určen pro umělce, designéry, fandy a kohokoli, kdo má zájem o vytváření interaktivních objektů nebo prostředí. Přečtěte si více

Zadejte tento kód do editoru. Je to docela hustý kód, pokud s ním neznáte, ale je k dispozici tady plně anotován, aby pomohl pochopit, jak to funguje.

řádek int int [8] = {2,3,4,5,6,7,8,9}; const int col [8] = {10,11,12,14,15,16,17,18}; int pirPin = 19; int pirState = LOW; int val = 0; bool pirTrigger = false; const int pirLockTime = 12000; int pirCountdown = pirLockTime; int pixelů [8] [8]; const int refreshSpeed ​​= 500; int countDown = refreshSpeed; int currentCharIndex = 0; typedef bool CHAR_MAP_NAME [8] [8]; const CHAR_MAP_NAME blank = {{0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, }; const CHAR_MAP_NAME threedownthreein = {{0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 1, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, }; const int noOfFrames = 5; const CHAR_MAP_NAME * charMap [noOfFrames] = { & blank, & threedownthreein, & blank, & blank, & threedownthreein. }; void setup () {for (int i = 0; i <8; i ++) {pinMode (řádek [i], OUTPUT); pinMode (col [i], OUTPUT); // pohybový senzor pinMode (pirPin, INPUT); digitalWrite (sloupec [i], LOW); } } void screenSetup () {const CHAR_MAP_NAME * thisMap = charMap [currentCharIndex]; pro (int x = 0; x <8; x ++) {pro (int y = 0; y <8; y ++) {bool on = (* thisMap) [x] [y]; if (on) {pixels [x] [y] = HIGH; } else {pixels [x] [y] = LOW; }}} currentCharIndex ++; if (currentCharIndex> = noOfFrames) {currentCharIndex = 0; }} voidreshScreen () {for (int currentRow = 0; currentRow <8; currentRow ++) {digitalWrite (řádek [currentRow], LOW); pro (int currentCol = 0; currentCol <8; currentCol ++) {int thisPixel = pixely [currentRow] [currentCol]; digitalWrite (col [aktuálníCol], thisPixel); if (thisPixel == HIGH) {digitalWrite (col [currentCol], LOW); }} digitalWrite (řádek [currentRow], HIGH); }} void loop () {val = digitalRead (pirPin); if (val == HIGH) {pirTrigger = true; } jinak pokud (val == LOW && pirCountdown <= 0) {pirTrigger = false; pirCountdown = pirLockTime; } if (pirTrigger == true && pirCountdown> 0) {refreshScreen (); odpočítávání--; pirCountdown--; if (countDown <= 0) {countDown = refreshSpeed; screenSetup (); } } }

Důležité části, kterým je třeba porozumět, jsou:

refreshSpeed proměnná. Tato proměnná určuje, jak se obnovuje čas mezi jednotlivými obrazovkami. Větší počet znamená delší čekání.

Konst CHAR_MAP_NAMEs. Zde můžete umístit každou mapu znaků (nebo snímek, pokud je na ně snadnější pomyslet), který chcete zobrazit.

noOfFrames proměnná. To určuje, kolik snímků se zobrazí v jedné plné hře. Všimněte si, že se může lišit od počtu map znaků. Pokud například chcete zobrazit „KATEGORIE“, musíte definovat pouze čtyři odlišné snímky: prázdné, an A, a C a T.

Nyní, když snímač pohybu detekuje pohyb, by měla LED obrazovka blikat LED tři dolů a tři dovnitř zleva nahoru. Pokud se nezobrazí správně, znovu zkontrolujte zapojení a ujistěte se, že je vše na správném místě! Když přidáte svůj vlastní obrázek nebo zprávu, může se brzy odříznout nebo hrát příliš dlouho. Zkuste změnit pirLockTime proměnná, dokud nebude hrát po dobu, kterou chcete.

Proces přidání každého snímku na LED displej může být trochu únavný, takže jsme vytvořili tuto tabulku zjednodušit vytváření textu a obrázků pro matici LED (vytvořte kopii listu Google, abyste ji mohli upravovat).

Pomocí tabulky můžete kopírovat své výtvory přímo do kódu.

Ať je to statečný prvky

Nyní, když máme funkční LED matici, potřebujeme způsob, jak přežít zimní počasí. I když tato metoda nemusí obstát v tropické bouři nebo být namočena v bazénu, mělo by stačit, aby veškerá elektronika byla chráněna před živly.

Použil jsem kulatou krabici Tupperware, která má průměr 15 cm a hloubku 6 cm, protože perfektně pasuje na mé součásti. Vyřízněte okno ve víku o něco větší než vaše matice LED a připojte k němu čirou plastovou fólii. Nezapomeňte tak nechat žádný prostor pro tekutinu. Robustní plast z některých obalů by fungoval nejlépe, ale tohle bylo všechno, co jsem měl. Mohli byste také připojit několik úchytů pro protoboard, i když obě práce lze snadno provést pomocí silné nepromokavé pásky.

důkaz počasí

Dále pod oknem vytvořte malou díru, poté ji opatrně a pomalu rozšiřujte, až se váš senzor PIR pouze projde. Chcete, aby se vešly co nejpříjemněji.

vyříznutá díra

Připojte PIR senzor a vyplňte všechny mezery, které vidíte, pomocí pásky nebo horkého lepidla.

lepidlo pir

Vyčistěte veškerou pásku nebo lepidlo, které by mohlo zabránit správnému zavření krabičky, a do krabice přidejte všechny své komponenty spolu s baterií. Zde se použila jednoduchá baterie AA připojená přímo do VCC kolíku Nano. Na vnější stranu pouzdra bylo přidáno několik malých kusů korku, které pomáhaly při zavěšení stavby ve středu věnce.

A my jsme hotovi

Jakmile je krabice zapečetěna, zavěste ji vánočním věncem a počkejte, až vaši návštěvníci reagují na vaše high-tech sub $ 20 osobní přivítání! Mohli byste dokonce jít o krok dále a vytvořit úžasné DIY dekorace Vánoční dekorace pro tištěné prázdninyProč si ušetřit nějaké peníze na Vánoce a 3D tisknout nějaké slavnostní ozdoby pro váš domov? Přečtěte si více pro všude kolem domu taky!

hotové led matice vánoční věnec diy

V tomto projektu jsme vybudovali samostatný LED maticový systém od nuly, který je aktivován pohybem a může přežít venku mimo vše kromě nejvíc nepříznivého počasí. Tato sestava bude užitečná dlouho poté, co skončí prázdninová sezóna v jiných projektech, a stejnou techniku ​​by bylo možné použít k vytvoření levných krabic odolných proti povětrnostním vlivům i pro jiné projekty.

Postavili jste něco, abyste svým svátkům udělali zkroucení? Plánujete letos nějaké vánoční dárky s tématem pro kutily? Dejte nám vědět v komentářích níže!

Ian Buckley je nezávislý novinář, hudebník, performer a video producent žijící v Berlíně v Německu. Když nepíše nebo na jevišti, pohrává si s elektronikou pro kutily nebo kódem v naději, že se stane šíleným vědcem.