Prima volta con i mosfet

221 views
Skip to first unread message

Samuele Zanin

unread,
Oct 14, 2014, 5:21:31 PM10/14/14
to treviso_ardui...@googlegroups.com
Per un progettino che sto tentando di portare al LD (se ci riesco), dovrei pilotare in pwm una lampadina riciclata dai fanalini dell'auto a 12 V, qualche decina di watt.

I mosfet che ho a disposizione li ho recuperati da un alimentatore rotto dei pc.

Sono dei 9N50C.
Ne ho testato uno attaccando un motore e batteria.
Gli esempi che ho trovato in giro sono con altri tipi di mosfet.
Per capire e calcolare abbastanza correttamente la polarizzazione di un transistor, ci ho messo 6 mesi.
Questo dovrei farlo funzionare da subito, lo posso comandare con i 5 V di arudino?
Mi pare di capire che la tensione sul gate dovrebbe andare da 0 a 10V.
Devo mettere una resistenza sul gate?
Poi devo anche capire se mettere un dissipatore oppure no.
La lampadina va pilotata con il PWM da 0 a 255 nell'arco di circa mezz'ora e poi deve rimanere accessa a piena luminosità per un po' di minuti.

Franco Prosdocimo

unread,
Oct 15, 2014, 1:16:53 AM10/15/14
to treviso_ardui...@googlegroups.com
Devi mettere una resistenza sul Gate verso Arduino e un altra è consigliabile porla tra il Gate e la massa.
Questa seconda resistenza di solito si mette perchè avendo il Moosfet un impedenza di ingresso molto elevata anche eventuali "rumori" elettrici potrebbero eccitarlo involontariamente.
Guardati il link per il pdf
http://www.datasheet4u.com/datasheet/9/N/5/9N50C_FairchildSemiconductor.pdf.html
Se vedi, trovi che la tensione di polarizzazione VGS è tra i 2 V e i 4V, per cui senza resistenza se gli applichi i 5 volt diretti lo fai fuori.
Il dissipatore di solito non si mette, perche la resistenza tra i pin Drain e Source quando è in conduzione è di valore talmente basso che la caduta di tenzione è praticamente nulla si parla di valori di solito al di sotto dell'ohm (vedi parametro RDS del datasheet, per cui la dissipazione del Mosfet sarà pari a:
Watt= ( I (corrente circuito lampadina) X  I (corrente circuito lampadina) X RDS (valore resistenza ai capi della giunzione DS del Mosfet)

Samuele Zanin

unread,
Oct 15, 2014, 6:53:25 AM10/15/14
to treviso_ardui...@googlegroups.com


On Wednesday, October 15, 2014 7:16:53 AM UTC+2, Franco Prosdocimo wrote:
Devi mettere una resistenza sul Gate verso Arduino e un altra è consigliabile porla tra il Gate e la massa.
Questa seconda resistenza di solito si mette perchè avendo il Moosfet un impedenza di ingresso molto elevata anche eventuali "rumori" elettrici potrebbero eccitarlo involontariamente.

Da ricerche, dicono da 22k a 1M... grossette :-).
 
Guardati il link per il pdf
http://www.datasheet4u.com/datasheet/9/N/5/9N50C_FairchildSemiconductor.pdf.html
Se vedi, trovi che la tensione di polarizzazione VGS è tra i 2 V e i 4V, per cui senza resistenza se gli applichi i 5 volt diretti lo fai fuori.

Sui max absolute rating mettono 30 V

Quindi devo fare un partitore di tensione? Se metto la resistenza in serie regolo la corrente, non la tensione o mi sono ri perso per strada?
Mettendola in serie, essendo ad alta impedenza il gate del mosfet, presumo che perché la resistenza abbia una succiente caduta di tensione dovrebbe essere sull'ordine dei centinaia/mega ohm, non bastano le normali resistenze da 4.7-10k.

Ho beccato dei pdf che spiegavano la polarizzazione, è ancora peggio di quella dei transistor. In un punto consigliavano addirittura di fare attenzione ai transitori di tensione che si generano sul gate quando passi da spento a conduzione, potrebbero far fuori il mosfet.

