INHOUDSOPGAWE:

Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer: 7 stappe (met foto's)
Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer: 7 stappe (met foto's)

Video: Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer: 7 stappe (met foto's)

Video: Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer: 7 stappe (met foto's)
Video: Как использовать 4-канальное реле для управления нагрузкой переменного тока с помощью кода Arduino 2024, Junie
Anonim
Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer
Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer
Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer
Hoe om 'n 8x8x8 LED -kubus te bou en dit met 'n Arduino te beheer

Januarie 2020 wysig:

Ek laat dit op as iemand dit wil gebruik om idees te genereer, maar daar is geen nut meer om 'n kubus te bou op grond van hierdie instruksies nie. Die LED -bestuurders -IC's word nie meer gemaak nie, en albei sketse is in ou weergawes van Arduino en Processing geskryf en word nie meer uitgevoer nie. Ek weet nie wat verander moet word om dit te laat werk nie. My konstruksiemetode het ook gelei tot 'n wanhopige skeef gemors. My voorstel is om die instruksies op 'n ander instruksies te volg of 'n kit te koop. Hierdie kubus het in 2011 ongeveer $ 50 gekos. U kan nou 'n kit teen ongeveer $ 20 op eBay koop.

Oorspronklike inleiding:

Daar is baie LED -blokkies op Instructables, so waarom nog 'n ander? Die meeste is vir klein blokkies bestaande uit 27 of 64 LED's, selde groter, aangesien dit beperk is tot die aantal uitsette wat op die mikrobeheerder beskikbaar is. Hierdie kubus sal 512 LED's hê en benodig slegs 11 uitvoerdrade van die Arduino. Hoe is dit moontlik? Deur die Allegro Microsystems A6276EA LED -bestuurder te gebruik.

Ek sal jou wys hoe ek die kubus self, die beheerbord en uiteindelik die kode gemaak het om dit te laat skyn.

Stap 1: materiaal

Materiaal
Materiaal

Alle dele wat u nodig het om die kubus te bou: 1 Arduino/Freeduino met Atmega168 of hoër chip 512 LED's, grootte en kleur is aan u, ek het 3 mm rooi 4 A6276EA LED -dryfskyfies van Allegro 8 NPN -transistors gebruik om die spanningsvloei te beheer, Ek het die BDX53B Darlington -transistor 4 1000 ohm -weerstande, 1/4 watt of hoër 12 560 ohm -weerstande, 1/4 watt of hoër 1 330uF elektrolitiese kondensator 4 24 -pins IC -aansluiting 9 16 -pins IC -voetstukke 4 "x4" (of groter) gebruik) stuk perfboard om al die onderdele in te hou, 'n ou rekenaarwaaier 'n Ou disketterkabel, 'n ou rekenaarvoeding Baie aansluitdraad, soldeersel, soldeerbout, vloed, en nog iets om u lewe te vergemaklik. 7 "x7" (of groter) stuk hout wat gebruik word om die LED -soldeermik te maak 'n Goeie omhulsel om u voltooide kubus te vertoon My Arduino/Freeduino van keuse is die Bare Bones Board (BBB) van www.moderndevice.com. Die LED's is by eBay gekoop en kos $ 23 vir 1000 LED's wat uit China gestuur is. Die oorblywende elektronika is by Newark Electronics (www.newark.com) gekoop en behoort slegs ongeveer $ 25 te kos. As u alles moet koop, behoort hierdie projek slegs ongeveer $ 100 te kos. Ek het baie ou rekenaartoerusting, sodat die onderdele van die afvalhoop gekom het.

Stap 2: Monteer die lae

Monteer die lae
Monteer die lae
Monteer die lae
Monteer die lae
Monteer die lae
Monteer die lae
Monteer die lae
Monteer die lae

Hoe om 1 laag (64 LED's) van hierdie 512 LED -kubus te maak: Die LED's wat ek gekoop het, was 3 mm in deursnee. Ek het besluit om klein LED's te gebruik om die koste te verminder en om die uiteindelike grootte van die kubus klein genoeg te maak om op my lessenaar of rak te sit sonder om die lessenaar of rak heeltemal oor te neem. Dit het my 'n kubusgrootte van ongeveer 4,25 duim per kant gegee. Boor 3 mm gate waar die lyne bymekaar kom om 'n mal te maak wat die LED's sal hou terwyl u elke laag soldeer. Die A6276EA is 'n huidige wasbak. Dit beteken dat dit 'n pad na die grond bied eerder as 'n pad na die bronspanning. U moet die kubus in 'n gemeenskaplike anode -opset bou. Die meeste kubusse is as 'n gewone katode gebou. Die langkant van die LED is oor die algemeen die anode, kyk na die uwe om seker te maak. Die eerste ding wat ek gedoen het, was om elke LED te toets. Ja, dit is 'n lang en vervelige proses, en u kan dit oorslaan as u wil. Ek spandeer eerder die tyd om die LED's te toets as om 'n dooie plek in my kubus te vind nadat dit saamgestel is. Ek het 1 dooie LED uit die 1000 gevind. Nie sleg nie. Sny 11 stukke soliede, nie-geïsoleerde haakdraad tot 5 duim. Plaas 1 LED aan elke kant van 'n ry in u mal en soldeer dan die draad aan elke anode. Plaas nou die oorblywende 6 LED's in die ry en soldeer die anodes aan die draad. Dit kan vertikaal of horisontaal wees; dit maak nie saak nie, solank u al die lae op dieselfde manier doen. As u elke ry voltooi, sny u die oortollige lood van die anodes af. Ek het ongeveer 1/8 duim verlaat. Herhaal totdat al die 8 rye klaar is. Soldeer nou 3 stukke haakdraad oor die rye wat u pas gemaak het om dit in 'n enkele stuk te verbind. Daarna het ek die laag getoets deur 5 volt aan te heg om die draadrooster deur 'n weerstand aan te sluit en die grondleiding na elke katode te raak. Vervang enige LED's wat nie brand nie. Verwyder die laag versigtig van die mal en sit dit eenkant. As u die drade buig, moenie bekommerd wees nie, maak dit so goed as moontlik reg. Dit is baie maklik om te buig. Soos u op my foto's kan sien, het ek baie geboë drade gehad. Geluk, u is 1/8 klaar. Maak nog 7 lae. die lae saam (Stap 3) makliker, terwyl elke daaropvolgende laag nog in die mal is, buig die boonste kwartduim van die katode 45 tot 90 grade vorentoe. makliker. Moenie dit met u eerste laag doen nie; ons sal verklaar dat die een die onderste laag is en dat die leidings s moet wees reguit.

Stap 3: Monteer die kubus

Monteer die kubus
Monteer die kubus
Monteer die kubus
Monteer die kubus

Hoe om al die lae saam te soldeer om 'n kubus te maak: Die harde deel is amper verby. Plaas nou een laag versigtig terug in die mal, maar moenie te veel druk uitoefen nie; ons wil dit kan verwyder sonder om dit te buig. Hierdie eerste laag is die boonste vlak van die kubus. Plaas nog 'n laag bo -op die eerste, rangskik die leidings en begin soldeer. Ek vind dit die maklikste om eers hoeke te maak, dan die buitekant, dan binne rye. Hou aan om lae by te voeg totdat jy klaar is. As u die leidings vooraf gebuig het, moet u die laag vir die laaste keer met reguit leidings stoor. Dit is die onderkant. Ek het 'n bietjie te veel spasie tussen elke laag gehad, sodat ek nie heeltemal 'n kubusvorm gekry het nie. Nie 'n groot probleem nie, ek kan daarmee saamleef.

Stap 4: Bou die beheerraad

Die bou van die beheerraad
Die bou van die beheerraad
Die bou van die beheerraad
Die bou van die beheerraad
Die bou van die beheerraad
Die bou van die beheerraad

Hoe om die beheerbord te bou en aan u Arduino te koppel: volg die skema en bou die bord soos u wil. Ek het die kontroleerderskyfies in die middel van die bord geplaas en die linkerkant gebruik om die transistors wat die stroom beheer na elke laag van die kubus vas te hou, en die regterkant gebruik om die verbindings wat van die kontroleerderskyfies gaan, na die katodes van Ek het 'n ou 40 mm rekenaarwaaier met 'n molex -aansluiting gevind om dit aan te sluit op 'n rekenaar. Dit was perfek. 'N Klein hoeveelheid lugvloei oor die chip is handig, en ek het nou 'n maklike manier om 5 volt aan die kontroleerderskyfies en die Arduino self te verskaf. Op die skematiese is RC die huidige beperkende weerstand vir al die LED's wat aan elke A6276EA gekoppel is. Ek het 1000 ohm gebruik omdat dit 5 milliampies aan die LED verskaf, genoeg om dit aan te steek. Ek gebruik High Brightness, nie Super Brite LED's nie, so die huidige drein is laer. As al 8 LED's in 'n kolom gelyktydig brand, is dit slegs 40 miljard ampère. Elke uitset van die A6276EA kan 90 milliampies hanteer, dus ek is goed binne bereik. RL is die weerstand wat gekoppel is aan die logika of seindrade. Die werklike waarde is nie baie belangrik nie, solank dit bestaan en is nie te groot nie. Ek gebruik 560 ohm omdat ek 'n klomp daarvan beskikbaar het. Ek het 'n kragtransistor gebruik wat tot 6 ampère kan hanteer om die stroom na elke laag van die kubus te beheer. Dit is te veel vir hierdie projek, aangesien elke laag van die kubus slegs 320 milliampies sal trek met al die LED's aangesteek. Ek wou ruimte hê om te groei, en ek kan die beheerbord later vir iets groter gebruik. Gebruik die transistor van elke grootte wat by u behoeftes pas. Die 330 uF -kondensator oor die spanningsbron is daar om klein spanningskommelinge uit te skakel. Aangesien ek 'n ou rekenaar se kragtoevoer gebruik, is dit nie nodig nie, maar ek het dit gelos vir ingeval iemand 'n 5 volt muuradapter wil gebruik om hul kubus aan te dryf. Elke A6276EA kontroleerderskyfie het 16 uitsette. Ek het geen ander geskikte aansluiting gehad nie, so ek het leidrade aan 'n 16 -pen IC -voetstukke gesoldeer en dit gebruik om die beheerbord aan die kubus te koppel. Ek het ook 'n IC -aansluiting in die helfte gesny en dit gebruik om die 8 drade wat die transistors verbind met die lae van die kubus, aan te sluit. Die diskettekabel het 2 rye van 20 penne, die kaalbene -bord het 18 penne. Dit is 'n baie goedkoop manier (gratis) om die Arduino aan die bord te koppel. Ek het die lintkabel in groepe van 2 drade uitmekaar getrek, die ente gestroop en aanmekaar gesoldeer. Hiermee kan u die Arduino in elke ry van die aansluiting aansluit. Volg die skema en soldeer die aansluiting op sy plek. Moenie vergeet om die 5 volt en grondleidings vir die aansluiting te soldeer om die Arduino van krag te voorsien nie. Ek is van plan om hierdie beheerbord vir ander projekte te gebruik, sodat die modulêre ontwerp vir my goed werk. As u die verbindings wil harddraad, is dit goed.

Stap 5: Bou die vertoonkas

Bou die vertoonkas
Bou die vertoonkas
Bou die vertoonkas
Bou die vertoonkas
Bou die vertoonkas
Bou die vertoonkas
Bou die vertoonkas
Bou die vertoonkas

Laat u finale produk mooi lyk: ek het hierdie houtkis by Hobby Lobby vir $ 4 gevind en het gedink dat dit perfek sou wees, aangesien dit ruimte binne het om al die draad vas te hou, en dit lyk mooi. Ek het hierdie een rooi, dieselfde vlek wat ek op my rekenaarbank gebruik het, gekleur sodat dit ooreenstem. Teken 'n rooster bo -op dieselfde grootte as die rooster wat vir die soldeermok gebruik word (.6 duim tussen die lyne). Boor gate om die leidings deur die bokant te laat, en boor nog 'n gat agter die rooster vir die laag-/vlakdrade (vanaf die transistors in stap 4). Ek het op die harde manier geleer dat dit baie moeilik is om 64 leidrade in 'n ry te kry om deur klein gaatjies te kom. Ek het uiteindelik besluit om al die gate 'n bietjie groter te boor om die proses vinniger te laat verloop. Ek het uiteindelik 'n.2 boorpunt gebruik. Noudat die kubus bo -op die skerm sit, buig u die hoekleidings sodat die kubus op sy plek bly terwyl u die drade aanheg. Maak seker dat u al die drade in die regte volgorde heg. 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 En verbind die drade tussen die lae (gemerk 'vliegtuie' op die skematiese) en die transistors. Die transistor op Arduino -pen 6 is die boonste laag van die kubus. As u die drade verkeerd kry, is dit ietwat regstelbaar binne die kode, maar dit kan baie werk verg, dus probeer om dit in die regte volgorde te kry. alles is gebou en gereed, laat ons 'n kode kry en dit probeer.

Stap 6: Kode

Kode
Kode

Die kode vir hierdie kubus word anders gedoen as die meeste; ek sal verduidelik hoe om aan te pas. Die meeste kubuskode gebruik direkte skryf na die kolomme. Die kode sê dat kolom X aangesteek moet word, gee dit 'n bietjie sap en ons is klaar. Dit werk nie by die gebruik van kontroleerderskyfies nie. Die kontroleerderskyfies gebruik 4 drade om met die Arduino te praat: SPI-in, Clock, Latch en Enable. Ek het die Enable -pen (pen 21) deur 'n weerstand (RL) gegrond, sodat die uitset altyd geaktiveer is. Ek het die Enable nooit gebruik nie, so ek het dit uit die kode gehaal. SPI-in is die data van die Arduino, Clock is 'n tydsberekening tussen die twee terwyl hulle praat, en Latch sê vir die beheerder dat dit tyd is om nuwe data te aanvaar. Elke uitset vir elke chip word beheer deur 'n 16 bis binêre getal. Byvoorbeeld; Deur 1010101010101010 na die beheerder te stuur, sou elke ander LED op die beheerder laat brand. U kode moet alles wat nodig is vir 'n vertoning deurloop en die binêre nommer bou, en dit dan na die chip stuur. Dit is makliker as wat dit klink. Tegnies is dit 'n klomp stukkies byvoeging, maar ek is sleg met wiskundige wiskunde, so ek doen alles in desimale. Desimale vir die eerste 16 bisse is soos volg: 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 == 32768Dit beteken dat as u wil Uitsette 2 en 10 verlig, u voeg die desimale (2 en 512) bymekaar om 514 te kry. Stuur 514 na die kontroleerder en uitsette 2 en 10 sal brand. Maar ons het meer as 16 LED's, sodat dit effens moeiliker word. Ons moet skerminligting vir 4 skyfies bou. Dit is so maklik soos om dit vir 1 te bou, maar doen dit nog 3 keer. Ek gebruik 'n globale veranderlike skikking om die beheerkodes te hou. Sodra u al vier die vertoonkodes gereed het om te stuur, laat sak die grendel (stel dit op LAAG) en begin met die stuur van die kodes. U moet eers die laaste een stuur. Stuur die kodes vir chip 4, dan 3, dan 2, dan 1, en stel dan die grendel weer op HOOG. Aangesien die Enable pin altyd aan die grond gekoppel is, word die skerm onmiddellik verander. Die meeste kubuskode wat ek op Instructables gesien het, en die web in die algemeen, bestaan uit 'n reuse blok kode wat 'n vooraf ingestelde animasie kan uitvoer. Dit werk goed vir kleiner blokkies, maar om 512 stukkies binêre te stoor, lees en stuur, elke keer as u die skerm wil verander, verg baie geheue. Die Arduino kon nie meer as 'n paar rame hanteer nie. Ek het dus 'n paar eenvoudige funksies geskryf om die kubus in aksie te wys wat op berekening staatmaak eerder as vooraf ingestelde animasies. Ek het 'n klein animasie ingesluit om te wys hoe dit gedoen word, maar ek sal dit aan u oorlaat om u eie displays te bou. Cube8x8x8.pde is die Arduino -kode. Ek is van plan om voort te gaan met die toevoeging van funksies tot die kode en sal die program gereeld opdateer. Matrix8x8.pde is 'n verwerkingsprogram om u eie skerms te bou. Die eerste getal wat aangegee word, gaan in patroon1 , tweede in patroon2 , ens. Die datablad vir die A6276EA is beskikbaar op:

Stap 7: Vertoon u handwerk

Vertoon jou handwerk
Vertoon jou handwerk

Jy is klaar, nou is dit tyd om jou kubus te geniet. Soos u kan sien, kom my kubus effens skeef. Ek is egter nie baie lus om nog een te bou nie, so ek sal maar lewe dat dit skeef is. Ek het 'n paar dooie plekke waarna ek moet kyk. Dit is moontlik 'n slegte verbinding, of ek benodig dalk 'n nuwe controller -chip. Ek hoop dat hierdie instruksies u inspireer om u eie kubus of 'n ander LED -projek met die A6276AE te bou. Plaas 'n skakel in die kommentaar as u een bou. Ek het probeer besluit waarvandaan ek moet gaan. Die beheerbord beheer ook 'n 4x4x4 RGB -kubus, so dit is moontlik. Ek dink dit sal netjies wees om 'n sfeer te doen, en soos ek die kode skryf, sal dit nie te moeilik wees nie.

Aanbeveel: