Led e resistenza - domanda da neofita

Salve a tutti per la realizzazione di un mio progetto avrei la necessità di utilizzare 8 led gialli da 5mm con una scheda arduino UNO.
Ho letto in giro che per evitare di bruciare i diodi occorre inserire una resistenza tra il catodo ed il PIN di arduino; ho letto anche che la resistenza varia a seconda del colore del diodo e della alimentazione.
A questo punto vi chiedo, che resistenze dovrei utilizzare per il mio progetto?
Altra cosa che non ho capito la tensione di alimentazione che devo utilizzare con lo spinotto dell'arduino di quanti volts deve essere? Da 5v oppure dipende dal progetto che devo realizzare?
Ciao e grazie

  1. come intendi collegare i LED ? Uno per pin ? In serie ?

  2. tali LED possono anche essere accesi tutti assieme ?

  3. Sul Jack rotondo di Arduno devi dare una tensione compresa tra i 7V ed i 12V ... l'ideale sono 9V che aiutano ad evitare un eccessivo surriscaldamento del regolatore di tensione.

  4. in allegato una tabella colore/corrente/resistenza per i vari LED in caso di singolo LED

Guglielmo

Led_Res.pdf (13.5 KB)

1 Like

Grazie mille per la risposta, i led li collegherò uno ad ogni PIN (sto realizzando un home cockpit per un aereo ed i led mi dovrebbero segnalare eventuali anomali alla strumentazione).
Mi sono già creato con una basetta millefori il circuito utilizando delle resistenze che (se leggo bene i codici) dovrebbero essere da 527 ohm (i colori sembrerebbero essere verde - rosso- viola - oro). Stando al tuo PDF quindi, chi mi ha venduto i led e le resistenze ha sbagliato in quanto tale dato non è accoppiato a nessun led (io dovrei utilizzare led gialli).
In particolare ho collegato fra di loro tutti i catodi degli otto led e poi ho interposto fra ogni anodo ed il PIN dell'arduino una resistenza di cui sopra per ogni led.
Ho quindi provato il tutto con il simulatore di volo e tutto funziona anche se non in maniera corretta.
Alcuni LED, infatti, hanno una luce abbastanza forte mentre altri ne hanno una davvero fioca.
la cosa strana è che la situazione rimane identica sia se collego una fonte di amlimentazione esterna e sia se collego arduino al pc tramite cavetto USB senza mettere alcuna alimentazione esterna.
Ma quando collego una fonte di alimentazione esterna all'arduino come faccio a "dirgli" che deve utilizzare tale fonte di alimentazione?
Ciao

