Cum sa faci un pulsator de arduino LED Cube care arata ca a venit de la viitor
Dacă v-ați întâlnit cu niște proiecte Arduino începători, dar căutați ceva puțin permanent și pe un alt nivel de minunat, atunci umilul cub 4 x 4 x 4 LED este o alegere naturală. Construcția este mult mai ușoară decât s-ar putea să vă gândiți și, folosind un multiplex, putem controla toate LED-urile direct dintr-o singură placă Arduino Uno. Este o practică de lipire grozavă, iar costul total al componentelor nu trebuie să ajungă la mai mult de 40 de dolari.
Astăzi voi detalia în detaliu partea de construcție a lucrurilor și vă ofer un software care să funcționeze pe el, care arată atât impresionant și vă învață elementele de bază.
Vei avea nevoie
- Un Arduino. Codul furnizat presupune un Arduino Uno, dar poate fi ajustat și la un model mai mare.
- 64 de LED-uri - alegerea exactă depinde de dvs., dar am folosit aceste LED-uri superbe 3mm albastre (3.2v 30ma) @ 2.64 de euro pentru 50 de euro.
- 16 Rezistoare din valoarea corespunzătoare pentru LED-urile dvs. Pentru LED-urile de mai sus, 99 de pence au cumpărat 100 dintre acestea. Utilizați ledcalc.com - introduceți 5v pentru tensiunea de alimentare, tensiunea LED-urilor (în cazul meu 3.2) și curentul în milliamps (3.2). Rezistența dorită va fi afișată în caseta etichetă “Cel mai apropiat rezistor cu rezistență mai mare”, apoi căutați doar această valoare pe eBay.
- niste ambarcațiunile de sârmă pentru a consolida structura de bază și pentru decorare - am folosit 0.8mm grosime.
- A prototip de bord de un tip pe care le puteți lipi toate biți la. Am folosit una care nu avea piese complete de-a lungul ei, deoarece nu am un tăietor de piste, dar folosiți ce vă convine. Un scut de prototipare Arduino este un pic prea mic, cu excepția cazului în care strângeți cu adevărat LED-urile împreună.
- Sârmă componentă aleatorie - unele toroane de cablu de rețea și unele fire de prototipuri dintr-un kit vor funcționa bine.
- Clips de crocodil sau “ajutând mâinile” sunt utile pentru menținerea biților în poziție.
- Fier de fier și lipire.
- Unele resturi de lemn.
- Un burghiu, cu același bit de dimensiune ca și LED-urile.
Notă: desenele 3D din acest tutorial au fost făcute în câteva minute folosind TinkerCAD. Am urmărit o construcție existentă detaliată pe Instructables de către utilizator forte1994, pe care ați putea dori să o citiți înainte de a încerca acest lucru.
Asigurați-vă că ați citit toate aceste instrucțiuni primul înainte de a încerca acest lucru pentru tine.
Principiul acestui design
Înainte de a începe construcția, este important să aveți o imagine de ansamblu asupra modului în care lucrează acest lucru, astfel încât să puteți improviza și să identificați erorile pe măsură ce mergeți. Unele cuburi LED folosesc un singur pin de ieșire pentru fiecare LED - cu toate acestea într-un cub 4x4x4, care ar fi nevoie 64 de pini - pe care cu siguranță nu o avem pe un Arduino Uno. O soluție ar fi folosirea registrelor de deplasare Arduino Programming - Redarea cu registrele Shift (a.k.a chiar mai multe LED-uri) Programarea Arduino - Redarea cu registrele Shift (a.k.a chiar mai multe LED-uri) Astăzi voi încerca să vă învăț un pic despre Shift Registre. Acestea sunt o parte destul de importantă a programării Arduino, în principal pentru că acestea extind numărul de ieșiri pe care le puteți utiliza, în schimbul ... Citește mai mult, dar acest lucru este inutil de complicat.
Pentru a controla toate acele LED-uri cu doar 20 de pini, vom folosi o tehnică numită multiplexare. Prin ruperea cubului în 4 straturi separate, avem nevoie doar de ace de control pentru 16 LED-uri - astfel încât să aprindem un LED specific, trebuie să activați atât stratul cât și pinul de control, oferindu-ne o cerință totală de 16 + 4 pini. Fiecare strat are un catod comun - partea negativă a circuitului - astfel încât toate picioarele negative sunt îmbinate împreună și conectate la un singur știft pentru acel strat.
Pe anod (pozitiv) fiecare LED va fi conectat la LED-ul corespunzător din stratul de deasupra și de dedesubt. În esență, avem 16 coloane ale picioarelor pozitive și 4 straturi negative. Iată câteva vizualizări 3D ale conexiunilor pentru a vă ajuta să înțelegeți:
Constructie
Deoarece nu vom folosi o structură metalică completă pentru lipire, vrem ca toate picioarele LED-urilor să se suprapună cu aproximativ un sfert și să dea rigiditate structurii. Pliați catodul LED-urilor dvs. - partea cu crestătură plat în cap și piciorul mai scurt, așa cum se arată în diagrama. (Nu contează cu adevărat dacă îl îndoiți la stânga sau la dreapta, atâta timp cât sunteți consecvent și nu atinge niciodată anodul)
Prima parte critică a acestui proiect este realizarea unui jig de lemn. Acest lucru va păstra un strat de LED-uri în timp ce lipiți picioarele împreună, deci trebuie să fie corecte și nu prea libere. Folosind burghiul cu aceeași dimensiune ca LED-urile, măsurați și apoi forați o matrice de 4 × 4 de echidistant găuri. Luați în considerare faptul că doriți ca un sfert din picior să se suprapună cu vecinul său și să utilizați un conducător actual. Verificați fiecare gaură pentru a vă asigura că un LED se poate potrivi în mod confortabil, dar nu atât de strâns încât nu veți mai putea să-l scoateți din nou sau veți avea probleme când încercați să îndepărtați un strat complet lipit.
Lipiți catodii de 4 rânduri de LED-uri. Aveți grijă să nu ardeți LED-urile - doriți un fier fier bun și să intrați și ieșiți din afară. Iată primele patru rânduri terminate.
Acum, pentru a consolida rigiditatea stratului, tăiați și lipiți doi biți drepți de sârmă de ambarcațiuni la fiecare capăt, asigurându-vă că se conectează cu fiecare rând. Acesta este primul tău strat complet. Lăsați toate picioarele în exces să se prăbușească în lateral pentru moment.
Acum ar fi un moment excelent pentru a testa - încărcați doar aplicația implicită Arduino blink și cu un rezistor conectat, puneți solul pe cadrul stratului și apăsați pe rând conductorul pozitiv la fiecare LED.
Sperăm că toate se vor aprinde. Dacă nu, asigurați-vă că nu ați pierdut doar o îmbinare de lipit undeva și, dacă este necesar, înlocuiți LED-ul.
Îndepărtați stratul din jig și repetați procesul De 3 ori.
Nu vă faceți griji dacă lipirea dvs. nu este perfectă - atâta timp cât nu se rupe și conexiunea este solidă, nu va afecta produsul final. Recunosc, lipirea mea a fost destul de deznădăjduită, jigul meu a fost oprit, și toate seamănă cu turnul înclinat din Pisa. Cu toate acestea, sunt mândru de cubul finit, iar când LED-urile sunt aprinse, oricum nu vă veți uita la îmbinările de lipit!
Se alăture straturilor
După ce ați terminat 4 straturi, veți dori să vă alăturați tuturor picioarelor verticale împreună. Am constatat că aceasta este cea mai dificilă parte a construcției, și pentru a ajuta procesul, am tăiat un șanț din carte.
Aceasta păstra straturile la înălțimea potrivită, dar multe picioare încă nu s-ar alinia perfect - pentru asta am folosit niște cleme de crocodil pentru a le ține în loc.
Prima greșeală proastă de evitat
Doar după ce am terminat un strat complet mi-am dat seama că risca mea de carte a fost blocată în loc, așa că a trebuit să-l taie! Nu faceti aceeasi greseala pe care am facut-o, faceti-o mai intai pe lateral si adaugati bucatile de carti in afara cubului, asa ca, atunci cand finalizati stratul, puteti deconstrui coloana si scoateti cardul.
A doua greșeală proastă de evitat
Nu lipiti piciorul vertical de cadrul catodului, evident. Picioarele verticale ar trebui să se conecteze numai la alte picioare verticale, și nimic altceva.
Din nou, testul după fiecare strat a fost atașat. Testați toate straturile, de fapt, atingând doar firul pozitiv până la vârful stratului superior, asigurându-vă astfel că aveți contact bun care trece prin toate straturile.
Când toate cele patru straturi au fost lipite împreună, am început să curăț un pic - am lăsat un singur picior extins din fiecare strat într-un fel de mod de piatră de pașaport - acest lucru ar fi aruncat la bord mai târziu. Alți biți străini de cadru metalic și picioare au fost tăiați. Evident, nu tăiați niciunul dintre picioarele verticale - trebuie să le punem în tabla noastră de prototipare.
Fixarea la consiliul de administrație
Amintiți-vă când am spus că fiecare strat a fost cel mai greu? Am mintit. Încercarea de a se potrivi cu 16 picioare LED-uri în găuri mici pe o placă de prototipuri este de fapt mai greu. Cea mai ușoară metodă pe care am găsit-o era să mănânc câte 4 pe rând, să le fixez sub tălpile de crocodil, apoi să trec la următorul rând de 4. Folosiți un stilou de marcare pentru a marca spațierea în avans dacă aceasta vă ajută.
În retrospectivă, l-aș fi așezat pe rezistori mai întâi în protoboard. Așa cum am spus, am lipit toate picioarele cubului în bord, apoi am încercat să strângem rezistoare delicate între fiecare. Aflați din greșeala mea și plasați mai întâi rezistențele.
Am încercat să le distanțez în mod egal într-un mod pas cu pas, așa că aș putea folosi întreaga parte a cubului pentru toate conexiunile finale către Arduino. Iată diagrama circuitului cu care am mers:
Pentru cele patru straturi negative, am aruncat câte un fir din fiecare strat, apoi i-am tras în lateral, așa cum sunt:
În cele din urmă, am adăugat niște cabluri de conectare pe care aș putea să le introduc în acele arduino relevante. Folosește cel mai lung fel pe care îl ai. Rețineți că mi-am stricat ordinea în locuri datorită planificării proaste. Fiecare rând de LED-uri a fost codat de culoare, totuși.
Asta e. Terminat!
Programarea Cubei
Știu că nu puteți să așteptați să scoateți chestia asta, prindeți cele 4 straturi negative Analog I / O porturi A2 (stratul inferior) prin A5 (strat superior) (acestea pot acționa și ca intrări / ieșiri digitale). Apoi conectați cele 16 pinii de control LED, începând cu +1 pe extrema dreaptă la I / O digitale port 0, cu +15 și +16 mergând în analogie A0 și A1. (Nu utilizați AREF și GND)
Descărcați modelele demo și codul de la utilizatori instruiți forte1994. De asemenea, a oferit un instrument online util pentru proiectarea tiparelor de octeți pentru a personaliza propria secvență. Iată un videoclip cu acest cod în acțiune pe cubul meu (Am ajustat viteza la 5, în loc de implicit 20).
Aceasta nu este singura modalitate de programare a cubului dvs., bineînțeles, așa că permiteți-mi să petrec câteva minute învățându-vă cele mai importante lucruri de a-ți crea propriile modele programatică, mai degrabă decât să redați modele predefinite ca demo-ul de mai sus.
Există câteva lucruri pe care ar trebui să le cunoașteți atunci când încercați să vă programați cubul:
- Pentru a aborda un singur LED, folosiți a avion (strat) numărul 0-3 și un număr de pin LED 0-15. Întoarceți avionul la ieșire LOW (deoarece acesta este piciorul negativ) și pinul LED-ului HIGH (piciorul pozitiv) pentru a activa LED-ul.
- Înainte de a activa un singur LED, asigurați-vă că toate celelalte planuri sunt oprite - aceasta înseamnă că le setați la ieșire HIGH. Dacă nu faceți acest lucru, rezultă o coloană de LED-uri care este aprinsă mai degrabă decât o singură LED.
Având în vedere acest lucru, am făcut două secvențe programatice foarte simple pentru a examina - descărcați codul de aici. Primul simplă luminează fiecare LED unul câte unul, în ordine. Folosim două bucle pentru acest lucru, iterând peste fiecare strat și fiecare știft de control.
Al doilea este o buclă aleatorie (va trebui să comentați prima și să activați acest lucru în bucla principală pentru al testa). Pur și simplu alege un strat aleatoriu, și PIN-ul de control aleatoriu, le aprinde și oprește.
rezumat
Nu vă îngrijorați de această construcție - am lipsit serios de abilitățile de lipire și am reușit acest lucru bine (Cred?). Timpul total de construcție a fost de o oră sau chiar o zi pe o săptămână. Data viitoare voi încerca să vă învăț programarea mai ambițioasă pentru cub, așa că sper că veți veni cu mine în construirea propriului dvs. cub în această săptămână și încărcarea unui nou cod în săptămâna viitoare - și dacă veți face propriul dvs. aplicații sau secvențe minunate, le încărcați în Pastebin și anunțați-ne în comentarii!
Explorați mai multe despre: Arduino.