Obsah:

Ako postaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina: 7 krokov (s obrázkami)
Ako postaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina: 7 krokov (s obrázkami)

Video: Ako postaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina: 7 krokov (s obrázkami)

Video: Ako postaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina: 7 krokov (s obrázkami)
Video: Урок 68. Домашняя автоматизация: как управлять 16-канальным релейным модулем с помощью Arduino, управляя 16 нагрузками переменного тока. 2024, Júl
Anonim
Ako zostaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina
Ako zostaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina
Ako zostaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina
Ako zostaviť LED kocku 8x8x8 a ovládať ju pomocou Arduina

Jan 2020 upraviť:

Nechám to tak pre prípad, že by to niekto chcel použiť na vytváranie myšlienok, ale stavať kocku na základe týchto pokynov už nemá zmysel. Integrované obvody ovládačov LED sa už nevyrábajú a obe skice boli napísané v starých verziách Arduino a Processing a už sa nespúšťajú. Neviem, čo treba zmeniť, aby fungovali. Moja stavebná metóda tiež vyústila do nervózneho pokriveného neporiadku. Odporúčam postupovať podľa pokynov v inom pokyne alebo si kúpiť súpravu. Táto kocka stála v roku 2011 približne 50 dolárov, súpravu si môžete kúpiť na ebayi za približne 20 dolárov.

Pôvodný úvod:

Na Instructables je veľa LED kociek, tak prečo inú? Väčšina je pre malé kocky pozostávajúce z 27 alebo 64 LED diód, zriedka väčších, pretože sú obmedzené na počet výstupov dostupných na mikrokontroléri. Táto kocka bude mať 512 LED diód a bude potrebovať iba 11 výstupných vodičov z Arduina. Ako je to možné? Pomocou ovládača LED Allegro Microsystems A6276EA LED.

Ukážem vám, ako som vyrobil samotnú kocku, dosku ovládača a nakoniec kód, aby svietil.

Krok 1: Materiály

Materiály
Materiály

Všetky diely, ktoré budete potrebovať na stavbu kocky: 1 Arduino/Freeduino s čipom 512 LED s čipom Atmega168 alebo vyšším, veľkosť a farba sú na vás, na ovládanie toku napätia som použil 3mm červené 4 čipy LED A6276EA LED z tranzistorov Allegro 8 NPN „Použil som tranzistor BDX53B Darlington 4 odpory 1 000 ohmov, 1/4 W alebo vyššie 12 560 ohmov, odpory, 1/4 W alebo vyššie 1 330uF elektrolytický kondenzátor 4 24 -kolíková zásuvka IC 9 16 -pinová zásuvka IC 4„ x 4 “(alebo väčšia) kus perfboardu, do ktorého sa zmestia všetky diely, starý počítačový ventilátor, starý kábel disketového ovládača, starý napájací zdroj k počítaču, veľa prepojovacieho drôtu, spájky, spájkovačky, taviva, čohokoľvek iného, čo vám uľahčí život. 7 "x7" (alebo väčší) kus dreva použitého na výrobu LED spájkovacieho prípravku Pekným puzdrom na zobrazenie hotovej kocky My Arduino/Freeduino podľa výberu je doska Bare Bones Board (BBB) od www.moderndevice.com. LED diódy boli zakúpené prostredníctvom eBay a stáli 23 dolárov za 1 000 LED dodaných z Číny. Zostávajúca elektronika bola kúpená od spoločnosti Newark Electronics (www.newark.com) a mala by stáť iba okolo 25 dolárov. Ak musíte kúpiť všetko, tento projekt by mal stáť iba okolo 100 dolárov. Mám veľa starého počítačového vybavenia, takže tieto diely prišli zo šrotu.

Krok 2: Zostavte vrstvy

