Go Down

Topic: Aiutatemi a collegare led transistor e arduino (Read 3657 times) previous topic - next topic

Andrewa80

Ancora un saluto a tutti, cercando di studiare e scovare il più possibile informazioni, sono fermo di fronte a questo ostacolo.
La situazione è la seguente:
ho 40 led che saranno collegati a gruppi di 5 su arduino, per far ciò utilizzerò 8 transistor da 120ma circa, ogni led avrà una resistenza di 470ohm per una sorgente esterna di 5,2V a 2A.
Ora ho capito come funziona un transistor e sono riuscito a collegare 5 led, le 5 resistenze, il transistor ad arduino.
Ma qualcuno mi può spiegare meglio  come collegare tutti e 8 i transistor?
Magari con un immagine...sperando di non chiedere troppo.

Grazie mille a tutti!

Brunello

come nell'esempio sotto

E poi, che Led sono, perche' se vuoi un po' di luce in piu', 470 Ohm sono un po' troppi

oppure, se usi una tensione piu' alta ( ad esempio un 12V ), il secondo collegamento
Chiaramente cambia il valore della resistenza e si dovrebbe sapere che tipo di Led sono

Andrewa80

I led sono ad altissima luminosità li ho provati con quella resistenza e va più che bene.
Lo schema mi è chiaro... ed è esattamente ciò che ho realizzato con 1 gruppo...
Ma per più gruppi?

Brunello

Ripeti per 8 volte lo stesso gruppo e ti colleghi a 8 pin diversi di arduino.

Se poi ti mancano i Pin, allora si usa uno shift register

Andrewa80

I pin li ho a disposizione, ma i GND? Li collego tutti insieme?

Brunello

si, tutti i GND sempre insieme e collegati al GND di Arduino

matrix_77

#6
Nov 16, 2012, 09:04 am Last Edit: Nov 16, 2012, 09:07 am by matrix_77 Reason: 1
non so se è consentito scrivere nel post di un altro onde evitare post uguali, se questo fosse considerato "scorretto" vi prego di cancellare il mio post...

ho visto con molto interesse l'utilizzo del transistor utilizzato quasi come "switch" per questa serie di led (seconda immagine postata da brunello) e ho alcune domande.
1)SORGENTE: ho una lipo 11,1-12,6...(potenza nominale delle 3 celle 3,7x3...a piena carica 4,2*3)...quale tensione devo considerare per i miei calcoli?
2)vorrei creare 2 serie da 8 led una rossa e una verde...(considerandoli entrambi a 1,5 v posso metterne max 8 considerando la lipo a 12v - tensione media)....che tipo di transistor devo utilizzare? le 2 resistenze indicate nell'immagine, prima del transistor e prima delle resistenze sono ancora necessarie? (immagino la prima si...la seconda considerando che i led "assorbono" quasi tutta la tensione non saprei...)
3)viene detto, alla richiesta di come gestire gli altri gruppi, di ripetere e collegare ad altri pin....se io ho necessita di gestire gruppi da 16 led tutti insieme (quindi con un solo segnale proveniente da arduino) e immaginando di replicare per 2 volte lo schema da 8...posso collegare un solo pin di arduino ai 2 pin dei transistor in modo da "pilotarli" insieme? o ci sono problemi di assorbimento o altro?
Grazie mille.

Brunello

Quote
1)SORGENTE: ho una lipo 11,1-12,6...(potenza nominale delle 3 celle 3,7x3...a piena carica 4,2*3)...quale tensione devo considerare per i miei calcoli?


In genere si fanno due calcoli. Per la tensione minima e quella massima.

Quote
2)vorrei creare 2 serie da 8 led una rossa e una verde...(considerandoli entrambi a 1,5 v posso metterne max 8 considerando la lipo a 12v - tensione media)....che tipo di transistor devo utilizzare? le 2 resistenze indicate nell'immagine, prima del transistor e prima delle resistenze sono ancora necessarie? (immagino la prima si...la seconda considerando che i led "assorbono" quasi tutta la tensione non saprei...)


Non puoi considerarli da 1,5V. Ogni Led , anche in base al colore, ha la sua tensione di giunzione ( Vf ) e anche se il valore esatto si trova nel datasheet del componente, e' circa 1,8 V per i ledi rossi e 2.0 per i led verdi.
Sotto a questa tensione, non si illuminano.
Quindi 8 led rossi = circa 14,4 V.  8 led verdi = circa 16 V.
Con 12 volts non ti si accendono
Nota importante. La resistenza in serie ai Led, e' obbligatoria. Serve a ridurre la corrente circolante, oltre ad adattare di conseguenza la tensione.
Se non la metti, tutta la corrente disponibile dall'alimentatore scorre attraverso i Led e ci potresti fare un Flash ( monouso, pero' ).

Per il colegamento, se vuoi ti faccio un disegnino




matrix_77

e cosa voglio di + dalla vita....un lucano!!! Ke ti devo, xkè + chiaro di così non potevi....il negativo della batteria va collegato con il ground di arduino e la messa a terra dei transistor giusto?

uwefed

Il negativo della batteria va collegato con la massa del Arduino e con ilemettitore del transistore. Nell'immagine é stato usato il simbolo di terra che se si vuole essere pignolo sarebbe sbaglaito. Comunque tutti vanno collegati tra di loro.
Ciao Uwe


matrix_77

ho ripreso l'argomento perchè ho trovato il tempo di testare un po' di cose.

Ho bisogno di un chiarimento:
1)se ho capito bene i transistor NPN necessitano di segnale HIGH sulla base per "attivare" il passaggio
2)viceversa i PNP sono normalmente aperti e il segnale HIGH sulla base chiude il passaggio

