Manuale di riferimento
Copyright
Questo documento è coperto dal Copyright © 2010-2018 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-2018.
Feedback
Si prega di inviare qualsiasi rapporto bug, suggerimento o nuova versione a:
-
Documentazione di KiCad: https://gitlab.com/kicad/services/kicad-doc/issues
-
Software KiCad: https://gitlab.com/kicad/code/kicad/issues
-
Traduzione di KiCad: https://gitlab.com/kicad/code/kicad-i18n/issues
Data di pubblicazione e versione del software
Pubblicato il 30 maggio, 2015.
Introduzione a Eeschema
Descrizione
Eeschema è un software editor di schemi elettrici, distribuito come parte della suite KiCad, e disponibile per i seguenti sistemi operativi:
-
Linux
-
Apple macOS
-
Windows
Indipendentemente dal sistema operativo, tutti i file Eeschema sono 100% compatibili da un sistema all’altro.
Eeschema è un’applicazione integrata dove tutte le funzioni di disegno, controllo, disposizione, gestione librerie e accesso al software di progettazione di circuiti stampati sono svolte all’interno del sistema Eeschema stesso.
Eeschema è stato concepito per cooperare con Pcbnew, che è il programma per la progettazione di circuiti stampati della suite di KiCad. Esso può anche esportare file di netlist, che descrivono le connessioni elettriche dello schema usabili da altri pacchetti.
Eeschema include un editor di librerie di simboli, che può creare e modificare simboli e gestire librerie. Esso integra le seguenti funzioni, aggiuntive ma essenziali, necessarie in ogni moderno software di elaborazione schemi elettrici:
-
Controllo regole di progettazione (ERC) per il controllo automatico di connessioni errate o sconnesse
-
Esportazione di file del disegno dello schema in molti formati (Postscript, PDF, HPGL e SVG).
-
Generazione della distinta materiali (tramite script Python o XSLT, che consentono di modellarla in molti formati).
Panoramica tecnica
Eeschema è limitato solo dalla disponibilità di memoria. Non c’è perciò praticamente nessun limite al numero di componenti, numero di pin nei componenti, numero di connessioni o fogli. In caso di schemi elettrici formati da più fogli, la rappresentazione è gerarchica.
Eeschema può usare schemi multifoglio in alcune modalità:
-
Gerarchie semplici (ogni schema elettrico viene usato solo una volta).
-
Gerarchie complesse (alcuni schemi sono usati più di una volta con istanze multiple).
-
Gerarchie piatte (schemi esplicitamente connessi ad uno schema principale).
Comandi generici Eeschema
I comandi possono essere eseguiti da:
-
Facendo clic sulla barra del menu (in cima allo schermo).
-
Facendo clic sulle icone in cima allo schermo (comandi generali).
-
Facendo clic sulle icone sul lato destro dello schermo (comandi particolari o "strumenti").
-
Facendo clic sulle icone sul lato sinistro dello schermo (opzioni di visualizzazione).
-
Premendo i pulsanti del mouse (comandi complementari importanti). In particolare un clic sul pulsante destro apre un menu contestuale che dipende dall’elemento sottostante il puntatore (zoom, griglia e modifica di elementi).
-
Tasti funzione (tasti F1, F2, F3, F4, Ins e spazio). Nello specifico: il tasto
Esc'' spesso permette la cancellazione del comando in corso. Il tasto
Ins'' permette la duplicazione dell’ultimo elemento creato. -
Premendo i comandi da tastiera tipicamente si esegue un comando di selezione dello strumento e si inizia l’azione dello strumento nella posizione corrente del puntatore. Per un elenco dei comandi da tastiera, vedere la voce di menu ``Aiuto→Elenco tasti'' o premere il tasto 'Ctrl+F1'.
Comandi da mouse
Comandi di base
Pulsante sinistro
-
Clic singolo: mostra nella barra di stato le caratteristiche del simbolo o del testo sotto il puntatore del mouse.
-
Doppio clic: modifica (se l’elemento è modificabile) il simbolo o il testo.
Pulsante destro
-
Apre un menu a scomparsa.
Operazioni sui blocchi
È possibile spostare, trascinare, copiare e cancellare aree selezionate in tutti i menu di Eeschema.
Le aree vengono selezionate disegnando un riquadro attorno ad esse usando il tasto sinistro del mouse.
Mantenendo premuti Maiusc'',
Ctrl'', o ``Maiusc + Ctrl'' durante la selezione, esegue rispettivamente copia, trascinamento o cancellazione:
Pulsante sinistro del mouse |
Sposta la selezione. |
Maiusc + pulsante sinistro del mouse |
Copia la selezione. |
Ctrl + pulsante sinistro del mouse |
Trascina la selezione. |
Ctrl + Maiusc + pulsante sinistro del mouse |
Cancella la selezione. |
Durante il trascinamento o la copia, si può:
-
Fare clic nuovamente per piazzare gli elementi.
-
Fare clic con il pulsante destro o premere Esc per annullare.
Se un comando di spostamento blocco è cominciato, un altro comando può essere selezionato tramite il tasto destro del mouse, menu a scomparsa:
Comandi da tastiera
-
Il tasto "Ctrl+F1" mostra l’elenco corrente dei comandi da tastiera.
-
I comandi da tastiera possono essere ridefiniti nella scheda Controlli della finestra di dialogo delle opzioni dell’editor degli schemi elettrici (menu Preferenze → Opzioni generali).
Ecco l’elenco dei comandi da tastiera predefiniti:
Aiuto (questa finestra) |
Ctrl+F1 |
Ingrandisci |
F1 |
Rimpicciolisci |
F2 |
Aggiorna zoom |
F3 |
Centra zoom |
F4 |
Adatta allo schermo |
Home |
Zoom alla selezione |
@ |
Reimposta le coordinate locali |
Spazio |
Modifica elemento |
E |
Cancella elemento |
Canc |
Ruota elemento |
R |
Trascina elemento |
G |
Annulla |
Ctrl+Z |
Rifà |
Ctrl+Y |
Clic sinistro mouse |
Invio |
Doppio clic sinistro mouse |
Fine |
Salva schema |
Ctrl+S |
Carica schema |
Ctrl+O |
Trova elemento |
Ctrl+F |
Trova prossimo elemento |
F5 |
Trova prossimo marcatore DRC |
Maiusc+F5 |
Trova and sostituisci |
Ctrl+Alt+F |
Ripeti l’ultimo elemento |
Ins |
Sposta blocco → trascina blocco |
Tab |
Copia |
Ctrl+C |
Incolla |
Ctrl+V |
Taglia |
Ctrl+X |
Sposta elemento dello schema |
M |
Duplica simbolo o etichetta |
C |
Aggiungi simbolo |
A |
Aggiungi alimentazione |
P |
Ribalta in X |
X |
Ribalta in Y |
Y |
Orienta normalmente il simbolo |
N |
Modifica valore simbolo |
V |
Modifica riferimento simbolo |
U |
Modifica impronta simbolo |
F |
Modifica con l’editor dei simboli |
Ctrl+E |
Inizia filo |
W |
Inizia bus |
B |
Fine bus |
K |
Aggiungi etichetta |
L |
Aggiungi etichetta gerarchica |
H |
Aggiungi etichetta globale |
Ctrl+L |
Aggiungi giunzione |
J |
Aggiungi indicatore di non connesso |
Q |
Aggiungi foglio |
S |
Aggiungi elemento filo |
Z |
Aggiungi elemento bus |
/ |
Aggiungi polilinea grafica |
I |
Aggiungi testo grafico |
T |
Aggiorna C.S. dallo schema |
F8 |
Autopiazza campi |
O |
Esci dal foglio |
Alt+BkSp |
Cancella nodo |
BkSp |
Evidenzia collegamento |
Ctrl+X |
Tutti i comandi da tastiera possono essere ridefiniti usando lo specifico editor (menu Preferenze→Opzioni generali→Controlli).
È possibile importate o esportare le impostazioni dei comandi da tastiera usando: menu Preferenze→Opzioni tasti→Importa/Esporta tasti.
Griglia
In Eeschema il puntatore si sposta sempre sopra una griglia. La griglia può essere personalizzata:
-
È possibile cambiare la dimensione della griglia attraverso il menu a scomparsa o tramite il menu Preferenze/Opzioni.
-
I colori possono essere modificati tramite la scheda colori presente nella finestra di dialogo delle opzioni generali (menu Preferenze→Opzioni generali).
-
La visibilità può essere accesa/spenta usando il pulsante corrispondente nella barra strumenti di sinistra.
La dimensione predefinita della griglia è 50 mils (0.05") o 1,27 millimetri.
Questa è la griglia preferita per piazzare simboli e fili in uno schema elettrico, e per piazzare piedini durante la progettazione di un simbolo nell’editor dei simboli.
Si può anche lavorare con una griglia più piccola da 25 mil a 10 mil, ma in genere queste sono usate per la creazione dei corpi dei simboli o per posizionare testi e commenti, non per i fili o piedini.
Selezione Zoom
Per cambiare il livello di zoom:
-
Fare clic destro per aprire il menu a scomparsa e selezionare il livello di zoom desiderato.
-
O usare i tasti funzione:
-
F1: Zoom in
-
F2: Zoom out
-
F4 or simply click on the middle mouse button (without moving the mouse): Center the view around the cursor pointer position
-
-
Zoom finestra:
-
Mouse wheel: Zoom in/out
-
Shift+Mouse wheel: Pan up/down
-
Ctrl+Mouse wheel: Pan left/right
-
Visualizzazione delle coordinate del puntatore
Le unità mostrate sono in pollici o in millimetri. Comunque, Eeschema lavora sempre internamente in millesimi (mils, thou o 0.001) di pollice.
Le seguenti informazioni sono mostrate sulla parte in basso a destra della finestra:
-
Fattore di zoom
-
Posizione assoluta del puntatore
-
Posizione relativa del puntatore
Le coordinate relative possono essere azzerate con la barra spazio. È utile per effettuare misure tra due punti.
Barra menu in cima
La barra menu in cima permette l’apertura e il salvataggio degli schemi elettrici, la configurazione del programma, e la visualizzazione della documentazione.
Barra strumenti in alto
Questa barra strumenti dà accesso alle funzioni principali di Eeschema.
Se Eeschema viene eseguito in modalità stand-alone (N.d.T. cioè al di fuori della gestione progetti KiCad), questo è l’insieme degli strumenti a disposizione:
Si noti che quando KiCad viene eseguito in modalità progetto, le prime due icone non sono disponibili dato che esse lavorano sui singoli file.
Create a new schematic (only in standalone mode). |
|
Open a schematic (only in standalone mode). |
|
Save complete schematic project. |
|
Select the sheet size and edit the title block. |
|
Open print dialog. |
|
Paste a copied/cut item or block to the current sheet. |
|
Undo: Revert the last change. |
|
Redo: Revert the last undo operation. |
|
Show the dialog to search symbols and texts in the schematic. |
|
Show the dialog to search and replace texts in the schematic. |
|
|
Refresh screen; zoom to fit. |
|
Zoom in and out. |
View and navigate the hierarchy tree. |
|
Leave the current sheet and go up in the hierarchy. |
|
Call the symbol library editor to view and modify libraries and symbols. |
|
Browse symbol libraries. |
|
Annotate symbols. |
|
Electrical Rules Checker (ERC), automatically validate electrical connections. |
|
Call CvPcb to assign footprints to symbols. |
|
Export a netlist (Pcbnew, SPICE and other formats). |
|
Edit symbol fields. |
|
Generate the Bill of Materials (BOM). |
|
Call Pcbnew to perform a PCB layout. |
|
Back-import footprint assignment (selected using CvPcb or Pcbnew) into the "footprint" fields. |
Icone della barra strumenti di destra
Questa barra contiene strumenti per:
-
Piazzare simboli, fili, bus, connessioni, etichette, testi, ecc.
-
Creare sotto-fogli gerarchici e simboli di connessione.
Cancel the active command or tool. |
|
Highlight a net by marking its wires and net labels with a different color. If KiCad runs in project mode then copper corresponding to the selected net will be highlighted in Pcbnew as well. |
|
Display the symbol selector dialog to select a new symbol to be placed. |
|
Display the power symbol selector dialog to select a power symbol to be placed. |
|
Draw a wire. |
|
Draw a bus. |
|
Draw wire-to-bus entry points. These elements are only graphical and do not create a connection, thus they should not be used to connect wires together. |
|
Draw bus-to-bus entry points. |
|
Place a "No Connect" flag. These flags should be placed on symbol pins which are meant to be left unconnected. It is done to notify the Electrical Rules Checker that lack of connection for a particular pin is intentional and should not be reported. |
|
Place a junction. This connects two crossing wires or a wire and a pin, when it can be ambiguous (i.e. if a wire end or a pin is not directly connected to another wire end). |
|
Place a local label. Local label connects items located in the same sheet. For connections between two different sheets, you have to use global or hierarchical labels. |
|
Place a global label. All global labels with the same name are connected, even when located on different sheets. |
|
Place a hierarchical label. Hierarchical labels are used to create a connection between a subsheet and the parent sheet that contains it. |
|
Place a hierarchical subsheet. You must specify the file name for this subsheet. |
|
Import a hierarchical pin from a subsheet. This command can be executed only on hierarchical subsheets. It will create hierarchical pins corresponding to hierarchical labels placed in the target subsheet. |
|
Place a hierarchical pin in a subsheet. This command can be executed only on hierarchical subsheets. It will create arbitrary hierarchical pins, even if they do not exist in the target subsheet. |
|
Draw a line. These are only graphical and do not connect anything. |
|
Place a text comment. |
|
Place a bitmap image. |
|
Delete selected element. |
Icone barra degli strumenti di sinistra
Questa barra strumenti gestisce le opzioni di visualizzazione:
Toggle grid visibility. |
|
Switch units to inches. |
|
Switch units to millimeters. |
|
Choose the cursor shape (full screen/small). |
|
Toggle visibility of "invisible" pins. |
|
Toggle free angle/90 degrees wires and buses placement. |
Menu a scomparsa e modifiche veloci
Un click destro apre un menu contestuale per l’elemento selezionato. Quest’ultimo contiene:
-
Fattore di zoom.
-
Regolazione della griglia.
-
Parametri modificati comunemente per l’elemento selezionato.
Menu a scomparsa senza elementi selezionati.
Modifica di un’etichetta.
Modifica di un simbolo.
Menu principale in alto
Menu file
New | Close current schematic and start a new one (only in standalone mode). |
---|---|
Open |
Load a schematic project (only in standalone mode). |
Open Recent |
Open a schematic project from the list of recently opened files (only in standalone mode). |
Append Schematic Sheet |
Insert the contents of another sheet into the current one. |
Import Non-Kicad Schematic File |
Imports a schematic project saved in another file format. |
Save |
Save current sheet and all its subsheets. |
Save Current Sheet |
Save only the current sheet, but not others in the project. |
Save Current Sheet As… |
Save the current sheet under a new name. |
Page Settings |
Configure page dimensions and title block. |
Print schematic project (See also chapter Plot and Print). |
|
Plot |
Export to PDF, PostScript, HPGL or SVG format (See chapter Plot and Print). |
Close |
Terminate the application. |
Menu preferenze
Gestione tabelle librerie di simboli |
Aggiunge/rimuove librerie di simboli. |
Configura percorsi |
Imposta i percorsi di ricerca predefiniti. |
Opzioni generali |
Preferenze (unità, dimensione griglia, nomi dei campi, ecc.). |
Imposta lingua |
Seleziona la lingua dell’interfaccia. |
Opzioni icone |
Impostazione di visibilità delle icone. |
Salva e carica preferenze |
Trasferimento delle preferenze a/da file. |
Gestione tabelle di librerie di simboli
Eeschema usa due tabelle di librerie per memorizzare l’elenco delle librerie di simboli disponibili, che differiscono per tipologia:
-
Librerie globali
Le librerie elencate nella tabella delle librerie globali sono disponibili per ogni progetto. Esse vengono salvate in sym-lib-table nella cartella utente (il percorso esatto dipende dal sistema operativo; controllare il percorso nella tabella).
-
Librerie specifiche del progetto
Le librerie elencate nella tabella delle librerie specifiche del progetto sono disponibili al progetto correntemente aperto. Esse vengono salvare nel file sym-lib-table nella cartella del progetto (controllare il percorso nella tabella).
Si possono visualizzare entrambi gli elenchi facendo clic sulle linguette Librerie globali'' o
Librerie specifiche del progetto'' presenti sotto la tabella librerie.
Aggiungi una nuova libreria
Aggiungere una libreria facendo clic sul pulsante Esplora librerie… e selezionando un file oppure facendo clic su "Accoda libreria" e inserendo un percorso di file di libreria. La libreria selezionata verrà aggiunta alla tabella di librerie aperta correntemente (Globale/Specifica del progetto).
Rimuovi libreria
Elimina una libreria selezionando una o più librerie e facendo clic sul pulsante Rimuovi libreria.
Proprietà librerie
Ogni riga nella tabella contiene diversi campi che descrivono una libreria:
Attiva |
Attiva/disattiva la libreria. È utile per ridurre temporaneamente l’insieme di librerie caricate. |
Denominazione |
La denominazione (nickname) è un identificatore corto e univoco usato per assegnare simboli a componenti. I simboli sono rappresentati da stringhe '<Denominatore libreria>:<Nome simbolo>'. |
Percorso libreria |
Il percorso che indica la posizione della libreria. |
Tipo plugin |
Determina il formato file della libreria. |
Opzioni |
Conserva le opzioni specifiche della libreria, se il plugin le usa. |
Descrizione |
Breve descrizione dei contenuti della libreria. |
Opzioni generali
Mostra
Grid Size |
Grid size selection. It is recommended to work with normal grid (0.050 inches or 1,27 mm). Smaller grids are used for component building. |
Bus thickness |
Pen size used to draw buses. |
Line thickness |
Pen size used to draw objects that do not have a specified pen size. |
Part ID notation |
Style of suffix that is used to denote symbol units (U1A, U1.A, U1-1, etc.) |
Icon scale |
Adjust toolbar icons size. |
Show Grid |
Grid visibility setting. |
Restrict buses and wires to H and V orientation |
If checked, buses and wires are drawn only with vertical or horizontal lines. Otherwise buses and wires can be placed at any orientation. |
Show hidden pins: |
Display invisible (or hidden) pins, typically power pins. |
Show page limits |
If checked, shows the page boundaries on screen. |
Footprint previews in symbol chooser |
Displays a footprint preview frame and footprint selector when placing a new symbol. Note: it may cause problems or delays, use at your own risk. |
Modifica
Measurement units |
Select the display and the cursor coordinate units (inches or millimeters). |
Horizontal pitch of repeated items |
Increment on X axis during element duplication (default: 0) (after placing an item like a symbol, label or wire, a duplication is made by the Insert key) |
Vertical pitch of repeated items |
Increment on Y axis during element duplication (default: 0.100 inches or 2,54 mm). |
Increment of repeated labels |
Increment of label value during duplication of texts ending in a number, such as bus members (usual value 1 or -1). |
Default text size |
Text size used when creating new text items or labels. |
Auto-save time interval |
Time in minutes between saving backups. |
Automatically place symbol fields |
If checked, symbol fields (e.g. value and reference) in newly placed symbols might be moved to avoid collisions with other items. |
Allow field autoplace to change justification |
Extension of 'Automatically place symbol fields' option. Enable text justification adjustment for symbol fields when placing a new part. |
Always align autoplaced fields to the 50 mil grid |
Extension of 'Automatically place symbol fields' option. If checked, fields are autoplaced using 50 mils grid, otherwise they are placed freely. |
Controlli
Ridefinisce i comandi da tastiera e imposta il comportamento dell’interfaccia utente.
Seleziona un nuovo comando da tastiera facendo doppio clic su un’azione o tasto destro su un’azione per mostrare un menu a scomparsa:
Modifica… |
Definisce un nuovo tasto per l’azione (allo stesso modo del doppio clic). |
Annulla cambiamenti |
Annulla l’ultimo cambiamento del tasto per l’azione. |
Ripristina predefinito |
Imposta il tasto al suo valore predefinito. |
Annulla tutti i cambiamenti |
Annulla tutti i cambiamenti recenti per le azioni. |
Ripristina tutto al predefinito |
Imposta tutti i tasti delle azioni ai loro valori predefiniti. |
Descrizione delle opzioni:
Center and warp cursor on zoom |
If checked, the pointed location is warped to the screen center when zooming in/out. |
Use touchpad to pan |
When enabled, view is panned using scroll wheels (or touchpad gestures) and to zoom one needs to hold Ctrl. Otherwise scroll wheels zoom in/out and Ctrl/Shift are the panning modifiers. |
Pan while moving object |
If checked, automatically pans the window if the cursor leaves the window during drawing or moving. |
Colori
Schemi di colore per vari elementi grafici. Fare clic su uno qualsiasi dei campioni di colore per selezionare un nuovo colore per quel particolare elemento.
Campi predefiniti
Definisce campi aggiuntivi personalizzati e valori corrispondenti che appariranno nei nuovi simboli piazzati.
Menu di aiuto
Accedere alla guida in linea (questo documento) per accedere ad un vasto tutorial su KiCad.
Usare ``Copia informazioni di versione'' quando si desidera inviare rapporti di difetti per identificare la propria versione ed il proprio sistema.
Barra degli strumenti in alto generale
Gestione del foglio
L’icona di impostazione del foglio permette di impostare la dimensione del foglio e il contenuto del riquadro iscrizioni.
La numerazione dei fogli è automaticamente aggiornata. È possibile impostare la data ad oggi premendo il pulsante con la freccia a sinistra di "Data versione", visto che questa non viene cambiata automaticamente.
Strumento di ricerca
L’icona serve per accedere allo strumento di ricerca.
È possibile cercare un riferimento, un valore o una stringa di testo nel foglio corrente o in tutta la gerarchia. Una volta trovato, il puntatore del mouse verrà posizionato sull’elemento trovato nel sotto-foglio in questione.
Lo strumento netlist
L’icona della netlist apre lo strumento di generazione delle netlist.
Lo strumento crea un file che descrive tutte le connessioni dell’intera gerarchia.
In una gerarchia multifoglio, ogni etichetta locale è visibile solo dentro il foglio al quale appartiene. Per esempio l’etichetta LABEL1 del foglio 3 è diversa dall’etichetta TOTO del foglio 5 (se non è stata introdotta intenzionalmente una connessione per collegarle). Ciò è dovuto al fatto che il nome del percorso del foglio è associato internamente all’etichetta locale.
Anche se non c’è limite alla lunghezza del testo per le etichette in Eeschema, si tenga in considerazione che altri programmi che dovessero leggere le netlist generate potrebbero avere delle limitazioni. |
Evitare gli spazi nelle etichette, dato che potrebbero far sembrare una etichetta come diverse separate dagli spazi. Non è un limite di Eeschema, ma di molti formati di netlist che spesso assumono che un’etichetta non abbia spazi. |
Opzioni:
Formato predefinito |
Imposta per selezionare Pcbnew come formato predefinito. |
Si possono generare anche altri formati:
-
Orcad PCB2
-
CadStar
-
Spice (simulatori)
Plugin esterni possono essere aggiunti per estendere l’elenco dei formati di netlist (nell’immagine precedente è stato aggiunto un plugin per PadsPcb).
Si possono trovare ulteriori informazioni sulla creazione delle netlist nel capitolo Creazione di una netlist.
Strumento di annotazione
L’icona lancia l’esecuzione dello strumento di annotazione. Questo strumento assegna automaticamente i nomi a tutti i componenti nello schema.
Per componenti multiparte (come l’integrato TTL 7400 che contiene 4 porte), viene assegnato anche un suffisso per ogni parte (perciò un TTL 7400 identificato come U3 sarà diviso in U3A, U3B, U3C e U3D).
Si può annotare incondizionatamente tutti i componenti, o solamente quelli nuovi, cioè quelli che non erano stati annotati in precedenza.
Ambito
Use the entire schematic | All sheets are re-annotated (default). |
---|---|
Use the current page only |
Only the current sheet is re-annotated (this option is to be used only in special cases, for example to evaluate the amount of resistors in the current sheet.). |
Keep existing annotation |
Conditional annotation, only the new components will be re-annotated (default). |
Reset existing annotation |
Unconditional annotation, all the components will be re-annotated (this option is to be used when there are duplicated references). |
Reset, but do not swap any annotated multi-unit parts |
Keeps all groups of multiple units (e.g. U2A, U2B) together when reannotating. |
Ordine di annotazione
Seleziona l’ordine nel quale i componenti verranno numerati (sia orizzontalmente che verticalmente).
Scelte di annotazione
Seleziona il formato di riferimento assegnato.
Strumento di controllo regole elettriche (ERC)
L’icona avvia lo strumento di controllo regole elettriche (ERC).
Questo strumento esegue la verifica del progetto ed è in grado di rivelare connessioni mancanti o errate.
All’esecuzione del controllo ERC, Eeschema piazza dei marcatori per evidenziare i problemi rilevati. La descrizione dell’errore viene mostrata facendo clic sinistro sul marcatore. Si può generare anche un file di rapporto dei problemi.
La finestra di dialogo ERC principale
Gli errori vengono mostrati nella finestra del controllo regole elettriche:
-
Totale errori e avvertimenti.
-
Totale errori.
-
Totale avvertimenti.
Opzioni:
Crea file di rapporto ERC |
selezionare questa opzione per generare un file di rapporto ERC. |
Comandi:
Cancella marcatori |
Rimuove tutti i marcatori di avvertimento/errore ERC. |
Esegui |
Avvia il controllo regole elettriche. |
Chiudi |
Chiude la finestra. |
-
Facendo clic su un messaggio di errore si salta sul marcatore corrispondente nello schema elettrico.
Finestra di dialogo delle opzioni ERC
Questa scheda permette di definire le regole di connettività tra pin; si può scegliere tra 3 opzioni per ogni caso:
-
Nessun errore
-
Attenzione
-
Errore
Ogni riquadro della matrice può essere modificato facendo clic su di esso.
Opzioni:
Controllo etichette simili |
Segnala le etichette che differiscono solo per le maiuscole (per es. label/Label/LaBeL). I nomi dei collegamenti sono case-sensitive quindi etichette come quelle dell’esempio sono considerate collegamenti separati. |
Controllo etichette globali uniche |
Segnala le etichette globali che ricorrono solo una volta per un singolo collegamento. Normalmente si richiede che ce ne siano almeno due per fare una connessione. |
Comandi:
Inizializza al predefinito |
Ripristina le impostazioni originali. |
Strumento per la distinta materiali
L’icona avvia la generazione di distinta materiali (BOM). Questo strumento permette la generazione di un file elenco di tutti i componenti e connessioni gerarchiche (etichette globali).
Il generatore di distinte materiali di Eeschema fa uso di plugin esterni, in forma di script XSLT o Python. Alcuni esempi sono installati nella cartella dei file eseguibili di KiCad.
Un utile insieme di proprietà di componenti da usare per una distinta componenti sono:
-
Value - valore: nome univoco per ogni parte usata.
-
Footprint - Impronta: sia inserita manualmente che per back-annotation (vedere sotto).
-
Field1 - Campo1: nome costruttore.
-
Field2 - Campo2: numero parte del costruttore.
-
Field3 - Campo3: numero parte distributore.
Per esempio:
Su MS Windows, la finestra di dialogo del generatore distinta materiale ha un’opzione speciale (indicata dalla freccia rossa) che controlla la visibilità della finestra del plugin esterno. Per impostazione predefinita, la riga di comando viene eseguita con la finestra della console nascosta e l’output viene reindirizzato al campo Plugin info. Impostare questa opzione per mostrare la finestra del comando in esecuzione. Potrebbe essere necessario se il plugin ha una GUI.
Strumento di modifica dei campi
L’icona apre un foglio elettronico che consente di visualizzare e modificare i valori dei campi di tutti i simboli.
Una volta modificati i valori dei campi, è necessario accettare i cambiamenti facendo clic sul pulsante 'Applica i cambiamenti' o annullarli facendo clic sul pulsante 'Annulla i cambiamenti'.
Trucchi per semplificare lo riempimento dei campi
Ci sono diversi metodi speciali di copia/incolla nel foglio di calcolo. Essi possono tornare utili quando si inseriscono campi valore ripetuti in diversi componenti.
Questi metodi sono illustrati sotto.
Copy (Ctrl+C) | Selection | Paste (Ctrl+V) |
---|---|---|
Queste tecniche sono disponibili anche in altre finestre di dialogo con elementi di controllo a griglia. |
Strumento di importazione per assegnazione impronte
Accesso:
L’icona avvia lo strumento di per la back-annotation.
Questo strumento permette di importare i cambiamenti alle impronte effettuati in PcbNew, tramite i campi impronte, indietro in Eeschema.
Gestione librerie di simboli
Le librerie di simboli contengono raccolte di simboli utilizzati durante la creazione degli schemi elettrici. Ogni simbolo in uno schema è identificato in modo univoco da un nome completo composto da un nickname di libreria e da un nome di simbolo. Un esempio è Audio: AD1853
.
Tabella librerie di simboli
La tabella della libreria dei simboli contiene un elenco di tutti i file della libreria che KiCad conosce. La tabella della libreria dei simboli è composta dal file della tabella delle librerie di simboli globali e dal file della tabella delle librerie di simboli specifici del progetto.
Quando viene caricato un simbolo, Eeschema usa il denominatore della libreria, Audio
nel nostro esempio, per cercare la posizione della libreria nella tabella della libreria dei simboli.
L’immagine seguente mostra la finestra di modifica della tabella librerie di simboli che si apre selezionando la voce Gestione librerie di simboli'' nel menu delle
Preferenze''.
Tabella librerie di simboli globale
Le librerie elencate nella tabella librerie globale sono disponibili per ogni progetto. Esse vengono salvate nel file sym-lib-table nella cartella utente. La posizione di questa cartella dipende dal sistema operativo usato.
Tabella librerie di simboli specifiche del progetto
La tabella librerie di simboli specifica del progetto contiene l’elenco delle librerie che sono disponibili specificatamente per il file di progetto caricato in quel momento. La tabella librerie specifiche del progetto può essere modificata solo quando viene caricata assieme al file del progetto. Se non viene caricato alcun file di progetto o non c’è nessun file di tabella librerie di simboli nel percorso del progetto corrente, viene creata una tabella vuota che può essere modificata, ed in seguito salvata, assieme al file del progetto.
Configurazione iniziale
La prima volta che Eeschema viene eseguito e il file della tabella dei simboli globale sym-lib-table non viene trovato nella cartella dell’utente, Eeschema cercherà copiare il file di tabella simboli predefinito sym-lib-table memorizzato nella cartella di sistema del modelli di KiCad nel file sym-lib-table (N.d.T. quindi creandolo da zero) nella cartella dell’utente. Se il modello predefinito di file sym-lib-table non si trova, una finestra di dialogo richiederà una posizione alternativa da cui caricare il file sym-lib-table. Se non si trova ancora il file sym-lib-table o se la finestra viene chiusa, verrà creata una tabella librerie di simboli vuota nella cartella dell’utente. Se ciò succede, l’utente può copiare il file sym-lib-table manualmente o configurare la tabella a mano.
La tabella librerie di simboli predefinita include tutte le librerie di simboli installati che fanno parte di KiCad. Ciò può o meno essere desiderabile a seconda dell’uso e della velocità del sistema. Il tempo richiesto per caricare le librerie di simboli è proporzionale al numero di librerie presenti nella tabella librerie di simboli. Se il tempo di caricamento delle librerie di simboli sembra eccessivo, rimuovere le librerie usate raramenteo o mai dalla tabella librerie globale e aggiungerle di volta in volta alla tabella librerie del progetto solo quando necessario. |
Aggiungere voci alla tabella
Per usare una librerie di simboli, questa deve essere prima aggiunta alla tabella globale o a quella specifica del progetto. La tabella specifica del progetto è utilizzabile solo quando si è aperto un file di progetto.
Ogni voce di libreria deve avere un identificativo univoco.
Questo identificativo non ha nulla a che fare con il nome o il percorso del file di libreria. Il caratteri ':' e '/' non possono essere usati da nessuna parte nel denominatore della libreria. Ogni voce di libreria deve avere un nome / percorso file validi a seconda del tipo di libreria. I percorsi possono essere definiti come assoluti, relativi, o per sostituzione di variabile d’ambiente (vedere nella prossima sezione).
Il tipo appropriato di plugin deve essere selezionato perché la libreria possa essere letta correttamente. KiCad attualmente supporta solo il plugin per i file di libreria di simboli tradizionali.
C’è anche un campo dedicato alla descrizione della voce di libreria. Il campo opzioni non viene usato al momento perciò aggiungere opzioni non ha alcun effetto sul caricamento delle librerie.
-
Si noti che non si può avere denominatori di librerie duplicati nella stessa tabella. Ma è comunque possibile avere gli stessi denominatori di libreria sia nella tabella di librerie di simboli globale che in quella specifica del progetto.
-
La voce nella tabella specifica del progetto avrà la precedenza sulla corrispondente presente nella tabella globale in caso di identificativi identici.
-
Quando le voci sono definite nella tabella specifica del progetto, un file sym-lib-table contenente le voci verrà scritto nella cartella del file di progetto aperto in quel momento.
Sostituzione delle variabili ambiente
Una delle più potenti caratteristiche della tabella delle librerie di simboli è la sostituzione delle variabili ambientali. Ciò permette di inserire i percorsi personalizzati di dove le librerie di simboli sono memorizzate in variabili ambiente. La sostituzione delle variabili ambiente è supportata usando la sintassi $\{NOME_VAR_AMB\} nel percorso della libreria.
Per impostazione prefefinita, durante l’esecuzione KiCad difinisce due variabili ambiente:
-
la variabile ambiente KIPRJMOD che punta sempre alla cartella del progetto aperto correntemente. KIPRJMOD non può essere modificata.
-
la variabile ambiente KICAD_SYMBOL_DIR. Questa punta alla posizione dove sono memorizzate le librerie di simboli predefinite preinstallate con KiCad.
È possibile passare sopra a KICAD_SYMBOL_DIR definendola in Preferenze / Configura percorsi, menu che permette di sostituire le proprie librerie a alle librerie di simboli predefinite di KiCad.
KIPRJMOD permette di memorizzare le librerie nel percorso del progetto senza dover definire il percorso assoluto (che non è sempre conosciuto) per la libreria nella tabella librerie simboli specifica del progetto.
Modelli di utilizzo
Le librerie di simboli si possono definire sia globalmente che specificatamente al progetto attualmente caricato. Le librerie di simboli definite nella tabella globale dell’utente sono sempre disponibili e vengono memorizzate nel file sym-lib-table nella cartella utente. La tabella delle librerie di simboli specifica del progetto è attiva solamente per il file progetto aperto al momento.
Ci sono vantaggi e svantaggi per ogni metodo. Definire tutte le librerie nella tabella globale significa che queste saranno sempre disponibili alla bisogna. Lo svantaggio di ciò è aumenterà che il tempo di caricamento.
Definire tutte le librerie di simboli su base specifica del progetto significa che si avranno solamente le librerie necessarie per quel progetto e ciò diminuirà il tempo di caricamento dei simboli. Lo svantaggio è che sarà sempre necessario ricordarsi di aggiungere ogni libreria di simboli necessaria per ogni progetto.
Uno schema di utilizzo potrebbe essere quello di definire le librerie di uso comune a livello globale e le librerie richieste solo per il progetto nella tabella della libreria specifica del progetto.
Rimappatura dei vecchi progetti
Quando si carica uno schema creato prima dell’implementazione della tabella delle librerie di simboli, Eeschema cercherà di rimappare i collegamenti alle librerie di simboli presenti nello schema ai simboli nella tabella librerie appropriati. Il successo di questo processo dipende da diversi fattori:
-
le librerie originali usate nello schema sono ancora disponibili e invariate da quando il simbolo è stato aggiunto allo schema.
-
tutte le operazioni di salvataggio sono state eseguite quando sono state rilevate per creare una libreria di salvataggio o mantenere aggiornata la libreria di salvataggio esistente.
-
l’integrità della libreria cache dei simboli del progetto non è stata danneggiata.
La rimappatura eseguirà un salvataggio di tutti i file che vengono modificati durante l’operazione, nella cartella di salvataggio all’interno della cartella del progetto. Effettuare sempre un salvataggio del progetto prima di rimappare, (N.d.T. per evitare brutte sorprese) nel caso in cui qualcosa vada storto. |
L’operazione di recupero viene eseguita anche se è stata disabilitata per garantire che i simboli corretti siano disponibili per la rimappatura. Non annullare questa operazione o la rimappatura non riuscirà a rimappare correttamente i simboli degli schemi. Eventuali collegamenti a simboli spezzati dovranno essere corretti manualmente. |
Se le librerie originali sono state rimosse e il recupero non è stato eseguito, la cache della libreria può essere utilizzata come libreria di ripristino come ultima risorsa. Copiare la libreria della cache in un nuovo nome file e aggiungere il nuovo file della libreria all’inizio dell’elenco delle librerie utilizzando una versione di Eeschema prima dell’implementazione della tabella della libreria dei simboli. |
Creazione e modifica di schemi elettrici
Introduzione
Uno schema elettrico può essere rappresentato da un foglio singolo ma, se è grande abbastanza, potrà richiedere molti fogli.
Uno schema rappresentato da molti fogli è detto gerarchico, e tutti i fogli di cui è composto (ognuno consistente nel proprio file) costituiscono un progetto Eeschema. La gestione di schemi elettrici gerarchici verrà descritta nel capitolo Schemi elettrici gerarchici.
Considerazioni generali
Uno schema elettrico progettato con Eeschema è più di una semplice rappresentazione grafica di un dispositivo elettronico. Esso normalmente è il punto di ingresso di una catena di sviluppo che permette:
-
Il controllo di validità rispetto ad una serie di regole (Controllo Regole Elettriche (ERC)) per il rilevamento di errori e omissioni.
-
La generazione automatica della distinta materiali.
-
La generazione di una netlist per software di simulazione tipo SPICE.
-
La creazione di netlist per il trasferimento delle informazioni nella progettazione di circuiti stampati.
Uno schema elettrico consiste principalmente di simboli, fili, etichette, giunzioni, porte bus e di alimentazione. Per chiarezza, negli schemi elettrici, è possibile inserire elementi puramente grafici come elementi bus, commenti, e polilinee.
La catena di sviluppo
I simboli vengono aggiunti allo schema elettrico da librerie di simboli. Dopo che lo schema è stato ultimato, viene generata una netlist, che viene in seguito usata per importare l’insieme delle connessioni e delle impronte in PcbNew.
Modifica e inserimento simboli
Trova e piazza un simbolo
Per caricare un simbolo nello schema elettrico si può usare l’icona . Una finestra di dialogo permette di battere il nome del simbolo da caricare.
La finestra di dialogo di scelta del simbolo filtrerà i simboli per nome, parolachiave, e descrizione secondo quanto si inserirà nel campo di ricerca. Filtri avanzati possono essere usati semplicemente digitandoli:
-
Caratteri jolly: usare i caratteri
?
e*
rispettivamente per significarequalsiasi carattere'' e
qualsiasi carattere in qualsiasi numero''. -
Relazionali: se la descrizione di un componente di libreria o parola chiave contiene un marcatore del formato
chiave:123'', è possibile corrispondere relativamente a quello battendo
chiave>123'' (maggiore di), ``chiave<123'' (minore di), ecc. I numeri possono includere uno dei seguenti suffissi indipendenti da maiuscole o minuscole:p
n
u
m
k
meg
g
t
10-12
10-9
10-6
10-3
103
106
109
1012
ki
mi
gi
ti
210
220
230
240
-
Espressioni regolari: se si ha familiarità con le espressioni regolari, si possono usare anch’esse. Il tipo di espressione regolare usato è di stile espressione regolare avanzato dei wxWidgets, che è simile alle espressioni regolari Perl.
Prima di piazzare il simbolo nello schema elettrico, è possibile ruotarlo, renderlo speculare e modificarne i campi, sia usando i comandi da tastiera che tramite il menu contestuale che esce con il tasto destro del mouse. Tutto ciò può essere effettuato ugualmente anche successivamente al piazzamento.
Ecco un simbolo durante il piazzamento:
Porte di alimentazione
Una porta di alimentazione è un simbolo (i simboli sono raggruppati nella libreria power''), in modo tale che possano essere piazzati usando la finestra di selezione dei componenti. Comunque, dato che il piazzamento di questi simboli è frequente, è disponibile anche l’icona strumento . Questo strumento è del tutto simile all’inserimento simboli, eccetto per il fatto che la ricerca viene effettuata già direttamente nella libreria
power''.
Modifica di simboli (piazzati)
Ci sono due modi per modificare un simbolo:
-
La modifica del simbolo stesso: posizione, orientamento, selezione unità di un simbolo multi-unità.
-
La modifica di uno dei campi del simbolo: riferimento, valore, impronta, ecc.
Quando un simbolo è stato appena piazzato, si può doverne modificarne i valori (in particolare per le resistenze, condensatori, ecc.), mentre non serve assegnare un numero di riferimento direttamente, o selezionare l’unità (eccetto per simboli con unità bloccate, che devono essere assegnate manualmente). Ciò può essere svolto automaticamente dalla funzione di annotazione.
Modifica di un simbolo
Per modificare delle caratteristiche di un simbolo, posizionare il puntatore sul simbolo e fare:
-
Fare doppio clic sul simbolo per aprire la finestra di dialogo di modifica.
-
Clic destro per aprire il menu contestuale e usare uno dei comandi: sposta, orienta, modifica, cancella, ecc.
Modifiche dei campi di testo
Si possono modificare i riferimenti, valori, posizioni, orientamenti, dimensioni del testo e visibilità dei campi:
-
Doppio clic sul campo testo per modificarlo.
-
Clic destro per aprire il menu contestuale e usare uno de comandi: sposta, ruota, modifica, cancella, ecc.
Per ottenere ulteriori opzioni, o per creare altri campi, doppio clic sul simbolo per aprire la finestra di dialogo delle proprietà del simbolo.
Ogni campo può essere visibile o nascosto, e mostrato orizzontalmente o verticalmente. La posizione mostrata è sempre indicata per un simbolo mostrato normalmente (nessuna rotazione o ribaltamento speculare) ed è relativa al punto di ancoraggio del simbolo.
L’opzione ``Reimposta ai valori predefiniti di libreria'' imposta il simbolo all’orientamento originale, e reimposta le opzioni, dimensione e posizione di ogni campo. Comunque, i campi testo non vengono modificati dato che in questo modo si potrebbe rovinare lo schema elettrico.
Fili, Bus, Etichette, Porte di alimentazione
Introduzione
Tutti questi elementi di disegno possono essere piazzati anche con gli strumenti presenti nella barra verticale destra.
Questi elementi sono:
-
Fili: le connessioni più usate tra simboli.
-
Bus: per connettere graficamente le etichette di bus
-
Polilinee: per la grafica.
-
Giunzioni: per creare connessioni tra fili o bus che si incrociano.
-
Elementi bus: per mostrare connessioni tra fili e bus.
-
Etichette: per etichettare o per creare connessioni.
-
Etichette globali: per le connessioni tra fogli.
-
Testi: per commenti e annotazioni.
-
Segnalazioni "non connesso": per terminare un piedino che non necessita di alcuna connessione.
-
Fogli gerarchici, e i loro piedini di connessione.
Connessioni (fili ed etichette)
Ci sono due metodi per instaurare connessioni:
-
Fili tra pin.
-
Etichette.
La figura seguente mostra i due metodi:
Nota 1:
Il punto di “contatto” di una etichetta è l’angolo in basso a sinistra della prima lettera dell’etichetta. Questo punto viene mostrato con un piccolo quadratino se non connesso.
Questo punto deve perciò essere in contatto con il filo, o essere sovrapposto alla fine di un piedino in modo che l’etichetta venga visualizzata come connessa.
Nota 2:
Per stabilire una connessione, un segmento di filo deve essere connesso ai suoi capi ad un altro segmento o a un piedino.
Se c’è una sovrapposizione (se un filo passa sopra un pin, ma senza essere connesso alla fine del piedino) non c’è connessione.
Nota 3:
I fili che si incrociano non sono implicitamente connessi. È necessario attaccarli assieme con un punto di giunzione se si vuole proprio stabilire una connessione.
La figura precedente (fili connessi al connettore DB25FEMALE, piedini 22, 21, 20, 19) mostra un esempio di connessione usando un simbolo di giunzione.
Nota 4:
Se due diverse etichette vengono piazzate sullo stesso filo, queste vengono connesse assieme e diventano equivalenti: tutti gli altri elementi connessi ad una o l’altra etichetta sono connessi a tutte.
Connessioni (Bus)
Nello schema elettrico seguente, molti piedini sono connessi a dei bus.
Membri di bus
Dal punto di vista dello schema elettrico, un bus è un insieme di segnali che iniziano con un prefisso comune e finiscono con un numero. Per esempio, PCA0, PCA1, e PCA2 sono membri del bus PCA.
Il bus completo si chiama PCA[N..m], dove N e m sono il primo e l’ultimo numero di filo di questo bus. Perciò se PCA possiede 20 membri da 0 a 19, il bus completo è denominato PCA[0..19]. Un inseme di segnali come PCA0, PCA1, PCA2, WRITE, READ non possono essere contenuti in un bus.
Connessioni tra membri di bus
Piedini connessi tra gli stessi membri di un bus devono essere connessi da etichette. Non è possibile connettere un piedino direttamente ad un bus; questo tipo di connessione sarà ignorata da Eeschema.
Nell’esempio sopra, le connessioni vengono effettuate dalle etichette piazzate sui fili connessi ai piedini. Le voci di bus (segmenti di filo a 45 gradi) sono solo elementi grafici, e non sono necessarie per formare connessioni logiche.
In effetti, usando il comando di ripetizione (tasto Ins), le connessioni possono essere eseguite molto velocemente nel modo seguente, se i piedini del componente sono allineati in ordine incrementale (una pratica comune in componenti come memorie, microprocessori, ecc.):
-
Piazzare la prima etichetta (per esempio PCA0)
-
Usando il tasto di ripetizione quanto desidetato per piazzare membri. Eeschema creerà automaticamente le etichette successive (PCA1, PCA2…) allineate verticalmente, teoricamente nella esatta posizione degli altri piedini.
-
Disegnare il filo sotto la prima etichetta. Usare poi il comando di ripetizione per piazzare gli altri fili sotto le etichette.
-
Se necessario, piazzare le voci di bus allo stesso modo (piazzare la prima voce, poi usare il tasto di ripetizione).
Nel menu Preferenze/Opzioni, è possibile impostare i parametri di ripetizione:
|
Connessioni globali tra bus
Si potrebbe dover creare delle connessioni tra bus, in modo da collegare due bus con nomi differenti, o nel caso di gerarchie, creare connessioni tra fogli diversi. È possibile creare queste connessioni nel modo seguente.
I bus PCA [0..15], ADR [0..7] e BUS [5..10] sono connessi assieme (si noti la giunzione qui dato che i fili del bus verticale si attaccano nel mezzo del segmento di bus orizzontale).
Più precisamente, i membri corrispondenti sono connessi assieme: PCA0 e ADR0 sono collegati, (così come PCA1 e ADR1 fino a PCA7 e ADR7).
Per di più, PCA5, BUS5 e ADR5 sono connessi (così come PCA6, BUS6 e ADR6 e come PCA7, BUS7 e ADR7).
PCA8 e BUS8 sono anch’essi connessi (così come PCA9 e BUS9, PCA10 e BUS10)
Connessioni di alimentazione
Quando i piedini di alimentazione dei simboli sono visibili, devono essere connessi, come ogni altro segnale.
I simboli come le porte e flip-flop possono avere piedini di alimentazione invisibili. Bisogna fare attenzione con questi perché:
-
È impossibile connettere i fili, a causa della loro invisibilità.
-
Non si conoscono i loro nomi.
Ed inoltre, sarebbe una cattiva idea renderli visibili e collegarli come gli altri piedini, dato che lo schema elettrico diverrebbe illeggibile e non in conformità con le usuali convenzioni.
Se si vuole forzare la visualizzazione di questi piedini di alimentazione invisibili, bisogna selezionare l’opzione ``Mostra piedini nascosti'' nella finestra di dialogo Preferenze/Opzioni del menu principale, o tramite l’icona presente sulla barra (opzioni) strumenti sulla sinistra. |
Eeschema connette automaticamente tutti i piedini di alimentazione nascosti che posseggono stesso nome al collegamento (net) di alimentazione di nome corrispondente. Potrebbe rendersi necessario attaccare assieme collegamenti di alimentazione con nomi diversi (per esempio, "GND" nei componenti TTL e "VSS" in quelli in tecnologia MOS): si usino le porte di alimentazione a questo scopo.
Non è raccomandabile usare le etichette per le connessioni di alimentazione. Queste hanno solo ambito di connessione “locale”, e non connetterebbero i piedini di alimentazione nascosti.
La figura sottostante mostra un esempio di connessioni di porte di alimentazione.
In questo esempio, la massa (GND) è connessa alla porta di alimentazione VSS e la porta VCC è connessa a VDD.
Due simboli PWR_FLAG sono visibili. Essi indicano che le due porte di alimentazione VCC e GND sono realmente connesse ad una sorgente di alimentazione. Senza queste due segnalazioni, lo strumento ERC avrebbe diagnosticato: Attenzione: porta di alimentazione non alimentata.
Tutti questi simboli si trovano della libreria di simboli ``power''.
Indicatore ``Non connesso''
Questi simboli sono molto utili per evitare avvertimenti ERC indesiderati. Il controllo regole elettriche assicura che nessuna connessione venga accidentalmente lasciata sconnessa.
Se i piedini devono veramente essere lasciati sconnessi, è necessario piazzare un indicatore di “non connesso” (strumento su questi piedini. Questi simboli non hanno influenza sulla netlist generata.
Complementi grafici
Commenti testuali
Può essere utile (alla comprensione dello schema elettrico) piazzare annotazioni in forma di campi o riquadri di testo. I campi testo (strumento ) e poli-linee (strumento ) servono a questo scopo, al contrario di etichette e fili che sono elementi di connessione.
Ecco un esempio di riquadro con elemento testuale di commento.
Blocco del titolo del foglio
Il blocco del titolo viene modificato con lo strumento .
Il numero di foglio (Sheet X/Y) viene aggiornato automaticamente.
Recupero di simboli dalla cache
Come impostazione predefinita, Eeschema carica i simboli dalle librerie del progetto, secondo le impostazioni dei percorsi e l’ordine delle librerie. Ciò può provocare dei problemi durante il caricamento di progetti molto vecchi: se i simboli nella libreria sono cambiati o sono stati rimossi o la libreria non esiste più da quando erano stati usati nel progetto, i simboli presenti nel progetto vengono automaticamente rimpiazzati dalle corrispondenti nuove versioni. Le nuove versioni potrebbero allinearsi correttamente o potrebbero essere orientati diversamente, generando così uno schema errato.
Quando un progetto viene salvato, viene salvata anche una libreria archivio (cache), contenente i simboli usati nel progetto, con esso. Ciò consente di distribuire il progetto senza tutte le librerie. Se si carica un progetto i cui simboli sono presenti sia nella libreria archivio (cache) che nelle le librerie di sistema, Eeschema scansionerà le librerie per rilevare eventuali conflitti. Se vengono rilevati conflitti questi verranno elencati nella finestra di dialogo seguente:
Si può vedere in questo esempio che il progetto in origine aveva usato un diodo con il catodo verso l’alto, ma ora la libreria ne contiene uno con il catodo verso il basso. Questo cambiamento può danneggiare il progetto! Premendo OK qui farà in modo di salvare il vecchio simbolo in una speciale libreria di ``recupero'', e tutti i componenti che usano quel simbolo verranno rinominati per evitare conflitti di nome.
Se si preme annulla, nessun recupero verrà effettuato, perciò Eeschema caricherà i nuovi componenti come impostazione predefinita. Se si salva lo schema a questo punto, la cache verrà sovrascritta e i vecchi simboli non saranno più recuperabili. Se si è salvato lo schema, è ancora possibile tornare indietro ed eseguire ancora la funzione di recupero: scegliere ``Recupera vecchi componenti'' nel menu strumenti per richiamare nuovamente la finestra di dialogo.
Se si preferisce non visualizzare questa finestra di dialogo, è possibile premere ``Non mostrare più''. L’impostazione predefinita non farà nulla e permetterà di caricare i nuovi componenti. Questa opzione può essere ripristinata nelle preferenze delle librerie.
Schemi elettrici gerarchici
Introduzione
Una rappresentazione gerarchica è in genere una buona soluzione al problema dei progetti consistenti in più di qualche foglio. Se si vuole gestire questa tipologia di progetti, è necessario:
-
Usare fogli grandi, con il risultato di avere poi problemi di stampa e di gestione dei fogli.
-
Usare diversi fogli gerarchici, che portano ad una struttura gerarchica.
Lo schema elettrico completo consisterà quindi in un foglio principale, chiamato foglio radice, e dei sotto-fogli costituenti la gerarchia. Inoltre, una attenta suddivisione del progetto in fogli separati migliora la sua leggibilità.
Dal foglio radice, si possono trovare tutti i sottofogli. La gestione gerarchica degli schemi elettrici è molto facile con Eeschema, grazie ad un "esploratore gerarchico" integrato accessibile tramite l’icona sulla barra strumenti in cima.
Ci sono due tipi di gerarchie che possono esistere simultaneamente: la prima è stata appena menzionata ed è di uso generale. La seconda consiste nella creazione simboli nella libreria che appaiono come simboli tradizionali nello schema, ma che effettivamente consistono a loro volta di uno schema elettrico che descrive la loro struttura interna.
Questo secondo tipo viene usato per sviluppatr circuiti integrati, dato che in questo caso è necessario usare funzioni di libreria nello schema che si sta progettando.
Eeschema attualmente non gestisce questo secondo caso.
Una gerarchia può essere:
-
semplice: un dato foglio è usato solo una volta
-
complessa: un dato foglio viene usato più di una volta (istanze multiple)
-
piatta: che consiste in una gerarchia semplice, ma le connessioni tra fogli non sono disegnate.
Eeschema può gestire tutte queste gerarchie.
La creazione di uno schema elettrico gerarchico è semplice, l’intera gerarchia viene gestita partendo dallo schema radice, come se si trattasse di un unico schema elettrico.
Due passi importanti da comprendere sono:
-
Come creare un sotto-foglio.
-
Come creare connessioni elettriche tra sotto-fogli.
Navigazione nella gerarchia
Esplorare i sotto-fogli è molto semplice grazie allo strumento di esplorazione accessibile tramite il pulsante presente sulla barra strumenti in cima.
Ogni foglio è raggiungibile facendo clic sul suo nome. Per accedere velocemente, clic destro su un nome foglio, e scegliere Accedi al foglio o fare doppio clic all’interno dei limiti del foglio.
Per uscire dal foglio corrente sul foglio genitore, fare clic con il tasto destro del mouse ovunque sullo schema in cui non vi siano oggetti e selezionare la voce del menu di scelta rapida ``Lascia il foglio'' o premere Alt+Backspace.
Locale, etichette gerarchiche e globali
Proprietà
Le etichette locali, strumento , sono simboli di connessione solo dentro un foglio. Le etichette gerarchiche (strumento ) sono simboli di connessione solo dentro un foglio ed ad un piedino gerarchico piazzato nel foglio genitore.
Le etichette globali (strumento ) sono simboli di connessione attraverso tutta la gerarchia. I piedini di potenza (tipo power in e power out) invisibili sono come le etichette globali perché sono visti come connessi tra loro attraverso tutta la gerarchia.
Dentro una gerarchia (semplice o complessa) si può usare sia etichette gerarchiche, assieme o in alternativa a, etichette globali. |
Riepilogo della creazione della gerarchia
Si deve:
-
Piazzare nel foglio radice un simbolo gerarchico chiamato "simbolo foglio".
-
Inserire nel nuovo schema (sotto-foglio) con il navigatore e disegnarlo, come ogni altro schema elettrico.
-
Disegnare le connessioni elettriche tra due schemi piazzando etichette globali (hlabel) nel nuovo schema (sotto-foglio), ed etichette con lo stesso nome nel foglio radice, queste ultime conosciute anche come EtichetteFoglio. Queste EtichetteFoglio saranno connesse al simbolo del foglio, del foglio radice, ad altri elementi dello schema come normali pin di simboli.
Simbolo di foglio
Disegna un rettangolo definito dai due punti diagonali che simboleggiano il sotto-foglio.
La dimensione di questo rettangolo deve consentire di piazzare in seguito etichette particolari, piedini gerarchici, corrispondenti alle etichette globali (hlabel) nel sotto-foglio.
Queste etichette sono simili a normali piedini di simboli. Selezionare lo strumento .
Fare clic per piazzare l’angolo sinistro alto del rettangolo. Fare clic nuovamente per piazzare l’angolo destro basso, verificando di creare un rettangolo sufficientemente dimensionato.
Verrà richiesto di inserire un nome file e un nome foglio per questo sotto-foglio (in modo da poter raggiungere lo schema corrispondente, usando il navigatore della gerarchia).
Bisogna per lo meno dare un nome file. Se non c’è un nome foglio, il nome file verrà usato come nome foglio (solitamente si lascia così).
Connessioni - piedini gerarchici
Qui si devono creano i punti di connessione (punti gerarchici) per il simbolo appena creato.
Questi punti di connessione sono simili ai piedini di normali simboli, ma con la possibilità di connettere un bus completo con solo un punto di connessione.
Ci sono due modi per fare ciò:
-
Piazzare i diversi pin prima di disegnare il sotto-foglio (disposizione manuale).
-
Piazzare i diversi pin dopo aver disegnato il sotto-foglio, e le etichette globali (disposizione semi-automatica).
La seconda soluzione è la preferibile.
Disposizione manuale:
-
Selezionare lo strumento .
-
Fare clic sul simbolo gerarchico dove si vuole posizionare il pin.
Si osservi sotto un esempio di creazione di un pin gerarchico di nome "CONNECTION":
Si può definire il nome, dimensione e direzione del pin durante la creazione o in seguito, facendo clic destro del mouse e selezionando "Modifica pin foglio" nel menu a scomparsa.
Dentro il foglio, una etichetta gerarchica deve essere preimpostata con lo stesso nome del pin gerarchico. Il lavoro di verifica della corrispondenza di questi nomi, deve essere effettuato manualmente, e questa è la ragione per cui il secondo metodo, sotto, è da preferire.
Piazzamento automatico:
-
Selezionare lo strumento .
-
Fare clic sul simbolo gerarchico da dove si vuole importare i pin corrispondenti alle etichette globali piazzate nello schema corrispondente. Apparirà un pin gerarchico, se esiste una nuova etichetta globale, cioè non corrispondente ad un pin già piazzato.
-
Fare clic dove si vuole piazzare questo piedino.
Tutti i pin necessari possono perciò essere piazzati velocemente e senza errori. Il loro aspetto è in accordo con le etichette globali corrispondenti.
Connessioni - etichette gerarchiche
Ogni pin del simbolo del foglio appena creato, deve corrispondere ad una etichetta chiamata etichetta gerarchica nel sotto-foglio. Le etichette gerarhiche sono simili alle etichette, ma forniscono connessioni tra i sotto-fogli ed il foglio radice. La rappresentazione grafica delle due etichette complementari (pin ed etichetta gerarchica) è simile. La creazione delle etichette gerarchiche viene fatta con lo strumento .
Di seguito un esempio di foglio radice:
Si noti il pin VCC_PIC, collegato al connettore JP1.
Ecco le connessioni corrispondenti nel sotto-foglio:
Si troverà ancora, le due corrispondenti etichette gerarchiche, che forniscono connessione tra i due fogli gerarchici.
Si può usare etichette gerarchiche e pin gerarchici per connettere due bus, secondo la sintassi (Bus [N. .m]) descritta in precedenza. |
Etichette, etichette gerarchiche, etichette globali e pin di alimentazione invisibili
Ecco alcune note sulle varie modalità di fornire connessioni, a parte le connessioni tramite i semplici fili disegnati.
Etichette semplici
Le etichette semplici hanno una capacità di connessione locale, cioè limitata al foglio dello schema dove sono collocate. Ciò è dovuto al fatto che:
-
Ogni foglio ha un numero di foglio.
-
Questo numero di foglio è associato ad una etichetta.
Perciò, se si piazza l’etichetta "TOTO" nel foglio n° 3, in effetti l’etichetta vera è "TOTO_3". Se si piazza anche un’etichetta "TOTO" nel foglio n° 1 (foglio radice) si piazza in effetti un’etichetta di nome "TOTO_1", differente da "TOTO_3". Ciò si verifica sempre, anche quando c’è un solo foglio.
Etichette gerarchiche
Quanto detto per le etichette semplici risulta vero anche per le etichette gerarchiche.
Perciò nello stesso foglio, un’etichetta gerarchica "TOTO" viene considerata connessa ad un’etichetta locale "TOTO", ma non connessa ad un’etichetta gerarchica o un’etichetta di nome "TOTO" in un altro foglio.
Comunque, un’etichetta gerarchica viene considerata connessa al corrispondente simbolo di piedino foglio nel simbolo gerarchico piazzato nel foglio genitore.
Pin di alimentazione invisibili
Si era visto che i piedini di alimentazione invisibili sono connessi assieme se posseggono lo stesso nome. Perciò tutti i piedini di alimentazione dichiarati ``Piedini di alimentazione invisibili'' e chiamati VCC sono interconnessi e formano la connessione VCC, ma solo nel foglio dove essi siano stati piazzati.
Ciò significa che se si piazza un’etichetta VCC in un sotto-foglio, essa non verrà connessa ai piedini VCC, dato che questa etichetta è in realtà VCC_n, dove n è il numero di foglio.
Se si desidera che questa etichetta VCC sia veramente connessa alla VCC dell’intero foglio, essa dovrà essere esplicitamente connessa ad un piedino di alimentazione invisibile, grazie ad una porta di alimentazione VCC.
Etichette globali
Le etichette globali che posseggono un nome identico sono connesse attraverso l’intera gerarchia.
(etichette di alimentazione come vcc … sono etichette globali)
Gerarchia complessa
Ecco un esempio. Lo stesso schema viene usato due volte (due istanze). I due fogli condividono lo stesso schema perché il nome del file è lo stesso per i due fogli (``other_sheet.sch''). Ma i nomi dei fogli devono essere univoci.
Gerarchia piatta
Si può creare un progetto usando molti fogli, senza creare connessioni tra questi fogli (gerarchia piatta) se le seguenti regole vengono rispettate:
-
Creare un foglio radice contenente gli altri fogli, che agisce come un collegamento tra gli altri fogli.
-
Non sono necessarie connessioni esplicite.
-
Usare etichette globali invece di etichette gerarchiche in tutti i fogli.
Ecco un esempio di un foglio radice.
Ecco le due pagine, connesse tramite etichette globali.
Ecco il pic_programmer.sch.
Ecco il pic_sockets.sch.
Guardare le etichette globali.
Strumento di annotazione simboli
Introduzione
Lo strumento di annotazione automatica permette di assegnare automaticamente un riferimento a simboli nello schema. Per componenti multipli, assegna un suffisso multi-unità per minimizzare il numero di questi simboli. Lo strumento di annotazione automatica è accessibile tramite l’icona . Qui sotto si può osservare la sua finestra principale.
Schemi di annotazione disponibili:
-
Annota tutti i simboli (reimpostando le opzioni di annotazione esistenti)
-
Annota tutti i simboli, ma non scambiare nessuna unità multipla annotata precedentemente.
-
Annota solo i simboli che al momento non sono annotati. I simboli che non sono annotati avranno un designatore che termina con un '?' carattere.
-
Annota l’intera gerarchia (usa l’opzione schema intero).
-
Annota solo il foglio attuale (usa l’opzione solo pagina corrente).
L’opzione ``Reimposta, ma non scambiare nessuna parte multipla annotata'' mantiene tutte le associazioni esistenti tra simboli con più unità. Per esempio, se si ha U2A e U2B, queste possono essere riannotate rispettivamente a U1A e U1B, ma non saranno mai riannotate a U1A e U2A, né a U2B e U2A. Utile se ci si vuole assicurare che i raggruppamenti di pin vengano mantenuti.
La scelta dell’ordine di annotazione fornisce il metodo usato per impostare il numero di riferimento dentro ogni foglio della gerarchia.
Ad eccezione di casi particolari, l’annotazione automatica si applica all’intero progetto (tutti i fogli) e ad i nuovi componenti, se non si vuole modificare le annotazioni precedenti.
La scelta annotazione fornisce il metodo usato per calcolare il riferimento:
-
Usa il primo numero libero nello schema: i componenti vengono annotati da 1 (per ogni prefisso di riferimento). Se esiste una precedente annotazione, verranno usati i numeri non ancora in uso.
-
Comincia dal foglio numero*100 e usa il primo numero libero: l’annotazione comincia da 101 per il foglio numero 1, da 201 per il foglio numero 2, ecc. Se ci sono più di 99 elementi con lo stesso prefisso di riferimento (U, R) nel foglio 1, lo strumento di annotazione usa il numero 200 e più, e l’annotazione per il foglio 2 comincerà dal prossimo numero libero.
-
Comincia dal foglio numero*1000 e usa il primo numero libero. L’annotazione comincia da 1001 per il foglio 1, 2001 per il foglio 2.
Alcuni esempi
Ordine di annotazione
Questo esempio mostra 5 elementi piazzati, ma non annotati.
Dopo che lo strumento di annotazione viene eseguito, viene ottenuto il seguente risultato.
Ordinato per posizione X.
Ordinato per posizione Y.
Si può osservare che quattro porte 74LS00 sono state distribuite nel contenitore U1, e che la quinta 74LS00 è stata assegnata al successivo U2.
Scelte di annotazione
Ecco un’annotazione nel foglio 2 dove è stata impostata l’opzione usa il primo numero libero nello schema.
L’optione comincia dal foglio numero*100 e usa il prino numero libero produce il seguente risultato.
L’opzione comincia dal numero*1000 e usa il primo numero libero produce il seguente risultato.
Verifica della progettazione con il Controllo Regole Elettriche (ERC)
Introduzione
Lo strumento per il controllo regole elettriche (ERC) esegue un controllo automatico dello schema elettrico. L’ERC segnala gli errori presenti nel foglio, come piedini sconnessi, simboli gerarchici sconnessi, uscite in corto-circuito, ecc. Naturalmente, un controllo automatico non è infallibile, ed il software che rende possibile la rilevazione di tutti gli errori di progettazione non è completo al 100%. Un tale controllo è molto utile, perché permette di rilevare molte sviste e piccoli errori.
In pratica tutti gli errori rilevati devono essere controllati e corretti prima di poter procedere. La qualità dell’ERC è direttamente proporzionale alla cura presa nel dichiarare le proprietà elettriche dei piedini durante la creazione delle librerie. I risultati dell’ERC vengono riportati come errori'' o
avvertimenti''.
Come usare l’ERC
l’ERC può essere avviato facendo clic sull’icona .
Gli avvertimenti vengono piazzati sugli elementi dello schema elettrico che provocano gli errori ERC (piedini o etichette).
|
È possibile anche cancellare i marcatori di errore dalla finestra di dialogo.
Esempio di ERC
Qui si può osservare quattro errori:
-
Due uscite sono state erroneamente collegate assieme (freccia rossa).
-
Due ingressi sono stati lasciati sconnessi (freccia verde).
-
C’è un errore su un ingresso di alimentazione invisibile, manca la segnalazione di alimentazione (freccia verde in cima).
Mostrare i messaggi diagnostici
Facendo clic destro su un marcatore si apre un menu che permette di accedere alla finestra diagnostica del marcatore ERC.
e se si fa clic su 'Info errore marcatore' si ottiene una descrizione dell’errore.
Piedini e segnalazioni di alimentazione
Succede spesso di avere una segnalazione o un errore su un piedino di alimentazione, anche se sembra tutto normale. Si osservi l’esempio sovrastante. Ciò succede perché, in molti progetti, l’alimentazione viene fornita da connettori che non sono sorgenti di alimentazione (diversamente dall’uscita di un regolatore, che viene dichiarata come sorgente di alimentazione).
L’ERC perciò non individuerà nessun piedino di alimentazione che controlla questo filo e lo dichiarerà non alimentato da nessuna sorgente di alimentazione.
Per evitare questo avvertimento è necessario piazzare un ``PWR_FLAG'' su questa porta. Si osservi il seguente esempio:
Il marcatore d’errore allora sparirà.
Il più delle volte, un PWR_FLAG deve essere connesso a GND, dato che normalmente i regolatori hanno uscite dichiarate come uscite di alimentazione ma i piedini di massa non sono mai dichiarati in tal modo (l’attributo normale è invece come ingresso di alimentazione), perciò le masse non appaiono mai connesse ad una sorgente di alimentazione senza un pwr_flag.
Configurazione
Il pannello delle opzioni permette di configurare le regole di connessione per definire le condizioni elettriche per il controllo di errori e avvertimenti.
Le regole possono essere cambiate facendo clic sul riquadro desiderato della matrice, in modo da selezionare la scelta desiderata: normale, avvertimento, errore.
File rapporto ERC
Un file di rapporto ERC può essere generato e salvato selezionando l’opzione “Scrivi rapporto ERC”. L’estensione del file per i file di rapporto ERC è “.erc”. Ecco un esempio di file rapporto ERC:
ERC control (4/1/1997-14:16:4) ***** Sheet 1 (INTERFACE UNIVERSAL) ERC: Warning Pin input Unconnected @ 8.450, 2.350 ERC: Warning passive Pin Unconnected @ 8.450, 1.950 ERC: Warning: BiDir Pin connected to power Pin (Net 6) @ 10.100, 3.300 ERC: Warning: Power Pin connected to BiDir Pin (Net 6) @ 4.950, 1.400 >> Errors ERC: 4
Creazione di una netlist
Panoramica
Una netlist (elenco di net) è un file che descrive le connessioni elettriche (net) tra simboli. Nel file di netlist si possono trovare:
-
L’elenco dei simboli
-
L’elenco delle connessioni (net) tra simboli.
Esistono diversi formati di netlist. A volte, l’elenco simboli e l’elenco dei collegamenti, sono due file separati. La netlist è fondamentale per uso di software di progettazione elettronica, dato che la netlist è anche un mezzo di collegamento con gli altri software di CAD elettronico, come:
-
Software per circuiti stampati.
-
Simulazione di circuiti elettrici e circuiti stampati.
-
Compilatori di CPLD (e di altri chip programmabili).
Eeschema supporta diversi formati di netlist.
-
Formato PCBNEW (circuiti stampati).
-
Formato ORCAD PCB2 (circuiti stampati).
-
Formato CADSTAR (circuiti stampati).
-
Formato Spice, per vari simulatori (di questa famiglia ma il formato Spice viene usato anche da altri simulatori).
Formati di netlist
Selezionare lo strumento per aprire la finestra di dialogo di creazione della netlist.
Selezionato Pcbnew
Selezionato Spice
Usando le diverse schede è possibile selezionare il formato desiderato. Nel formato Spice si può generare netlist sia con nomi di collegamenti (sono più leggibili) o con numeri di collegamento (le vecchie versioni di Spice accettano solo numeri). Facendo clic sul pulsante Netlist, verrà richiesto un nome file per la netlist.
La generazione della netlist può impiegare diversi minuti con schemi elettrici estesi. |
Esempi netlist
In basso si può osservare uno schema che usa la libreria PSPICE:
Esempio di file di netlist PCBNEW:
# Eeschema Netlist Versione 1.0 generato il 21/1/1997-16:51:15 ( (32E35B76 $noname C2 1NF {Lib=C} (1 0) (2 VOUT_1) ) (32CFC454 $noname V2 AC_0.1 {Lib=VSOURCE} (1 N-000003) (2 0) ) (32CFC413 $noname C1 1UF {Lib=C} (1 INPUT_1) (2 N-000003) ) (32CFC337 $noname V1 DC_12V {Lib=VSOURCE} (1 +12V) (2 0) ) (32CFC293 $noname R2 10K {Lib=R} (1 INPUT_1) (2 0) ) (32CFC288 $noname R6 22K {Lib=R} (1 +12V) (2 INPUT_1) ) (32CFC27F $noname R5 22K {Lib=R} (1 +12V) (2 N-000008) ) (32CFC277 $noname R1 10K {Lib=R} (1 N-000008) (2 0) ) (32CFC25A $noname R7 470 {Lib=R} (1 EMET_1) (2 0) ) (32CFC254 $noname R4 1K {Lib=R} (1 +12V) (2 VOUT_1) ) (32CFC24C $noname R3 1K {Lib=R} (1 +12V) (2 N-000006) ) (32CFC230 $noname Q2 Q2N2222 {Lib=NPN} (1 VOUT_1) (2 N-000008) (3 EMET_1) ) (32CFC227 $noname Q1 Q2N2222 {Lib=NPN} (1 N-000006) (2 INPUT_1) (3 EMET_1) ) ) # End
In formato PSPICE, la netlist è la seguente:
* Eeschema Netlist Versione 1.1 (formato Spice) data creazione: 18/6/2008-08:38:03 .model Q2N2222 npn (bf=200) .AC 10 1Meg \*1.2 .DC V1 10 12 0.5 R12 /VOUT N-000003 22K R11 +12V N-000003 100 L1 N-000003 /VOUT 100mH R10 N-000005 N-000004 220 C3 N-000005 0 10uF C2 N-000009 0 1nF R8 N-000004 0 2.2K Q3 /VOUT N-000009 N-000004 N-000004 Q2N2222 V2 N-000008 0 AC 0.1 C1 /VIN N-000008 1UF V1 +12V 0 DC 12V R2 /VIN 0 10K R6 +12V /VIN 22K R5 +12V N-000012 22K R1 N-000012 0 10K R7 N-000007 0 470 R4 +12V N-000009 1K R3 +12V N-000010 1K Q2 N-000009 N-000012 N-000007 N-000007 Q2N2222 Q1 N-000010 /VIN N-000007 N-000007 Q2N2222 .print ac v(vout) .plot ac v(nodes) (-1,5) .end
Note sulla netlist
Precauzioni sul nomi netlist
Molti strumenti software che usano le netlist non accettano spazi nei nomi dei simboli, pin, collegamenti o altri elementi. Si consiglia di evitare sistematicamente l’uso degli spazi nelle etichette, o nei campi nome o valore dei simboli o dei loro piedini per assicurare sempre la piena compatibilità.
Allo stesso modo, i caratteri speciali diversi dalle lettere e numeri possono causare dei problemi. Si noti che questa limitazione non è relativa a Eeschema, ma sui formati di netlist che possono diventare intraducibili verso software che usi i file di netlist.
Netlist PSPICE
Per il simulatore Pspice, è necessario includere alcune linee di comando nella netlist stessa (.PROBE, .AC, ecc.).
Ogni linea di testo inclusa nello schema elettrico che cominci con la parola chiave -pspice o -gnucap sarà inserita (senza la parola chiave) in cima alla netlist.
Ogni linea di testo inclusa nello schema elettrico che cominci con la parola chiave +pspice o +gnucap verrà inserita (senza parola chiave) alla fine della netlist.
Ecco un esempio di testo con molte linee singole e una multilinea:
Per esempio, se si batte il testo seguente (non usate un’etichetta!):
-PSPICE .PROBE
verrà inserita nella netlist una linea .PROBE .
Nell’esempio precedente, tre linee erano state inserite all’inizio della netlist e due alla fine, con questa tecnica.
Se si usano testi multilinea, le parole chiave +pspice o +gnucap sono necessarie solo una volta:
+PSPICE .model NPN NPN .model PNP PNP .lib C:\Program Files\LTC\LTspiceIV\lib\cmp\standard.bjt .backanno
crea le quattro linee:
.model NPN NPN .model PNP PNP .lib C:\Program Files\LTC\LTspiceIV\lib\cmp\standard.bjt .backanno
Si noti anche che il collegamento GND deve essere chiamato 0 (zero) per Pspice.
Altri formati
Per altri formati di netlist si possono aggiungere convertitori di netlist in forma di plugin. Questi convertitori vengono automaticamente eseguiti da Eeschema. Il capitolo 14 contiene alcune spiegazioni ed esempi di convertitori.
Un convertitore è un file di testo (in formato xsl) ma si possono anche usare altri linguaggi come Python. Quando si usa il formato xsl, uno strumento (xsltproc.exe o xsltproc) legge il file intermedio creato da Eeschema, ed il file convertitore per creare il file in uscita. In questo caso, il file convertitore (un foglio di stile) è molto piccolo e facile da scrivere.
La finestra di dialogo di inizializzazione
Per aggiungere un nuovo plugin di netlist si usa il pulsante Aggiungi plugin.
Ecco la finestra di impostazione del plugin PadsPcb:
L’impostazione richiederà:
-
Un titolo (per esempio, il nome del formato della netlist).
-
Il plugin la lanciare.
Quando la netlist viene generata:
-
Eeschema crea un file intermedio *.tmp, per esempio test.tmp.
-
Eeschema esegue il plugin, il quale legge test.tmp e crea test.net.
Formato a linea di comando
Ecco un esempio, che usa xsltproc.exe come strumento per convertire dei file .xsl, e un file netlist_form_pads-pcb.xsl come foglio di stile di conversione:
f:/kicad/bin/xsltproc.exe -o %O.net f:/kicad/bin/plugins/netlist_form_pads-pcb.xsl %I
Con:
f:/kicad/bin/xsltproc.exe | A tool to read and convert xsl file |
---|---|
-o %O.net |
Output file: %O will define the output file. |
f:/kicad/bin/plugins/netlist_form_pads-pcb.xsl |
File name converter (a sheet style, xsl format). |
%I |
Will be replaced by the intermediate file created by Eeschema (*.tmp). |
Per lo schema elettrico test.sch, la riga di comando sarà:
f:/kicad/bin/xsltproc.exe -o test.net f:/kicad/bin/plugins/netlist_form_pads-pcb.xsl test.tmp.
Convertitore e foglio di stie (plugin)
Questo è un software molto semplice, dato che il suo scopo è esclusivamente di convertire un testo in ingresso (il file di testo intermedio) in un altro file di testo. Inoltre, dal file di testo intermedio, è possibile creare una distinta materiali.
Quando si usa xsltproc come strumento di conversione, viene generato solo il foglio di stile.
Formato file netlist intermedio
Consultare il capitolo 14 per ottenere ulteriori informazioni su xslproc, sulle descrizioni del formato file intermedio, e alcuni esempi di fogli di stile per convertitori.
Traccia e stampa
Introduzione
Si accede ai comandi di stampa e di tracciamento (N.d.T. ovvero una stampa esportata in un formato vettoriale) tramite il file menu.
I formati in uscita supportati sono Postscript, PDF, SVG, DXF e HPGL. È anche possibile mandare la stampa direttamente alla stampante.
Comandi di stampa comuni
- Traccia pagina corrente
-
stampa solo un file solo per il foglio corrente.
- Traccia tutte le pagine
-
permette di tracciare l’intera gerarchia (viene generato un file di stampa per ogni foglio).
Traccia in Postscript
Questo comando permette di creare file in formato Postscritp.
Il nome file è il nome del foglio con estensione .ps. È possibile disabilitare l’opzione "Traccia squadratura e riquadro iscrizioni". È utile se si vuole creare un file postscript per incapsulato (formato .eps) usato spesso per inserire uno schema per esempio in un programma di videoscrittra. La finestra messaggi mostra i nomi (con i percorsi) dei file creati.
Traccia in PDF
Permette di creare file di tracciature usando il formato PDF. Il nome file è in nome del foglio con estensione .pdf .
Traccia in SVG
Permette di creare file di tracciatura usando il formato SVG. Il nome del file è il nome del foglio con estensione .svg .
Traccia in DXF
Permette di creare un file di tracciatura in formato DXF. Il nome del file è il nome del foglio con estensione .dxf .
Traccia in HPGL
Questo comando permette di creare un file HPGL. Per questo formato è possibile impostare:
-
Dimensione pagina.
-
Origine.
-
Dimensione penna (in mm).
La finestra di dialogo di impostazione del plotter appare come questa:
Il nome del file risultante avrà il nome del foglio più estensione .plt .
Selezione dimensione foglio
La dimensione del foglio normalmente viene controllata. In questo caso, verrà usata la dimensione del foglio definita nel menu del blocco del titolo e la scala scelta sarà di 1. Se viene selezionata una diversa dimensione del foglio (A4 con A0, o A con E), la scala viene automaticamente regolata per riempire la pagina.
Regolazioni di posizionamento
Per tutte le dimensioni standard, è possibile regolare la posizione per centrare il più possibile il disegno. Dato che i plotter hanno il punto di origine al centro o nell’angolo in basso a sinistra del foglio, è necessario poter introdurre uno spostamento in maniera tale da permettere una tracciatura regolare.
Parlando in generale:
-
Per plotter con il punto di origine al centro del foglio lo spostamento deve essere negativo e impostato a metà delle dimensioni del foglio.
-
Per plotter con punto di origine nell’angolo in basso a sinistra del foglio lo spostamento deve essere impostato a 0.
Per impostare uno spostamento:
-
Selezionare la dimensione del foglio.
-
Impostare lo spostamento X e Y.
-
Fare clic per accettare lo spostamento.
Stampa su carta
Questo comando, disponibile tramite l’icona , permette di visualizzare e preparare file del progetto per le normali stampanti.
L’opzione “Stampa squadratura e riquadro iscrizioni del foglio" abilita o disabilita la stampa di questi particolari.
L’opzione “Stampa in bianco e nero” imposta la stampante come monocromatica. Questa opzione è in genere necessaria se si usa una stampante laser in bianco e nero, dato che i colori vengono stampati come mezzi-toni e spesso non sono molto leggibili.
Editor librerie di simboli
Informazioni generali sulle librerie di simboli
Un simbolo è un elemento dello schema elettrico che contiene una rappresentazione grafica, connessioni elettriche e campi che definiscono il simbolo stesso. I simboli usati in uno schema elettrico vengono memorizzati nelle librerie di simboli. Eeschema fornisce uno strumento di modifica dei simboli di libreria che permette di creare librerie, aggiungere, eliminare o trasferire simboli tra librerie, esportare simboli su file e importare simboli da file. In breve, lo strumento di modifica delle librerie fornisce un modo semplice per gestire i file delle librerie di simboli.
Panoramica delle librerie di simboli
Una libreria di simboli è composta da uno o più simboli. Generalmente i simboli sono raggruppati per funzione, tipo e/o produttore.
Un simbolo è composto di:
-
Elementi grafici (linee, cerchi, archi, testo, ecc.) che forniscono la definizione del simbolo.
-
I piedini hanno sia proprietà grafiche (linea, clock, inversione, attivo basso, ecc.) che proprietà elettriche (ingresso, uscita, bidirezionale, ecc.) usate dallo strumento di controllo regole elettriche (ERC).
-
Campi come riferimenti, valori, nomi impronte corrispondenti per la progettazione del circuito stampato, ecc.
-
Alias usati per associare a simboli comuni come un 7400 con tutte le sue derivazioni come 74LS00, 74HC00 e 7437. Tutti questi alias condividono lo stesso simbolo di libreria.
La corretta progettazione di simboli richiede:
-
Specificare se il simbolo è formato da più di un’unità.
-
Specificare se il simbolo possiede uno stile corpo alternativo altrimenti detto rappresentazione De Morgan.
-
La progettazione della sua rappresentazione simbolica usando linee, rettangoli, cerchi, poligoni e testo.
-
L’aggiunta di pin definendo con cura l’elemento grafico di ogni pin, il nome, il numero, e le sue proprietà elettriche (ingresso, uscita, tri-state, alimentazione, ecc.).
-
L’aggiunta di un alias per altri simboli che hanno la stessa forma e piedinatura o la rimozione di uno di questi se il simbolo è stato creato da un altro simbolo.
-
L’aggiunta di campi opzionali come il nome dell’impronta usata dal software di progettazione di circuiti stampati e/o la definizione della loro visibilità.
-
La documentazione del simbolo aggiungendo una stringa di descrizione, collegamenti ai datasheet, ecc.
-
Il salvataggio nella libreria scelta.
Panoramica dell’editor dei simboli di libreria
Di seguito si può osservare la finestra principale dell’editor di librerie di simboli. Esso consiste in tre barre degli strumenti che servono a velocizzare l’accesso alle funzioni più comuni, e un’area di visualizzazione/modifica del simbolo. Sulle barre degli strumenti non sono disponibili tutti comandi, ma quelli che mancano sono comunque accessibili tramite i menu.
Barra strumenti principale
La barra degli strumenti principale è collocata tipicamente in cima alla finestra principale, come mostrato sotto, e consiste nei comandi di gestione delle librerie, annullamento e ripetizione delle ultime operazioni, zoom e apertura delle finestre di dialogo delle proprietà dei simboli.
Save the currently selected library. The button will be disabled if no library is currently selected or no changes to the currently selected library have been made. |
|
Select the library to edit. |
|
Delete a symbol from the currently selected library or any library defined by the project if no library is currently selected. |
|
Open the symbol library browser to select the library and symbol to edit. |
|
Create a new symbol. |
|
Load symbol from currently selected library for editing. |
|
Create a new symbol from the currently loaded symbol. |
|
Save the current symbol changes in memory. The library file is not changed. |
|
Import one symbol from a file. |
|
Export the current symbol to a file. |
|
Create a new library file containing the current symbol. Note: new libraries are not automatically added to the project. |
|
Undo last edit. |
|
Redo last undo. |
|
Edit the current symbol properties. |
|
Edit the fields of current symbol. |
|
Test the current symbol for design errors. |
|
Zoom in. |
|
Zoom out. |
|
Refresh display. |
|
Zoom to fit symbol in display. |
|
Select the normal body style. The button is disabled if the current symbol does not have an alternate body style. |
|
Select the alternate body style. The button is disabled if the current symbol does not have an alternate body style. |
|
Show the associated documentation. The button will be disabled if no documentation is defined for the current symbol. |
|
Select the unit to display. The drop down control will be disabled if the current symbol is not derived from multiple units. |
|
Select the alias. The drop down control will be disabled if the current symbol does not have any aliases. |
|
Pin editing: independent editing for pin shape and position for symbols with multiple units and alternate symbols. |
|
Show pin table. |
Barra strumenti elementi
La barra verticale collocata tipicamente sulla destra della finestra principale permette di inserire tutti gli elementi richiesti per la progettazione di un simbolo. La tabella sottostante definisce ogni pulsante della barra.
Select tool. Right-clicking with the select tool opens the context menu for the object under the cursor. Left-clicking with the select tool displays the attributes of the object under the cursor in the message panel at the bottom of the main window. Double-left-clicking with the select tool will open the properties dialog for the object under the cursor. |
|
Pin tool. Left-click to add a new pin. |
|
Graphical text tool. Left-click to add a new graphical text item. |
|
Rectangle tool. Left-click to begin drawing the first corner of a graphical rectangle. Left-click again to place the opposite corner of the rectangle. |
|
Circle tool. Left-click to begin drawing a new graphical circle from the center. Left-click again to define the radius of the circle. |
|
Arc tool. Left-click to begin drawing a new graphical arc item from the center. Left-click again to define the first arc end point. Left-click again to define the second arc end point. |
|
Polygon tool. Left-click to begin drawing a new graphical polygon item in the current symbol. Left-click for each addition polygon line. Double-left-click to complete the polygon. |
|
Anchor tool. Left-click to set the anchor position of the symbol. |
|
Import a symbol from a file. |
|
Export the current symbol to a file. |
|
Delete tool. Left-click to delete an object from the current symbol. |
Barra opzioni
La barra strumenti verticale, tipicamente collocata sul lato sinistro della finestra principale, permette di impostare alcune opzioni di disegno dell’editor. La tabella sottostante descrive ogni pulsante della barra.
Toggle grid visibility on and off. |
|
Set units to inches. |
|
Set units to millimeters. |
|
Toggle full screen cursor on and off. |
Selezione e manutenzione librerie
La selezione della libreria corrente è possibile tramite l’icona che mostra tutte le librerie disponibili e permette di selezionarne una. Quando un simbolo viene caricato o salvato, viene messo un questa libreria. Il nome di libreria del simbolo è il contenuto del suo campo valore.
|
Selezione e salvataggio di un simbolo
Quando si modifica un simbolo non si sta veramente lavorando sul simbolo nella sua libreria ma su una copia di esso nella memoria del computer. Ogni azione di modifica può essere facilmente annullata. Un simbolo può essere caricato da una libreria locale o da un simbolo esistente.
Selezione simboli
Facendo clic sull’icona sulla barra strumenti principale viene mostrato l’elenco di tutti i simboli disponibili, pronti per essere selezionati e caricati dalla libreria correntemente selezionata.
Se un simbolo selezionato è un alias, il nome del simbolo caricato viene mostrato sulla barra del titolo della finestra al posto dell’alias selezionato. L’elenco degli alias dei simboli viene sempre caricato con ogni simbolo e può essere modificato. Si può creare un nuovo simbolo selezionando un alias del simbolo corrente dal pulsante . Il primo elemento nell’elenco degli alias è il nome radice del simbolo. |
Oppure, facendo clic sull’icona consente di caricare un simbolo precedentemente salvato tramite il pulsante . |
Salvare un simbolo
Dopo la modifica, un simbolo può essere salvato nella libreria corrente, in una nuova libreria o esportato su un file di salvataggio.
Per salvare il simbolo modificato nella libreria corrente, fare clic sull’icona . Si noti che il comando di salvataggio salva solo i cambiamenti del simbolo nella memoria locale. In questo modo, si può cambiare idea prima di salvare la libreria.
Per salvare permanentemente i cambiamenti del simbolo sul file di libreria, fare clic sull’icona , in tal modo si sovrascriverà il file di libreria esistente con i cambiamenti del simbolo.
Se si desidera creare una nuova libreria contenente il simbolo corrente, fare clic sull’icona . Verrà richiesto di inserire il nome per la nuova libreria.
Le nuove librerie non sono automaticamente aggiunte al progetto corrente. Bisogna aggiungere qualsiasi nuova libreria si desideri usare in uno schema, all’elenco delle librerie del progetto in Eeschema, usando la finestra di dialogo tabella librerie di simboli. |
Fare clic sull’icona per creare un file contenente solo il simbolo corrente. Questo file sarà un file di libreria standard che conterrà solo un simbolo. Questo file può essere usato per importare il simbolo in un’altra libreria. In effetti il comando per la creazione di una nuova libreria ed il comando di esportazione sono praticamente identici.
Trasferire simbolo ad un’altra libreria
È molto facile copiare un simbolo da una libreria sorgente in una di destinazione usando i seguenti comandi:
-
Selezionare la libreria sorgente facendo clic su .
-
Caricare il simbolo da trasferire facendo clic su . Il simbolo verrà mostrato nell’area di modifica.
-
Selezionare la libreria di destinazione facendo clic su .
-
Salvare il simbolo corrente sulla nuova libreria nella memoria locale facendo clic su .
-
Salvare il simbolo nel file della libreria locale corrente facendo clic su .
Scartare i cambiamenti del simbolo
Quando si sta lavorando su un simbolo, il simbolo modificato è solo una copia di lavoro del simbolo effettivo nella sua libreria. Ciò significa che fintantoché questo non sia stato salvato, si può ricaricare e annullare tutti cambiamenti effettuati. Se lo si è già aggiornato nella memoria locale e non lo si è salvato nel file di libreria, si può sempre uscire e ricominciare. Eeschema annullerà tutti i cambiamenti.
Creare simboli di libreria
Creare un nuovo simbolo
Si può creare un nuovo simbolo facendo clic su . Verrà richiesto un nome per il simbolo (questo nome viene usato come valore predefinito per il campo valore nell’editor degli schemi elettrici), un riferimento (U, IC, R…), il numero di unità per contenitore (per esempio un 7400 è formato da 4 unità per contenitore) e, se lo si desidera, uno stile di corpo alternativo (alle volte riferito come DeMorgan). Se il campo riferimento viene lasciato vuoto, il valore predefinito sarà "U". Queste proprietà possono essere cambiate anche in seguito, ma è preferibile impostarle correttamente alla creazione del simbolo.
Un nuovo simbolo verrà creato usando le proprietà sopraesposte e apparirà nell’editor come mostrato sotto.
Creare un simbolo da un altro simbolo
Spesso, il simbolo che si vuole creare è simile ad un altro già presente in una libreria componenti. In questo caso risulta più facile caricare e modificare un simbolo esistente (N.d.T. piuttosto che ricrearne uno nuovo da zero).
-
Caricare il simbolo che verrà usato come punto di partenza.
-
Fare clic su o modificarne il nome facendo clic destro sul campo valore modificando il testo. Se si sceglie di duplicare il simbolo corrente, verrà richiesto di inserire un nuovo nome simbolo.
-
Se il simbolo modello possiede degli alias, verrà richiesto di rimuovere gli alias dal nuovo simbolo che vanno in conflitto con la libreria corrente. Se la risposta è no, la creazione del nuovo simbolo verrà abortita. Le librerie di simboli non possono avere nomi o alias duplicati.
-
Modifica il nuovo simbolo come richiesto.
-
Aggiornare il nuovo simbolo nella libreria corrente facendo clic su oppure salvare su una nuova libreria facendo clic su altrimenti, se si vuole salvare questo nuovo simbolo in un’altra libreria preesistente, selezionare l’altra libreria facendo clic su e salvare il nuovo simbolo.
-
Salvare il file di libreria corrente su disco facendo clic su .
Proprietà del simbolo
Le proprietà del simbolo devono essere impostate accuratamente durante la creazione del simbolo altrimenti queste vengono ereditate dal simbolo copiato. Per cambiare le proprietà del simbolo, fare clic su per mostrare la finestra seguente.
È molto importante impostare correttamente il numero di unità per contenitore e la rappresentazione simbolica alternativa, se abilitata, perché quando i pin vengono modificati o creati, sono coinvolti i pin corrispondenti per ogni unità. Se si cambia il numero di unità per contenitore dopo la creazione e modifica dei pin, ci si creerà del lavoro ulteriore per aggiungere nuovi pin e simboli per unità. Comunque, è possibile modificare queste proprietà in ogni momento.
Le opzioni grafiche Mostra numero piedino'' e
Mostra nome piedino'' definiscono la visibilità del numero piedino e del testo del nome del piedino. Questo testo sarà visibile se le opzioni corrispondenti verranno spuntate. L’opzione Nome piedino interno'' imposta la posizione del nome del piedino relativamente al corpo del piedino. Questo testo verrà mostrato all’interno del bordo del simbolo se l’opzione è stata spuntata. In questo caso la proprietà
Scostamento nome piedino'' definisce lo spostamento del testo dalla fine del corpo del piedino. Valore consigliato da 30 a 40 (in 1/1000 di pollice).
L’esempio sottostante mostra un simbolo con l’opzione ``Nome piedino interno'' non selezionata. Si noti la posizione dei nomi e dei numeri di pin.
Definizione piedini per simboli multipli e rappresentazioni simboliche alternative
Se il simbolo possiede più di una rappresentazione simbolica, sarà necessario selezionarne una in modo da modificarla. Per modificare la rappresentazione normale, fare clic su .
Per modificare la rappresentazione alternativa fare clic su . Usare mostrato sotto per selezionare l’unità che si desidera modificare.
Elementi grafici
Gli elementi grafici formano la rappresentazione di un simbolo e non contengono informazioni di connessioni elettriche. La loro progettazione è possibile usando i seguenti strumenti:
-
Linee e poligoni definiti da punti di inizio e fine.
-
Rettangoli definiti da due angoli diagonali.
-
Cerchi definiti da centro e raggio.
-
Archi definiti da punti di inizio e fine dell’arco ed il suo centro. Un arco va da 0° a 180°.
La barra strumenti verticale sul lato destro della finestra principale permette di piazzare tutti gli elementi grafici richiesti per progettare la rappresentazione di un simbolo.
Appartenenza di elementi grafici
Ogni elemento grafico (linea, arco, cerchio, ecc.) può essere definito come comune a tutte le unità e/o stili di corpi o specifico di una data unità e/o stile corpo. Le opzioni dell’elemento sono accessibili facilmente facendo clic destro sull’elemento per mostrare il menu contestuale per l’elemento selezionato. Di seguito è mostrato il menu contestuale per un elemento linea.
Si può anche fare doppio clic sinistro su un elemento per modificare le sue proprietà. Di seguito viene mostrata la finestra di dialogo delle proprietà di un elemento poligono.
Le proprietà di un elemento grafico sono:
-
Spessore linea che definisce lo spessore della linea dell’elemento nelle unità di disegno corrente.
-
L’impostazione ``Comune a tutte le unità nel componente'' definisce se l’elemento grafico deve essere disegnato per ogni unità nel simbolo con più di una unità per contenitore o se l’elemento grafico deve essere disegnato solo per l’unità corrente.
-
L’impostazione ``Comune a tutti gli stili di corpi (DeMorgan)'' definisce se l’elemento grafico deve essere disegnato per ogni rappresentazione dei simboli con uno stile di corpo alternativo o se l’elemento grafico deve essere disegnato solo per lo stile di corpo corrente.
-
L’impostazione di stile di riempimento determina se il simbolo definito dall’elemento grafico deve essere disegnato non riempito, riempito con lo sfondo o riempito con il primo piano.
Elementi di testo grafico
L’icona permette la creazione di testo grafico. Il testo grafico è sempre leggibile, anche se il simbolo viene ribaltato. Si noti che gli elementi di testo grafico non sono campi.
Unità multiple per simbolo e stili di corpo alternativi
I simboli possono avere due rappresentazioni simboliche (una standard e una alternativa, spesso chiamata "DeMorgan") e/o avere più di una unità per contenitore (per esempio le porte logiche). Alcuni simboli possono avere più di una unità per ogni contenitore con simboli e configurazioni di piedinatura differenti.
Si consideri per esempio un relè con due interruttori che può essere creato come un simbolo composto di tre diverse unità: una bobina, un interruttore 1, e un interruttore 2. Progettare un simbolo con unità multiple per contenitore e/o stili di corpo alternativi è molto flessibile. Un pin o un elemento simbolico di corpo può essere comune a tutte le unità o specifico di una data unità o ancora possono essere comuni sia a entrambe le rappresentazioni simboliche che essere specifiche di una data rappresentazione simbolica.
Come impostazione predefinita, i pin sono specifici per ogni rappresentazione simbolica di ogni unità, dato che il numero di pin è proprio di una specifica unità e la forma dipende dalla rappresentazione simbolica. Quando un pin è comune ad ogni unità o ad ogni rappresentazione simbolica, è necessario crearlo solo una volta per tutte le unità e tutte le rappresentazioni simboliche (questo solitamente accade per i pin di alimentazione). Ciò accade anche per le forme grafiche e il testo dello stile del corpo, che possono essere comuni per ogni unità (ma tipicamente sono specifiche per ogni rappresentazione simbolica).
Esempio di simbolo multiunità e con simboli differenti:
Questo è un esempio di un relè definito con tre unità per contenitore, contatto 1, contatto 2, e la bobina:
Opzione: i pin non sono collegati. Si possono aggiungere o modificare pin per ogni unità senza accoppiamento con pin di altre unità.
Tutte le unità che non sono intercambiabili devono essere selezionate.
Unità 1
Unità 2
Unità 3
Non ha lo stesso simbolo e disposizione di pin e perciò non è intercambiabile con le unità 1 e 2.
Elementi simbolici grafici
In basso le proprietà di un elemento per un corpo grafico. Dall’esempio precedente del relè, le tre unità hanno rappresentazioni simboliche differenti. Perciò, ogni unità è stata creata separatamente e gli elementi del corpo grafico devono avere l’impostazione ``Comune a tutte le unità nel simbolo'' disabilitata.
Creazione e modifica di piedini
Si può fare clic sull’immagine per creare e inserire un pin. La modifica di tutte le proprietà del pin viene fatta facendo doppio clic sul pin o facendo clic destro sul pin per aprire il menu contestuale del pin. I pin si devono creare con attenzione, dato che ogni errore avrà conseguenze sul circuito stampato in progettazione. Ogni pin già posizionato può essere modificato, cancellato e/o spostato.
Panoramica piedino
Un piedino viene definito dalla sua rappresentazione grafica, il suo nome ed il suo "numero". Il "numero" del piedini è definito da un insieme di 4 lettere e/o numeri. Perché lo strumento di controllo regole elettriche (ERC) sia utile, i piedini di tipo "elettrico" (ingresso, uscita, tri-state…) devono anch’essi essere definiti correttamente. Se i piedini di questo tipo non sono definiti correttamente, i risultati del controllo elettrico ERC potrebbero non essere validi.
Note importanti:
-
Non usare spazi nei nomi e nei numeri di piedini.
-
Per definire un nome pin con un segnale invertito (overline) usare il carattere
~
(tilde). Inserendo il prossimo carattere~
toglierà l’overline. Per esempio~FO~O
mostrerà FO O. -
Se il nome pin viene ridotto ad un singolo simbolo, il piedino viene considerato come senza nome.
-
I nomi dei piedini che cominciano con
#
sono riservati per le porte di alimentazione. -
Un "numero" pin è costituito da 1 a 4 lettere e/o numeri. 1,2,..9999 sono numeri validi. A1, B3, Anod, Gnd, Wire, ecc. sono anch’essi esempi validi.
-
I "numeri" pin duplicati non possono esistere in un simbolo.
Proprietà piedino
La finestra di dialogo delle proprietà del pin permette di modificare tutte le caratteristiche di un pin. Questa finestra di dialogo salta fuori automaticamente quando si crea un pin o facendo doppio clic su un pin già esistente. Questa finestra di dialogo permette di modificare:
-
Nome e dimensione del testo del nome.
-
Numero e dimensione del testo del numero.
-
Lunghezza.
-
Tipo grafico ed elettrico.
-
Unità e appartenenza a rappresentazioni alternative.
-
Visibilità.
Stili grafici dei pin
Mostrati nella figura sottostante ci sono differenti stili di rappresentazione grafica del pin. La scelta dello stile grafico non ha influenza sul tipo elettrico del pin.
Tipi elettrici del pin
Scegliere il corretto tipo elettrico è importante per lo strumento di controllo delle regole elettriche. I tipi elettrici definiti sono:
-
Bidirezionale, indica un pin che può funzionare sia in ingresso che in uscita (il bus dati di un microprocessore per esempio).
-
Tri-state, è la classica uscita a tre stati (N.d.T. alto, basso, alta impedenza).
-
Passivo, viene usato per pin di simboli passivi come resistenze, connettori, ecc.
-
Non specificato, può essere usato quando non serve (N.d.T. o non si può applicare) il controllo regole elettriche.
-
Ingresso alimentazione, viene usato per i piedini di potenza del simbolo. I pin di alimentazione vengono automaticamente connessi agli altri pin di ingresso alimentazione con lo stesso nome.
-
Uscita alimentazione, come dice il nome, usati per le uscite degli alimentatori.
-
I tipi collettore aperto e emettitore aperto, si possono usare per uscite funzionanti in quel modo.
-
Non connesso, viene usato quando un simbolo possiede un pin che non ha una connessione elettrica interna (N.d.T. per esempio aggiunti per aumentare la stabilità meccanica).
Proprietà globali del pin
È possibile modificare la lunghezza o la dimensione del testo del nome e/o numero di tutti i pin usando la voce delle modifiche Globali del menu contestuale del piedino. Fare clic sul parametro che si desidera modificare e battere il nuovo valore che verrà applicato a tutti i piedini correnti del simbolo.
Definizione piedini per componenti multipli e rappresentazioni simboliche alternative
Simboli con unità e/o rappresentazioni grafiche multiple sono particolarmente problematici durante la creazione e la modifica dei piedini. La maggioranza dei piedini sono specifici della singola unità (perché il loro numero di piedino è specifico per ogni unità) e della singola rappresentazione simbolica (poiché la loro forma e posizione è specifica di ogni rappresentazione simbolica). La creazione e la modifica di piedini può essere problematica per simboli con più unità per contenitore e con rappresentazioni simboliche alternative. L’editor dei simboli di libreria consente la creazione simultanea di più pin. Come impostazione predefinita, i cambiamenti fatti ad un pin vengono effettuati anche a tutte le unità di un simbolo multiplo ed ad entrambe le rappresentazioni simboliche per i simboli con rappresentazioni simboliche alternative.
L’unica eccezione a questa regola è il tipo grafico e il nome del pin. Questa dipendenza è stata stabilita per facilitare la creazione e la modifica nei casi più comuni. Questa dipendenza può essere disabilitata agendo sull’icona presente sulla barra degli strumenti principale. Quest’ultima permette di creare piedini per ogni unità e rappresenzazioni, completamente indipendenti.
Un simbolo può possedere due rappresentazioni simboliche (rappresentazione conosciuta come ``DeMorgan'') e può essere formato da più di un’unità come nel caso dei simboli con porte logiche. Per certi tipi di simboli, può essere desiderabile avere elementi grafici e pin differenti e indipendenti. Come nell’esempio del relè mostrato nella sezione precedente, un relè può essere rappresentato da tre distinte unità: bobina, interruttore 1 e interruttore 2.
La gestione dei simboli formati da elementi multipli e simboli con rappresentazioni simboliche alternative è flessibile. Un piedino può essere comune o specifico di più unità. Un piedino può essere anche comune a più rappresentazioni simboliche o specifico di ogni rappresentazione simbolica.
Come impostazione predefinita, i piedini sono specifici di ogni rappresentazione simbolica, dato che il loro numero differisce per ogni unità, e la loro creazione è differente per ogni rappresenzazione simbolica. Quando un piedino è comune a tutte le parti, esso deve essere disegnato solo una volta, come nel caso dei piedini di alimentazione.
Un esempio sono i pin di uscita del 7400, una porta NAND quadrupla a ingresso doppio. Dato che ci sono quattro unità e due rappresentazioni simboliche, ci sono otto distinti piedini d’uscita descritti nella definizione del simbolo. Durante la creazione di un nuovo componente 7400, l’unità A della rappresentazione simbolica normale viene mostrata nell’editor di libreria. Per modificare lo stile del piedino nella rappresentazione simbolica alternativa, questa deve prima essere abilitata facendo clic sul pulsante sulla barra degli strumenti. Per modificare il numero di pin per ogni unità, selezionare l’unità appropriata usando il menu a discesa .
Campi del simbolo
Tutti i simboli di libreria vengono creati con quattro campi predefiniti. I campi riferimento'',
valore'', impronta'' e
specifiche'' vengono creati ogniqualvolta un simbolo viene creato o copiato. Solo i campi riferimento'' e
valore'' sono necessari. Per i campi esistenti, è possibile usare i comandi del menu contestuale facendo clic destro sul piedino. I simboli presenti nelle librerie sono normalmente definiti con questi quattro campi predefiniti. Ulteriori campi come per es. fabbricante'',
numero parte'', ``costo unità'', ecc. possono venire aggiunti ai simboli di libreria, ma generalmente questo viene fatto nell’editor degli schemi elettrici in modo che i campi aggiuntivi possano essere applicati a tutti i simboli nello schema (N.d.T. indipendentemente dalla libreria di provenienza).
Modifica campi del simbolo
Per modificare un campo simbolo esistente, fare clic destro sul testo del campo per mostrare il menu contestuale mostrato sotto.
Per modificare campi non definiti, aggiungere nuovi campi o cancellare campi opzionali: sulla barra strumenti principale per aprire la finestra di dialogo delle proprietà del campo mostrata in basso.
I campi sono segmenti di testo associati al simbolo. Non bisogna confonderli con il testo che fa parte della rappresentazione grafica del simbolo.
Note importanti:
-
La modifica dei campi valore crea in pratica un nuovo simbolo usando il simbolo corrente come punto di partenza del nuovo simbolo. Questo nuovo simbolo ha il nome contenuto nel campo valore quando lo si salva nella libreria correntemente selezionata.
-
La finestra di dialogo di modifica mostrata sopra deve essere utilizzata per modificare un campo vuoto o con l’attributo di invisibilità abilitato.
-
L’impronta è definita come un’impronta assoluta usando il formato LIBNAME:FPNAME dove LIBNAME è il nome della libreria di impronte definita nella tabella librerie impronte (vedere la sezione "Tabella librerie impronte" nel manuale di riferimento di Pcbnew) e FPNAME è il nome dell’impronta nella libreria LIBNAME.
Simboli di alimentazione
I simboli di alimentazione vengono creati allo stesso modo dei normali simbolo. Può essere utile piazzarli in una libreria dedicata come power.lib. I simboli di alimentazione consistono in un simbolo grafico e un piedino di tipo "Alimentazione invisibile". I simboli di alimentazione vengono gestiti come tutti gli altri simboli nello schema ma sono necessarie alcune precauzioni. Sotto è presente un esempio di simbolo di alimentazione di +5V.
Per creare un simbolo di alimentazione, seguire questi passi:
-
Aggiungere un piedino di tipo "Ingresso alimentazione" con nome +5V (importante perché questo nome stabilirà la connessione a al collegamento +5V), con numero piedino 1 (numero senza importanza), di lunghezza 0 e con "Stile grafico" "Linea".
-
Piazzare un piccolo cerchio ed un segmento dal piedino al cerchio come mostrato.
-
L’àncora del simbolo è sul piedino.
-
Il valore del simbolo è
+5V
. -
Il riferimento del simbolo è
#+5V
. Il testo del riferimento non è importante eccetto il primo carattere che deve essere un#
per indicare che il componente è un simbolo di alimentazione. Per convenzione, ogni simbolo il cui campo di riferimento cominci con un#
non apparirà nell’elenco simboli o nella netlist ed il riferimento viene dichiarato invisibile.
Un metodo più semplice per creare un nuovo simbolo di alimentazione è usarne un altro come modello:
-
Caricare un simbolo di alimentazione esistente.
-
Cambiare il nome del pin nel nome del nuovo simbolo di alimentazione.
-
Modificare il campo valore impostandolo allo stesso valore del nome del pin se si vuole mostrare il valore del simbolo di alimentazione.
-
Salvare il nuovo simbolo
LibEdit - Simboli
Panoramica
Un simbolo consiste dei seguenti elementi
-
Una rappresentazione grafica (forma geometrica, testi).
-
Piedini.
-
Campi o testo associato usato dai post processori: netlist, elenco simboli.
Due campi saranno inizializzati: riferimento e valore. Il nome progettuale associato al simbolo, e il nome dell’impronta associata, gli altri campi sono i campi liberi, che in genere possono rimanere vuoti, e possono essere riempiti durante la stesura dello schema elettrico.
Comunque, la gestione della documentazione associata a qualsiasi simbolo facilita la ricerca, l’uso e la manutenzione delle librerie. La documentazione associata consiste in
-
Una riga di commento.
-
Una riga di parole chiave come TTL CMOS NAND2, separate da spazi.
-
Un nome file allegato (per esempio una application note o un file pdf).
La cartella predefinita per i file allegati:
kicad/share/library/doc
Se non trovato:
kicad/library/doc
Sotto Linux:
/usr/local/kicad/share/library/doc
/usr/share/kicad/library/doc
/usr/local/share/kicad/library/doc
Le parole chiave permettono di cercare selettivamente un simbolo secondo vari criteri di selezione. Commenti e parole chiave vengono visualizzati in vari menu, in particolare quando si seleziona un simbolo dalla libreria.
Il simbolo possiede anche un punto di ancoraggio. Una rotazione o una trasposizione speculare vengono effettuate relativamente a questo punto di ancoraggio; durante il piazzamento del simbolo questo punto viene usato come riferimento. Di conseguenza sarà utile posizionare accuratamente questo ancoraggio.
Un simbolo può possedere degli alias, cioè nomi equivalenti. Ciò permette di ridurre notevolmente il numero di simboli da creare (per esempio, un 74LS00 può avere come alias dei 74000, 74HC00, 74HCT00, ecc.).
Infine, i simboli vengono distribuiti in librerie (classificate per genere o per fabbricante) in modo da facilitarne la gestione.
Posizionamento ancoraggio di un simbolo
L’àncora è alle coordinate (0,0) e viene mostrata dagli assi blu mostrati sullo schermo.
L’àncora può essere riposizionata selezionando l’icona e facendo clic sulla nuova posizione desiderata. Il disegno verrà automaticamente centrato sul nuovo punto di ancoraggio.
Alias di simboli
Un alias è un nome aggiuntivo per uno stesso simbolo nella libreria. Simboli con piedinatura e rappresentazione simili possono essere rappresentati da un solo simbolo reale, con diversi alias (per esempio un 7400 con alias 74LS00, 74HC00, 74LS37, ecc. ).
L’uso degli alias permette di creare facilmente intere librerie. Inoltre queste librerie saranno molto più compatte e veloci da caricare in KiCad.
Per modificare l’elenco di alias, è necessario selezionare la finestra di modifica principale tramite l’icona e selezionare la cartella degli alias.
Si può perciò aggiungere o rimuovere gli alias a volontà. L’alias corrente non può ovviamente essere rimosso dato che lo si sta modificando.
Per rimuovere tutti i simboli, è necessario prima selezionare il simbolo radice. Il primo simbolo nell’elenco degli alias nella finestra di selezione della barra strumenti principale.
Campi dei simboli
L’editor dei campi viene chiamato tramite l’icona .
Ci sono quattro campi speciali (testi allegati al simbolo), e campi configurabili dall’utente
Campi speciali
-
Riferimento.
-
Valore. È il nome del simbolo nella libreria e il campo valore predefinito nello schema elettrico.
-
Impronta. È il nome dell’impronta usato per la scheda. Non molto utile quando si usa CvPcb per impostare l’elenco delle impronte, ma obbligatorio se CvPcb non viene usato.
-
Foglio. È un campo riservato, non usato al momento della scrittura di questo documento.
Documentazione del simbolo
Per modificare le informazioni di documentazione, è necessario chiamare la finestra principale di modifica del simbolo tramite l’icona e selezionare la cartella del documento.
Verificare di aver selezionato l’alias corretto, o il simbolo radice, dato che questa documentazione è l’unica caratteristica che varia tra alias differenti. Il pulsante "Copia documento dal genitore" permette di copiare le informazioni di documentazione dal simbolo radice verso l’alias attualmente sottoposto a modifica.
Parole chiave del simbolo
Le parole chiave permettono di cercare in modo selettivo un simbolo secondo criteri di selezione specifici (funzioni, famiglia tecnologica, ecc.)
Lo strumento di ricerca di Eeschema non distingue maiuscole e minuscole. Le parole chiave attualmente più usate nelle librerie sono
-
CMOS TTL per le famiglie logiche
-
AND2 NOR3 XOR2 INV… per le porte logiche (AND2 = porta AND a 2 ingressi, NOR3 = porta NOR a 3 ingressi).
-
JKFF DFF… per flip-flop JK o di tipo D.
-
ADC, DAC, MUX…
-
OpenCol per le porte con uscita a collettore aperto. Perciò, se nel programma di progettazione dello schema elettrico si cerca il simbolo: per parole chiave NAND2 OpenCol, Eeschema mostrerà l’elenco dei simboli aventi queste due parole chiave.
Documentazione del simbolo (Doc)
La riga di commento (e parole chiave) viene mostrata in vari menu, specialmente quando si seleziona un simbolo nell’elenco simboli mostrato di una libreria e nel menu di visualizzazione della libreria.
Se questo file di documentazione esiste, esso è accessibile anche dal programma di disegno dello schema elettrico, nel menu a scomparsa mostrato facendo clic destro con il mouse sul simbolo.
File di documentazione associato (DocFileName)
Indica un file allegato (documentazione, schema elettrico applicativo, ecc.) disponibile (file pdf, schema elettrico, ecc.).
Filtri di impronte per CvPcb
È possibile inserire un elenco di impronte consentite per il simbolo. Questo elenco agisce come un filtro e viene usato da CvPcb per mostrare solo le impronte permesse. Una lista vuota non filtra nulla.
Si possono usare i caratteri jolly.
S014* consente a CvPcb di mostrare tutte le impronte con un nome che comincia con SO14.
Per una resistenza, R? mostra tutte le impronte con un nome di due lettere che comincia con la R.
Ecco alcuni esempi: con e senza filtri
Con filtri
Senza filtri
Libreria di simboli
Si può facilmente compilare un file libreria di simboli grafici contenente gli elementi più frequentemente utilizzati per la creazione di simboli (triangoli, la forma di porte AND, OR, EXOR, ecc.), poi salvarla e ri-utilizzarla.
Questi file sono memorizzati in maniera predefinita nella cartella della libreria ed hanno estensione ``.sym''. Questi simboli non sono raccolti in librerie come i simboli normali dato che generalmente non sono così tanti.
Esportazione o creazione di un simbolo
Un simbolo può essere esportato con il pulsante . Generalmente si crea solo una grafica, ed è anche una buona idea cancellare tutti i piedini, se ne esistono.
Importare un simbolo
L’importazione permette di aggiungere elementi grafici ad un simbolo che si sta modificando. I simboli si importano con il pulsante . Gli elementi grafici importati vengono aggiunti come fossero stati creati da zero negli elementi grafici esistenti.
Esploratore libreria di simboli
Introduzione
L’esploratore di librerie di simboli permette di scorrere velocemente il contenuto di librerie di simboli. È raggiungibile facendo clic sull’icona sulla barra strumenti principale, selezionando Esploratore librerie'' presente nel menu
Visualizza'' o facendo doppio clic sull’immagine del simbolo nella finestra ``Scegli simbolo''.
Viewlib - schermo principale
Per esaminare i contenuti della libreria, selezionare la libreria desiderata dall’elenco sul lato sinistro. I simboli disponibili appariranno nel secondo pannello. Selezionare il nome di un simbolo per visualizzarlo.
Barra alta dell’esploratore delle librerie di simboli
La barra in alto dell’esploratore di librerie di simboli viene mostrata di seguito.
I comandi disponibili sono:
Selection of the desired library which can be also selected in the displayed list. |
|
Selection of the symbol which can be also selected in the displayed list. |
|
Display previous symbol. |
|
Display next symbol. |
|
|
Zoom tools. |
|
Selection of the representation (normal or converted) if exist. |
Selection of the unit for symbols that contain multiple units. |
|
If it exist, display the associated documents. Exists only when called by the place symbol dialog frame from Eeschema. |
|
Close the browser and place the selected symbol in Eeschema. This icon is only displayed when browser has been called from Eeschema (double click on a symbol in the component chooser). |
Creazione di netlist personalizzate e distinte materiali
File di netlist intermedio
File distinte materiali e di netlist possono essere convertiti da un file di netlist intermedio creato da Eeschema.
Questo file usa la sintassi XML e si chiama netlist intermedia. La netlist intermedia include una grande quantità di dati sulla scheda e perciò, può essere usata tramite elaborazione successiva per generare distinte materiali o altri rapporti.
A seconda del risultato (distinta materiali o netlist), differenti sottoinsiemi dell’intero file di netlist intermedia saranno usati nella post-elaborazione.
Campione di schema
Campione di file di netlist intermedia
La corrispondente netlist intermedia (sintassi XML) del circuito precedente viene mostrata di seguito.
<?xml version="1.0" encoding="utf-8"?> <export version="D"> <design> <source>F:\kicad_aux\netlist_test\netlist_test.sch</source> <date>29/08/2010 20:35:21</date> <tool>eeschema (2010-08-28 BZR 2458)-unstable</tool> </design> <components> <comp ref="P1"> <value>CONN_4</value> <libsource lib="conn" part="CONN_4"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E2141</tstamp> </comp> <comp ref="U2"> <value>74LS74</value> <libsource lib="74xx" part="74LS74"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E20BA</tstamp> </comp> <comp ref="U1"> <value>74LS04</value> <libsource lib="74xx" part="74LS04"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E20A6</tstamp> </comp> <comp ref="C1"> <value>CP</value> <libsource lib="device" part="CP"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E2094</tstamp> </comp> <comp ref="R1"> <value>R</value> <libsource lib="device" part="R"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E208A</tstamp> </comp> </components> <libparts> <libpart lib="device" part="C"> <description>Condensateur non polarise</description> <footprints> <fp>SM*</fp> <fp>C?</fp> <fp>C1-1</fp> </footprints> <fields> <field name="Reference">C</field> <field name="Value">C</field> </fields> <pins> <pin num="1" name="~" type="passive"/> <pin num="2" name="~" type="passive"/> </pins> </libpart> <libpart lib="device" part="R"> <description>Resistance</description> <footprints> <fp>R?</fp> <fp>SM0603</fp> <fp>SM0805</fp> <fp>R?-*</fp> <fp>SM1206</fp> </footprints> <fields> <field name="Reference">R</field> <field name="Value">R</field> </fields> <pins> <pin num="1" name="~" type="passive"/> <pin num="2" name="~" type="passive"/> </pins> </libpart> <libpart lib="conn" part="CONN_4"> <description>Symbole general de connecteur</description> <fields> <field name="Reference">P</field> <field name="Value">CONN_4</field> </fields> <pins> <pin num="1" name="P1" type="passive"/> <pin num="2" name="P2" type="passive"/> <pin num="3" name="P3" type="passive"/> <pin num="4" name="P4" type="passive"/> </pins> </libpart> <libpart lib="74xx" part="74LS04"> <description>Hex Inverseur</description> <fields> <field name="Reference">U</field> <field name="Value">74LS04</field> </fields> <pins> <pin num="1" name="~" type="input"/> <pin num="2" name="~" type="output"/> <pin num="3" name="~" type="input"/> <pin num="4" name="~" type="output"/> <pin num="5" name="~" type="input"/> <pin num="6" name="~" type="output"/> <pin num="7" name="GND" type="power_in"/> <pin num="8" name="~" type="output"/> <pin num="9" name="~" type="input"/> <pin num="10" name="~" type="output"/> <pin num="11" name="~" type="input"/> <pin num="12" name="~" type="output"/> <pin num="13" name="~" type="input"/> <pin num="14" name="VCC" type="power_in"/> </pins> </libpart> <libpart lib="74xx" part="74LS74"> <description>Dual D FlipFlop, Set & Reset</description> <docs>74xx/74hc_hct74.pdf</docs> <fields> <field name="Reference">U</field> <field name="Value">74LS74</field> </fields> <pins> <pin num="1" name="Cd" type="input"/> <pin num="2" name="D" type="input"/> <pin num="3" name="Cp" type="input"/> <pin num="4" name="Sd" type="input"/> <pin num="5" name="Q" type="output"/> <pin num="6" name="~Q" type="output"/> <pin num="7" name="GND" type="power_in"/> <pin num="8" name="~Q" type="output"/> <pin num="9" name="Q" type="output"/> <pin num="10" name="Sd" type="input"/> <pin num="11" name="Cp" type="input"/> <pin num="12" name="D" type="input"/> <pin num="13" name="Cd" type="input"/> <pin num="14" name="VCC" type="power_in"/> </pins> </libpart> </libparts> <libraries> <library logical="device"> <uri>F:\kicad\share\library\device.lib</uri> </library> <library logical="conn"> <uri>F:\kicad\share\library\conn.lib</uri> </library> <library logical="74xx"> <uri>F:\kicad\share\library\74xx.lib</uri> </library> </libraries> <nets> <net code="1" name="GND"> <node ref="U1" pin="7"/> <node ref="C1" pin="2"/> <node ref="U2" pin="7"/> <node ref="P1" pin="4"/> </net> <net code="2" name="VCC"> <node ref="R1" pin="1"/> <node ref="U1" pin="14"/> <node ref="U2" pin="4"/> <node ref="U2" pin="1"/> <node ref="U2" pin="14"/> <node ref="P1" pin="1"/> </net> <net code="3" name=""> <node ref="U2" pin="6"/> </net> <net code="4" name=""> <node ref="U1" pin="2"/> <node ref="U2" pin="3"/> </net> <net code="5" name="/SIG_OUT"> <node ref="P1" pin="2"/> <node ref="U2" pin="5"/> <node ref="U2" pin="2"/> </net> <net code="6" name="/CLOCK_IN"> <node ref="R1" pin="2"/> <node ref="C1" pin="1"/> <node ref="U1" pin="1"/> <node ref="P1" pin="3"/> </net> </nets> </export>
Conversione in un nuovo formato di netlist
Applicando un filtro di post-elaborazione al file di netlist intermedia è possibile generare file di netlist per altre applicazioni o file di distinta materiali. Dato che questa conversione è in effetti una trasformazione da un formato testo ad un altro, si può scrivere questo filtro di post-elaborazione usando Python, XSLT, o qualsiasi altro strumento in grado di ricevere in ingresso dati XML.
XSLT è di per sè un linguaggio XML molto adatto alle trasformazioni XML. Esiste un programma libero di nome xsltproc che è possibile scaricare e installare. Il prgramma xsltproc può essere usato per leggere in ingresso il file XML di netlist intermedio, applicare un foglio di stile per trasformare l’ingresso, e salvare il risultato in un file in uscita. L’uso di xsltproc richiede un file foglio di stile che usi le convenzioni XSLT. L’intero processo di conversione viene gestito da Eeschema, dopo essere stato configurato per l’esecuzione di xsltproc in modo specifico.
Approccio XSLT
Il documento che descrive le trasformazioni XSL (XSLT) è qui disponibile:
Creare un file netlist Pads-Pcb
Il formato pads-pcb comprende due sezioni.
-
L’elenco impronte.
-
La netslist: raggruppando riferimenti a piazzole per collegamenti.
Di seguito c’è un foglio di stile che converte il file di netlist intermedio in formato netlist pads-pcb:
<?xml version="1.0" encoding="ISO-8859-1"?> <!--XSL style sheet to Eeschema Generic Netlist Format to PADS netlist format Copyright (C) 2010, SoftPLC Corporation. GPL v2. How to use: https://lists.launchpad.net/kicad-developers/msg05157.html --> <!DOCTYPE xsl:stylesheet [ <!ENTITY nl "
"> <!--new line CR, LF --> ]> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" omit-xml-declaration="yes" indent="no"/> <xsl:template match="/export"> <xsl:text>*PADS-PCB*&nl;*PART*&nl;</xsl:text> <xsl:apply-templates select="components/comp"/> <xsl:text>&nl;*NET*&nl;</xsl:text> <xsl:apply-templates select="nets/net"/> <xsl:text>*END*&nl;</xsl:text> </xsl:template> <!-- for each component --> <xsl:template match="comp"> <xsl:text> </xsl:text> <xsl:value-of select="@ref"/> <xsl:text> </xsl:text> <xsl:choose> <xsl:when test = "footprint != '' "> <xsl:apply-templates select="footprint"/> </xsl:when> <xsl:otherwise> <xsl:text>unknown</xsl:text> </xsl:otherwise> </xsl:choose> <xsl:text>&nl;</xsl:text> </xsl:template> <!-- for each net --> <xsl:template match="net"> <!-- nets are output only if there is more than one pin in net --> <xsl:if test="count(node)>1"> <xsl:text>*SIGNAL* </xsl:text> <xsl:choose> <xsl:when test = "@name != '' "> <xsl:value-of select="@name"/> </xsl:when> <xsl:otherwise> <xsl:text>N-</xsl:text> <xsl:value-of select="@code"/> </xsl:otherwise> </xsl:choose> <xsl:text>&nl;</xsl:text> <xsl:apply-templates select="node"/> </xsl:if> </xsl:template> <!-- for each node --> <xsl:template match="node"> <xsl:text> </xsl:text> <xsl:value-of select="@ref"/> <xsl:text>.</xsl:text> <xsl:value-of select="@pin"/> <xsl:text>&nl;</xsl:text> </xsl:template> </xsl:stylesheet>
Ed ecco il file pads-pcb in uscita dopo l’esecuzione di xsltproc:
*PADS-PCB* *PART* P1 unknown U2 unknown U1 unknown C1 unknown R1 unknown *NET* *SIGNAL* GND U1.7 C1.2 U2.7 P1.4 *SIGNAL* VCC R1.1 U1.14 U2.4 U2.1 U2.14 P1.1 *SIGNAL* N-4 U1.2 U2.3 *SIGNAL* /SIG_OUT P1.2 U2.5 U2.2 *SIGNAL* /CLOCK_IN R1.2 C1.1 U1.1 P1.3 *END*
La riga di comando per effettuare questa conversione è:
kicad\\bin\\xsltproc.exe -o test.net kicad\\bin\\plugins\\netlist_form_pads-pcb.xsl test.tmp
Creazione di un file netlist Cadstar
Il formato Cadstar è formato da due sezioni.
-
L’elenco impronte.
-
La netslist: raggruppando riferimenti a piazzole per collegamenti.
Ecco il file del foglio di stile per effettuare questa specifica conversione:
<?xml version="1.0" encoding="ISO-8859-1"?> <!--XSL style sheet to Eeschema Generic Netlist Format to CADSTAR netlist format Copyright (C) 2010, Jean-Pierre Charras. Copyright (C) 2010, SoftPLC Corporation. GPL v2. <!DOCTYPE xsl:stylesheet [ <!ENTITY nl "
"> <!--new line CR, LF --> ]> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" omit-xml-declaration="yes" indent="no"/> <!-- Netlist header --> <xsl:template match="/export"> <xsl:text>.HEA&nl;</xsl:text> <xsl:apply-templates select="design/date"/> <!-- Generate line .TIM <time> --> <xsl:apply-templates select="design/tool"/> <!-- Generate line .APP <eeschema version> --> <xsl:apply-templates select="components/comp"/> <!-- Generate list of components --> <xsl:text>&nl;&nl;</xsl:text> <xsl:apply-templates select="nets/net"/> <!-- Generate list of nets and connections --> <xsl:text>&nl;.END&nl;</xsl:text> </xsl:template> <!-- Generate line .TIM 20/08/2010 10:45:33 --> <xsl:template match="tool"> <xsl:text>.APP "</xsl:text> <xsl:apply-templates/> <xsl:text>"&nl;</xsl:text> </xsl:template> <!-- Generate line .APP "eeschema (2010-08-17 BZR 2450)-unstable" --> <xsl:template match="date"> <xsl:text>.TIM </xsl:text> <xsl:apply-templates/> <xsl:text>&nl;</xsl:text> </xsl:template> <!-- for each component --> <xsl:template match="comp"> <xsl:text>.ADD_COM </xsl:text> <xsl:value-of select="@ref"/> <xsl:text> </xsl:text> <xsl:choose> <xsl:when test = "value != '' "> <xsl:text>"</xsl:text> <xsl:apply-templates select="value"/> <xsl:text>"</xsl:text> </xsl:when> <xsl:otherwise> <xsl:text>""</xsl:text> </xsl:otherwise> </xsl:choose> <xsl:text>&nl;</xsl:text> </xsl:template> <!-- for each net --> <xsl:template match="net"> <!-- nets are output only if there is more than one pin in net --> <xsl:if test="count(node)>1"> <xsl:variable name="netname"> <xsl:text>"</xsl:text> <xsl:choose> <xsl:when test = "@name != '' "> <xsl:value-of select="@name"/> </xsl:when> <xsl:otherwise> <xsl:text>N-</xsl:text> <xsl:value-of select="@code"/> </xsl:otherwise> </xsl:choose> <xsl:text>"&nl;</xsl:text> </xsl:variable> <xsl:apply-templates select="node" mode="first"/> <xsl:value-of select="$netname"/> <xsl:apply-templates select="node" mode="others"/> </xsl:if> </xsl:template> <!-- for each node --> <xsl:template match="node" mode="first"> <xsl:if test="position()=1"> <xsl:text>.ADD_TER </xsl:text> <xsl:value-of select="@ref"/> <xsl:text>.</xsl:text> <xsl:value-of select="@pin"/> <xsl:text> </xsl:text> </xsl:if> </xsl:template> <xsl:template match="node" mode="others"> <xsl:choose> <xsl:when test='position()=1'> </xsl:when> <xsl:when test='position()=2'> <xsl:text>.TER </xsl:text> </xsl:when> <xsl:otherwise> <xsl:text> </xsl:text> </xsl:otherwise> </xsl:choose> <xsl:if test="position()>1"> <xsl:value-of select="@ref"/> <xsl:text>.</xsl:text> <xsl:value-of select="@pin"/> <xsl:text>&nl;</xsl:text> </xsl:if> </xsl:template> </xsl:stylesheet>
Ecco il file Cadstar in uscita.
.HEA .TIM 21/08/2010 08:12:08 .APP "eeschema (2010-08-09 BZR 2439)-unstable" .ADD_COM P1 "CONN_4" .ADD_COM U2 "74LS74" .ADD_COM U1 "74LS04" .ADD_COM C1 "CP" .ADD_COM R1 "R" .ADD_TER U1.7 "GND" .TER C1.2 U2.7 P1.4 .ADD_TER R1.1 "VCC" .TER U1.14 U2.4 U2.1 U2.14 P1.1 .ADD_TER U1.2 "N-4" .TER U2.3 .ADD_TER P1.2 "/SIG_OUT" .TER U2.5 U2.2 .ADD_TER R1.2 "/CLOCK_IN" .TER C1.1 U1.1 P1.3 .END
Creazione di un file netlist OrcadPCB2
Questo formato ha solo una sezione che consiste nell’elenco impronte. Ogni impronta include il suo elenco di piazzole con un riferimento alla corrispondente connessione.
Ecco il foglio di stile per questa specifica conversione:
<?xml version="1.0" encoding="ISO-8859-1"?> <!--XSL style sheet to Eeschema Generic Netlist Format to CADSTAR netlist format Copyright (C) 2010, SoftPLC Corporation. GPL v2. How to use: https://lists.launchpad.net/kicad-developers/msg05157.html --> <!DOCTYPE xsl:stylesheet [ <!ENTITY nl "
"> <!--new line CR, LF --> ]> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" omit-xml-declaration="yes" indent="no"/> <!-- Netlist header Creates the entire netlist (can be seen as equivalent to main function in C --> <xsl:template match="/export"> <xsl:text>( { Eeschema Netlist Version 1.1 </xsl:text> <!-- Generate line .TIM <time> --> <xsl:apply-templates select="design/date"/> <!-- Generate line eeschema version ... --> <xsl:apply-templates select="design/tool"/> <xsl:text>}&nl;</xsl:text> <!-- Generate the list of components --> <xsl:apply-templates select="components/comp"/> <!-- Generate list of components --> <!-- end of file --> <xsl:text>)&nl;*&nl;</xsl:text> </xsl:template> <!-- Generate id in header like "eeschema (2010-08-17 BZR 2450)-unstable" --> <xsl:template match="tool"> <xsl:apply-templates/> </xsl:template> <!-- Generate date in header like "20/08/2010 10:45:33" --> <xsl:template match="date"> <xsl:apply-templates/> <xsl:text>&nl;</xsl:text> </xsl:template> <!-- This template read each component (path = /export/components/comp) creates lines: ( 3EBF7DBD $noname U1 74LS125 ... pin list ... ) and calls "create_pin_list" template to build the pin list --> <xsl:template match="comp"> <xsl:text> ( </xsl:text> <xsl:choose> <xsl:when test = "tstamp != '' "> <xsl:apply-templates select="tstamp"/> </xsl:when> <xsl:otherwise> <xsl:text>00000000</xsl:text> </xsl:otherwise> </xsl:choose> <xsl:text> </xsl:text> <xsl:choose> <xsl:when test = "footprint != '' "> <xsl:apply-templates select="footprint"/> </xsl:when> <xsl:otherwise> <xsl:text>$noname</xsl:text> </xsl:otherwise> </xsl:choose> <xsl:text> </xsl:text> <xsl:value-of select="@ref"/> <xsl:text> </xsl:text> <xsl:choose> <xsl:when test = "value != '' "> <xsl:apply-templates select="value"/> </xsl:when> <xsl:otherwise> <xsl:text>"~"</xsl:text> </xsl:otherwise> </xsl:choose> <xsl:text>&nl;</xsl:text> <xsl:call-template name="Search_pin_list" > <xsl:with-param name="cmplib_id" select="libsource/@part"/> <xsl:with-param name="cmp_ref" select="@ref"/> </xsl:call-template> <xsl:text> )&nl;</xsl:text> </xsl:template> <!-- This template search for a given lib component description in list lib component descriptions are in /export/libparts, and each description start at ./libpart We search here for the list of pins of the given component This template has 2 parameters: "cmplib_id" (reference in libparts) "cmp_ref" (schematic reference of the given component) --> <xsl:template name="Search_pin_list" > <xsl:param name="cmplib_id" select="0" /> <xsl:param name="cmp_ref" select="0" /> <xsl:for-each select="/export/libparts/libpart"> <xsl:if test = "@part = $cmplib_id "> <xsl:apply-templates name="build_pin_list" select="pins/pin"> <xsl:with-param name="cmp_ref" select="$cmp_ref"/> </xsl:apply-templates> </xsl:if> </xsl:for-each> </xsl:template> <!-- This template writes the pin list of a component from the pin list of the library description The pin list from library description is something like <pins> <pin num="1" type="passive"/> <pin num="2" type="passive"/> </pins> Output pin list is ( <pin num> <net name> ) something like ( 1 VCC ) ( 2 GND ) --> <xsl:template name="build_pin_list" match="pin"> <xsl:param name="cmp_ref" select="0" /> <!-- write pin numner and separator --> <xsl:text> ( </xsl:text> <xsl:value-of select="@num"/> <xsl:text> </xsl:text> <!-- search net name in nets section and write it: --> <xsl:variable name="pinNum" select="@num" /> <xsl:for-each select="/export/nets/net"> <!-- net name is output only if there is more than one pin in net else use "?" as net name, so count items in this net --> <xsl:variable name="pinCnt" select="count(node)" /> <xsl:apply-templates name="Search_pin_netname" select="node"> <xsl:with-param name="cmp_ref" select="$cmp_ref"/> <xsl:with-param name="pin_cnt_in_net" select="$pinCnt"/> <xsl:with-param name="pin_num"> <xsl:value-of select="$pinNum"/> </xsl:with-param> </xsl:apply-templates> </xsl:for-each> <!-- close line --> <xsl:text> )&nl;</xsl:text> </xsl:template> <!-- This template writes the pin netname of a given pin of a given component from the nets list The nets list description is something like <nets> <net code="1" name="GND"> <node ref="J1" pin="20"/> <node ref="C2" pin="2"/> </net> <net code="2" name=""> <node ref="U2" pin="11"/> </net> </nets> This template has 2 parameters: "cmp_ref" (schematic reference of the given component) "pin_num" (pin number) --> <xsl:template name="Search_pin_netname" match="node"> <xsl:param name="cmp_ref" select="0" /> <xsl:param name="pin_num" select="0" /> <xsl:param name="pin_cnt_in_net" select="0" /> <xsl:if test = "@ref = $cmp_ref "> <xsl:if test = "@pin = $pin_num"> <!-- net name is output only if there is more than one pin in net else use "?" as net name --> <xsl:if test = "$pin_cnt_in_net>1"> <xsl:choose> <!-- if a net has a name, use it, else build a name from its net code --> <xsl:when test = "../@name != '' "> <xsl:value-of select="../@name"/> </xsl:when> <xsl:otherwise> <xsl:text>$N-0</xsl:text><xsl:value-of select="../@code"/> </xsl:otherwise> </xsl:choose> </xsl:if> <xsl:if test = "$pin_cnt_in_net <2"> <xsl:text>?</xsl:text> </xsl:if> </xsl:if> </xsl:if> </xsl:template> </xsl:stylesheet>
Ecco il file OrcadPCB2 risultante.
( { Eeschema Netlist Version 1.1 29/08/2010 21:07:51 eeschema (2010-08-28 BZR 2458)-unstable} ( 4C6E2141 $noname P1 CONN_4 ( 1 VCC ) ( 2 /SIG_OUT ) ( 3 /CLOCK_IN ) ( 4 GND ) ) ( 4C6E20BA $noname U2 74LS74 ( 1 VCC ) ( 2 /SIG_OUT ) ( 3 N-04 ) ( 4 VCC ) ( 5 /SIG_OUT ) ( 6 ? ) ( 7 GND ) ( 14 VCC ) ) ( 4C6E20A6 $noname U1 74LS04 ( 1 /CLOCK_IN ) ( 2 N-04 ) ( 7 GND ) ( 14 VCC ) ) ( 4C6E2094 $noname C1 CP ( 1 /CLOCK_IN ) ( 2 GND ) ) ( 4C6E208A $noname R1 R ( 1 VCC ) ( 2 /CLOCK_IN ) ) ) *
Interfaccia plugin di Eeschema
I convertitori di netlist intermedia possono essere automaticamente eseguiti dall’interno di Eeschema.
Inizializzazione della finestra di dialogo
È possibile aggiungere una nuova scheda interfaccia utente di plugin di netlist facendo clic sul pulsante Aggiungi plugin.
Ecco come appaiono i dati di configurazione per la scheda PadsPcb:
Parametri di configurazione plugin
La finestra di dialogo di configurazione plugin richiede le seguenti informazioni:
-
Il titolo: per esempio, il nome del formato della netlist.
-
La riga di comando che serve per eseguire il convertitore.
Fatto clic sul pulsante della netlist ecco cosa succede:
-
Eeschema crea un file di netlist intermedio *.xml, per esempio test.xml.
-
Eeschema esegue il plugin leggendo test.xml e crea test.net.
Generazione di file di netlist tramite linea di comando
Assumendo che si stia usando il programma xsltproc.exe per applicare il foglio di stile al file intermedio, xsltproc.exe verrà eseguito tramite il seguente comando:
xsltproc.exe -o <nomefile in uscita> <nomefile foglio di stile> <file XML in ingresso da convertire>
In KiCad sotto Windows la riga di comando è la seguente:
f:/kicad/bin/xsltproc.exe -o "%O" f:/kicad/bin/plugins/netlist_form_pads-pcb.xsl "%I"
Sotto Linux il comando diventa il seguente:
xsltproc -o "%O" /usr/local/kicad/bin/plugins/netlist_form_pads-pcb.xsl "%I"
Dove netlist_form_pads-pcb.xsl è il foglio di stile che si sta applicando. Non si deve dimenticare le virgolette intorno ai nomi dei file, ciò permette di avere spazi dopo la sostituzione da parte di Eeschema.
Il formato della riga di comando accetta parametri nei nomi di file:
I parametri di formattazione supportati sono:
-
%B ⇒ nome file base e percorso del file di uscita selezionato, senza percorso ed estensione.
-
%I ⇒ il nome del file completo di percorso del file di ingresso temporaneo (il netfile intermedio).
-
%O ⇒ nome e percorso completi del file d’uscita scelto dall’utente.
%I verrà rimpiazzato dall’effettivo nome file intermedio
%O verrà rimpiazzato dall’effettivo nome del file d’uscita.
Formato della riga di comando: esempio per xsltproc
Il formato della riga di comando per xsltproc è il seguente:
<percorso di xsltproc> xsltproc <parametri di xsltproc>
sotto Windows:
f:/kicad/bin/xsltproc.exe -o "%O" f:/kicad/bin/plugins/netlist_form_pads-pcb.xsl "%I"
sotto Linux:
xsltproc -o "%O" /usr/local/kicad/bin/plugins/netlist_form_pads-pcb.xsl "%I"
In tutti gli esempi sopra descritti si presume che xsltproc sia installato sul proprio computer sotto Windows e che tutti i file siano posti in kicad/bin.
Generazione distinta materiali
Dato che il file di netlist intermedio contiene tutte le informazioni sui componenti utilizzati, da esso è possibile estrarre una distinta materiali. Ecco la finestra di impostazioni del plugin (su Linux) per creare un file di distinta materiali personalizzato:
Il percorso del foglio di stile bom2csv.xsl dipende dal sistema operativo in uso. Attualmente il migliore foglio di stile XSLT per la generazione della distinta materiali si chiama bom2csv.xsl. Questo è modificabile liberamente per venire incontro alle proprie esigenze, ma se si sviluppa qualcosa di universalmente utile, chiedete e la comunità degli sviluppatori sarà ben lieta di includere i vostri miglioramenti nel progetto KiCad.
Formato della riga di comando: esempio di script python
Il formato della riga di comando per python è qualcosa del genere:
python <nome file script> <file in ingresso> <file in uscita>
sotto Windows:
python *.exe f:/kicad/python/mio_script_python.py "%I" "%O"
sotto Linux:
python /usr/local/kicad/python/mio_script_python.py "%I" "%O"
Assumendo che python sia installato nel proprio PC.
Struttura etlist intermedia
Questo campione dà un’idea del formato del file netlist.
<?xml version="1.0" encoding="utf-8"?> <export version="D"> <design> <source>F:\kicad_aux\netlist_test\netlist_test.sch</source> <date>29/08/2010 21:07:51</date> <tool>eeschema (2010-08-28 BZR 2458)-unstable</tool> </design> <components> <comp ref="P1"> <value>CONN_4</value> <libsource lib="conn" part="CONN_4"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E2141</tstamp> </comp> <comp ref="U2"> <value>74LS74</value> <libsource lib="74xx" part="74LS74"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E20BA</tstamp> </comp> <comp ref="U1"> <value>74LS04</value> <libsource lib="74xx" part="74LS04"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E20A6</tstamp> </comp> <comp ref="C1"> <value>CP</value> <libsource lib="device" part="CP"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E2094</tstamp> <comp ref="R1"> <value>R</value> <libsource lib="device" part="R"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E208A</tstamp> </comp> </components> <libparts/> <libraries/> <nets> <net code="1" name="GND"> <node ref="U1" pin="7"/> <node ref="C1" pin="2"/> <node ref="U2" pin="7"/> <node ref="P1" pin="4"/> </net> <net code="2" name="VCC"> <node ref="R1" pin="1"/> <node ref="U1" pin="14"/> <node ref="U2" pin="4"/> <node ref="U2" pin="1"/> <node ref="U2" pin="14"/> <node ref="P1" pin="1"/> </net> <net code="3" name=""> <node ref="U2" pin="6"/> </net> <net code="4" name=""> <node ref="U1" pin="2"/> <node ref="U2" pin="3"/> </net> <net code="5" name="/SIG_OUT"> <node ref="P1" pin="2"/> <node ref="U2" pin="5"/> <node ref="U2" pin="2"/> </net> <net code="6" name="/CLOCK_IN"> <node ref="R1" pin="2"/> <node ref="C1" pin="1"/> <node ref="U1" pin="1"/> <node ref="P1" pin="3"/> </net> </nets> </export>
Struttura generale del file netlist
La netlist intermedia consta di cinque sezioni.
-
La sezione intestazione.
-
La sezione componenti.
-
La sezione librerie di parti.
-
La sezione librerie.
-
La sezione collegamenti.
Il contenuto del file ha il delimitatore <export>
<export version="D"> ... </export>
Sezione intestazione
L’intestazione ha il delimitatore <design>
<design> <source>F:\kicad_aux\netlist_test\netlist_test.sch</source> <date>21/08/2010 08:12:08</date> <tool>eeschema (2010-08-09 BZR 2439)-unstable</tool> </design>
Questa sezione può essere considerata una sezione di commento.
La sezione componenti
La sezione componenti ha il delimitatore <componenti>
<components> <comp ref="P1"> <value>CONN_4</value> <libsource lib="conn" part="CONN_4"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E2141</tstamp> </comp> </components>
Questa sezione contiene l’elenco dei componente nello schema. Ogni componente viene descritto in questo modo:
<comp ref="P1"> <value>CONN_4</value> <libsource lib="conn" part="CONN_4"/> <sheetpath names="/" tstamps="/"/> <tstamp>4C6E2141</tstamp> </comp>
libsource | name of the lib where this component was found. |
---|---|
part |
component name inside this library. |
sheetpath |
path of the sheet inside the hierarchy: identify the sheet within the full schematic hierarchy. |
tstamps (time stamps) |
time stamp of the schematic file. |
tstamp (time stamp) |
time stamp of the component. |
Nota sulle marcature temporali per i componenti
Per identificare un componente in una netlist e quindi in una scheda, il marcatempo viene usato come riferimento univoco per ogni componente. Comunque KiCad fornisce in modo alternativo per identificare il corrispondente componente di una impronta sulla scheda. Ciò permette la ri-annotazione di componenti in un progetto di schema elettrico non perdendo il collegamento tra il componente e la sua impronta.
Un marcatore temporale è un identificatore univoco per ogni componente o foglio in un progetto di schema elettrico. Ma in caso di gerarchie complesse, lo stesso foglio viene usato più di una volta, perciò il foglio contiene componenti aventi la stessa marcatura temporale.
Un dato foglio dentro una gerarchia complessa possiede un identificatore univoco: il suo percorso foglio. Un dato componente (dentro una gerarchia complessa) possiede un identificativo univoco: il percorso foglio + la sua marcatura temporale.
La sezione libparts
La sezione libparts ha un delimitatore <libparts>, e il contenuto di questa sezione viene definito nelle librerie di schemi. La sezione libparts contiene:
-
Il delimitatore dei nomi impronte permessi (i nomi usano i caratteri jolly) <fp>.
-
I campi definiti nel delimitatore di libreria <fields>.
-
L’elenco dei delimitatori di pin <pins>.
<libparts> <libpart lib="device" part="CP"> <description>Condensateur polarise</description> <footprints> <fp>CP*</fp> <fp>SM*</fp> </footprints> <fields> <field name="Reference">C</field> <field name="Valeur">CP</field> </fields> <pins> <pin num="1" name="1" type="passive"/> <pin num="2" name="2" type="passive"/> </pins> </libpart> </libparts>
Le linee come <pin num="1" type="passive"/> descrivono anche il tipo elettrico del pin. I tipi di pin elettrici possibili sono:
Input |
Normale pin di ingresso |
Output |
Normale pin di uscita |
Bidirectional |
Ingresso o uscita |
Tri-state |
Bus ingresso/uscita |
Passive |
Normale capo di componente passivo |
Unspecified |
Tipo elettrico sconosciuto |
Power input |
Ingresso di potenza, per es. alimentazione |
Power output |
Uscita di potenza, per es. in un alimentatore |
Open collector |
Collettore aperto, comune dei comparatori analogici |
Open emitter |
Emettitore aperto, presente in alcuni circuiti logici |
Not connected |
Deve essere lasciato aperto nello schema elettrico |
La sezione librerie
La sezione librerie possiede il delimitatore <libraries>. Questa sezione contiene l’elenco delle librerie di schemi elettrici usate nel progetto.
<libraries> <library logical="device"> <uri>F:\kicad\share\library\device.lib</uri> </library> <library logical="conn"> <uri>F:\kicad\share\library\conn.lib</uri> </library> </libraries>
La sezione collegamenti
La sezione collegamenti possiede il delimitatore <nets>. Questa sezione contiene le "connessioni" dello schema elettrico.
<nets> <net code="1" name="GND"> <node ref="U1" pin="7"/> <node ref="C1" pin="2"/> <node ref="U2" pin="7"/> <node ref="P1" pin="4"/> </net> <net code="2" name="VCC"> <node ref="R1" pin="1"/> <node ref="U1" pin="14"/> <node ref="U2" pin="4"/> <node ref="U2" pin="1"/> <node ref="U2" pin="14"/> <node ref="P1" pin="1"/> </net> </nets>
Questa sezione elenca tutti i collegamenti presenti nello schema elettrico.
Un tipico collegamento contiene i seguenti elementi.
<net code="1" name="GND"> <node ref="U1" pin="7"/> <node ref="C1" pin="2"/> <node ref="U2" pin="7"/> <node ref="P1" pin="4"/> </net>
net code |
è un identificatore interno per questo collegamento |
name |
è un nome per questo collegamento |
node |
dà un piedino di riferimento connesso per questo collegamento |
Ancora su xsltproc
Fare riferimento alla pagina: http://xmlsoft.org/XSLT/xsltproc.html
Introduzione
xsltproc è uno strumento a riga di comando per l’applicazione di fogli di stile XSLT a documenti XML. Nonostante sia è stato sviluppato come parte del progetto GNOME, esso può operare independentemente dal desktop di GNOME.
xsltproc viene invocato dalla riga di comando con il nome del foglio di stile da usare seguito dal nome del file o dei file ai quali il foglio di stile deve essere applicato. Userà lo standard input se viene fornito il nome file - .
Se un foglio di stile viene incluso in un documento XML con istruzioni di elaborazione del foglio di stile, non è necessario nominare alcun foglio di stile nella riga di comando. xsltproc rileverà automaticamente il foglio di stile incluso e lo userà. Come impostazione predefinita, i risultati finscono nello stdout. È possibile specificare un file per il risultato usando l’opzione -o .
Sinossi
xsltproc [[-V] | [-v] | [-o *file* ] | [--timing] | [--repeat] | [--debug] | [--novalid] | [--noout] | [--maxdepth *val* ] | [--html] | [--param *nome* *valore* ] | [--stringparam *nome* *valore* ] | [--nonet] | [--path *percorsi* ] | [--load-trace] | [--catalogs] | [--xinclude] | [--profile] | [--dumpextensions] | [--nowrite] | [--nomkdir] | [--writesubtree] | [--nodtdattr]] [ *stylesheet* ] [ *file1* ] [ *file2* ] [ *....* ]
Opzioni della riga di comando
-V o --version
Mostra la versione di libxml e libxslt usati.
-v o --verbose
Stampa tutti i passaggi intrapresi da xsltproc nell’elaborazione del foglio di stile e del documento.
-o o --output file
Uscita diretta al file di nome file. Per uscite multiple, tecnica conosciuta anche col nome ``chunking'', -o cartella/ dirige i file di uscita in una specifica cartella. La cartella deve esistere già.
--timing
Mostra il tempo usato per l’analisi del foglio di stile, l’analisi del documento, l’applicazione del foglio di stile e il salvataggio dei risultati. Mostrati in millisecondi.
--repeat
Esegue la trasformazione 20 volte. Usata per i test di tempistica.
--debug
Emette un albero XML del documento trasformato a scopo di debug.
--novalid
Salta il caricamento del DTD del documento.
--noout
Non emettere alcun risultato.
--maxdepth valore
Regola la profondità massima della pila di modelli prima che libxslt concluda che si tratta di un ciclo infinito. Il valore predefinito è 500.
--html
Il file in ingresso è un file HTML.
--param nome valore
Passa un parametro di nome nome e di valore valore al foglio di stile. Si può passare più coppie nome/valore fino ad un massimo di 32. Se il valore passato è una stringa invece che un identificatore di nodo, usare invece --stringparam .
--stringparam nome valore
Passa un parametro di nome nome e valore valore dove valore è una stringa invece che un identificatore di nodo (nota: la stringa deve essere con codifica utf-8).
--nonet
Non usare Internet per recuperare DTD, entità o documenti.
--path percorsi
Usare l’elenco (separato da spazi o colonne) di percorsi di file specificati da paths per caricare le DTD, entità o documenti.
--load-trace
Mostra su stderr tutti i documenti caricati durante l’elaborazione.
--catalogs
Usa il catalogo SGML specificato in SGML_CATALOG_FILES per trovare la posizione di entità esterne. Come impostazione predefinita, xsltproc consulta il catalogo specificato in XML_CATALOG_FILES. Se questo non è specificato, usa /etc/xml/catalog.
--xinclude
Processa il documento in ingresso usando la specifica Xinclude. Maggiori dettagli su questo argomento si possono trovare nella specifica Xinclude: http://www.w3.org/TR/xinclude/
--profile --norman
Fornisce in uscita informazioni di profilazione che dettagliano la quantità di tempo speso in ogni parte del foglio di stile. Utile per l’ottimizzazione del foglio di stile.
--dumpextensions
Scarica l’elenco di tutte le estensioni registrate su stdout.
--nowrite
Non scrive su nessun file o risorsa.
--nomkdir
Non crea nessuna cartella.
--writesubtree percorso
Permette la scrittura file solo all’interno del sotto albero percorso .
--nodtdattr
Nno applica gli attributi predefiniti dal DTD del documento.
Valori di ritorno di xsltproc
xsltproc restituisce un numero di stato che può tornare utile se lo si chiama dall’interno di uno script.
0: normale
1: nessun argomento
2: troppi parametri
3: opzione sconosciuta
4: fallita l’analisi del foglio di stile
5: errore nel foglio di stile
6: errore in uno dei documenti
7: metodo xsl:output non supportato
8: parametro stringa contenente sia apici che virgolette
9: errore interno
10: l’elaborazione è stata interrotta da un messaggio di terminazione
11: impossibile scrivere il risultato sul file di uscita
Ulteriori informazioni su xsltproc
pagina web di libxml: http://www.xmlsoft.org/
Pagina W3C XSLT: http://www.w3.org/TR/xslt
Simulatore
Eeschema incorpora un simulatore di circuiti elettronici che usa ngspice come motore di simulazione.
Quando si lavora con il simulatore, si può trovare utile la libreria ufficiale pspice. Essa contiene simboli comuni usati per la simulazione come sorgenti di tensione o corrente, o transistor con pin numerati in modo da corrispondere alle specifiche di ordine del nodo di ngspice.
Ci sono anche dei progetti dimostrativi per illustrare le capacità di simulazione. Si trovano nella cartella demos/simulation.
Assegnazione modelli
Prima di avviare una simulazione, i componenti devono avere assegnato un modello Spice.
Ogni componente può avere solo un modello assegnato, anche se il componente consiste di più unità. In tal caso, la prima unità deve specificare il modello.
I componenti passivi con riferimento all’accoppiamento di un tipo di dispositivo in notazione Spice (R* per le resistenze, C* per i condensatori, L* per le induttanze) avranno modelli assegnati implicitamente e useranno il campo valore per determinare le loro proprietà.
Si faccia presente che nella notazione spice, 'M' sta per milli e 'Meg' per mega. Se si preferisce usare 'M' per indicare il prefisso mega, è possibile indicarlo nella finestra di dialogo delle impostazioni di simulazione. |
Le informazioni sui modelli Spice sono memorizzate come testo nei campi dei simboli, perciò li si può definire sia nell’editor dei simboli che in quello dello schema elettrico. Aprire la finestra di dialogo delle proprietà del simbolo e fare clic sul pulsante Modifica modello Spice per aprire la finestra di dialogo dell’editor del modello Spice.
La finestra di dialogo della modifica del modello Spice ha tre linguette corrispondenti a diversi tipi di modello. Ci sono due opzioni comuni a tutti i tipi di modello:
Disable symbol for simulation |
When checked the component is excluded from simulation. |
Alternate node sequence |
Allows one to override symbol pin to model node mapping. To define a different mapping, specify pin numbers in order expected by the model. 'Example:'
To match the symbol pins to the Spice model nodes shown above, one needs to use an alternate node sequence option with value: "1 3 5 2 4". It is a list of pin numbers corresponding to the Spice model nodes order. |
Passivo
La scheda Passivo permette all’utente di assegnare un modello di dispositivo passivo (resistore, condensatore o induttore) ad un componente. È un’opzione usata raramente, dato che i componenti passivi hanno modelli assegnati implicitamente, a meno che il riferimento del componente non corrisponda all’effettivo tipo di dispositivo.
I modelli di dispositivi passivi esplicitamente definiti hanno la priorità su quelli assegnati implicitamente. Questo significa che una volta che un modello di dispositivo passivo viene assegnato, i campi di riferimento e valore non sono presi in considerazione durante la simulazione. Ciò può portare ad una situazione di confusione dove il valore del modello assegnato non corrisponde con quello mostrato sullo schema elettrico. |
Tipo |
Seleziona il tipo di dispositivo (resistore, condensatore o induttore). |
Valore |
Definisce la proprietà del dispositivo (resistenza, capacità o induttanza). Il valore può usare i soliti prefissi di unità di Spice (come elencato sotto il campo di inserimento testo) e dovrebbe usare il punto come separatore decimale. Si noti che Spice non interpreta correttamente i prefissi inseriti nei valori (per es. 1k5). |
Modello
La scheda Modello viene usata per assegnare un semiconduttore o un modello complesso definito in un file di libreria esterno. Le librerie del modello Spice vengono spesso fornite dal costruttore del dispositivo.
La finestra di testo principale mostra i contenuti del file di libreria selezionato. È pratica comune mettere la descrizione del modello dentro i file delle librerie, includendo l’ordine dei nodi.
File |
Percorso ad un file di libreria Spice. Questo file verrà usato dal simulatore, come viene aggiunto usando la direttiva .include. |
Modello |
Il modello di dispositivo selezionato. Quando un file viene selezionato, l’elenco viene riempito con i modelli disponibili tra cui scegliere. |
Tipo |
Seleziona il tipo di modello (subcircuito, BJT, MOSFET o diodo). Normalmente viene impostato automaticamente quando viene selezionato un modello. |
Sorgente
La scheda Sorgente viene usata per assegnare un modello di sorgente di alimentazione o di segnale. Ci sono due sezioni: Analisi DC/AC e Analisi del transiente. Ognuna definisce i parametri sorgente per il tipo di simulazione corrispondente.
L’opzione Tipo sorgente si applica a tutti i tipi di simulazione.
Fare riferimento alla documentazione ngspice, capitolo 4 (Sorgenti di tensione e corrente) per ulteriori dettagli sulle sorgenti.
Direttive Spice
È possibile aggiungere direttive Spice piazzandole nei campi di testo su un foglio dello schema. Questo approccio torna comodo, per esempio, per la definizione del tipo di simulazione predefinita. Questa funzionalità è limitata alle direttive Spice che cominciano con un punto (per es. ".tran 10n 1m"), e non è possibile piazzare componenti aggiuntivi usando i campi di testo.
Simulazione
Per avviare una simulazione, aprire la finestra della Simulazione Spice selezionando il menu Strumenti→Simulatore nella finestra dell’editor degli schemi elettrici.
La finesta è divisa in diverse sezioni:
Menu
File
Nuovo grafico |
Crea una nuova scheda nel pannello del grafico. |
Apri libretto di lavoro |
Apre un elenco di segnali graficati. |
Salva libretto di lavoro |
Salva un elenco di segnali graficati. |
Salva come immagine |
Esporta il grafico attivo in un file .png . |
Salva come file .csv |
Esporta i punti dei dati grezzi del grafico attivo in un file .csv . |
Esci dalla simulazione |
Chiude la finestra di dialogo. |
Simulazione
Avvia simulazione |
Esegue una simulazione usando le impostazioni correnti. |
Aggiungi segnali… |
Apre una finestra di dialogo per selezionare i segnali da graficare. |
Campiona dallo schema |
Avvia lo strumento Sonda sullo schema elettrico. |
Regola il valore dei componenti |
Avvia lo strumento Regola. |
Mostra la netlist SPICE… |
Apre una finestra di dialogo che mostra la netlist generata per il circuito simulato. |
Impostazioni… |
Apre la finestra di dialogo delle impostazioni di simulazione. |
Vista
Ingrandisci |
Ingrandisce il grafico attivo. |
Rimpicciolisci |
Rimpicciolisce il grafico attivo. |
Adatta allo schermo |
Regola l’ingrandimento per visualizzare tutto il grafico. |
Mostra griglia |
Commuta la visibilità della griglia. |
Mostra legenda |
Commuta la visibilità della legenda. |
Barra strumenti
Questa barra strumenti dà accesso alle funzioni utilizzate più frequentemente.
Avvia/Blocca Simulazione |
Avvia o blocca la simulazione. |
Aggiungi segnali |
Apre una finestra di dialogo per selezionare i segnali da graficare. |
Sonda |
Avvia lo strumento Sonda sullo schema elettrico. |
Regola |
Avvia lo strumento Regola sullo schema elettrico. |
Impostazioni |
Il pannello grafico
Visualizza i risultati della simulazione in forma di grafici. Si possono avere più grafici aperti in schede separate ma solo quella attiva viene aggiornata quando viene eseguita una simulazione. In questo modo è possibile confrontare i risultati di simulazione di esecuzioni diverse.
I grafici possono essere personalizzati abilitando o disabilitando la visibilità della griglia e della legenda usando il menu Visualizza. Quando la legenda è visibile, questa può essere trascinata per cambiarne la posizione.
Interazione del pannello del grafico:
-
la rotellina del mouse per ingrandire / rimpicciolire
-
clic destro per aprire il menu a scomparsa e regolare la visualizzazione
-
disegnare un rettangolo di selezione per fare lo zoom sull’area selezionata
-
trascinare un cursore per cambiarne le coordinate
Console d’uscita
La console d’uscita mostra i messsaggi generati dal simulatore. Si consigla di controllare sempre la console di uscita per verificare che non ci siano errori o avvertenze.
Elenco segnali
Mostra l’elenco dei segnali mostrati nel grafico attivo.
Interazione elenco segnali:
-
click destro apre un menu contestuale che consente di nascondere il segnale o commutare il cursore
-
doppio clic per nascondere il segnale
Elenco cursori
Mostra l’elenco dei cursori e delle loro coordinate. Ogni segnale può avere un cursire visualizzato. La visibilità dei cursori viene impostata usando l’elenco Segnali.
Pannello di regolazione
Mostra i componenti prelevati con lo strumento Regola. Il pannello Regola permette all’utente di modificare velocemente i valori del componente e di osservare la loro influenza sui risultati della simulazione - ogni volta che il valore di un componente viene cambiato, la simulazione viene riavviata e i grafici aggiornati.
Per ogni componente ci sono alcuni controlli associati:
-
Il campo di testo in cima imposta il valore massimo del componente.
-
Il campo di testo di mezzo imposta il valore corrente del componente.
-
Il campo di testo in fondo imposta il valore minimo del componente.
-
Il cursore permette all’utente di modificare il valore del componente in modo agevole.
-
Il pulsante Salva modifica il valore del componente sullo schema al valore impostato con il cursore.
-
Il pulsante X rimuove il componente dal pannello di regolazione e ne ripristina il valore originale.
I tre campi di testo riconoscono i prefissi di unità Spice.
Strumento di regolazione
Lo strumento di regolazione permette all’utente di prelevare i componenti per regolarli.
Per selezionare un componente per la regolazione, fare clic su uno sullo schema con lo strumento attivo. I componenti selezionati appariranno nel pannello Regola. Si possono regolare solo i componenti passivi.
Strumento sonda
Lo strumento sonda fornisce un modo semplice per selezionare i segnali da usare per i grafici.
Per aggiungere un segnale al grafico, fare clic su un filo corrispondete nell’editor dell schema elettrico mentre lo strumento è attivo.
Impostazioni di simulazione
La finestra di impostazione della simulazione permette all’utente di impostare il tipo e i parametri di simulazione. Ci sono quattro schede:
-
AC
-
Trasferimento DC
-
Transiente
-
Personalizzato
Le prime tre schede forniscono dei moduli nei quali si possono specificare i parametri di simulazione. L’ultima scheda permette all’utente di inserire direttive Spice personalizzate per impostare la simulazione. È possibile trovare ulteriori informazioni sui tipi e sui parametri di simulazione nella documentazione ngspice, capitolo 1.2.
Un modo alternativo per configurare una simulazione consiste nel battere le direttive Spice nei campi testo nello schema. Ogni campo testo contenente una direttiva relativa ad un tipo di simulazione viene superata dall’impostazione selezionata nella finestra di dialogo. Significa che una volta che si usa la finestra di dialogo di simulazione, la finestra di dialogo passa sopra alle direttive dello schema elettrico fino alla riapertura della simulazione.
Ci sono due opzioni comuni a tutti i tipi di simulazione:
Regola i valori dei simboli passivi |
Rimpiazza i valori dei simboli passivi per convertire la notazione dei valori dei componenti comuni alla notazione Spice. |
Aggiungi il percorso completo per la direttiva di libreria .include |
Antepone i nomi file delle librerie di modelli Spice con il percorso completo. Normalmente ngspice richiede il percorso completo per accedere ad un file di libreria. |