Oglas

arduino frekvencija vodioAko ste se upuštali u neke početničke Arduino projekte, ali tražite nešto malo trajno i na nekoj drugoj razini fenomenalne, onda je skromna 4 x 4 x 4 LED kocka prirodan izbor. Izgradnja je daleko lakša nego što možda mislite, i pomoću multipleksiranja možemo kontrolirati sve LED diode izravno s samo jedne Arduino Uno ploče. Odlična je tehnika lemljenja, a ukupni trošak komponenti ne bi trebao iznositi više od oko 40 USD.

Danas ću detaljno detaljno opisati konstrukcijsku stranu stvari i pružiti neki softver koji će se pokrenuti na njemu koji istovremeno izgleda impresivno i uči vas osnovama.

Trebat će vam

  • Težak. Dobiveni kôd pretpostavlja Arduino Uno, no mogao bi se prilagoditi i većem modelu.
  • 64 LED - točan izbor je na vama, ali ja sam koristio ove sjajne 3 mm plave LED diode (3.2v 30ma) @ 2,64 £ za 50.
  • 16 otpornika odgovarajuće vrijednosti za vaše LED. Za gornje LED diode 99 pencea ih je kupilo 100. Koristiti ledcalc.com - unesite 5v za napon napajanja, napon LED dioda (u mom slučaju 3.2) i struju u miliamperima (3.2). Vaš željeni otpornik prikazat će se u okviru s oznakom
    instagram viewer
    "Najbliži viši otpornik", jednostavno potražite tu vrijednost na eBayu.
  • Neki zanatske žice za jačanje osnovne strukture i za ukrašavanje - koristio sam 0.8mm debljina.
  • ploča za izradu prototipa neke vrste na koju možete lemiti sve svoje bitove. Upotrijebio sam onaj koji nije imao čitave pjesme uz to što nemam urezač pjesama, ali koristim sve što ti odgovara. Arduino štitnik za prototipiranje ipak je malo premalen, osim ako stvarno ne stisnete svoje LED diode zajedno.
  • Slučajna komponenta žica - neke kablove mrežnog kabela i neke žice za prototipiranje iz kompleta dobro će raditi.
  • Kvačice od krokodila ili "pomagati ruke" korisni su za držanje dijelova na mjestu.
  • Lemljenje i lemljenje.
  • Malo drveta.
  • Bušilica, s bitovima iste veličine kao i vaše LED.

Napomena: 3D crteži u ovom vodiču napravljeni su u nekoliko minuta koristeći TinkerCAD. Pratio sam postojeću gradnju detaljno o Instructables od strane korisnika forte1994, koju biste također trebali pročitati prije nego što pokušate.

Obavezno pročitajte sve ove upute prvi prije nego što to pokušate sami.

Princip ovog dizajna

Prije nego što započnete s izgradnjom, važno je imati cjelovit pregled načina na koji će ova stvar funkcionirati kako biste mogli improvizirati i prepoznati pogreške u nastavku. Neke LED kocke koriste jedan izlazni pin za svaki pojedini LED - no u kocki 4x4x4, to bi bilo potrebno 64 igle - kojeg sigurno nemamo na Arduino Uno-u. Jedno bi rješenje bilo korištenje registri promjena Arduino programiranje - igra se sa pomacima registara (a.k.a još više LED-ova)Danas ću vas pokušati naučiti malo o Shift registrima. Ovo su prilično važan dio Arduinog programiranja, u osnovi jer proširuju broj izlaza koje možete koristiti, u zamjenu za ... Čitaj više , ali to je nepotrebno komplicirano.

Da bismo kontrolirali sve LED diode u samo 20 pinova, koristit ćemo tehniku ​​koja se zove multipleksiranje. Razbijanjem kocke u 4 odvojena sloja, potrebne su nam samo kontrolne pinove za 16 LED-ova, tako da osvijetlimo a specifični LED, moramo aktivirati i sloj i kontrolni pin dajući nam ukupan zahtjev 16 + 4 igle. Svaki sloj ima zajedničku katodu - negativni dio kruga - tako da su sve negativne noge spojene zajedno i spojene jednim pinom za taj sloj.

Na anodi (pozitivan) strane, svaki će LED dioda biti povezan sa odgovarajućom LED diodom u sloju iznad i ispod njega. U osnovi imamo 16 stupaca pozitivnih nogu i 4 sloja negativnih. Evo nekih 3D prikaza veza radi lakšeg razumijevanja:

arduino frekvencija vodio
svjetlosni program vodio arduino

izgradnja