Zostavte vrstvy
Zostavte vrstvy
Zostavte vrstvy
Zostavte vrstvy
Zostavte vrstvy
Zostavte vrstvy
Zostavte vrstvy
Zostavte vrstvy

Ako vyrobiť 1 vrstvu (64 LED diód) z tejto 512 LED kocky: LED diódy, ktoré som kúpil, mali priemer 3 mm. Rozhodol som sa použiť malé diódy LED, aby som znížil náklady a aby bola konečná veľkosť kocky dostatočne malá na to, aby sedela na mojom stole alebo poličke bez toho, aby som úplne prevzal stôl alebo policu. Nakreslil som mriežku 8x8 s vzdialenosťou medzi riadkami približne 0,6 palca. To mi poskytlo veľkosť kocky okolo 4,25 palca na stranu. V miestach, kde sa čiary stretávajú, vyvŕtajte 3 mm otvory a vytvorte prípravok, ktorý bude držať LED pri spájkovaní každej vrstvy. A6276EA je súčasné drezové zariadenie. To znamená, že poskytuje cestu k zemi a nie cestu k zdrojovému napätiu. Kocku budete musieť postaviť v bežnej anódovej konfigurácii. Väčšina kociek je postavená ako bežná katóda. Dlhá strana LED diódy je spravidla anóda, uistite sa, že je na vašej. Prvá vec, ktorú som urobil, bolo otestovať každú LED diódu. Áno, je to dlhý a nudný proces a môžete ho preskočiť, ak chcete. Radšej by som strávil čas testovaním diód LED, ako by som mal nájsť mŕtve miesto v mojej kocke po jej zostavení. Našiel som 1 mŕtvu LED z 1000. Nie je to zlé. Odstrihnite 11 kusov pevného neizolovaného drôtu na 5 palcov. Vložte 1 LED na každý koniec radu vo vašom prípravku a potom spájkujte drôt ku každej anóde. Teraz umiestnite zvyšných 6 diód LED do radu a spájajte tieto anódy s drôtom. To môže byť vertikálne alebo horizontálne, na tom nezáleží, pokiaľ všetky vrstvy robíte rovnako. Keď dokončíte každý riadok, odstrihnite prebytočné olovo z anód. Nechal som asi 1/8 . Opakujte, kým nedokončíte všetkých 8 radov. Teraz spájajte 3 kusy zapojeného drôtu cez riadky, ktoré ste práve vytvorili, aby ste ich všetky spojili do jedného kusu. Potom som vrstvu otestoval pripojením 5 voltov. zapojte drôtovú mriežku cez odpor a dotknite sa uzemňovacieho vodiča ku každej katóde. Vymeňte všetky LED diódy, ktoré nesvietia. Opatrne odstráňte vrstvu z prípravku a odložte ju. Ak ohýbate drôty, nebojte sa, stačí narovnajte ich, ako len môžete. Je veľmi ľahké ich ohnúť. Ako môžete vidieť na mojich obrázkoch, mal som veľa ohnutých drôtov. Blahoželáme, máte hotovú 1/8. Vytvorte ďalších 7 vrstiev. VOLITEĽNÉ: Na spájkovanie vrstvy dohromady (krok 3) sú jednoduchšie, zatiaľ čo každá nasledujúca vrstva je stále v prípravku, ohnite horný štvrť palec katódy dopredu o 45 až 90 stupňov. To umožní olovu dosiahnuť okolo diódy LED, ku ktorej sa pripája, a bude veľmi spájkovať jednoduchšie. Nerobte to vo svojej prvej vrstve, vyhlásime, že jedna je spodná vrstva a zvody musia byť s traight.

Krok 3: Zostavte kocku

Zostavte kocku
Zostavte kocku
Zostavte kocku
Zostavte kocku

