Kazalo:

LED kocka 4x4x4: 11 korakov (s slikami)
LED kocka 4x4x4: 11 korakov (s slikami)

Video: LED kocka 4x4x4: 11 korakov (s slikami)

Video: LED kocka 4x4x4: 11 korakov (s slikami)
Video: 4x4x4 LED Cube using Arduino 2024, Julij
Anonim
LED kocka 4x4x4
LED kocka 4x4x4
LED kocka 4x4x4
LED kocka 4x4x4
LED kocka 4x4x4
LED kocka 4x4x4

Neverjeten tridimenzionalni LED zaslon. 64 LED diod sestavlja to kocko 4 x 4 x 4, ki jo upravlja mikrokontroler Atmel Atmega16. Vsako LED lahko individualno naslovimo v programski opremi, kar ji omogoča prikaz neverjetnih 3d animacij! 8x8x8 LED kocka je zdaj na voljo po priljubljenem povpraševanju:

1. korak: Kaj potrebujete

Kaj rabiš
Kaj rabiš

Najprej potrebujete kar nekaj časa, da skupaj spajate 64 LED;) Seznam znanja:

  • Osnovne veščine elektronike in spajkanja
  • Znati programirati mikrokrmilnik AVR - tega ne bom obravnaval v tem navodilu.

Seznam komponent:

  • Protoboard. Tip z bakrenimi krogi.
  • Atmel AVR mikrokrmilnik Atmega16
  • Programer za programiranje Atmega16
  • 64 LED
  • 2 LED indikatorja stanja. Uporabil sem rdečo in zeleno. (neobvezno)
  • Max232 čip rs-232 ali enakovreden.
  • 16 uporov za svetleče diode. (100-400 ohmov) se bomo k temu vrnili.
  • 2x upor 470 ohm. za statusne lučke
  • 1x upor 10k
  • 4x upor 2.2k
  • 4x NPN tranzistor BC338 (ali drug tranzistor, ki lahko preklopi 250 mAh mA)
  • 1x 10uF kondenzator
  • 1x 1000uF kondenzator
  • 6x 0,1uF keramični kondenzator
  • 2x 22pF keramični kondenzator
  • 1x kristal 14,7456 MHz
  • 2x taktilni gumb
  • izbirno stikalo pwr
  • priključek za 12v napajanje
  • izbirni priključek za napajanje 5 V.

2. korak: Multipleksiranje

Multipleksiranje
Multipleksiranje
Multipleksiranje
Multipleksiranje

Kako upravljati 64 LED brez uporabe 64 posameznih žic? Multipleksiranje!

Ožičenje žice do anode vsakega vodnika bi bilo očitno nepraktično in bi izgledalo zelo slabo. Eden od načinov, kako to rešiti, je razdelitev kocke na 4 plasti LED 16x16. Vse LED diode, poravnane v navpičnem stolpcu, imajo skupno anodo (+). Vse LED diode na vodoravnem sloju imajo skupno katodo (-). Zdaj, če želim prižgati LED v zgornjem levem kotu zadaj (0, 0, 3), samo dobavim GND (-) v zgornjo plast in VCC (+) v stolpec v levem kotu. Če želim osvetliti samo eno LED naenkrat ali pa osvetliti več kot eno plast hkrati.. to deluje v redu. Če pa želim osvetliti tudi spodnji desni kot spredaj (3, 3, 0), naletim na težave. Ko napajam GND v spodnjo plast in VCC v sprednji levi stolpec, prižgem tudi zgornji desni vodnik spredaj (3, 3, 3) in spodnjo levo LED zadaj (0, 0, 0). Tega učinka duha ni mogoče rešiti brez dodajanja 64 posameznih žic. Način, kako se izogniti temu, je, da osvetlite le eno plast naenkrat, vendar to storite tako hitro, da oko ne zazna, da je prižgana le ena plast. To se opira na pojav, imenovan vztrajnost vizije. Vsak sloj je slika 4x4 (16). Če utripamo 4 16 LED slik eno za drugo, zelo hitro, dobimo 3d sliko 4x4x4!

3. korak: Izdelava kocke, predloga

Izdelava kocke, predloga
Izdelava kocke, predloga
Izdelava kocke, predloga
Izdelava kocke, predloga
Izdelava kocke, predloga
Izdelava kocke, predloga

