Come creare un cubo LED Arduino pulsante che sembra uscito dal futuro
Se hai dilettato alcuni progetti per principianti Arduino, ma stai cercando qualcosa di un po 'permanente e su un altro livello di eccezionale, allora l'umile cubo 4 x 4 x 4 LED è una scelta naturale. La costruzione è molto più semplice di quanto si possa pensare, e usando un multiplexing possiamo controllare tutti i LED direttamente da una singola scheda Arduino Uno. È una buona pratica di saldatura e il costo totale dei componenti non dovrebbe superare i $ 40.
Oggi descriverò dettagliatamente il lato della costruzione delle cose e fornirò alcuni software per eseguirli che sembrano entrambi impressionanti e ti insegnano le basi.
Avrai bisogno
- Un Arduino. Il codice fornito presuppone un Arduino Uno, ma può essere adattato anche a un modello più grande.
- 64 LED - la scelta esatta spetta a te, ma ho usato questi LED blu 3mm superbright (3.2 v 30ma) @ £ 2,64 per 50.
- 16 resistori del valore appropriato per i tuoi LED. Per i LED sopra, 99 pence ne hanno acquistati 100. Usa ledcalc.com - inserisci 5v per la tensione di alimentazione, la tensione dei LED (nel mio caso 3.2) e la corrente in milliampere (3.2). La resistenza desiderata verrà visualizzata nella casella con l'etichetta “Resistenza nominale più alta più vicina”, quindi cerca quel valore su eBay.
- Alcuni filo artigianale per rafforzare la struttura di base e per la decorazione - ho usato 0,8 millimetri spessore.
- UN scheda di prototipazione di un certo tipo a cui puoi saldare tutti i tuoi pezzi. Ne ho usato uno che non aveva tracce complete lungo come non ho una taglierina, ma usa quello che fa per te. Uno scudo per la prototipazione di Arduino è un po 'troppo piccolo, a meno che non si comprimano davvero i LED.
- Filo componente casuale - alcuni cavi di rete e alcuni cavi di prototipazione di un kit funzioneranno bene.
- Clip di coccodrillo o “aiutare le mani” sono utili per tenere in posizione i bit.
- Saldatore e saldatura.
- Alcuni pezzi di legno.
- Un trapano con le stesse dimensioni dei tuoi LED.
Nota: i disegni 3D in questo tutorial sono stati eseguiti in pochi minuti utilizzando TinkerCAD. Ho seguito una build esistente dettagliata su Instructables dall'utente forte1994, che potresti anche voler leggere prima di provare questo.
Assicurati di leggere tutte queste istruzioni primo prima di provare questo per te stesso.
Il principio di questo design
Prima di iniziare la costruzione, è importante avere una panoramica completa di come funzionerà questa cosa in modo da poter improvvisare e identificare gli errori man mano che si procede. Alcuni cubi di LED utilizzano un singolo pin di uscita per ogni singolo LED, tuttavia in un cubo 4x4x4, che sarebbe necessario 64 pin - che certamente non abbiamo su un Arduino Uno. Una soluzione sarebbe quella di usare i registri a scorrimento. Programmazione Arduino - Giocare con i registri a scorrimento (a.k.a ancora più LED) Programmazione Arduino - Giocare con i registri a scorrimento (a.k.a ancora più LED) Oggi cercherò di insegnarti qualcosa sui registri a scorrimento. Queste sono una parte abbastanza importante della programmazione di Arduino, fondamentalmente perché ampliano il numero di uscite che puoi usare, in cambio di ... Leggi di più, ma questo è inutilmente complicato.
Per controllare tutti quei LED in soli 20 pin, useremo una tecnica chiamata multiplexing. Rompendo il cubo in 4 strati separati, abbiamo solo bisogno di pin di controllo per 16 LED - quindi per accendere un LED specifico, dobbiamo attivare sia il layer che il pin di controllo, dandoci un requisito totale di 16 + 4 pin. Ogni strato ha un catodo comune - la parte negativa del circuito - quindi tutte le gambe negative sono unite e collegate a un singolo pin per quello strato.
Sull'anodo (positivo) lato, ogni LED sarà collegato al LED corrispondente nello strato sopra e sotto di esso. Essenzialmente, abbiamo 16 colonne delle gambe positive e 4 strati del negativo. Ecco alcune visualizzazioni 3D delle connessioni per aiutarti a capire:
Costruzione
Dal momento che non useremo una struttura metallica completa a cui saldare, vogliamo che tutte le gambe dei LED si sovrappongano di circa un quarto e diano rigidità alla struttura. Piega il catodo dei tuoi LED - il lato con la tacca piatta nella testa e la gamba più corta sopra - come mostrato nello schema. (Non importa se lo pieghi a destra oa sinistra, fintanto che sei coerente e non tocca mai l'anodo)
La prima parte critica di questo progetto è la realizzazione di una maschera di legno. Questo manterrà uno strato di LED mentre si saldano le gambe insieme, quindi deve essere preciso e non troppo largo. Usando la punta della stessa dimensione dei LED, misurare e quindi praticare una matrice 4 × 4 di equidistante fori. Ricordare che si desidera sovrapporre un quarto della gamba al suo vicino e utilizzare un righello effettivo. Controlla ogni foro per assicurarti che un LED possa adattarsi perfettamente, ma non così stretto da non poterlo estrarre di nuovo, altrimenti avrai problemi quando tenti di rimuovere uno strato completamente saldato.
Saldare i catodi di 4 file di LED. Fare attenzione a non bruciare i LED: si desidera un buon ferro caldo e si deve entrare e uscire. Ecco le mie prime quattro righe completate.
Ora, per rafforzare la rigidità dello strato, tagliare e saldare due pezzi dritti di fili artigianali su entrambe le estremità, assicurandosi che si colleghino con ciascuna fila. Questo è il tuo primo livello completo. Lascia per ora tutte le gambe in eccesso che sporgono di lato.
Ora sarebbe un buon momento per testare: basta caricare l'app Blind Arduino predefinita e, con un resistore collegato, posizionare il terreno sul telaio del livello e premere il cavo positivo su ciascun LED a turno..
Spero che si accendano tutti. In caso contrario, assicurati di non aver perso un giunto di saldatura da qualche parte e, se necessario, sostituire il LED.
Rimuovi quel livello dalla jig e ripeti il processo Altre 3 volte.
Non preoccuparti se la tua saldatura non è perfetta, a patto che non si rompa e la connessione sia solida, non influirà sul prodotto finale. Lo ammetto, il mio saldare era abbastanza senza speranza, il mio giga era spento, e tutto somigliava alla torre pendente di Pisa. Tuttavia, sono orgoglioso del cubo finito e, quando i LED sono accesi, non guarderai comunque i giunti di saldatura!
Unione di strati
Una volta che hai completato 4 livelli, dovrai unire tutte le gambe verticali insieme. Ho trovato che questa fosse la parte più difficile della costruzione e per aiutare il processo ho tagliato un riser di carta.
Ciò mantenne gli strati all'altezza appropriata, ma molte delle gambe non si allineavano perfettamente - per questo, ho usato alcune clip di coccodrillo per tenerle in posizione.
1o stupido errore da evitare
Solo dopo aver completato uno strato completo ho realizzato che il riser della mia scheda era bloccato, quindi ho dovuto ritagliarlo! Non fare lo stesso errore che ho fatto: rendere il riser più lungo sul lato e unire i pezzi di carta all'esterno del cubo, quindi quando hai completato il livello, puoi decostruire il riser ed estrarre la carta.
Secondo stupido errore da evitare
Non saldare la gamba verticale al telaio del catodo, ovviamente. Le gambe verticali dovrebbero solo collegarsi ad altre gambe verticali e nient'altro.
Ancora una volta, prova dopo ogni strato è stato allegato. Prova tutti gli strati, infatti, tocca solo il cavo positivo fino alla punta dello strato più alto, assicurando così un buon contatto attraverso tutti gli strati.
Quando tutti e 4 i layer sono stati saldati insieme, ho deciso di ripulire un po '- ho lasciato una sola gamba distesa su ogni strato in una sorta di trampolino di lancio - questa sarebbe stata lasciata cadere sulla scacchiera più tardi. Altre parti estranee del telaio metallico e delle gambe sono state tagliate. Ovviamente, non tagliare nessuna delle gambe verticali - dobbiamo metterle nella nostra scheda protettiva.
Fissaggio alla scheda
Ricordi quando ho detto che fissare ogni strato a se stesso era la parte più difficile? Ho mentito. Cercare di adattare 16 piedini a LED in piccoli fori su una scheda di prototipazione è effettivamente più difficile. Il modo più semplice che ho trovato è stato quello di colpire 4 alla volta, fissarli al di sotto con clip a coccodrillo, quindi passare alla riga successiva di 4. Utilizzare un pennarello per marcare in anticipo la spaziatura se aiuta.
In retrospettiva, avrei inserito i resistori nel protoboard prima, in realtà. Così com'è, ho prima saldato tutte le gambe del cubo nella scacchiera, poi ho provato a schiacciare delicatamente i resistori tra di loro. Impara dal mio errore e posiziona prima i tuoi resistori.
Ho provato a distanziarli equamente in modo graduale, in modo da poter utilizzare un intero lato del cubo per tutte le connessioni finali ad Arduino. Ecco lo schema del circuito con cui sono andato:
Per i quattro strati negativi, ho lasciato cadere un singolo filo verso il basso da ogni strato, quindi li ho appena tirati di lato, in questo modo:
Infine, ho aggiunto alcuni cavi plug che potevo quindi inserire nei relativi pin Arduino. Usa il tipo più lungo che hai. Nota Ho incasinato l'ordine nei posti a causa di una pianificazione scadente. Tuttavia, ogni fila di LED era codificata a colori.
Questo è tutto. Finito!
Programmare il tuo cubo
So che non vedi l'ora di far esplodere questa cosa, quindi inserisci i 4 livelli negativi in I / O analogico porti A2 (strato inferiore) attraverso A5 (strato superiore) (questi possono anche agire come I / O digitali). Quindi collegare i 16 pin di controllo a LED, a partire da +1 all'estrema destra a I / O digitale porta 0, con +15 e +16 andando in analogico A0 e A1. (Non usare AREF e GND)
Scarica i modelli demo e il codice da utente istruibile forte1994. Ha anche fornito un utile strumento online per progettare i modelli di byte per personalizzare la propria sequenza. Ecco un video di questo codice in azione sul mio cubo (Ho regolato la velocità a 5, invece del default 20).
Questo non è l'unico modo per programmare il tuo cubo, ovviamente, quindi lascia che passi alcuni minuti ad insegnarti le basi per creare i tuoi modelli a livello di codice, piuttosto che riprodurre i pattern preimpostati come fa la demo sopra.
Ci sono alcune cose che dovresti sapere quando provi a programmare il tuo cubo:
- Per indirizzare un singolo LED, usi a aereo (livello) numero 0-3 e un numero di pin LED 0-15. Ruota l'aereo sull'uscita LOW (poiché questa è la gamba negativa) e il numero di pin LED HIGH (la gamba positiva) per attivare il LED.
- Prima di attivare un singolo LED, assicurarsi che tutti gli altri piani siano spenti, ovvero impostarli sull'uscita HIGH. In caso contrario, si verificherà una colonna di LED accesa anziché un singolo LED.
Con questo in mente, ho fatto due sequenze programmatiche molto semplici da esaminare - scarica il codice da qui. Il primo accende semplicemente ogni LED uno alla volta, in sequenza. Usiamo due loop for per questo, iterando su ogni layer e ogni pin di controllo.
Il secondo è un ciclo casuale (è necessario commentare il primo e abilitare questo nel ciclo principale per testarlo). Seleziona semplicemente un livello casuale e un perno di controllo casuale, lampeggiandoli e spegnendoli.
Sommario
Non lasciarti intimidire da questa build: mi mancano seriamente le capacità di saldatura e sono riuscito a farlo (Credo?). Il tempo di costruzione totale era un'ora o così al giorno per una settimana. La prossima volta cercherò di insegnarti qualche programmazione più ambiziosa per il cubo, quindi spero che ti unirai a me per costruire il tuo cubo questa settimana e caricando del nuovo codice la prossima settimana - e se lo farai tu stesso app o sequenze fantastiche, per favore caricali su Pastebin e faccelo sapere nei commenti!
Scopri di più su: Arduino.