è corretto?

Se così fosse dato lo schema consigliatomi e visto che l'intenzione è di accendere in alternanza i led mi basta ssotituire un solo BC547 con un BC557?

Altra cosa, i lede resteranno accessi per diverso tempo...o rossi o verdi (un po' tipo semaforo).
Non volendo utilizzare relè mi chiedo:

posso mantenere per diverso tempo il segnale HIGH del pin di arduino (aldià del discorso di sommare l'assorbimento a tutti gli altri piedini e mantenermi nel range di tolleranza totale)?

senza usare relay c'è qualche altro sistema per mantenere i transistor nel loro stato?(non so se c'entra ma mi è venuto in mente lil corso di elettronica all'università con i registri flip-flop....)?

Grazie.

leo72


ho ripreso l'argomento perchè ho trovato il tempo di testare un po' di cose.

Ho bisogno di un chiarimento:
1)se ho capito bene i transistor NPN necessitano di segnale HIGH sulla base per "attivare" il passaggio
2)viceversa i PNP sono normalmente aperti e il segnale HIGH sulla base chiude il passaggio

Sui transistor NPN la corrente scorre da collettore (che è collegato quindi a Vcc) ad emettitore se sulla base viene dato un segnale con una tensione maggiore di quella presente sull'emettitore, che è collegato a massa. Il transistor NPN si pilota con tensioni positive.
Sul PNP invece la corrente scorre in senso inverso, da emettitore (collegato a Vcc) a collettore (collegato a massa). Questo se la tensione sulla base è inferiore a quella presente sull'emettitore.
Per esser certi che Arduino possa pilotare un transistor PNP, si usa pilotarne la base con un NPN.

Quote

Se così fosse dato lo schema consigliatomi e visto che l'intenzione è di accendere in alternanza i led mi basta ssotituire un solo BC547 con un BC557?

Va invertito il collegamento. Siccome nei PNP la corrente scorre in senso inverso, devi "girare" i led: invece che con i catodi verso il collettore, li devi mettere con gli anodi al collettore. L'emettitore va quindi collegato a Vcc e non più a massa. Devi poi controllare se il segnale basso del pin dell'Arduino riesce a mandare in conduzione il transistor. Usa casomai, come ti ho detto, un NPN per pilotare il PNP.

Quote

posso mantenere per diverso tempo il segnale HIGH del pin di arduino (aldià del discorso di sommare l'assorbimento a tutti gli altri piedini e mantenermi nel range di tolleranza totale)?

Se rimani nei limiti di corrente dell'Arduino, i pin possono restare in stato alto indefinitamente.

uwefed

#14
Feb 09, 2013, 01:17 am Last Edit: Feb 09, 2013, 01:19 am by uwefed Reason: 1

ho ripreso l'argomento perchè ho trovato il tempo di testare un po' di cose.

Ho bisogno di un chiarimento:
1)se ho capito bene i transistor NPN necessitano di segnale HIGH sulla base per "attivare" il passaggio
2)viceversa i PNP sono normalmente aperti e il segnale HIGH sulla base chiude il passaggio

è corretto?

No, non del tutto, c'é un inghippo.
Il NPN conduce tra colletore (positivo) e emettitore (negativo) se circola una corrente tra base e emettitore. Tra base e emettitore circola una corrente se la base ha un potenziale maggiore di 0,7V rispetto l'emettitore e non circola corrente se la tensione é minore di 0,7V e percui il transistore non conduce.

Il PNP conduce tra emettitore (positivo) e collettore (negativo) se circola una corrente tra emettitore e base. Tra emettitore e base circola una corrente se la base ha un potenziale piú della tensione di alimentazione meno 0,7V rispetto l'emettitore e non circola corrente se la tensione é piú alta della tensione di alimentazione meno 0,7V e percui il transistore non conduce.
Come da schema allegato nella risposta precedente se col PNP vuoi pilotare 12V vuol dire che il transistore conduce se la tensione della base é minore di 11,3V e non conduce se la tensione sulla base é maggiore di 11.3V.
Con Arduino non riesci a dare 12 V alla base del transistore ma solo 0V o 5V e percui un PNP condurrá sempre indipendentemente se pilotato con livello H o L.
Si puó ovviare a questo problema aggiungendo un transistore NPN e una resistenza che da alla base del PNP 12V tramite la resistenza e il NPN non conducente oppure il NPN conduce e percui il PNP conduce pure perché riceve 0V sulla base.

Per questo é meglio usare dei transistori NPN.


Quote from: matrix_77

Altra cosa, i lede resteranno accessi per diverso tempo...o rossi o verdi (un po' tipo semaforo).
Non volendo utilizzare relè mi chiedo:

posso mantenere per diverso tempo il segnale HIGH del pin di arduino (aldià del discorso di sommare l'assorbimento a tutti gli altri piedini e mantenermi nel range di tolleranza totale)?

senza usare relay c'è qualche altro sistema per mantenere i transistor nel loro stato?(non so se c'entra ma mi è venuto in mente lil corso di elettronica all'università con i registri flip-flop....)?

Grazie.


Non é un problema tenere le uscite del Arduino su H per tempi lunghissimi (quando non si superano le correnti massime consentite).
Aggiungere dei componenti logici esterni é una contradizione al concetto di logica programmabile perché il controller tramite la programmazione ha una logica modificabile senza cambiare il circuito esterno. Aggiungendo dei componenti esterni limiti questa flessibilitá e aumenti inutilmente la complessibiltá del circuito.

Componenti esterni si usano solo se é necessario e questo non é uno di questi casi.

Ciao Uwe

Go Up