Ako spájkovať všetky vrstvy dohromady a vytvoriť kocku: Tvrdá časť je takmer na konci. Teraz opatrne vložte jednu vrstvu späť do prípravku, ale nevyvíjajte príliš veľký tlak, chceme byť schopní ju odstrániť bez ohýbania. Táto prvá vrstva je hornou stranou kocky. Na prvú položte ďalšiu vrstvu, zarovnajte vodiče a začnite spájkovať. Zistilo sa, že je najľahšie najskôr urobiť rohy, potom vonkajší okraj a potom vnútorné riadky. Pokračujte v pridávaní vrstiev, kým nebudete hotoví. Ak ste predohýbali zvody, uistite sa, že vrstvu uložíte rovnými zvodmi ako poslednú. Je to dno. Medzi každou vrstvou som mal príliš veľa priestoru, takže som nedostal tvar kocky. Nie je to nič vážne, môžem s tým žiť.

Krok 4: Zostavenie dosky ovládača

Budovanie riadiacej rady
Budovanie riadiacej rady
Budovanie riadiacej rady
Budovanie riadiacej rady
Budovanie riadiacej rady
Budovanie riadiacej rady

Ako zostavíte dosku ovládača a pripevníte ju k svojmu Arduinu: Postupujte podľa schémy a zostavte dosku, akú si vyberiete. Čipy ovládača som umiestnil do stredu dosky a pomocou ľavej strany držal tranzistory, ktorými sa riadi prúd, do každej vrstvy kocky, a pravou stranou som držal konektory, ktoré prechádzajú od čipov ovládača ku katódam LED stĺpce. Našiel som starý 40 mm počítačový ventilátor so zásuvkou molex, ktorá ho pripája k napájaniu počítača. Toto bolo perfektné Malé množstvo prúdu vzduchu cez čip je užitočné a teraz mám jednoduchý spôsob, ako poskytnúť 5 voltov čipom radiča a samotnému Arduinu. Na schéme je RC odpor obmedzujúci prúd pre všetky LED diódy pripojené ku každému A6276EA. Použil som 1 000 ohmov, pretože poskytuje 5 miliampérov LED, čo je dostatočné na jeho osvetlenie. Používam vysoký jas, nie diódy LED Super Brite, takže odtok prúdu je nižší. Ak svieti všetkých 8 diód LED v stĺpci naraz, je to iba 40 miliampérov. Každý výstup A6276EA zvládne 90 miliampérov, takže som v dosahu. RL je odpor pripojený k logickým alebo signálovým vodičom. Skutočná hodnota nie je veľmi dôležitá, pokiaľ existuje a nie je príliš veľká. Používam 560 ohmov, pretože som ich mal k dispozícii veľa. Na ovládanie prúdu prechádzajúceho do každej vrstvy kocky som použil výkonový tranzistor schopný zvládnuť až 6 ampérov. To je pre tento projekt prehnané, pretože každá vrstva kocky bude pri všetkých LED diódach čerpať iba 320 miliampérov. Chcel som, aby priestor rástol, a neskôr by som mohol použiť riadiacu dosku na niečo väčšie. Použite tranzistor akejkoľvek veľkosti, ktorý vyhovuje vašim potrebám. Kondenzátor 330 uF naprieč zdrojom napätia vám pomôže vyhladiť akékoľvek menšie kolísanie napätia. Pretože používam starý počítačový zdroj, nie je to potrebné, ale nechal som to len pre prípad, že by niekto chcel na napájanie svojej kocky použiť 5 -voltový nástenný adaptér. Každý čip radiča A6276EA má 16 výstupov. Nemal som žiadny iný vhodný konektor, a tak som spájkoval káble k nejakým 16 -pinovým zásuvkám IC a tie použijem na pripojenie dosky ovládača k kocke. Tiež som prerušil IC zásuvku na polovicu a použil som ju na pripojenie 8 drôtov, ktoré spájajú tranzistory s vrstvami kocky. Odrezal som asi 5 palcov od konca starého disketového kábla, ktorý som použil ako konektor pre Arduino. Disketový kábel je 2 rady po 20 pinoch, holá doska Bones má 18 pinov. Toto je veľmi lacný spôsob (bezplatný) na pripojenie Arduina k doske. V pásoch po 2 vodičoch som odtiahol stužkový kábel, odizoloval konce a spojil ich dohromady. To vám umožní zapojiť Arduino do ktoréhokoľvek radu konektora. Postupujte podľa schémy a spájkujte konektor na miesto. Nezabudnite spájkovať 5 voltové a uzemňovacie vodiče pre konektor, aby ste napájali Arduino. Mám v úmysle použiť túto dosku regulátora na iné projekty, takže modulárny dizajn pre mňa funguje dobre. Ak chcete prepojiť na tvrdo, je to v poriadku.

