Resistore, primo approccio

Salve a tutti.

Scusate se sto per fare domande banali ai più ma sono un vero principiate dell'elettronica. Ho iniziato a fare alcuni progetti presi dal libro dello starter kit e ho avuto subito alcune perplessità.

Ho il seguente mini circuito:
http://img16.imageshack.us/img16/7831/sketch1bb.jpg
Perchè viene usato un resistore da 220 ohm? Ho cercato di decifrare il libro: secondo la legge di Ohm, V = I * R, si ha un voltaggio di 5V ed una resistenza di 220 ohm, per trovare l'amperaggio usato dal led si sostituiscono i valori nell'equazione, 5=I*220; quindi I=0.023 ossia 23 mA; tale valore è il massimo che si può utilizzare per questi led, per questo è stato scelto un resistore da 220 ohm. Ma come faccio a conoscere io a priori il valore massimo di amperaggio del led e decidere quale resistore inserire?

Ho fatto una prova, ho invertito le posizioni del resistore con il filo che collega a terra il led del circuito di sopra e con mio stupore funziona bene. Mi aspettavo un aumento della luminosità del led. Perchè non è accaduto? Cioè, riformulando la domanda, ci sono differenze tra questi due circuiti?

  1. 5V - 220ohm - LED - GND 2) 5V - LED - 220ohm - GND

Grazie.

Bene per l’impegno, ma prima di Arduino sarebbe bene affrontare i concetti elementari dell’Elettronica e, solo dopo, addentrarsi nell’Arduinità!

Risposta 1) Un LED è un oggetto curioso e tra i primi che prende in mano un aspirante Elettronico. I 20 mA di consumo sono un pò un Dogma, nel senso che nessuno l’ha mai letto su qualche Datasheet, però tutti sanno che succhia circa 20mA.

Quindi, o lo assumi come un Dogma religioso, come feci io 20 anni fa, oppure vai a vederti il Datasheet (Fogli dei dati dei Costruttori di qualcosa).

Risposta 2) Una resistenza non ha una polarità, e dovunque la metti nella serie del circuito, lei farà il suo lavoro senza propblemi.
Per CONVENZIONE si usa mettere il controllo (in questo caso la resistenza) SEMPRE sul versante positivo del flusso di corrente (la corrente, come un flusso di acqua, va dal positivo verso il polo negativo), in modo da mettere i negativi di più utilizzatori in comune e per altri metodi standard di connessione, ma nulla vieta al progettista di mettere un transistor, un diodo, una resistenza sul versante negativo dell’utilizzatore. Dipende da come gli gira… :smiley:

salvuino:
secondo la legge di Ohm, V = I * R, si ha un voltaggio di 5V ed una resistenza di 220 ohm, per trovare l’amperaggio usato dal led si sostituiscono i valori nell’equazione, 5=I*220; quindi I=0.023 ossia 23 mA

Nel tuo calcolo non hai considerato la caduta di tensione del led, cioè quando lo colleghi “assorbe” qualche volt (di solito 1,7V per i led rossi), quindi sulla resistenza hai un voltaggio minore. Il calcolo diventa V-Vled = I * R → 5-1,7=I*220 I=15mA

I valori di tensione e corrente dei led li trovi, come ha detto BaBBuino, sul datasheet. Il voltaggio è diverso per tipo e colore del led. Su Wikipedia (http://it.wikipedia.org/wiki/LED) c’è una tabella con i valori più comuni.
Per sapere il valore della corrente ti devi affidare al datasheet, ma se come me non sai di che marca e modello sono i tuoi led considera un assorbimento di circa 10-15 mA.

Spero possa aiutare

Led_Res.bmp (522 KB)

BaBBuino:
Risposta 1) Un LED è un oggetto curioso e tra i primi che prende in mano un aspirante Elettronico. I 20 mA di consumo sono un pò un Dogma, nel senso che nessuno l'ha mai letto su qualche Datasheet, però tutti sanno che succhia circa 20mA.

BaBBuino Forse dovresti Tu leggere un po di datasheet. :wink: :wink: :wink: Il LED non succhia corrente. La corrente attraverso il LED deve essere limitata perché senó si surriscalda troppo e diminuisce notevolmente il suo tempo di vita.

