DÍA 271 DE 365

Fase 5: Diseño Industrial y Hardware

📖 Teoría a Estudiar

El Diseño Jerárquico en KiCad

Un diseño "Plano" (Flat Design) consiste en poner todos tus componentes en una sola hoja. Para interconectarlos usas cables largos o Etiquetas Globales (Global Labels). El problema de las Etiquetas Globales es que son como las variables globales en C: cualquiera puede leerlas y escribirlas. Si usas la etiqueta `RX_UART` en el módulo GPS y también en el módulo ESP32, has creado un cortocircuito lógico invisible.

El Diseño Jerárquico obliga a usar una Hoja Raíz (Root Sheet). Esta hoja no contiene resistencias ni capacitores; contiene Bloques (Sub-Sheets). Cada bloque representa un circuito aislado guardado en su propio archivo .kicad_sch (ej. 01_Power.kicad_sch, 02_STM32.kicad_sch). Las señales solo pueden entrar y salir de estos bloques a través de Pines Jerárquicos (Hierarchical Pins), funcionando exactamente como los parámetros de entrada y salida de una función en C.

Las Reglas de Oro del Ruteo Jerárquico

  1. Poder Centralizado: Las etiquetas de poder (`+3V3`, `GND`, `+24V`) son las únicas que se consideran verdaderamente Globales por defecto en KiCad. Fluyen libremente por todas las hojas.
  2. Aislamiento de Señal: Una señal como `VALVULA_PWM` no debe ser global. Nace en la hoja del STM32, sale como un pin jerárquico hacia la Hoja Raíz, y desde ahí se cablea a la hoja de Salidas Aisladas (Optoacopladores). Esto documenta explícitamente el viaje de la señal.
  3. Reusabilidad (Instanciación): Si tu máquina tiene 4 bombas de gas idénticas, no dibujas el circuito 4 veces. Dibujas una hoja `bomba_driver.kicad_sch` y en la hoja raíz insertas 4 bloques que apuntan al mismo archivo.
Root Sheet (Mainboard_v2.kicad_sch) - A3 01_PowerSupply File: power.kicad_sch +3V3 +5V_SYS +24V_IN 02_STM32_MCU File: mcu_core.kicad_sch ESP_RX SPI_METRO[0..3] I2C_MEM[0..1] VALVE_CTRL ESP_TX 03_IoT_Comms File: esp32_fota.kicad_sch MCU_RX MCU_TX UART_LINK (FOTA Handshake) 04_Isolated_IO File: io_relays.kicad_sch MCU_CTRL_IN VALVE_24V_OUT 05_Metrology File: sensors.kicad_sch SPI_IN[0..3]

⚙️ Pasos Prácticos en KiCad

Paso 1: Crear el Lienzo Maestro. Abre un proyecto nuevo en KiCad. El primer esquemático que aparece es tu Hoja Raíz. No pongas resistores aquí. Déjala limpia.

Paso 2: Crear las Hojas Jerárquicas (Sub-Sheets).

  1. Presiona la tecla S (Add a hierarchical sheet).
  2. Haz clic en el lienzo para dibujar un rectángulo azul.
  3. KiCad te pedirá dos nombres:
    • Sheet Name: Fuente_Poder (El nombre lógico que verás en el bloque).
    • File Name: 01_power.kicad_sch (El nombre del archivo en tu disco duro).
  4. Repite esto para el STM32 (02_mcu.kicad_sch), las comunicaciones (03_comms.kicad_sch) y las salidas de relé (04_io.kicad_sch).

Paso 3: Definir los Puertos dentro de las Sub-Hojas.

  1. Haz doble clic en el bloque 02_mcu para entrar en esa hoja.
  2. Dibuja tu microcontrolador normalmente.
  3. Para el pin PA2 (UART TX), en lugar de usar una etiqueta global (Ctrl+L), presiona la tecla H para añadir una Etiqueta Jerárquica (Hierarchical Label).
  4. Nómbrala MCU_TX y dale la dirección de "Salida" (Output). Haz lo mismo con MCU_RX como "Entrada" (Input).

Paso 4: Importar y Cablear en la Raíz.

  1. Sube de vuelta a la Hoja Raíz (botón de la flecha hacia arriba en la barra de herramientas).
  2. Haz clic derecho sobre el bloque 02_mcu y selecciona "Import Sheet Pin". Mágicamente aparecerán los pines MCU_TX y MCU_RX en los bordes de tu rectángulo.
  3. Haz lo mismo para la hoja del ESP32.
  4. Ahora, dibuja un cable (Wire, tecla W) conectando el MCU_TX del bloque STM32 al ESP_RX del bloque del módem. ¡Has creado una conexión explícita y documentada!

🚀 Avance del Proyecto Tesis: Despachador de Gas LP

Objetivo del día: Arquitectura Modular de Hardware y Control de Versiones.

¿Por qué los ingenieros senior se obsesionan con el Diseño Jerárquico? Por el Trabajo en Equipo y el Control de Versiones (Git). Si tienes a tu ingeniero de potencia trabajando en la etapa de 24V y a tu ingeniero digital trabajando en el ruteo del STM32, un diseño plano causará "Conflictos de Fusión" (Merge Conflicts) diarios en el archivo `.kicad_sch`, destruyendo el trabajo de ambos.

Al implementar el Root Sheet Diagram, has particionado tu hardware igual que tu firmware C. El archivo `01_power.kicad_sch` es independiente del archivo `02_mcu.kicad_sch`. Si la próxima semana decides reemplazar el módulo ESP32 por un Módem Celular BG95-M3, simplemente eliminas la hoja `03_comms` y creas una nueva. Los pines jerárquicos te obligarán a cumplir con el contrato de interfaz: el nuevo bloque celular TENDRA que proveer un pin de RX y un pin de TX para conectarse a tu diagrama maestro. Este es el secreto para escalar diseños a certificaciones ISO y UL sin perder la cabeza.

📝 Resumen del Día