Sisällysluettelo:

Kuinka rakentaa 8x8x8 LED -kuutio ja ohjata sitä Arduinolla: 7 vaihetta (kuvilla)
Kuinka rakentaa 8x8x8 LED -kuutio ja ohjata sitä Arduinolla: 7 vaihetta (kuvilla)

Video: Kuinka rakentaa 8x8x8 LED -kuutio ja ohjata sitä Arduinolla: 7 vaihetta (kuvilla)

Video: Kuinka rakentaa 8x8x8 LED -kuutio ja ohjata sitä Arduinolla: 7 vaihetta (kuvilla)
Video: How to use 2 channel relay to control AC and DC loads in Arduino 2024, Heinäkuu
Anonim
Kuinka rakentaa 8x8x8 LED -kuutio ja hallita sitä Arduinolla
Kuinka rakentaa 8x8x8 LED -kuutio ja hallita sitä Arduinolla
Kuinka rakentaa 8x8x8 LED -kuutio ja hallita sitä Arduinolla
Kuinka rakentaa 8x8x8 LED -kuutio ja hallita sitä Arduinolla

Tammikuu 2020:

Jätän tämän väliin, jos joku haluaa käyttää sitä ideoiden luomiseen, mutta ei ole enää mitään järkeä rakentaa kuutiota näiden ohjeiden perusteella. LED -ohjainpiirejä ei enää valmisteta, ja molemmat luonnokset on kirjoitettu vanhoissa Arduino- ja Processing -versioissa, eikä niitä enää suoriteta. En tiedä mitä pitäisi muuttaa, jotta ne toimisivat. Myös rakentamistapani johti epämiellyttävään epäsäännölliseen sotkuun. Ehdotan, että noudatat toisen ohjeen ohjeita tai ostat sarjan. Tämä kuutio maksoi noin 50 dollaria vuonna 2011, voit ostaa sarjan ebaystä noin 20 dollarilla nyt.

Alkuperäinen johdanto:

Instructablesissa on paljon LED -kuutioita, joten miksi tehdä toinen? Useimmat ovat pieniä kuutioita, jotka koostuvat 27 tai 64 LEDistä, harvoin suurempia, koska ne rajoittuvat mikrokontrollerissa käytettävissä olevien lähtöjen määrään. Tämä kuutio on 512 LEDiä ja tarvitsee vain 11 lähtöjohtoa Arduinolta. Kuinka tämä on mahdollista? Käyttämällä Allegro Microsystems A6276EA LED -ohjainta.

Näytän sinulle, miten tein itse kuution, ohjainkortin ja lopulta koodin, joka saa sen loistamaan.

Vaihe 1: Materiaalit

Materiaalit
Materiaalit

Kaikki osat, jotka tarvitset kuution rakentamiseen: 1 Arduino/Freeduino, jossa on Atmega168 tai uudempi siru 512 LEDiä, koko ja väri ovat sinun valintasi, käytin 3 mm: n punaista 4 A6276EA -LED -ohjainsirua Allegro 8 NPN -transistoreista ohjaamaan jännitteen virtausta, Käytin BDX53B Darlington -transistoria 4100 ohmin vastuksia, 1/4 wattia tai enemmän 12560 ohmin vastuksia, 1/4 wattia tai enemmän 1330uF elektrolyyttikondensaattoria 4 24 -nastaista IC -liitäntää 9 16 -nastaista IC -liitäntää 4 "x4" (tai suurempaa)) pahvilevy, joka pitää kaikki osat, vanha tietokoneen tuuletin vanha levykeohjaimen kaapeli vanha tietokoneen virtalähde Paljon kytkentäjohtoa, juotetta, juotosrautaa, virtausta, kaikkea muuta helpottamaan elämääsi tämän tekemisen aikana. 7 "x7" (tai suurempi) puukappale, jota käytetään LED -juotosjigin valmistukseen Hieno kotelo valmiin kuution näyttämiseksi My Arduino/Freeduino on Bare Bones Board (BBB) osoitteesta www.moderndevice.com. LEDit ostettiin eBaysta ja maksoivat 23 dollaria 1000 Kiinasta lähetetystä LEDistä. Loput elektroniikka ostettiin Newark Electronicsilta (www.newark.com) ja sen pitäisi maksaa vain noin 25 dollaria. Jos joudut ostamaan kaiken, tämän projektin pitäisi maksaa vain noin 100 dollaria. Minulla on paljon vanhoja tietokonelaitteita, joten nämä osat irrotettiin romurungosta.

Vaihe 2: Kokoa kerrokset

Kokoa kerrokset
Kokoa kerrokset
Kokoa kerrokset
Kokoa kerrokset
Kokoa kerrokset
Kokoa kerrokset
Kokoa kerrokset
Kokoa kerrokset

