IA e vibecoding
Perché un gate di produzione conta più di un progettista IA
Un gate PCB controlla ERC, DRC, parità, BOM, stock, Gerber, forature, placement e revisioni prima che venga effettuato un ordine.
Pubblicato il Aggiornato il
La velocità è irrilevante se il confine di rilascio è debole
Un progettista IA può creare rapidamente schema o layout. Anche un ingegnere esperto può fare una modifica veloce sotto scadenza. Entrambi possono produrre una scheda apparentemente finita mentre la BOM indica il package sbagliato, il PCB è vecchio rispetto allo schema o l’archivio contiene il file di foratura di ieri.
Un gate di produzione si trova tra il lavoro modificabile e un ordine irreversibile. Accetta una versione soltanto quando controlli indipendenti e revisori identificati soddisfano i criteri. Non importa se il sorgente è disegnato a mano, generato da codice, instradato da un ottimizzatore o modificato da un agente.
Il gate dura quindi più di uno specifico progettista. Gli strumenti cambiano; la necessità di dati tracciabili e coerenti rimane.
Definisci precisamente ingresso e uscita
L’ingresso è un candidato versionato:
- requisiti ed eccezioni approvate;
- schema, PCB, progetto, regole e librerie KiCad esatti;
- MPN e alternative approvate;
- versioni di strumenti e dipendenze;
- dati meccanici e profilo di capacità produttiva.
L’uscita è un unico bundle immutabile:
- Gerber e forature;
- BOM e pick-and-place;
- disegni di fabbricazione e assemblaggio;
- STEP, IPC-2581, test e programmazione quando previsti;
- rapporti ERC/DRC e altri controlli;
- revisione, hash, approvazioni e note.
Il significato di rilascio per la produzione è questa transizione controllata. Una cartella final-final non è un processo di rilascio.
Livello 1: completezza e identità
Prima dei controlli elettrici, fallisci su simboli fitted senza MPN, footprint senza package revisionato, variabili irrisolte o librerie mancanti, versioni ignote, modifiche generate non registrate, DNP incoerenti o regole non legate a una revisione.
Per le librerie generate richiedi un contratto dei pin basato su documenti primari. ERC non rileva simbolo e footprint coerentemente sbagliati, come spiega perché gli LLM inventano i numeri dei pin.
Livello 2: controlli deterministici KiCad
Esegui i controlli in una directory di build pulita e fai fallire il comando in presenza di violazioni. Uno scheletro shell per KiCad 9 è:
#!/usr/bin/env bash
set -euo pipefail
SCH="hardware/controller.kicad_sch"
PCB="hardware/controller.kicad_pcb"
OUT="build/release"
rm -rf "$OUT"
mkdir -p "$OUT/checks" "$OUT/gerbers" "$OUT/drill" "$OUT/assembly"
kicad-cli sch erc \
--severity-error --severity-warning \
--exit-code-violations \
-o "$OUT/checks/erc.rpt" \
"$SCH"
kicad-cli pcb drc \
--schematic-parity \
--severity-error --severity-warning \
--exit-code-violations \
-o "$OUT/checks/drc.rpt" \
"$PCB"
--exit-code-violations restituisce uno stato non zero in presenza di violazioni; --schematic-parity confronta PCB e schema. Questo è il nucleo dell’automazione headless di KiCad, ma non è l’intero gate.
Non rendere verde CI sopprimendo gli avvisi: ogni deroga richiede motivo tecnico, responsabile, posizione e review. È preferibile correggere la configurazione delle regole o il progetto.
Livello 3: coerenza di sourcing e assemblaggio
Esporta la BOM dallo schema controllato:
kicad-cli sch export bom \
--fields 'Reference,Value,Footprint,Manufacturer,MPN,${QUANTITY},${DNP}' \
--labels 'Refs,Value,Footprint,Manufacturer,MPN,Qty,DNP' \
--group-by 'Value,Footprint,Manufacturer,MPN' \
--exclude-dnp \
-o "$OUT/assembly/bom.csv" \
"$SCH"
kicad-cli pcb export pos \
--format csv --units mm --side both --exclude-dnp \
-o "$OUT/assembly/positions.csv" \
"$PCB"
Aggiungi script che confrontino i riferimenti fitted, rifiutino posizioni duplicate, richiedano MPN, validino footprint e controllino stock/lifecycle delle parti critiche. La voce di catalogo dell’assemblatore deve corrispondere allo stesso MPN e package. Una coppia BOM/CPL sintatticamente valida può ancora indicare la parte sbagliata.
Livello 4: rigenera da zero
Non promuovere mai file rimasti da un’esecuzione precedente. Genera tutto nella directory di rilascio vuota:
kicad-cli pcb export gerbers \
--layers F.Cu,B.Cu,F.Mask,B.Mask,F.Silkscreen,B.Silkscreen,Edge.Cuts \
-o "$OUT/gerbers/" \
"$PCB"
kicad-cli pcb export drill \
--format excellon --excellon-units mm \
--generate-map --map-format pdf \
-o "$OUT/drill/" \
"$PCB"
test -s "$OUT/assembly/bom.csv"
test -s "$OUT/assembly/positions.csv"
Adatta gli strati allo stackup: quattro strati richiedono il rame interno. Verifica nomi attesi, un solo contorno, rame non vuoto e origini comuni. Applica i limiti specifici del produttore indicati nella checklist DFM per PCB.
Genera gli hash solo alla fine:
find "$OUT" -type f ! -name SHA256SUMS -print \
| LC_ALL=C sort \
| while IFS= read -r file; do shasum -a 256 "$file"; done \
> "$OUT/SHA256SUMS"
Commit e checksum dimostrano quali byte sono stati approvati e caricati.
Livello 5: review visiva e tecnica
Richiedi firme nominali per potenza, reset/boot, protezione, pin mapping, disaccoppiamento, loop e ritorni, RF/high speed, termica, orientamento dei connettori, enclosure, test access, overlay Gerber/fori, anteprima di assemblaggio, rotazioni, bottom mirroring, DNP e opzioni del preventivo.
Il revisore deve ispezionare gli output, non solo il canvas KiCad. Anche il renderer del produttore è una vista indipendente. Per produzione o prototipi costosi separa approvazione e ordine: purchasing deve caricare soltanto l’archivio il cui checksum corrisponde al record firmato.
Il gate controlla la qualità del rilascio, non la funzione
Un gate pulito dimostra che le regole codificate sono passate e gli artefatti sono coerenti. Non prova requisiti, comportamento ai guasti, EMC o funzionamento in temperatura. Bring-up e verifica fisica restano nel piano.
Questo confine è anche il punto in cui può essere utile una pipeline come MakeIRL: il valore non sta soltanto nel generare una scheda, ma nel rendere inevitabili controlli fondati su prove prima della produzione. Qualsiasi strumento va giudicato dagli artefatti e dai controlli che espone.
Il gate conta più di un progettista IA perché contiene gli errori di qualsiasi progettista. Trasforma la velocità in iterazione controllata: genera liberamente, fallisci visibilmente, approva deliberatamente e ordina una sola revisione tracciabile.