@ salvuino
È uguale se metti la resistenza tra LED e massa (GND) o tra uscita Arduino e LED. Importante che la metti senó puoi rompere il LED e/o l' uscita di Arduino. Se ne aggiungi un transitore perché l'uscita del Arduino non puó dare la corrnete di cui ha bisogno l'utenza é importante dove metti il LED e il transistore.

Un LED standart regge ca 20mA. Si illumina bene anche a correnti minori. percui per risparmiare corrnete puoi anche dargli meno corrente. La tensione ai suoi capi dipende dal materale semiconduttore con cui é costruito e dalla orrente che ci circola. Dal materiale dipende anche il colore che genera. Se piloti il LED con intermittenza la corrente massima puó essere maggiore perché nelle pause ha tempo di rafreddarsi.

I valori disponibili delle resistenze (e anche dei condensatori) sono scelti come una progressione geometrica dove la differenza tra un valore e l' altro é il doppio della precisione del elemento.
Le resistenze con una precisione del 5% sono disponibili nella progressione E12 (anello tolleranza di colore oro).
Per saperne di piú: Valori standard resistori - Wikipedia e Resistore - Wikipedia dove sono riportati anche i codici colore che si usano sulle resistenze.

Ciao Uwe

uwefed:

BaBBuino:
Risposta 1) Un LED è un oggetto curioso e tra i primi che prende in mano un aspirante Elettronico. I 20 mA di consumo sono un pò un Dogma, nel senso che nessuno l'ha mai letto su qualche Datasheet, però tutti sanno che succhia circa 20mA.

BaBBuino Forse dovresti Tu leggere un po di datasheet. :wink: :wink: :wink: Il LED non succhia corrente. La corrente attraverso il LED deve essere limitata perché senó si surriscalda troppo e diminuisce notevolmente il suo tempo di vita.

Uwe, fammi capire, ma sei Italiano o sei un Tedesco che parla italiano? Nel secondo caso sispiegherebbe tutto...

BaBBuino:
Uwe, fammi capire, ma sei Italiano o sei un Tedesco che parla italiano? Nel secondo caso sispiegherebbe tutto...

Uwe è di Bolzano ma è di madrelingua tedesca.

Grazie a tutti per le ottime risposte.

C'è qualcosa che però mi sfugge. Non capisco a cosa serve mettere in ballo la legge di Ohm quando per conoscere quale resistore usare ci sia bisogno di questi datasheet.

Fatemi capire se ho capito (scusate il gioco di parole).
Ho il mio arduino uno che ha come ddp o voltaggio 5 volt, realizzo il mini circuito di prima, il led rosso sulla basetta, il cavetto dal catodo alla terra, manca il resistore, quale uso e perchè? Cerco il data sheet del led rosso da qualche parte, sembra questo http://www.everlight.com/datasheets/333-2SDRT-S530-A3_datasheet.pdf. Ora a pagina 2 c'è la dicitura Forward Current=25mA ma di resistore manco l'ombra. Forse il resistore ORA va calcoltato attraverso la legge di Ohm. Vediamo:
V= I * R => R = V / I => R = 5V/25mA = 0.2
0.2 ohm ?
Rifiaccio il calcolo mettendo nella formula 0.025 A invece di 25 milliAmp ed ho R = 5V / 0.025 = 200. Questa volta dovrebbero essere 200 ohm.
Uso un resistore da 220 ohm perchè si avvicina di più al 200 che ho trovato teoricamente?

Il Tuo calcolo é sbagliato perché devi considerare la tensione sul LED quando é alimentato con 25mA.
R = 5V -2,1V/25mA = 116 Ohm. se scegli 120Ohm hai una corrente di 24,2mA.

Dal Datasheet leggi i valori del LED. Con quelli valori puoi e la tensione di aliemntazione puoi calcolare la resistenza.

