Accensione livello cubo led

Ciao a tutti, sono nuovo del forum e spero di aver scritto nella sezione giusta.

Ho in progetto la costruzione di un cubo led 6x6x6. Ogni colonna è collegata ad un'uscita di un 74hc595, in questo modo devo utilizzare al massimo 5 uscite dell'arduino, quindi la corrente totale in uscita corrisponderebbe ai 200mA massimi.

Se volessi però accendere un intero livello dovrei sfruttare tutti i 74hc595, per accendere un totale di 36 led. Considerando 20mA per ogni led superei i 200mA, quindi non è possibile farlo e dovrei accendere meno led in modo da avere un effetto POV? Oppure questa condizione vale solo per le uscite dei pin dell'arduino?

Sarò duro ma non ho capito come li hai connessi. Potresti descrivere meglio il progetto (o mettere lo schema che vorresti usare)?

Sto rispondendo con il cellulare quindi lo schema ora è un po' un problema..
Comunque i pin di uscita dell'arduino sono collegati ai 5 74hc595, ogni uscita di ogni shift register controlla una colonna di led.. quindi per accendere tutti i led al primo livello dovrei impostare tutte le uscite degli shift register a livello alto e correntr a 20mA.

Poichè per accendere tutti i led sono necessari più di 200mA, volevo sapere se era possibile..
Cioe se la limitazione di 200mA riguarda solo l'arduino o anche il circuito a cui questo è connesso.

I 200mA riguardano solo il ATmega sul Arduino. per ogni 74HC595 é la corrente massima 70mA. Devi usare un driver come il ULN2803 dopo i 595 oppure limitare la corrente per ciascun LED a 8mA. (comunque 20 x36 son 720mA che non puoi avere tramite USB. Ti servirebbe un alimentatore 5V esterno.)
Gli anodi comuni di ogni piano lo piloti con dei transistori oppure con un A2983 se hai limitato la corrente a 8mA.
Ciao Uwe

I 200mA riguardano solo il ATmega sul Arduino. per ogni 74HC595 é la corrente massima 70mA. Devi usare un driver come il ULN2803 dopo i 595 oppure limitare la corrente per ciascun LED a 8mA. (comunque 20 x36 son 720mA che non puoi avere tramite USB. Ti servirebbe un alimentatore 5V esterno.)
Gli anodi comuni di ogni piano lo piloti con dei transistori oppure con un A2983 se hai limitato la corrente a 8mA.
Ciao Uwe

per limitare la corrente posso utilizzare delle resistenze .. per alimentare il tutto va bene l'alimentatore dell'arduino uno oppure, oltre ad alimentare arduino, devo alimentare anche i vari shift register con un'alimentazione esterna?

La cosa che non capisco è perché devo limitare la corrente per ciasciun LED a 8mA e non a 20mA.
Considerando poi che tutti i led dello stesso livello sono accesi, la corrente che poi va a massa è 720mA, volevo sapere se anche il pin di massa ha un limite (cioè 200mA).

Spiega meglio come colleghi i LED del cubo.
Ciao Uwe

Ogni colonna ha anodo in comune, ogni livello catodo in comune. i livelli vengono controllati tramite dei transistor, quando questi sono da considerarsi come un tasto on, i catodi sono collegati a massa (circuito chiuso), permettendo il passaggio di corrente su tutto il livello.

All'uscita di ogni shift register metto una resistenza in modo da limitare la corrente a 20mA (corrente tipica per far accendere un solo led)

Mi sono un po' informato leggendo vari post, dimmi se quello che dico è corretto:

  • la limitazione dei 40mA riguarda solo i pin di I/O
  • la limitazione dei 200mA riguarda solo i pin del microcontrollore, quindi massa non ha limitazioni poiché il pin GND fa riferimento alla massa dell'alimentazione
  • Se utilizzassi un alimentatore per arduino, collegato tramite jack o tramite i pin Vin e GND, che mi fornisce la corrente necessaria non avrei problemi ad accendere un intero livello contemporaneamente (tenendo conto anche della corrente richiesta da arduino per poter lavorare).

Non hai considerato una cosa che avevo scritto:

per ogni 74HC595 é la corrente massima 70mA.

I 70 mA sono intesi la somma delle correnti su tutte le usite.
Ciao Uwe

Giusto, questa condizione l'avevo omessa.
Quindi è impossibile in questo modo accendere contemporaneamente 36 led, ma al massimo 3 led (20mA x 3 = 60mA) per ogni 74HC595.
Potrei ovviare a questo problema con dei TPIC6B595 ? ( forniscono una corrente totale massima di 500mA)

Il resto delle cose è corretto?

Sei sicuro che Ti serve una luminositá cosí alta? Prova una volta dare a un LED 8mA e poi decidi se servono per forza i 20mA.
Ciao Uwe

Con 8mA la luminosità è troppo bassa.. al massimo posso ridurre l'amperaggio a 15mA.
Quindi mi servono i registri di scorrimento TPIC6B595 ?

Io per essere sicuro, anche se complichi il circuito, per ogni colonna/riga (non ho ben capito come sono collegati), metterei un transistor per "accenderle" !

Ovvero, la base del transistor la colleghi ai registri, così in base a quale usi, non hai problemi di fornitura di corrente !

Non so se mi sono spiegato ..

Da quello che ho capito le possibili soluzioni sono le seguenti:

  • ad ogni shift register collego un uln2803 in modo da gestire una corrente maggiore
  • utlizzare gli shift register TPIC6B595
  • utilizzare solo i 74hc595 e accendere pochi led alla volta ad un'elevata velocità, in questo modo non supero l'amperaggio massimo degli integrati ed, essendo comandato tutto ad alta velocità, tutti i led sembrerebbero accesi contemporaneamente.

quale potrebbe essere la soluzione migliore?