Krok 5: Zostavte vitrínu

Zostavte vitrínu
Zostavte vitrínu
Zostavte vitrínu
Zostavte vitrínu
Zostavte vitrínu
Zostavte vitrínu
Zostavte vitrínu
Zostavte vitrínu

Nech váš konečný produkt vyzerá pekne: Túto drevenú truhlicu som našiel v Hobby Lobby za 4 doláre a myslel som si, že by bola perfektná, pretože má vo vnútri priestor na uloženie celého drôtu a navyše vyzerá pekne. Zafarbil som túto červenú, rovnakú škvrnu, akú som použil na počítačový stôl, aby sa zhodovali. Na vrch nakreslite mriežku rovnakej veľkosti ako mriežku použitú na spájkovací prípravok (0,6 palca medzi riadkami). Vyvŕtajte otvory, aby sa zvody dostali zhora, a vyvŕtajte ďalší otvor za mriežkou pre vodiče vrstvy/roviny (z tranzistorov v kroku 4). Naučil som sa ťažko, že pokúšať sa zoradiť 64 vedení cez malé diery je veľmi ťažké. Nakoniec som sa rozhodol všetky otvory znova prevŕtať o niečo väčšie, aby proces prebiehal rýchlejšie. Nakoniec som použil asi vŕtačku.2. Teraz, keď kocka sedí na vrchu displeja, ohnite rohové vývody, aby kocka zostala na mieste, keď pripevníte drôty. Uistite sa, že ste pripevnili všetky vodiče v správnom poradí. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 A prepojte vodiče medzi vrstvami (na schéme označenými „roviny“) a tranzistormi. Tranzistor na pine Arduino 6 je horná vrstva kocky. Ak sa vám drôty zmýlia, je to v kóde trochu opraviteľné, ale môže to vyžadovať veľa práce, preto sa ich snažte zoradiť v správnom poradí. Dobre, všetko je pripravené a pripravené, získame kód a vyskúšame to.

Krok 6: Kód

Kód
Kód

