Manuale di riferimento

Questo documento è coperto dal Copyright © 2010–2015 dei suoi autori come elencati in seguito. È possibile distribuirlo e/o modificarlo nei termini sia della GNU General Public License (http://www.gnu.org/licenses/gpl.html), versione 3 o successive, che della Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0/), versione 3.0 o successive.

Tutti i marchi registrati all’interno di questa guida appartengono ai loro legittimi proprietari.

Collaboratori

Jean-Pierre Charras, Fabrizio Tappero.

Traduzione

Marco Ciampa <[email protected]>, 2014-2015.

Feedback

Si prega di inviare qualsiasi rapporto bug, suggerimento o nuova versione a:

Data di pubblicazione e versione del software

17 marzo 2014.

Introduzione a Pcbnew

Descrizione

Pcbnew è un potente strumento software per lo sviluppo di circuiti stampati disponibile per i sistemi operativi Linux, Microsoft Windows e Apple OS X. Pcbnew viene usato assieme al programma di disegno schemi elettrici Eeschema per la creazione di circuiti stampati.

Pcbnew gestisce le librerie di impronte. Ogni impronta è un disegno del componente fisico - la disposizione delle piazzole che forniscono le connessioni al componente. Le impronte richieste vengono automaticamente caricate durante la lettura della Netlist. Qualsiasi cambiamento nella selezione delle impronte o annotazione può essere cambiato nello schema e aggiornato in pcbnew rigenerando la netlist e ricaricandola nuovamente in pcbnew.

Pcbnew fornisce uno strumento per il controllo delle regole elettriche (Design Rule Check o DRC) che previene i problemi di distanziamento tra piste e piazzole e previene anche le connessioni errate che non hanno corrispondenza nella netlist/schema elettrico. Quando si usa lo sbroglio interattivo, questo esegue in continuazione questo controllo aiutando lo sbroglio delle singole piste.

Pcbnew fornisce una visualizzazione a ratnest, una ragnatela delle connessioni delle piazzole delle impronte connesse sullo schema elettrico. Queste connessioni si spostano dinamicamente seguendo gli spostamenti effettuati di tracce e impronte.

Pcbnew possiede un semplice ma efficace sbrogliatore per assistere nella produzione del circuito. Una funzione di esportazione/importazione in formato dsn SPECCTRA permette inoltre l’uso di sbrogliatori più avanzati.

Pcbnew fornisce opzioni specifiche per la produzione di circuiti ad ultra alta frequenza (come piazzole trapezoidali e di forme complesse, disposizione automatica di bobine sul circuito stampato, ecc.).

Caratteristiche principali di progettazione

L’unità più piccola in pcbnew è 1 nanometro. Tutte le dimensioni sono memorizzate come integer di nanometri.

Pcbnew può generare fino a 32 strati rame, 14 strati tecnici (serigrafia, maschera di saldatura, adesivo componenti, flussante (pasta salda), bordi di taglio) più 4 ausiliari (disegni e commenti) e gestisce in tempo reale l’indicazione della ragnatela di connessioni (rats nest) delle tracce mancanti.

La visualizzazione degli elementi del circuito stampato (tracce, piazzole, testo, disegni…​) è personalizzabile:

  • in modalità piena o solo contorno;

  • con o senza isolamento delle tracce.

Per i circuiti complessi, la visualizzazione degli strati, zone, componenti può essere nascosta in maniera selettiva per una migliore chiarezza sullo schermo. I collegamenti delle piste possono essere evidenziati per migliorarne il contrasto.

Le impronte possono essere ruotate di qualsiasi angolo, con una risoluzione di 0.1 grado.

Pcbnew include un editor di impronte che permette la modifica delle singole impronte posta su un circuito stampato o la modifica che quelle presenti in una libreria.

L’editor impronte è fornito di molti strumenti che fanno risparmiare tempo come:

  • Numerazione piazzole veloce, semplicemente trascinando il mouse sopra le piazzole che si vuole numerare.

  • Semplice generazione multipla di piazzole circolari o rettangolari per LGA/BGA o impronte circolari.

  • Allineamento semi-automatico di righe o colonne di piazzole.

Le piazzole delle impronte hanno una serie di proprietà che possono essere regolate. Le piazzole possono essere tonde, rettangolari, ovali o trapezoidali. Le forature dei componenti passanti possono essere spostate nella piazzola e possono essere tonde o a fessura. Le singole piazzole possono anche essere ruotate ed avere particolari spaziature per le maschere di saldatura, per l’isolamento dei collegamenti o per la pasta salda. Le piazzole possono anche avere una connessione piena o una connessione a basso trasferimento termico per migliorare la manifattura del circuito stampato. Qualsiasi combinazione anche univoca di piazzole può essere inserita in un’impronta.

Pcbnew genera facilmente tutti i documenti necessari per la produzione:

  • Prodotti per la fabbricazione:

    • Files for Photoplotters in GERBER RS274X format.

    • Files for drilling in EXCELLON format.

  • Stampa di file in formato HPGL, SVG o DXF.

  • Mappe di disegno e forature in formato Postscript.

  • Stampe locali.

Osservazioni generali

A causa del livello di controllo necessario, è fortemente raccomandato l’uso di mouse a tre tasti con pcbnew. Funzioni primarie come il pan e lo zoom necessitano di un mouse a tre tasti.

Nella nuova versione di KiCad, in pcbnew sono stati introdotti cambiamenti radicali da parte di sviluppatori del CERN. Questi includono caratteristiche come un nuovo motore di render (modalità di visualizzazione OpenGL e Cairo), uno sbrogliatore interattivo "push and shove", sbroglio e accordamento di piste differenziali e a zig-zag, un editor di impronte revisionato, e molte altre ancora. Si noti che molte di queste caratteristiche esistono solo nelle nuove modalità di visualizzazione OpenGL e Cairo.

Installazione

Installazione del software

La procedura di installazione è descritta nella documentazione di KiCad.

Modifica della configurazione predefinita

Un file di configurazione predefinito kicad.pro viene fornito in kicad/share/template. Questo file viene usato come file di configurazione iniziale per tutti i nuovi progetti.

Questo file di configurazione può essere modificato per cambiare le librerie da caricare.

Per fare ciò:

  • Avviare Pcbnew usando kicad o direttamente. Su Windows è in C:\kicad\bin\pcbnew.exe mentre su Linux si esegue /usr/local/kicad/bin/kicad o /usr/local/kicad/bin/pcbnew se i binari sono posizionati in /usr/local/kicad/bin.

  • Selezionare Preferenze - Librerie e Cartelle.

  • Modifica come richiesto.

  • Salva la configurazione modificata (Salva configurazione) in kicad/share/template/kicad.pro.

Gestione librerie di impronte: versioni classiche

È possibile avere accesso all’inizializzazione dell’elenco librerie dal menu delle preferenze:

Library list menu item

L’immagine sottostante mostra la finestra di dialogo che permette di impostare l’elenco delle librerie delle impronte:

Footprint library list

Si può usare questa funzionalità per aggiungere tutte le librerie che contengono le impronte richieste dal progetto. Si possono anche rimuovere le librerie inutilizzate dai nuovi progetti per prevenire collisioni di nomi di impronte. Si noti che c’è un problema con gli elenchi di librerie di impronte quando esistono nomi di impronte duplicati in più di una libreria. Se ciò accade, l’impronta verrà caricata dalla prima libreria incontrata nell’elenco. Se questo è un problema (cioè se non si riesce a caricare l’impronta desiderata), cambiare l’ordine dell’elenco delle librerie usando i pulsanti "Su" e "Giù" presenti nella finestra di dialogo sopra o dare un nome univoco all’impronta usando l’editor delle impronte.

Gestione librerie delle impronte: repository .pretty

A partire dalla release 4.0, Pcbnew utilizza la nuova implementazione a tabella per la gestione delle librerie di impronte. Le informazioni nella sezione precedente non solo più valide. Il gestore della tabella delle librerie è accessibile da:

Library tables menu item

L’immagine sottostante mostra la finestra di dialogo di modifica della tabella delle librerie di impronte che può essere aperta invocando la voce "Manager librerie di impronte" dal menu delle "Preferenze".

Footprint tables list

La tabella librerie di impronte viene usata per mappare una libreria di impronte di qualsiasi tipo supportato ad una denominazione di libreria. Questa denominazione viene usata per cercare le impronte in alternativa al precedente metodo che dipendeva dall’ordine di ricerca dei percorsi. Ciò permette a Pcbnew di accedere alle impronte con lo stesso nome in diverse librerie assicurando che venga caricata la corretta impronta dalla libreria appropriata. Inoltre ciò permette di supportare il caricamento di librerie provenienti da editor di circuiti stampati alternativi come Eagle e gEDA.

Tabella librerie impronte globale

La tabella librerie impronte globale contiene l’elenco delle librerie che sono sempre disponibili indipendentemente dal file progetto attualmente caricato. La tabella viene salvata nel file fp-lib-table nella cartella utente. La posizione di questa cartella dipende dal sistema operativo.

Tabella librerie di impronte specifica del progetto

La tabella delle librerie di impronte specifica del progetto contiene l’elenco delle librerie che sono disponibili specificatamente per il file di progetto attualmente caricato. Questa tabella può essere modificata solo quando viene caricata assieme al file di progetto della scheda. Se non viene caricato un file di progetto o non c’è il file della tabella delle librerie di impronte nel percorso del progetto, viene creata una tabella vuota che può essere modificata ed in seguito salvata assieme al file della scheda.

Configurazione iniziale

La prima volta che CvPcb o Pcbnew vengono eseguiti e il file della tabella globale delle impronte fp-lib-table non viene trovato nella cartella home dell’utente, Pcbnew cercherà di copiare il file della tabella delle impronte predefinito fp_global_table memorizzato nella cartella di sistema dei modelli di KiCad sul file fp-lib-table nella cartella home dell’utente. Se fp_global_table non si trova, verrà creato un file di tabella librerie di impronte vuoto nella cartella home dell’utente. Se si verifica quest’ultima azione, l’utente può sia copiare il file fp_global_table manualmente o configurare la tabella a mano. La tabella librerie di impronte predefinita include tutte le librerie di impronte standard che vengono installate come parte di KiCad.

Aggiunta voci di tabella

Per usare una libreria di impronte, bisogna prima aggiungerla alla tabella globale o alla tabella specifica del progetto. La tabella specifica del progetto è applicabile solo quando un file scheda viene aperto. Ogni voce di libreria deve avere un denominatore univoco. Questo non deve avere alcuna relazione con il nome file della libreria o il suo percorso. Il carattere due punti : non può essere usato da nessuna parte nel denominatore. Ogni voce di libreria deve avere un valido percorso e/o nome file a seconda del tipo di libreria. I percorsi possono essere definiti assoluti, relativi o per sostituzione di variabile ambiente. Deve essere selezionato il tipo appropriato di plugin, in modo consentire la corretta lettura della libreria. Pcbnew attualmente supporta la lettura di file di librerie di impronte tradizionali di KiCad (legacy), KiCad Pretty, Eagle e gEDA. C’è anche un campo apposito per aggiungere una descrizione della voce di libreria. Il campo opzioni non viene attualmente usato e quindi aggiungere opzioni non ha alcun effetto sul caricamento delle librerie. Si noti che non è possibile avere denominatori di librerie duplicati nella stessa tabella. Comunque, si possono avere gli stessi denominatori di librerie di impronte sia nella tabella globale che in quella specifica del progetto. La voce della tabella specifica del progetto ha la precendenza sulla corrispondente voce della tabella globale, in caso di nomi corrispondenti. Quando le voci vengono definite nella tabella specifica del progetto, viene scritto un file fp-lib-table contenente queste voci nella cartella della netlist aperta correntemente.

Sostituzione variabili ambiente

Una delle più potenti caratteristiche della tabella delle librerie di impronte è la sostituzione delle variabili d’ambiente. Questa caratteristica permette di inserire i percorsi personalizzati delle posizioni dove sono memorizzate le proprie librerie, in variabili d’ambiente. La sostituzione delle variabili d’ambiente è supportata usando la sintassi ${NOME_VAR_AMB} nel percorso della libreria di impronte. Come impostazione predefinita, a tempo di esecuzione Pcbnew definisce la variabile ambiente $KISYSMOD. Questa punta alla posizione dove sono state installate con KiCad le librerie impronte predefinite. Si può sovrascrivere $KISYSMOD definendola, e ciò permette di sostituire alle librerie di impronte predefinite di KiCad le proprie. Quando un file di circuito stampato viene caricato, Pcbnew definisce anche $KPRJMOD usando il percorso del file. Ciò permette di creare librerie nel percorso del progetto senza dover definire percorsi assoluti alla libreria nella tabella delle librerie di impronte specifiche del progetto.

Uso del plugin GitHub

Il plugin di GitHub è uno speciale plugin che fornisce una interfaccia per un accesso in sola lettura ad un repository remoto GitHub. Questo repository consiste in un insieme di impronte pretty (Pretty è il nome del formato file delle impronte di KiCad). Il plugin fornisce opzionalmente supporto a funzionalità Copy-On-Write'' (COW) per la modifica delle impronte lette dal repository GitHub e salvate in locale. Perciò il plugin GitHub'' serve ad accedere in sola lettura a librerie di impronte pretty remote su https://github.com. Per aggiungere una voce GitHub alla tabella librerie di impronte il ``Percorso libreria'' nella voce della tabella librerie di impronte deve essere impostata ad un URL GitHub valido.

Per esempio:

https://github.com/liftoff-sr/pretty_footprints

Tipicamente gli URL GitHub hanno la forma:

https://github.com/nome_utente/nome_repository

Il Tipo di plugin'' deve essere impostato a Github''. Per abilitare la caratteristica "Copy-On-Write" l’opzione allow_pretty_writing_to_this_dir deve essere aggiunta alle impostazioni delle "Opzioni" della voce della tabella delle librerie di impronte. Questa opzione è il Percorso libreria'' per la memorizzazione locale delle copie modificate delle impronte lette dal repository GitHub. Le impronte salvate su questo percorso vengono combinate con la parte a sola lettura del repository GitHub per creare la libreria impronte. Se manca questa opzione, allora la libreria GitHub rimane a sola lettura. Se l’opzione è presente per una libreria GitHub, allora qualunque scrittura a questa libreria ibrida finirà nella cartella locale *.pretty. Si noti che la porzione residente di github.com di questa libreria ibrida COW è sempre in sola lettura. Questo significa che non è possibile cancellare niente o neanche modificare direttamente qualunque impronta del repository GitHub specificato. La libreria aggregata rimane di tipo Github'' in tutte le successive disquisizioni, ma in effetti questa consiste di entrambe le parti; la porzione locale in lettura/scrittura e quella remota, in sola lettura.

La tabella sottostante mostra una voce di tabella delle librerie di impronte senza l’opzione allow_pretty_writing_to_this_dir:

Denominazione Percorso libreria Tipo plugin Opzioni Descrizione

github

https://github.com/liftoff-sr/pretty_footprints

Github

Liftoff’s GH footprints

La tabella sottostante mostra una voce nella tabella librerie di impronte con l’opzione COW. Si noti l’uso della variabile ambiente ${HOME} solo come esempio. La cartella github.pretty è posizionata in ${HOME}/pretty/path. Ogni volta che si usa l’opzione allow_pretty_writing_to_this_dir, è necessario creare manualmente ed in anticipo la cartella, il cui nome deve terminare con l’estensione .pretty.

Denominazione Percorso libreria Tipo plugin Opzioni Descrizione

github

https://github.com/liftoff-sr/pretty_footprints

Github

allow_pretty_writing_to_this_dir=${HOME}/pretty/github.pretty

Liftoff’s GH footprints

Il caricamento delle impronte darà sempre la precedenza alle impronte locali che si trovano nel percorso dato dall’opzione allow_pretty_writing_to_this_dir. Una volta salvata un’impronta nella cartella di libreria COW locale facendo un salvataggio impronta nell’editor delle impronte, nessun aggiornamento a GitHub verrà notato dal caricamento di un’impronta con lo stesso nome di quella salvata localmente.

Mantenere sempre una cartella locale .pretty separata per ogni libreria GitHub, mai combinarle facendo riferimento alla stessa cartella più di una volta. Inoltre, non usare la stessa cartella COW (.pretty) in una voce di tabella di libreria impronte. Ciò farebbe molto probabilmente confusione. Il valore dell’opzione allow_pretty_writing_to_this_dir espanderà qualunque variabile ambiente che utilizzi la notazione ${} per creare il percorso in modo analogo alle impostazioni del ``Percorso librerie''.

Qual è il punto di COW? Serve a caricare col turbo la condivisione delle impronte. Se si inviano periodicamente via e-mail modifiche al footprint di COW al manutentore del repository GitHub, si può aiutare ad aggiornare la copia di GitHub. Inviare semplicemente i singoli file * .kicad_mod che si trovano nelle cartelle COW al manutentore del repository GitHub. Dopo aver ricevuto conferma delle modifiche, si può tranquillamente eliminare i file COW e il footprint aggiornato dalla parte di sola lettura della libreria GitHub scorrerà verso il basso. L’obiettivo dovrebbe essere quello di mantenere il file COW il più piccolo possibile contribuendo frequentemente alle copie master condivise su https://github.com.

Infine, Nginx può essere usato come cache sul server github per accelerare il caricamento delle impronte. Può essere installato localmente o su un server di rete. Nei sorgenti di KiCad c’è una configurazione di esempio in pcbnew/github/nginx.conf. Il modo più semplice per farlo funzionare è sovrascrivere il file predefinito nginx.conf con questo e fare export KIGITHUB=http://mio_server:54321/KiCad, dove mio_server è l’IP o il nome di dominio della macchina su cui gira nginx.

Modelli d’utilizzo

Le librerie di impronte possono essere definite globalmente o specificamente per il progetto attualmente caricato. Le librerie di impronte definite nella tabella globale dell’utente sono sempre disponibili e sono memorizzate nel file fp-lib-table nella cartella home dell’utente. È sempre possibile accedere alle librerie di impronte globali anche quando non è aperto alcun file di netlist di progetto. La tabella impronte specifica del progetto è attiva solo per il file di netlist correntemente aperto. La tabella della libreria di impronte specifiche del progetto viene salvata nel file fp-lib-table nel percorso del file della scheda attualmente aperta. È possibile definire le librerie in entrambe le tabelle.

Ci sono vantaggi e svantaggi per ogni metodo:

  • Si possono definire tutte le proprie librerie in una tabella globale, e questo significa che saranno sempre disponibili quando servono.

    • The disadvantage of this is that you may have to search through a lot of libraries to find the footprint you are looking for.

  • Si può definire tutte le proprie librerie sulla base di uno specifico progetto.

    • The advantage of this is that you only need to define the libraries you actually need for the project which cuts down on searching.

    • The disadvantage is that you always have to remember to add each footprint library that you need for every project.

  • È possibile anche definire librerie di impronte sia globali che specifiche del progetto.

Un modello d’uso pratico potrebbe essere anche quello di definire le librerie più comunemente utilizzate a livello globale, mentre inserire le librerie necessarie solo per il progetto corrente nella tabella librerie specifiche del progetto. Non ci sono restrizioni sul modo in cui si possono impostare le proprie librerie.

Operazioni generali

Barre strumenti e comandi

In Pcbnew è possibile eseguire comandi usando vari metodi:

  • Il menu testuale in cima alla finestra principale.

  • Il menu della barra in alto.

  • Il menu della barra a destra.

  • Il menu della barra a sinistra.

  • I pulsanti del mouse (opzioni di menu). Specificatamente:

    • The right mouse button reveals a pop-up menu the content of which depends on the element under the mouse arrow.

  • Tastiera (Tasti funzione F1, F2, F3, F4, Maiusc, Canc, +, -, Pag su, Pag giù e la Barra spazio). Il tasto Esc generalmente annulla l’operazione in corso.

La schermata sottostante illustra alcune delle possibilità di accesso a queste operazioni:

Right click legacy menu

Comandi col mouse

Comandi di base

  • Pulsante sinistro

    • Single-click displays the characteristics of the footprint or text under the cursor in the lower status bar.

    • Double-click displays the editor (if the element is editable) of the element under the cursor.

  • Pulsante centrale/rotellina

    • Rapid zoom and some commands in layer manager.

    • Hold down the centre button and draw a rectangle to zoom to the described area. Rotation of the mouse wheel will allow you to zoom in and zoom out.

  • Pulsante destro

    • Displays a pop-up menu

Operazioni sui blocchi

Le operazioni per spostare, invertire (specularmente), copiare, ruotare e cancellare un blocco sono tutte disponibili tramite il menu a scomparsa. Inoltre, si può fare lo zoom dell’area descritta dal blocco.

La struttura del blocco è tracciata spostando il mouse mentre si mantiene premuto il pulsante sinistro del mouse. L’operazione viene eseguita quando il pulsante viene rilasciato.

Mantenendo premuti uno dei tasti commutatori Maiusc o Ctrl, o entrambi, durante il disegno del riquadro, l’operazione di inversione, rotazione o cancellazione viene mostrata automaticamente come mostrato nella seguente tabella:

Azione Effetto

Pulsante sinistro del mouse mantenuto premuto

Traccia il riquadro per spostare il blocco

Maiusc + pulsante sinistro del mouse

Traccia il riquadro per invertire il blocco

Ctrl + pulsante sinistro del mouse

Traccia il riquadro per la rotazione del blocco di 90°

Maiusc + Ctrl + pulsante sinistro del mouse

Traccia il riquadro per cancellare il blocco

Punsante centrale del mouse mantenuto premuto

Traccia il riquadro per fare lo zoom del blocco

Spostando un blocco:

  • Sposta il bloco alla nuova posizione ed opera con il pulsante sinistro del mouse per piazzare gli elementi.

  • Per annullare l’operazione usare il pulsante destro del mouse e selezionare Cancella blocco'' dal menu (o premere il tasto Esc'').

In alternativa, se nessun tasto viene premuto durante il disegno del blocco, usare il pulsante destro del mouse per mostrare il menu a scomparsa e selezionare l’operazione richiesta.

Per ogni operazione di blocco una finestra di selezione consente di limitare l’azione solo ad alcuni elementi.

Selezione della dimensione della griglia

Durante la disposizione degli elementi il cursore si sposta su una griglia. La griglia può essere abilitata o disabilitata usando l’icona presente nella barra degli strumenti di sinistra.

Una qualsiasi delle dimensioni della griglia predefinite o una griglia definita dall’utente può essere scelta utilizzando la finestra a comparsa o il selettore a discesa della barra degli strumenti nella parte superiore dello schermo. La dimensione della griglia definita dall’utente viene impostata utilizzando l’opzione della barra del menu Dimensioni → Griglia definita dall’utente.

Regolazione del livello dello zoom

Il livello di zoom può essere modificato utilizzando uno dei seguenti metodi:

  • Aprendo la finestra a scomparsa (usando il tasto destro del mouse) e poi selezionando lo zoom desiderato.

  • Usando i seguenti tasti funzione:

    • F1: Enlarge (zoom in)

    • F2: Reduce (zoom out)

    • F3: Redraw the display

    • F4: Centre view at the current cursor position

  • Ruota la rotellina del mouse.

  • Mantenendo premuto il pulsante centrale del mouse si disegna un rettangolo che descrive l’area su cui viene poi effettuato uno zoom.

Visualizzazione delle coordinate del puntatore

Le coordinate del puntatore sono mostrate in pollici o in millimetri a seconda dell’icona selezionata In'' o mm'' sulla barra strumenti di sinistra.

Qualunque unità di misura sia selezionata, Pcbnew lavorerà sempre alla precisione di 1/10,000 di pollice.

La barra di stato in fondo allo schermo restituisce:

  • Le impostazioni di zoom correnti.

  • La posizione assoluta del puntatore del mouse.

  • La posizione relativa del puntatore. Si noti che le coordinate relative (x,y) possono essere impostate a (0,0) in qualunque punto premendo la barra spazio. La posizione del puntatore viene così visualizzata relativa a questa nuova posizione.

Inoltre la posizione relativa del puntatore può essere visualizzata alternativamente usando le sue coordinate polari (raggio + angolo). Questa funzionalità può essere abilitata o disabilitata usando l’icona presente nella barra strumenti di sinistra.

Pcbnew coordinate status display

Comandi da tastiera

Molti comandi sono accessibili direttamente con la tastiera. La selezione può essere sia minuscola che maiuscola. Molti tasti sono mostrati nei menu. Alcuni tasti che non appaiono sono:

  • Canc: cancella una impronta o una pista (disponibile solo se la modalità impronte o la modalità piste è attiva).

  • V: se lo strumento pista è attivo cambia strato di lavoro, oppure piazza un via se è in corso la stesura di una pista.

  • + e -: selezionano lo strato successivo o quello precedente.

  • ?: mostra l’elenco dei comandi da tastiera.

  • Spazio: azzera le coordinate relative.

Operazioni sui blocchi

Le operazioni di spostamento, inversione (speculare), copia, rotazione e cancellazione di un blocco sono tutte disponibili dal menu a discesa. Inoltre, si può centrare la vista sulla selezione del blocco.

La struttura del blocco è tracciata spostando il mouse mentre si mantiene premuto il pulsante sinistro del mouse. L’operazione viene eseguita quando il pulsante viene rilasciato.

Mantenendo premuti uno dei tasti Maiusc o Ctrl, entrambi Maiusc e Ctrl assieme, o Alt, mentre viene disegnato un blocco, l’operazione di inversione, rotazione, cancellazione o copia viene selezionata automaticamente come mostrato nella tabella qui sotto:

Azione Effetto

Pulsante sinistro del mouse

Sposta blocco

Maiusc + Pulsante sinistro del mouse

Inverti (specularmente) blocco

Ctrl + Pulsante sinistro del mouse

Ruota blocco di 90°

Maiusc + Ctrl + Pulsante sinistro del mouse

Cancella il blocco

Alt + Pulsante sinistro del mouse

Copia il blocco

Quando viene effettuato un comando su un blocco, viene mostrata una finestra di dialogo, e gli elementi coinvolti in questo comando possono essere scelti.

Qualunque dei comandi sopra descritti può essere annullato tramite lo stesso menu a scomparsa o premendo il tasto Esc.

Pcbnew legacy block selection dialog

Le unità di misura usate per mostrare i valori dimensionali sono pollici (inch) e millimetri (mm). L’unità desiderata può essere selezionata premendo l’icona presente nella barra strumenti a sinistra: unit inch unit mm. Comunque, (N.d.T. a prescindere dall’unità di misura corrente) si può battere l’unità usata per definire il valore, quando si sta inserendo un nuovo valore.

Le unità di misura accettate sono:

1 in

1 pollice

1 "

1 pollice

25 th

25 thou (-sands = millesimi di pollice)

25 mi

25 mils, uguale a thou

6 mm

6 millimetri

Le regole sono:

  • Gli spazi tra il numero e l’unità sono accettati.

  • Solo le prime due lettere sono significative.

  • Nei paesi dove si possono usare separatori decimali alternativi al punto, il punto (.) può essere comunque utilizzato. Perciò 1,5 e 1.5 sono la stessa cosa in Francese e in Italiano.

Barra del menu in alto

La barra dei menu in alto fornisce accesso ai file (caricamento e salvataggio), opzioni di configurazione, stampa, tracciatura e file delle guide.

Pcbnew top menu bar

Il menu file

Pcbnew file menu

Il menu File consente di caricare e salvare i file dei circuiti stampati, nonché di stampare e tracciare il circuito stampato. Consente l’esportazione (con il formato GenCAD 1.4) del circuito per l’uso con tester automatici.

Il menu modifica

Permette alcune modifiche globali:

Pcbnew edit menu

Il menu vista

Pcbnew view menu

Funzioni di zoom e di visualizzazione 3D della scheda.

Visualizzatore 3D

Apre il visualizzatore 3D. Ecco un esempio:

Sample 3D board
Commutazione modalità di visualizzazione

Permette di cambiare la modalità di visualizzazione.

  • predefinita

  • OpenGL

  • Cairo

Il menu inserisci

Stessa funzione dello strumento presente nella barra strumenti a destra.

Pcbnew place menu

Il menu sbroglia

Funzioni di sbroglio.

Pcbnew route menu

Il menu delle preferenze

Pcbnew preferences menu

Permette:

  • La selezione delle librerie di impronte.

  • Mostra/nasconde il gestore degli strati (la selezione dei colori per la visualizzazione degli strati ed altri elementi. Permette anche di abilitare/disabilitare la visualizzazione degli elementi).

  • Gestione delle opzioni generali (unità, ecc.).

  • La gestione delle altre opzioni di visualizzazione.

  • Creazione, modifica (e rilettura) del file dei comandi da tastiera.

Pcbnew dimensions menu

Un menu importante. Permette la regolazione di:

  • La griglia definita dall’utente.

  • Dimensione dei testi e spessore delle linee usate per i disegni.

  • Dimensioni e caratteristiche delle piazzole.

  • Impostazione dei valori globali per gli strati maschera di saldatura e pastasalda

Pcbnew tools menu

Il menu delle regole di progettazione

Pcbnew design rules menu

Fornisce accesso a due finestre di dialogo:

  • Impostazione regole di progettazione (dimensioni piste e via, isolamenti).

  • Impostazioni strati (numero, abilitazioni e nomi degli strati)

Il menu di aiuto

Fornisce accesso ai manuali utente e al menu di informazioni sulla versione (di Pcbnew).

Uso delle icone nella barra in cima

Questa barra strumenti dà accesso alle funzioni principali di Pcbnew.

Pcbnew top toolbar

new

Creazione di un nuovo circuito stampato.

open brd file

Apertura di un circuito stampato esistente.

save

Salvataggio del circuito stampato.

sheetset

Selezione della dimensione della pagina e modifiche delle proprietà del file.

module editor

Apertura dell’editor delle impronte per modificare una libreria o una impronta di circuito stampato.

modview icon

Apertura del visualizzatore impronte per mostrare impronte di libreria o del circuito stampato.

undo redo

Annulla/Ripristina gli ultimi comandi (10 livelli)

print button

Mostra il menu della stampa.

plot

Mostra il meno della tracciatura.

zoom in zoom out

Zoom in e Zoom out (relativi al centro dello schermo).

zoom redraw

Ridisegna lo schermo

zoom fit in page

Perfetto su schermo

find

Find footprint or text.

netlist

Operazioni sulla netlist (selezione, lettura, controllo e compilazione).

drc

Controllo regole di progettazione (DRC): controllo automatico delle piste.

Pcbnew toolbar layer select dropdown

Selezione dello strato di lavoro.

Pcbnew layer pair indicator

Selezione della coppia di strati (per i via)

mode module

Modalità impronte: se inserita abilita le opzioni delle impronte nella finestra a scomparsa.

mode track

Modalità sbroglio: se inserita abilita le opzioni di sbroglio nella finestra a scomparsa.

web support

Accesso diretto allo sbrogliatore Freerouter

py script

Mostra / nasconde la console di scripting Python

Barra ausiliaria

Pcbnew track thickness dropdown

Selezione di uno spessore pista già in uso.

Pcbnew via size dropdown

Selezione di una dimensione via già in uso.

auto track width

Dimensione automatica pista: se inserita durante la creazione di una nuova pista, quando questa inizia da una pista esistente, la larghezza della nuova pista viene impostata alla larghezza della pista esistente.

Pcbnew grid size dropdown

Selezione della dimensione della griglia.

Pcbnew zoom factor dropdown

Selezione dello zoom.

La barra strumenti sul lato destro

Questa barra strumenti dà accesso allo strumento di modifica per cambiare la visualizzazione del circuito stampato in Pcbnew.

Pcbnew right toolbar

cursor

Select the standard mouse mode.

net highlight

Highlight net selected by clicking on a track or pad.

tool ratsnest

Display local ratsnest (Pad or Footprint).

module

Add a footprint from a library.

add tracks

Placement of tracks and vias.

add zone

Placement of zones (copper planes).

add keepout area

Placement of keepout areas ( on copper layers ).

add dashed line

Draw Lines on technical layers (i.e. not a copper layer).

add circle

Draw Circles on technical layers (i.e. not a copper layer).

add arc

Draw Arcs on technical layers (i.e. not a copper layer).

add text

Placement of text.

add dimension

Draw Dimensions on technical layers (i.e. not the copper layer).

add mires

Draw Alignment Marks (appearing on all layers).

delete

Delete element pointed to by the cursor

Note: When Deleting, if several superimposed elements are pointed to, priority is given to the smallest (in the decreasing set of priorities tracks, text, footprint). The function "Undelete" of the upper toolbar allows the cancellation of the last item deleted.

pcb offset

Offset adjust for drilling and place files.

grid select axis

Grid origin. (grid offset). Useful mainly for editing and placement of footprints. Can also be set in Dimensions/Grid menu.

  • Piazzamento di impronte, piste, zone in rame, testo, ecc.

  • Evidenziazione collegamenti.

  • Creazione di note, elementi grafici, ecc.

  • Eliminare elementi.

La barra strumenti sul lato sinistro

La barra strumenti posta sul lato sinistro fornisce le opzioni di visualizzazione e controllo sull’interfaccia di Pcbnew.

Pcbnew left toolbar

drc off

Turns DRC (Design Rule Checking) on/off. Caution: when DRC is off incorrect connections can be made.

grid

Turn grid display on/off Note: a small grid may not be displayed unless zoomed in far enough

polar coord

Polar display of the relative co-ordinates on the status bar on/off.

unit inch unit mm

Display/entry of coordinates or dimensions in inches or millimeters.

cursor shape

Change cursor display shape.

general ratsnest

Display general rats nest (incomplete connections between footprints).

local ratsnest

Display footprint rats nest dynamically as it is moved.

auto delete track

Enable/Disable automatic deletion of a track when it is redrawn.

show zone

Show filled areas in zones

show zone disable

Do not show filled areas in zones

show zone outline only

Show only outlines of filled areas in zones

pad sketch

Display of pads in outline mode on/off.

via sketch

Display of vias in outline mode on/off.

showtrack

Display of tracks in outline mode on/off.

contrast mode

High contrast display mode on/off. In this mode the active layer is displayed normally, all the other layers are displayed in gray. Useful for working on multi-layer circuits.

layers manager

Hide/Show the Layers manager

mw toolbar

Access to microwaves tools. Under development

Finestre a scomparsa e modifiche veloci

Il clic destro con il mouse apre una finestra a scomparsa. I suoi contenuti dipendono dall’elemento individuato dal puntatore.

Questo dà immediato accesso a:

  • Cambiamento della visualizzazione (alla posizione del puntatore, zoom in, out o alla selezione).

  • Selezione della dimensione della griglia.

  • Inoltre un clic destro su un elemento abilita la modifica dei parametri degli elementi più spesso modificati.

Le schermate sotto mostrano come appaiono le finestre a scomparsa.

Modalità disponibili

Ci sono 3 modalità di utilizzo dello schermo. Nei menu a scomparsa, queste tre modalità aggiungono o tolgono alcuni comandi specifici.

mode module e mode track disabilitata

Modalità normale

mode module abilitata

Modalità impronte

mode track abilitata

Modalità piste

Modalità normale

  • Menu a scomparsa senza selezione:

Pcbnew popup normal mode
  • Menu a scomparsa con pista selezionata:

Pcbnew popup normal mode track
  • Menu a scomparsa con impronta selezionata:

Pcbnew popup normal mode footprint

Modalità impronta

Alcuni esempi in modalità impronta (mode module abilitata)

  • Menu a scomparsa senza selezione:

Pcbnew popup footprint mode
  • Menu a scomparsa con pista selezionata:

Pcbnew popup footprint mode track
  • Menu a scomparsa con impronta selezionata:

Pcbnew popup footprint mode footprint

Modalità pista

Gli stessi esempi in modalità pista (mode track abilitata)

  • Menu a scomparsa senza selezione:

Pcbnew popup track mode
  • Menu a scomparsa con pista selezionata:

Pcbnew popup track mode track
  • Menu a scomparsa con impronta selezionata:

Pcbnew popup track mode footprint

Implementazione schemi

Collegamento di uno schema ad un circuito stampato

In generale, uno schema elettrico è connesso con il suo circuito stampato per mezzo del file di netlist, che normalmente viene generato dall’editor degli schemi elettrici usato per creare lo schema. Pcbnew accetta file di netlist creati con Eeschema o Orcad PCB 2. Al file di netlist, generato dall’editor degli schemi elettrici, solitamente mancano le impronte che corrispondono ai vari componenti. Di conseguenza si rende necessario uno stadio intermedio. Durante questo processo intermedio viene eseguita l’associazione tra componenti e impronte. In KiCad, si usa il programma CvPcb per creare questa associazione e viene prodotto un file di nome *.cmp. CvPcb aggiorna anche il file di netlist usando queste informazioni.

CvPcb può anche generare un `file di cose'' `*.stf che possono essere back-annotate nel file dello schema elettrico come il campo F2 per ogni componente, risparmiandoci il compito di ri-assegnare le impronte in ogni passaggio di modifica dello schema elettrico. In Eeschema la copia di un componente copierà anche l’assegnazione dell’impronta e reimposterà il riferimento come non assegnato per la successiva annotazione auto incrementale.

Pcbnew legge il file di netlist modificato .net e, se esiste, il file .cmp. Nell’eventualità che una impronta sia stata cambiata direttamente in Pcbnew il file .cmp viene automaticamente aggiornato evitando la necessità di eseguire nuovamente CvPcb.

Fare riferimento alla immagine del manuale ``Introduzione a KiCad'' nella sezione Diagramma di flusso di KiCad che illustra il flusso di lavoro di KiCad e come i file intermedi vengano ottenuti e usati dai diversi strumenti software che compongono KiCad.

Procedura per la creazione di un circuito stampato

Dopo aver creato il prorio schema in Eeschema:

  • Generare la netlist usando Eeschema.

  • Assegnare ogni componente nel file di netlist alla forma sul circuito stampato (detta anche impronta) corrispondente usata sul circuito stampato usando Cvpcb.

  • Avviare Pcbnew e leggere il file di netlist modificato. Ciò leggerà anche il file con le selezioni delle impronte.

Pcbnew quindi caricherà automaticamente tutte le impronte necessarie. Ora le impronte possono essere piazzate manualmente o automaticamente sulla scheda e si possono collegare le piste.

Procedura per aggiornare un circuito stampato

Se lo schema elettrico viene modificato (dopo la produzione del circuito stampato), si devono ripetere i seguenti passi:

  • Generare un nuovo file di netlist usando Eeschema.

  • Se i cambiamenti allo schema comprendono nuovi componenti, le impronte corrispondenti devono essere assegnate usando Cvpcb.

  • Eseguire Pcbnew e rileggere la netlist modificata (ciò comporterà anche la rilettura del file con le selezioni delle impronte).

Pcbnew allora caricherà automaticamente ogni nuova impronta, aggiungendo le nuove connessioni e rimuovendo quelle ridondanti. Questo processo viene chiamato forward annotation ed è una procedura molto comune quando si crea ed aggiorna un circuito stampato.

Lettura del file netlist - caricamento impronte

Accessibile dall’icona netlist

Pcbnew netlist dialog

Opzioni disponibili

Selezione impronte

Componenti e collegamento impronte corrispondenti sulla scheda: il collegamento normale è il riferimento (come opzione normale la marcatura temporale può essere usata dopo la riannotazione dello schema, se l’annotazione precedente era andata persa (opzione speciale)

Scambio impronte:

Se un’impronta è cambiata nella netlist: mantieni la vecchia impronta o cambia con la nuova versione.

Piste non connesse

Mantiene tutte le piste esistenti, o cancella le piste errate

Impronte extra

Rimuovi le impronte presenti sulla scheda ma non nella netlist. Le impronte con attributo "Bloccata" non saranno rimosse.

Collegamenti a piazzola singola

Rimuovi i collegamenti a singola piazzole.

Caricamento nuove impronte

Con la visualizzazione GAL quando nuove impronte vengono rilevate nel file netlist, queste vengono caricate, sparse, e rese disponibili per il piazzamento come grupo dove si desidera.

Pcbnew import spread footprints

Con la visualizzazione tradizionale quando le nuove impronte vengono rilevate nel file netlist, queste vengono automaticamente caricate e piazzate alle coordinate (0,0).

Pcbnew stacked footprints

Le nuove impronte possono essere spostate e sistemate una ad una. Un modo migliore per spostarle automaticamente è:

Attivazione della modalità impronta (mode module)

Spostare il puntatore del mouse in un’area consona (libera da componenti) e fare clic con il tasto destro del mouse:

Pcbnew move all modules
  • Posiziona automaticamente le nuove impronte, se c’è già una scheda con impronte preesistenti.

  • Posiziona automaticamente tutte le impronte, per la prima volta (quando si crea una scheda).

La schermata seguente mostra i risultati.

Pcbnew unstacked footprints

Strati

Introduzione

Pcbnew può lavorare con 50 strati diversi:

  • Tra 1 e 32 strati rame per lo sbroglio piste.

  • 14 strati tecnici di funzione prefissata:

    • 12 strati appaiati (fronte/retro): Adhesive, Solder Paste, Silk Screen, Solder Mask, Courtyard, Fabrication

    • 2 strati singoli: Edge Cuts, Margin

  • 4 strati ausiliari che si può usare a piacimento: Comments, E.C.O. 1, E.C.O. 2, Drawings

Impostazione degli strati

Per aprire la voce Configurazione strati dalla barra del menu, selezionare Regole di progettazioneConfigurazione strati.

Il numero di strati rame, i loro nomi e le loro funzioni, vengono impostati in questa sede. Gli strati tecnici non usati possono essere disabilitati.

Pcbnew layer setup dialog

Descrizione strati

Selezione degli strati rame

Gli strati rame sono i classici strati di lavoro usati per piazzare e impostare le piste. La numerazione degli strati comincia da 0 (il primo strato in rame, di fronte) e finisce a 31 (retro). Dato che i componenti non possono essere piazzati negli strati interni (dal numero 1 al 30), solo gli strati numero 0 e 31 sono strati componente.

Il nome di tutti gli strati rame è modificabile. Gli strati rame hanno un attributo di funzione utile nell’uso il router esterno Freerouter. Esempi di nomi di strati predefiniti sono F.Cu e In0 per lo strato numero 0.

Pcbnew layer setup dialog layer properties

Strati tecnici accoppiati

12 strati tecnici sono accoppiati: uno per la parte frontale, ed uno per il retro. Li si possono riconoscere dal prefisso F.'' o B.'' nel nome. Gli elementi che compongono un’impronta (piazzola, disegno, testo) di uno di questi strati vengono automaticamente resi speculari e spostati sugli strati complementari quando l’impronta viene ribaltata.

Gli strati tecnici accoppiati sono:

Adesivo (F.Adhes e B.Adhes)

Questi vengono usati per l’applicazione di colla che serve a mantenere i componenti SMD al loro posto sul circuito stampato, in genere durante la saldatura ad onda.

Pastasalda (F.Paste e B.Paste)

Usato per produrre una maschera per permettere la deposizione della pasta salda (chiamata anche flussante) sopra le piazzole dei componenti a montaggio superficiale, generalmente prima della fase di saldatura ad onda. In genere, solo le piazzole a montaggio superficiale occupano questi strati.

Serigrafia (F.SilkS e B.SilkS)

Sono gli strati dove appaiono i disegni dei componenti. È dove si disegnano cose come la polarità del componente, l’indicatore del piedino 1, i riferimenti per il montaggio, …​

Maschera di saldatura (F.Mask e B.Mask)

Questi definiscono le maschere di saldatura. Tutte le piazzole dovrebbero apparire su uno di questi strati (SMT) o su entrambi (per i componenti passanti) per prevenire che la vernice copra le piazzole.

Courtyard (F.CrtYd e B.CrtYd)

Usato per mostrare quanto spazio un componente fisicamente prende sul circuito stampato.

Fabbricazione (F.Fab e B.Fab)

Assemblaggio impronte (?).

Strati tecnici indipendenti

Edge.Cuts

Questo strato è riservato per il disegno del bordo del circuito stampato. Ogni elemento (grafica, testi…​) piazzato su questo strato appare su tutti gli altri strati. Usare questo strato solo per disegnare i bordi della scheda.

Margin

Limite assoluto sporgenza scheda.

Strati di uso generale

Questi strati sono a disposizione per qualsiasi uso. Possono essere usati per testo come istruzioni per l’assemblaggio o il cablaggio, o per disegni per la costruzione, da usare per creare un file di assemblaggio o lavorazione. I loro nomi sono:

  • Commenti

  • E.C.O. 1

  • E.C.O. 2

  • Disegni

Selezione dello strato attivo

La selezione dello strato di lavoro attivo può essere effettuata in diverse maniere:

  • Usando la barra strumenti a destra (gestore strati).

  • Usando la barra in alto.

  • Con la finestra a scomparsa (attivata dal tasto destro del mouse).

  • Usando i tasti + e - (funzionano solo sugli strati rame).

  • Tramite i comandi da tastiera.

La selezione usando il gestore degli strati

Pcbnew layer manager pane

La selezione usando la barra in alto

Pcbnew layer selection dropdown

Questo seleziona direttamente lo strato di lavoro.

Sono mostrati i comandi da tastiera per selezionare lo strato di lavoro.

La selezione usando la finestra a scomparsa

Pcbnew layer selection popup

La finestra a scomparsa apre un menu che fornisce la scelta dello strato di lavoro.

Pcbnew layer selection dialog

La selezione degli strati per i via

Se l’icona Aggiungi piste e via è selezionata sulla barra a destra, la finestra a scomparsa fornisce l’opzione di cambiare la coppia di strati usati per i via:

Pcbnew via layer pair popup

Questa selezione apre una finestra di menu che fornisce la scelta di strati usati per i via.

Pcbnew via layer pair dialog

Quando un via viene piazzato lo strato di lavoro (attivo) viene automaticamente commutato sullo strato alternativo della coppia di strati usati per i via.

È possibile anche commutare su un altro strato attivo usando i comandi da tastiera, e se si sta collegando una pista, verrà inserito un via.

Uso della modalità ad alto contrasto

Questa modalità viene avviata quando lo strumento (nella barra comandi a sinstra) viene attivato: contrast mode

Quando si usa questa modalità, lo strato attivo viene mostrato come nella modalità normale ma tutti gli altri strati vengono mostrati di colore grigio.

Ci sono due casi in cui è utile:

Strati rame in modalità alto contrasto

Quando una scheda usa più di quattro strati, questa opzione permette allo strato rame attivo di essere visto più facilmente:

Modalità normale (strato rame lato retro attivo):

Pcbnew copper layers contrast normal

Modalità alto contrasto (strato rame lato retro attivo):

Pcbnew copper layers contrast high

Strati tecnici

L’altro caso è quando è necessario esaminare gli strati di pastasalda e di maschera di saldatura che normalmente non sono visualizzati.

Le maschere sulle piazzole vengono mostrate se questa modalità è attiva.

Modalità normale (strato maschera di saldatura lato fronte attivo):

Pcbnew technical layers contrast normal

Modalità alto contrasto (strato maschera di saldatura lato fronte attivo):

Pcbnew technical layers contrast high

Crea e modifica una scheda

Creazione di una scheda

Disegno dei contorni della scheda

Solitamente è considerata una buona idea definire per prima cosa i bordi della scheda. I bordi si disegnano con una sequenza di segmenti di linea. Selezionare 'Edge.Cuts' come strato attivo e usare lo strumento Aggiungi linea o poligono grafico'' per tracciare il bordo, facendo clic alla posizione di ogni vertice e facendo doppio clic per finire. Le schede di solito hanno dimensioni molto precise, perciò potrebbe essere necessario usare le coordinate mostrate del puntatore durante la tracciatura del contorno. Tenere a mente che le coordinate relative possono essere azzerate in qualsiasi momento usando la barra spaziatrice, e che le unità di misura mostrate possono essere abilitate/disabilitate usando la combinazione Ctrl-U''. Le coordinate relative consentono disegni di dimensioni molto precise. È possibile disegnare un contorno circolare (o arcuato):

  1. Selezionare lo strumento Aggiungi cerchio grafico'' o Aggiungi arco grafico''

  2. Fare clic per fissare il centro del cerchio

  3. Regolare il raggio muovendo il mouse

  4. Terminare facendo nuovamente clic.

La larghezza del bordo può essere regolata, nel menu Parametri (larghezza raccomandata = 150 in decimi di mils) o attraverso le Opzioni, ma questa non sarà visibile a meno che la grafica non sia mostrata in una modalità diversa da contorni.

Il bordo risultante dovrebbe somigliare a questo:

Pcbnew simple board outline

Uso di disegno DXF per il contorno scheda

In alternativa a disegnare il contorno scheda direttamente in Pcbnew, questo può essere importato da un disegno DXF.

Usando questa funzione si possono creare forme di schede più complesse di quelle che si otterrebbe sfruttando solamente le capacità di disegno interne di Pcbnew.

Per esempio un pacchetto CAD meccanico può essere usato per definire la forma della scheda giusta per un contenitore particolare.

Preparazione di un disegno DXF per contorno scheda

Le capacità di importazione DXF di KiCad non includono il supporto a caratteristiche DXF come POLYLINE e ELLISSI e i file DXF che usano queste caratteristiche richiedono alcuni passi aggiuntivi di conversione per prepararli all’importazione.

Per questa conversione si può usare un pacchetto software come LibreCAD.

Come primo passo, tutte le POLILINEE devono essere divise (esplose) nelle loro oiginali forme più semplici. In LibreCAD usare i passi seguenti:

  1. Aprire una copia del file DXF.

  2. Selezionare la forma della scheda (le forme selezionate sono mostrate con linee tratteggiate).

  3. Nel menu Modifica, selezionare Esplodi.

  4. Premere INVIO.

Come prossimo passo, curve complesse come le ELLISSI vanno spezzate in segmenti di linea più piccoli che 'approssimano' la forma desiderata. Questo accade automaticamente quando il file DXF viene esportato o salvato nel vecchio formato file DXF R12 (dato che il formato R12 non supporta forme dalle curve complesse, le applicazioni CAD convertono queste forme in segmenti di linea. Alcune applicazioni CAD permettono la configurazione del numero o della lunghezza dei segmenti di linea usati). In LibreCAD la lunghezza dei segmenti è generalmente abbastanza piccola da poter essere usata per le forme dei circuiti stampati.

In LibreCAD, usare i passi seguenti per esportare nel formato file DXF R12:

  1. Nel menu File, usare Salva con nome…​

  2. Nella finestra di dialogo Salva disegno come, c’è un selettore Salva come: in fondo a destra della finestra di dialogo. Selezionare l’opzione Drawing Exchange DXF R12.

  3. Opzionalmente inserire un nome fiel nel campo Nome file:.

  4. Fare clic su Salva

Il file DXF è ora pronto per l’importazione in KiCad.

Importare il file DXF in KiCad

I passi seguenti descrivono l’importazione del file DXF preparato come forma di circuito stampato in KiCad. Si noti che il comportamento di importazione è leggermente differente a seconda della modalità 'schermo' usata.

Uso nella modalità schermo ``predefinita'':

  1. Nel menu File, selezionare Importa e poi l’opzione File DXF.

  2. Nella finestra di dialogo Importa file DXF usare 'Esplora' per selezionare il file DXF preparato per essere importato.

  3. Nell’opzione 'Posiziona punto origine DXF (0,0):', impostare il punto dell’origine DXF relativa alle coordinate della scheda (la scheda KiCad ha (0,0) nell’angolo in alto a sinistra). Per 'Posizione personalizzata' inserire le coordinate nei campi 'Posizione X:' e 'Posizione Y'.

  4. Nella selezione 'Strati', selezionare lo strato della scheda da importare. Per i contorni scheda serve Edge.Cuts.

  5. Fare clic su 'OK'.

Uso nelle modalità schermo OpenGL'' o Cairo'':

  1. Nel menu File, selezionare Importa e poi l’opzione File DXF.

  2. Nella finestra di dialogo Importa file DXF usare 'Esplora' per selezionare il file DXF preparato per essere importato.

  3. L’impostazione dell’opzione 'Posiziona punto origine DXF (0,0):' viene ignorata in questa modalità.

  4. Nella selezione 'Strati', selezionare lo strato della scheda da importare. Per i contorni scheda serve Edge.Cuts.

  5. Fare clic su 'OK'.

  6. La forma è ora attaccata al proprio cursore e può essere spostata sull’area della scheda.

  7. Fare clic per 'depositare' la forma sulla scheda.

Esempio di forma DXF importata

Ecco un esempio di importazione DXF con una scheda che ha diversi segmenti ellittici approssimati da una serie di corti segmenti di linea:

Pcbnew board outline imported from a DXF

Lettura della netlist generata dallo schema elettrico

Attivare l’icona netlist per mostrare la finestra di dialogo della netlist:

Pcbnew netlist dialog

Se il nome (percorso) della netlist nel titolo della finestra è sbagliato, usare il pulsante 'Seleziona' per sfogliare e selezionare la netlist desiderata. Poi 'Leggere' la netlist. Ogni modulo non ancora caricato apparirà, sovrapposto uno sull’altro (vedremo poi come spostarli automaticamente).

Pcbnew board outline with dogpile

Se nessuna delle impronte è stata piazzata, tutte le impronte appariranno sulla scheda nello stesso punto, rendendole difficili da riconoscere. È possibile disporle automaticamente (usando il comando 'Disposizione globale' tramite il pulsante destro del mouse). Ecco il risultato di tale riorganizzazione:

Pcbnew board outline with globally placed modules
Se una scheda viene modificata sostituendo un’impronta esistente con una nuova (per esempio cambiando una resistenza da 1/8W con una da 1/2W) in CvPcb, sarà necessario cancellare il componente esistente prima che Pcbnew carichi l’impronta di rimpiazzo. Comunque, se un’impronta deve essere sostituita da una esistente, è più facile usare la finestra di dialogo impronte, accessibile tramite clic sul tasto destro del mouse sopra l’impronta in questione.

Correggere una scheda

È molto spesso necessario correggere una scheda seguendo un corrispondente cambiamento nello schema elettrico.

Passi da seguire

  1. Creare una nuova dallo schema elettrico modificato.

  2. Se sono stati aggiunti nuovi componenti, collegarli alle impronte corrispondenti in CvPcb.

  3. Leggere la nuova netlist in Pcbnew.

Cancellare le piste errate

Pcbnew è in grado di cancellare automaticamente piste che sono divenute errate per delle modifiche. Per far ciò, controllare l’opzione 'Cancella' nel riquadro 'Piste non collegate' nella finestra di dialogo della netlist:

Pcbnew bad tracks deletion option

Comunque, si fa spesso più velocemente a modificare tali piste a mano (la funzione DRC ne permette l’identificazione).

Componenti cancellati

Pcbnew può cancellare impronte corrispondenti a componenti che sono stati rimossi dallo schema. Opzionale.

Ciò è necessario perché ci sono spesso impronte (fori di fissaggio viti, per esempio) aggiunte al circuito stampato che non appariranno mai sullo schema elettrico.

Pcbnew extra footprints deletion option

Se l’opzione "Impronte extra" è selezionata, un’impronta corrispondente ad un componente non trovato nella netlist, verrà cancellata, a meno che questa non abbia l’opzione "Bloccata" attiva. È una buona idea attivare quest’opzione per le impronte "meccaniche":

Pcbnew unlock footprint option

Impronte modificate

Se un’impronta viene modificata nella netlist (usando CvPcb), ma l’impronta è stata già posizionata, essa non verrà modificata da Pcbnew, a meno che la corrispondente opzione del riquadro 'Scambio impronte' della finestra di dialogo netlist dialog sia stata abilitata:

Pcbnew exchange module option

Cambiare un’impronta (sostituendo una resistenza con un’altra di dimensione diversa, per esempio) può essere effettuata direttamente modificando l’impronta.

Opzioni avanzate - selezioni usando le marche temporali

Alle volte la notazione dello schema elettrico viene cambiata, senza che vi sia cambiamento materiale nel circuito (ciò può riguardare i riferimenti - come R5, U4…​). Il circuito stampato è così inalterato (eccetto forse per la serigrafia). Ciononostante, internamente, i componenti e le impronte sono rappresentati dai loro riferimenti. In questo caso, l’opzione 'Marcatura temporale' della finestra di dialogo della netlist può venire selezionata prima della ri-lettura della netlist:

Pcbnew module selection option

Con questa opzione, Pcbnew non identifica più le impronte dai riferimenti, ma dalle marcature temporali. Le marcature temporali sono automaticamente generate da Eeschema (è la data e l’ora di quando il componente è stato inserito nello schema).

È necessario esercitare una grande cura nell’uso di questa opzione (salvare prima il file!). Questo perché la tecnica è complicata nel caso si usino componenti contenenti più parti (per es. un 7400 possiede 4 parti e un contenitore). In questo caso, la marcatura temporale non è definita univocamente (per il 7400 ce ne sarebbero fino a quattro - una per ogni parte). Ad ogni modo, l’opzione marcatura temporale solitamente risolve i problemi di ri-annotazione.

Scambio diretto di impronte già piazzate sulla scheda

Il cambio di un’impronta (o qualche impronte identica) con un’altra impronta è molto utile e molto facile:

  1. Clic su un’impronta per aprire la finestra di dialogo della modifica.

  2. Attiva la modifica delle impronte.

Pcbnew change modules button

Opzioni per il cambio delle impronte:

Pcbnew footprint exchange options

Bisogna scegliere un nuovo nome impronta e usare:

  • Cambia impronta di 'xx' per l’impronta corrente

  • Cambia impronte 'yy' per tutte le impronte come l’impronta corrente.

  • Cambia le impronte con lo stesso valore per tutte le impronte come l’impronta corrente, ristretto a componenti aventi lo stesso valore.

  • Aggiorna tutte le impronte della scheda per ricaricare tutte le impronte sulla scheda.

Piazzamento impronte

Piazzamento assistito

Durante lo spostamento di impronte la ratsnest delle impronte (la rete di connessioni) può essere mostrata per assistere durante il piazzamento. Per abilitare questa funzione deve essere attivata l’icona modratsnest della barra strumenti di sinistra.

Piazzamento manuale

Selezionare l’impronta con il pulsante destro del mouse e scegliere il comando Sposta dal menu. Spostare l’impronta sulla posizione richiesta e piazzarla con il punsante sinistro del mouse. Se richiesto, l’impronta selezionata può anche essere ruotata, invertita o modificata. Selezionare Annulla dal menu (o premere il tasto Esc) per annullare il comando.

Qui si può osservare la visualizzazione della ratsnest dell’impronta durante uno spostamento:

Pcbnew ratsnest during move

Il circuito, una volta che tutte le impronte siano state piazzate, potrebbe apparire come mostrato:

Pcbnew circuit after placement

Distribuzione automatica impronte

In generale, le impronte si possono spostare solo se non sono state ``Bloccate''. Questo attributo può essere acceso o spento dal menu a discesa (pulsante destro del mouse sopra l’impronta) durante la modalità impronte o tramite il menu di modifica dell’impronta.

Come dichiarato nello precedente capitolo, le nuove impronte caricate durante la lettura della netlist appaiono impilate in una singola posizione sulla scheda. Pcbnew permette la distribuzione automatica delle impronte per semplificarne la selezione ed il piazzamento manuali.

  • Selezionare l’opzione ``Modalità impronte'' (icona mode module sulla barra strumenti in alto).

  • La finestra a scomparsa attivata dal pulsante destro del mouse diventa:

Se è presente un’impronta sotto il puntatore del mouse:

Pcbnew context module mode module under cursor

Se non c’è niente sotto il puntatore:

Pcbnew context module mode no module under cursor

In entrambi i casi i seguenti comandi sono disponibili:

  • Disponi tutte le impronte permette la distribuzione automatica di tutte le impronte non bloccate. In generale viene usato dopo la prima lettura di una netlist.

  • Disponi tutte le impronte non già presenti sulla scheda permette la distribuzione automatica delle impronte che non sono già state piazzate all’interno dei contorni dello stampato. Questo comando richiede che sia già presente un bordo scheda per determinare quali impronte possano essere distribuite automaticamente.

Disposizione automatica di impronte

Caratteristiche del piazzamento automatico

La funzione di piazzamento automatico permette il piazzamento di impronte sulle 2 facce di un circuito stampato (anche se lo spostamento di un’impronta sullo strato rame non è automatico).

Cerca anche il miglior orientamento (0, 90, -90, 180 gradi) per l’impronta. Il piazzamento viene fatto secondo un algoritmo di ottimizzazione, che cerca di minimizzare la lunghezza della ratsnest e di creare spazio tra le impronte più grandi con molti piedini. L’ordine di piazzamento è ottimizzato per piazzare inizialmente queste impronte più grandi con molti piedini.

Preparazione

Pcbnew può perciò piazzare le impronte automaticamente, anche se è necessario guidare questo piazzamento, perché nessun software può indovinare cosa l’utente desidera ottenere.

Prima che un piazzamento automatico venga effettuato si deve:

  • Creare il contorno della scheda (può essere complesso, ma deve essere chiuso se la forma non è rettangolare).

  • Piazzare manualmente i componenti le cui posizioni sono imposte (connettori, fori di fissaggio, ecc.).

  • Stesso discorso per alcune impronte SMD e componenti critici (impronte grandi per esempio) che devono stare su uno specifico lato o in una specifica posizione sulla scheda e questo va fatto manualmente.

  • Una volta completati i piazzamenti manuali queste impronte devono essere ``fissate'' per prevenirne lo spostamento. Con l’icona della modalità impronte mode module selezionata fare clic destro sull’impronta e selezionare "Fissa impronte" nel menu a discesa. Questa operazione può essere effettuata anche tramite il menu Impronta/Modifica parametri.

  • Il piazzamento automatico può essere effettuato. Con l’icona modalità impronte selezionata, fare clic destro e selezionare Disposizione globale - e poi Posiziona automaticamente tutte le impronte.

Durante il piazzamento automatico, se richiesto, Pcbnew può ottimizzare l’orientamento delle impronte. Comunque la rotazione verrà tentata solo se viene autorizzata per l’impronta (vedere le opzioni dell’editor impronte).

Solitamente le resistenze e i condensatori non polarizzati vengono autorizzati alla rotazione di 180 gradi. Alcune impronte (i piccoli transistor per esempio) possono essere autorizzati per la rotazione di +/- 90 e 180 gradi.

Per ogni impronta un cursore autorizza la rotazione di 90 gradi e un secondo cursore autorizza la rotazione di 180 gradi. Un’impostazione di 0 previene la rotazione, una impostazione di 10 la autorizza, e un valore intermedio indica una preferenza per/contro la rotazione.

L’autorizzazione alla rotazione può essere effettuata modificando l’impronta una volta che questa viene piazzata sulla scheda. Comunque è preferibile impostare le opzioni richieste sull’impronta nella libreria dato che queste impostazioni verranno ereditate ogni volta che l’impronta viene usata.

Auto-piazzamento interattivo

Potrebbe rendersi necessario il blocco del piazzamento automatico, durante il suo funzionamento (effettuabile premendo il tasto Esc), e il riposizionamento manuale di un’impronta. Usando il comando Autoposiziona prossima impronta si riavvierà l’autopiazzamento dal punto in cui era stato fermato.

Il comando Posiziona automaticamente nuove impronte permette il piazzamento automatico delle impronte chen non sono state già piazzate all’interno dei limiti della scheda. Non sposterà comunque quelle dentro i bordi del circuito stampato anche se queste dovessero non essere ``bloccate''.

Il comando Posiziona automaticamente rende possibile l’esecuzione di un autopiazzamento dell’impronta indicata dal mouse, anche se questa dovesse avere l’attributo di ``blocco'' attivo.

Nota aggiuntiva

Pcbnew determina automaticamente la possibile zona di piazzamento dell’impronta rispettando la forma dei bordi della scheda, che non devono necessariamente essere rettangolari (può essere tonda, avere ritagli, ecc.).

Se la scheda non è rettangolare, il profilo della scheda deve essere chiuso, in modo da permettere a Pcbnew di determinare cosa è dentro e cosa è fuori dalla scheda. Analogamente, se ci sono dei ritagli interni, i loro bordi devono essere chiusi.

Pcbnew calcola la possibile zona di piazzamento delle impronte usando i bordi della scheda, e poi passa ogni impronta una alla volta sopra quest’area in modo da determinare il posizionamento ottimale.

Impostazione parametri di sbroglio

Impostazioni correnti

Accesso alla finestra di dialogo principale

I parametri più importanti sono accessibili dal seguente menu a tendina:

Pcbnew design rules dropdown

e sono impostati nella finestra di dialogo delle regole di progettazione.

Impostazioni correnti

Le impostazioni correnti sono mostrate nella barra strumenti in alto.

Pcbnew design rules top toolbar

Opzioni generali

Il menu delle opzioni generali è disponibile tramite il collegamento nella barra strumenti in cima, Preferenze → Impostazioni generali.

Pcbnew preferences menu

La finestra di dialogo è simile alla seguente:

Pcbnew general options dialog

Per la creazione delle piste i parametri necessari sono:

  • Limita piste a 45 gradi: le direzioni consentite per i segmenti di pista sono 0, 45 o 90 gradi.

  • Usa piste a due segmenti: durante la creazione di piste, vengono mostrati 2 segmenti.

  • Cancella piste disconnesse: durante la creazione delle piste, la vecchia viene automaticamente cancellata se ridondante.

  • Piazzole magnetiche: il puntatore diventa una piazzola, centrato nell’area piazzole.

  • Piste magnetiche: il puntatore diventa l’asse della pista.

Netclass

Pcbnew permette di definire parametri di sbroglio diversi per ogni collegamento. I parametri sono definiti per gruppi di collegamento.

  • Un gruppo di collegamenti viene chiamato una Netclass.

  • C’è sempre una netclass chiamata "default".

  • Gli utenti possono aggiungere altre netclass.

Una netclass definisce:

  • L’ampiezza delle piste, i diametri dei via e dei fori.

  • Lo spazio tra piazzole e piste (o via).

  • Nello sbroglio, Pcbnew seleziona automaticamente la netclass corrispondente al collegamento della pista da creare o modificare, e quindi i parametri di sbroglio.

Impostazione parametri di sbroglio

La scelta viene effettuata nel menu: Regole di progettazione → Regole di progettazione.

Editor delle netclass

L’editor delle netclass permette di:

  • Aggiungere o cancellare netclass.

  • Impostare i parametri di sbroglio: isolamento, larghezza piste, dimensione via.

  • Raggruppare collegamenti in netclass.

Pcbnew design rules editor netclass tab

Regole di progettazione globali

Le regole di progettazione globali sono:

  • Consenti via ciechi/sepolti.

  • Consenti microvia (uVia).

  • Valori minimi permessi per piste e via.

Viene sollevata una segnalazione di errore di controllo regole di progettazione (DRC) quando viene incontrato un valore inferiore al valore minimo specificato. Il secondo pannello della finestra di dialogo è:

Pcbnew design rules editor global tab

Questa finestra di dialogo permette anche di inserire uno \"stock\" di dimensione piste e via.

Durante lo sbroglio, è possibile selezionare uno di questi valori per creare una pista o un via, invece che usare il valore predefinito della netclass.

Utile in casi critici quando un piccolo segmento di pista deve avere una specifica dimensione.

Parametri dei via

Pcbnew gestisce 3 tipi di via:

  • Via passanti (i normali via).

  • Via ciechi/sepolti.

  • Micro via, come i via sepolti, ma limitati da uno strato esterno al suo più vicino. Sono concepiti per collegare i pin BGA allo strato interno più vicino. Il loro diametro è solitamente molto piccolo e sono forati al laser.

Come impostazione predefinita, tutti i via hanno lo stesso valore di foratura.

Questa finestra di dialogo specifica i valori più piccoli accettabili per i parametri dei via. Su una scheda, un via più piccolo del valore qui specificato genera un errore DRC.

Parametri piste

Specifica la larghezza pista minima accettabile. Su una scheda, una pista la cui larghezza sia inferiore al valore qui specificato genera un errore DRC.

Dimensioni specifiche

Pcbnew specific size options

Si può inserire un insieme extra di dimensioni piste e/o via. Durante lo sbroglio di una pista, questi valori possono venir usati su richiesta, in luogo dei valori presi dalla netclass corrente.

Esempi e dimensioni tipiche

Larghezza pista

Usa il valore più grande possibile conforme alle dimensioni minime qui specificate.

Unità CLASS 1 CLASS 2 CLASS 3 CLASS 4 CLASS 5

mm

0.8

0.5

0.4

0.25

0.15

mils

31

20

16

10

6

Isolamento (distanza)

Unità CLASS 1 CLASS 2 CLASS 3 CLASS 4 CLASS 5

mm

0.7

0.5

0.35

0.23

0.15

mils

27

20

14

9

6

Solitamente, la distanza minima è molto simile alla larghezza minima di pista.

Esempi

Grezzo

  • Distanza: 0.35 mm (0.0138 pollici).

  • Larghezza piste: 0.8 mm (0.0315 pollici).

  • Diametro piazzole per CI e via: 1.91 mm (0.0750 pollici).

  • Diametro piazzole per componenti discreti: 2.54 mm (0.1 pollici).

  • Larghezza piste di massa: 2.54 mm (0.1 pollici).

Pcbnew dr example rustic

Standard

  • Distanza: 0.35mm (0.0138 pollici).

  • Larghezza piste: 0.5mm (0.0127 pollici).

  • Diametro piazzole per CI: allungate per permettere alle piste di passare tra le piazzole del CI ma permettendo alla piazzola di avere sufficiente superficie di aderenza (1.27 x 2.54 mm -→ 0.05 x 0.1 pollici).

  • Via: 1.27 mm (0.0500 pollici).

Pcbnew dr example standard

Sbroglio manuale

Lo sbroglio manuale è spesso raccomandato, perché è l’unico metodo che offre del controllo sulle priorità dello sbroglio. Per esempio, è preferibile iniziare a sbrogliare le piste di alimentazione, rendendole larghe e corte, mantenendo le alimentazioni analogiche e digitali ben separate. Solo in seguito bisognerebbe passare allo sbroglio delle piste di segnali sensibili. Oltre ad altri problemi, lo sbroglio automatico richiede spesso molti più via. Comunque, lo sbroglio automatico può fornire utili suggerimenti per il posizionamento delle impronte. Con l’esperienza, probabilmente si troverà che lo sbroglio automatico è utile per sbrogliare velocemente le piste ``ovvie'', ma le piste rimanenti sarà meglio sbrogliarle a mano.

Aiuto nella creazione delle piste

Pcbnew può visualizzare la ratsnest completa, se si attiva il pulsante modratsnest.

Il pulsante net highlight permette di evidenziare un collegamento (facendo clic su una piazzola o su una pista esistente si evidenza il collegamento corrente).

Il test DRC controlla le piste in tempo reale durante la loro creazione. Non è possibile creare una pista che non rispetti le regole DRC. È possibile disabilitare il controllo DRC facendo clic sul pulsante. Ciò è però sconsigliato, perciò sarà meglio usare questa funzione solo in casi particolari.

Creazione piste

Una pista può essere creata facendo clic sul pulsante add tracks. Una nuova pista deve cominciare su una piazzola o su un’altra pista, dato che Pcbnew deve conoscere la connessione usata per la nuova pista (in modo da controllare le regole DRC).

Pcbnew creating new track

Quando si crea una nuova pista, Pcbnew mostra i collegamenti alle piazzole più vicine non connesse, il cui numero è impostato nell’opzione "Limite max collegamenti" nelle opzioni generali.

Finire la pista facendo doppio clic, tramite il menu a scomparsa o tramite il corrispondente comando da tastiera.

Pcbnew track in progres context

Spostamento e trascinamento piste

Quando il pulsante add tracks è attivo, la pista dove il puntatore è posizionato può essere spostata con il tasto M''. Se si vuole trascinare la pista si può usare il tasto G''.

Inserimento via

Si può inserire un via solo durante la fase di creazione di una pista:

  • Tramite il menu a scomparsa.

  • Tramite il tasto ``V''.

  • Passando ad un nuovo strato rame usando il tasto appropriato.

Selezione/modifica della larghezza pista e della dimensione via

Facendo clic su una pista o su una piazzola, Pcbnew automaticamente seleziona la netclass corrispondente, e la dimensione della pista e del via vengono ricavate da questa netclass.

Come osservato in precedenza, l’editor delle regole di progettazione globali possiede uno strumento per inserire dimensioni piste e via extra.

  • La barra strumenti orizzontale può essere usata per selezionare una dimensione.

  • Quando il pulsante add tracks è attivo, la larghezza della pista corrente può essere selezionata dal menu a discesa (accessibile anche quando si crea una pista).

  • L’utente può usare i valori predefiniti della netclass o un valore specificato.

Uso della barra orizzontale

Pcbnew track toolbar

Pcbnew track toolbar track width selection

Selezione della larghezza della pista. Il simbolo * è un contrassegno che indica la selezione del valore della netclass predefinita.

Pcbnew track toolbar track width selection in use

Selezione di un valore specifico di larghezza pista. Il primo valore nell’elenco è sempre il valore della netclass. Gli altri valori sono larghezze piste inserite dall’editor delle regole di progettazione globali.

Pcbnew track toolbar via size selection

Selezione dimensione via. Il simbolo * è un contrassegno per la selezione del valore della netclass predefinita.

Pcbnew track toolbar via size selection in use

Selezione di un valore di dimensione via specifico. Il primo valore nell’elenco è sempre il valore della netclass. Gli altri valori sono le dimensioni via inserite dall’editor delle regole di progettazione globali.

auto track width

Se abilitato: selezione automatica della larghezza pista. Quando si inizia una pista su una pista esistente, la nuova pista la la stessa larghezza della pista esistente.

Pcbnew track toolbar grid size selection

Selezione dimensione griglia.

Pcbnew track toolbar zoom selection

Selezione zoom.

Uso del menu a discesa

Si può selezionare una nuova dimensione per lo sbroglio, o cambiare in un via o un segmento di pista creati in precedenza:

Pcbnew track context menu

Se si desidera cambiare le dimensioni di molti via (o piste), il modo migliore è di usare una netclass specifica per i collegamenti che devono essere modificati (vedere Cambiamenti globali).

Modifica e cambiamento piste

Cambiare una pista

In molti casi è richiesto il ridisegno della pista.

Nuova pista (in corso):

Pcbnew new track in progress

Quando finita:

Pcbnew new track completed

Pcbnew rimuoverà automaticamente la vecchia pista se ridondante.

Cambiamenti globali

La finestra di dialogo delle dimensioni globali piste e via è accessibile tramite la finestra a scomparsa che appare facendo clic destro su una pista:

Pcbnew track global edit context menu

La finestra di dialogo consente il cambiamento globale di piste e/o via per:

  • Il collegamento corrente.

  • L’intera scheda.

Pcbnew track global edit dialog

Sbroglio Interattivo

Lo sbroglio interattivo permette di sbrogliare in maniera veloce ed efficiente i circuiti stampati, spingendo e girando attorno agli elementi sulla scheda che potrebbero collidere con le piste che si sta disegnando.

Sono supportate le seguenti modalità:

  • Evidenzia collisioni, che evidenzia con un colore verde brillante tutti gli oggetti e le regioni che violano le regole di isolamento.

  • Spingi, tenta di spingere e compattare tutti gli elementi che collidono con la pista che si sta attualmente sbrogliando.

  • Aggira, tenta di evitare gli ostacoli circondandoli/girandoci attorno.

Impostazione

Prima di usare lo sbroglio interattivo, impostare queste due cose:

  • Impostazioni isolamento. Per configurare le impostazioni di isolamento, aprire la finestra di dialogo delle Regole di progettazione e assicurarsi che i valori di isolamento predefiniti siano almeno ragionevoli.

Rules editor
  • Abilita la modalità OpenGL, selezionando l’opzione di menu Visualizza→Imposta schermo a OpenGL o premendo F11.

OpenGL mode

Disposizione delle piste

Per attivare lo strumento di sbroglio premere il pulsante Sbroglio interattivo Interactive Router Button o il pulsante X. Il puntatore si trasformerà in una croce e il nome dello strumento apparirà nella barra di stato.

Per cominciare a tracciare una pista, fare clic su un qualsiasi elemento (una piazzola, una pista o un via) o premere nuovamente il tasto X con il puntatore del mouse sopra l’elemento. La nuova pista userà il collegamento (net) dell’elemento di partenza. Facendo clic o premento X su una zona vuota del circuito stampato farà cominciare una pista senza un collegamento assegnato.

Spostare il mouse per definire la forma della pista. Lo sbrogliatore proverà a seguire il mouse, scartando gli ostacoli inamovibili (come le piazzole) e spostando piste/via in rotta di collisione, a seconda della modalità in cui si trova. Ritirando il puntatore del mouse, gli elementi spostati torneranno alle loro posizioni iniziali.

Facendo clic su una piazzola/pista/via dello stesso collegamento (net) finisce lo sbroglio. Facendo clic in uno spazio vuoto fissa i segmenti sbrogliati fino a quel momento e continua lo sbroglio della pista.

Per bloccare lo sbroglio e annullare tutti i cambiamenti (elementi spostati, ecc.), basta premere il tasto Esc.

Premendo V o selezionando Piazza via passante dal menu contestuale durante lo sbroglio di una pista, si collega un via in cima alla pista che si sta sbrogliando. Premendo V ulteriormente si disabilita l’inserimento del via. Facendo clic in qualsiasi punto del circuito stampato, si piazza il via e lo sbroglio continua.

Premendo / o selezionando commuta postura pista dal menu contestuale commuta la direzione del segmento di pista iniziale tra diritto e diagonale.

Come valore predefinito, lo sbroglio si aggancia automaticamente al centro o agli assi degli elementi. Questo magnetismo può essere disabilitato tenendo premuto il tasto Maiusc durante lo sbroglio o la selezione degli elementi.

Impostazione larghezze piste e dimensioni via

Ci sono diversi metodi per pre-selezionare la larghezza pista/dimensione via o per cambiarle durante lo sbroglio:

  • Usare le scorciatoie da tastiera standard.

  • Premere W o selezionare Dimensione pista personalizzata dal menu contestuale per battere un valore personalizzato di spessore pista/dimensione via.

  • Selezionare una larghezza predefinita dal sotto-menu Seleziona larghezza pista del menu contestuale.

  • Selezionare Usa la larghezza iniziale pista nel menu Seleziona larghezza pista per prelevare la larghezza dall’elemento iniziale (o le piste già connesse ad esso).

Trascinamento

Lo sbrogliatore può trascinare segmenti di pista, angoli e via. Per trascinare un elemento, fare clic su di esso con il tasto Ctrl premuto, posizionare il puntatore del mouse sopra di esso e premere il G o selezionare Trascina pista/via dal menu contestuale. Concludere trascinando e facendo clic nuovamente o interrompere premendo il tasto Esc.

Opzioni

Il comportamento dello sbrogliatore può essere configurato premento il tasto E o selezionando Opzioni di sbroglio dal menu contestuale mentre si sta nella modalità Pista. Si aprirà una finestra come questa riportata in basso:

Le opzioni sono:

Router options window screenshot
  • Modo - seleziona come lo sbroglio gestisce la violazione delle regole di progettazione (DRC) (spingendo, girando attorno, ecc.)

  • Spingi via - se disabilitato, i via vengono trattati come oggetti inamovibili e circondati anziché spostati.

  • Salta sopra gli ostacoli - se abilitata, lo sbrogliatore prova a spostare le piste collidenti dietro gli ostacoli pieni (come le piazzole) invece di "riflettere" indietro la collisione

  • Elimina piste ridondanti - elimina gli anelli durante lo sbroglio (cioè se la nuova pista garantisce la stessa connettività di una già esistente, la vecchia pista viene rimossa). La rimozione degli anelli funziona localmente (solo tra l’inizio e la fine della pista in fase di sbroglio).

  • Restringimento automatico - se abilitata, lo sbrogliatore prova a connettere piazzole/via in modo pulito, evitando angoli acuti e piste di connessione seghettate.

  • Arrotonda segmenti seghettati - se abilitata, lo sbrogliatore cerca di fondere assieme diversi segmenti seghettati in uno singolo e dritto (modalità trascinamento).

  • Permetti violazioni DRC (solo modalità evidenzia collisioni) - permette di stendere una pista anche se sta violando le regole di progettazione.

  • Sforzo di ottimizzazione - definisce quanto tempo lo sbroglio dovrà impiegare nell’ottimizzazione della disposizione/spostamento di piste. Un valore maggiore significa uno sbroglio più pulito (ma più lento), mentre valori più bassi portano a sbrogli più veloci ma con tracce più seghettate.

Creazione di zone in rame

Le zone rame sono definite da un contorno (poligono chiuso), e possono includere fori (poligoni chiusi dentro il contorno). Una zone può essere disegnata su uno strato rame o in alternativa su uno strato tecnico.

Creazione zone su strati rame

Le connessioni piazzola (e pista) verso aree rame piene vengono controllate dal motore di controllo regole elettriche. Una zona deve essere piena (non basta solo crearla) per essere connessa a delle piazzole. Pcbnew attualmente usa segmenti di pista o poligoni per riempire le aree rame.

Ogni opzione ha i suoi vantaggi e svantaggi; il principale svantaggio consiste nel tempo di ridisegno dello schermo che aumenta sensibilmente sulle macchine lente. Il risultato finale è comunque lo stesso.

Per risparmiare tempo di elaborazione, lo riempimento delle zone non viene rifatto ad ogni cambiamento, ma solo:

  • Se viene eseguito un comando di riempimento area.

  • Quando viene effettuato un controllo regole elettriche.

Le zone rame devono essere riempite o ri-riempite dopo avere effettuati dei cambiamenti nelle piste o nelle piazzole. Le zone rame (normalmente i piani di massa e di alimentazione) sono di solito connessi ad un collegamento (net).

Per creare una zona rame si deve:

  • Selezionare i parametri (nome collegamento, strato…​). Abilitare lo strato ed evidenziare il collegamento non è necessario ma è buona pratica.

  • Creare il limite della zona (altrimenti, la scheda intera viene riempita).

  • Riempire la zona.

Pcbnew prova a riempire tutte le zone in un colpo, e normalmente, non ci saranno blocchi di rame sconnessi. Può succedere che delle aree rimangano non riempite. Le zone che non hanno collegamenti non vengono pulite e possono avere delle aree isolate.

Creazione di una zona

Creazione dei limiti di una zona

Usare lo strumento add zone. Lo strato attivo deve essere uno strato rame. Facendo clic per iniziare a delineare la zona, la seguente finestra di dialogo verrà aperta.

Pcbnew zone properties dialog

Si puo specificare tutti i parametri per questa zona:

  • Collegamento

  • Strato

  • Opzioni riempimenti

  • Opzioni piazzole

  • Livello priorità

Disegnare il bordo della zona su questo strato. Questo bordo è un poligono, creato facendo clic su ogni angolo. Un doppio clic finirà e chiuderà il poligono. Se il punto di inizio e il punto di fine non sono alle stesse coordinate, Pcbnew aggiungerà un segmento dal punto finale a quello iniziale.

  • Il controllo regole elettriche è attivo durante la creazione dei bordi delle zone.

  • Uno spigolo che crea un errore DRC non viene accettato da Pcbnew.

Nell’immagine seguente si può vedere un esempio di bordo zona (il poligono tratteggiato con linea sottile):

Pcbnew zone limit example

Livello priorità

Alle volte una piccola zona deve essere creata all’interno di una più grande.

Ciò è possibile se la piccola zona ha un più alto livello di priorità di quella più grande.

Impostazioni livello:

Pcbnew zone priority level setting

Ecco un esempio:

Pcbnew zone priority example

Dopo lo riempimento:

Pcbnew zone priority example after filling

Riempimento della zona

Durante lo riempimento di una zona, Pcbnew rimuove tutte le isole di rame non connesse. Per accedere al comando di riempimento zone, fare clic desto sulla zona bordo.

Pcbnew zone context menu

Attivare il comando ``Riempi zona''. Di seguito il risultato del riempimento con il punto di inizio dentro il poligono:

Pcbnew zone filling result

Il poligono è il bordo dell’area di riempimento. Si può osservare un’area non riempita dentro la zona, perché quest’area non è accessibile:

  • Una pista crea un confine, e

  • Non c’è punto di inizio per riempire quest’area.

Si possono usare molti poligoni per creare aree di ritaglio. Qui si può osservare un esempio:
Pcbnew zone filled with cutout

Opzioni riempimenti

Pcbnew zone filling options

Quando si riempie un’area, si deve scegliere:

  • La modalità di riempimento.

  • L’isolamento e lo spessore minimo del rame.

  • Come le piazzole sono disegnate dentro la zona (o connesse alla zona).

  • I parametri delle piazzole termiche.

Modalità di riempimento

Le zone possono essere riempite usando poligoni o segmenti. Il risultato è lo stesso. Se si hanno problemi con la modalità poligoni (rifresco dello schermo lento) usare i segmenti.

Isolamento e spessore minimo del rame

Una buona scelta per l’isolamento è una griglia un po' più grande della griglia di sbroglio. Il valore di spessore minimo di rame assicura che non ci saranno aree di rame troppo piccole.

se questo valore è troppo ampio, forme piccole come i raggi dei supporti termici non possono essere disegnati.

Opzioni piazzole

Le piazzole del collegamento possono essere incluse o escluse dalla zona, o connesse tramite supporti termici.

  • Se incluse, saldare e dissaldare può essere molto difficile a causa della grande massa termica della grande area in rame.

Pcbnew zone include pads
  • Se escluse, la connessione alla zona non sarà molto buona.

    • The zone can be filled only if tracks exists to connect zone areas.

    • Pads must be connected by tracks.

Pcbnew zone exclude pads
  • Un supporto termico è un buon compromesso.

    • Pad is connected by 4 track segments.

    • The segment width is the current value used for the track width.

Pcbnew zone thermal relief

Parametri dei supporti termici

Pcbnew thermal relief settings

Si può impostare due parametri per i supporti termici:

Pcbnew thermal relief parameters

Scelta dei parametri

Il valore di larghezza del rame per i supporti termici deve essere maggiore del valore di larghezza minimo per la zona di rame. Altrimenti, non possono essere disegnati.

Inoltre, un valore troppo grande per questo parametro o per la dimensione dell’antipiazzola non permette di creare un supporto termico per piazzole piccole (come le dimensioni di piazzola usate per i componenti SMD).

Aggiunta di un’area di ritaglio dentro una zona

La zona deve già esistere. Per aggiungere un’area di ritaglio (un’area non riempita dentro la zona):

  • Fare clic-destro sul profilo esistente.

  • Selezionare «Aggiungi area di ritaglio».

Pcbnew add cutout menu item
  • Creazione di un nuovo contorno.

Pcbnew zone unfilled cutout outline

Modifica dei contorni

Un contorno può essere modificato da:

  • Spostamento di un angolo o di uno spigolo.

  • Cancellazione o aggiunta di un angolo.

  • Aggiunta di un’area simile o di un’area di ritaglio.

Se i poligoni si sovrappongono, verranno combinati.

Pcbnew zone modification menu items

Per fare ciò, fare clic-destro su un angolo o su un bordo e poi selezionare il comando appropriato.

Ecco un angolo (da un ritaglio) che è stato spostato:

Pcbnew zone corner move during

Ecco il risultato finale:

Pcbnew zone corner move after

I poligoni sono combinati.

Aggiungere una zona simile

Aggiungere una zona simile:

Pcbnew zone add similar during

Risultato finale:

Pcbnew zone add similar after

Modifica dei parametri di zona

Quando si fa clic-destro su un contorno, e si usa ``Modifica parametri di zona'' si aprirà la finestra di dialogo dei parametri della zona con la quale si potrà inserire i parametri iniziali. Se la zona è già riempita, sarà necessario ri-riempirla.

Riempimento finale della zona

Quando la scheda è finita, è necessario riempire o ri-riempire tutte le zone. Per fare ciò:

  • Attivare lo strumento zone tramite il pulsante add zone.

  • Fare clic-destro per mostrare il menu a scomparsa.

  • Usare Riempi o Ri-riempi tutte le zone: Pcbnew fill refill all zones

Il calcolo può impiegare del tempo se la griglia di riempimento è piccola.

Cambiare i nomi delle zone

Dopo la modifica dello schema elettrico, è possibile cambiare il nome di ogni collegamento. Per esempio VCC può essere cambiato in +5V.

Quando un controllo regole elettriche globale viene eseguito, Pcbnew verifica se esiste il nome collegamento della zona, e mostra un errore ne non esistono.

Modificando manualmente i parametri di zona, sarà necessario cambiare il vecchio nome nel nuovo.

Creazione di zone sugli strati tecnici

Creazione dei limiti di zona

Ciò viene effettuato usando il pulsante add zone. Lo strato attivo deve essere uno strato tecnico.

Facendo clic per iniziare il contorno della zona, si apre questa finestra di dialogo:

Pcbnew technical layer zone dialog

Selezionare lo strato tecnico dove piazzare la zona e disegnare i contorni della zona come spiegato in precedenza per gli strati in rame.

  • Per modificare i contorni usare lo stesso metodo adottato con le zone in rame.

  • Se necessario, si possono aggiungere delle aree di ritaglio.

Creazione di un’area proibita

Selezionare lo strumento add keepout area

Lo strato attivo dovrebbe essere uno strato rame.

Dopo aver fatto clic sul punto di partenza di una nuova area ritaglio, si apre la finestra di dialogo:

Pcbnew keepout area properties

Si possono selezionare gli elementi non permessi:

  • Piste.

  • Via.

  • Riempimenti in rame.

Quando una pista o un via si trova dentro un’area proibita che non lo permette, viene segnalato un errore DRC.

Per le zone in rame, l’area dentro un’area proibita senza diffusione di rame non verrà riempita. Un’area proibita è come una zona, perciò la modifica dei suoi bordi è analoga alla modifica di una zone in rame.

File per la fabbricazione del circuito stampato

Vediamo ora quali sono i passi per la creazione dei file necessari per la produzione del circuito stampato.

Tutti i file generati da KiCad vengono piazzati nella cartella di lavoro che è la stessa cartella che contiene i file xxxx.brd per il circuito stampato.

Preparazioni finali

La generazione dei file necessari per la produzione del circuito stampato includono i seguenti passi preliminari.

  • Marcare ogni strato (per es. 'top o front' e 'bottom o back') con il nome del progetto piazzando il testo appropriato su ogni strato.

  • Tutti i testi sugli strati rame (alle volte chiamati anche 'solder' o 'bottom') devono essere resi speculari.

  • Creare tutti gli strati di massa, spostando le piste come richiesto in modo da renderli contigui.

  • Piazzare i crocini di allineamento e possibilmente le dimensioni del bordo della scheda (questi sono piazzati generalmente su uno degli strati di uso generale).

Ecco un esempio che mostra tutti questi elementi, eccetto i piani di massa, omessi per migliorarne la visibilità:

Pcbnew final preparation example board

È stata inclusa anche una chiave di colore per i 4 strati in rame: Pcbnew layer colour key

Test DRC finale

Prima di generare i file d’uscita, un test generale di controllo delle regole di progettazione (DRC) è fortemente consigliato.

Le zone vengono riempite o ri-riempite quando si fa partire una DRC. Permere il pulsante drc per avviare la seguente finestra di dialogo DRC:

Pcbnew DRC dialog

Regolare i parametri e premere il pulsante ``Avvia controllo regole di progettazione''.

Questo controllo finale eviterà spiacevoli sorprese.

Impostazione delle coordinate di origine

Per impostare le coordinate di origine per i file del ftoplotter e per le forature, bisogna piazzare gli assi ausiliari su questa origine. Attivare l’icona pcb offset. Spostare gli assi ausiliari premendo il tasto sinistro del mouse sulla posizione scelta.

Pcbnew setting pcb origin

Generazione dei file per i fotoplotter

Quest’operazione viene effettuata tramite la voce File/Traccia che invoca la seguente finestra di dialogo:

Pcbnew plot dialog

Solitamente, i file sono in formato GERBER. Tuttavia, è possibile produrre risultati anche nei formati HPGL che POSTSCRIPT. Quando viene selezionato il formato Postscript, appare questa finestra di dialogo:

Pcbnew plot postscript dialog

In questi formati, è possibile usare una regolazione fine della scala per compensare i problemi di accuratezza del plotter ed avere così una vera scala 1 per il risultato:

Pcbnew plot fine scale setting

Formato GERBER

Per ogni strato, Pcbnew genera un file separato seguendo lo standard GERBER 274X; questo è, come impostazione predefinita, nel formato 4.6 (ogni coordinata nel file è rappresentata da 10 digit, dei quali 4 sono prima del punto decimale e 6 dopo di esso), unità in pollici, e scala 1.

Di norma è necessario creare file per tutti gli strati in rame e, a seconda del circuito, per gli strati di serigrafia, maschera di saldatura e pasta adesiva. Questi file possono essere prodotti tutti assieme, selezionando le caselle di spunta appropriate.

Per esempio, per un circuito stampato a doppia faccia con serigrafia, maschera di saldatura e pasta adesiva (per i componenti SMD), si dovrebbero generare 8 file ('xxxx' rappresenta il nome del file .brd).

  • xxxx-F_Cu.gbr per il lato componenti.

  • xxxx-B_Cu.gbr per il lato rame.

  • xxxx-F_SilkS.gbr per la serigrafia del lato componenti.

  • xxxx-B_SilkS.gbr per la serigrafia del lato rame.

  • xxxx-F_Paste.gbr per la pasta adesiva del lato componenti.

  • xxxx-B_Paste.gbr per la pasta adesiva del lato rame.

  • xxxx-F_Mask.gbr per la maschera di saldatura del lato componenti.

  • xxxx-B_Mask.gbr per la maschera di saldatura del lato rame.

Formato dei file GERBER:

Il formato usato da Pcbnew è il formato RS274X 4.6, sistema britannico imperiale, senza zeri iniziali, assoluto. Queste sono impostazioni molto comuni.

Formato POSTSCRIPT

L’estensione standard per i file in uscita è .ps nel caso di risultati postscript. Per quanto riguarda invece i risultati HPGL, la tracciatura può essere impostata a fattori di scala selezionati dall’utente e può essere speculare. Se l’opzione Orig = Centro è attiva, l’origine delle coordinate della tabella di tracciatura si assume sia nel centro del disegno.

Se l’opzione squadratura è attiva, viene tracciato anche il riquadro del foglio di lavoro.

Opzioni di tracciatura

Formato Gerber:

Pcbnew plot options gerber

Altri formati:

Pcbnew plot options other formats

Opzioni specifiche del formato Gerber:

Usare le estensioni del nomefile Protel

Usa .gbl .gtl .gbs .gts .gbp .gtp .gbo .gto invece di .gbr per le estensioni dei nomi dei file.

Includi estensione attributi

Il risultato dell’estensione degli attributi finisce su file.

Sottrai maschera di saldatura dalla serigrafia

Rimuove tutte le serigrafie dalle aree dedicate alla pastasalda.

Altri formati

L’estensione standard dipende dal tipo di file in uscita.

Alcune opzioni non sono disponibili in altri formati.

La tracciatura può essere effettuata a scala personalizzata e può essere speculare.

L’elenco opzioni della stampa forature permettere di scegliere tra piazzole piene, forate al diametro corretto o forate con un foro più piccolo (per guidare la foratura manuale).

Se l’opzione squadratura è attiva, viene tracciato anche il riquadro del foglio di lavoro.

Le impostazioni globali di distanza per la maschera di saldatura e la maschera della pastasalda

I valori di distanza della maschera possono essere impostati globalmente per gli strati della maschera di saldatura e della pastasalda. Queste distanze possono essere impostate ai seguenti livelli:

  • A livello delle piazzole.

  • A livello delle impronte.

  • Globalmente.

E Pcbnew usa un ordine di priorità.

  • Valori piazzola. Se assenti:

  • Valori impronta. Se assenti:

  • Valori globali.

Accesso

Il menu opzioni per questa funzione è disponibile tramite il menu Dimensioni:

Pcbnew pad mask clearance menu item

La finestra di dialogo è la seguente:

Pcbnew pad mask settings dialog

Distanza maschera di saldatura

Un valore di circa 0.2 mm in genere va bene. Questo valore è positivo perché la maschera è di solito più grande della piazzola.

È possibile impostare, per la mascheda di saldatura, un valore minimo di larghezza tra due piazzole.

Se il valore corrente è più piccolo del valore minimo, le due forme della maschera di saldatura verranno fuse assieme.

Distanza della pastasalda

La distanza finale è la somma della distanza della pasta salda e di una percentuale della dimensione della piazzola.

Questo valore è negativo perché la maschera è in genere più piccola della piazzola.

Generazione dei file delle forature

La creazione di un file delle forature xxxx.drl secondo lo standard EXCELLON è sempre necessario.

È possibile anche produrre opzionalmente sia un rapporto forature che una mappa delle forature.

  • La mappa delle forature può essere tracciata usando diversi formati.

  • Il rapporto forature è un file in testo semplice.

La generazione di questi file viene controllata tramite:

  • Il pulsante ``Genera file di foratura'', o

  • File/Genera per fabbricazione/File forature.

La finestra di dialogo delle forature sarà la seguente:

Pcbnew drill file dialog

Per l’impostazione delle coordinate di origine viene usata la seguente finestra di dialogo:

Pcbnew drill origin setting
  • Assolute: viene usato un sistema di coordinate assoluto.

  • Asse ausiliario: le coordinate sono relative all’asse ausiliario, usare l’icona (barra strumenti a destra) per impostarlo.

Generazione della documentazione cablaggio

Per produrre i file di documentazione di cablaggio, è possibile tracciare gli strati della serigrafia degli strati rame e componenti. In genere, sono sufficienti le marcature del solo lato componenti della serigrafia per assemblare un circuito stampato. Se viene usato il lato rame della serigrafia, il testo contenuto dovrebbe essere reso speculare in modo da renderlo leggibile.

Generazione dei file per l’inserzione automatica dei componenti

Questa opzione è accessibile tramite la voce di menu file Genera per fabbricazione/File posizionamento impronte. Comunque, nessun file verrà generato a meno che almeno una impronta non abbia l’attributo Normal+Insert attivato (consultare la sezione Modifica impronte). Uno o due file verranno prodotti, a seconda se sono presenti componenti inseribili su una o entrambe le facce del circuito stampato. Una finestra di dialogo mostrerà i nomi dei file creati.

Opzioni di tracciamento avanzate

Le opzioni descritte sotto (parte della finestra di dialogo File/Traccia) permettono un controllo fine del processo di tracciamento. Sono particolarmente utili durante la stampa delle marcature sulla serigrafia per la documentazione del cablaggio.

Pcbnew advanced tracing options

Le opzioni disponibili sono:

Traccia squadratura su tutti gli strati

Disegna la disposizione di pagina (layout) e il riquadro iscrizioni (cartiglio) su tutti gli strati.

Traccia piazzole sulla serigrafia

Abilita il disegno dei profili delle piazzole sulgli strati serigrafici (se le piazzole sono state già impostate per apparire su questi strati). Se disabilitata impedisce la stampa di qualsiasi piazzola.

Traccia i valori dell’impronta

Abilita il disegno del testo VALORE sulla serigrafia.

Traccia i riferimenti dell’impronta

Abilita il disegno del testo RIFERIMENTO sulla serigrafia.

Forza la tracciatura di valori e/o riferimenti invisibili

Forza la stampa dei campi (riferimento, valore) dichiarati come invisibili. In combinazione con Traccia i valori dell’impronta'' e Traccia i riferimenti dell’impronta'', questa opzione abilita la produzione di documenti guida per il cablaggio e la riparazione. Queste opzioni si sono rivelate necessarie per i circuiti utilizzanti componenti troppo piccoli (SMD) per permettere guide di piazzamento leggibili di due campi di testo separati.

Non coprire i via (tent)

Cancella la maschera sopra i via (lasciandoli scoperti).

Escludere il contenuto dello strato ingombro scheda dagli altri strati

Specifica del formato GERBER. Non disegnare gli elementi grafici sullo strato del bordo.

Usare le estensioni dei nomifile Protel

Specifica del formato GERBER. Durante la creazione dei file, usa specifiche estensioni per ogni file. Se disabilitata l’estensione del file Gerber sarà .gbr.

Editor impronte - Gestione librerie

Panoramica dell’editor delle impronte

Pcbnew può mantenere simultaneamente diverse librerie. Perciò, quando un’impronta viene caricata, tutte le librerie che appaiono nell’elenco librerie vengono scansionate fino al ritrovamento della prima istanza di impronta. Di seguito, si noti che la libreria attiva è la libreria selezionata all’interno dell’editor delle impronte, il programma verrà descritto

L’editor impronte consente la creazione e la modifica di impronte:

  • Aggiunta e rimozione piazzole.

  • Il cambiamento delle proprietà delle piazzole (forma, strato) per piazzole individuali o globalmente per tutte le piazzole di un’impronta.

  • Modifica di elementi grafici (linee, testo).

  • Modifica dei campi di informazione (valore, riferimento, ecc.).

  • Modifica della documentazione associata (descrizione, parole chiave).

L’editor impronte consente la manutenzione della libreria attiva permettendo di:

  • Elencare le impronte nella liberia attiva.

  • Cancellare una impronta dalla libreria attiva.

  • Salvare una impronta nella libreria attiva.

  • Salvare tutte le impronte contenute in un circuito stampato.

È possibile anche creare nuove librerie.

L’estensione della libreria è .mod.

Accedere all’editor delle impronte

Si può accedere all’editor impronte in due modi differenti:

  • Direttamente, tramite l’icona module editor nella barra strumentu principale di Pcbnew.

  • Nella finestra di dialogo di modifica dell’impronta attiva (vedere figura in basso: accesso ottenuto tramite il menu contestuale), c’è il pulsante Modifica con l’editor delle impronte.

Pcbnew module properties

In questo caso, l’impronta attiva della scheda verrà caricata automaticamente nell’editor delle impronte, abilitandone la modifica immediata o l’archiviazione.

Interfaccia utente dell’editor delle impronte

Chiamando l’editor delle impronte apparirà la seguente finestra:

Modedit main window

Barra strumenti principale nell’editor delle impronte

Modedit top toolbar

Da questa barra strumenti, sono disponibili le seguenti funzioni:

library

Seleziona la libreria attiva.

save library

Salva l’impronta corrente nella libreria attiva, e la scrive su disco.

new library

Crea una nuova libreria e vi salva l’impronta corrente.

modview icon

Apre il visualizzatore impronte.

delete

Accede alla finestra di dialogo di cancellazione impronta dalla libreria attiva.

new footprint

Crea una nuova impronta.

module wizard

Crea un’impronta con una procedura guidata.

load module lib

Carica un’impronta dalla libreria attiva.

load module board

Carica (importa) un’impronta dal circuito stampato.

update module board

Esporta l’impronta corrente sul circuito stampato se l’impronta era stata in precedenza importata dalla scheda corrente. Rimpiazzerà la corrispondente impronta sulla scheda (cioè, rispettando posizione e orientamento).

insert module board

Esporta l’impronta corrente sul circuito stampato. Verrà copiata sul circuito stampato alla posizione 0.

import module

Importa un’impronta da un file creato dal comando Esporta.

export module

Esporta un’impronta. Questo comando è essenzialmente identico a quello per creare una libreria, l’unica differenza è che crea una libreria nella cartella utente, mentre crea una libreria nella cartella delle librerie standard (solitamente kicad/modules).

undo redo

Annulla e Ripeti.

module options

Invoca la finestra di dialogo delle proprietà dell’impronta.

print button

Chiama la finestra di dialogo della stampa.

zoom in zoom out zoom redraw zoom fit in page

Comandi standard dello zoom.

options pad

Chiama l’editor della piazzola.

module check

Esegue un controllo di correttezza dell’impronta.

Creazione di una nuova libreria

La creazione di una nuova libreria viene fatta tramite il pulsante new library, e il file viene creato come impostazione predefinita nella cartella delle librerie o tramite il pulsante export module, nel qual caso il file viene creato come impostazione predefinita nella propria cartella di lavoro.

Una finestra di dialogo di selezione file permette di specificare il nome della libreria e di cambiarne la sua cartella. In entrambi i casi, la libreria conterrà l’impronta da modificare.

Se dovesse esistere una vecchia libreria con lo stesso nome, questa verrà sovrascritta senza avvertimenti.

Salvataggio di una impronta nella libreria attiva

L’azione di salvataggio di una impronta (modificando in tal modo il file della libreria attiva) viene eseguita usando questo pulsante save library. Se una impronta dello stesso nome esiste già, questa verrà rimpiazzata. Dato che si dipenderà dall’accuratezza delle librerie di impronte, è importante ricontrollare l’impronta prima di salvare.

È raccomandata la modifica dei campi di riferimento o del valore al nome dell’impronta come identificata nella libreria.

Trasferimento di una impronta da una libreria ad un’altra

  • Selezionare la libreria sorgente tramite il pulsante library.

  • Caricare l’impronta tramite il pulsante load module lib.

  • Selezionare la libreria di destinazione tramite il pulsante library.

  • Salvare l’impronta tramite il pulsante save library.

Si puo voler anche eliminare l’impronta sorgente.

  • Riselezionare la libreria sorgente con library.

  • Eliminare la vecchia impronta tramite il pulsante delete.

Salvataggio di tutte le impronte sulla scheda nella libreria attiva

È possibile copiare tutte le impronte di un dato progetto di scheda sulla libreria attiva. Queste impronte manterranno i loro nomi correnti nella libreria. Questo comando ha due usi:

  • Per creare un archivio o una libreria completa con le impronte di una scheda, nel caso che si perda una libreria.

  • Ancora più importante, per facilitare la manutenzione della libreria consentendo la produzione di documentazione per la libreria, come sotto.

Documentazione per le impronte di libreria

È caldamente raccomandato di documentare le impronte che si creano, in modo da abilitarne la ricerca rapida e senza errori.

Per esempio, chi è in grado di ricordare tutte le possibili varianti della piedinatura di un contenitore TO92? La finestra di dialogo delle proprietà dell’impronta offre una semplice soluzione a questo problema.

Modedit module properties

Questa finestra di dialogo accetta:

  • Una riga di descrizione/commento.

  • Più parole chiave.

La descrizione viene visualizzata con l’elenco componenti in Cvpcb e, in Pcbnew, viene usata dalla finestra di dialogo di selezione delle impronte.

Le parole chiave permettono di restringere le ricerche a impronte a cui queste parole chiave corrispondono.

Quando si carica direttamente una impronta (l’icona module Pcbnew della barra strumenti a destra), possono essere inserite delle parole chiave nella finestra di dialogo. Quindi, inserendo il testo =CONN si provocherà la visualizzazione dell’elenco delle impronte il cui elenco parole chiave contiene la parola CONN.

Librerie di documentazione - pratica raccomandata

Si raccomanda di creare le librerie indirettamente, creando uno o più schede circuiti ausiliarie che costituiranno la sorgente (di parte) della libreria, come segue: creare una scheda in formato A4, in modo da essere in grado di stamparla facilmente in scala (1:1).

Creare le impronte che la libreria conterrà in questo circuito stampato. La libreria stessa verrà creata con il comando File/Archivia impronte/Crea libreria e archivia impronte.

Pcbnew archive footprints menu

La "vera sorgente" della libreria sarà perciò la scheda di circuito stampato ausiliaria, e sarà su questa scheda che ogni successiva alterazione di impronte verrà fatta. Naturalmente, diverse schede possono venir salvate nella stessa libreria.

È generalmente una buona idea creare diverse librerie per diversi tipi di componenti (connettori, componenti discreti,…​), dato che Pcbnew è in grado di effetturare ricerche su più librerie durante il caricamento delle impronte.

Ecco un esempio di tale sorgente di libreria:

Pcbnew example library

Questa tecnica ha diversi vantaggi:

  • Il circuito può essere stampato in scala e servire come documentazione per la libreria senza alcuno sforzo.

  • Futuri cambiamenti di Pcbnew possono richiedere la rigenerazione delle librerie, cosa che può essere effettuata molto velocemente se sono stati usati sorgenti di circuito stampato di questo tipo. Tutto ciò è importante, dato che i formati dei file di circuito stampato vengono garantiti rimanere compatibili nei futuri sviluppi, ma ciò non è detto avvenga anche per quanto riguarda il formato dei file delle librerie.

Gestione librerie di impronte

L’elenco delle librerie di impronte in Pcbnew può essere modificato usando il manager delle librerie di impronte. Ciò permette di aggiungere e rimuovere librerie di impronte a mano, e permette anche di invocare l’assistente di librerie di impronte premendo il pulsante "Accoda con l’assistente".

L’assistente librerie di impronte può essere invocato anche tramite il menu delle preferenze, e può automaticamente aggiungere una libreria (rilevandone il tipo) da un file o da un URL Github. L’URL delle librerie ufficiali è: https://github.com/KiCad .

Ulteriori dettagli sulle tabelle di librerie di impronte, sul manager e sull’assistente relativo, sono reperibili sul manuale di riferimento del programma CvPcb nella sezione Tabelle librerie impronte.

Gestione librerie forme 3D

Le librerie di forme 3D possono essere scaricate con l’apposito assistente per le librerie di forme 3D. Esso può essere invocato dal menu delle preferenze → Scaricatore librerie di forme 3D.

Editor delle impronte - Creazione e modifica delle impronte

Panoramica dell’editor delle impronte

L’editor delle impronte viene usato per la modifica e per la creazione di impronte di componenti per il circuito stampato. Ciò include:

  • Aggiunta e rimozione piazzole.

  • Cambio delle proprietà delle piazzole (forma, strato), per piazzole individuali o per tutte le piazzole in un’impronta.

  • Aggiunta e modifica di elementi grafici (contorni, testo).

  • Modifica dei campi (valore, riferimento, ecc.).

  • Modifica della documentazione associata (descrizione, parole chiave).

Elementi impronte

Un’impronta è la rappresentazione fisica (impronta) della parte da inserire nel circuito stampato e deve essere collegata ai corrisponendi componenti presenti nello schema elettrico. Ogni impronta include tre elementi diversi:

  • Le piazzole.

  • Contorni grafici e testo.

  • Campi.

Inoltre, altri parametri dovranno essere definiti correttamente se si desidera usare la funzione di auto piazzamento. Stesso dicasi per la generazione di file di auto inserimento.

Piazzole

Due proprietà delle piazzole sono importanti:

  • Geometria (forma, strati, fori).

  • Il numero piazzola può essere lungo fino a quattro caratteri alfanumerici. I seguenti sono quindi tutti numeri piazzola validi: 1, 45 e 9999, ma anche AA56 e ANOD. Il numero piazzola deve essere identico al numero piedino corrispondente nello schema elettrico, dato che definisce la corrispondenza piedino - numero piazzola che Pcbnew usa per metterli in collegamento.

Contorni

I contorni grafici vengono usati per disegnare la forma fisica dell’impronta. Sono disponibili diversi tipi di contorni: linee, cerchi, archi e testo. I contorni non hanno significato elettrico, sono semplicemente elementi grafici di aiuto.

Campi

Questi sono elementi di testo associati ad una impronta. Due sono obbligatori e sempre presenti: il campo riferimento e il campo valore. Questi vengono automaticamente letti ed aggiornati da Pcbnew quando viene letta una netlist durante il caricamento delle impronte nella scheda. Il riferimento viene rimpiazzato dall’appropriato riferimento dello schema elettrico (U1, IC3, ecc.). Il valore viene anch’esso rimpiazzato dall’appropriato valore della parte corrispondente nello schema elettrico (47K, 74LS02, ecc.). Altri campi possono venire aggiunti ma si comporteranno come testo grafico.

Avvio dell’editor delle impronte e selezione di una impronta da modificare

L’editor delle impronte può essere avviato in due modi:

  • Direttamente tramite l’icona module editor dalla barra strumenti principale di Pcbnew. Questo permette la creazione o la modifica di un’impronta nella libreria.

  • Facendo doppio clic su un’impronta verrà lanciato il menu Proprietà impronta'', che offre un pulsante Editor impronte''. Se si esegue quest’azione, l’impronta presente nella scheda verrà caricata nell’editor, per la modifica o per il suo salvataggio.

Barre strumenti editor impronte

La chiamata dell’editor delle impronte porterà in primo piano una finestra simile alla seguente:

Modedit main window

Barra strumenti modifica (lato destro)

Questa barra contiene strumenti per:

  • Posizionare piazzole.

  • Aggiungere elementi grafici (contorni, testo).

  • Posizionare ancoraggi.

  • Eliminare elementi.

Le funzioni specifiche sono le seguenti:

cursor

Nessuno strumento.

pad

Aggiungi piazzole.

add polygon

Disegna segmenti di linea e poligoni.

add circle

Disegna cerchi.

add arc

Disegna archi circolari.

add text

Aggiungi testo grafico (i campi non sono gestiti da questo strumento).

anchor

Posiziona il punto di ancoraggio dell’impronta.

delete

Cancella elementi.

grid select axis

Origine della griglia (spostamento griglia). Utile per il posizionamento delle piazzole. L’origine della griglia può essere inserita su una data posizione (la prima piazzola da piazzare), ed in seguito la dimensione della griglia può essere impostata al "passo integrato". In questo modo il piazzamento di piazzole viene molto facilitato.

Mostra la barra strumenti (sulla sinistra)

Questi strumenti gestiscono le opzioni di visualizzazione nell’editor delle impronte:

grid

Mostra la griglia.

polar coord

Mostra le coordinate polari.

unit mm unit inch

Unità in uso in mm o pollici

cursor shape

Commuta forma del puntatore.

pad sketch

Visualizza piazzole in modalità contorno.

text sketch

Visualizza testo in modalità contorno.

show mod edge

Visualizza bordi in modalità contorno.

contrast mode

Visualizza con contrasto aumentato.

Il pulsante destro del mouse richiama dei menu che dipendono dall’elemento sottostante il puntatore.

Il menu contestuale per la modifica dei parametri dell’impronta:

Modedit context menu module parameters

Il menu contestuale per la modifica delle piazzole:

Modedit context menu pads

Il menu contestuale per la modifica degli elementi grafici:

Modedit context menu graphics

La finestra di dialogo delle proprietà dell’impronta

Questa finestra di dialogo può essere avviata quando il puntatore è sopra un’impronta facendo clic con il tasto destro del mouse e selezionando ``Modifica impronta''.

Modedit module properties dialog

Questa finestra di dialogo può essere usata per definire i principali parametri dell’impronta.

Creazione di una nuova impronta

Una nuova impronta può essere creata tramite il pulsante new footprint. Il nome della nuova impronta verrà richiesto. Questo sarà il nome con il quale l’impronta verrà identificata nella libreria.

Questo testo serve anche come valore dell’impronta, il quale viene sostanzialmente rimpiazzato dal valore reale (100 µF_16 V, 100 Ω_0.5 W, …​).

La nuova impronta richiederà:

  • Contorni (e forse del testo grafico).

  • Piazzole.

  • Un valore (testo nascosto che viene rimpiazzato dal vero valore se usato).

Un metodo alternativo:

Se una nuova impronta è simile ad una esistente in una libreria o su una scheda, un metodo alternativo e più veloce per creare una nuova impronta è il seguente:

  • Caricare l’impronta simile (load module lib, load module board o import module).

  • Modificare il campo "Nome impronta in libreria" in modo da generare un nuovo identificatore (nome).

  • Modificare e salvare la nuova impronta.

Aggiunta e modifica piazzole

Una volta creata l’impronta, si possono aggiungere le piazzole, cancellarle o modificarle. La modifica delle piazzole può essere locale, e riguardare solo la piazzola sottostante il puntatore, o globale, e coinvolgere tutte le piazzole dell’impronta.

Aggiunta piazzole

Selezionare l’icona pad dalla barra strumenti a destra. Le piazzolo possono essere aggiunte facendo clic sulla posizione desiderata con il pulsante sinistro del mouse. Le proprietà delle piazzole sono predefinite nel menu delle proprietà della piazzola.

Non dimentirare di inserire il numero della piazzola.

Impostazioni proprietà piazzole

Si può fare in tre modi diversi:

  • Selezionando l’icona options pad dalla barra strumenti orizzontale.

  • Facendo clic su una piazzola esistente e selezionando "Modifica piazzola". Poi, le impostazioni della piazzola, possono si possono modificare.

  • Facendo clic su una piazzola esistente e selezionando "Esporta impostazioni piazzola". In questo caso, le proprietà geometriche della piazzola selezionata diverranno le impostazioni piazzola predefinite.

Nei primi due casi, la seguente finestra di dialogo verrà mostrata:

Modedit pad properties dialog

Occorre prestare attenzione a definire correttamente gli strati a cui apparterrà la piazzola. In particolare, anche se i livelli di rame sono facili da definire, la gestione di strati non-rame (maschera di saldatura, piazzole di saldatura …​) è altrettanto importante per la fabbricazione del circuito e la documentazione.

Il selettore del tipo di piazzola provoca una selezione automatica di strati che generalmente è sufficiente.

Piazzole rettangolari

Per impronte SMD di tipo VQFP / PQFP che hanno piazzole rettangolari su tutti i quattro lati (sia orizzontali che verticali), si raccomanda di usare una sola forma (ad esempio, un rettangolo orizzontale) e posizionarla con diversi orientamenti (0 per orizzontale e 90 gradi per verticale). Il ridimensionamento globale di piazzole può quindi essere realizzato in un’unica operazione.

Ruota piazzole

Rotazioni di -90 o -180 sono richieste solo per le piazzole trapezoidali usate nelle impronte per microonde.

Piazzole passanti non metallizzate

Le piazzole possono essere definite come passanti non metallizzate (piazzole NPTH).

Queste piazzole devono essere definite su uno o su tutti gli strati rame (ovviamente, il foro esiste su tutti gli strati rame).

Questo requisito consente di definire parametri specifici di distanza (per esempio la distanza di una vite).

Quando la dimensione del foro di una piazzola è la stessa della dimensione della piazzola, per una piazzola circolare o ovale, questa piazzola NON viene tracciata sugli strati rame nei file GERBER.

Queste piazzole vengono usate a scopi meccanici, perciò non è consentito dare nomi a piazzole o a collegamenti. Una connessione ad una net non è possibile.

Piazzole non su strati rame

Sono piazzole particolari. Questa opzione può essere usata per creare riferimenti o maschere su strati tecnici.

Parametro spostamento

La piazzola 3 ha spostamento Y = 15 mils:

Modedit pad offset example
Parametro delta (piazzole trapezoidali)

La piazzola 1 ha il suo parametro Delta X = 10 mils

Modedit pad delta example

Impostazione distanza per gli strati di maschera di saldatura e di flussante

L’impostazione della distanza può essere effettuata a 3 livelli:

  • Livello globale.

  • Livello impronta.

  • Livello piazzola.

Pcbnew usa i seguenti per calcolare le distanze:

  • Impostazione piazzola. Se nullo,

  • Impostazione impronta. Se nullo,

  • Impostazioni globali.

Osservazioni

La forma della maschera di saldatura della piazzola è solitamente più grande della piazzola stessa. Perciò il valore della distanza è positivo. La forma della maschera del flussante è invece solitamente più piccola della piazzola stessa. Perciò il valore della distanza è negativo.

Parametri della maschera del flussante

Per la maschera del flussante ci sono due parametri:

  • Un valore fisso.

  • Una percentuale della dimensione della piazzola.

Il valore reale è la somma di questi due valori.

Impostazioni livello delle impronte:

Modedit footprint level pad settings

Impostazioni livello delle piazzole:

Modedit pad level pad settings

Proprietà campi

Ci sono almeno due campi: riferimento e valore.

I loro parametri (attributo, dimensione, larghezza) devono essere aggiornati. È possibile accedere alla finestra di dialogo dal menu a scomparsa facendo clic sul campo o tramite la finestra di dialogo delle proprietà dell’impronta:

Modedit footprint text properties

Piazzamento automatico di una impronta

Se l’utente desidera sfruttare pienamente le capacità delle funzioni di auto-piazzamento, è necessario definire l’orientamento consentito delle impronte (finestra di dialogo delle proprietà delle impronte).

Modedit module autoplace settings

Di solito, la rotazione di 180 gradi è permessa per le resistenze, per i condensatori non polarizzati ed altri componenti simmetrici.

Ad alcune impronte (come quelle dei piccoli transistor, per esempio) è permessa la rotazione di +/- 90 o 180 gradi. Come impostazione predefinita, una nuova impronta avrà i permessi di rotazione impostati a zero. Questo comportamento può essere impostato secondo la seguente regola:

Il valore 0 rende la rotazione impossibile, mentre 10 la permette completamente, e ogni valore intermedio rappresenta una limitazione nella rotazione. Per esempio, una resistenza può avere un permesso di 10 di rotare di 180 gradi (senza limitazioni) e un permesso di 5 per una rotazione di +/- 90 gradi (permesso ma sconsigliato).

Attributi

La finestra degli attributi è la seguente:

Modedit module attributes
  • Normale è l’attributo standard.

  • Normale+Inserisci indica che l’impronta deve apparire nei file di posizionamento automatico (per le macchine di posizionamento automatico). Questo attributo è utile soprattutto per i componenti a montaggio superficiale (SMD).

  • Virtuale indica che il componente è formato direttamente dal circuito stampato. Esempi sono in connettori (edge) fatti da un lato del C.S. o le induttanze create da una forma particolare sul C.S. (visibili alle volte nelle impronte per microonde).

Documentare le impronte in una libreria

È caldamente raccomandato di documentare le impronte appena create, in modo da facilitarne il recupero rapido ed accurato. Chi si ricorda le multiple varianti di una impronta TO92?

La finestra di dialogo delle proprietà dell’impronta offre un mezzo semplice e potente per la generazione della documentazione.

Modedit module properties documentation fields

Questo menu permette:

  • L’inserimento di una riga di commento (descrizione).

  • Più parole chiave.

La riga di commento viene mostrata con l’elenco componenti in CvPcb e nei meno di selezione impronte in Pcbnew. Le parole-chiave possono essere usate per restringere le ricerche alle parti che posseggono tali parole-chiave.

Perciò, durante l’uso del comando di caricamento dell’impronta (l’icona nella barra strumenti a destra in Pcbnew), è possibile battere il testo =TO220 nella finestra di dialogo per fare in modo che Pcbnew mostri l’elenco delle impronte che possiedono la parola-chiave TO220.

Visualizzazione tridimensionale

Una impronta può essere stata associata ad un file contenente una rappresentazione tridimensionale di essa. Per associare un tale file con un’impronta, selezionare la scheda delle ``Impostazioni 3D''. Il pannello delle opzioni è il seguente:

Modedit module 3d options

I dati delle informazioni che dovrebbero essere forniti:

  • Il file contenente la rappresentazione 3D (creata dal modellatore 3D Wings3D, in formato vrml, tramite il comando di esportazione in vrml).

  • Il percorso predefinito è kicad/modules/package3d. Nell’esempio, il nome file è discret/to_220horiz.wrl, usando il percorso predefinito.

  • Le scale x, y e z.

  • Lo scostamento rispetto al punto di ancoraggio dell’impronta (solitamente zero).

  • La rotazione iniziale in gradi su ogni asse (solitamente zero).

L’impostazione della scala permette:

  • Di usare lo stesso file 3D per impronte che hanno forme simili ma dimensioni diverse (resistenze, condensatori, componenti SMD…​)

  • Per contenitori piccoli (o molto grandi), si può sfruttare la griglia Wings3D impostando la scala 0.1 pollici in Pcbnew = 1 unità griglia in Wings3D.

Se tale file è stato specificato, è possibile visualizzare il componente in 3D.

Modedit footprint 3d preview

Il modello 3D apparirà automaticamente nella rappresentazione 3D del circuito stampato.

Salvataggio di una impronta nella libreria attiva

Il comando salva (le modifiche del file della libreria attiva) viene attivato dal pulsante save library.

Se esiste un’impronta con lo stesso nome (una versione più vecchia), essa verrà sovrascritta. Dato che è importante poter affidarsi alla libreria di impronte, vale la pena controllare più di una volta la correttezza dell’impronta prima di salvarla.

Prima di salvare si raccomanda anche di cambiare il riferimento o il valore dell’impronta in modo che corrisponda al nome della libreria di impronte.

Salvare un’impronta sulla scheda

Se l’impronta modificata proviene dalla scheda corrente, il pulsante update module board aggiornerà questa impronta sulla scheda.

Strumenti avanzati di modifica dei circuiti stampati

Ci sono alcuni strumenti di modifica più avanzati disponibili per Pcbnew e per l’editor delle impronte, che possono aiutare nella disposizione efficiente dei componenti sulla scheda.

Elementi duplicati

La duplicazione è un metodo per clonare un elemento e prelevarlo con lo stesso comando. È grosso modo simile a fare copia-incolla, ma permette di spargere'' i componenti sul C.S. in quanto permette di posizionare manualmente i componenti usando lo strumento di spostamento esatto'' (vedere sotto) più facilmente.

La duplicazione viene eseguita usando il comando da tastiera (che come impostazione predefinita è associato al Ctrl-D) o tramite la voce ``duplica'' nel menu contestuale. Nella modalità di visualizzazione tradizionale, queste appaioni come sotto, a seconda del tipo di elemento:

duplicate pad duplicate line duplicate text duplicate module duplicate target duplicate zone

Spostamento esatto

Lo strumento ``Sposta esattamente'' permette di spostare un elemento (o gruppo di elementi) di un certo ammontare, che può essere inserito in forma di coordinate cartesiane o polari e in qualsiasi unità di misura supportata. Ciò può risultare molto utile in quanto altrimenti sarebbe stato molto scomodo commutare su una griglia diversa, soprattutto se la spaziatura non corrisponde a nessuna impostazione di griglia predefinita.

Per usare questo strumento, selezionare gli elementi che si desidera spostare, e poi usare il comando da tastiera (predefinito Ctrl-M) o il menu contestuale. Ciò invocherà la finestra di dialogo del comando, che può essere aperta con il comando da tastiera, anche quando si sta spostando o duplicando elementi, cosa che torna utile quando si deve applicare uno spostamento ripetutamente a più componenti.

Spostamento esatto con vettore di spostamento inserito in coordinate cartesiane

Pcbnew move exact cartesian

Spostamento esatto con vettore di spostamento inserito in coordinate polari

Pcbnew move exact polar

La casella di selezione permette di passare dal sistema di coordinare cartesiane a quello polare. Il valore correntemente inserito viene convertito automaticamente da un sistema all’altro.

Poi si inserisce il vettore di spostamento desiderato. Si possono usare le unità di misura indicate dalle etichette (mm'' nelle immagini sotto) oppure è possibile specificare le unità di misura direttamente (per es. 1 in'' per un pollice, o ``2 rad'' per 2 radianti).

Premendo OK'' si applicherà la translazione alla selezione, mentre Annulla'' chiuderà la finestra di dialogo e gli elementi non verranno spostati. Se viene premuto il pulsante OK, il vettore di spostamento verrà salvato e apparirà precompilato la volta successiva che si aprirà la finestra di dialogo, permettendo ripetute applicazioni dello stesso vettore a più oggetti.

Strumenti per le schiere

Pcbnew e l’editor delle impronte hanno entrambi degli assistenti per la creazione di schiere di elementi e componenti; questi assistenti possono essere usati per disporre in modo semplice ed accurato elementi ripetitivi sulla scheda o nelle impronte.

Attivazione dello strumento schiere

Lo strumento agisce sul componente presente sotto il puntatore opure, in modalità grafica tradizionale, su una selezione. È accessibile sia tramite il menu contestuale per la selezione che tramite comando da tastiera (predefinito Ctrl-N). In modalità grafica tradizionale, l’icona del menu contestuale indica una schiera dei tipi selezionati:

array pad array line array text array module array target array zone

Lo strumento schiere si presenta come una finestra di dialogo, con un pannello per i tipi di schieramenti. Ci sono due tipi di schieramenti supportati: a griglia e circolare.

Ogni tipo di schiera può essere pienamente descritto nel rispettivo pannello. Le opzioni geometriche (come la griglia viene disposta) sono sulla sinistra; le opzioni di numerazione (incluso il tipo di progressione della numerazione sulla griglia) sono sulla destra.

Schiere a griglia

Le schiere a griglia sono schieramenti di disposizione di componenti secondo una griglia rettangolare bidimensionale. Questo tipo di schiere può produrre anche schieramenti lineari consistenti di una sola riga o colonna.

La finestra di dialogo di impostazione delle schiere a griglia:

Pcbnew array dialog grid
Opzioni di geometria

Le opzioni di geometria sono le seguenti:

  • Conteggio orizzontale: il numero di ``colonne'' nella griglia.

  • Conteggio verticale: il numero di ``righe'' nella griglia.

  • Spaziatura orizzontale: la distanza orizzontale da elemento a elemento nella stessa riga e nelle colonne successive. Se è negativa, la griglia procede da destra a sinistra.

  • Spaziatura verticale: la distanza verticale da elemento a elemento nella stessa colonna e nelle righe successive. Se è negativa, la griglia procede dal basso in alto.

  • Spostamento orizzontale: comincia ogni riga a questa distanza dalla destra della precedente

  • Spostamento verticale: comincia colonna a questa distanza sotto la precedente

Pcbnew array grid offsets
Figure 1. griglia 3x3 con spostamenti x e y
  • Alternanza: aggiunge uno spostamento ad ogni insieme di ``n'' righe/colonne, con ogni riga in progressione di 1/n della dimensione spaziale pertinente:

Pcbnew array grid stagger rows 2
Figure 2. Griglia 3x3 con un’alternanza di riga di 2
Pcbnew array grid stagger cols 3
Figure 3. Griglia 4x3 con un’alternanza di colonna di 3
Opzioni di numerazione
  • Direzione numerazione piazzole: determina se la numerazione deve procedere lungo le righe e poi spostarsi alla prossima riga, o lungo le colonne e poi spostarsi alla prossima colonna. Da notare che la direzione della numerazione è definita dal segno della spaziatura: una spaziatura negativa otterrà una numerazione da destra a sinistra o dal basso in alto.

  • Numerazione inversa piazzole su righe o colonne alternate: se selezionata, l’ordine di numerazione (da sinistra a destra o da destra a sinistra, per esempio) si alterna su righe o colonne. Sia per le righe che per le colonne l’alternanza dipende dalla direzione di numerazione. Questa opzione è utile per contenitori come i DIP dove la numerazione procede verso l’altro da un lato e verso il basso dall’altro.

  • Riavvio numerazione: se si sta disponendo elementi che possiedono già numerazione, reimposta all’avvio, altrimenti continua se possibile dal numero dell’elemento.

  • Schema numerazione piazzole

    • Continuous: the numbering just continues across a row/column break - if the last item in the first row is numbered "7", the first item in the second row will be "8".

    • Coordinate: the numbering uses a two-axis scheme where the number is made up of the row and column index. Which one comes first (row or column) is determined by the numbering direction.

  • Numerazione asse: che ``alfabeto'' usare per numerare gli assi. Le scelte sono

    • Numerals for normal integer indices

    • Hexadecimal for base-16 indexing

    • Alphabetic, minus IOSQXZ, a common scheme for electronic components, recommended by ASME Y14.35M-1997 sec. 5.2 (previously MIL-STD-100 sec. 406.5) to avoid confusion with numerals.

    • Full alphabet from A-Z.

Schiere circolari

Le schiere circolari posizionano gli elementi attorno ad un cerchio o ad un arco. Il cerchio viene definito dalla posizione della selezione (o dal centro di un gruppo selezionato) e da un punto centrale specificato. Ecco la finestra di dialogo della configurazione delle schiere circolari:

Pcbnew array dialog circular
Opzioni di geometria
  • Centro orizzontale, Centro verticale: il centro del cerchio. Il campo raggio sotto viene aggiornato automaticamente quando si regolano questi valori.

  • Angolo: la differenza angolare tra due elementi adiacenti nello schieramento. Impostarlo a zero per dividere equamente il cerchio con ``Conteggio'' elementi.

  • Counteggio: numero di elementi nello schieramento (incluso l’elemento originale)

  • Ruota: ruota ogni elemento attorno alla sua posizione. Diversamente, l’elemento verrà traslato ma non ruotato (per esempio, una piazzola quadrata rimarrà sempre diritta se questa opzione non viene impostata).

Opzioni di numerazione

Le schiere circolari hanno solo una dimensione ed una geometria più semplice delle griglie. Il significato delle opzioni disponibili è lo stesso che per le griglie. Gli elementi sono numerati in senso orario - per una schiera antioraria, specificare un angolo negativo.

Manuale di riferimento scripting di KiCad

Lo scripting permette di automatizzare delle operazioni in KiCad usando il linguaggio Python.

Vedere anche la documentazione doxygen su Python Scripting Reference.

Si può consultare la guida del modulo python battendo pydoc pcbnew nel proprio terminale.

Usando gli script si possono creare:

  • Plugin: questo tipo di script viene caricato all’avvio di KiCad. Esempi:

    • Assistenti impronte: per aiutare a creare facilmente impronte inserendo dei parametri. Consultare la sottostante sezione dedicata Assistenti impronte.

    • I/O file '(pianificato)': per consentire di scrivere plugin per esportare/importare altri tipi di file.

    • Azioni '(pianificato)': associa eventi ad azioni di scripting o registra nuovi menu o icone nella barra strumenti.

  • Script a riga di comando: script che possono essere usati dalla riga di comando, per caricare schede o librerie, modificarle, e generare risultati o nuove schede.

Si dovrebbe notare che l’unica applicazione di KiCad che supporta lo scripting è Pcbnew. È pianificato di aggiungere questa caratteristica a Eeschema in un prossimo futuro.

Oggetti KiCad

Le API di scripting riflettono la struttura interna ad oggetti di KiCad/Pcbnew. BOARD è l’oggetto principale, che ha un insieme di proprietà e un insieme di MODULE, e TRACK/VIA, TEXTE_PCB, DIMENSION, DRAWSEGMENT. Poi i MODULE possono avere D_PAD, EDGE, ecc.

  • Vedere sotto la sezione BOARD.

Riferimento API di base

Tutte le API Pcbnew sono fornite dal modulo ``pcbnew'' in Python. Il metodo GetBoard() rerstituisce il c.s. corrente aperto dall’editor, utile per comandi scritti dalla shell di scripting integrata dentro pcbnew o per i plugin delle azioni.

Caricamento e salvataggio di una scheda

  • LoadBoard(nomefile): carica una scheda da file restituendo un oggetto BOARD, usando il formato file che corrisponde l’estensione del nome del file.

  • SaveBoard(nomefile,board): salva un oggetto BOARD su file, usando il formato file che corrisponde all’estensione del nome del file.

  • board.Save(nomefile): come sopra, ma è un metodo di un oggetto BOARD.

Esempio che carica una scheda, nasconde tutti i valori e mostra tutti i riferimenti.
#!/usr/bin/env python2.7
import sys
from pcbnew import *

filename=sys.argv[1]

pcb = LoadBoard(filename)
for module in pcb.GetModules():
    print "* Module: %s"%module.GetReference()
    module.Value().SetVisible(False)      # imposta il valore come nascosto
    module.Reference().SetVisible(True)   # imposta il riferimento come visibile

pcb.Save("mod_"+filename)

Elenco e caricamento librerie

Enumera librerie, enumera moduli, enumerate piazzole
#!/usr/bin/python

from pcbnew import *

libpath = "/usr/share/kicad/modules/Sockets.pretty"
print ">> enumera impronte, piazzole di",libpath

# Carica l'adeguato plugin per leggere/scrivere la libreria .pretty
# (contenente i file impronta .kicad_mod)
src_type = IO_MGR.GuessPluginTypeFromLibPath( libpath );
# possiamo forzare il tipo di plugin usando IO_MGR.PluginFind( IO_MGR.KICAD )
plugin = IO_MGR.PluginFind( src_type )

# Stampa il nome del tipo del plugin: (atteso "KiCad" per una libreria .pretty)
print( "Selected plugin type: %s" % plugin.PluginName() )

list_of_footprints = plugin.FootprintEnumerate(libpath)

for name in list_of_footprints:
    fp = plugin.FootprintLoad(libpath,name)
    # print the short name of the footprint
    print name  # this is the name inside the loaded library
    # followed by ref field, value field, and decription string:
    # Remember ref and value texts are dummy texts, replaced by the schematic values
    # when reading a netlist.
    print "  ->", fp.GetReference(), fp.GetValue(), fp.GetDescription()

    # print pad info: GetPos0() is the pad position relative to the footrint position
    for pad in fp.Pads():
        print "    pad [%s]" % pad.GetPadName(), "at",\
        "pos0", ToMM(pad.GetPos0().x), ToMM(pad.GetPos0().y),"mm",\
        "shape offset", ToMM(pad.GetOffset().x), ToMM(pad.GetOffset().y), "mm"
    print ""

BOARD

Board è l’oggetto base in pcbnew di KiCad, è il documento.

BOARD contiene un insieme di elenchi di oggetti a cui è possibile accedere usando i metodi seguenti, restituiranno elenchi iterabili che possono essere iterati usando "for obj in list:"

  • board.GetModules(): questo metodo restituisce una lista di oggetti MODULE, tutti i moduli disponibili nella scheda verranno qui esposti.

  • board.GetDrawings(): restituisce l’elenco di BOARD_ITEMS che appartengono ai disegni della scheda.

  • board.GetTracks(): questo metodo restituisce la lista di TRACK e VIA dentro una BOARD

  • board.GetFullRatsnest(): restituisce la lista di ratsnest (connessioni non ancora sbrogliate).

  • board.GetNetClasses(): restituisce la lista delle netclass

  • board.GetCurrentNetClassName(): restituisce la netclass corrente

  • board.GetViasDimensionsList(): restituisce la lista delle dimensioni dei via disponibili per la scheda.

  • board.GetTrackWidthList(): restituisce la lista di larghezza piste disponibili per la scheda.

Esempio di ispezione scheda
#!/usr/bin/env python
import sys
from pcbnew import *

filename=sys.argv[1]

pcb = LoadBoard(filename)

ToUnits = ToMM
FromUnits = FromMM
#ToUnits=ToMils
#FromUnits=FromMils

print "ELENCO VIA:"

for item in pcb.GetTracks():
    if type(item) is VIA:

        pos = item.GetPosition()
        drill = item.GetDrillValue()
        width = item.GetWidth()
        print " * Via:   %s - %f/%f "%(ToUnits(pos),ToUnits(drill),ToUnits(width))

    elif type(item) is TRACK:

        start = item.GetStart()
        end = item.GetEnd()
        width = item.GetWidth()

        print " * Pista: %s a %s, larghezza %f" % (ToUnits(start),ToUnits(end),ToUnits(width))

    else:
        print "Tipo sconosciuto    %s" % type(item)

print ""
print "ELENCO DISEGNI:"

for item in pcb.GetDrawings():
    if type(item) is TEXTE_PCB:
        print "* Text:    '%s' at %s"%(item.GetText(), item.GetPosition())
    elif type(item) is DRAWSEGMENT:
        print "* Drawing: %s"%item.GetShapeStr() # dir(item)
    else:
        print type(item)

print ""
print "ELENCO MODULI:"

for module in pcb.GetModules():
    print "* Modulo: %s a %s"%(module.GetReference(),ToUnits(module.GetPosition()))

print ""
print "Ratsnest cnt:",len(pcb.GetFullRatsnest())
print "pista w cnt:",len(pcb.GetTrackWidthList())
print "via s cnt:",len(pcb.GetViasDimensionsList())

print ""
print "ELENCO ZONE:", pcb.GetAreaCount()

for idx in range(0, pcb.GetAreaCount()):
    zone=pcb.GetArea(idx)
    print "zona:", idx, "priorita':", zone.GetPriority(), "nomenet", zone.GetNetname()

print ""
print "NetClassi:", pcb.GetNetClasses().GetCount(),
---------

=== Esempi

==== Cambio del margine della maschera dell'adesivo dei pin di un componente

.Vogliamo cambiare solo dai pin 1 al 14, il 15 è una piazzola termica e deve essere lasciata com'è.
[source, python]

#!/usr/bin/env python2.7 import sys from pcbnew import *

filename=sys.argv[1] pcb = LoadBoard(filename)

Find module U304

u304 = pcb.FindModuleByReference('U304') pads = u304.Pads()

Iterate over pads, printing solder paste margin

for p in pads: print p.GetPadName(), ToMM(p.GetLocalSolderPasteMargin()) id = int(p.GetPadName()) # Set margin to 0 for all but pad (pin) 15 if id<15: p.SetLocalSolderPasteMargin(0)

pcb.Save("mod_"+filename)

[[Footprint_Wizards]]
=== Assistenti impronte

Gli assistenti impronte sono una collezione di script python ai quali è possibile accedere dall'editor delle impronte. Se si invoca la finestra di dialogo impronte si può selezionare un dato assistente che permette di vedere il risultato dell'elaborazione dell'impronta, con alcuni parametri impostabili.

Se i plugin non vengono distribuiti per il proprio sistema, si possono trovare le ultime versioni di questi assieme ai sorgenti di KiCad su link:https://git.launchpad.net/kicad/tree/pcbnew/python/plugins[launchpad].

Dovrebbero essere posizionati in, per esempio, `C:\Program Files\KiCad\share\kicad\scripting\plugins`.

Su Linux i plugin utente si possono mettere in `$HOME/.kicad_plugins`.


.Crea facilmente impronte inserendo i parametri.
[source, python]
----------
from __future__ import division
import pcbnew

import HelpfulFootprintWizardPlugin as HFPW


class FPC_FootprintWizard(HFPW.HelpfulFootprintWizardPlugin):

    def GetName(self):
        return "FPC (SMT connector)"

    def GetDescription(self):
        return "FPC (SMT connector) Footprint Wizard"

    def GetValue(self):
        pins = self.parameters["Pads"]["*n"]
        return "FPC_%d" % pins

    def GenerateParameterList(self):
        self.AddParam( "Pads", "n", self.uNatural, 40 )
        self.AddParam( "Pads", "pitch", self.uMM, 0.5 )
        self.AddParam( "Pads", "width", self.uMM, 0.25 )
        self.AddParam( "Pads", "height", self.uMM, 1.6)
        self.AddParam( "Shield", "shield_to_pad", self.uMM, 1.6 )
        self.AddParam( "Shield", "from_top", self.uMM, 1.3 )
        self.AddParam( "Shield", "width", self.uMM, 1.5 )
        self.AddParam( "Shield", "height", self.uMM, 2 )


    # build a rectangular pad
    def smdRectPad(self,module,size,pos,name):
        pad = pcbnew.D_PAD(module)
        pad.SetSize(size)
        pad.SetShape(pcbnew.PAD_SHAPE_RECT)
        pad.SetAttribute(pcbnew.PAD_ATTRIB_SMD)
        pad.SetLayerSet( pad.SMDMask() )
        pad.SetPos0(pos)
        pad.SetPosition(pos)
        pad.SetPadName(name)
        return pad

    def CheckParameters(self):
        p = self.parameters
        self.CheckParamInt( "Pads", "*n" )  # not internal units preceded by "*"


    def BuildThisFootprint(self):
        p = self.parameters
        pad_count       = int(p["Pads"]["*n"])
        pad_width       = p["Pads"]["width"]
        pad_height      = p["Pads"]["height"]
        pad_pitch       = p["Pads"]["pitch"]
        shl_width       = p["Shield"]["width"]
        shl_height      = p["Shield"]["height"]
        shl_to_pad      = p["Shield"]["shield_to_pad"]
        shl_from_top    = p["Shield"]["from_top"]

        offsetX         = pad_pitch * ( pad_count-1 ) / 2
        size_pad = pcbnew.wxSize( pad_width, pad_height )
        size_shld = pcbnew.wxSize(shl_width, shl_height)
        size_text = self.GetTextSize()  # IPC nominal

        # Gives a position and size to ref and value texts:
        textposy = pad_height/2 + pcbnew.FromMM(1) + self.GetTextThickness()
        self.draw.Reference( 0, textposy, size_text )

        textposy = textposy + size_text + self.GetTextThickness()
        self.draw.Value( 0, textposy, size_text )

        # create a pad array and add it to the module
        for n in range ( 0, pad_count ):
            xpos = pad_pitch*n - offsetX
            pad = self.smdRectPad(self.module,size_pad, pcbnew.wxPoint(xpos,0),str(n+1))
            self.module.Add(pad)


        # Mechanical shield pads: left pad and right pad
        xpos = -shl_to_pad-offsetX
        pad_s0_pos = pcbnew.wxPoint(xpos,shl_from_top)
        pad_s0 = self.smdRectPad(self.module, size_shld, pad_s0_pos, "0")
        xpos = (pad_count-1) * pad_pitch+shl_to_pad - offsetX
        pad_s1_pos = pcbnew.wxPoint(xpos,shl_from_top)
        pad_s1 = self.smdRectPad(self.module, size_shld, pad_s1_pos, "0")

        self.module.Add(pad_s0)
        self.module.Add(pad_s1)

        # add footprint outline
        linewidth = self.draw.GetLineTickness()
        margin = linewidth

        # upper line
        posy = -pad_height/2 - linewidth/2 - margin
        xstart = - pad_pitch*0.5-offsetX
        xend = pad_pitch * pad_count + xstart;
        self.draw.Line( xstart, posy, xend, posy )

        # lower line
        posy = pad_height/2 + linewidth/2 + margin
        self.draw.Line(xstart, posy, xend, posy)

        # around left mechanical pad (the outline around right pad is mirrored/y axix)
        yend = pad_s0_pos.y + shl_height/2 + margin
        self.draw.Line(xstart, posy, xstart, yend)
        self.draw.Line(-xstart, posy, -xstart, yend)

        posy = yend
        xend = pad_s0_pos.x - (shl_width/2 + linewidth + margin*2)
        self.draw.Line(xstart, posy, xend, posy)

        # right pad side
        self.draw.Line(-xstart, posy, -xend, yend)

        # vertical segment at left of the pad
        xstart = xend
        yend = posy - (shl_height + linewidth + margin*2)
        self.draw.Line(xstart, posy, xend, yend)

        # right pad side
        self.draw.Line(-xstart, posy, -xend, yend)

        # horizontal segment above the pad
        xstart = xend
        xend = - pad_pitch*0.5-offsetX
        posy = yend
        self.draw.Line(xstart, posy, xend, yend)

        # right pad side
        self.draw.Line(-xstart, posy,-xend, yend)

        # vertical segment above the pad
        xstart = xend
        yend = -pad_height/2 - linewidth/2 - margin
        self.draw.Line(xstart, posy, xend, yend)

        # right pad side
        self.draw.Line(-xstart, posy, -xend, yend)


FPC_FootprintWizard().register()

Table of Contents