A pagina 2 di http://www.everlight.com/datasheets/333-2SDRT-S530-A3_datasheet.pdf é riportato i valori Absolute Maximum Ratings at Ta = 25°C ( valori massimi amissibili alla temperatura di 25V). Superando quelli il dispositivo si rompe in maniera definitiva. è meglio starne sotto. a pagina 4 trovi il grafico Forward current derating Curve che mostra la diminuizione della corrente massima in funzione della temperatura ambientale. Maggiore la temperature ambientale meno si puó rafreddare il LED e piú alta é la temperatura del semiconduttore all’ interno.

Per calcolare la resistenza per quel LED prendiamo dal datasheet i dati: VF da 2,0 a 2,4V quando circolano 20mA. Segliamo il valore tipico. IFmax= 25mA.

Poi prendiamo la decisione di risparmiare corrente (tanto il LED si vede illuminato comunque vedi grafico Luminos Intensity vs Forward current a pagina 4) a 10mA la luminositá é al 20% rispetto quella massima a 20mA; a 5mA é ca a 11% e a 1mA é al 3%. Quelle luminositá si riescono a vedere, forse le deboli non al sole ma in ombra o in casa sí.

Considerazione: quanto corrente puó dare Arduiono. Questo non é cosí facilmete da rispondere perché i limiti dipendono da piú condizioni.
Un pin puó dare fino a 40mA
I pin di massa e alimentazione reggono 200mA
Alcuni gruppi di pin reggono in somma 100mA (dato dalle connessioni interne al chip vedi datasheet ATmega328 a pagina 313 e 314).

Se ho solo 1 LED posso andare fino a 25mA (40 mA teorici del pin). Se ho 8 LED, a secondo su quali pin li attacco, posso dare da 12,5mA fino a 25mA.

La scelta dipende anche dal tipo di alimentazione. Con una batteria si tende di risparmiare molto perché cosí la batteria dura di piú.

A questo punto scelgo 10mA come valore medio perché non consumo troppa corrente e sono comunque all di sotto di tutti i limiti. ( potrei anche scegliere 20mA o 5mA; prova un po Tu se quanto si vede la differenza.)

Il calcolo:
R = (5V -UF)/IF = (5V - 2V)/10mA = 300 Ohm. I valori delle resistenza con spaziatura E12 piú vicine sono 270 Ohm e 330 Ohm. Possiamo scegliere entrambe. Con 270 Ohm avremo la corrente leggermente piú grande e con 330 Ohm leggermente piú bassa ( ca 11mA e 9mA).

Ciao Uwe

Ti ringrazio, ho capito.

Ora ho un’altra domanda. Con il seguente circuito:

Sostituendo il resistore da 10k ohm con un normale filo andrebbe in corto quando premo il bottone?

Certo che andrebbe in corto, metteresti in collegamento diretto +5 V e GND.
Ma per quale motivo non dovresti mettere quel resistore?
Non lo hai, al momento, disponibile?

Ok! Sì, ce l'ho quel resistore, chiedevo per essere sicuro di aver capito. Qui invece viene usato uno da 10k per "annullare" tutta la corrente? Ma perchè proprio 10k ?
Rifacendo i calcoli, considerando le info di uwefed:
-Un pin puó dare fino a 40mA
-R = (5V -V_f)/I_f

I_f dovrebbe essere in questo caso pari a 40mA
V_f ora è trascurabile?

Quindi, R=5 V/40 mA= 125 ohm

Manca qualcosa...