Kuinka tehdä 1 kerros (64 LEDiä) tästä 512 LED -kuutiosta: Ostamani LEDit olivat halkaisijaltaan 3 mm. Päätin käyttää pieniä LED -valoja leikkaamaan kustannuksia ja tekemään kuution lopullisesta koosta riittävän pienen istumaan pöydälleni tai hyllylleni ottamatta kokonaan pöytää tai hyllyä. Tämä antoi minulle kuution koon noin 4,25 tuumaa per sivu. Poraa 3 mm: n reiät linjojen kohdalle ja muodosta jigi, joka pitää LEDit kiinni jokaisen kerroksen juottamisen yhteydessä. A6276EA on nykyinen pesuallas. Tämä tarkoittaa, että se tarjoaa polun maahan eikä polkua lähdejännitteeseen. Sinun on rakennettava kuutio yhteiseen anodikokoonpanoon. Useimmat kuutiot on rakennettu yhteiseksi katodiksi. LEDin pitkä puoli on yleensä anodi, tarkista omasi varmistaaksesi. Ensimmäinen asia, jonka tein, oli testata jokainen LED. Kyllä, se on pitkä ja tylsä prosessi, ja voit ohittaa sen, jos haluat. Haluan mieluummin käyttää aikaa LEDien testaamiseen kuin löytää kuutiosi kuutiosta sen kokoamisen jälkeen. Löysin 1 kuolleen LEDin 1000: sta. Ei paha. Leikkaa 11 kappaletta kiinteää, eristämätöntä kiinnityslankaa 5 tuumaan. Aseta 1 LED jigin rivin kumpaankin päähän ja juota sitten lanka kuhunkin anodiin. Aseta loput 6 LEDiä riviin ja juota nämä anodit lankaan. Tämä voi olla pystysuoraan tai vaakasuoraan, sillä ei ole väliä, kunhan teet kaikki kerrokset samalla tavalla. Kun lopetat jokaisen rivin, leikkaa ylimääräinen johdin anodeista. Jätin noin 1/8 . Toista, kunnes olet lopettanut kaikki 8 riviä. Juotos nyt 3 kappaletta kiinnityslankaa juuri tekemiesi rivien poikki, jotta voit yhdistää ne kaikki yhdeksi kappaleeksi. Testasin sitten kerroksen kiinnittämällä 5 volttia kytkeä lankahilan vastuksen läpi ja koskettaa maadoitusjohtoa jokaiseen katodiin. Vaihda kaikki LEDit, jotka eivät syty. Poista kerros varovasti jigistä ja aseta se sivuun. Jos taivutat johdot, älä huoli, vain suorista ne mahdollisimman hyvin. On erittäin helppo taivuttaa. Kuten kuvistani voi päätellä, minulla oli paljon taipuneita johtoja. Onnittelut, olet 1/8 valmis. Tee vielä 7 kerrosta. LISÄVARUSTE: Juotos kerrosten yhdistäminen (vaihe 3) helpompaa, kun jokainen seuraava kerros on edelleen jigissä, taivuta katodin ylintä neljänneksen tuumaa eteenpäin 45-90 astetta. Älä tee tätä ensimmäiselle kerroksellesi, ilmoitamme, että yksi on pohjakerros ja johtojen on oltava s kevyt.

Vaihe 3: Kokoa kuutio

Kokoa kuutio
Kokoa kuutio
Kokoa kuutio
Kokoa kuutio

Kuinka juottaa kaikki kerrokset yhteen kuutioksi: Kova osa on melkein ohi. Aseta nyt yksi kerros varovasti takaisin jigiin, mutta älä käytä liikaa painetta, haluamme pystyä poistamaan sen taivuttamatta sitä. Tämä ensimmäinen kerros on kuution yläpinta. Aseta toinen kerros ensimmäisen kerroksen päälle, kohdista johdot ja aloita juottaminen. Minusta oli helpointa tehdä ensin kulmat, sitten reunat ja sitten rivit. Jatka kerrosten lisäämistä, kunnes olet valmis. Jos taivutat johdot etukäteen, muista säästää kerros suorilla johdoilla viimeiseksi. Se on pohja. Minulla oli hieman liikaa tilaa jokaisen kerroksen välillä, joten en saanut kuution muotoa. Ei iso juttu, voin elää sen kanssa.

Vaihe 4: Ohjauskortin rakentaminen

Ohjauspaneelin rakentaminen
Ohjauspaneelin rakentaminen
Ohjauspaneelin rakentaminen
Ohjauspaneelin rakentaminen
Ohjauspaneelin rakentaminen
Ohjauspaneelin rakentaminen

