DÍA 086 DE 365

Fase 2: Fundamentos de Hardware y Electrónica

📖 Teoría a Estudiar

Termodinámica de Estado Sólido en KiCad

Ayer vimos cómo un "Copper Pour" (Plano de Cobre) sirve para guiar la corriente de retorno. Hoy, usaremos esa misma herramienta, pero con un propósito completamente distinto: disipar calor. En electrónica de potencia (como el regulador LDO de 5V o los MOSFETs de las válvulas), el silicio se calienta exponencialmente. El empaquetado SMD (como el TO-252) no tiene cómo ventilarse por sí solo.

Resistencia Térmica ($\theta_{JA}$) y el Área de Cobre

La capacidad de un componente para mantenerse frío se mide en Grados Celsius por Watt ($^\circ C/W$). Si un LDO TO-252 tiene una resistencia de $50^\circ C/W$ y disipa $2W$, se calentará $100^\circ C$ por encima de la temperatura ambiente. ¡Hervirá! Para bajar esa resistencia térmica, dibujamos un Polígono de Cobre Sólido pegado a su "Tab" (aleta trasera).

ARQUITECTURA DE DISIPACIÓN TÉRMICA (TO-252) ❌ SIN PLANO DE DISIPACIÓN LDO 5V 135°C Problema: Saturación Térmica El chip entrará en "Thermal Shutdown" y se apagará. ✅ COPPER POUR + THERMAL VIAS LDO 60°C Solución: Disipación Activa-Pasiva Vías transfieren calor a la capa inferior. Ambos planos irradian.

Vías Térmicas (Thermal Vias): El puente al otro lado

Un polígono de cobre en la capa superior (Top Layer) ayuda mucho, pero el calor se acumula rápido. La placa de circuito impreso tiene dos caras. Para duplicar el área de enfriamiento, dibujamos otro polígono exactamente igual en la capa inferior (Bottom Layer). Para conectar ambos, perforamos la placa con decenas de agujeros diminutos (usualmente de 0.3mm de diámetro) llamados Vías Térmicas. El recubrimiento de cobre interior de estos agujeros transfiere el calor termodinámicamente a la cara trasera del PCB, usando ambas caras para enfriar el circuito al aire ambiental.

⚙️ Ejercicios Prácticos

Ejercicio 1: El hardware tiene sus límites. Si el Despachador está en pleno verano a 45°C ambiente, incluso un buen polígono de disipación podría no bastar y el LDO superará los 100°C. Implementa en Firmware un Thermal Throttling (Estrangulamiento Térmico). Si el ADC interno detecta que la placa se está calentando peligrosamente, apaga cargas no críticas (como la luz de la LCD o luces indicadoras) para reducir la carga de corriente sobre el LDO y bajar su disipación.


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

// --- 1. CONSTANTES TÉRMICAS BARE-METAL ---
#define CANAL_TEMP_INTERNA 16 

// Umbrales de seguridad en grados Celsius
#define TEMP_NORMAL         60
#define TEMP_THROTTLING     85  // Peligro: Empezar a reducir carga
#define TEMP_CRITICA        105 // Colapso: Apagar todo

extern uint32_t leer_adc_temp(void);
extern void pwm_set_luz_lcd(uint8_t porcentaje);
extern void fsm_estado_emergencia(void);

// --- 2. GESTOR DE ESTRANGULAMIENTO TÉRMICO (THROTTLING) ---
void gestionar_termica_pcb(void) {
    
    // Leemos el termómetro interno del silicio del STM32. 
    // Como el STM32 está soldado en la misma placa que el LDO, 
    // el calor viajará por el cobre y calentará al procesador.
    uint32_t temp_actual = leer_adc_temp();
    
    if (temp_actual >= TEMP_CRITICA) {
        // La PCB está ardiendo. Falla inminente del LDO.
        // Apagamos válvulas y motores para salvar la tarjeta.
        fsm_estado_emergencia(); 
        pwm_set_luz_lcd(0); // Apagar pantalla
        
    } 
    else if (temp_actual >= TEMP_THROTTLING) {
        // Estado de "Throttling". Reducimos el brillo de la LCD al 20%.
        // Esto le quita 100mA de carga al LDO, reduciendo inmediatamente 
        // los Watts disipados (P = V * I) y ayudando al polígono de cobre.
        pwm_set_luz_lcd(20); 
        
    } 
    else {
        // Operación normal. PCB bajo los 60°C.
        pwm_set_luz_lcd(100); 
    }
}

// --- 3. SÚPER BUCLE ---
int main(void) {
    
    while(1) {
        // En cada iteración, verificamos la salud termodinámica del sistema
        gestionar_termica_pcb();
        
        // ... Lógica principal del despachador
    }
    
    return 0;
}
        

🚀 Avance del Proyecto Tesis: Despachador de Gas LP

Objetivo del día: Supervivencia termodinámica mediante hardware y mitigación por software.

El diseño de tu Despachador de Gas LP ahora une verdaderamente la física con la programación. En KiCad, al dibujar un polígono rojo (Top) de 2x2 cm pegado al pin central de tu regulador LDO TO-252, y "coserlo" con Vías Térmicas hacia un polígono azul (Bottom), has construido un radiador pasivo. No necesitas atornillar bloques de aluminio; la propia placa es tu sistema de enfriamiento.

Y para coronar el diseño de grado industrial, tu código Bare-Metal actúa como el supervisor. La función gestionar_termica_pcb() lee indirectamente la temperatura de esos polígonos. Si el calor vence al cobre en un día de verano extremo, el procesador toma la decisión inteligente de "estrangular" (Throttle) componentes secundarios como la iluminación, salvando a la placa de un apagón total sin interrumpir el suministro de gas crítico. Eso es Ingeniería de Sistemas Embebidos al más alto nivel.

📝 Resumen del Día