Transistor como interruptor: cómo calcular la resistencia de base (2N2222 y Arduino)

Un pin de Arduino puede encender un LED, pero no un relé, una tira de LED de 12 V o un motor pequeño: no entrega suficiente corriente y se puede dañar. La solución clásica y barata es usar un transistor como interruptor. En esta guía práctica vas a aprender a conectar un 2N2222 a tu Arduino y, sobre todo, a calcular la resistencia de base paso a paso con un ejemplo real, para que el transistor quede bien saturado y no se caliente.

Qué significa usar un transistor como interruptor

Un transistor NPN como el 2N2222 tiene tres patas: base (B), colector (C) y emisor (E). Una corriente pequeña que entra por la base controla una corriente mucho mayor que pasa del colector al emisor. Si quieres repasar la teoría con calma, lee primero El transistor NPN explicado fácil; aquí nos enfocamos en la parte práctica.

Cuando lo usamos como interruptor solo nos interesan dos estados:

  • Corte (apagado): el pin de Arduino está en LOW (0 V), no entra corriente a la base y el transistor se comporta como un interruptor abierto. La carga queda apagada.
  • Saturación (encendido): el pin está en HIGH (5 V), entra suficiente corriente a la base y el transistor se comporta casi como un interruptor cerrado. Entre colector y emisor quedan apenas unas décimas de voltio.

La zona intermedia (zona activa) sirve para amplificar; en un interruptor no la queremos, porque ahí el transistor se calienta.

Materiales y valores del 2N2222 que vas a usar

  • Arduino Uno o Nano (5 V), transistor 2N2222A o PN2222A (TO-92).
  • Resistencia de base (la calculamos), relé de 5 V, diodo 1N4007 y protoboard.

Valores típicos del datasheet del 2N2222A (confírmalos con el de tu fabricante):

  • Corriente máxima de colector (IC): alrededor de 600 mA. En la práctica, trabaja por debajo de 300 mA para que no se caliente.
  • Voltaje máximo colector-emisor (VCEO): 40 V.
  • Ganancia hFE mínima: unos 100 con 150 mA, y baja a cerca de 30 cuando la corriente se acerca a 500 mA.
  • VBE en saturación: unos 0,7 V (puede subir hasta 1 V o más con corrientes altas).
  • VCE(sat): unos 0,2 V con poca carga y hasta 0,3 V con 150 mA si la base recibe la décima parte de la corriente del colector.

Del lado del Arduino Uno (microcontrolador ATmega328P), cada pin tiene un máximo absoluto de 40 mA, pero lo recomendable es no pasar de 20 mA por pin. Esa es la razón de ser del transistor.

Ojo con las patas: en el PN2222A (plástico), mirando la cara plana con las patas hacia abajo, el orden suele ser E-B-C, pero algunas versiones vienen al revés y el 2N2222 metálico es distinto. Verifica con el datasheet o con la prueba de diodo del multímetro.

El circuito: Arduino, 2N2222 y relé

Esquema del transistor como interruptor: pin D7 del Arduino con resistencia de base de 560 ohmios al 2N2222, bobina del relé de 5 V en el colector con diodo 1N4007 en antiparalelo y emisor a GND
  1. Pin D7 del Arduino a un extremo de la resistencia de base (RB).
  2. El otro extremo de RB a la base del 2N2222.
  3. El emisor a GND. Si la carga usa otra fuente (por ejemplo 12 V), une el GND de esa fuente con el GND del Arduino.
  4. La carga (bobina del relé) va entre +5 V y el colector. El transistor conmuta el lado negativo de la carga; por eso se dice que trabaja como "interruptor de lado bajo".
  5. El diodo va en paralelo con la bobina, con la franja (cátodo) hacia +5 V. Se llama diodo de rueda libre o flyback.
  6. Opcional: una resistencia de 10 kΩ entre base y emisor, para que el transistor quede apagado mientras el Arduino arranca.

Cómo calcular la resistencia de base paso a paso

