Interruttore low side con MOSFET.
Un transistor MOSFET a canale N può essere assimilato con un
transistor a giunzione NPN
|
Per quanto riguarda i terminali, possiamo indicare una similitudine
tra di essi:
- gate -- base
- drain -- collettore
- source -- emettitore
|
dove gate e base sono i rispettivi elettrodi di controllo della conduzione
che avviene tra drain-source nel MOSFET e collettore-emettitore nel BJT.
La differenza sostanziale tra i due semiconduttori consiste proprio nel modo
in cui viene controllata questa corrente.
Essenzialmente, la corrente di collettore di un BJT è pari alla corrente di base moltiplicato per il guadagno del
transistore, che, quindi, si comporta come un amplificatore.
Per contro, un MOSFET (Metal Oxide Semiconductor FET -
transistor FET a ossidi metallici) è un dispositivo controllato dalla
tensione applicata al gate. In funzione di questa tensione, il circuito tra
drain e source si comporta come una resistenza variabile, il cui valore
dipende dalla tensione tra gate e source (Vgs).
Se la tensione è 0 volt, la resistenza sarà molto alta, diversi
megaohm, e il MOSFET si comporterà come un interruttore aperto. Se la Vgsè al di sopra di un certo livello, la resistenza sarà molto bassa,
ohm o frazioni di ohm, e il MOSFET si comporterà come un interruttore chiuso.
Il foglio dati del componente indica il valore minimo di questa resistenza
drain-source Rds, che, in alcuni modelli può scendere a
millesimi di ohm.
Come per il transistor BJT, in questa applicazione non ci interessa il
comportamento lineare del circuito drain-source in funzione della Vgs;
essenzialmente ci interessano le condizioni limite di non conduzione e di
massima conduzione: il MOSFET viene utilizzato come un interruttore
aperto/chiuso.
Dal punto di vista del microcontroller o della logica che comanda il gate del
MOSFET, esso si presenta come un condensatore; l'unica corrente richiesta è
quella necessaria per caricare o scaricare questa capacità. Una volta che il condensatore
sia caricato, nessuna ulteriore corrente scorrerà dal pin del microcontroller
fino a che non se ne cambierà il livello di tensione.
Se applicando una adeguata corrente alla base del transistor BJT possiamo
portarlo
in saturazione, ovvero nello stato di conduzione in cui la caduta di tensione
nella giunzione C-E è la minima, così, applicando una adeguata tensione al
gate del MOSFET possiamo ridurre al minimo la sua resistenza di conduzione: la massima corrente possibile scorrerà
tra drain e source.
Dunque le due differenze principali si possono sintetizzare :
Transistor a giunzione:
- il transistor a giunzione necessita di una corrente alla base durante
tutto il periodo di conduzione
- e la sua resistenza di conduzione è in effetti una soglia di tensione
che ha un valore minimo alla saturazione, ma comunque a partire da un
valore minimo di 0.4V in su
MOSFET:
- il MOSFET richiede l' applicazione di una tensione minima per avere la
massima conduzione. A parte la corrente iniziale di carica del gate,
praticamente non è richiesta più corrente
- la resistenza di conduzione è una resistenza reale e con processi
produttivi adeguati può raggiungere valori di millesimi di ohm
Ne risulta che sarà necessaria una energia complessiva inferiore per
controllare il gate del MOSFET rispetto alla base del transistor e che le
perdite in conduzione saranno dalle 2 alle 10 volte e più minori nel MOSFET.
Ad esempio, un transistor NPN, con una Vce(sat) = 0,7V commuta una corrente di 10A. Sulla giunzione sarà
dissipata in calore una potenza:
Pd = Vce(sat) * Ic =
0.7 * 10 = 7 W
Se al posto dell' NPN inseriamo un MOSFET con una resistenza
minima di 18 mohm, si avrà:
Pd = Rgs * Id2
= 0.018 * 102 = 1.8 W
con una riduzione del 75% dell' energia persa in calore, che
si trasforma non solo in risparmio energetico, ma nella riduzione del costo e
del volume del dissipatore.
Occorre comunque avere presente alcuni punti:
- Il pin del microcontroller deve poter fornire la corrente di carica
del condensatore-gate. Si tratta di un impulso di elevato valore per
un tempo breve (la capacità è piccola). Ma questo impulso è necessario
per caricare il gate. Quindi il port deve essere in grado di fornire
questa corrente.
- Durante la carica del condensatore, la resistenza drain-source passa dal
massimo (condensatore scarico) al minimo (condensatore carico).
Utilizzando il MOSFET come interruttore sarà necessario ridurre al minimo
il tempo durante il quale la giunzione presenta una resistenza sensibile,
dato che questa, moltiplicata per la corrente, determinerà una perdita
sotto forma di calore per effetto Joule
- La tensione minima per ottenere la minima resistenza di conduzione
dipende dal tipo di MOSFET e dalle sue caratteristiche. Buona parte di
questi semiconduttori richiedono una tensione Vgs superiore a 5V. Ne
risulta che il pin del microcontroller NON potrà caricare a pieno il
condensatore e il MOSFET presenterà comunque una resistenza elevata, che
darà origine a riscaldamento.
La soluzione al punto 3 è piuttosto semplice: per un collegamento diretto
del microcontroller con il gate di un MOSFET occorrerà scegliere un
componente definito Logic Level, ovvero con tensione Vgs
inferiore ai 5V. Questo è assolutamente indispensabile se vogliamo comandare
il gate del MOSFET direttamente dal pin del microcontroller.
Per gli altri punti, i driver dei pin di un microcontroller hanno
solitamente sufficiente capacità di corrente per portare in conduzione in
modo ragionevole il MOSFET. Ma, come abbiamo detto, il gate richiede una
tensione minima per ottenere la migliore resistenza in conduzione: se la
tensione applicata non è sufficiente, il MOSFET entra in conduzione, ma con
una resistenza molto più elevata del minimo e questo determina un inutile e
indesiderato riscaldamento del componente.
Per buona parte dei MOSFET la tensione di gate si aggira attorno a valori
tra 8 e 12V. Mentre la logica del microcontroller è alimentata a 5V. Ne
deriva che occorrerà un MOSFET la cui tensione di gate sia inferiore a 5V per
la conduzione. I dispositivi Logic gate hanno appunto Vgs
attorno ai 4.2V e quindi sono quelli adatti ad essere comandati direttamente
da una uscita a livello logico.
Se la tensione di alimentazione del microcontroller è minore di 5V
potrebbe essere difficile trovare MOSFET adeguati; in tal caso occorrerà
inserire un gate driver, ovvero un apposito circuito di pilotaggio del gate
che fornisca la tensone necessaria. Altrettanto sarà indispensabile se si
vuole utilizzare un MOSFET non - Logic Level . Se
così non si facesse, si avrebbe probabilmente l' accensione del MOSFET, ma in
una condizione di resistenza elevata, con il rischio di danneggiare il
componente e pilotare malamente il carico.
Dunque, se non si utilizzano gate driver
nella
scelta del MOSFET è d' obbligo la verifica che si tratti di un
componente Logic Level. |
Componenti Logic Level sono di facile reperibilità. Ad
esempio: RFP30N60L,
In pratica, il MOSFET agisce come un
interruttore, azionato dalla corrente di base. Avendo il riferimento alla massa, in inglese questa soluzione si
definisce "low side switch".
|
Dal punto di vista del carico, si tratta di una
logica "positiva":
port |
Q1 |
carico |
L |
off |
non alimentato |
H |
on |
alimentato |
Dal punto di vista del transistor, però, si tratta di una logica
invertente:
port |
Q1 |
tensione
al drain di Q1 |
L |
off |
H |
H |
on |
L |
|
L'applicazione tipica è questa:
|
Il transistor Q1, MOSFET a canale N, è collegato con il
source alla massa comune; la configurazione, analogamente a
quella del transistor NPN, si definisce open drain.
Il carico Rl è collegato al drain ed è
alimentato da una tensione Vcc che può essere diversa da quella che
alimenta il microcontroller e superiore ad essa per quanto è
consentito dalle caratteristiche del transistor.
Siccome vogliamo che il MOSFET si comporti come un interruttore
aperto/chiuso, senza situazioni intermedie, non ci sarà alcun
problema sul valore della corrente emessa dal pin del port, bensì sul
valore della sua tensione, che dovrà essere tale, a condensatore
caricato, da superare la Vgs.
|
Anche qui la tensione al carico può
essere la stessa di quella di alimentazione del microcontroller, o maggiore o
minore, assolvendo alle seguenti funzioni:
Vcc = Vdd |
il MOSFET, non richiedendo corrente di mantenimento, ma
solo tensione, consente al pin del microcontroller di comandare
un carico alla stessa tensione, ma con corrente maggiore di quella
fornibile direttamente dal pin |
Vcc < Vdd |
l' open drain, isolando il circuito gate-source dal
circuito drain-source, consente al pin del microcontroller di comandare un carico con
tensione e corrente maggiori di quelle supportabili direttamente |
Vcc > Vdd |
è possibile comandare un circuito con tensione minore
di quella del microcontroller e realizzare così un convertitore di
livello, ad esempio da 5 a 3V. |
In tutti i casi, però, il circuito del microcontroller e quello del
carico non sono isolati galvanicamente, avendo la massa in comune. Se
è necessario questo genere di isolamento, si dovrà provvedere con un
circuito adeguato. |
Altre caratteristiche che fanno preferire i MOSFET nelle
applicazioni di potenza sono:
-
elevata frequenza di commutazione
-
stabilità termica (bassa resistenza termica)
-
funzionamento ad alta temperatura
-
coefficiente di temperatura negativo (la mobilità diminuisce con T) e dunque
parallelizzabili senza grandi problemi
-
elevata tensione di breakdown, anche kilovolt
-
elevate correnti trattabili da un singolo dispositivo,
anche centinaia di ampere
Per contro, il controllo della corrente attraverso la polarizzazione della giunzione
base-emettitore
garantisce elevata sensibilità della corrente di uscita dalla tensione di
controllo, ovvero è possibile passare da una corrente minima a quella massima per
variazioni della tensione di controllo di pochi decimi di volt. In un MOSFET possono essere necessari alcuni
volt (la gm è in genere molto inferiore). Da qui l' utilità dei circuiti di
gate driver.
In definitiva, come regola generale si può affermare che i BJT sono preferibili per applicazioni
analogiche (amplificazione), mentre i MOSFET sono preferibili per applicazioni switching,
che è l'argomento di cui stiamo trattando.
Facciamo alcuni esempi pratici.
Primo esempio.
Supponiamo di dover comandare un carico che assorbe 150mA a 12V di alimentazione.
Esso non può essere comandato direttamente da un pin del microcontroller, sia
a causa della corrente elevata, sia per la tensione superiore alla Vdd.
Interponiamo allora un transistore MOSFET; data la basse corrente/tensione in
gioco andrà bene un elemento comune per uso
generale, come ad esempio 2N7000, ZVN4210, BS170 e simili, in T0-92.
Sarà
necessario verificare il foglio dati del componente per rilevare se la massima
corrente e la massima tensione sono adeguate all' applicazione.
Ad esempio, per il BS170G di OnSemi, il foglio dati indica:
-
una corrente di drain continua di 0.5A
-
una tensione Vds di 60V, quindi adeguate all'
applicazione, con un buon margine di sicurezza.
-
Potenza massima dissipabile 350mW
-
Rds massima di 5 ohm
Potranno essere usati anche molti altri modelli, ad esempio ZVN4206A o
2N7002.
Non essendo necessaria una corrente di gate continua, non occorre
alcun calcolo.
|
La R1 che si trova in serie al gate è opzionale ed ha lo scopo di
limitare il picco di corrente che carica il condensatore di gate. Il
suo valore non è critico e può variare tra 10 e 100 ohm circa.
La resistenza è necessaria per proteggere il transistor da
possibili oscillazioni e da correnti di picco nel gate quando si
comanda un carico induttivo.
R1 rallenta il MOSFET in accensione e spegnimento e questo
può essere indispensabile per evitare EMI (che aumentano la potenza dissipata)
e per il controllo dell'oscillazione spuria che può innescarsi a
causa delle induttanze tra il circuito di pilotaggio del gate e la capacità di ingresso
del MOSFET |
Per quanto visto, se ne deduce che la sostituzione di un transistor BJT con
un MOSFET in questo genere di applicazione è sempre vantaggiosa. E' possibile
che piccoli transistor per uso generico costino qualche cosa di meno di
piccoli MOSFET, ma anche in questi casi la scelta del MOSFET si può rivelare
vantaggiosa per la semplificazione del circuito e la riduzione del calore. |
Particolare interessante, essendo minore la dissipazione nei MOSFET, si
potranno utilizzare elementi in piccolissimi contenitori, come i SOT-23 SMD.
Il campo applicativo è ampio: comando di LED, di display a 7 segmenti, di
relè, cicalini e così via, a sostituire i vari BC547, 2N2222, 2N3906, ecc.
Secondo esempio.
Supponiamo di dover comandare un solenoide (relè,
elettrovalvola, motore) o comunque un carico dotato di induttanza (quindi
qualsiasi circuito con avvolgimenti su un nucleo di ferro).
|
Diventa obbligatoria l' aggiunta del diodo D1, con lo scopo di assorbire il picco di corrente inversa
generata dalla bobina dell'induttore al momento dello spegnimento.
Nell' induttanza una grande quantità di energia viene immagazzinata nel campo magnetico
quando l' avvolgimento è attraversato da corrente.
Quando la
corrente cessa, sopratutto in modo istantaneo (a 4MHz di clock una
istruzione del microcontroller è eseguita in 1 us), questa energia si
scarica sul circuito e, combinata con l' alta resistenza del
transistor in blocco, si traduce in una tensione elevata, anche molte
centinaia di volt, tale da danneggiare irreparabilmente la giunzione
del transistor stesso e, spesso, anche il pin del microcontroller.
|
Il diodo ha lo scopo di fornire una via a bassa impedenza per
scaricare questa energia.
Per piccoli carichi, come relè da circuito stampato e simili,
il tipo di diodo non è particolarmente legante: vanno bene
rettificatori generici come gli 1N4001/2/7. Nel caso carichi maggiori, come
solenoidi o piccoli motori, possono essere usati con maggior vantaggio diodi fast
recovery, come MUR3005PT, BYW92-50, MUR500 e simili. Carichi induttivi particolari, con
elevata potenza, potranno però richiedere circuiti di comando più
complessi.
R1 è vivamente consigliata a protezione sia del
gate che del pin del microcontroller. Il suo valore potrà essere attorno ai
100 ohm.
R2 ha la funzione di pull-down per mantenere bloccato il MOSFET
nella fase di POR del microcontroller, dove il port non è ancora configurato
come uscita. Il suo valore potrà essere attorno alle decine di kiloohm.
Nel caso in cui la potenza da commutare sia elevata, la scelta
del MOSFET è migliore di quella del BJT: come abbiamo visto, rispetto al transistor
bipolare, non esiste più problema di guadagno e la potenza persa in calore
sulla giunzione è decisamente inferiore. Quindi:
-
dispositivi più freddi
-
eventuali sistemi di raffreddamento meno impegnativi
-
maggiore scelta di dispositivi per corrente, tensione,
package, ecc.
-
maggiore frequenza di commutazione possibile
a fronte di costi per componente che possono essere perfino
più bassi, sopratutto dove sono richieste elevate prestazioni.
|
Sarà sempre necessario valutare la potenza dissipata
nel transistor. Nel caso di comando di relè cablati sul circuito stampato, le
correnti in gioco sono limitate a 100-200 mA o meno, quindi non ci sono rischi
di riscaldamento. Nel caso di relè di dimensioni maggiori o di elettrovalvole
e motori, sarà indispensabile selezionare il transistore per la
corrente/tensione richieste e valutare la necessità di un dissipatore.
Se la corrente richiesta è più elevata di quella trattabile
da un MOSFET in TO-92, sono disponibili in commercio elementi in TO-220,
TO-247. TO-3 e in packages per SMD o speciali per grandi potenze, in grado di
commutare molte decine di ampere a tensioni elevate.
In ogni caso, se intendiamo comandare il MOSFET direttamente dal pin del
microcontroller, ricordiamo che è obbligatoria la
scelta di un modello LOGIC LEVEL.
In caso contrario sarà necessario interporre un driver di
gate.
Quanto detto riguarda un comando ON/OFF "statico", ovvero
azionando il transistor come un interruttore acceso/spento.
Questa configurazione può essere, però, usata anche comandando la base
del transistor con impulsi, ad esempio in PWM, anche se può rendersi
necessaria una maggiore complessità del circuito a seconda del tipo di carico,
sopratutto in funzione dei tempi di commutazione richiesti. In
particolare, per ottimizzare la commutazione, è possibile che si renda
necessario l' uso di un gate driver anche con MOSFET Logic Level.
|