Budući da za lemljenje nećemo koristiti potpunu metalnu konstrukciju, želimo da se sve LED diode preklapaju za otprilike četvrtinu i strukturi daju krutost. Preklopite katodu svojih LED-dioda - stranu s ravnim urezom u glavi i kraćom nogom - kao što je prikazano na dijagramu. (Nije stvarno važno da li savijate lijevo ili desno, sve dok ste dosljedni i nikad ne dodiruje anodu)

svjetlosni program vodio arduino

Prvi kritični dio ovog projekta je izrada drvene jige. Ovo će zadržati sloj LED-ova dok lepite noge zajedno, tako da moraju biti precizni i ne previše labavi. Pomoću svrdla iste veličine kao i vaše LED diode izmjerite, a zatim izbušite matricu 4 × 4 na jednakom odstojanju rupe. Imajte na umu da želite da se oko četvrtine nogu preklapa sa susjedom i koristite stvarni ravnalo. Provjerite svaku rupu kako biste osigurali da LED može čvrsto stati, ali ne toliko usko da ga više nećete moći izvaditi ili ćete imati problema pri uklanjanju potpuno lemljenog sloja.

svjetlosni program vodio arduino

Lepite katode od 4 reda LED-ova. Pazite da ne izgori LED diode - želite dobro vruće glačalo, te da budete unutra i van. Evo dovršena su moja prva četiri retka.

arduino vodio

Sada, da biste ojačali krutost sloja, izrežite i zalijepite dva ravna bitova zanatske žice na oba kraja pazeći da se povežu sa svakim redom. Ovo je vaš prvi sloj završen. Ostavite sve višak nogu za sada.

Sada bi bilo sjajno vrijeme za testiranje - samo napunite zadanu Arduino aplikaciju za treptanje i, uz otpornik, stavite zemlju na okvir sloja i pritisnite pozitivno na svaki LED.

arduino vodio

Nadam se da će svi zasvijetliti. Ako ne, provjerite da negdje niste propustili spoj lemilice i po potrebi zamijenite LED.

Uklonite taj sloj iz uboda i ponovite postupak Još 3 puta.

Ne brinite ako vaše lemljenje nije savršeno - sve dok se neće prekinuti i veza je čvrsta, neće utjecati na konačni proizvod. Priznajem, moje lemljenje bilo je prilično beznadno, moj jig je isključen, a sve je podsjećalo na nagnuti toranj iz Pise. Ipak sam ponosan na gotovu kocku, a kad se upale LED-ove, nećete više gledati spojeve lemilja!

Pridruživanje slojevima

Nakon što imate 4 dovršena sloja, morat ćete se pridružiti svim okomitim nogama. Otkrio sam da je to najteži dio izrade, a kako bih pomogao procesu, izrezao sam uzlazno platno iz kartona.

arduino vodio

Tako smo slojeve držali na odgovarajućoj visini, ali još uvijek se mnoge noge ne bi savršeno poravnale - za to sam upotrijebio nekoliko kopči za krokodile da ih držim na mjestu.

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz budućnosti sigurne veritkalne noge s krokodilima od krokodila

1. glupačka greška koju treba izbjegavati

Tek nakon što sam ispunio cijeli sloj, shvatio sam da se uzlazni dio kartice zaglavio na mjestu, pa sam ga morao izrezati! Nemojte napraviti istu pogrešku kao ja - napravite uspon dulje sa strane i pridružite se komadima karte izvan kocke, pa kada završite sloj, možete dekonstruirati uzlazni otvor i izvući ga kartica.

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je stigla iz sloja uboda 3 kartice kartice

2. glupačka greška koju treba izbjegavati

Očito ne lepite okomitu nogu na okvir katode. Okomite noge trebaju se spajati samo s drugim okomitim nogama i ništa više.

Ponovo testirajte nakon što se svaki sloj pričvrsti. Ispitajte sve slojeve, ustvari samo dodirivanjem pozitivnog olova do vrha najvišeg sloja i na taj način osigurajte da imate dobar kontakt kroz sve slojeve.

Kad su se sva 4 sloja lepila zajedno, krenuo sam u malo čišćenja - ostavio sam jednu jedinu nogu ispružen iz svakog sloja na neki način odskočna daska - ovo bi se spustilo do odbora kasnije. Ostali komadići metalnog okvira i nogu bili su odsječeni. Očito, nemojte rezati nijednu okomitu nogu - trebamo ih staviti u našu ploču za prototiranje.

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz budućnosti 4 sloja su kompletirana i uklopljena

Pričvršćivanje na ploču

