banner
Casa / Notizia / Cubo LED con Arduino: costruisci un Arduino
Notizia

Cubo LED con Arduino: costruisci un Arduino

Mar 18, 2024Mar 18, 2024

Qui vi proponiamo un progetto che vi incanterà con i suoi giochi di luce, ancora più affascinanti al buio, basati proprio su diodi elettroluminescenti; per l'esattezza, una matrice di LED monocromatici in tre dimensioni, disposti nello spazio a formare un cubo.

Si tratta di qualcosa di sorprendente e allo stesso tempo semplice, alla portata anche dei più giovani e di chi si avvicina per la prima volta all'elettronica; a ciò si aggiunga il fatto che per la sua realizzazione non è necessario costruire alcun circuito stampato, in quanto i collegamenti della struttura del cubo vengono effettuati saldando tra loro i terminali del LED, ed i collegamenti dei terminali, all'unità di controllo, possono essere predisposti tramite un scheda di prototipazione della matrice.

La struttura del cubo è composta da quattro livelli (strati) di diodi emettitori di luce saldati insieme dopo aver opportunamente piegato i loro conduttori e averli disposti con la giusta polarità. Ogni livello è composto da 4 file, a loro volta composte da 4 LED, per un totale di 16 LED per livello; quindi il cubo è composto da 64 LED in totale. Il tutto è gestito da una scheda Arduino Nano attraverso collegamenti realizzati con fili che trasportano l'alimentazione e saldati su una scheda matrice multiforo. Il firmware determina quali LED nel cubo si accenderanno e quali no, creando effetti di luce pilotandoli in multiplex. Il nostro progetto del cubo LED necessita quindi dei seguenti elementi:

Caricheremo nella scheda Arduino un firmware che abbiamo scritto appositamente e che poi vi abbiamo messo a disposizione in fondo a questa pagina. Elettricamente lo schema di collegamento è mostrato inFigura 1 , che indica la corrispondenza tra le linee dell'Arduino Nano e le file dei led. Più precisamente, tra parentesi sono indicati riga e numero di LED: ad esempio (1, 2) significa che il corrispondente pin di Arduino deve essere collegato al secondo LED della riga 1; ecco perché nel diagramma tali coppie di numeri sono indicate come Y, X.

Invece gli strati da 16 LED corrispondono ciascuno a Z e sono da collegare ai pin A0 (A), A1 (B), A2 (C) e A3 (D). La designazione Z è più che appropriata perché gli strati sono disposti verticalmente, quindi, precisamente, sull'asse Z, mentre X e Y sono la larghezza e la profondità del cubo, definite da colonne. Questi collegamenti sono più facili da comprendere osservando la Figura 2, che mostra la disposizione spaziale dei LED e chiarisce i collegamenti delle coppie di numeri mostrate in Figura 1.

Ogni connessione all'I/O di Arduino pilota un anodo dei LED, mentre i catodi sono uniti tra i diodi di ciascun piano e vanno alle linee A, B, C, D, che verranno ciclate al livello logico basso. Quindi, per quanto riguarda l'hardware, ogni colonna del nostro cubo è collegata ad un pad I/O sulla scheda, in modo che ogni pin abbia 4 LED collegati ad esso; ma poiché il nostro Arduino Nano ha solo 14 pin digitali dovremo convertire 2 pin analogici in pin digitali, in modo da ottenere 16 pin digitali (13, 12, 11, 10, 9, 8, 7, 6, 5, 4 , 3, 2, 1, 0, A5, A4) che ci permetterà di attivare o disattivare la colonna che desideriamo.

Abbiamo applicato la stessa procedura ai 4 livelli, ai quali abbiamo collegato 4 pin (A3, A2, A1 e A0): ogni pin controlla un livello, in modo che combinando la selezione (accensione) di uno specifico livello (layer ) con la selezione di una specifica colonna tra le 16 sopra citate, potremo dire ad Arduino quale LED accendere e quale lasciare spento. Utilizzando questo espediente potremo realizzare questo progetto con soli 20 pin di I/O, cosa che sarebbe stata impossibile se avessimo collegato un LED ad ogni pin, poiché in quel caso avremmo avuto bisogno di 64 pin e, chiaramente, quelli di un piccolo Arduino Nano non sarebbe bastato. Riassumendo, per controllare in modo indipendente ogni LED, dividiamo il cubo in livelli (orizzontali) e colonne (verticali). Ogni LED posto sullo stesso livello (pavimento) avrà il catodo (-) in comune con gli altri LED sullo stesso livello mentre, invece, ogni LED posto nella stessa colonna avrà l'anodo (+) in comune con gli altri LED nella stessa colonna. In tutto ci saranno 4 pin da controllare, che serviranno per selezionare l'aereo da alimentare e 16 anodi che alimenteranno le singole colonne. Quando dovremo accendere un particolare LED dovremo assicurarci che il suo piano sia portato allo zero logico e che la colonna a cui appartiene sia attiva, cioè portata allo zero logico.

Board menu, choose the Arduino Nano board and then open (File > Open) the sketch, and then start loading it into the Arduino by clicking the Load button. /p>