Todo el cálculo es la Ley de Ohm aplicada dos veces: una para saber cuánta corriente pide la carga y otra para saber qué resistencia deja pasar la corriente de base que necesitamos.

Cálculo de la resistencia de base del 2N2222 en cuatro pasos: corriente del relé 69 mA, corriente de base 6,9 mA con beta forzada 10, RB de 623 ohmios y valor comercial de 560 ohmios

Paso 1: calcula la corriente de la carga (IC)

Tomemos un relé de 5 V cuya bobina mide unos 70 Ω (mídela con el multímetro o búscala en su datasheet). Con el transistor saturado, a la bobina le llegan 5 V menos la VCE(sat):

IC = (Vcarga − VCE(sat)) / Rbobina = (5 − 0,2) / 70 ≈ 0,069 A = 69 mA

69 mA superan los 40 mA máximos del pin: por eso no se conecta directo.

Paso 2: elige la corriente de base con "beta forzada"

Error común: dividir IC entre la hFE del datasheet (100) y obtener 0,69 mA. Así el transistor queda al borde de la zona activa, porque la hFE real varía con la temperatura, la corriente y entre unidades. Para asegurar la saturación se usa una beta forzada de alrededor de 10, es decir, se le da a la base la décima parte de la corriente del colector:

IB = IC / βforzada = 69 mA / 10 = 6,9 mA

6,9 mA está muy por debajo de los 20 mA recomendados por pin. Perfecto.

Paso 3: calcula RB

El pin entrega 5 V, la unión base-emisor se "come" unos 0,7 V y el resto cae en la resistencia:

RB = (Vpin − VBE) / IB = (5 − 0,7) / 0,0069 ≈ 623 Ω

Paso 4: escoge un valor comercial

Escoge el valor comercial inmediatamente inferior, para que la base reciba un poco más de corriente y no menos: 560 Ω. Comprobemos: IB = 4,3 / 560 ≈ 7,7 mA. Saturación asegurada y el pin trabaja tranquilo. Si solo tienes una de 1 kΩ, también suele funcionar con este relé (IB ≈ 4,3 mA, beta forzada cercana a 16), pero con menos margen. Si además manejas LED, la lógica es la misma que en cómo calcular la resistencia para un LED.

Paso 5: revisa la potencia del transistor

P = VCE(sat) × IC = 0,2 V × 0,069 A ≈ 14 mW. El 2N2222A en TO-92 soporta unos 625 mW a 25 °C, así que queda frío. Si al tocarlo está caliente, no está saturado: revisa RB.

Tabla de valores para cargas comunes

Cálculos con Arduino de 5 V, VBE ≈ 0,7 V y beta forzada 10 (las corrientes de las cargas son ejemplos; mide o consulta las tuyas):

Carga (ejemplo)ICIB (β forzada 10)RB calculadaRB comercial
Buzzer activo de 5 V30 mA3 mA1.433 Ω1,2 kΩ
Relé de 5 V (bobina 70 Ω)69 mA6,9 mA623 Ω560 Ω
Tramo de tira LED de 12 V150 mA15 mA287 Ω270 Ω
Motor DC pequeño200 mA20 mA215 Ω220 Ω (al límite del pin)
Más de 300 mANo uses el 2N2222: pasa a un MOSFET de nivel lógico o a un Darlington como el TIP120.

En el motor, 220 Ω da unos 19,5 mA de base, el límite recomendado del pin, y el motor pide picos al arrancar. Desde unos 200 mA conviene cambiar de transistor.

Código Arduino para probar el transistor como interruptor

Este programa conmuta el relé cada 2 segundos y acepta e (encender), a (apagar) y m (automático) desde el monitor serie a 9600 baudios:

// Transistor 2N2222 como interruptor con Arduino
// Pin D7 -> resistencia de 560 ohm -> base del 2N2222
const int PIN_TRANSISTOR = 7;
bool modoAutomatico = true;

void setup() {
  pinMode(PIN_TRANSISTOR, OUTPUT);
  digitalWrite(PIN_TRANSISTOR, LOW);   // arranca apagado (corte)
  Serial.begin(9600);
  Serial.println("Escribe e = encender, a = apagar, m = modo automatico");
}