Più o meno... è un caso diverso.
40 mA sarebbero 0.04 A ma in questo caso non dobbiamo accendere un LED (quindi non c'è la Vf che sarebbe la caduta di tensione sul LED e tantomeno ci servono 40 mA).
Il collegamento verso GND (pur se avviene attraverso il resistore) serve a fare in modo che il PIN sia in uno stato LOW quando il pulsante è aperto.
Quando chiudi il pulsante, invece, il PIN si trova direttamente connesso ai +5 V e quindi sarà in uno stato HIGH.
Se togli il resistore da 10 k e lo sostituisci con un pezzo di filo, avrai un corto quando chiudi il pulsante, come abbiamo già visto.
Con il resistore, invece, eviti il corto ed alla chiusura del pulsante i + 5 V saranno direttamente connessi al PIN. Saranno connessi anche a GND ma ci sarà di mezzo il resistore da 10 k.
Se elimini il resistore ed il collegamento verso GND, quando il pulsante è aperto il PIN si troverà collegato a... niente. Magari funziona lo stesso, puoi anche dire ad Arduino di collegarlo verso GND usando un suo resistore interno, ma sono argomenti che è bene affrontare dopo, per ora accontentiamoci delle cose basilari.

Personalmente preferisco aggiungere un altro resistore, da 220 - 240 ohm (quello che mi ritrovo al momento) posto in serie fra il pulsante ed il PIN, per evitare di collegare direttamente i + 5 V al PIN. Quando chiudi il pulsante, il PIN sarà connesso sia a GND (con un resistore da 10 k in mezzo) che ai + 5 V (con un resistore da circa 200 ohm in mezzo) e quindi sarà in stato HIGH essendo comunque i 200 ohm trascurabili rispetto ai 10000 ohm.

Tutto quello che ho scritto rappresenta la mia personale (ancora poca) esperienza con Arduino. Magari qualche arduinofilo esperto potrà correggere eventuali imprecisioni.

salvuino:
Ok! Sì, ce l'ho quel resistore, chiedevo per essere sicuro di aver capito. Qui invece viene usato uno da 10k per "annullare" tutta la corrente? Ma perchè proprio 10k ?
Rifacendo i calcoli, considerando le info di uwefed:
-Un pin puó dare fino a 40mA
-R = (5V -V_f)/I_f

I_f dovrebbe essere in questo caso pari a 40mA
V_f ora è trascurabile?

Quindi, R=5 V/40 mA= 125 ohm

Manca qualcosa...

Le mie considerazioni valgono per un pin settato come uscita che pilota un LED.

Quel pin del pulsante é settato come entrata.

Forse é meglio che Ti studi un po di elettronica. :frowning:

Ciao Uwe

L'elettronica questo sconosciuto.
Hai (avete) qualche libro, link, o altro da consigliarmi? Qualcosa di pratico da fare insieme ad arduino sarebbe l'ideale.

Non mi do pace...

Sto facendo delle prove per capire come funziona. Con questo circuito: http://imageshack.us/a/img706/5825/bottone1.jpg, quando non premo il bottone da seriale ho 0, quando lo premo invece ottengo 1023.
Con quest'altro circuito dove ho scambiato il resistore con il filo: http://imageshack.us/a/img266/1571/bottone2.jpg, ottengo 0 sempre, non capisco il perchè.. Non dovrebbe comportarsi come con l'altro circuito? Il resistore non dovrebbe fare il suo lavoro a prescindere su dove viene messo?

questo è il piccolo codice per le prove

void setup(){
  Serial.begin(9600); 
}
void loop(){
  Serial.println(analogRead(A0));
}

Se invece di questi mosaici disegnassi gli schemi elettrici, vedresti (se interpreto bene il mosaico) che nel secondo schema il pin A0 è sempre collegato al GND, direttamente collegato al GND, quindi giustamente è sempre a 0.

paulus1969:
Se invece di questi mosaici disegnassi gli schemi elettrici, vedresti (se interpreto bene il mosaico) che nel secondo schema il pin A0 è sempre collegato al GND, direttamente collegato al GND, quindi giustamente è sempre a 0.

Secondo il tuo ragionamento anche nel primo caso doveva dare sempre 0, anche lì il pin A0 è collegato direttamente a GND ma invece del filo c’è il resistore.
Gli schemi dovrebbero essere questi in allegato.

Se c'è il resistore non e' collegato direttamente!

Ho capito quello che non capisco: resistenza pull-up/down. Resistenza pull-up - Wikipedia

...

Vedendo l'esempio forse ho capito

Quando l'interruttore è aperto la tensione del gate è "tirata su" al livello di Vin. Quando l'interrutore si chiude, il gate è collegato al ground portandosi così al livello basso (0 V).

E' "tirata su" perchè semplicemente non c'è collegamento con GND? Lo stesso discorso, se fosse valido, per i due schemi di prima?