Un Samuele confuso.

Samuele Zanin

unread,
Oct 15, 2014, 5:45:40 PM10/15/14
to treviso_ardui...@googlegroups.com


On Wednesday, October 15, 2014 7:16:53 AM UTC+2, Franco Prosdocimo wrote:
Devi mettere una resistenza sul Gate verso Arduino e un altra è consigliabile porla tra il Gate e la massa.

Alura, ho messo una da 33k tra gate e massa e una da 1500 tra gate e arduino.
 

Il dissipatore di solito non si mette, perche la resistenza tra i pin Drain e Source quando è in conduzione è di valore talmente basso che la caduta di tenzione è praticamente nulla si parla di valori di solito al di sotto dell'ohm (vedi parametro RDS del datasheet, per cui la dissipazione del Mosfet sarà pari a:
Watt= ( I (corrente circuito lampadina) X  I (corrente circuito lampadina) X RDS (valore resistenza ai capi della giunzione DS del Mosfet)

Ho fatto girare lo sketch analog/fades tra gli esempi di arduino, l'effetto è quello voluto, ma il mosfet si scalda parecchio.
Non so da quanti watt sia la lampadina (ci sono i cavi ben inscoccettati da prove pregresse e non mi va di disfare quel lavoro di impacchettamento), da una ricerca su internet dovrebbe essere intorno ai 21 W.
Quindi, 21/12 =  1.75 A
RDS, lo danno a 10 V tra gli 0.65 e 0.8 ohm. Io arrivo al max a 5 V.
1.75^2 = 3.0625
3.0625 / 0.65 = 4.7 W
3.0625 / 0.8 = 3.8 W
Quindi tra i 3.8 W e i 4.7 W se avessi il gate a 10 V.
Non mi chiedere se sono tanti o pochi.
Il datasheet riporta sulle caratteristiche termiche "Thermal resistance, junction-to-ambient" 40 °C/W. Mi sono guardato la definizione su wikipedia, ma a sta tarda ora non riesco a fare il conto su quanti °C sia la temperatura massima che può raggiungere il mosfet. I 40° C/W dovrebbero essere dati dalla differenza di temperatura interna del mosfet e la temperatura ambiente diviso per la potenza che il mosfet riesce a dissipare in un secondo.

Ho fatto la controprova di attaccare il gate direttamente ai 12 V (sempre tramite la resistenza da 1500, dopo una decina di secondi fai fatica a tenere l'indice premuto sul mosfet causa calore.
Inizialmente avevo fatto la cavolata di non collegare assieme il negativo del trasformatore da 12 e rotti V su cui è attaccata la lampadina e l'arduino alimentato da pc.
Collegando assieme le due masse, mi pare di aver capito che non faccio casino, anche se un po' di cagotto c'è.

Franco Prosdocimo

unread,
Oct 16, 2014, 10:31:41 AM10/16/14
to treviso_ardui...@googlegroups.com
Con un tester misurando la resistenza della lampadina, ti ricavi i watt senza dover rimuovere il nastro isolante
Le resistenza che hai posto dovrebbero andare bene .. anche se l'esterto nei mosfet è ICIO.

Non concordo con la formula del calcolo dei Watt !!!!
W= V x I
Se tu non conosci V ma conosci R, la formula diventa:
W= I x I x R

Per cui i tuoi valori saranno pari a:
1.99 Watt con la resistenza da 0.68
2.45 Watt con la resistenza da 0.8

Samuele Zanin

unread,
Oct 16, 2014, 4:59:47 PM10/16/14
to treviso_ardui...@googlegroups.com
On Thursday, October 16, 2014 4:31:41 PM UTC+2, Franco Prosdocimo wrote:
Con un tester misurando la resistenza della lampadina, ti ricavi i watt senza dover rimuovere il nastro isolante

Ho una resistenza all'incirca tra 1 e 3 ohm. Non posso essere più preciso nella misurazione.
 
Le resistenza che hai posto dovrebbero andare bene .. anche se l'esterto nei mosfet è ICIO.

Che non ama scrivere in ml :-D.
 

Non concordo con la formula del calcolo dei Watt !!!!

Ad una certa ora si sta bene a dormire :-). Nell'ultimo passaggio ho fatto una divisione invece che moltiplicazione.

W= V x I
Se tu non conosci V ma conosci R, la formula diventa:
W= I x I x R

Per cui i tuoi valori saranno pari a:
1.99 Watt con la resistenza da 0.68
2.45 Watt con la resistenza da 0.8

Ok.

Ora, ipotizzando che il problema fosse che non riuscivo a fornire un'adeguata tensione al gate, ho deciso di provare a pilotare il mosfet con un transistor... adesso comincio a costruire i miei primi mostriciattoli.

Anche qui, non sapevo che resistenze mettere, sono andato un po' a naso.
Come transistor ho recuperato un BC337−40.
Sul collettore, avevo una resistenza da circa 400 ohm, e ho usato quella; 12 / 400 = 30 mA, che mi paiono sufficienti per pilotare il mosfet.
Sto transistor, ha un hfe che va da 250 ai 630.
30 / 250 = 0.12 mA
30 / 630 = 0.047 mA

Arduino è a 5 V, posto che mi danno sul datasheet VBE massima a 1.2 V, ipotizzo un range tra 0.7 e 1.2 abbiamo:

(5 - 0.7) / 0.12 mA = 35.8 e rotti k ohm
(5 - 0.7) / 0.047 mA = 91.4 e rotti k ohm
(5 - 1.2) / 0.12 mA = 31.6 e rotti k ohm
(5 - 1.2) / 0.047 mA = 80.8 e rotti k ohm

Quindi per mandarlo in saturazione, basta una resistenza inferiore ai 31 k ohm. Ne avevo per le mani una 8200 e ho usato quella.

4.3 / 8200 = 0.52 mA di corrente massima tra base ed emettitore, che mi dovrebbe garantire una buona saturazione.
Mi danno una VCE in saturazione di 0.7, quindi alimentando a 12 V ho un max di 11.3 V che arrivano al mosfet, io dovevo stare almeno a 10 V, quindi in teoria ci siamo anche qui.

Se non ho capito male, io non ho una tensione massima assoluta di base al di sotto della quale stare, l'importante è che la corrente che scorre tra base ed emettitore, moltiplicata per hfe, sia inferiore alla corrente massima che può transitare tra collettore e base, che in questo caso è di 800 mA.

Allego lo schema:

[FIDOCAD]
MC 100 55 0 0 ihram.mosn
MC 140 55 0 0 460
TY 150 65 4 3 0 0 0 Century++Schoolbook++L 12 V
LI 110 105 70 105 0
LI 140 20 100 20 0
LI 140 55 140 20 0
MC 120 20 0 0 900
MC 55 65 0 0 300
MC 70 20 1 0 ihram.res
TY 60 25 4 3 0 0 0 Century++Schoolbook++L 470
LI 100 20 70 20 0
MC 30 65 0 0 elettrotecnica.app11
TY 15 55 4 3 0 0 0 Century++Schoolbook++L PWM
MC 40 65 0 0 ihram.res
TY 40 55 4 3 0 0 0 Century++Schoolbook++L 8200
LI 70 105 70 75 0
LI 70 55 70 35 0
LI 70 55 85 55 0
LI 120 40 120 45 0
MC 100 70 1 0 ihram.res
LI 100 55 100 70 0
TY 105 75 4 3 0 0 0 Century++Schoolbook++L 33k
LI 100 105 100 85 0
MC 85 55 0 0 ihram.res
TY 85 45 4 3 0 0 0 Century++Schoolbook++L 1500
LI 70 105 40 105 0
LI 140 75 140 75 0
LI 140 75 140 105 0
LI 140 105 110 105 0
MC 30 105 0 0 elettrotecnica.app11
TY 5 95 4 3 0 0 0 Century++Schoolbook++L Massa Arduino
LI 120 105 120 55 0

Dopo tutti sti conti, la domanda fondamentale è: il mosfet si scalda ancora?
Si. Quindi devo aver sbagliato ancora qualcosa.

Notte a tutti.

Franco Prosdocimo

unread,
Oct 18, 2014, 2:20:02 AM10/18/14
to treviso_ardui...@googlegroups.com
Ho visto lo schema.
I calcoli che hai fatto per polarizzare il transistor, non vanno bene.
Una giunzione Vbe di un transistor è sempre pari a 0.6 Volt, non 1.2 (a meno che non si parli di un transisor contenente un darlinton in questi casi "potrebbe" essere diversa)
Poi, in queste condizioni devi abituarti a lasciare un po in parte la teoria, spesso per polarizzare un transistor della serie BC 337 e similari basta una resistenza il cui valore sia compreso tra i 3.9K e i 6.8K, per un segnale in ingresso di 5 Volt. (non serve fare tanti calcoli) la metti e ti funziona.
I transistor in questi casi vengono utilizzati come "interruttori" per comandare dei carichi di potenza, il discorso sarebbe diverso se tu dovessi realizzare un amplificatore audio.
In questo caso dovresti portare il transistor a lavorare nel centro del suo punto di maggiore linearità in maniera che la sinusoide in ingresso rimanga sinusoide anche in uscita :-)