Kód pre túto kocku sa robí inak ako väčšina, vysvetlím, ako sa prispôsobiť. Väčšina kódu kocky používa priame zápisy do stĺpcov. V kódexe je uvedené, že stĺpček X treba rozsvietiť, dajte mu teda šťavu a máme hotovo. To nefunguje, keď používate čipy radiča. Čipy regulátora používajú na komunikáciu s Arduino 4 vodiče: SPI-in, Clock, Latch a Enable. Uzemňovací kolík (kolík 21) som uzemnil cez odpor (RL), takže výstup je vždy povolený. Nikdy som nepoužil Enable, takže som ho vybral z kódu. SPI-in sú údaje z Arduina, hodiny sú časovacím signálom medzi nimi, keď rozprávajú, a západka hovorí ovládaču, že je čas prijať nové údaje. Každý výstup pre každý čip je riadený 16-bitovým binárnym číslom. Napríklad; odoslanie 1010101010101010 do ovládača by spôsobilo rozsvietenie všetkých ostatných LED diód na ovládači. Váš kód musí prejsť všetkým potrebným na zobrazenie, vytvoriť binárne číslo a potom ho odoslať na čip. Je to jednoduchšie, ako to znie. Technicky je to veľa pridávania bitov, ale ja som mizerný v bitovej matematike, takže robím všetko v desatinnom čísle. Desatinná hodnota pre prvých 16 bitov je nasledovná: 1 << 0 == 1 1 << 1 == 2 1 << 2 == 4 1 << 3 == 8 1 << 4 == 16 1 << 5 == 32 1 << 6 == 64 1 << 7 == 128 1 << 8 == 256 1 << 9 == 512 1 << 10 == 1024 1 << 11 == 2048 1 << 12 == 4096 1 << 13 == 8192 1 << 14 == 16384 1 << 15 == 32768To znamená, ak chcete rozsvieťte výstupy 2 a 10, sčítajte desatinné miesta (2 a 512) dohromady, aby ste získali 514. Pošlite 514 do regulátora a výstupy 2 a 10 sa rozsvietia. Ale máme viac ako 16 LED diód, takže je to o niečo ťažšie. Potrebujeme vybudovať zobrazovacie informácie pre 4 čipy. Je to také ľahké ako postaviť to na 1, urobte to ešte 3 -krát. Na uchovávanie riadiacich kódov používam pole globálnych premenných. Je to tak jednoduchšie. Keď budete mať pripravené všetky 4 kódy na odoslanie, zrušte západku (nastavte ju na NÍZKU) a začnite kódy odosielať. Posledný musíte odoslať. Odošlite kódy pre čip 4, potom 3, potom 2, potom 1 a potom znova nastavte západku na HIGH. Pretože je kolík Enable vždy pripojený k zemi, displej sa okamžite zmení. Väčšina kódu kocky, ktorý som videl na stránke Instructables, a na webe všeobecne, pozostáva z obrovského bloku sady kódov na vykonávanie vopred nastavenej animácie. To funguje dobre pre menšie kocky, ale potreba uložiť, čítať a odosielať 512 bitov binárnych súborov vždy, keď chcete zmeniť zobrazenie, zaberá veľa pamäte. Arduino nezvládlo viac ako niekoľko snímok. Preto som napísal niekoľko jednoduchých funkcií, ktoré majú ukázať kocku v akcii a ktorá sa spolieha skôr na kalkuláciu, ako na vopred nastavené animácie. Priložil som malú animáciu, ktorá ukazuje, ako sa to robí, ale nechám na vás, aby ste si vytvorili vlastné displeje. Cube8x8x8.pde je kód Arduino. Plánujem pokračovať v pridávaní funkcií do kódu a program budem pravidelne aktualizovať. Matrix8x8.pde je program v programe Processing na vytváranie vlastných obrazoviek. Prvé uvedené číslo ide do vzoru1 , druhé do vzoru2 atď. List s technickými údajmi pre A6276EA je dostupný na:

Krok 7: Zobrazte svoju ručnú prácu

Ukážte svoju ručnú prácu
Ukážte svoju ručnú prácu

Hotovo, teraz je čas vychutnať si svoju kocku. Ako vidíte, moja kocka vyšla trochu pokrivená. Nechcem však veľmi stavať ďalšiu, takže budem žiť tak, aby bola pokrivená. Mám pár mŕtvych miest, na ktoré sa musím pozrieť. Môže to byť zlé pripojenie, alebo budem potrebovať nový čip radiča. Dúfam, že vás tento návod inšpiruje k zostaveniu vlastnej kocky alebo iného projektu LED pomocou A6276AE. Pošlite odkaz do komentárov, ak ho vytvoríte. Pokúšal som sa rozhodnúť, kam ísť odtiaľto. Doska ovládača bude ovládať aj kocku RGB 4x4x4, takže je to možné. Myslím si, že by bolo úhľadné urobiť sféru a spôsob, akým mám kód napísaný, by nebolo príliš ťažké urobiť.

Odporúča: