Info primo utilizzo di un transistor con Arduino

Ciao a tutti, ieri sera mi son messo a smanettare un pò con Arduino e componenti elettronici vari, giusto per capirne il funzionamento.. Uno di questi "sconosciuti" è proprio il transistor.. Siccome avrei in mente di comandare una striscia di LED RGB tramite PWM, mi son visto un pò di tutorial su come comandare dei LED a 12v

Purtroppo avendo in casa solo un BC547B ho provato con solo 6 LED per non sforare i 100mA che se non ho capito male sono il limite di questo transistor

Ho messo tutto su breadboard e (stranamente) funziona tutto ;D

Il funzionamento è questo: Quando il fotoresistore viene illuminato, mette in attesa, si fa per dire, Arduino.. Quando poi non è piu illuminato, mi fa accendere la striscia di LED in dissolvenza, la quale si spegne dopo un certo timeout, sempre in dissolvenza.. e fin qui tutto bene..

Per la dissolvenza uso un ciclo FOR da 0 a 255 e viceversa, ma ho notato che passato un certo valore, circa 150, la luminosità non cambia, in accensione, e in spegnimento, la dissolvenza comincia a notarsi sotto tale valore, e quindi il tutto è piu rapido del previsto..

Pensavo fosse un problema della R posta sulla base del transistor NPN ma anche variandola non cambia nulla.. :-[

Questo è uno schemino fatto al volo con Fritzing.. scusate ma è la prima volta che lo uso ;D

EDIT: Ehmm mi sono scordato di disegnare il filo che va al +5v di Arduino :-[

Ciao, I led hanno una caratteristica luminosa che aumenta in funzione della corrente fino ad un certo punto e poi si stabilizza. Prova a mettere una resistenza tra i 12V e il led e vedi se cambia la situazione! Ciao

P.S: Che valore di resistenza hai messo sulla base del transistor?

Effettivamente questa cosa l'avevo notata anche con il semplice sketch del LED che pulsa.. oltre un certo valore la luminosità non cambiava.. pensavo magari fosse per la resistenza sbagliata..

Per quanto riguarda la resistenza sulla base del transistor, avevo seguito le istruzioni del tutorial (che in realtà era per pilotare un relè 12v)

Non avendo le caratteristiche della striscia di LED, ho misurato la corrente assorbita ( 36mA per 6 LED.. possibile? ::) )

Quindi ho usato la formula (sempre dal tutorial)

Ib = Ic / hfe = 0,36 / 180 = 0,002A

e poi

R = 5v / 0,002 = 2500 = 2,5k ohm

e siccome non esiste ho provato sia con una da 2,2k che 2,7k ma non cambia nulla.. Ho anche fatto una prova ignorante mettendo un potenziometro al posto della resistenza ma stesso risultato..

In effetti misurando col tester la corrente che attraversa il led cambia ma la luminosità no.. forse è proprio la caratteristica del led o forse passa comunque troppa corrente dal transistor.. ::)

prova a usare un BC337 com transistor NPN :D

Dici che il BC547 non regge? Eppure dovrebbe reggere fino a 100mA no?

perchè semplicemente non accorci il ciclo forda 0 a 150 e poi aggiungi un pò di ritardo per allungare il tutto? :)

Beh si a livello software si può correggere.. Più che altro mi interessava capire a livello di elettronica se c'era qualcosa di sballato ;)