Ohjainkortin rakentaminen ja kiinnittäminen Arduinoon: Noudata kaaviota ja rakenna levy haluamallasi tavalla. Laitoin ohjaimen sirut levyn keskelle ja käytä vasenta puolta pitämään transistorit, jotka ohjaavat virtaa kuution jokaiseen kerrokseen, ja pidin oikealla puolella liittimiä, jotka siirtyvät ohjaimen siruista katodiin Löysin vanhan 40 mm: n tietokoneen tuulettimen, jossa on naaraspuolinen molex -liitin ja joka voidaan kytkeä tietokoneen virtalähteeseen. Tämä oli täydellinen. Pieni ilmavirta sirun poikki on hyödyllinen, ja minulla on nyt helppo tapa antaa 5 volttia ohjaimen siruille ja itse Arduinolle. Käytin 1000 ohmia, koska se antaa 5 milliampeeria LEDille, tarpeeksi sen sytyttämiseen. Käytän korkean kirkkauden, ei Super Brite -LED -valoja, joten virrankulutus on pienempi. Jos sarakkeen kaikki 8 LEDiä palavat kerralla, se on vain 40 milliampeeria. Jokainen A6276EA: n ulostulo pystyy käsittelemään 90 milliampeeria, joten olen hyvin kantaman sisällä. RL on vastus, joka on kytketty logiikkaan tai signaalijohtoihin. Todellinen arvo ei ole kovin tärkeä niin kauan kuin se on olemassa eikä se ole liian suuri. Käytän 560 ohmia, koska minulla oli joukko niitä saatavilla. Tämä on liioittelua tälle projektille, koska jokainen kuution kerros vetää vain 320 milliampeeria, kun kaikki LEDit palavat. Halusin tilaa kasvaa ja voisin käyttää ohjauskorttia johonkin isompaan myöhemmin. Käytä minkä tahansa kokoisia transistoreita tarpeisiisi. 330 uF: n kondensaattori jännitelähteen poikki auttaa tasaamaan pieniä jännitteen vaihteluita. Koska käytän vanhaa tietokoneen virtalähdettä, tämä ei ole välttämätöntä, mutta jätin sen vain siltä varalta, että joku haluaa käyttää 5 voltin seinäadapteria kuution virran saamiseen. Jokaisessa A6276EA -ohjainsirussa on 16 lähtöä. Minulla ei ollut muuta sopivaa liitintä, joten juotin johdot noin 16 -nastaisiin IC -pistorasioihin ja käytän niitä liittääksesi ohjauskortin kuutioon. Leikkasin myös IC -pistorasian puoliksi ja käytin sitä yhdistämään 8 johtoa, jotka yhdistävät transistorit kuution kerroksiin. Levykkeessä on 2 riviä 20 nastaa, paljaalla Bones Boardilla on 18 nastaa. Tämä on erittäin halpa tapa (ilmainen) liittää Arduino levyyn. Vedin nauhakaapelin erilleen kahden langan ryhmiksi, riisutin päät ja juotin ne yhteen. Näin voit kytkeä Arduinon liittimen kummalle tahansa riville. Noudata kaaviota ja juota liitin paikalleen. Älä unohda juottaa liittimen 5 voltin ja maadoitusjohtoja, jotta Arduino saa virtaa. Jos haluat kytkeä liitännät kiinteästi, se on hyvä.

Vaihe 5: Rakenna näyttökotelo

Rakenna näyttökotelo
Rakenna näyttökotelo
Rakenna näyttökotelo
Rakenna näyttökotelo
Rakenna näyttökotelo
Rakenna näyttökotelo
Rakenna näyttökotelo
Rakenna näyttökotelo

Tee lopputuotteestasi kiva: Löysin tämän puisen rintakehän Hobby Lobbysta 4 dollarilla ja ajattelin, että se olisi täydellinen, koska sen sisällä on tilaa pitää kaikki lanka ja se näyttää hyvältä. Värjäsin tämän punaisen, saman tahran, jota käytin tietokoneen työpöydällä, joten ne sopivat yhteen. Piirrä päälle ruudukko, joka on samankokoinen kuin juotospistoolissa käytetty ruudukko (0,6 tuumaa rivien välissä). Poraa reiät, jotta johdot pääsevät ylhäältä, ja poraa toinen reikä kerroksen/tasojohtojen ristikon taakse (vaiheen 4 transistoreista). Opin kovalla tavalla, että 64 johtimen yhdistäminen pienten reikien läpi on erittäin vaikeaa. Lopulta päätin porata kaikki reiät hieman suuremmiksi, jotta prosessi etenee nopeammin. Päädyin käyttämään noin.2 poranterää. Nyt kun kuutio istuu näytön päällä, taivuta kulmajohtimet niin, että kuutio pysyy paikallaan, kun kiinnität johdot. Varmista, että liität kaikki johdot oikeassa järjestyksessä. 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 Ja kytke johdot kerrosten (kaaviossa merkitty”tasot”) ja transistorien väliin. Arduinon nastan 6 transistori on kuution yläkerros. kaikki on rakennettu ja käyttövalmis, hankitaan koodi ja kokeillaan sitä.