Spajkalne mreže 4x4 LED prostoročno bi bile videti grozno! Da bi dobili 4 popolne 4x4 mreže LED, jih uporabljamo s predlogo, da jih držimo na svojem mestu. Želel sem narediti kocko čim lažje, zato sem se odločil za uporabo LED čim več lastnih nog. Razdalja med črtami v mreži je določena z dolžino LED nog. Ugotovil sem, da je 25 mm (približno palec) optimalna razdalja med vsakim vodnikom (med središčem vsakega vodila, to je!), Da omogoči spajkanje brez dodajanja ali rezanja žice.

  • Poiščite kos lesa, ki je dovolj velik, da na njem naredite mrežo 4x4 velikosti 2,5 cm.
  • Narišite mrežo črt 4x4.
  • Na vseh križiščih naredite vdolbine s sredinskim udarcem.
  • Poiščite sveder, ki naredi luknje dovolj majhne, da bo vodnik trdno ostal na svojem mestu, in dovolj velik, da ga lahko enostavno izvlečete (brez upogibanja žic..).
  • Izvrtajte 16 lukenj.
  • Vaša predloga ledcube je narejena.

4. korak: Izdelava kocke, spajkajte plasti

Izdelava kocke, spajkanje plasti
Izdelava kocke, spajkanje plasti
Izdelava kocke, spajkanje plasti
Izdelava kocke, spajkanje plasti
Izdelava kocke, spajkanje plasti
Izdelava kocke, spajkanje plasti

Kocko naredimo v 4 plasteh 4x4 svetlečih diod, nato jih spajkamo. Ustvarite plast:

  • LED diode vstavite vzdolž hrbta in vzdolž ene strani ter jih spajajte skupaj
  • Vstavite drugo vrsto LED in jih spajajte skupaj. Naredite eno vrstico naenkrat, da pustite spajkalnik!
  • Zgornji korak ponovite še 2 -krat.
  • dodajte navzkrižne opore spredaj, kjer vodilne vrstice niso povezane.
  • Ponovite 4 -krat.

5. korak: Izdelava kocke, povezovanje plasti

Izdelava kocke, povezovanje plasti
Izdelava kocke, povezovanje plasti
Izdelava kocke, povezovanje plasti
Izdelava kocke, povezovanje plasti
Izdelava kocke, povezovanje plasti
Izdelava kocke, povezovanje plasti

Zdaj, ko imamo te 4 plasti, jih moramo le spajati skupaj.

En sloj nazaj v predlogo. To bo zgornja plast, zato izberite najlepšo:) Na vrh položite drugo plast in poravnajte enega od vogalov točno 25 mm (ali kar koli razdaljo, ki ste jo uporabili v mreži) nad prvo plastjo. To je razdalja med katodnimi žicami. Z roko za pomoč držite vogal na mestu in spajkajte vogalno anodo prve plasti na vogalno anodo druge plasti. Naredite to za vse vogale. Preverite, ali so plasti popolnoma poravnane v vseh dimenzijah. Če se ne malo upognite, da se prilagodite. Ali pa ponovno spajkajte njegovo višinsko razdaljo. Ko sta popolnoma poravnani, preostalih 12 anod spajta skupaj. Ponovite 3 -krat.

6. korak: Izbira vrednosti upora

Izbira vrednosti upora
Izbira vrednosti upora
Izbira vrednosti upora
Izbira vrednosti upora

Pri izbiri vrednosti upora za vaše LED diode morate upoštevati dve stvari.

1) LED diode 2) AVR AVR ima največji kombinirani tok 200 mA. To nam daje 12 mA za delo na LED. Prav tako ne želite preseči največjega toka, na katerega so ocenjene vaše LED diode. Na svoji kocki sem uporabil 220 ohmske upore. To mi je dalo približno 12mA na led.

7. korak: Krmilnik

Krmilnik
Krmilnik
Krmilnik
Krmilnik
Krmilnik
Krmilnik

Vezja, ki nadzorujejo led kocko, so opisana na priloženi shematski sliki.

Vmesnik RS-232 ni obvezen. in se lahko izpusti. To je IC2 in vse komponente, povezane z njim. Prihodnja vdelana programska oprema bo omogočila komunikacijo z osebnim računalnikom. Začnite tako, da vse komponente na svojem vezju postavite v postavitev, ki omogoča, da se vse komponente povežejo z minimalno količino žic. Če vse ustreza, spajkajte vezje. O tem ne bom dal več navodil, saj bo vezje verjetno zelo različno od kocke do kocke, odvisno od velikosti tiskanega vezja itd. Informacije o tem, kako kocko priključiti na vezje krmilnika, so v naslednji korak.

8. korak: Povežite kocko

Ožičite kocko
Ožičite kocko
Ožičite kocko
Ožičite kocko
Ožičite kocko
Ožičite kocko

Slike to razlagajo bolje kot besede. Oglejte si slike.

9. korak: Prevedite in programirajte

Zdaj imate led kocko. Če ga želite uporabiti, potrebuje nekaj programske opreme. Naredil sem gonilnik za upodabljanje 3D podatkovnega prostora na kocki in funkcije za prikaz nekaterih kul vizualnih učinkov na kocki. Uporabite lahko mojo kodo, napišete svojo ali nadgradite mojo kodo in naredite več učinkov. Če ustvarite svoje učinke, mi pošljite kodo. Vesel sem, da vidim, kaj boste naredili, da sestavim program. Odprite ukazno vrstico, v ukazno vrstico vnesite imenik z izvorno kodo vrste "make". Če želite namesto ATMega16 uporabiti ATMega32, preprosto spremenite nastavitev mcu v datoteki Makefile in znova prevedite (vnesite make). Če uporabljate m32 in tega ne storite, se kocka ne bo pravilno zagnala (rdeča in zelena lučka bosta ves čas utripala). V izvornem imeniku bi morali imeti datoteko z imenom main.hex. vam bo pokazal, kako vnesite to kodo v svojo kocko.

10. korak: Programirajte mikrokrmilnik

Programirajte mikrokrmilnik
Programirajte mikrokrmilnik
Programirajte mikrokrmilnik
Programirajte mikrokrmilnik
Programirajte mikrokrmilnik
Programirajte mikrokrmilnik

Če imate težave s hitrostjo in/ali nekatere LED ne svetijo. Pozorno preberite ta korak. Za programiranje mikrokrmilnika uporabljam avrdude in programer USBTinyISP.

  • https://savannah.nongnu.org/projects/avrdude/
  • https://www.ladyada.net/make/usbtinyisp/
  • https://www.adafruit.com/index.php?main_page=index&cPath=16

Moji primeri bodo v sistemu Ubuntu Linux. Postopek bi moral biti precej enak v sistemu Windows, vendar vam pri tem ne morem pomagati. Če uporabljate drugega programerja, preberite priročnik za tega programatorja in avrdude. Najprej poglejmo, ali lahko vzpostavimo stik z AVR -jem. Povežite programer z vašo kocko in računalnikom. Ukaz je "avrdude -c usbtiny -p m16 ", kjer -c določa programerja, in -p model AVR. Rezultat si lahko ogledate na spodnjih slikah. Zdaj naložite vdelano programsko opremo: "avrdude -c usbtiny -p m16 -U flash: w: main.hex". Deloval bo pri 1 MHz (zelo počasi) z notranjim oscilatorjem. Nekatere LED diode ne bodo delovale, ker se nekatera vrata GPIO privzeto uporabljajo za JTAG. Če želimo omogočiti zunanji oscilator in onemogočiti JTAG, moramo programirati bajte varovalk: run "avrdude -c usbtiny -p m16 -U lfuse: w: 0xef: m "in" avrdude -c usbtiny -p m16 -U hfuse: w: 0xc9: m ". Pri tem koraku bodite previdni! Če se zmotite, lahko svoj mikrokrmilnik trajno uničite! Če uporabljate drug mikrokrmilnik, kot je ATMega16, pred spreminjanjem bajtov varovalk natančno preberite podatkovni list! Po vnosu pravilnih bajtov varovalk se mora kocka znova zagnati in začeti delovati z običajno hitrostjo z vsemi LED diodami. Uživajte v svoji novi kocki: D

11. korak: Pojdi na veliko - 8x8x8

Pojdi na veliko - 8x8x8
Pojdi na veliko - 8x8x8
Pojdi na veliko - 8x8x8
Pojdi na veliko - 8x8x8
Pojdi na veliko - 8x8x8
Pojdi na veliko - 8x8x8
Pojdi na veliko - 8x8x8
Pojdi na veliko - 8x8x8

Potem, ko sem naredil to domiselno kocko 4x4x4, sem naredil tudi ogromno kocko 8x8x8. Ko bom imel čas, bom za to naredil navodila. Medtem si oglejte slike:-)

Različico 8x8x8 najdete tukaj: https://www.instructables.com/id/Led-Cube-8x8x8/ Če vam je všeč, ocenite to navodilo!:)

Priporočena: