DÍA 285 DE 365

Fase 5: Diseño Industrial y Hardware

📖 Teoría a Estudiar

¿Qué es exactamente un Archivo Gerber?

Un archivo Gerber (formato moderno RS-274X) es un archivo de texto plano. No contiene información sobre voltajes o componentes. Es, esencialmente, una lista de instrucciones vectoriales en coordenadas X,Y que le dicen a un láser o una impresora fotográfica: "Mueve el haz de luz del punto A al punto B con un grosor de 0.25mm".

Una placa de circuito impreso no es un solo bloque; es un sándwich de diferentes materiales. Por lo tanto, no envías "un" archivo Gerber, envías un paquete de archivos, donde cada archivo representa una capa física de la fábrica.

El "Stackup" (Capas) Mínimo Obligatorio para JLCPCB / PCBWay

Para una placa básica de dos capas, necesitas exportar 7 archivos Gerber y 1 archivo de taladros (Drill). Cada uno utiliza una extensión específica que las máquinas chinas reconocen (Protel Extensions):
DESCOMPOSICIÓN GERBER (STACKUP DE MANUFACTURA) U1 F.Silkscreen (.gto) Tinta Blanca (Textos y Leyendas) F.Mask (.gts) Máscara Antisoldante (Verde/Negra). Los archivos Gerber definen los "huecos". F.Cu (.gtl) Cobre Superior (Pistas, Pads y Polígonos) Núcleo FR4 (Fibra de Vidrio) Material Dieléctrico Físico (~1.6mm) B.Cu (.gbl) Cobre Inferior (Generalmente Plano GND) Edge.Cuts (.gm1 / .gko) Ruta de la fresadora CNC para cortar la placa. Archivo Excellon (.drl) Taladros (Vías/Through-Hole)

⚙️ Pasos Prácticos en KiCad 8

Paso 1: Preparación Final.
Antes de exportar, debes presionar B en el teclado para recalcular todas las zonas de cobre (Polígonos). Luego, ejecuta el DRC (Design Rule Checker) para asegurar que no hayas roto pistas moviendo un texto a última hora.

Paso 2: Exportar Gerbers.

  1. Ve a File -> Fabrication Outputs -> Gerbers (.gbr).
  2. En la lista de capas, marca EXACTAMENTE: F.Cu, B.Cu, F.Silkscreen, B.Silkscreen, F.Mask, B.Mask, Edge.Cuts. Desmarca todo lo demás (las fábricas odian recibir capas "Courtyard" o "Fab").
  3. Configuraciones Críticas (JLCPCB/PCBWay):
    • Marca Use Protel filename extensions (Convertirá .gbr en .gtl, .gto, etc).
    • Coordinate Format: 4.6 (mm).
    • Asegúrate de marcar Subtract solder mask from silkscreen (Evita que impriman tinta blanca sobre el cobre de soldadura, lo que arruinaría las soldaduras).
  4. Haz clic en Plot.

Paso 3: Archivos de Taladro (Excellon Drill).

  1. En la misma ventana, haz clic en el botón Generate Drill Files....
  2. Configuraciones:
    • Excellon, formato decimal, PTH and NPTH in single file (Recomendado, aunque algunas fábricas los piden separados).
    • Map file format: Gerber X2.
  3. Haz clic en Generate Drill File.

Paso 4: Empaquetar y Verificar.
Toma todos los archivos generados y compílalos en un archivo GERBER.zip. NUNCA envíes un archivo a China sin antes abrirlo en un Visor de Gerbers (El propio KiCad trae el Gerber Viewer). Revisa capa por capa para asegurarte de que los polígonos se renderizaron correctamente.

💻 CI/CD de Hardware: Exportación Automática (DevOps)

En el Día 276 y 277 creamos un pipeline que audita las reglas (ERC/DRC) y los componentes. Si todas las validaciones pasan, el servidor no dejará que un humano exporte los Gerbers dando clics. Usaremos la CLI de KiCad para generar el archivo GERBER.zip de manera reproducible cada vez que crees un Release en GitHub.


# ==============================================================================
# ARCHIVO: .github/workflows/hardware_release.yml
# @brief Generación de archivos de manufactura listos para JLCPCB
# ==============================================================================
name: Generar Archivos de Manufactura (Gerber Release)

on:
  release:
    types: [published] # Solo se ejecuta cuando marcas una versión oficial (Ej. v1.0)

jobs:
  fabrication-outputs:
    runs-on: ubuntu-latest
    container:
      image: kicad/kicad:8.0 # Contenedor oficial de KiCad

    steps:
    - name: Checkout del repositorio
      uses: actions/checkout@v3

    - name: Crear directorio de salida
      run: mkdir -p hardware/output/gerbers

    - name: Generar Capas Gerber (RS-274X)
      run: |
        echo "Exportando capas F.Cu, B.Cu, Masks, Silks y Edge.Cuts..."
        kicad-cli pcb export gerbers \
          --layers F.Cu,B.Cu,F.Mask,B.Mask,F.Silkscreen,B.Silkscreen,Edge.Cuts \
          --use-protel-ext \
          --subtract-silkscreen-from-mask \
          --output hardware/output/gerbers/ \
          hardware/DespachadorGasLP/Mainboard.kicad_pcb

    - name: Generar Archivos de Taladro (Excellon)
      run: |
        echo "Exportando mapa de taladros PTH y NPTH..."
        kicad-cli pcb export drill \
          --format excellon \
          --excellon-zeros-format keep \
          --excellon-units mm \
          --output hardware/output/gerbers/ \
          hardware/DespachadorGasLP/Mainboard.kicad_pcb

    - name: Comprimir paquete de manufactura (GERBER.zip)
      run: |
        cd hardware/output/gerbers
        zip -r ../GERBER_JLCPCB_Release_${{ github.event.release.tag_name }}.zip ./*

    - name: Adjuntar ZIP al GitHub Release
      uses: softprops/action-gh-release@v1
      with:
        files: hardware/output/GERBER_JLCPCB_Release_${{ github.event.release.tag_name }}.zip
        

🚀 Avance del Proyecto Tesis: Despachador de Gas LP

Objetivo del día: Industrialización final y Entrega a Manufactura (Release to Manufacturing - RTM).

El puente entre tu mente y el mundo real se llama RS-274X. Muchos ingenieros envían su primer archivo Gerber a China y, dos semanas después, reciben una placa inútil porque olvidaron exportar la capa `Edge.Cuts`, resultando en un panel cuadrado de fibra de vidrio sin recortar. O peor aún, olvidan marcar la opción "Restar máscara de soldadura a la serigrafía", y la máquina pinta el texto "U1" en tinta blanca brillante directamente sobre los pads de cobre del STM32, imposibilitando la soldadura.

Al dominar la configuración estricta de extensiones Protel (`.gtl`, `.gbo`, etc) exigida por ensambladoras de alto volumen como JLCPCB y PCBWay, y al automatizar este proceso mediante tu **Pipeline de CI/CD (kicad-cli)**, has cerrado el bucle de diseño. Ahora, tu Despachador de Gas LP no es solo un proyecto en tu computadora. Cuando subas la versión `v1.0.0` a tu repositorio, el servidor auditará la termodinámica, verificará las vías, comprobará los números de parte (MPN) y escupirá un archivo `GERBER.zip` matemáticamente impecable. Ya puedes enviar ese ZIP a la fábrica con los ojos cerrados, pagar, y esperar a que el mensajero toque tu puerta con hardware de grado militar.

📝 Resumen del Día