Conceptos
ERC frente a DRC: cuál es la diferencia al diseñar una PCB
Descubre cómo ERC y DRC detectan errores distintos en el esquema y la PCB, cómo ejecutar ambos en KiCad y qué propiedades no pueden demostrar.
Publicado el Actualizado el
ERC comprueba la intención eléctrica del esquema
Electrical Rule Check (ERC) razona sobre símbolos, pines y nets del esquema. Cada pin tiene un tipo eléctrico —entrada, salida, bidireccional, pasivo, entrada o salida de alimentación, colector abierto, etc.— y ERC compara los tipos conectados a una net para señalar combinaciones que parecen imposibles o incompletas.
Entre los hallazgos habituales están:
- un pin de entrada de alimentación en una net sin fuente declarada;
- dos salidas normales conectadas entre sí;
- una entrada o un pin de alimentación sin conectar;
- un marcador de no conexión sobre un pin que sí tiene cable;
- etiquetas de net o conexiones jerárquicas incoherentes.
ERC no sabe si una resistencia pull-up de I2C tiene el valor adecuado, si el pinout de un conector coincide con la hoja de datos ni si una línea de 3.3 V soporta el pico de corriente de una radio. Comprueba la intención codificada en los símbolos. Por tanto, un símbolo personalizado incorrecto puede hacer que un circuito erróneo pase o que uno correcto genere falsos avisos.
En KiCad, abre Inspect → Electrical Rules Checker en Schematic Editor. Corrige la causa en vez de añadir marcadores No ERC hasta silenciar el informe. Si un conector pasivo alimenta legítimamente una línea, PWR_FLAG indica a ERC que esa net está excitada; no genera energía ni debe ocultar una línea realmente sin alimentación.
DRC comprueba la implementación física de la PCB
Design Rule Check (DRC) razona sobre cobre, capas, footprints, agujeros, bordes y reglas. Compara la geometría y conectividad de la placa con Board Setup, las clases de net y las restricciones personalizadas.
Puede señalar:
- cobre con una holgura inferior al mínimo configurado;
- una pista más estrecha que su regla;
- una conexión sin enrutar o una pista colgante;
- infracciones de anillo anular, vía o taladro;
- serigrafía sobre aberturas de máscara;
- courtyards solapados;
- cobre demasiado cerca del borde;
- un par diferencial fuera de las reglas de ancho, separación o longitud sin acoplar.
DRC no detecta que un footprint USB-C esté reflejado si sus pads siguen de manera coherente la netlist. Tampoco determina la capacidad real de corriente sin datos correctos de stackup, cobre, temperatura y reglas. Un informe verde significa que la placa satisface las reglas codificadas, no que sea necesariamente apta para fabricar. La guía de infracciones DRC de KiCad explica cómo interpretar cada tipo de informe.
La paridad entre esquema y PCB une ambas vistas
ERC puede pasar sobre un esquema actualizado y DRC sobre una PCB antigua. Falta entonces comprobar si símbolos, footprints, asignaciones de pines y nets de la placa coinciden con el esquema.
Después de aceptar cambios, usa Tools → Update PCB from Schematic y ejecuta DRC con la paridad del esquema activada. Así aparecen problemas como una net renombrada solo en el esquema o una asociación de footprint cambiada después de colocarla. Consulta cómo mantener sincronizados el esquema y la PCB para seguir un flujo repetible.
La paridad tampoco demuestra que el pin 4 de un símbolo personalizado represente la misma función física que el pad 4 del footprint. Eso requiere auditar la hoja de datos.
Ejecuta ambos desde la línea de comandos
KiCad 9 puede producir informes y hacer fallar CI cuando existen infracciones:
mkdir -p build/reports
kicad-cli sch erc \
--exit-code-violations \
--output build/reports/erc.rpt \
hardware/controller.kicad_sch
kicad-cli pcb drc \
--exit-code-violations \
--schematic-parity \
--output build/reports/drc.rpt \
hardware/controller.kicad_pcb
Comprueba kicad-cli sch erc --help y kicad-cli pcb drc --help en la versión instalada antes de copiar opciones a CI. Fija esa versión para que el motor de reglas y el formato del informe no cambien sin aviso. La guía de ERC desde la línea de comandos explica con más detalle los códigos de salida y la automatización.
Guarda los informes como artefactos junto al commit exacto; un informe sin su revisión de esquema y PCB es una evidencia débil porque los archivos pueden haber cambiado justo después.
Clasifica los hallazgos sin aprender a ignorarlos
Sigue siempre la misma secuencia:
- Localiza el hallazgo y revisa el circuito o la geometría implicados.
- Decide si falla el diseño, la biblioteca o la regla.
- Corrige la causa.
- Si es una excepción intencionada, añade la exclusión más estrecha y explica el motivo.
- Ejecuta de nuevo el control completo.
No relajes globalmente una holgura porque un solo conector tenga paso fino; usa una regla específica, justificada por la capacidad del fabricante. Revisa las exclusiones en cada entrega: una exclusión antigua puede ocultar un error nuevo después de mover un footprint o cambiar una net.
Lo que ninguno de los dos demuestra
ERC y DRC no verifican por completo:
- el MPN, la variante de encapsulado o el ciclo de vida;
- la orientación de apareamiento de un conector y el pinout del cable;
- estabilidad analógica, adaptación RF o rendimiento de antena;
- transitorios del regulador y límites térmicos;
- colisiones con la carcasa si faltan modelos precisos;
- límites del montador no codificados como reglas;
- el cumplimiento de los requisitos funcionales del producto.
Añade revisión del esquema, auditoría de pines, validación de la BOM, revisión 3D/mecánica, inspección de archivos de fabricación y un plan de puesta en marcha. La lista DFM antes de pedir continúa allí donde terminan las reglas de diseño automatizadas.
La diferencia esencial es sencilla: ERC comprueba el modelo eléctrico lógico; DRC, el modelo físico. Una PCB liberable necesita ambos, paridad entre ellos, reglas precisas y evidencia humana para lo que esos modelos no representan.