Conceitos

ERC versus DRC: qual é a diferença no projeto de PCB?

Entenda como ERC e DRC detectam erros diferentes no esquemático e na PCB, como executar ambos no KiCad e o que eles não podem comprovar.

Publicado em Atualizado em

O ERC verifica a intenção elétrica no esquemático

Electrical Rule Check (ERC) analisa símbolos, pinos e nets do esquemático. Cada pino tem um tipo elétrico — entrada, saída, bidirecional, passivo, entrada ou saída de alimentação, coletor aberto etc. — e o ERC compara os tipos conectados para indicar combinações impossíveis ou incompletas.

Ocorrências comuns incluem:

  • pino de entrada de alimentação em uma net sem fonte declarada;
  • duas saídas comuns ligadas entre si;
  • entrada ou pino de alimentação desconectado;
  • marcador de no-connect em um pino realmente conectado;
  • labels de net ou conexões hierárquicas incoerentes.

O ERC não sabe se um pull-up de I2C tem a resistência adequada, se o pinout do conector coincide com o datasheet ou se 3.3 V fornece corrente suficiente para um pico de rádio. Ele verifica a intenção codificada nos símbolos. Um símbolo personalizado errado pode fazer um circuito incorreto passar ou gerar falsos erros em um circuito correto.

No KiCad, abra Inspect → Electrical Rules Checker no Schematic Editor. Corrija as causas em vez de adicionar No ERC. Se um conector passivo alimenta legitimamente um trilho, PWR_FLAG informa ao ERC que a net é alimentada; ele não gera energia e não deve mascarar um trilho sem fonte.

O DRC verifica a implementação física

Design Rule Check (DRC) analisa cobre, camadas, footprints, furos, bordas e regras. Compara geometria e conectividade com Board Setup, classes de net e restrições personalizadas.

Pode indicar:

  • folga de cobre abaixo do mínimo;
  • trilha mais estreita do que a regra;
  • conexão não roteada ou ponta de trilha solta;
  • violações de anel anular, via ou furo;
  • serigrafia sobre aberturas da máscara;
  • courtyards sobrepostos;
  • cobre perto demais da borda;
  • par diferencial fora das regras de largura, espaçamento ou comprimento desacoplado.

O DRC não reconhece um footprint USB-C espelhado quando os pads seguem coerentemente a netlist. Também não calcula a capacidade real de corrente sem stackup, cobre, temperatura e regras corretos. Relatório verde significa “a placa atende às regras codificadas”, não “a placa está necessariamente pronta para fabricação”. O guia de violações DRC do KiCad explica como interpretar cada tipo de relatório.

A paridade entre esquemático e PCB une as duas visões

O ERC pode passar no esquemático atualizado enquanto o DRC passa em uma PCB antiga. É preciso verificar se símbolos, footprints, mapeamento de pinos e nets da placa coincidem com o esquemático.

Após aceitar mudanças, use Tools → Update PCB from Schematic e execute DRC com paridade habilitada. Isso encontra uma net renomeada somente no esquemático ou um footprint alterado após o posicionamento. Leia como manter esquemático e PCB sincronizados para adotar um fluxo repetível.

A paridade ainda não comprova que o pino 4 de um símbolo personalizado tem a mesma função física do pad 4; isso exige auditoria do datasheet.

Execute os dois pela linha de comando

O KiCad 9 pode gerar relatórios e fazer uma tarefa de CI falhar quando existem violações:

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

Confira kicad-cli sch erc --help e kicad-cli pcb drc --help na versão instalada antes de copiar flags para CI. Fixe essa versão para que motor e formato não mudem silenciosamente. O guia de ERC pela linha de comando explica códigos de saída e automação com mais detalhes.

Guarde os relatórios junto ao commit exato. Um relatório sem a revisão exata do esquemático e da PCB é uma evidência fraca, pois os arquivos podem ter mudado logo depois.

Trate cada violação da mesma forma

  1. Localize a ocorrência e inspecione o circuito ou a geometria.
  2. Decida se o erro está no projeto, na biblioteca ou na regra.
  3. Corrija a causa.
  4. Se for uma exceção intencional, crie a exclusão mais estreita e documente o motivo.
  5. Execute toda a verificação novamente.

Não reduza globalmente uma folga porque um único conector tem passo fino; use uma regra específica sustentada pela capacidade da fábrica. Reveja exclusões em toda liberação: uma dispensa antiga pode esconder um erro novo depois que um footprint se move.

O que nenhum dos dois comprova

ERC e DRC não verificam por completo:

  • MPN, variante de encapsulamento ou ciclo de vida;
  • orientação de acoplamento e pinout do cabo;
  • estabilidade analógica, adaptação RF ou antena;
  • transientes do regulador e limites térmicos;
  • colisões com o gabinete quando faltam modelos precisos;
  • limites da montadora não codificados;
  • requisitos funcionais do produto.

Adicione revisão do esquemático, auditoria de pinos, validação da BOM, revisão 3D/mecânica, inspeção de arquivos e plano de bring-up. A lista DFM antes do pedido continua de onde as regras de projeto automatizadas param.

Em resumo, ERC verifica o modelo elétrico lógico; DRC, o modelo físico. Uma PCB liberável exige ambos, paridade, regras precisas e evidência humana para o que esses modelos não representam.