Il transistor a cosa ti serve, se i mosfet hanno il vantaggio che vengono pilotati in tensione e non in corrente come i transistor, praticamente non ti assorbono praticamente nulla dal pin di Arduino.
E, il mosfet che tu hai ha una tensione di Vgs di 3 volt (se non mi ricordo male)

Samuele Zanin

unread,
Oct 18, 2014, 2:53:36 PM10/18/14
to treviso_ardui...@googlegroups.com


On Saturday, October 18, 2014 8:20:02 AM UTC+2, Franco Prosdocimo wrote:
Ho visto lo schema.
I calcoli che hai fatto per polarizzare il transistor, non vanno bene.
Una giunzione Vbe di un transistor è sempre pari a 0.6 Volt, non 1.2 (a meno che non si parli di un transisor contenente un darlinton in questi casi "potrebbe" essere diversa)

Lo davano come valore massimo, o probabilmente ho sbagliato a leggere il datashe
Poi, in queste condizioni devi abituarti a lasciare un po in parte la teoria, spesso per polarizzare un transistor della serie BC 337 e similari basta una resistenza il cui valore sia compreso tra i 3.9K e i 6.8K, per un segnale in ingresso di 5 Volt. (non serve fare tanti calcoli) la metti e ti funziona.
I transistor in questi casi vengono utilizzati come "interruttori" per comandare dei carichi di potenza, il discorso sarebbe diverso se tu dovessi realizzare un amplificatore audio.
 