Vaihe 6: Koodi

Koodi
Koodi

Tämän kuution koodi tehdään eri tavalla kuin useimmat, selitän, miten sopeudun. Useimmat kuutiokoodit käyttävät suoria kirjoituksia sarakkeisiin. Koodi sanoo, että sarake X on sytytettävä, joten anna sille mehua ja olemme valmiit. Tämä ei toimi, kun käytetään ohjainpiirejä. Maadoitin Enable -nastan (nasta 21) vastuksen (RL) kautta, joten lähtö on aina käytössä. En ole koskaan ottanut käyttöön, joten otin sen pois koodista. SPI-in on Arduinon data, kello on ajoitussignaali näiden kahden välillä, kun he puhuvat, ja salpa kertoo ohjaimelle, että on aika hyväksyä uusia tietoja. Esimerkiksi; 1010101010101010: n lähettäminen ohjaimeen aiheuttaisi kaikki muut ohjaimen LED -valot. Koodisi on suoritettava kaikki näyttöön tarvittava ja rakennettava kyseinen binääriluku ja lähetettävä se sitten sirulle. Se on helpompaa kuin miltä se kuulostaa. Teknisesti se on joukko bittikohtaisia lisäyksiä, mutta olen surkea bittikohtaisessa matematiikassa, joten teen kaiken desimaaliluvulla. Ensimmäiset 16 bittiä desimaaliluvut ovat seuraavat: 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 == 32768Tämä tarkoittaa, jos haluat syttyvät lähdöt 2 ja 10, lisäät desimaalit (2 ja 512) yhteen saadaksesi 514. Lähetä 514 ohjaimeen ja lähdöt 2 ja 10 syttyvät. Mutta meillä on yli 16 LEDiä, joten se muuttuu hieman vaikeammaksi. Meidän on rakennettava näytön tiedot 4 sirulle. Mikä on yhtä helppoa kuin rakentaa se yhdelle, tee se vielä 3 kertaa. Käytän globaalia muuttujaryhmää hallintakoodien pitämiseen. Se on vain helpompaa tällä tavalla: Kun sinulla on kaikki 4 näyttökoodia valmiina lähetettäväksi, pudota salpa (aseta se LOW -asentoon) ja aloita koodien lähettäminen. Sinun on ensin lähetettävä viimeinen. Lähetä koodit sirulle 4, sitten 3, sitten 2, sitten 1 ja aseta sitten salpa uudelleen HIGH. Koska Enable-nasta on aina kytketty maahan, näyttö muuttuu välittömästi. Suurin kuutiokoodi, jonka olen nähnyt Instructablesissa ja verkossa yleensä, koostuu jättimäisestä koodilohosta, joka on asetettu suorittamaan esiasetettu animaatio. Tämä toimii hyvin pienemmillä kuutioilla, mutta tarvitsee tallentaa, lukea ja lähettää 512 bittiä binaaria joka kerta, kun haluat vaihtaa näyttöä, vie paljon muistia. Arduino ei pystynyt käsittelemään muutamaa kuvaa enemmän. Joten kirjoitin muutamia yksinkertaisia toimintoja näyttääkseni kuution toiminnassa, joka perustuu laskelmiin eikä ennalta asetettuihin animaatioihin. Lisäsin pienen animaation näyttääkseni, miten se tehdään, mutta jätän sinun itse rakentaa näytöt. Cube8x8x8.pde on Arduino -koodi. Aion jatkaa toimintojen lisäämistä koodiin ja päivitän ohjelman säännöllisin väliajoin. Matrix8x8.pde on Käsittelyssä oleva ohjelma omien näyttöjen luomiseksi. Ensimmäinen annettu numero on malli1 , toinen kuvio2 jne.

Vaihe 7: Näytä kätesi

Näytä kätesi
Näytä kätesi

Olet valmis, nyt on aika nauttia kuutiosta. Kuten näette, kuutioni tuli hieman vinoon. En ole kuitenkaan kovin kiinnostunut rakentamaan toista, joten aion elää sen kanssa vinoon. Minulla on pari kuollutta kohtaa, jotka minun on tutkittava. Se voi olla huono yhteys tai tarvitsen uuden ohjainsirun. Toivon, että tämä Instructable inspiroi sinua rakentamaan oman kuution tai jonkin muun LED -projektin A6276AE: n avulla. Lähetä linkki kommentteihin, jos rakennat sen. Olen yrittänyt päättää minne mennä täältä. Ohjauskortti ohjaa myös 4x4x4 RGB -kuutiota, joten se on mahdollista. Mielestäni olisi hienoa tehdä pallo ja tapa, jolla olen kirjoittanut koodin, se ei olisi liian vaikeaa tehdä.

Suositeltava: