🚚 Envío GRATIS en compras sobre $30.000 | Retiro en Curauma, Valparaíso | 📞 +56 9 65214463
Electrónica General 07 de July de 2026 · 2 min de lectura

MOSFET como Switch con Arduino: Controlar Cargas de Alta Corriente

Aprende a usar un MOSFET de canal N (IRLZ44N, IRF540) como interruptor electrónico controlado por Arduino para manejar motores DC, tiras LED, ventiladores y otros dispositivos de alta corriente.

Cuando necesitas controlar cargas de alta corriente (motores DC, tiras LED de 12V, ventiladores, calefactores), un transistor BJT o un relay pueden no ser suficientes. El MOSFET de canal N controla hasta decenas de amperios con una señal lógica de 3.3V o 5V del Arduino, con prácticamente cero corriente de control.

MOSFET vs Relay vs Transistor BJT

ComponenteCorriente máx.PWMCorriente control
Relay10-30ANo~70-100 mA
Transistor BJT1-5A típico~1-50 mA base
MOSFET canal N20-100A según modelo~0 mA (capacitivo)

MOSFETs Recomendados para Arduino

  • IRLZ44N: lógica 3.3V/5V compatible, 47A, 55V — ideal para Arduino/ESP32
  • IRF540N: requiere 10V en el gate para conducir completamente con cargas altas
  • IRL540N: versión lógica del IRF540, funciona bien a 5V

Circuito con Carga DC

Pines del MOSFET TO-220: Gate (izquierda), Drain (centro), Source (derecha).

  • Gate: resistencia de 220Ω → pin PWM del Arduino
  • Gate a GND: resistencia de 10kΩ (pull-down, descarga el gate al apagar)
  • Source: GND del circuito de potencia
  • Drain: terminal negativo de la carga (motor, LED strip, etc.)
  • Terminal positivo de la carga → VCC de la fuente de potencia
  • Diodo flyback: en paralelo con la carga de motor (cátodo al positivo)

Código: Control PWM de Velocidad de Motor

const int PIN_GATE = 9; // Pin PWM

void setup() {
  pinMode(PIN_GATE, OUTPUT);
}

void loop() {
  // Aumentar velocidad gradualmente
  for (int v = 0; v <= 255; v++) {
    analogWrite(PIN_GATE, v);
    delay(10);
  }
  delay(1000);

  // Disminuir velocidad
  for (int v = 255; v >= 0; v--) {
    analogWrite(PIN_GATE, v);
    delay(10);
  }
  delay(1000);
}

Importante: Fuentes Separadas

El motor o carga debe alimentarse desde su propia fuente (12V, 24V), no desde el Arduino. Conecta solo los GND para referencia común. Nunca alimentes un motor de alta corriente desde el pin 5V del Arduino.

Compartir: WhatsApp
Escríbenos por WhatsApp