In questo caso dovresti portare il transistor a lavorare nel centro del suo punto di maggiore linearità in maniera che la sinusoide in ingresso rimanga sinusoide anche in uscita :-)

Ho visto che qui i calcoli sono un pochino più complicati. Durante le prossime ferie farò anche quello. Intanto alcuni giorni fa sono riuscito a farlo andare al simulatore.

 

Il transistor a cosa ti serve, se i mosfet hanno il vantaggio che vengono pilotati in tensione e non in corrente come i transistor, praticamente non ti assorbono praticamente nulla dal pin di Arduino.
E, il mosfet che tu hai ha una tensione di Vgs di 3 volt (se non mi ricordo male)

Da quello che ho visto, ci sono mosfet che sono fatti apposta per essere attaccati ad un micro, altri no (quelli di potenza).
Io ho il secondo. Nella parte dei grafici di datasheet, il grafico mostrava la saturazione tra i 7 e gli 8 V.

La roba strana è che anche attaccando direttamente i +12 V al gate scalda.
Forse è il mosfet fatto lui così. Mi piacerebbe sapere nel dettaglio quanti ampere scorrono sulla lampadina, ma ho paura di far fuori il tester nel misurarli.
Intanto come demo per il LD penso basti, anche se ai prossimi incontri voglio far fuori la questione. :-)
Reply all
Reply to author
Forward
0 new messages