agentee

Schema e layout

Modifica nel visualizzatore

Spostare componenti, tracciare piste e posizionare vie a mano in agentee view, salvando tutto nello stesso TOML.

La pagina di layout 2D di agentee view modifica il layout a mano. Le modifiche restano nella finestra finché save (ctrl+S) non le scrive nel .pcb.toml tramite lo stesso writer che preserva commenti e ordine usato dalla CLI; revert le scarta. Ogni modifica è verificata in background come farebbe check, quindi il pannello di diagnostica e la tabella dei net seguono, e l'intestazione conta i layout non salvati. Se il file cambia su disco sotto modifiche non salvate, la pagina chiede se mantenere le tue o caricare il file. Chiudere la finestra con modifiche non salvate chiede prima.

tastofa
clicseleziona un componente, pista, via o linea del ratsnest; cliccare di nuovo la selezione sceglie il prossimo elemento sotto il puntatore
trascinamuovilo: un componente con il suo label, una via, un angolo di pista, o un intero segmento di pista; l'elemento selezionato vince su ciò che sta sotto
trascina col destro o col centrale, rotellapannello, zoom
R, shift+Rruota il componente selezionato di 90 gradi
Delelimina la pista o la via selezionata
Xstrumento di routing: clicca una piazzola, via o pista per iniziare, clicca per aggiungere angoli a 45 gradi, / inverte la curva, V mette una via e passa al layer successivo raggiungibile dalle vie della classe del net, Backspace fa un passo indietro, Enter, un doppio clic o un clic sul rame del net termina
Vstrumento via: clicca sul rame con un net per posizionare una via della classe di quel net
PgUp, PgDnlayer attivo
ctrl+Z, ctrl+shift+Zannulla, ripristina
Escannulla la pista, torna a selezione, azzera la selezione

Gli spostamenti si agganciano alla griglia selezionata nella barra degli strumenti. Le nuove piste assumono la larghezza della classe (nessuna chiave width); il pannello delle proprietà imposta il net, il layer e una larghezza propria di una pista, la posizione, il net e il tipo di una via, e la posizione, la rotazione, il lato e locked di un componente. Una linea ratsnest selezionata può essere passata all'autorouter come una singola connessione o come l'intero net, con le stesse regole di agentee route. Una via posizionata da una regola [[fanouts]] o [[stitching]], o un elemento di una riga count, viene rimossa dalla regola quando la sposti, la modifichi o la elimini: la regola riceve una voce skip_at per quel punto e la via viene scritta come un proprio [[vias]].

reset nella barra degli strumenti cancella ciò che selezioni: il routing (piste, vie e le sezioni di piano del motore), le regole [[fanouts]] e [[stitching]], le aree di rame con i loro riempimenti salvati e le posizioni delle etichette di serigrafia, e può riposizionare ogni componente non bloccato con il placer (agentee place, con un seed). Come ogni modifica, resta non salvata finché non salvi. new layout nella scheda dei layout chiede un nome, una scheda e uno schema, scrive NAME.pcb.toml accanto al progetto e, a meno che non deselezioni l'opzione, posiziona prima ogni componente con il placer. Il nuovo file inizia con un'area di rame su ogni layer di rame per ogni net di massa dello schema e, quando lo schema ha net RF, una griglia [[stitching]] di vie di massa a 2,5 mm più una recinzione lungo le piste RF quando la loro classe ha un coplanar_gap. La voce tie plane pads della scheda del motore esegue agentee tie sul layout della finestra, e una linea ratsnest selezionata di un net di piano offre tie pads to the plane prima di un routing.

La scheda layout engine esegue le fasi di agentee layout (vedi docs/layout-engine-2.md) sul layout così com'è nella finestra, incluse le modifiche non salvate: run esegue le fasi da..a, run X only riesegue una sola fase, stop termina l'esecuzione dopo la fase in corso. La modifica è in pausa durante l'esecuzione. Il risultato arriva nella finestra come qualsiasi altra modifica, non salvato e a un undo di distanza, con il tempo e il punteggio di ogni fase e i termini di punteggio che pesano di più. phases to run e settings scrivono [engine] nel layout (phases, rounds, place_rounds, [engine.place] seed, [engine.access] via_in_pad, [engine.global], [engine.detail]), e default rimuove di nuovo un'impostazione. Un componente selezionato con 16 o più piazzole ha pinswap, che cerca scambi dei suoi I/O come agentee pinswap e li scrive nei file dello schema con write to the schematic.

