DÍA 066 DE 365

Fase 2: Fundamentos de Hardware y Electrónica

📖 Teoría a Estudiar

El Transistor MOSFET (N-Channel)

A diferencia del BJT (controlado por corriente), el MOSFET está controlado 100% por voltaje. Sus terminales se llaman Gate (Compuerta), Drain (Drenador) y Source (Surtidor).

Cuando aplicas 3.3V en el Gate, se crea un campo electromagnético que abre un "canal" entre el Drain y el Source. La magia del MOSFET es su $R_{DS(on)}$ (Resistencia de Encendido). Cuando se satura, su resistencia interna cae a niveles absurdos (ej. 0.005 Ohmios). Esto significa que puede dejar pasar 10 Amperios de corriente sin generar casi nada de calor. Es el interruptor de estado sólido perfecto.

ETAPA DE POTENCIA: DRIVER MOSFET PARA VÁLVULA Pin STM32 (3.3V) Rg 100 Ω Rpd 10 kΩ G D S MOSFET IRLZ44N (Logic-Level) VÁLVULA GAS LP Diodo Flyback VCC +24V (Potencia Bruta) GND COMÚN

Los Dos Secretos del Hardware Seguro

A pesar de que el MOSFET se controla por voltaje, el Gate (Compuerta) actúa internamente como un pequeño capacitor. Necesitamos dos resistencias vitales para que la placa electrónica no explote:

  1. Resistencia de Gate ($R_g$, ej. 100 Ω): Cuando enciendes el pin a 3.3V, el capacitor del Gate está vacío e intenta absorber corriente infinita por un microsegundo, lo cual quemaría el pin del STM32. $R_g$ frena esa corriente inicial.
  2. Resistencia Pull-down ($R_{pd}$, ej. 10 kΩ): Cuando la máquina se enciende, durante los primeros milisegundos de arranque, los pines del STM32 están flotando (Día 62). Un MOSFET es tan sensible que la simple estática ambiental podría encenderlo, abriendo el gas antes de que el código main() empiece. El $R_{pd}$ mantiene el Gate fuertemente en 0V por hardware hasta que el software tome el control.

Dato crítico: Debes usar un MOSFET Logic-Level (como el IRLZ44N). Los MOSFET normales requieren 10V en el Gate para encender; los Logic-Level están diseñados para saturarse completamente con los humildes 3.3V o 5V de tu microcontrolador.

⚙️ Ejercicios Prácticos

Ejercicio 1: Programa la rutina de inicialización de la válvula garantizando una "Política de Cero Aperturas Accidentales" (Safe State). Aunque el hardware tiene el Pull-down, el firmware debe complementar la seguridad durante el Boot (Día 56).


#include <stdint.h>
#include <stdbool.h>

// --- 1. REGISTROS FÍSICOS (STM32) ---
volatile uint32_t *GPIOB_MODER = (volatile uint32_t *)0x40020400;
volatile uint32_t *GPIOB_ODR   = (volatile uint32_t *)0x40020414;

// Definimos el pin conectado a la Resistencia Rg del MOSFET (Pin 6)
const uint8_t PIN_MOSFET_VALVULA = 6;


// --- 2. CONFIGURACIÓN CRÍTICA DE POTENCIA ---
void etapa_potencia_init(void) {
    
    // FASE A: BLINDAJE DE SOFTWARE (Software Safe State)
    // El hardware ya está siendo protegido por la Rpd de 10k, pero aseguramos
    // que el registro de salida (ODR) sea un '0' rotundo ANTES de activarlo.
    *GPIOB_ODR &= ~(1 << PIN_MOSFET_VALVULA);
    
    // FASE B: HABILITAR EL PIN
    // Pasamos el pin de "Entrada Flotante" a "Salida de Propósito General"
    *GPIOB_MODER &= ~(3 << (PIN_MOSFET_VALVULA * 2)); // Limpiar
    *GPIOB_MODER |= (1 << (PIN_MOSFET_VALVULA * 2));  // Setear
    
    // Ahora el STM32 domina el pin con Push-Pull (Día 64). 
    // La Rpd de 10k es superada con facilidad por la fuerza del procesador.
}