void loop() {
  if (Serial.available() > 0) {
    char c = Serial.read();
    if (c == 'e') { modoAutomatico = false; digitalWrite(PIN_TRANSISTOR, HIGH); Serial.println("Encendido (saturacion)"); }
    if (c == 'a') { modoAutomatico = false; digitalWrite(PIN_TRANSISTOR, LOW);  Serial.println("Apagado (corte)"); }
    if (c == 'm') { modoAutomatico = true;  Serial.println("Modo automatico"); }
  }

  if (modoAutomatico) {
    digitalWrite(PIN_TRANSISTOR, HIGH);
    delay(2000);
    digitalWrite(PIN_TRANSISTOR, LOW);
    delay(2000);
  }
}

Cómo comprobar con el multímetro que está saturado

Comparación del 2N2222 en corte y en saturación: con el pin en LOW la VCE es cercana a 5 V y el relé está apagado; con el pin en HIGH la VCE es cercana a 0,2 V y el relé está encendido
  • Con el pin en LOW, mide entre colector y emisor: debes ver casi el voltaje de la fuente (unos 5 V). Transistor en corte.
  • Con el pin en HIGH, la misma medida debe dar unas décimas de voltio (0,1 a 0,3 V). Transistor saturado.
  • Si la VCE en HIGH es de 1 V o más, el transistor está en zona activa: baja el valor de RB.

Errores comunes

  • Conectar la base sin resistencia. La unión base-emisor es como un diodo: sin resistencia, el pin intenta entregar mucha corriente y puedes dañar el Arduino o el transistor.
  • Calcular con la hFE típica. Usa beta forzada de 10 para saturar con margen.
  • Olvidar el diodo flyback en relés, motores y solenoides. Al apagar la bobina aparece un pico de voltaje que puede quemar el transistor.
  • No unir las tierras cuando la carga usa otra fuente. Sin GND común, el transistor no enciende.
  • Patas invertidas. Revisa el orden E-B-C en el datasheet.
  • Pasarse de corriente. El 2N2222 no es para cargas de 1 A; para eso usa un MOSFET de nivel lógico.

Preguntas frecuentes

¿Qué resistencia de base pongo para un 2N2222 con Arduino?

Depende de la carga. Calcula IC, divide entre 10 para obtener IB y aplica RB = (5 − 0,7) / IB. Para un relé de 5 V típico salen valores entre 470 Ω y 1 kΩ; 560 Ω es una buena elección.

¿Funciona igual con un ESP32 o un Arduino de 3,3 V?

Sí, pero cambia el voltaje del pin: RB = (3,3 − 0,7) / IB. Para el mismo relé daría unos 377 Ω, así que usarías 330 Ω. Revisa también el límite de corriente por pin de tu placa.

¿Puedo usar PWM para variar la velocidad de un motor?

Sí, conectando la base a un pin PWM (por ejemplo D9) y usando analogWrite(), siempre con el diodo flyback en el motor. Con relés no uses PWM: solo encender o apagar.

¿Cuándo es mejor un MOSFET que un transistor bipolar?

Cuando la carga pasa de unos 300 mA o cuando quieres que el interruptor casi no se caliente. Un MOSFET de nivel lógico se controla por voltaje y prácticamente no pide corriente al pin.

¿Puedo simularlo antes en Tinkercad o Proteus?

Sí. Ambos tienen el 2N2222 y el Arduino Uno; sirven para comprobar el cálculo de RB antes de armar.

Conclusión

Usar un transistor como interruptor se resume en cuatro números: la corriente de la carga, una beta forzada de 10, la caída de 0,7 V en la base y la Ley de Ohm para hallar RB. Con un 2N2222, una resistencia de 560 Ω y un diodo 1N4007, tu Arduino puede manejar un relé sin riesgo. Arma el circuito y mide la VCE para ver la diferencia entre corte y saturación.

No hay comentarios