I componenti comuni vengono disegnati dal footprint senza caricare un modello: resistori, condensatori, induttori, LED e diodi a chip (nomi con una dimensione Metric), header e socket a pin verticali, package SOIC, SOT, QFP, QFN, DFN, SON, TSLP e BGA, cristalli e oscillatori, connettori SMA edge mount e telai di schermatura (Shield nel nome o nella descrizione), disegnati senza copertura. Il corpo è il contorno F.Fab, l'altezza proviene da height, da un componente con _h1.25mm nel nome o dalla famiglia del package, e i pin si trovano sulle piazzole fuori dal corpo. Fori di montaggio, fiduciali, punti di test delle piazzole, jumper di saldatura e footprint Tag-Connect non hanno corpo. Un file di modello nel progetto (3dmodels/ o un percorso relativo ad esso) ha comunque la precedenza su un componente generato; agentee models salta quelli generati.

I modelli sono STEP o VRML, posizionati come li posiziona KiCad (model_offset, model_rotate, model_scale). Un percorso di modello viene cercato come indicato, poi sotto KICAD9_3DMODEL_DIR e simili, 3dmodels/ nel progetto, ~/.cache/agentee/3dmodels e /usr/share/kicad/3dmodels, provando .step, .stp e .wrl, compressi o no. Un modello può anche essere un URL https:// a un file STEP o VRML, in modo che i modelli dei vendor non debbano essere committati: viene scaricato una volta in ~/.cache/agentee/3dmodels/url/ e conta come modello proprio del progetto, quindi ha la precedenza su un componente generato. Fissa l'URL a un commit o a una release in modo che il file non possa cambiare sotto di te. I modelli delle librerie KiCad che non sono su disco vengono scaricati dal repository kicad-packages3D nella cache: agentee models (MCP models) li scarica tutti e riporta ciò che ha trovato, e il visualizzatore li scarica in background. Un componente senza modello è un box sopra il suo contorno fab, alto height, altrimenti un'altezza stimata dal nome del footprint. I file STEP vengono meshati con truck, con i colori dai loro elementi stilizzati e le posizioni di assemblaggio applicate. I bordi usano la curva 3D di ogni curva di superficie, non le sue pcurves. Le curve e le superfici B-spline non clampate vengono tagliate al loro intervallo di nodi valido. Una curva di bordo che non si valuta ancora a punti finiti viene meshata come una linea retta, e una faccia la cui superficie non si valuta viene esclusa.

agentee export pcb:NAME -o NAME.step (MCP export) scrive il layout come un'unica assembly STEP (AP214) per la CAD dell'involucro. La scheda è un solido dello spessore dello stackup con i suoi fori delle piazzole, le fessure e i ritagli della scheda; le vie vengono escluse. Ogni componente è un'istanza nominata dal suo riferimento: un modello STEP viene inserito come scritto dal vendor, solidi, colori e sotto-assembly intatti, e viene scritto una volta per quanti componenti lo usano. I modelli VRML e i corpi generati vengono inseriti come superfici facettate, e un componente senza modello del tutto come un box sopra il suo contorno fab. Il riferimento è quello del layout con Y verso l'alto e la faccia inferiore della scheda a z = 0, in modo che un componente sul lato superiore inizi dallo spessore della scheda. Il report elenca i file STEP usati, quanti componenti sono stati facettati, i componenti disegnati come box e i modelli non trovati.

Le piazzole prendono i net dallo schema (numero di piazzola = numero di pin). Le aree di rame vengono riempite rispettando la distanza di sicurezza da ogni altro net e dal bordo della scheda, e le isole che non toccano nulla vengono rimosse. La verifica segnala le connessioni non instradate (con il ratsnest), i cortocircuiti, le violazioni di distanza di sicurezza, le piste più strette della loro classe o fuori dalla loro larghezza di impedenza, il rame vicino al bordo, le sovrapposizioni dei courtyard, i componenti non posizionati, le estremità di piste che non collegano nulla, e il testo di serigrafia che sovrappone altro testo, attraversa un contorno di serigrafia, si trova su una piazzola o esce dalla scheda. I courtyard sono i contorni chiusi disegnati su F.CrtYd / B.CrtYd, posizionati con il componente (un componente sul lato inferiore ha la sua area di saldatura sull'altro lato); due componenti i cui courtyard si sovrappongono sullo stesso lato sono un errore, e lo è anche un courtyard su uno dei due lati che si trova sopra un foro NPTH di un altro componente o sopra il courtyard di un footprint MountingHole* (il contorno delle sue piazzole se non ne ha). Quando i nomi collidono, indica un elemento con il suo tipo: agentee render pcb:lna, sch:lna, board:lna.

docs/format.md · Markdown per agenti