Sjećate se kad sam rekao kako je pričvršćivanje svakog sloja na sebe najteži dio? Lagao sam. Pokušaj postavljanja 16 LED nogu u sićušne rupe na prototipskoj ploči zapravo je teže. Najlakši način na koji sam našao bio je probijanje kroz četiri, osiguranje ispod njih kopčama od krokodila i zatim prelazak na sljedeći red od 4. Koristite olovku za markiranje kako biste unaprijed označili razmak ako vam to pomaže.

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz budućnosti koja se učvršćuje u ploču

Zapravo bih prvo stavio otpornike u protoboard. Kako je, prvo sam zalijepio sve noge kocke u ploču, a zatim pokušao osjetljivo otisnuti otpornike između njih. Učite se iz moje pogreške i prvo postavite svoje otpornike.

Pokušao sam ih podrediti jednakim koracima kako bih tada mogao iskoristiti jednu cijelu stranu kocke za sve završne veze s Arduinom. Slijedi shema kruga s kojom sam krenuo:

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je nastala iz dijagrama budućeg ožičenja

Za četiri negativna sloja, spustio sam po jednu žicu prema dolje iz svakog sloja, a zatim ih samo povukao sa strane, ovako:

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz budućnosti s katode s najvišim stepenicama

Konačno sam dodao nekoliko žica za utikače koje sam mogao postaviti u odgovarajuće Arduino igle. Koristite najdužu vrstu koju imate. Napomena Zabrljao sam narudžbu na mjestima zbog lošeg planiranja. Svaki redak LED-a bio je označen u boji.

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz budućeg ožičenja

To je to. Gotov!

Kako napraviti pulsirajuću Arduino LED kocku koja izgleda kao da je došla iz buduće kocke vođene 4x4x4

Programiranje vaše kocke

Znam da ne možete dočekati da se ovo aktivira, pa uključite 4 negativna sloja Analogni I / O priključci A2 (donji sloj) kroz A5 (gornji sloj)(mogu se ponašati i kao digitalni I / O). Zatim uključite 16 kontrolnih pinova, počevši od +1 na krajnjoj desnoj strani do digitalni I / O port 0, s +15 i +16 ide u analognu A0 i A1. (Ne upotrebljavajte AREF i GND)

arduino frekvencija vodio

Preuzmite demo obrasci i kod od poučnog korisnika forte1994. Također je pružio koristan mrežni alat za dizajniranje uzoraka bajta za prilagođavanje vlastitog niza. Evo video ovog koda u akciji na mojoj kocki (Prilagodio sam brzinu na 5, umjesto zadanih 20).

Ovo, naravno, nije jedini način programiranja kocke, pa mi dopustite da provedem nekoliko minuta podučavajući vas osnovama pravljenja vlastitih obrazaca programski, umjesto da reproducirate unaprijed postavljene uzorke kao što to radi gore navedeni demo.

Nekoliko je stvari koje biste trebali znati prilikom pokušaja programiranja kocke:

  1. Da biste se obratili jednom LED-u, koristite a avion (sloj) broj 0-3, i LED LED broj 0-15. Okrenite ravninu na NIZI izlaz (obzirom da je ovo negativna noga) i broj LED pinova HIGH (pozitivna noga) da biste aktivirali LED.
  2. Prije aktiviranja jednog LED-a, osigurajte da su svi ostali zrakoplovi isključeni - to znači da ih postavite na VISOKI izlaz. Ako to ne učinite, rezultirat će da svijetli stupac LED dioda, a ne jedan LED.

Imajući to u vidu, napravio sam za vas dva vrlo jednostavna programska nastavka - preuzmi kod odavde. Prvi jednostavno svijetli svaki LED jedan po jedan, redom. Za to koristimo dvije petlje, iteriranje preko svakog sloja i svake kontrolne pinove.

Druga je slučajna petlja (morat ćete komentirati prvu i omogućiti je u glavnoj petlji da je testirate). Jednostavno odabire nasumični sloj i slučajni kontrolni pin, treperi ih i isključuje.

Sažetak

Nemojte me zastrašivati ​​ovo sastavljanje - ozbiljno mi nedostaju vještine lemljenja i uspio sam dobro (Mislim?). Ukupno vrijeme izrade bilo je sat vremena ili tako dnevno, tjedan dana. Sljedeći put ću vas pokušati naučiti nekom ambicioznijem programiranju za kocku, pa se nadam da ćete mi se pridružiti u izradi vlastite kocke ovog tjedna i učitavanje novog koda sljedeći tjedan - a ako napravite svoje sjajne aplikacije ili sekvence, pošaljite ih na Pastebin i javite nam se u komentari!

James je diplomirao iz umjetne inteligencije i certificiran je CompTIA A + i Network +. Vodeći je programer MakeUseOf-a, a svoje slobodno vrijeme provodi igrajući VR paintball i boardgames. Gradio je računala još od djeteta.