Resistenze e corrente sul gate di un mosfet/transistor

Ciao a tutti, come faccio a calcolare la corrente che circolerà sulla base di un transistor / mosfet?
Devo pilotare infatti un carico di LED a 24v, pensavo di collegare la base del mosfet (IRF540) tramite 10k direttamente al pin dell'arduino, ma quali sono i calcoli che devo fare per esser sicuro di starci dentro? Altrimenti nel dubbio metto un 4n35 con un pulldown...

I MOSFET li piloti in tensione, non in corrente. Basta una R da poco, anche 1K, per limitare la corrente in uscita dal pin,. Il problema non si pone se devi usare i MOSFET come interruttore ON/OFF. Basta mettere il pin alto o basso. Ma se devi regolare la luminosità dei led io ti consiglierei di interporre un BJT classico (pilotato da un pin PWM dell'Arduino) con il quale poi pilotare il Mosfet.

Aggiungo che mettere una resistenza di pulldown da 10K sul gate del mosfet non è una cattiva idea.

MOSFET: Vengono pilotato in tensione. Tra Gate e Source c'é un isolante e percui funge da condensatore che deve essere caricato/scaricato. La resistenza del Gate la calcoli in modo che la corrente nel momento di accensione / spegnimento non supera la corrente che puó dare il PIN di uscita. Come tensione consideri una differenza di +5V.
Come modello di MOSFET devi scegliere un che con 5V é in piena conduzione. Normalmente nei datsheet vengono chiamati "Logic-Level Gate Drive" e hanno un VGSth minore di 2V.

BJT: Vengono pilotato in corrente.
Per non riscaldarsi quando é acceso devi portarlo in saturazione. IL BJT é in saturazione quando la corrente del colletore non é limitata dalla corrente della base. La corrente di base deve essere maggiore della corrente del Collettore diviso il guadagno minimo.
Tra base e Emettitore c'é un Diodo e percui una tensione di 0,7V ( il doppio se hai un darlington). La resistenza della base deve essere calcolata in modo che fa passare almeno la corrente di base minima per portare il Transisotre in saturazione e come altro limite di non chiedere troppa corrente al PIN di uscita.

Tutti due vanno bene per PWM da 490Hz come ha Arduino. A PWM a frequenze piú alte (sopra decine di kHz) i BJT hanno meno perdite di comutazione e percui hanno vantaggi perché si riscaldono di meno. Con carichi grossi sono vantagiosi i MOSFET perché serve poca potenza di pilotaggio.

Ciao Uwe

Bhe la resistenza pulldown è d'obbligo altrimenti penso non si spegna nemmeno!
Son curioso, come mai mi conviene pilotare con un transistor il mosfet per il PWM e non x l'on off??
Grazie mille siete sempre gentilissimi, primo Arduraduno che ci vediamo dovró offrirvi birra a fiumi!

Guglio:
Bhe la resistenza pulldown è d'obbligo altrimenti penso non si spegna nemmeno!

il pulldown serve di avere un potenziale definito nel momento di accensione o (se succede) quando non hai uscita collegata. ( potresti, anche se é improbabile avere un uscita tristate o un pin definito come entrata)

Guglio:
Son curioso, come mai mi conviene pilotare con un transistor il mosfet per il PWM e non x l'on off??

anch io sono curioso.

Ciao Uwe

Guglio:
Bhe la resistenza pulldown è d'obbligo altrimenti penso non si spegna nemmeno!

Non è che non si spegne, è che se senza la pulldown c'è il reale rischio che quando il pin lo pilota si trova in alta impedenza, in pratica svariati decimi di secondo dopo aver dato l'alimentazione, il mos vada in conduzione con tutte le conseguenze del caso.

Son curioso, come mai mi conviene pilotare con un transistor il mosfet per il PWM e non x l'on off??

Perché diventa necessario caricare e scaricare la capacità parassita presente sul gate, a seconda del tipo di mos tale capacità può essere rilevante, in particolare su i mospower, e diventano necessarie correnti istantanee anche di svariate centinaia di mA per poter aprire e chiudere il gate in tempi brevissimi.
Dato che il pin di Arduino non può fornire più di 40 mA si dimensiona la r serie per limitare a tale valore la corrente massima, come conseguenza si crea un vero e proprio circuito rc con la relativa costante di tempo che limita la massima frequenza utilizzabile e porta a lavorare il mos per un certo tempo nella zona lineare con conseguente maggiore dissipazione di potenza (= surriscaldamento).
Da notare che anche se la corrente istantanea può assumere valori elevati si parla di tempi brevissimi, nell'ordine dei us, e l'energia totale è molto poca, molto minore di quella necessaria per far funzionare un normale transistor.
Per farla breve per un uso on/off di un mos si può pilotare il gate direttamente con un pin di Arduino anche se si tratta di un mospower, se c'è di mezzo il pwm a seconda del tipo di mos, ovvero da quanto vale la capacità parassita sul gate, non ci sono particolari problemi per comandarlo direttamente da un pin di Arduino alla sua frequenza pwm (490 hz) se si tratta di piccoli mos, con i mospower è meglio usare almeno un transistor come driver del gate, cosa comunque obbligatoria se non si tratta di mos logic level visto che in questo caso per saturare il gate servono almeno 10V.

Comunque se é opportuno o neccessario pilotare il MOSFET non direttamente dal uscita del Arduino servono 2 transistori messi in totem pole per poter caricare e scaricare la capacitá parasita del GATE con correnti significative. Se si usa solo 1 transistore si ha bisogno di una resistenza che porta il gate sul livello opposto di quello che porta il transistore. Dovrebbe essere piú basso possibile ma che comporta che la corrente attraverso il transistore e la resistenza in caso di conduzione del transistore é grande.
Ciao Uwe

Due soluzioni al caso :slight_smile:
Il totem driver :

Un driver semplice ed "economico":

un poca di teoria :
http://www.ti.com/lit/ml/slup169/slup169.pdf

Poi puoi passare ai driver integrati ma costano più del mos e si usano, di solito per correnti elevate