MOSFET à niveau logique
Un MOSFET dont la RDS(on) est garantie à 2,5 V ou 4,5 V conduit pleinement depuis une broche 3,3 V ou 5 V, en chauffant peu.
IRLML6344 : 0,16 W de chaleur, jonction à 41 °C.
Ce transistor allumera-t-il ma charge depuis une broche 3,3 V ou 5 V ? Choisissez la carte, le composant et la charge : vous obtenez la résistance de base ou le verdict sur la grille d’après les valeurs garanties par la datasheet, la chaleur, la diode de roue libre et de meilleures options quand ça ne marche pas.
Les façons habituelles de commuter la même charge, dans l’ordre qui convient à vos valeurs.
Choix actuel (AO3400A) : 0,21 W de chaleur, jonction à 52 °C.
Un MOSFET dont la RDS(on) est garantie à 2,5 V ou 4,5 V conduit pleinement depuis une broche 3,3 V ou 5 V, en chauffant peu.
IRLML6344 : 0,16 W de chaleur, jonction à 41 °C.
Un pilote comme le TC4427 (1,5 A, alimentation 4,5–18 V, entrée haute dès 2,4 V) applique 10–12 V sur la grille et commute en quelques nanosecondes : pour les MOSFET standard et le PWM rapide.
TC4427 avec une alimentation séparée de 9 V (régulateur ou zener) et un AO3400A : 0,14 W, jonction à 42 °C.
7 ou 8 voies Darlington avec les diodes de roue libre intégrées, 50 V et 500 mA par voie : pour les relais, petits solénoïdes et moteurs pas à pas. Chaque voie fait chuter 1 à 1,6 V.
Au-delà des 300 mA par voie qu’il accepte depuis cette broche.
Vérifiez quel MOSFET équipe le module. Le module IRF520 courant demande environ 10 V sur la grille ; les modules avec un MOSFET à niveau logique ou un pilote fonctionnent dès 3,3 V.
Isole complètement la charge et commute du continu ou de l’alternatif presque sans chaleur. Pas de PWM, lent, et la bobine consomme son propre courant : vérifiez que l’entrée du module fonctionne en 3,3 V.
Pour les charges sur le secteur : silencieux, sans contacts qui s’usent. Les modèles pour l’alternatif ne coupent pas le continu : il existe des modèles pour le continu.
Des puces comme les PROFET d’Infineon commutent le côté positif avec un MOSFET canal N et une pompe de charge intégrée, avec limitation de courant et protection thermique.
| Charge | 12 V × 2 A = 24 W (charge résistive) |
|---|---|
| Grille | 100 Ω en série, 10 kΩ entre grille et masse |
| RDS(on) | au plus 48 mΩ, garantie à 2,5 V (3 A) ; la grille reçoit 3,3 V, seuil jusqu’à 1,45 V |
| Chute de tension | 0,11 V (RDS(on) de 54 mΩ à chaud), soit 0,21 W |
| Température de jonction | 52 °C = 25 °C + 0,21 W × 125 °C/W |
| Limites | 12 V sur 30 V · 2 A sur 5,7 A |
| À l’air libre | jusqu’à 1 W à 25 °C (θJA 125 °C/W) |
Gardez la 10 kΩ entre grille et masse : pendant le démarrage du microcontrôleur, ses broches flottent et le MOSFET pourrait s’allumer tout seul.
Avec plusieurs ampères, séparez le retour de masse de la charge du fil de masse du microcontrôleur : ne les reliez qu’au niveau de l’alimentation.
Un SOT-23 évacue sa chaleur par le cuivre de la broche de drain : la valeur de la datasheet suppose environ 6,5 cm² (1 pouce²) ; avec la seule pastille, il chauffe beaucoup plus.
Le microcontrôleur et l’alimentation de la charge doivent avoir une masse commune, sinon la grille ou la base n’a pas de référence.
Un transistor utilisé en interrupteur doit être complètement bloqué ou complètement passant. Complètement passant veut dire saturé pour un bipolaire, et à sa faible RDS(on) pour un MOSFET : la chute à ses bornes est faible, la chaleur aussi. Le calcul vérifie que votre broche peut l’y amener en n’utilisant que les valeurs garanties par la datasheet, puis calcule la chaleur et la température de jonction.
Le hFE de la datasheet se mesure avec plusieurs volts aux bornes du transistor, pas en saturation. Pour la tension de saturation VCE(sat), les datasheets utilisent un gain bien plus faible, en général IC = 10 × IB (20 × pour le BC547, 250 × pour le Darlington TIP120). Le calcul utilise ce même gain forcé : la tension de saturation du résultat est donc garantie.
IB = IC ÷ β(forcé) RB = (VGPIO − VBE(sat)) ÷ IB P = VCE(sat) × IC + VBE(sat) × IB
Exemple : un ESP32 qui commande la bobine d’un relais 12 V de 70 mA avec un 2N2222A. IB = 70 ÷ 10 = 7 mA et RB = (3,3 − 1,2) ÷ 0,007 = 300 Ω, arrondie à 270 Ω pour que la base reçoive un peu plus. Le transistor fait chuter au plus 0,3 V : environ 30 mW, rien d’inquiétant. À 300 mA, la base demanderait 30 mA, plus que les 20 mA qu’une broche d’ESP32 devrait fournir : c’est là qu’un MOSFET prend le relais.
La tension de seuil VGS(th) n’est pas celle où le MOSFET conduit : c’est celle où il commence à peine à conduire, à 250 µA ou 1 mA. Ce qui compte, c’est la RDS(on) garantie par la datasheet pour une tension de grille donnée. L’AO3400A la garantit à 2,5 V et conduit pleinement depuis une broche 3,3 V. L’IRLZ44N la garantit dès 4 V : bien depuis 5 V, pas garanti depuis 3,3 V. L’IRF520 et l’IRF540N ne la garantissent qu’à 10 V. Entre le seuil et le point garanti le plus bas, la datasheet ne promet rien, et le calcul le dit au lieu de deviner.
P = I² × RDS(on)(Tj) + Pcommutation Tj = Ta + P × θJA
La RDS(on) augmente avec la température, d’environ 1,5 fois à 125 °C dans ces datasheets (1,43 pour l’AO3400A et 1,8 pour le 2N7000, d’après leurs tableaux). Le calcul l’augmente avec la température de jonction et recommence jusqu’à ce que les deux concordent. Exemple : un AO3400A commandé par un ESP32 qui allume un ruban LED de 2 A en 12 V. En 3,3 V, c’est la valeur garantie à 2,5 V qui s’applique, 48 mΩ : 2² × 0,048 = 0,19 W, environ 0,21 W à chaud. Avec 125 °C/W, la jonction atteint environ 52 °C.
Le module rouge courant avec un IRF520 relie la broche de signal presque directement à la grille d’un IRF520. Son seuil peut atteindre 4 V et sa RDS(on) n’est garantie qu’à 10 V. Depuis un ESP32 en 3,3 V, il risque de ne pas conduire du tout ; depuis un Arduino en 5 V, il ne conduit qu’en partie et chauffe dès quelques ampères. En 5 V, vous pouvez le remplacer par un MOSFET à niveau logique de même brochage, comme l’IRLZ44N ou l’IRLB8721. En 3,3 V, utilisez un MOSFET garanti à 2,5 V ou un pilote de grille.
Une bobine s’oppose aux variations de courant. Quand le transistor se bloque, la bobine maintient le courant et sa tension grimpe jusqu’à ce que quelque chose lâche, en général le transistor. Une diode aux bornes de la charge, cathode vers le positif, offre un chemin à ce courant. Pour des relais simplement allumés et éteints, une 1N4148 (petites bobines) ou une 1N4007 suffit ; avec du PWM sur un moteur, utilisez une diode Schottky comme la 1N5819 (1 A) ou la SS34 (3 A), adaptée au courant de la charge.
Parfois la charge doit rester reliée à la masse et l’interrupteur se place entre l’alimentation et la charge. Avec un MOSFET canal P, la source va au positif et une résistance tire la grille à la même tension (bloqué) ; un petit NPN commandé par la broche tire la grille à la masse (passant). La grille voit alors toute la tension d’alimentation : au-delà de 80 % de la limite de grille, le calcul ajoute un pont diviseur. Une broche ne peut pas commander directement le MOSFET canal P si l’alimentation dépasse la tension de la broche : le MOSFET ne se bloquerait jamais.
À chaque front, le MOSFET passe un instant à moitié passant, avec à la fois tension et courant. Une broche de microcontrôleur déplace la charge de grille avec quelques dizaines de milliampères : un IRLZ44N (48 nC) met donc quelques microsecondes par front, sans effet à 1 kHz, quelques watts à 20 kHz sous 5 A. Le calcul l’estime à ½ × V × I × (temps de montée + descente) × fréquence, avec toute la charge de grille, ce qui pèche par excès. Pour un PWM rapide, prenez un petit MOSFET à faible charge de grille ou un pilote.
| Composant | Type | Boîtier | V max | I max | Garanti | À 3,3 V | À 5 V | θJA |
|---|---|---|---|---|---|---|---|---|
| 2N2222A | NPN | TO-92 | 40 V | 600 mA | VCE(sat) 1 V / 500 mA | — | — | 200 °C/W |
| 2N3904 | NPN | TO-92 | 40 V | 200 mA | VCE(sat) 0,3 V / 50 mA | — | — | 200 °C/W |
| BC547 | NPN | TO-92 | 45 V | 100 mA | VCE(sat) 0,6 V / 100 mA | — | — | 200 °C/W |
| S8050 | NPN | SOT-23 | 25 V | 500 mA | VCE(sat) 0,6 V / 500 mA | — | — | 417 °C/W |
| TIP120 | NPN Darlington | TO-220 | 60 V | 5 A | VCE(sat) 4 V / 5 A | — | — | 62,5 °C/W |
| 2N7000 | MOSFET canal N | TO-92 | 60 V | 200 mA | RDS(on) 5,3 Ω / 4,5 V | non garantie | 5,3 Ω | 313 °C/W |
| BS170 | MOSFET canal N | TO-92 | 60 V | 500 mA | RDS(on) 5 Ω / 10 V | non garantie | non garantie | 357 °C/W |
| AO3400A | MOSFET canal N | SOT-23 | 30 V | 5,7 A | RDS(on) 48 mΩ / 2,5 V | 48 mΩ | 32 mΩ | 125 °C/W |
| Si2302 | MOSFET canal N | SOT-23 | 20 V | 2,6 A | RDS(on) 75 mΩ / 2,5 V | 75 mΩ | 57 mΩ | 175 °C/W |
| IRLML6344 | MOSFET canal N | SOT-23 | 30 V | 5 A | RDS(on) 37 mΩ / 2,5 V | 37 mΩ | 29 mΩ | 100 °C/W |
| IRLZ44N | MOSFET canal N | TO-220 | 55 V | 47 A | RDS(on) 35 mΩ / 4 V | non garantie | 25 mΩ | 62 °C/W |
| IRLB8721 | MOSFET canal N | TO-220 | 30 V | 62 A | RDS(on) 16 mΩ / 4,5 V | non garantie | 16 mΩ | 62 °C/W |
| IRF520 | MOSFET canal N | TO-220 | 100 V | 9,2 A | RDS(on) 270 mΩ / 10 V | non garantie | non garantie | 62 °C/W |
| IRF540N | MOSFET canal N | TO-220 | 100 V | 33 A | RDS(on) 44 mΩ / 10 V | non garantie | non garantie | 62 °C/W |
| AO3401A | MOSFET canal P | SOT-23 | 30 V | 4 A | RDS(on) 85 mΩ / −2,5 V | — | — | 125 °C/W |
| IRF9540N | MOSFET canal P | TO-220 | 100 V | 23 A | RDS(on) 117 mΩ / −10 V | — | — | 62 °C/W |
Valeurs maximales garanties à 25 °C d’après les datasheets des fabricants (onsemi, CJ, Alpha & Omega, Vishay, Infineon). À 3,3 V et à 5 V : la RDS(on) garantie avec cette tension de grille. La θJA est mesurée sur la carte de test de chaque fabricant, environ 6,5 cm² de cuivre pour les SOT-23 : avec moins de cuivre, ils chauffent davantage.
Oui, si la RDS(on) du MOSFET est garantie à 2,5 V ou moins, comme pour l’AO3400A, le Si2302 ou l’IRLML6344. Ajoutez 100 Ω en série avec la grille et 10 kΩ entre grille et masse, pour qu’il reste bloqué pendant le démarrage de l’ESP32. L’IRLZ44N, souvent vendu comme MOSFET logique, n’est garanti qu’à partir de 4 V.
Parce que l’IRF520 n’est pas un MOSFET à niveau logique : son seuil peut valoir 4 V et sa RDS(on) n’est garantie qu’à 10 V. En 3,3 V, il risque de ne pas conduire du tout. Utilisez un pilote de grille, un module avec un MOSFET à niveau logique ou un MOSFET garanti à 2,5 V comme l’AO3400A.
RB = (VGPIO − VBE(sat)) ÷ IB, avec IB = IC ÷ 10 pour la plupart des petits transistors (IC ÷ 20 pour le BC547). Pour 100 mA depuis un Arduino en 5 V avec un 2N2222A : IB = 10 mA et RB = (5 − 1,2) ÷ 0,01 = 380 Ω, donc 330 Ω.
Depuis un Arduino en 5 V, le TIP120 fonctionne avec peu de courant de base, mais il fait chuter jusqu’à 2 V à 3 A : jusqu’à 6 W de chaleur. Un MOSFET à niveau logique fait chuter quelques dizaines de millivolts au même courant. Depuis un ESP32, choisissez un MOSFET garanti à 2,5 V.
Oui pour tout ce qui comporte une bobine : moteurs, relais, solénoïdes, électrovannes, ventilateurs. Placez-la aux bornes de la charge, cathode (le côté marqué d’un anneau) vers le positif. Les rubans LED et les résistances chauffantes n’en ont pas besoin.
Plusieurs ampères sur le papier, mais c’est la chaleur qui décide. Un AO3400A commandé par une broche 3,3 V dissipe environ 0,2 W à 2 A et reste vers 50 °C ; à 3 A, il approche les 100 °C. Plus de cuivre autour de la broche de drain aide.
Le côté masse (transistor entre la charge et la masse) est plus simple : un MOSFET canal N ou un NPN commandé directement par la broche. Passez côté positif quand la charge doit rester reliée à la masse, par exemple un capteur qui partage la masse du microcontrôleur : il faut alors un MOSFET canal P et un petit NPN qui tire sa grille à la masse.