// --- 3. LÓGICA DE CONTROL (MÁQUINA DE ESTADOS) ---
void valvula_principal_set(bool abrir) {
    if (abrir) {
        // Enviar 3.3V. Carga el capacitor del Gate a través de Rg.
        // El MOSFET abre el canal y caen los 24V de la bobina a Tierra.
        *GPIOB_ODR |= (1 << PIN_MOSFET_VALVULA);
    } else {
        // Enviar 0V. Descarga el Gate a Tierra.
        // El MOSFET corta el circuito. El Diodo Flyback absorbe el pico.
        *GPIOB_ODR &= ~(1 << PIN_MOSFET_VALVULA);
    }
}


int main(void) {
    
    // 1. Iniciar periféricos
    etapa_potencia_init();
    
    // 2. Ejecutar Pruebas POST (Día 56)
    // Si pasamos el POST, entramos al Súper Bucle
    
    while(1) {
        // La FSM (Día 60) invoca la válvula bajo estrictas barreras (Día 53)
        // valvula_principal_set(true);
    }
    
    return 0;
}
        

🚀 Avance del Proyecto Tesis: Despachador de Gas LP

Objetivo del día: Control de Actuadores Pesados sin Calentamiento.

La electroválvula neumática que libera el gas LP requiere una patada de energía muy fuerte (24V a 3 Amperios) para vencer la presión mecánica del fluido, y luego debe mantenerse encendida todo el tiempo que dura el despacho (a veces varios minutos). Si usas relés mecánicos, sus platinos se carbonizarán por las chispas (Día 65).

Al implementar esta Etapa de Potencia con MOSFET Logic-Level en tu placa KiCad, logras una conmutación de estado sólido impecable. La Rpd garantiza que al reiniciar la máquina no haya un latido accidental de gas; la Rg protege los frágiles pines del STM32; el diodo absorbe la destrucción magnética; y el MOSFET enruta los 3 Amperios con una $R_{DS(on)}$ tan baja que la placa de circuito impreso ni siquiera se pondrá tibia. Has alcanzado la robustez de un PLC industrial.

📝 Resumen del Día

❓ Cuestionario de Autoevaluación

1. ¿Por qué ponemos la resistencia de Pull-down ($R_{pd}$) antes de la resistencia $R_g$ (como se ve en el diagrama SVG) y no después de $R_g$, pegada al Gate del MOSFET?
Respuesta: Es una técnica fina de electrónica. Si pones el $R_{pd}$ después del $R_g$, formas un Divisor de Tensión (Día 61). Cuando el STM32 emita sus 3.3V, el voltaje se dividiría ligeramente antes de llegar al Gate. Al poner el Pull-down antes, evitas afectar el voltaje completo que "empujará" al Gate a través de $R_g$. Además, el MOSFET es tan sensible que si su Gate se quema por estática, un $R_{pd}$ pegado al gate podría no ser suficiente si el daño interno lo cortocircuita hacia el pin.

2. ¿Qué pasa si te equivocas al comprar los componentes e instalas un MOSFET estándar (ej. IRF540N) en lugar de un Logic-Level (ej. IRLZ44N)?
Respuesta: Desastre térmico. Un MOSFET normal necesita que le inyectes al menos 10V en el Gate para saturarse completamente (abrir el canal al 100%). Si tu STM32 le inyecta solo 3.3V, el MOSFET se abrirá "a medias". Pasará a operar en la Región Óhmica o Activa, actuando como una resistencia gigante. Al intentar dejar pasar los 3 Amperios de la válvula, el MOSFET disipará toda esa energía como calor masivo, arderá en llamas en un par de segundos y la válvula nunca se abrirá con fuerza.