Per accedere un LED bastano 10mA e questa è la corrente massima per cui si deve calcolare il valore della resistenza in serie (può essere collegata sia all'anodo che al catodo).

I LED gialli come i verdi hanno bisogno di una tensione Vf di 2V, mentre i rossi necessitano di 1.8V ed i blu ed i bianchi di 3V.

La formula è semplice:

R = (Vcc - Vf) / I = (5 - 2) / 0.01 = 300 ohm

che corrisponde a Arancione (3) - Nero (0) - Marrone (1) + Oro (5%) con il Marrone che è il numero di zeri.

Il valore può essere anche leggermente diverso (es. 270 o 330 ohm): la corrente sarà un po' superiore od inferiore a 10mA, ma sufficiente all'accensione del LED.

Il resistore che ti hanno dato ha un valore (520 Mega ohm) troppo alto: Verde (5) - Rosso (2) - Viola (7) + Oro (5%)

Pietrogramma:
Ma quando collego una fonte di alimentazione esterna all'arduino come faccio a "dirgli" che deve utilizzare tale fonte di alimentazione?

... se è un Arduino Originale NON devi dirgli nulla, sa già lui automaticamnete da dove prendere l'alimentazione e, nel caso siano entrambe collegate, automaticamnete disattiva l'alimnetazione che arriva dalla USB per prendere quella che arriva dal Jack.

Se NON è originale, fai molta attenzione perché spesso (... e ne ho un esempio qui sul tavolo) tale funzione non c'è o non fa quello che dovrebbe fare ... con pessime conseguenze per la scheda e magari anche per la porta USB a cui è collegato ... ::slight_smile:

Guglielmo

Ti rammento inoltre che ogni pin di Arduino può dare al massimo, a Vcc, 40 mA (... ma quello è veramente un limite, nel normale funzionamento occorre stare al 60-70% di detto valore) ed inoltre la somma di tutti i pin e dell'assorbimento del chip, non deve superare al massimo i 200 mA (... e anche qui massimo va considerato come valore limite, ma nel normale funzionamento occorre stare al 60-70% di detto valore).

Assorbimenti oltre detti limiti possono danneggiare irrimediabilmente il chip, per cui ... fai bene i conti di quanto assorbi al massimo da tutti i pin per evitare di danneggiarlo.

Guglielmo

L'arduino è sicuramente originale. Per quanto riguarda l'assorbimento dovrei esserci dentreo; stando a quanto gentilmente scritto da cybhers, infatti, ogni led prende 10ma e quindi, considerato che ne collegherò 8, dovrei avere un assordbimento di 80 ma, giusto?
Per quanto riguarda la luce fioca a questo punto penso che il problema siano le resistenze utilizzate, oggi andrò a comprarne da 300ohm e riprovo.
Vi farò sapere nel frattempo grazie sempre e ciao

300 non e' un valore standard, e potrebbero non averlo in casa, nel caso prendi 270 (led un po piu luminosi) o 330 (led un po meno luminosi), che vanno bene lo stesso :wink:

Ieri ho provato sia utilizzando una resistenzada 270 che da 330 ohm ho notato che con arduino UNO R2 non va (alcuni led sono belli luminosi altri molto fiochi) mentre utilizzando un mega arduino (che poi è quello che userò nel progetto finale) tutti i led erano abbastanza luminosi.
Siccome di led dovrò utilizzarne 16 (ovvero 8x2) e siccome nella basetta millefoti ho messo il negativo in corto per tutti i led posso utilizzare una sola resistenza che interporrei fra il negativo e l'arduino oppure devo per forza utilizzare una resistenza per ogni led?
Ciao e grazie

Si deve mettere sempre una resistenza per ogni LED.

16 LED sono troppi da accendere con Arduino ... rischi di superare l'assorbimento massimo quindi ... pensa ad usare dei transistor per pilotarli.

Come hai visto dalla tabella NON puoi usare lo stesso valore di resistenza per tutti i colori, ma devi calocolarlo per ogni singolo colore, altrimenti i rossi saranno più luminosi, i verdi un valore intermedio e i blu i meno luminosi.

Guglielmo

gpb01:
Si deve mettere sempre una resistenza per ogni LED.

16 LED sono troppi da accendere con Arduino ... rischi di superare l'assorbimento massimo quindi ... pensa ad usare dei transistor per pilotarli.

Come hai visto dalla tabella NON puoi usare lo stesso valore di resistenza per tutti i colori, ma devi calocolarlo per ogni singolo colore, altrimenti i rossi saranno più luminosi, i verdi un valore intermedio e i blu i meno luminosi.

Guglielmo

Mmmmm, per un pivellino come me, le cose si complicano, mi sa che dovrò studiaaareeee taaanto per capire come utilizzare dei transistor; speriamo di riuscire a farcela :slight_smile:
Ciao e sempre grazie

Pietrogramma:
Mmmmm, per un pivellino come me, le cose si complicano, mi sa che dovrò studiaaareeee taaanto per capire come utilizzare dei transistor; speriamo di riuscire a farcela :slight_smile:

La parola magica: studiare. :wink:
Anche per altri (neofiti) che leggeranno... Arduino + elettronica, bisogna imparare un pò di cosette, leggere, studiare, seguire dei tutorial. Non stiamo parlando dei Lego. Ed anche con i Lego, in realtà, non basta unire 2 pezzi per fare una megacostruzione. Anche li ci sono delle regole. :slight_smile:

Hai guardato nei megatopic ? C'e' un thread ABC dei collegamenti con gli schemi di Pighi, c'e' anche quello (mi pare) di un transistor per collegare un led

Verifica di avere messo i pinmode ad output...

In ogni caso meglio con i transistor. Tranquillo, per accendere un LED, alla fine, va bene quasi qualsiasi cosa metti come transistor e come resistori :grin:
Comunque segui gli schemi di pighi che ti hanno indicato.