Manuel de référence
Copyright
Ce document est la propriété des contributeurs ci-dessous, copyright © 2010-2016. Vous pouvez le distribuer et/ou le modifier selon les termes de la GNU General Public License (http://www.gnu.org/licenses/gpl.html), version 3 ou ultérieure ou bien selon la licence Creative Commons Attribution (http://creativecommons.org/licenses/by/3.0/), version 3.0 ou ultérieure.
Toutes les marques apparaissant dans ce document appartiennent à leurs propriétaires respectifs.
Contributeurs
Jean-Pierre Charras, Fabrizio Tappero, Marc Berlioux.
Traduction
Marc Berlioux <[email protected]>, 2015-2016.
Retours
Merci de signaler vos corrections de bugs, suggestions ou nouvelles versions ici :
-
Documentation de KiCad : https://gitlab.com/kicad/services/kicad-doc/issues
-
Bugs logiciel KiCad : https://gitlab.com/kicad/code/kicad/issues
-
Traductions de KiCad : https://gitlab.com/kicad/code/kicad-i18n/issues
Date de publication et version du logiciel
17 mars 2014.
Introduction à Pcbnew
Description
Pcbnew est un outil logiciel puissant de création de circuits imprimés disponible pour les systèmes d’exploitation Linux, Microsoft Windows et Apple OS X. Pcbnew est utilisé en combinaison avec le programme de saisie de schéma Eeschema pour créer des circuits imprimés.
Pcbnew gère des librairies d’empreintes. Chaque empreinte est le dessin d’un composant physique, incluant les pastilles qui établissent les connexions sur le circuit. Les empreintes nécessaires sont automatiquement chargées lors de la lecture de la Netliste. Toute modification des sélections d’empreintes ou de l’annotation peut être effectuée dans le schéma et mise à jour dans Pcbnew par la régénération de la netliste et sa relecture dans Pcbnew.
Pcbnew fournit un outil de vérification des règles de conception (DRC), qui évite les problèmes de distance entre les pistes ou les pastilles, et qui évite également les mauvaises ou les non-connexions de lignes électriques. Lors de l’utilisation du routeur interactif, il vérifie en permanence les règles de conception et vous aide à tracer automatiquement des pistes individuelles.
Pcbnew fournit un affichage du chevelu, montrant les liaisons des broches d’empreintes qui sont connectées sur le schéma. Ces connexions suivent dynamiquement le déplacement des empreintes et le tracé des pistes.
Pcbnew a un autorouteur simple mais efficace, pour aider à la production du circuit imprimé. L’Export/Import au format dsn SPECCTRA lui permet également l’utilisation d’autres auto-routeurs plus avancés.
Pcbnew fournit des fonctions spécifiquement prévues pour la production de circuits micro-ondes à ultra hautes fréquences (comme les pastilles de formes trapézoïdales ou complexes, le tracé automatique de bobines sur le circuit imprimé, etc…).
Principales Fonctionnalités de Dessin
La plus petite unité dans Pcbnew est de 1 nanomètre. Toutes les dimensions sont stockées sous forme de nanomètres.
Pcbnew peut générer jusqu’à 32 couches de cuivre, 14 couches techniques (sérigraphies, masques de soudure, adhésif de composant, pâte à souder et découpes des contours), plus 4 couches auxiliaires (dessins ou commentaires), et il gère en temps réel l’affichage du chevelu des pistes manquantes (rats nest).
L’affichage des éléments du PCB (pistes, pastilles, textes, dessins …) est personnalisable :
-
En mode plein ou en mode contour.
-
Avec ou sans le bon espacement des pistes.
Sur des circuits complexes, on peut choisir de cacher des couches, des zones ou les composants pour plus de clarté à l’écran. Les pistes peuvent aussi être mises en surbrillance pour fournir un contraste élevé.
Les empreintes peut être orientées sous n’importe quel angle, avec une résolution de 0.1 degré.
Pcbnew inclut un éditeur d’empreintes qui permet d’éditer individuellement les empreintes d’un PCB ou celles d’une librairie.
L’éditeur d’empreinte apporte plusieurs outils permettant de gagner du temps :
-
La numérotation rapide des pastilles, en faisant simplement glisser la souris au dessus de celles-ci dans l’ordre de la numérotation que vous désirez.
-
La génération aisée de réseaux rectangulaires ou circulaires de pastilles, pour les empreintes comme les LGA/BGA ou les empreintes circulaires.
-
L’alignement semi-automatique de rangées ou de colonnes de pastilles.
Les pastilles d’empreintes ont un ensemble de propriétés ajustables. Les pastilles peuvent être rondes, rectangulaires, ovales ou trapézoïdales. Pour les composants traversants, les perçages peuvent être décalés à l’intérieur des pastilles et être de forme ronde ou en forme de rainure. Les pastilles individuelles peuvent aussi être orientées et avoir des masques de soudure, de net, ou de pâte propres. Les pastilles peuvent également avoir une connexion pleine ou une connexion thermique pour faciliter la fabrication. Toute combinaison de pastilles individuelles peut être placée à l’intérieur d’une empreinte.
Pcbnew génère de façon aisée les fichiers nécessaires à la production :
-
Fichiers de fabrication :
-
Files for Photoplotters in GERBER RS274X format.
-
Files for drilling in EXCELLON format.
-
-
Fichier de tracé aux formats HPGL, SVG, DXF.
-
Fichiers de tracé et de perçage au format POSTSCRIPT.
-
Impressions locales.
Remarques générales
Du fait du grand besoin de précision et de contrôle nécessaire, il est grandement suggéré d’utiliser une souris 3 boutons dans Pcbnew. Beaucoup de fonctions, comme les déplacements, le zoom, etc.. requièrent une souris 3 boutons.
Dans cette nouvelle version de KiCad, Pcbnew a vu des changements radicaux apportés par les développeurs du CERN. Ceci inclut des fonctionnalités telles qu’un nouveau moteur de rendu (modes OpenGL et Cairo), un routeur interactif "push and shove", le routage et l’ajustage des tracés différentiels et des méandres, un éditeur d’empreinte retravaillé, et beaucoup d’autres fonctions. Veuillez noter que la plupart de ces nouvelles fonctionnalités existent uniquement dans les nouveaux modes d’affichage OpenGL et Cairo.
Installation
Installation du logiciel
L’installation est décrite dans la documentation de KiCad.
Modification de la configuration par défaut
Un fichier de configuration par défaut kicad.pro
est fourni dans kicad/share/template
. Ce fichier est utilisé comme configuration initiale de tous les nouveaux projets.
Ce fichier peut être modifié pour configurer les librairies à charger.
Pour ce faire :
-
Launch Pcbnew using kicad or directly. On Windows it is in
C:\kicad\bin\pcbnew.exe
and on Linux you can run/usr/local/kicad/bin/kicad
or/usr/local/kicad/bin/pcbnew
if the binaries are located in/usr/local/kicad/bin
. -
Sélectionnez Préférences - Librairies et Dossiers.
-
Modifiez à votre convenance.
-
Sauvegardez la configuration modifiée (Sauver Préférences) vers
kicad/share/template/kicad.pro
.
Managing Footprint Libraries
As of release 4.0, Pcbnew organises the footprint libraries using files called "footprint library tables". A footprint library table contains descriptions of some number of individual footprint libraries, along with a "nickname" for each library, which is used to refer to that library when referencing a footprint.
There are several kinds of library supported by Pcbnew, each of which is supported by a "plugin":
-
KiCad - native KiCad footprint libraries stored on a local filesystem in the .pretty format (folders containing .kicad_mod files)
-
Github - native KiCad footprint libraries in the .pretty format, stored online as a Github repository
-
Legacy - old-style KiCad footprint libraries (.mod files)
-
Eagle - Eagle footprint libraries (folders containing .fp files)
-
Geda-PCB - Geda PCB libraries
|
It is allowed to have footprints with the same name in different libraries. The footprint will be stored as a combination of library and footprint name, ensuring that the correct footprint is loaded from the appropriate library.
There are two footprint library tables: the global one and the project one.
Table des Librairies Globales
La table des librairies globales d’empreintes contient la liste des librairies qui sont toujours disponibles, quel que soit le fichier de projet actuellement chargé. La table est enregistrée dans un fichier fp-lib-table
dans le dossier personnel de l’utilisateur. L’emplacement de ce dossier dépend du système d’exploitation utilisé.
Table des Librairies Spécifiques au Projet
La table des librairies spécifiques au projet contient la liste des librairies d’empreintes qui sont disponibles spécifiquement pour le projet actuellement chargé. Cette table ne peut être modifiée que quand elle est chargée en même temps que le fichier de circuit imprimé du projet. Si aucun fichier n’est chargé, ou s’il n’y a pas de fichier de table de librairies d’empreintes dans le dossier du projet, une table vide sera créée, et pourra être éditée et enregistrée plus tard, avec le fichier d’affectation des empreintes.
When entries are defined in the project specific table, an `fp-lib-table file `containing the entries will be written into the folder of the currently open PCB.
Configuration Initiale
The first time CvPcb or Pcbnew is run and the global footprint table file fp-lib-table
is not found in the user’s home folder, Pcbnew will attempt to copy the default footprint table file fp_global_table
stored in the system’s KiCad template folder to the file fp-lib-table
in the user’s home folder. If fp_global_table
cannot be found, an empty footprint library table will be created in the user’s home folder. If this happens, the user can either copy fp_global_table
manually or configure the table by hand.
The default footprint library table includes all of the standard footprint libraries that are installed as part of KiCad.
There are also sample
|
The first thing to do when configuring KiCad do is to modify this table (add/remove entries) according to your work and the libraries you need for your projects.
It can be time consuming to have many libraries, especially if they are only found online (such as the Github libraries). If you find libraries slow to load, try removing ones you don’t need. |
Adding Table Entries using the Libraries Manager
The library table manager is accessible by:
L’image ci-dessous montre la fenêtre d’édition de la table des librairies d’empreintes qui s’ouvre par le menu "Préférences", "Gestionnaire des Librairies d’Empreintes".
In order to use a footprint library, it must first be added to either the global table or the project specific table. The project specific table is only applicable when a board file is open.
Each library table entry has a nickname. This must be unique within that table. The nickname does not have to be related in any way to the actual library file name or path.
There are some rules for valid library table entries:
-
The colon
:
character cannot be used anywhere in the nickname. -
Each library entry must have a valid path and/or file name depending on the type of library. Paths can be defined as absolute, relative, or by environment variable substitution (see below)
-
The appropriate plug in type must be selected in order for the library to be properly read.
There is also a description field to add a description of the library entry. The option field contains special options that are plugin-specific and is generally blank.
Although you cannot have duplicate library nicknames in the same table, you can have duplicate library nicknames in both the global and project specific footprint library table. The project specific table entry will take precedence over the global table entry when duplicated names occur.
Substitution d’une Variable d’Environnement
One of the most powerful features of the footprint library table is environment variable substitution. This allows you to define custom paths to where your libraries are stored in environment variables.
Environment variable substitution is supported by using the syntax ${ENV_VAR_NAME}
in the footprint library path.
There are some default variables that KiCad defines:
-
$KISYSMOD
: This points to where the default footprint libraries that were installed along with KiCad are located. You can override$KISYSMOD
by defining it yourself which allows you to substitute your own libraries in place of the default KiCad footprint libraries. -
When a board file is loaded,
$KPRJMOD
is defined using that board’s path. This allows you to refer to libraries in the project path without having to repeat the absolute path to the library in the project specific footprint library table.
Adding Table Entries using the Library Wizard
There is an interactive wizard that can assist you adding libraries to your library tables. It is accessible from the menu:
It can also be launched from the library manager, using the "Append With Wizard" button.
Here, the local libraries option is selected.
Here, the remote libraries option is selected.
The wizard will then lead you though the steps to adding a library, which will depend on the type of library you are adding. The process for each type will be explained below.
After a set of libraries is selected, the next page validates the choice:
If some selected libraries are incorrect (not supported, not a footprint library …) they will be flagged as ``INVALID''.
The last choice is the footprint library table to populate either:
-
the global table, or
-
the project specific table
Adding Existing Local Libraries
You might have local libraries already on your computer. For example:
-
Previously downloaded KiCad pretty directories
-
Legacy KiCad .mod files from older installations
-
Geda or Eagle libraries
These can be added with the "Files on my computer" option. You will be asked for the directory of the library to add and the format:
If you don’t select the format, the wizard will try to guess the right format.
Adding Libraries from Github
The wizard can also add libraries from Github with the "Github repository" option.
You need to specify the Github account that contains the repositories you want to add.
The offical KiCad library Github account is https://github.com/KiCad |
You may choose to save a local copy. If you do not save a local copy, the library will be a Github library, and will resync on every library reload. If you do save a local copy, the library will be a KiCad (pretty) library and will not automatically update in future.
The next page will load a list of .pretty repositories found on that Github account. You can choose any number to add to the library.
After confirmation,if you opted to save a copy, the footprints will be downloaded to the specified local location now. If you are using the Github plugin (no local copy), the footprints are loaded from Github when needed.
Using the KiCad plugin
The KiCad plugin deals with native KiCad libraries that exist on your computer (or some accessible filesystem).
It is used for pre-installed libraries that are installed along with KiCad, as well as other KiCad libraries, either from the official KiCad library collection, 3rd party libraries or your own curated libraries.
Installing KiCad plugin libraries
The Footprint Library Wizard can help you install libraries already on disk or on Github. However, for libraries on disk, you need to put them there yourself in the first place.
A KiCad library is a directory that contains some number of .kicad_mod files.
This is often done by unpacking an archive file, copying a directory from another location, or cloning a version-controlled repository.
The KiCad plugin does not specify any kind of version control, but Git is very commonly used to track changes to libraries, which can be critical to ensuring library data is safely recorded and backed up.
It is easy to track changes and contribute with the offical KiCad Github libraries. This is done using the Git version control software. If you want to contribute back, you’ll have to fork the repos on Github so you can send pull requests. If you just want to update libraries when needed, you don’t need to do that, you can clone the offical KiCad libraries directly and pull as needed.
Sending pull requests via Github will allow the automatic library standards checker to verify your proposed changes. See KiCad Library Conventions for details of the library conventions. |
Utilisation du Plugin GitHub
The GitHub plugin is a special plugin that provides an interface for read-only access to a remote GitHub repository consisting of .pretty footprints and optionally provides "Copy-On-Write" (COW) support for editing footprints read from the GitHub repo and saving them locally.
|
To add a GitHub entry to the footprint library table the "Library Path" in the footprint library table entry must be set to a valid GitHub URL.
Par exemple :
https://github.com/liftoff-sr/pretty_footprints
Typiquement, les URL GitHub ont cette forme :
https://github.com/nom_utilisateur/nom_dépot
The "Plugin Type" must be set to "Github".
The table below shows a footprint library table entry with the default options (no COW support):
Pseudo nom | Chemin Librairie | Type de Plugin | Options | Description. |
---|---|---|---|---|
github |
Github |
Empreintes Liftoff’s GH |
Copy-On-Write
To enable the "Copy-On-Write" feature the option allow_pretty_writing_to_this_dir
must be added to the "Options" setting of the footprint library table entry. This option is the "Library Path" for local storage of modified copies of footprints read from the GitHub repo. The footprints saved to this path are combined with the read-only part of the GitHub repository to create the footprint library. If this option is missing, then the GitHub library is read-only. If the option is present for a GitHub library, then any writes to this hybrid library will go to the local *.pretty
directory.
The github.com resident portion of this hybrid COW library is always read-only, meaning you cannot delete anything or modify any footprint in the specified GitHub repository directly. The aggregate library type remains "Github" in all further discussions, but it consists of both the local read/write portion and the remote read-only portion.
Le tableau ci-dessous montre une entrée de table de librairies d’empreintes avec une option COW. Notez, pour exemple seulement, l’utilisation de la variable d’environnement ${HOME}
. Le dossier github.pretty est situé dans le chemin ${HOME}/pretty/
. Chaque fois que vous utilisez l’option allow_pretty_writing_to_this_dir
, vous devez créer ce dossier manuellement au préalable, et il doit se terminer par l’extension .pretty
.
Nickname | Library Path | Plugin Type | Options | Description |
---|---|---|---|---|
github |
Github |
|
Liftoff’s GH footprints |
Le chargement des empreintes donnera toujours la priorité aux empreintes locales trouvées dans le chemin donné par l’option allow_pretty_writing_to_this_dir
. Une fois que vous avez enregistré une empreinte dans le dossier local de la librairie COW avec l’éditeur de l’empreinte, aucune empreinte GitHub mise à jour ne sera visible lorsque vous chargerez une empreinte avec le même nom qu’une empreinte enregistrée localement.
Ayez toujours un dossier local .pretty distinct pour chaque librairie GitHub, et ne les combinez jamais en vous référant plus d’une fois au même dossier. Également, n’utilisez pas le même dossier COW (.pretty) dans une entrée de table de librairies d’empreintes. Ça pourrait foutre le bordel. La valeur de l’option
allow_pretty_writing_to_this_dir
substituera toute variable d’environnement utilisant la notation ${}
pour désigner le chemin, de la même façon que pour le champ "Chemin Librairie".
Using Copy-On-Write to share footprints
What’s the point of COW? If you periodically email your COW pretty footprint modifications to the GitHub repository maintainer, you can help update the GitHub copy. Simply email the individual *.kicad_mod
files you find in your COW directories to the maintainer of the GitHub repository. After you’ve received confirmation that your changes have been committed, you can safely delete your COW file(s) and the updated footprint from the read-only part of GitHub library will flow down. Your goal should be to keep the COW file set as small as possible by contributing frequently to the shared master copies at https://github.com.
You can also contribute to library developement using local Git clones of the relevant libraries using the KiCad plugin and submitting pull requests to the library maintainers. |
Caching Github requests
The Github plugin can be slow, as it must download all the libraries from the Internet before they can be used.
Nginx can be used as a cache to the github server to speed up the loading of footprints. It can be installed locally or on a network server. There is an example configuration in KiCad sources at pcbnew/github/nginx.conf
. The most straightforward way to get this working is to overwrite the default nginx.conf with this one and export KIGITHUB=http://my_server:54321/KiCad
, where my_server
is the IP or domain name of the machine running nginx.
Scénarios d’Utilisation
Footprint libraries can be defined either globally or specifically to the currently loaded project. Footprint libraries defined in the user’s global table are always available and are stored in the fp-lib-table
file in the user’s home folder. Global footprint libraries can always be accessed even when there is no project net list file opened. The project specific footprint table is active only for the currently open net list file. The project specific footprint library table is saved in the file fp-lib-table
in the path of the currently open board file. You are free to define libraries in either table.
Chaque méthode présente des avantages et des inconvénients.
-
Vous pouvez définir toutes vos librairies dans la table globale, ce qui signifie qu’elles seront toujours disponibles quand vous en aurez besoin.
-
The disadvantage of this is that you may have to search through a lot of libraries to find the footprint you are looking for.
-
-
Vous pouvez aussi définir toutes vos librairies sur une base spécifique par projet.
-
The advantage of this is that you only need to define the libraries you actually need for the project which cuts down on searching.
-
The disadvantage is that you always have to remember to add each footprint library that you need for every project.
-
-
Vous pouvez aussi définir à la fois des librairies d’empreintes globales, et des librairies spécifiques au projet.
One usage pattern would be to define your most commonly used libraries globally and the library only required for the project in the project specific library table. There is no restriction on how you define your libraries.
Modifying footprints in a PCB project
When a footprint is added to a PCB, the entire footprint is copied into the PCB file (.kicad_pcb). This means changes to the footprint in the library do not automatically affect the PCB.
This also means that you can individually edit footprints on the PCB without affecting other instances of the same footprint (either on the same PCB or on other PCBs).
However, if you modify the library footprint, the next time you place an instance, it will not match existing footprints of the same name.
A common practice is to copy all the footprints you use to a separate version-controlled location, so that this project is not unexpectedly affected by changes to system or user libraries. Also, it ensures all the footprint resources used for the PCB can be easily distributed with the PCB file. |
Opérations Générales
Barres d’Outils et Commandes
Dans Pcbnew, il est possible d’exécuter des commandes de plusieurs façons :
-
Menus textes situés au sommet de la fenêtre principale.
-
Barre d’outils supérieure.
-
Barre d’outils latérale droite.
-
Barre d’outils latérale gauche.
-
Boutons de la souris (options de menu). Plus particulièrement :
-
The right mouse button reveals a pop-up menu the content of which depends on the element under the mouse arrow.
-
-
Clavier (Touches de fonctions
F1
,F2
,F3
,F4
,Shift
,Suppr/Del
,+
,-
,Page Haut
,Page Bas
etBarre d’espace
). La toucheEchap
annule généralement l’opération en cours.
L’image ci-dessous montre certains moyens d’accéder à ces opérations :
Commandes à la souris
Commandes de base
Bouton gauche
-
Single-click selects and displays the characteristics of the element under the cursor in the lower message panel.
-
Double-click displays the properties editor (if the element is editable) of the element under the cursor.
-
Single-click hold and drag starts a block selection operation.
Center button/wheel
-
Rapid zoom and some commands in layer manager.
-
Hold down the center button and draw a rectangle to zoom to the described area. Rotation of the mouse wheel will allow you to zoom in and zoom out.
Bouton droit
-
Displays a pop-up menu with the operations permitted on the element under the cursor.
In high density designs there can be so many elements under the cursor that the heuristics algorithm cannot determine a single element. In this case a disambiguation pop-up menu will be displayed with all of the elements to allow selection of the desired element.
Force display of disambiguation pop-up menu |
In some instances the heuristics algorithm does not allow the desired element to be selected. In this case, the disambiguation pop-up menu display can be forced to display by holding the Ctrl
key on Windows and Linux systems and holding Alt
on macOS systems.
Blocks
Selection behavior
The block drag behavior determines how elements are selected.
-
Dragging left to right selects only elements fully contained within the block.
-
Dragging right to left selects elements fully contained within and intersect the block.
Successive block selection can be used to change the selected elements. The table below shows the block select modifier keys and their associated behavior.
Modifier Keys | Selection Effect |
---|---|
|
Add block to existing selections. |
|
Subtract block from existing selections. |
Opérations sur les blocs
Les opérations de déplacement, inversion (miroir), copie, rotation et suppression de blocs sont toutes disponibles via le menu contextuel. On peut également zoomer sur la zone décrite par le bloc.
Le cadre du bloc est tracé en déplaçant la souris tout en maintenant le bouton gauche enfoncé. L’opération est exécutée lorsque le bouton est relâché.
En maintenant une des touches Shift
ou Ctrl
, ou Shift
et Ctrl
ensemble, pendant le tracé du bloc, les fonctions inverser, tourner, ou supprimer sont automatiquement sélectionnées comme indiqué dans le tableau ci-dessous :
Action | Effect |
---|---|
Left mouse button held down |
Trace framework to move block |
|
Trace framework for invert block |
|
Trace framework for rotating block 90° |
|
Trace framework to delete the block |
Center mouse button held down |
Trace framework to zoom to block |
Lors du déplacement d’un bloc :
-
Déplacer le bloc à sa nouvelle position et cliquer du bouton gauche pour déposer les éléments.
-
To cancel the operation use the right mouse button and select Cancel Block from the menu or press the
Esc
key.
Autrement, si aucune touche du clavier n’est enfoncé lors du tracé du bloc, utilisez le bouton droit pour afficher le menu contextuel et choisissez l’opération désirée.
Pour chaque opération sur un bloc, une fenêtre de sélection permet de limiter l’action à certains éléments.
Sélection de la taille de grille
Pendant la mise en place des éléments, le curseur se déplace sur une grille. La grille peut être activée ou désactivée à l’aide d’une icône de la barre d’outils de gauche.
Chacune des tailles de grille prédéfinies, ou une taille de grille définie par l’utilisateur, peuvent être choisies à l’aide du menu contextuel, ou par le menu déroulant de la barre d’outils du haut. La définition d’une taille de grille par l’utilisateur se fait en utilisant le menu Dimensions → Grille.
Réglage du niveau de zoom
Le niveau de zoom peut être changé par les méthodes suivantes :
-
Ouvrir le menu contextuel (bouton droit de la souris), et sélectionner le niveau de zoom désiré.
-
Utiliser les touches de fonctions suivantes :
-
F1
: Enlarge (zoom in) -
F2
: Reduce (zoom out) -
F3
: Redraw the display -
F4
: Center view at the current cursor position
-
-
Tourner la molette de la souris.
-
Tracer un rectangle avec le bouton du milieu de la souris enfoncé pour zoomer sur la zone délimitée.
Affichage des coordonnées du curseur
The cursor coordinates are displayed in inches or millimeters as selected using the 'In' or 'mm' icons on the left hand side toolbar.
Quelle que soit l’unité sélectionnée, Pcbnew travaille toujours avec une précision de 1/10000 d’inch.
La barre d’état au bas de la fenêtre affiche :
-
Le niveau de zoom actuel.
-
La position absolue du curseur.
-
La position relative du curseur (dx,dy). Notez que l’origine des coordonnées relatives du curseur peut être remis à zéro (0,0) à n’importe quelle position en appuyant sur la barre d’espace. La position relative du curseur est ensuite affichée en fonction du nouvel origine.
De plus, la position relative du curseur peut être affichée en utilisant des coordonnées polaires (angle + rayon). Ceci peut être activé ou désactivé par une icône de la barre d’outils de gauche.
Commandes au Clavier - Raccourcis
Beaucoup de commandes sont accessibles directement par le clavier, majuscules ou minuscules. La plupart des raccourcis sont affichés dans les menus. Certains n’apparaissant pas sont :
-
Delete
: deletes a footprint or a track. (Available only if the Footprint mode or the Track mode is active) -
V
: si l’outil Piste est actif, change de couche, ou place une via quand un tracé de piste est en cours. -
+
et-
: sélectionne la couche suivante ou précédente. -
Ctrl+F1
: affiche la liste de tous les raccourcis clavier. -
Espace
: remet à zéro l’origine des coordonnées relatives.
Opérations sur les blocs
Les opérations de déplacement, inversion (miroir), copie, rotation et suppression de blocs sont toutes disponibles via le menu contextuel. On peut également zoomer sur la zone décrite par le bloc.
Le cadre du bloc est tracé en déplaçant la souris tout en maintenant le bouton gauche enfoncé. L’opération est exécutée lorsque le bouton est relâché.
En maintenant une des touches Shift
ou Ctrl
, ou Shift
et Ctrl
ensemble, ou Alt,
pendant le tracé du bloc, les fonctions inverser, tourner, supprimer ou copier sont automatiquement sélectionnées comme indiqué dans le tableau ci-dessous :
Action | Effet |
---|---|
Bouton gauche de la souris enfoncé |
Déplacement du bloc |
|
Inversion du bloc |
|
Rotation du bloc de 90° |
|
Suppression du bloc |
|
Copie du bloc |
Quand une opération est faite sur un bloc, une fenêtre de sélection apparaît, qui permet de choisir les éléments concernés par l’action.
Any of the commands above can be canceled via the same pop-up menu or by pressing the Escape key (Esc
).
Unités utilisées dans les fenêtres
Les unités utilisées pour afficher les dimensions sont en pouces (inches) et en mm. L’unité souhaitée est sélectionnée en cliquant sur une des icônes de la barre d’outils de gauche : . Mais on peut aussi entrer l’unité utilisée pour définir une valeur, lors de la saisie d’une nouvelle valeur.
Les unités acceptées sont :
1 in |
1 pouce (inch) |
1 " |
1 pouce (inch) |
25 th |
25 thou (millième de pouce) |
25 mi |
25 mils (identique au thou) |
6 mm |
6 mm |
Les règles sont :
-
Les espaces entre nombre et unités sont autorisés.
-
Seules les deux premières lettres sont significatives.
-
Pour les pays utilisant un autre séparateur décimal que la virgule, le point (
.
) peut également être utilisé. Ainsi1,5
et1.5
seront identiques pour les français.
Barre de menus
La barre des menus du haut permet d’accéder aux fichiers (chargement et enregistrement), aux options de configuration, d’impression, de tracé, et aux fichiers d’aide.
Menu Fichiers
The File menu allows the loading and saving of printed circuits files, as well as printing and plotting the circuit board. It enables the export (with the format GenCAD 1.4) of the circuit for use with automatic testers.
Menu Editer
Permet quelques actions d’édition globales :
Menu Affichage
Permet :
-
Afficher/Cacher le Gestionnaire de Couches (sélection des couleurs pour l’affichage des couches et autres éléments. Permet aussi d’afficher/cacher les éléments).
-
Hide/Show the Microwave toolbar.
-
Display Library browser and 3D viewer.
-
Zoom functions
-
Setting grid and units
-
Select Drawing mode and Contrast mode
Fonctions de Zoom et d’affichage du circuit en 3D.
3D Visualisateur
Ouvre le visualisateur 3D. Exemple :
Setup menu
Permet d’accéder à deux boites de dialogues :
-
Options Couches (nombre de couches, activation et noms des couches).
-
Setting Design Rules (tracks and vias sizes, clearances).
Un menu important, qui permet le réglage :
-
Des tailles des textes et de l’épaisseur de ligne des tracés.
-
Des dimensions et caractéristiques des pads (pastilles).
-
Des valeurs globales pour les couches des masques de soudure et de pâte à souder.
Menu Placer
On y retrouve les fonctions de la barre d’outils de droite.
Menu Routage
Fonctions de routage.
Inspect menu
Permet :
-
List nets
-
Measure function
-
Design Rules Checker
Menu Outils
Permet :
-
Display load netlist dialog
-
Update PCB from schematic
-
Update Footprints from library
-
FreeRoute collaboration
-
Python scripting console
-
External plugins
Menu Préférences
Permet :
-
Sélection des librairies d’empreintes.
-
Paramétrage des options générales (unités, etc…).
-
Paramétrage des options d’affichage
-
Création, édition (et relecture) du fichier des raccourcis clavier.
Menu Aide
Permet d’accéder aux manuels utilisateur et aux informations de version.
Barre d’Outils Supérieure
Cette barre d’outils donne accès aux principales fonctions de Pcbnew.
Creation of a new printed circuit. |
|
Opening of an old printed circuit. |
|
Save printed circuit. |
|
Selection of the page size and modification of the file properties. |
|
Opens Footprint Editor to edit library or pcb footprint. |
|
Opens Footprint Viewer to display library or pcb footprint. |
|
|
Undo/Redo last commands (10 levels) |
Display print menu. |
|
Display plot menu. |
|
|
Zoom in and Zoom out (relative to the center of screen). |
Redraw the screen |
|
Fit to page |
|
Find footprint or text. |
|
Netlist operations (selection, reading, testing and compiling). |
|
DRC (Design Rule Check): Automatic check of the tracks. |
|
Selection of the working layer. |
|
Selection of layer pair (for vias) |
|
Footprint mode: when active this enables footprint options in the pop-up window. |
|
Routing mode: when active this enables routing options in the pop-up window |
|
Direct access to the router Freerouter |
|
Show / Hide the Python scripting console |
Barre d’Outils Auxiliaire
Sélection d’une largeur de piste déjà en utilisation. |
|
Sélection d’une taille de via déjà en utilisation. |
|
Largeur de piste automatique : si activée lors de la création d’une nouvelle piste, débutant depuis une piste existante, la largeur de la nouvelle piste est la même que celle existante. |
|
Sélection de la taille de grille. |
|
Sélection du facteur de zoom. |
Barre d’Outils Latérale Droite
Cette barre d’outils contient les outils d’édition pour modifier le circuit affiché dans Pcbnew.
Select the standard mouse mode. |
||
Highlight net selected by clicking on a track or pad. |
||
Display local ratsnest (Pad or Footprint). |
||
Add a footprint from a library. |
||
Placement of tracks and vias. |
||
Placement of zones (copper planes). |
||
Placement of keepout areas ( on copper layers ). |
||
Draw Lines on technical layers (i.e. not a copper layer). |
||
Draw Circles on technical layers (i.e. not a copper layer). |
||
Draw Arcs on technical layers (i.e. not a copper layer). |
||
Placement of text. |
||
Draw Dimensions on technical layers (i.e. not the copper layer). |
||
Draw Alignment Marks (appearing on all layers). |
||
Delete element pointed to by the cursor Note: When Deleting, if several superimposed elements are pointed to, priority is given to the smallest (in the decreasing set of priorities tracks, text, footprint). The function "Undelete" of the upper toolbar allows the cancellation of the last item deleted. |
||
Offset adjust for drilling and place files. |
||
Grid origin. (grid offset). Useful mainly for editing and placement of footprints. Can also be set in Dimensions/Grid menu. |
-
Placement d’empreintes, pistes, zones remplies, textes, etc…
-
Surbrillance d’équipotentielles.
-
Création de notes, d’éléments graphiques, etc…
-
La suppression d’éléments.
Barre d’Outils Latérale Gauche
La barre d’outils de gauche contient les options de contrôle et d’affichage qui agissent sur l’interface de Pcbnew.
Turns DRC (Design Rule Checking) on/off. Caution: when DRC is off incorrect connections can be made. |
||
Turn grid display on/off Note: a small grid may not be displayed unless zoomed in far enough |
||
Polar display of the relative co-ordinates on the status bar on/off. |
||
|
Display/entry of coordinates or dimensions in inches or millimeters. |
|
Change cursor display shape. |
||
Display general rats nest (incomplete connections between footprints). |
||
Display footprint rats nest dynamically as it is moved. |
||
Enable/Disable automatic deletion of a track when it is redrawn. |
||
Show filled areas in zones |
||
Do not show filled areas in zones |
||
Show only outlines of filled areas in zones |
||
Display of pads in outline mode on/off. |
||
Display of vias in outline mode on/off. |
||
Display of tracks in outline mode on/off. |
||
High contrast display mode on/off. In this mode the active layer is displayed normally, all the other layers are displayed in gray. Useful for working on multi-layer circuits. |
||
Hide/Show the Layers manager |
||
Access to microwaves tools. Under development |
Menus contextuels et édition rapide
Un clic droit de la souris ouvre un menu contextuel dont le contenu dépend de l’élément pointé par le curseur.
Celui-ci donne accès au :
-
Changing the display (center display on cursor, zoom in or out or selecting the zoom).
-
Changement de taille de grille.
-
Également, un clic droit sur un élément permet d’en modifier les paramètres les plus courants.
Les captures d’écrans plus bas montrent à quoi ressemblent ces menus contextuels.
Modes disponibles
Il y a 3 modes lors de l’utilisation des menus contextuels. Ces modes ajoutent ou suppriment certaines commandes spécifiques dans les menus contextuels.
et désactivés |
Mode Normal |
activé |
Mode Empreinte |
activé |
Mode Pistes |
Mode Normal
-
Menu contextuel sans sélection :
-
Menu contextuel avec une piste sélectionnée :
-
Menu contextuel avec une empreinte sélectionnée :
Mode Empreinte
Mêmes cas en Mode Empreinte ( activé)
-
Menu contextuel sans sélection :
-
Menu contextuel avec une piste sélectionnée :
-
Menu contextuel avec une empreinte sélectionnée :
Mode Pistes
Mêmes cas en Mode Pistes ( activé)
-
Menu contextuel sans sélection :
-
Menu contextuel avec une piste sélectionnée :
-
Menu contextuel avec une empreinte sélectionnée :
Implémentation Schématique
Lier un schéma à un circuit imprimé
D’une manière générale, une feuille schématique est liée à un circuit imprimé au moyen d’un fichier netliste, qui est normalement produit par l’éditeur utilisé pour faire le schéma. Pcbnew accepte des fichiers de netliste faits avec Eeschema ou Orcad PCB 2. Le fichier netliste, généré à partir du schéma, ne contient généralement pas les empreintes associées aux différents composants. Par conséquent, une étape intermédiaire est nécessaire. Au cours de cette étape intermédiaire, l’association des composants schématiques avec des empreintes physiques est effectuée. Dans KiCad, c’est CvPcb qui est utilisé pour créer cette association et un fichier nommé *.cmp
est produit. CvPcb met également à jour le fichier netliste en utilisant ces informations.
CvPcb peut également produire un "fichier stuff" *.stf
, qui peut servir à la rétro-annotation du champ F2 de chaque composant dans le schéma, épargnant ainsi la tâche de ré-assignation d’empreintes à chaque passe d’édition du schéma. Dans Eeschema, la copie d’un composant copiera également l’affectation de l’empreinte, et marquera la référence comme non affectée pour l’annotation auto-incrémentielle qui suivra.
Pcbnew lit le fichier netliste .net
modifié et, s’il existe, le fichier .cmp
. Dans le cas d’une empreinte ayant été changée directement dans Pcbnew, le fichier .cmp
est automatiquement mis à jour, évitant ainsi l’obligation d’exécuter CvPcb à nouveau.
Reportez-vous à la figure du manuel "Getting Started in KiCad" (Démarrer avec KiCad), section Échanges de données dans KiCad qui illustre le flux des données de KiCad, et comment sont obtenus les fichiers intermédiaires utilisés par les différents outils logiciels qui composent KiCad.
Processus de création d’un circuit imprimé
Après avoir créé votre schéma dans Eeschema :
-
Générez la netliste depuis Eeschema.
-
Assign each component in your netlist file to the corresponding land pattern (often called footprint) used on the printed circuit using Cvpcb.
-
Lancez Pcbnew, et lisez le fichier netliste. Ceci lira également le fichier .cmp contenant les associations d’empreintes.
Pcbnew chargera alors automatiquement toutes les empreintes nécessaires. Les empreintes pourront alors être placées sur la carte, manuellement ou automatiquement, et les pistes tracées.
Processus de mise à jour d’un circuit imprimé
Si le schéma est modifié, après qu’un circuit imprimé ait été généré, les étapes suivantes doivent être répétées :
-
Générez une nouvelle netliste depuis Eeschema.
-
Si les modifications apportées au schéma contiennent de nouveaux composants, les empreintes correspondantes devront être associées à l’aide de CvPcb.
-
Lancez Pcbnew, et lisez le fichier netliste modifié. Ceci relira également le fichier .cmp contenant les associations d’empreintes.
Pcbnew chargera alors automatiquement les nouvelles empreintes, ajoutera les nouvelles connexions et supprimera les connexions redondantes. Ce processus, appelé annotation "vers l’avant" (forward annotation), est un processus très courant quand un PCB est réalisé et mis à jour.
Lecture du fichier Netliste - Chargement d’empreintes
Boite de dialogue
Accessible par l’icône
Options disponibles
Sélection Empreinte |
Lien entre composants et empreintes correspondantes sur le circuit : le lien normal est par la Référence (option normale). Le timestamp peut être utilisé, après une réannotation du schéma, si l’annotation précedente a été détruite (option spéciale) |
Échange Empreinte |
Si une empreinte a changé dans la netliste : garder l’ancienne ou changer pour la nouvelle. |
Pistes non Connectées |
Garder les pistes existantes, ou supprimer les pistes erronées |
Empreintes Supplémentaires |
Supprimer les empreintes du circuit qui ne sont plus en netliste. Les empreintes avec l’attribut "Verrouillé" ne seront pas supprimées. |
Nets avec Pad Unique |
Supprime les nets avec pad unique . |
Chargement de nouvelles empreintes
Avec le backend GAL (Graphics Abstraction Layer), quand de nouvelles empreintes sont trouvées dans le fichier netliste, elles seront chargées, étalées, et prêtes à être placées en un groupe où vous le souhaiterez.
Avec l’ancien backend, quand de nouvelles empreintes sont trouvées dans le fichier netliste, elles sont automatiquement chargées et placées aux coordonnées (0,0).
Les nouvelles empreintes peuvent être déplacées et disposées une par une. Une meilleure façon est de les déplacer automatiquement :
Activez le Mode Empreinte ()
Déplacez le curseur sur une zone appropriée (vide de tous composants), et cliquez sur le bouton droit :
-
Place Automatiquement Nouvelles Empreintes, s’il y a déjà un circuit avec des empreintes existantes.
-
Place Automatiquement toutes les Empreintes, la première fois (à la création du circuit).
L’image suivante vous montre le résultat :
Les Couches
Introduction
Pcbnew peut travailler avec 50 différentes couches (ou layers) :
-
Between 1 and 32 copper layers for routing tracks.
-
14 couches techniques à usage fixe.
-
12 couches appairées (avant / arrière): Adhésif, Pâte à souder, Sérigraphie, Masque de soudure, Courtyard, Fabrication
-
2 standalone layers: Edge Cuts, Margin
-
-
4 auxiliary layers that you can use any way you want: Comments, E.C.O. 1, E.C.O. 2, Drawings
Réglage des options des couches
To open the Layers Setup from the menu bar, select Setup → Layers Setup.
The board thickness, number of copper layers, their names, and their function are configured there. Unused technical layers can be disabled.
Description des Couches
Couches Cuivrées
Les couches cuivrées sont les couches de travail habituelles utilisées pour placer ou réorganiser des pistes. Les numéros de couche vont de 0 (la première couche de cuivre, sur le dessus) à 31 (dessous). Étant donné que les composants ne peuvent être placés dans les couches intérieures (de nombre 1 à 30), seules les couches 0 et 31 sont des couches composants.
Le nom de chaque couche cuivrée est modifiable. Les couches cuivrées ont un attribut fonction qui est utile lors de l’utilisation du routeur externe Freerouter . Des exemples de noms de couche par défaut sont F.Cu ou In0 pour la couche numéro 0.
Couches Techniques Appairées
12 technical layers come in pairs: one for the front, one for the back. You can recognize them with the "F." or "B." prefix in their names. The elements making up a footprint (pad, drawing, text) of one of these layers are automatically mirrored and moved to the complementary layer when the footprint is flipped.
Les couches techniques appairées sont :
- Adhésif (F.Adhes et B.Adhes)
-
Elles sont utilisées pour l’application d’adhésif servant à coller les composants de surface sur le circuit, généralement avant la soudure à la vague.
- Pâte à Souder (F.Paste et B.Paste)
-
Utilisé pour produire un masque permettant de déposer de la pâte à braser sur les pastilles des composants de surface, en général avant le soudage par refusion. D’ordinaire, seules les pastilles des composants de surface occupent ces couches.
- Sérigraphie (F.SilkS et B.SilkS)
-
Ce sont les couches où les éléments de dessin des composants apparaissent. C’est là où vous dessinez des choses comme la polarité des composants, l’indicateur de la première broche, la référence pour le montage, etc…
- Masque de Soudure (F.Mask et B.Mask)
-
Celles-ci définissent les masques de soudure. Toutes les pastilles doivent apparaître sur une de ces couches (composants de surfaces), ou sur les deux (composants traversants), pour empêcher le vernis de venir recouvrir les pastilles.
- Courtyard (F.CrtYd et B.CrtYd)
-
Utilisées pour montrer quel encombrement un composant prend physiquement sur le PCB.
- Fabrication (F.Fab et B.Fab)
-
The fabrication layers are primarily used for documentation purposes to convey information to, for example, the PCB maker or the assembly house.
Couches Techniques Indépendantes
- Edge.Cuts
-
Cette couche est réservé pour le dessin du contour du circuit imprimé. Chaque élément (graphique, texte, …) placé sur cette couche apparaîtra sur toutes les autres couches. Utilisez cette couche uniquement pour dessiner les contours de la carte.
- Margin
-
Marge de recul du contour (?).
Couches à usage général
Ces couches sont destinées à n’importe quel usage. Elles peuvent être utilisées pour des textes, comme des instructions de montage ou de câblage, des dessins de construction en vue de créer un fichier pour l’assemblage ou l’usinage. Leurs noms sont :
-
Comments (Cmts.User)
-
Eco1.User
-
Eco2.User
-
Drawings (Dwgs.User)
Sélection de la couche de travail
Le choix de la couche de travail peut se faire de plusieurs façons :
-
En utilisant la barre d’outils de droite (Gestionnaire de Couches).
-
En utilisant la barre d’outils du haut.
-
Par le menu contextuel (bouton droit de la souris).
-
En utilisant les touches + et - (fonctionne seulement avec les couches cuivrées).
-
Par les raccourcis clavier.
Sélection par le gestionnaire de couches
Sélection par la barre d’outils du haut
Ceci sélectionne directement la couche de travail.
Les raccourcis clavier pour sélectionner la couche de travail y sont affichés.
Sélection par le menu contextuel
Le menu contextuel ouvre une boite de dialogue qui permet de choisir la couche de travail.
Sélection de paires de Couches pour les Vias
Si le bouton Ajouter pistes et vias est sélectionné sur la barre d’outils de droite, le menu contextuel offre la possibilité de changer la paire de couches utilisée pour les vias :
Cette sélection ouvre une boite de dialogue qui permet le choix des couches utilisées pour les vias.
When a via is placed the working (active) layer is automatically switched to the alternate layer of the layer pair used for the vias (unless 'Shift' is held when adding the via).
One can also switch to another active layer by hot keys, and if a track is in progress, a via will be inserted.
Utilisation du mode à haut contraste
On entre dans ce mode quand l’outil : est activé (barre d’outils de gauche).
Dans ce mode, la couche active est affichée comme dans le mode normal, tandis que toutes les autres couches sont affichées en gris.
Il y a deux cas où c’est utile :
Couches cuivrées en mode haut contraste
Quand un circuit utilise plus de 4 couches, ce mode permet à la couche active d’être plus facile à distinguer :
Mode Normal (couche cuivre de dessous active) :
Mode Haut-Contraste (couche cuivre de dessous active) :
Couches Techniques
Le second cas est quand il est nécessaire d’examiner les couches de pâte à souder et masques de soudure qui ne sont normalement pas affichées.
Les masques de pastilles sont affichés quand ce mode est actif.
Mode Normal (couche masque de soudure de dessus active) :
Mode Haut-Contraste (couche masque de soudure de dessus active) :
Créer et modifier un circuit
Création d’un circuit
Dessin du contour du circuit
C’est en général une bonne idée de définir en premier le contour du circuit. Le contour est tracé comme une séquence de segments de ligne. Sélectionnez 'Edge.Cuts' comme couche active et utilisez l’outil 'Addition de lignes ou polygones graphiques' pour tracer le bord, en cliquant à la position de chaque sommet, et double-cliquez pour terminer le contour. Les circuits ayant généralement des dimensions très précises, il peut être nécessaire d’utiliser l’affichage des coordonnées du curseur tout en traçant le contour. Rappelez-vous que les coordonnées relatives peuvent être mises à zéro à tout moment en utilisant la barre d’espace, et que l’on peut changer les unités par 'Ctrl-U'. Les coordonnées relatives permettent le dessin de dimensions très précises. Il est aussi possible de dessiner un contour circulaire (ou arc) :
-
Sélectionnez l’outil 'Addition de graphiques (Cercle)' ou 'Addition de graphiques (Arc de Cercle)'
-
Cliquez pour placer le centre du cercle
-
Ajustez le rayon en déplaçant la souris
-
Terminez en cliquant à nouveau.
L’épaisseur du contour peut être réglée dans le menu Paramètres (largeur recommandée = 150 en 1/10 de mils) ou via les Options, mais ce ne sera pas visible à moins que les graphiques ne soient affichés dans un autre mode que le mode contour. |
Le contour résultant peut ressembler à ceci :
Utilisation d’un dessin DXF pour le contour du circuit
Un autre moyen de dessiner le contour est d’importer un dessin au format DXF.
L’utilisation de cette fonctionnalité permet de dessiner des circuits aux formes beaucoup plus complexes qu’avec les possibilités de dessin de Pcbnew.
Par exemple, un logiciel de CAO mécanique peut être utilisé pour définir un circuit qui s’insère dans un boîtier particulier.
Préparation d’un dessin DXF pour l’importation dans KiCad
Les capacités d’importation de DXF dans KiCad ne supportent pas les éléments DXF comme POLYLINES ou ELLIPSES, et les fichiers DXF qui utilisent ces fonctionnalités ont besoin de quelques étapes de conversion pour les préparer à l’importation.
Un logiciel comme LibreCAD peut être utilisé pour faire ces conversions.
La première étape consiste à briser (Explode) les POLYLINES en formes plus simples. Dans LibreCAD, suivez ces étapes :
-
Ouvrez une copie du fichier DXF.
-
Sélectionnez la forme du circuit (les formes sélectionnées sont affichées avec des pointillés).
-
Dans le menu Modifier, choisissez Explode.
-
Appuyez sur Entrée.
As a next step, complex curves like ELLIPSIS need to be broken up in small line segments that 'approximate' the required shape. This happens automatically when the DXF file is exported or saved in the older DXF R12 file format (as the R12 format does not support complex curve shapes, CAD applications convert these shapes to line segments. Some CAD applications allow configuration of the number or the length of the line segments used). In LibreCAD the segment length it generally small enough for use in board shapes.
Dans LibreCAD, utilisez les étapes suivantes pour exporter vers le format de fichier DXF R12 :
-
Dans le menu Fichier, cliquez sur Enregistrer Sous…
-
Au bas de la fenêtre Save Drawing As, il y a un menu déroulant Files of type:. Choisissez Drawing Exchange DXF R12.
-
Donnez éventuellement un autre nom au fichier dans le champ File name:.
-
Cliquez sur Save
Votre DXF est maintenant prêt à être importé dans KiCad.
Importation du dessin DXF dans KiCad
Les étapes suivantes décrivent l’importation d’un contour de circuit dans KiCad à partir du fichier DXF préparé. Notez que le comportement d’importation est légèrement différent selon le mode de 'canvas' utilisé.
Utilisation du mode canvas par "défaut" :
-
Dans le menu Fichier, choisissez Importer, puis Fichier DXF.
-
Dans la fenêtre Importation Fichier DXF cliquez sur 'Examiner' et sélectionnez le fichier DXF préparé à importer.
-
Dans 'Placer l’origine DXF (0,0) au point:' sélectionnez le positionnement de l’origine du DXF par rapport aux coordonnées du circuit (le circuit Kicad a pour (0,0) le coin supérieur gauche). Pour l’option «Position définie par l’utilisateur", entrez les coordonnées dans les champs «Position X» et «Position Y '.
-
Dans le menu déroulant 'Couche', sélectionnez la couche du circuit à remplir avec l’importation. Edge.Cuts doit être choisi pour le contour du circuit.
-
Cliquez sur 'Valider'.
Utilisation des modes canvas "OpenGL" ou "Cairo" :
-
Dans le menu Fichier, choisissez Importer, puis Fichier DXF.
-
Dans la fenêtre Importation Fichier DXF cliquez sur 'Examiner' et sélectionnez le fichier DXF préparé à importer.
-
Les options 'Placer l’origine DXF (0,0) au point:' sont ignorées dans ce mode.
-
Dans le menu déroulant 'Couche', sélectionnez la couche du circuit à remplir avec l’importation. Edge.Cuts doit être choisi pour le contour du circuit.
-
Cliquez sur 'Valider'.
-
Le contour est maintenant attaché au curseur de la souris et peut être déplacé dans la zone de dessin du circuit.
-
Cliquez pour poser le contour.
Exemple de forme DXF importée
Here is an example of a DXF import with a board that had several elliptical segments approximated by a number of short line segments:
Lecture de la netliste générée à partir du schéma
Cliquez sur l’icône pour afficher la fenêtre de Netliste :
Si le nom (chemin) de netliste est incorrect, utilisez le bouton 'Examiner' pour choisir le fichier de netliste souhaité. Puis cliquez sur 'Lire Netliste Courante'. Tous les empreintes non déjà chargées apparaîtront, empilées les unes sur les autres (nous verrons ci-dessous comment les déplacer automatiquement).
Si aucune des empreintes n’ont été placées, toutes les empreintes apparaîtront sur le circuit au même endroit, ce qui les rend difficiles à reconnaître. Il est possible de les étaler automatiquement (en utilisant la commande «Étalement et placement globaux' accessible par le bouton droit de la souris). Voici le résultat d’un tel étalement automatique :
Si un circuit est modifié, en remplaçant une empreinte existante par une nouvelle dans CvPcb (par exemple, pour passer une résistance de 1/8 W à 1/2 W), il sera nécessaire de supprimer le composant existant avant que Pcbnew ne charge l’empreinte de remplacement. Toutefois, si une empreinte doit être remplacée par une empreinte existante, il est plus facile de le faire en utilisant le menu d’empreinte accessible en cliquant sur le bouton droit de la souris au-dessus de l’empreinte en question. |
Correction d’un circuit
Il est souvent nécessaire de modifier un circuit après un changement dans le schéma.
Étapes à suivre
-
Créez une nouvelle netliste à partir du schéma modifié.
-
Si de nouveaux composants ont été ajoutés, associez les à leurs empreintes correspondantes dans CvPcb.
-
Lisez la netliste dans Pcbnew.
Destruction de pistes incorrectes
Pcbnew est capable de supprimer automatiquement les pistes qui sont devenues incorrectes à la suite de modifications. Pour ce faire, cochez l’option "Supprimer" dans la case 'Pistes non connectées' de la fenêtre de netliste :
Toutefois, il est parfois plus rapide de corriger manuellement ces pistes (l’outil DRC permet leur identification).
Composants supprimés
Pcbnew peut supprimer les empreintes correspondant à des composants ayant été supprimés du schéma. Ceci est facultatif.
Cela est nécessaire car il y a souvent des empreintes (par exemple les trous de vis de fixation) qui sont ajoutées au PCB mais qui n’apparaissent pas dans le schéma.
Si l’option 'Supprimer' des "Empreintes Supplémentaires" est cochée, les empreintes correspondant à des composants non trouvés dans la netliste seront supprimées, sauf si elles ont l’option "Verrouillée" activée. C’est une bonne idée d’activer cette option pour les empreintes "mécaniques":
Empreintes modifiées
Si une empreinte est changée dans la netliste (en utilisant CvPcb), mais que l’empreinte a déjà été placée, elle ne sera pas modifiée par Pcbnew, sauf si l’option 'Changer' de 'Échange empreinte' a été cochée dans la fenêtre de netliste :
Le changement d’une empreinte (par exemple, le remplacement d’une résistance par une autre de taille différente), peut être effectué directement en éditant l’empreinte.
Options avancées - sélection par horodatage
Quelquefois, l’annotation du schéma est modifiée, sans qu’aucun changement matériel ne soit fait sur le circuit (cela concerne les références - comme R5, U4 …). Le PCB est donc inchangé (sauf éventuellement pour les marquages sérigraphiques). Néanmoins, en interne, les composants et les empreintes y sont représentés par leur référence. Dans ce cas, l’option 'Timestamp' de la boîte de dialogue netliste peut être choisie avant la relecture de la netliste :
Avec cette option, Pcbnew n’identifiera plus les empreintes par leurs références, mais par leur horodatage (timestamp). Le timestamp est automatiquement généré par Eeschema (c’est la date et l’heure à laquelle le composant a été placé dans le schéma).
Le plus grand soin doit être apporté quand on utilise cette option (enregistrez le fichier avant !). Ceci parce que cette technique est compliquée dans le cas de composants contenant des unités multiples (ex : le 7400 a 4 portes dans un seul boîtier). Dans ce cas le timestamp n’est pas défini de façon unique (pour le 7400, il y en aura 4, un par unité). Néanmoins, l’option timestamp permet habituellement de résoudre les problèmes de ré-annotation. |
Échange direct d’empreintes déjà placées sur le circuit
Le changement d’une empreinte (ou plusieurs empreintes identiques) vers une autre est très utile, et très facile :
-
Double-Cliquez sur une empreinte pour ouvrir la fenêtre d’édition.
-
Cliquez sur Changer Empreinte.
Options de 'Changer Empreinte(s)' :
Il faut choisir un nouveau nom d’empreinte et utiliserc:
-
Changer l’empreinte de 'xx' pour l’empreinte courante.
-
Changer empreintes 'yy' pour changer toutes les empreintes identiques à celle courante.
-
Changer empreinte ayant même valeur pour toutes les empreintes identiques à l’empreinte courante avec limitation aux composants de même valeur.
-
Update all footprints of the board for reloading of all footprints on board.
Placement d’empreintes
Placement assisté
Lors du déplacement d’empreintes, le chevelu de l’empreinte (les connexions aux autres composants) peut être affiché pour aider au placement. Pour afficher ce chevelu, le bouton de la barre d’outils de gauche doit être activé.
Placement manuel
Sélectionnez l’empreinte avec le bouton droit de la souris, puis choisissez la commande Déplacer dans le sous-menu de l’empreinte. Déplacez l’empreinte à la position désirée et placez la avec le bouton gauche de la souris. Si nécessaire, l’empreinte sélectionnée peut également être tournée, renversée ou modifiée. Sélectionnez Annuler dans le menu (ou appuyez sur la touche Echap) pour annuler.
Ici vous pouvez voir l’affichage du chevelu de l’empreinte lors d’un déplacement :
Le circuit, une fois que toutes les empreintes ont été placées, peut ressembler à ça :
Distribution Automatique d’Empreintes
D’une manière générale, les empreintes ne peuvent être déplacées que si elles n’ont pas été "Verrouillées". Cet attribut peut être activé ou désactivé à partir du menu contextuel (clic droit de la souris sur l’empreinte), en étant en Mode empreinte, ou par le menu Éditer Paramètres de l’empreinte.
Comme indiqué dans le chapitre précédent, les nouvelles empreintes chargées lors de la lecture de la netliste apparaissent empilées en un seul endroit du circuit. Pcbnew permet la répartition automatique des empreintes, afin de les sélectionner et les placer à la main plus facilement.
-
Sélectionnez le "Mode empreinte", bouton de la barre d’outils du haut.
-
Le menu contextuel, activé du bouton droit de la souris, devient :
S’il y a une empreinte sous le curseur :
S’il n’y a rien sous le curseur :
Dans les deux cas, les commandes suivantes sont disponibles :
-
Étaler Toutes les Empreintes permet la distribution automatique de toutes les empreintes non verrouillées. Ceci est généralement utilisé après la première lecture de la netliste.
-
Étaler Toutes les Empreintes non déjà sur le C.I. permet la distribution automatique de toutes les empreintes qui n’ont pas encore été placées à l’intérieur du contour du PCB. Cette commande requiert que le contour du circuit ait été tracé pour savoir quelle empreintes doivent être automatiquement distribuées.
Placement Automatique d’Empreintes
Caractéristiques du placement automatique
La fonction de placement automatique permet le placement des empreintes sur les 2 faces du circuit imprimé (toutefois, le basculement des empreintes entre les couches cuivrées n’est pas automatique).
It also seeks the best orientation (0, 90, -90, 180 degrees) of the footprint. The placement is made according to an optimization algorithm, which seeks to minimize the length of the ratsnest, and which seeks to create space between the larger footprints with many pads. The order of placement is optimized to initially place these larger footprints with many pads.
Préparation
Pcbnew peut donc placer automatiquement les empreintes, mais il est nécessaire de guider ce placement, car aucun logiciel ne peut deviner à quoi l’utilisateur veut arriver.
Avant le placement automatique, on doit :
-
Créer le contour de la carte (il peut être complexe, mais doit être fermé si sa forme n’est pas rectangulaire).
-
Placer manuellement les composants dont la position est imposée (connecteurs, trous de fixations, etc…).
-
De même, si certaines empreintes CMS ou des composants critiques (les grandes empreintes par exemple) doivent être sur un côté ou dans une position spécifiques du circuit, ce doit être fait manuellement.
-
Avoir "Verrouillé" ces empreintes placées manuellement pour empêcher leur déplacement. En Mode empreinte, bouton activé, cliquer du bouton droit et choisir "Verrouille Empreinte" dans le menu contextuel. On peut également le faire par le sous-menu "Éditer Paramètres" de l’empreinte.
-
Le placement automatique peut alors être effectué. Mode empreinte activé, cliquez du bouton droit et sélectionnez Étalements et Placements Globaux, puis Placer Automatiquement toutes les Empreintes.
Lors du placement automatique, si nécessaire, Pcbnew peut optimiser l’orientation des empreintes. Cependant cette rotation ne sera tentée que si cela a été autorisé pour l’empreinte (voir les options de "Éditer Paramètres").
Habituellement, les résistances et les condensateurs non polarisés sont autorisés à une rotation de 180 degrés. Certaines empreintes (petits transistors par exemple), peuvent être autorisés à des rotations de +/- 90 et 180 degrés.
Pour chaque empreinte, un curseur autorise la rotation sur 90 degrés et un deuxième sur 180 degrés. Un réglage de 0 empêche la rotation, un réglage de 10 l’autorise, et une valeur intermédiaire indique plus ou moins la préférence de rotation.
L’autorisation de rotation peut être réglée en modifiant l’empreinte une fois qu’elle est placée sur le circuit. Toutefois, il est préférable de définir les options requises pour l’empreinte en librairie, afin que ces paramètres soient hérités à chaque fois que l’empreinte est utilisée.
Placement automatique interactif
Il peut être nécessaire d’interrompre le placement automatique (appuyez sur la touche Esc), et de repositionner manuellement une empreinte. L’utilisation de la commande Placer Automatiquement Empreintes Suivantes va reprendre le placement automatique à partir du moment où il a été arrêté.
La commande Placer Automatiquement Nouvelles Empreintes permet le placement automatique des empreintes qui n’ont pas déjà été placées à l’intérieur du contour du PCB. Elle ne bougera pas celles situées dans le contour de PCB, même si elles ne sont pas "verrouillées".
The command Autoplace Footprint makes it possible to execute an autoplacement on the footprint pointed to by the mouse, even if its 'fixed' attribute is active.
Notes additionnelles
Pcbnew détermine automatiquement la zone possible de placement des empreintes en suivant la forme du contour de carte, qui ne sera pas forcément rectangulaire (elle peut être ronde, avoir des découpes, etc…).
Si le circuit n’est pas rectangulaire, son contour doit être fermé, de sorte que Pcbnew puisse déterminer ce qui est à l’intérieur et ce qui est en dehors. De la même façon, s’il y a des découpes internes, leurs contours devront être fermés.
Pcbnew calcule la zone possible de placement des empreintes à l’aide du contour de la carte, puis promène les empreintes tour à tour sur cette zone, afin de déterminer la position optimale où les placer.
Réglage des paramètres du routage
Paramètres actuels
Accès à la boite de dialogue principale
On accède aux paramètres les plus importants par le menu suivant :
et on les ajuste dans la fenêtre Règles de Conception.
Paramètres actuels
Les réglages actuels sont affichés dans la barre d’outils du haut.
Options générales
Les options générales sont accessibles par le menu Préférences → Général.
La fenêtre ressemble à ceci :
Pour la création de pistes, les paramètres nécessaires sont :
-
Limiter les pistes à 45° : Les directions de segments de pistes autorisées sont 0, 45 ou 90 degrés.
-
Utiliser deux segments pour piste : Lors de la création de pistes, 2 segments seront affichés.
-
Suppression automatique de pistes : Quand on recrée une piste, l’ancienne sera automatiquement supprimée si elle fait doublon.
-
Pads Magnétiques : Le curseur graphique devient une pastille(pad), centré sur la zone de la pastille.
-
Pistes Magnétiques : Le curseur graphique devient l’axe de la piste.
Netclasses
Pcbnew vous permet de définir différents paramètres de routage, pour chaque équipotentielle (ou net). Les paramètres sont définis pour des groupes de nets.
-
Un groupe de nets est appelé une Netclasse.
-
Il y a toujours une netclasse nommée "Default".
-
Users can add other Netclasses.
Une netclasse spécifie :
-
La largeur des pistes, les diamètres et les perçages des vias.
-
La distance d’isolement entre les pastilles (ou les vias) et les pistes.
-
Lors du routage, Pcbnew sélectionne automatiquement la netclasse correspondant à l’équipotentielle (net) de la piste à créer ou à modifier, et les paramètres de routage correspondants.
Réglage des paramètres du routage
Ces choix sont faits par le menu : Règles de Conception → Règles de Conception.
Éditeur de Netclasse
L’éditeur de Netclasse vous permet de :
-
Ajouter ou supprimer des Netclasses.
-
Ajuster les paramètres : isolation, largeur piste, dimensions des vias.
-
Regrouper des nets en netclasses.
Règles de Conception Globales
Les règles de conception globales sont :
-
Autoriser/Interdire l’usage des vias aveugles/enterrées.
-
Autoriser/Interdire l’usage des micro-vias.
-
Valeurs minimum autorisées pour les pistes et vias.
Le DRC générera une erreur quand une valeur inférieure au minimum spécifié sera rencontrée. Le deuxième onglet de la fenêtre :
This dialog also allows to enter a "stock" of tracks and via sizes.
Pendant le routage, on peut choisir une de ces dimensions, pour créer une piste ou une via, au lieu d’utiliser la valeur par défaut de la netclasse.
C’est utile dans des cas critiques, où une partie de piste doit avoir une dimension spécifique.
Paramètres des vias
Pcbnew gère trois types de vias :
-
Vias traversantes (les plus courantes).
-
Vias aveugles, ou enterrées.
-
Micro Vias, identiques aux vias enterrées, mais limitées entre une couche externe et sa voisine la plus proche. Elles sont destinées à connecter les pins BGA à la couche intérieure la plus proche. Leur diamètre est généralement très faible et elles sont percées au laser.
Par défaut, tous les vias ont le même diamètre de perçage.
Cette fenêtre spécifie les plus petites valeurs acceptables pour les vias. Sur un circuit, une via plus petite que spécifiée générera une erreur DRC.
Paramètres des pistes
Spécifie les plus petites valeurs acceptables pour les pistes. Sur un circuit, une piste plus petite que spécifiée générera une erreur DRC.
Tailles spécifiques
One can enter a set of extra tracks and/or via sizes. While routing a track, these values can be used on demand instead of the values from the current netclass values.
Exemples et dimensions typiques
Largeur de piste
Utilisez la plus grande valeur possible, conforme aux dimensions minimales indiquées ici.
Unités | CLASS 1 | CLASS 2 | CLASS 3 | CLASS 4 | CLASS 5 |
---|---|---|---|---|---|
mm |
0.8 |
0.5 |
0.4 |
0.25 |
0.15 |
mils |
31 |
20 |
16 |
10 |
6 |
Isolation (distance)
Unités | CLASS 1 | CLASS 2 | CLASS 3 | CLASS 4 | CLASS 5 |
---|---|---|---|---|---|
mm |
0.7 |
0.5 |
0.35 |
0.23 |
0.15 |
mils |
27 |
20 |
14 |
9 |
6 |
Habituellement, la distance minimale d’isolement sera très similaire à la largeur minimale de piste.
Exemples
Rustique
-
Clearance: 0.35 mm (0.0138 inches).
-
Track width: 0.8 mm (0.0315 inches).
-
Pad diameter for ICs and vias: 1.91 mm (0.0750 inches).
-
Pad diameter for discrete components: 2.54 mm (0.1 inches).
-
Ground track width: 2.54 mm (0.1 inches).
Standard
-
Clearance: 0.35 mm (0.0138 inches).
-
Largeur piste : 0.5 mm (0.0127 inches).
-
Pad diameter for ICs: make them elongated in order to allow tracks to pass between IC pads and yet have the pads offer a sufficient adhesive surface (1.27 x 2.54 mm -→ 0.05 x 0.1 inches).
-
Vias: 1.27 mm (0.0500 inches).
Routage manuel
Manual routing is often recommended, because it is the only method offering control over routing priorities. For example, it is preferable to start by routing power tracks, making them wide and short and keeping analog and digital supplies well separated. Later, sensitive signal tracks should be routed. Amongst other problems, automatic routing often requires many vias. However, automatic routing can offer a useful insight into the positioning of footprints. With experience, you will probably find that the automatic router is useful for quickly routing the 'obvious' tracks, but the remaining tracks will best be routed by hand.
Aide lors de la création des pistes
Pcbnew peut afficher le chevelu complet, si le bouton est activé.
Le bouton permet de mettre en surbrillance un net (équipotentielle). Cliquez sur une pastille ou sur une piste pour mettre en surbrillance le net correspondant.
La vérification des règles électriques (DRC) vérifie le tracé des pistes en temps réel pendant la création. On ne peut pas créer une piste qui ne corresponde pas aux règles de la DRC. Il est possible de désactiver la DRC en cliquant sur un bouton. Ceci n’est cependant pas recommandé, et il ne faudra l’utiliser que dans des cas spécifiques.
Création de pistes
Une piste peut être créée en cliquant sur le bouton: . Une nouvelle piste doit débuter sur un pad ou sur une autre piste, parce que Pcbnew doit connaître le net utilisé pour la nouvelle piste (afin de respecter les règles de la DRC).
As you move the mouse, a track is drawn connecting the origin of the track with the current mouse position. The track will be drawn with at most two segments (for example, rightwards, then a switch to diagonally). Clicking while routing locks in the corner node.
The direction that the track is drawn in first (e.g. right first, then diagonally, or diagonally first then right) is called the "Track Posture" and can be switched with the hotkey '/' or the button .
Holding 'Ctrl' while routing in the non-legacy canvases constrains the routing to a single horizontal or vertical segment. Switching posture changes to a single diagonal segment. Holding 'Shift' while routing removes the 'snap to object' gravity.
When creating a new track, Pcbnew shows links to nearest unconnected pads.
End the track by double-clicking, by the pop-up menu or by the hotkey 'End'.
Déplacement et traction de pistes
Lorsque le bouton est actif, la piste sous la position du curseur peut être déplacée (move) avec le raccourci clavier 'M'. Si vous voulez tirer (drag) la piste, vous utiliserez le raccourci clavier 'G'.
Insertion de Vias
Une via ne peut être insérée que si le tracé d’une piste est en cours :
-
Par le menu contextuel.
-
Par le raccourci clavier 'V'.
-
En basculant sur une autre couche cuivrée par le raccourci correspondant.
Holding 'Shift' while adding a via ends routing as soon as the via is placed. This is useful when adding a connection to a plane, so the active layer doesn’t change and no extra key need be pressed to exit routing.
Sélection/édition de largeur de piste et taille de via
When clicking on a track or a pad, Pcbnew automatically selects the corresponding Netclass, and the track size and via dimensions are derived from this netclass.
As previously seen, the Global Design Rules editor has a tool to insert extra tracks and via sizes.
-
La barre d’outil du haut peut être utilisée pour choisir une dimension.
-
Quand le bouton est actif, la largeur de la piste en cours peut être choisie par le menu contextuel (accessible aussi à la création d’une piste).
-
L’utilisateur peut utiliser les valeurs par défaut des Netclasses ou une valeur spécifique.
Utilisation de la barre d’outils horizontale
Track width selection. The symbol * is a mark for default Netclass value selection. |
|
Selecting a specific track width value. The first value in the list is always the netclass value. Other values are tracks widths entered from the Global Design Rules editor. |
|
Via size selection. The symbol * is a mark for default Netclass value selection. |
|
Selecting a specific via dimension value. The first value in the list is always the netclass value. Other values are via dimensions entered from the Global Design Rules editor. |
|
When enabled: Automatic track width selection. When starting a track on an existing track, the new track has the same width as the existing track. |
|
Grid size selection. |
|
Zoom selection. |
Utilisation du menu contextuel
On peut choisir une nouvelle taille pour le routage, ou changer pour celle d’une via, ou d’une piste, déjà créée :
Si vous voulez changer la taille de plusieurs vias (ou de pistes), le meilleur moyen est d’utiliser une Netclasse spécifique pour le ou les nets qui doivent être modifiés (voir changements globaux).
Édition et modification de pistes
Modification de piste
Très souvent, il est nécessaire de redessiner une piste.
Nouvelle piste (en cours de tracé) :
Une fois finie :
Pcbnew détruira automatiquement l’ancienne piste si elle fait doublon.
Changements globaux
La fenêtre d’édition globale des tailles de pistes et de vias est accessible par le menu contextuel en cliquant du bouton droit sur une piste :
Cette boite de dialogue permet des changements globaux de pistes ou vias pour :
-
Le net actuel.
-
Le circuit entier.
Routeur Interactif
Le routeur interactif vous permet de router rapidement et efficacement vos PCB, en repoussant ou en contournant les éléments du PCB qui s’interposent sur le chemin de la piste que vous êtes en train de tracer.
Les modes suivants sont supportés :
-
Surbrillance des Collisions, qui met en surbrillance tous les objets posant problème au moyen d’une jolie et brillante couleur verte, et qui indique les zones violant l’isolation.
-
Pousser, qui essaie de pousser et traverser tous les éléments qui entrent en collision avec la piste en cours de routage.
-
Contourner, qui essaie d’éviter les obstacles en les rasant et en les contournant.
Réglages
Avant d’utiliser le routeur interactif, veuillez effectuer les deux choses suivantes :
-
Paramètres d’isolation Pour régler les distances d’isolation, ouvrez la fenêtre des Règles de Conception, et assurez-vous que la valeur par défaut a l’air correcte.
-
Passez en mode OpenGL, menu Affichage → Commuter l’affichage sur OpenGL, ou en appuyant sur F11.
Tracé des pistes
Pour activer l’outil de routage, appuyez sur le bouton du Routeur Interactif , ou sur la touche X. Le curseur va se transformer en une croix, et le nom de l’outil apparaîtra dans la barre d’état.
Pour débuter une piste, cliquez sur un élément (pastille, piste ou via), ou appuyez sur la touche X, tout en survolant un élément avec la souris. La nouvelle piste utilise le net de l’élément de départ. Un clic, ou l’appui sur X, sur un circuit vide, démarre une piste sans aucun net assigné.
Déplacez la souris pour définir la forme de la piste. Suivant le mode, le routeur essayera de suivre la trace de la souris, en contournant les obstacles immobiles (comme les pastilles) et en repoussant les pistes/vias gênantes sur le parcours. Le retrait du curseur de la souris remettra à leurs anciens emplacements les éléments repoussés.
Un clic sur un élément, pastille/piste/via, appartenant à la même équipotentielle (net) termine le tracé. Un clic sur un espace vide fixe les segments de piste déjà tracés et continue le routage de la piste.
Pour interrompre le tracé et annuler les changements (éléments repoussés, etc…), appuyez simplement sur Echap.
Pressing V or selecting Place Through Via from the context menu while routing a track attaches a via at the end of the trace being routed. Pressing V again disables via placement. Clicking in any spot establishes the via and continues routing (unless 'Shift' is held).
En appuyant sur /, ou en sélectionnant Commuter Orientation dans le menu contextuel, on bascule la direction initiale du segment de piste entre directe ou diagonale.
Par défaut, le routeur va être attiré et va coller aux centres/axes des éléments. Cette attraction peut être désactivée en appuyant sur Shift(Majuscule) pendant le tracé ou la sélection des éléments. |
Paramétrage des dimensions des pistes et des vias
Il y a plusieurs façons de sélectionner une largeur de piste / taille de via, ou de la changer pendant le routage :
-
En utilisant les raccourcis standards de KiCad.
-
En appuyant sur Q, ou en sélectionnant Dim Utilisateur des Pistes et Vias dans le menu contextuel, pour saisir une largeur de piste, ou une taille de via, personnalisée.
-
En choisissant une largeur prédéfinie du sous-menu contextuel Sélection Largeur Piste/Via.
-
En sélectionnant Utiliser la largeur de la piste de départ du sous-menu contextuel Sélection Largeur Piste/Via pour reprendre la largeur de piste de l’élément de départ, ou des pistes qui y sont déjà connectées.
Traction d’une piste (Drag)
Le routeur peut faire glisser des segments de piste, des virages et des vias. Pour tracter un élément, cliquez dessus avec la touche Ctrl enfoncée, ou survolez le à la souris et appuyez sur G, ou encore sélectionnez Drag Piste/Via dans le menu contextuel. Terminez le déplacement en cliquant à nouveau, ou annulez en appuyant sur Echap.
Options
The router behavior can be configured by pressing E or selecting Routing Options from the context menu while in the Track mode. It opens a window like the one below:
Les options sont :
-
Mode - sélectionne comment le routeur gère les violations des règles de conception (DRC) (pousser, contourner, etc…)
-
Pousser les vias - si désactivée, les vias sont considérées comme des objets inamovibles et seront contournées plutôt que poussées.
-
Sauter les obstacles - si activée, le routeur tente de déplacer les pistes en collision derrière les obstacles fixes (par exemple les pastilles) au lieu de les "réfléchir" derrière la collision
-
Supprimer les pistes redondantes - supprime les boucles pendant le routage (par ex. si la nouvelle piste assure la même connectivité qu’une déjà existante, l’ancienne piste sera supprimée). La suppression de boucle fonctionne localement (seulement entre le début et la fin de la piste en cours de tracé).
-
Rétrécissement automatique - si activée, le routeur tente de passer à travers les pads/vias de manière propre, en évitant les pistes traversantes avec des angles aigus et dentelés
-
Lissage du drag des segments - si activée, le routeur tente de fusionner plusieurs segments dentelés en un seul bien droit (en mode drag).
-
Autoriser les violations de DRC (mode Surbrillance des Collisions seulement) - permet de tracer une piste, même si on viole les règles de conception.
-
Effort de l’Optimisation - définit combien de temps le routeur doit passer à optimiser les pistes routées/poussées. Plus d’effort signifie un routage plus propre (mais plus lent), moins d’effort un routage plus rapide, mais des pistes un peu dentelées.
Création de zones cuivrées remplies
Les zones cuivrées sont délimitées par un contour (polygone fermé), et peuvent comporter des trous (polygones fermés à l’intérieur du contour). Une zone peut être dessinée sur une couche cuivre, ou autrement sur une couche technique.
Création de zones sur couches cuivrées
Les connexions de pastilles (et pistes) vers les zones de cuivre remplies sont vérifiées par le moteur de la DRC. Pour connecter les pads, une zone doit être remplie (et pas seulement créée). Pcbnew se sert de segments de piste ou de polygones pour remplir les zones de cuivre.
Chaque option a ses avantages et ses inconvénients, le principal inconvénient étant une augmentation du temps de rafraîchissement de l’écran sur les machines les plus lentes. Le résultat final sera toutefois le même.
Pour des raisons de temps de calcul, le remplissage de la zone n’est pas refait après chaque changement, mais seulement :
-
Quand une commande de remplissage est demandée.
-
Quand le test des Règles de Conception (DRC) est effectué.
Les zones cuivrées doivent être remplies ou re-remplies après avoir fait des modifications de pistes ou de pastilles. Les zones cuivrées (généralement les plans de masse et de puissance) sont généralement rattachées à une équipotentielle (net).
Pour créer une zone cuivrée, vous devez :
-
Régler les paramètres (nom de net, couche..). L’activation de la couche et la mise en surbrillance de ce net ne sont pas obligatoires, mais c’est une pratique recommandée.
-
Créer les limites de la zone (sinon, le circuit entier sera rempli).
-
Remplir la zone.
Pcbnew essaie de remplir toutes les zones en une seule pièce et, normalement, il n’y a pas des blocs de cuivre non connectés. Il peut arriver que certaines zones ne soient pas remplies. Les zones ne faisant partie d’aucun net ne sont pas nettoyées et peuvent avoir des zones isolées.
Création de zone
Création des limites de la zone
Utilisez l’outil . La couche active doit être une couche cuivrée. En cliquant pour débuter le contour de la zone, la fenêtre ci-dessous s’ouvre.
Vous pouvez spécifier tous les paramètres pour cette zone :
-
Net (équipotentielle)
-
Couche
-
Options de remplissage
-
Options pour les pastilles
-
Niveau de priorité
Draw the zone limit on this layer. This zone limit is a polygon, created by left-clicking at each corner. A double-click will end and close the polygon. If the starting point and ending point are not at the same coordinate, Pcbnew will add a segment from the end point to the start point.
|
Dans l’image qui suit, vous pouvez voir un exemple de limite de zone (polygone avec la fine ligne hachurée) :
Niveau de priorité
Quelquefois on a besoin de créer une petite zone à l’intérieur d’une grande.
Ceci est possible si la petite zone a une priorité supérieure à celle de la grande.
Réglage du niveau de priorité :
Voici un exemple :
Après remplissage :
Remplissage de la zone
Lors du remplissage d’une zone, Pcbnew enlève tous les ilôts de cuivre non connectés. Pour accéder aux commandes de remplissage, cliquez du bouton droit sur le bord de la zone.
Exécutez la commande "Remplir Zone". Ci-dessous le résultat du remplissage pour un point de départ à l’intérieur du polygone :
Le polygone est la limite de la zone de remplissage. Vous pouvez voir une surface non-remplie à l’intérieur de la zone, car cette surface n’est pas accessible :
-
Une piste vient créer une barrière, et
-
Il n’y a pas de point de départ pour le remplissage de cette surface.
Vous pouvez utiliser plusieurs polygones pour créer des zones vides. Vous pouvez voir un exemple ici : |
Options de remplissage
Quand vous remplissez une zone, vous devez choisir :
-
Le mode de remplissage.
-
La distance d’isolation et l’épaisseur minimale de cuivre.
-
De quelle façon les pastilles seront dessinées, ou connectées à cette zone.
-
Les paramètres des freins thermiques.
Mode de remplissage
Les zones peuvent être remplies en utilisant des polygones, ou des segments. Le résultat est le même. Si vous avez des problèmes avec le mode polygone (rafraîchissement lent de l’écran), utilisez plutôt des segments.
Isolation et épaisseur de cuivre minimale
Un bon choix pour l’isolation est une grille qui est un peu plus grande que la grille de routage. L’épaisseur de cuivre minimale permet de s’assurer qu’il n’y aura pas de surfaces de cuivre trop petites.
Si cette valeur est trop grande, les petites formes comme les pistes des freins thermiques ne pourront pas être tracées. |
Options pour les pastilles
Les pastilles appartenant au net peuvent être inclues ou exclues de la zone, ou connectées avec des freins thermiques.
-
Si elles sont inclues, leur soudage ou leur dessoudage peuvent être assez difficiles, à cause de l’importante masse thermique de la zone à chauffer.
-
Si elles sont exclues, leur connexion à la zone ne sera pas très bonne.
-
The zone can be filled only if tracks exists to connect zone areas.
-
Pads must be connected by tracks.
-
-
Le frein thermique est un bon compromis.
-
Pad is connected by 4 track segments.
-
The segment width is the current value used for the track width.
-
Thermal relief parameters
Vous pouvez régler deux paramètres pour les freins thermiques :
Choix des paramètres
La valeur de l’épaisseur de cuivre pour les freins thermiques doit être plus grande que la valeur de l’épaisseur minimum pour la zone de cuivre. Sinon, ils ne pourront pas être tracés.
De la même façon, une valeur trop grande pour ce paramètre, ou pour la taille de l’antipad ne nous permettra pas de créer un frein thermique pour les petites pastilles (comme celles des composants CMS).
Ajout d’une zone vide à l’intérieur d’une zone remplie
Une zone remplie doit être existante. Pour ajouter une zone vide (une surface non-remplie à l’intérieur de la zone remplie) :
-
Faites un clic droit sur la bordure de la zone existante.
-
Choisissez Addition d’une Zone interdite du sous-menu Zones.
-
Créez le nouveau contour.
Modification des contours
Un contour de zone peut être modifié par :
-
Le déplacement d’un angle ou d’un bord.
-
L’ajout ou la suppression d’un angle.
-
L’ajout d’une zone semblable, ou d’une zone interdite.
Si des polygones se chevauchent, ils seront combinés.
Pour cela, cliquez du bouton droit sur un angle ou un bord, et choisissez la commande appropriée.
Voici un angle de zone interdite qui a été déplacé :
Voici le résultat final :
Les polygones ont été combinés.
Ajout d’une zone semblable
Addition de la zone semblable :
Résultat final :
Édition des paramètres de zone
Par un clic droit sur le contour, et en choisissant 'Éditer les propriétés de la Zone', on ouvre la fenêtre des paramètres de la zone. Les paramètres initiaux peuvent y être rentrés. Si la zone est déjà remplie, elle devra être re-remplie.
Remplissage final
Quand le circuit est terminé, on doit remplir ou re-remplir toutes les zones. Pour celà :
-
Activez l’outil Zones, bouton .
-
Clic droit pour faire apparaître le menu contextuel.
-
Choisissez Remplir ou Re-remplir Toutes les Zones :
Le calcul peut prendre un certain temps si la grille de remplissage est fine. |
Changement des noms de nets des zones
Après la modification d’un schéma, vous pouvez changer le nom de chaque net. Par exemple, VCC peut être changé pour +5V.
Lors de la vérification globale des règles de conception, Pcbnew vérifie si le nom de net d’une zone existe, et affiche une erreur dans le cas contraire.
Il faudra modifier manuellement les paramètres de zone, pour remplacer l’ancien nom de net par le nouveau.
Création de zones sur les couches techniques
Création des limites de zone
This is done using the button . The active layer must be a technical layer.
En cliquant pour débuter le contour de la zone, la fenêtre ci-dessous s'ouvre :
Choisissez la couche technique où placer la zone, et dessinez le contour de la même façon que pour les couches cuivrées.
|
Création d’une zone interdite
Sélectionnez l’outil
La couche active doit être une couche cuivrée.
Après un clic sur le point de départ, cette fenêtre s’ouvre :
On peut choisir les éléments interdits :
-
Pas de pistes.
-
Pas de vias.
-
Sans zone cuivre.
Quand une piste ou une via est à l’intérieur d’une zone interdite qui ne l’autorise pas, une erreur DRC sera générée.
Pour les zones cuivrées, la surface à l’intérieur d’une zone interdite sans zone cuivre ne sera pas remplie. Une zone interdite est comme une zone remplie, l’édition de son contour est identique à celle des zones cuivrées.
Fichiers de fabrication du circuit
Let us see now what the steps are for the creation of the necessary files for the production of your printed circuit board.
Tous les fichiers générés par KiCad sont situés dans le répertoire de travail qui est le même répertoire qui contient le fichier xxxx.kicad_brd pour le circuit imprimé.
Derniers préparatifs
La génération des fichiers nécessaires à la production de votre circuit imprimé comprend les étapes préparatoires suivantes.
-
Marquez chaque couche (par exemple, 'top ou front' et 'bottom ou back') avec le nom du projet, en mettant le texte approprié sur chacune des couches.
-
Tout les textes sur les couches cuivrées (parfois appelées 'soudure' ou 'bas') doivent être en miroir.
-
Créez les plans de masse, en modifiant les pistes si nécessaire pour s’assurer qu’ils sont contigus.
-
Placez des mires d’alignement et éventuellement les dimensions du contour de carte (ceux-ci sont habituellement placés sur l’une des couches à usage général).
Voici un exemple montrant l’ensemble de ces éléments, à l’exception des plans de masse qui ont été omis pour une meilleure visibilité :
Un repère de couleur pour les 4 couches cuivrées a également été ajouté :
Test DRC final
Avant de générer les fichiers de fabrication, un dernier test global de la DRC est très fortement conseillé.
Les zones seront remplies ou re-remplies au lancement de le DRC. Appuyez le bouton pour ouvrir la fenêtre de la DRC :
Réglez les paramètres en conséquence, puis appuyez sur le bouton "Démarrer DRC".
Cette vérification finale vous permettra d’éviter de mauvaises surprises.
Réglage de l’origine des coordonnées
Définissez le point d’origine des coordonnées pour le photo-traceur et les fichiers de perçage, il faut placer l’axe auxiliaire sur cet origine. Utilisez l’icône . Déplacer l’axe auxiliaire par un clic gauche sur l’emplacement choisi.
Génération des fichiers pour le photo-traceur
Cela se fait par le menu Fichiers/Tracer, qui fait apparaître la fenêtre suivante :
Habituellement, les fichiers sont au format GERBER. Néanmoins, il est possible de produire des fichiers aux formats HPGL ou Postscript. Si le format Postscript est sélectionné, cette boîte de dialogue apparaîtra.
Pour ces formats, un ajustage fin de l’échelle pourra être effectué pour compenser la précision du traceur et avoir une véritable échelle 1 en sortie :
Format GERBER
Pour chaque couche, Pcbnew génère un fichier séparé respectant le standard GERBER 274X, par défaut au format 4.6 (chaque coordonnée dans le fichier est représentée par 10 chiffres, 4 avant la virgule et 6 après), les unités sont en pouces, et l’échelle est de 1.
Normalement, il est nécessaire de créer des fichiers pour toutes les couches de cuivre et, en fonction du circuit, pour la sérigraphie et les couches masque de soudure et pâte à souder . Tous ces fichiers peuvent être produits en une seule étape, en cochant les cases appropriées.
Par exemple, pour un circuit double face avec sérigraphie, masque de soudure et pâte à souder (pour les composants CMS), 8 fichiers devront être générés («xxxx» représente le nom du fichier .kicad_brd).
-
xxxx-F_Cu.gbr pour le côté composants.
-
xxxx-B_Cu.gbr pour le côté cuivre.
-
xxxx-F_SilkS.gbr pour la sérigraphie côté composants.
-
xxxx-B_SilkS.gbr pour la sérigraphie côté cuivre.
-
xxxx-F_Paste.gbr pour la pâte à souder côté composants.
-
xxxx-B_Paste.gbr pour la pâte à souder côté cuivre.
-
xxxx-F_Mask.gbr pour le masque de soudure côté composants.
-
xxxx-B_Mask.gbr pour le masque de soudure côté cuivre.
Format des fichiers GERBER :
Le format utilisé par Pcbnew est le format RS274X 4.6, impérial, zéros non significatifs omis, format Abs. Ce sont des paramètres très habituels.
Format POSTSCRIPT
L’extension standard des fichiers, dans le cas d’une sortie postscript, est .ps. Comme pour la sortie HPGL, le tracé peut être ajusté à une échelle choisie par l’utilisateur et peut être mis en miroir. Si l’option Org = Centre est actif, l’origine des coordonnées du photo-traceur est supposé être au centre du dessin.
Si l’option 'Imprimer cartouche sur toutes les couches' est cochée, le cartouche sera tracé.
Options de tracé
Format Gerber :
Autres formats :
Options spécifiques au format Gerber :
Utiliser extensions Gerber Protel |
Utilise .gbl .gtl .gbs .gts .gbp .gtp .gbo .gto au lieu de .gbr comme extensions de fichiers. |
Inclure attributs étendus |
Sortie des attributs étendus dans un fichier. |
Soustraire masque de la couche sérigraphie |
Enlève la sérigraphie sur les zones de pâte à souder. |
Autres formats
L’extension standard dépend du type de fichier de sortie.
Certaines options ne sont pas disponibles pour certains formats.
Le tracé peut être fait à une échelle choisie par l’utilisateur et peut être mis en miroir.
Les options Marques de perçage offrent la possibilité d’avoir des pastilles remplies, percées au diamètre correct ou percées d’un même petit trou (pour centrer, lors d’un perçage à la main).
Si l’option 'Imprimer cartouche sur toutes les couches' est cochée, le cartouche sera tracé.
Réglage des marges globales pour le masque de soudure (ou vernis épargne) et le masque de pâte à souder
Les marges des masques peuvent être réglées globalement pour les couches masque de soudure et pâte à souder. Ces marges peuvent être ajustées aux niveaux suivants.
-
Au niveau des pastilles.
-
Au niveau des empreintes.
-
Globalement.
Et Pcbnew utilise, par ordre de priorité :
-
La valeur de la pastille. Si nulle :
-
La valeur de l’empreinte. Si nulle :
-
Les valeurs globales.
Accès
On accède à ces options par le menu Dimensions/Marges Masque des Pads :
La fenêtre de réglage est celle-ci :
Marge du masque vernis épargne
une valeur proche de 0.2mm est généralement bonne. Cette valeur est positive parce que le masque est habituellement plus grand que la pastille
on peut donner une valeur minimum pour la largeur du masque, entre deux pastilles.
Si la valeur courante est plus petite que la valeur minimum, les deux masques de soudure seront fusionnés.
Marge du masque pâte à souder
La marge finale est la somme de la marge de la pâte à souder et d’un pourcentage de la taille de la pastille.
Cette valeur est négative parce que le masque est habituellement plus petit que la pastille
Génération des fichiers de perçage
La création d’un fichier de perçage xxxx.drl au standard EXCELLON est toujours nécessaire.
On peut aussi produire, optionnellement, un fichier rapport ou un plan de perçage.
-
Le plan de perçage peut être tracé au moyen de différents formats.
-
Le fichier de rapport est un simple fichier texte.
La génération de ces fichiers se fait par :
-
Le bouton "Créer un fichier de perçage", ou
-
Le menu Fichiers/Fichiers de Fabrication/Fichier (.drl) de Perçage.
La fenêtre des options de perçage est la suivante :
Pour fixer l’origine des coordonnées, la zone de dialogue suivante est utilisée :
-
Absolue : le système de coordonnées absolues sera utilisé.
-
Axe Auxiliaire : les coordonnées seront relatives à l’axe auxiliaire, utilisez le bouton de la barre d’outils de droite pour le fixer.
Génération de l’implantation
Pour produire les fichiers d’implantation, les couches sérigraphie composants et cuivre peuvent être tracées. Habituellement, la sérigraphie côté composant seule est suffisante pour le câblage d’un PCB. Si la sérigraphie côté cuivre est utilisée, le texte qu’elle contient devra être mis en miroir afin d’être lisible.
Génération de fichiers pour le placement automatique de composants
Cette option est accessible via le menu Fichiers/Exporter/Fichier (.cmp) de Composants. Aucun fichier ne sera toutefois généré, sauf si au moins une empreinte a l’attribut Normal + Insert activé (voir Édition d’Empreintes). Un ou deux fichiers seront produits, selon que des composants insérables seront présents sur l’une ou sur les deux faces du circuit imprimé. Une boîte de dialogue affiche les noms des fichiers créés.
Options de tracé avancées
Les options décrites ci-dessous (faisant partie de la fenêtre Fichiers/Tracer) permettent de contrôler finement le processus de tracé. Elles sont particulièrement utiles pour l’impression du marquage sérigraphique pour la documentation d’implantation.
Les options disponibles sont :
Plot sheet reference on all layers |
Trace sheet outline and the cartridge. |
Plot pads on silkscreen |
Enables/disables printing of pad outlines on the silkscreen layers (if the pads have already been declared to appear on these layers). Prevents any pads from being printed in the disabled mode. |
Plot footprint values |
Enables printing of VALUE text on the silkscreen. |
Plot footprint references |
Enables printing of the REFERENCE text on the silkscreen. |
Force plotting of invisible values/references |
Forces printing of fields (reference, value) declared as invisible. In combination with 'Plot footprint values' and 'Plot footprint references', this option enables production of documents for guiding wiring and repair. These options have proven necessary for circuits using components that are too small (SMD) to allow readable placement of two separate text fields. |
Do not tent vias |
Delete the mask over the vias. |
Exclude PCB edge layer from other layers |
GERBER format specific. Do not plot graphic items on edge layer. |
Use Protel filename extensions |
GERBER format specific. When creating files, use specific extensions for each file. If disabled the Gerber file extension is .gbr. |
Éditeur d’Empreintes - Gestion des Librairies
Vue d’ensemble de l’Éditeur d’Empreinte
Pcbnew peut utiliser simultanément plusieurs librairies. Ainsi, lorsqu’une empreinte est chargée, toutes les librairies qui apparaissent dans la liste des librairies sont parcourues jusqu’à ce que la première instance de l’empreinte soit trouvée. Dans ce qui suit, notez que la librairie active est celle sélectionnée dans l’éditeur d’empreintes, le programme va maintenant être présenté.
L’Éditeur d’Empreintes permet la création et la modification d’empreintes :
-
L’ajout et la suppression de pastilles (pads).
-
La modification des propriétés des pastilles (forme, couche) pour une seule pastille ou, globalement, pour toutes celles d’une empreinte.
-
La modification des éléments graphiques (lignes, textes).
-
La modification des champs d’information (valeur, référence).
-
L’édition de la documentation associée (description, mots-clefs).
L’Éditeur d’Empreinte permet également la maintenance de la librairie active :
-
Liste des empreintes de la librairie active.
-
Suppression d’une empreinte de la librairie active.
-
Sauvegarde d’une empreinte en librairie active.
-
Sauvegarde de toutes les empreintes contenues dans un circuit imprimé.
Il est aussi possible de créer de nouvelles librairies.
Les extensions des fichiers librairies sont .kicad_mod
, ou .mod
(anciennes versions).
Accès à l’Éditeur d’Empreintes
On peut accéder à l’éditeur d’empreintes de plusieurs façons :
-
Directement, par l’icône de la barre d’outils du haut de Pcbnew.
-
Depuis la fenêtre d’édition des paramètres de l’empreinte active (voir figure ci-dessous : accessible par le menu contextuel), il y a un bouton Éditeur d’Empreintes.
Dans ce cas, l’empreinte active du circuit est automatiquement chargée dans l’éditeur, permettant sa modification immédiate, ou son archivage.
Interface de l’Éditeur d’Empreintes
Au lancement de l’éditeur d’empreintes, la fenêtre ci-dessous apparaît :
Barre d’outils supérieure de l’Éditeur d’Empreintes
Depuis cette barre d’outils, les fonctions suivantes sont disponibles :
Select the active library. |
|
Save the current footprint to the active library, and write it to disk. |
|
Create a new library and save the current footprint in it. |
|
Open the Footprint Viewer |
|
Access a dialog for deleting a footprint from the active library. |
|
Create a new footprint. |
|
Create a footprint using a wizard |
|
Load a footprint from the active library. |
|
Load (import) a footprint from the printed circuit board. |
|
Export the current footprint to the printed circuit board. when the footprint was previously imported from the current board. It will replace the corresponding footprint on the board (i.e., respecting position and orientation). |
|
Export the current footprint to the printed circuit board. It will be copied on to the printed circuit board at position 0. |
|
Import a footprint from a file created by the Export command. |
|
Export a footprint. This command is essentially identical to that for creating a library, the only difference being that it creates a library in the user directory, while creating a library in the standard library directory (usually kicad/modules). |
|
|
Undo and Redo |
Invokes the footprint properties dialog. |
|
Call the print dialog. |
|
|
Standard zoom commands. |
Call the pad editor. |
|
Perform a check of footprint correctness |
Création d’une nouvelle librairie
La création d’une nouvelle librairie se fait par le bouton , dans ce cas, le fichier sera créé par défaut dans le dossier des librairies, ou par le bouton , dans ce cas, le fichier sera créé par défaut dans votre répertoire de travail.
Une fenêtre de sélection de fichier permet de donner un nom à la librairie et changer son répertoire. Dans les deux cas, la librairie contiendra l’empreinte en cours d’édition.
Si une librairie de même nom existe, elle sera écrasée sans avertissement. |
Sauvegarde d’une empreinte en librairie active
L’action de sauvegarder d’une empreinte (et donc de modifier le fichier de la librairie active) est effectuée en utilisant le bouton . Si une empreinte de même nom existe, elle sera remplacée. Comme vous dépendez de la précision des empreintes de la librairie, il est préférable de contrôler deux fois l’empreinte avant de l’enregistrer.
Il est recommandé de donner comme référence ou comme valeur à l’empreinte le nom par lequel elle sera identifiée en librairie,.
Transfert d’une empreinte d’une librairie à une autre
-
Choisissez la librairie d’origine par le bouton .
-
Chargez l’empreinte par le bouton .
-
Choisissez la librairie de destination par le bouton .
-
Sauvez l’empreinte avec le bouton .
Vous pouvez aussi vouloir supprimer l’empreinte d’origine.
-
Sélectionnez à nouveau la librairie d’origine par le bouton
-
Supprimez l’empreinte avec le bouton
Sauvegarde de toutes les empreintes de votre circuit dans la librairie active.
Il est possible de copier toutes les empreintes d’un circuit donné en librairie active. Ces empreintes conserveront leurs noms actuels. Cette commande a deux utilités :
-
Créer une archive ou compléter une librairie avec les empreintes d’un circuit, dans le cas de la perte d’une librairie.
-
Et plus important, elle facilite la maintenance des librairies en permettant la production d’une documentation pour la librairie, comme décrit ci-dessous.
Documentation des empreintes d’une librairie
Il est fortement recommandé de documenter les empreintes que vous créez, afin de permettre une recherche rapide et fiable.
Par exemple, qui est capable de se souvenir des multiples variantes du brochage d’un boitier TO92? La fenêtre des Propriétés de l’Empreinte offre une solution simple à ce problème.
Cette fenêtre accepte :
-
Un commentaire/description sur une ligne.
-
De multiples mots-clés.
La description est affichée avec la liste des composants dans Cvpcb et, dans Pcbnew, elle est utilisée dans les boîtes de dialogue de sélection d’empreinte.
Les mots-clés permettent aux recherches de se limiter aux empreintes correspondant à ces mots clés.
Lors du chargement direct d’une empreinte (bouton de la barre d’outils de droite de Pcbnew), des mots-clés peuvent être saisis dans la boîte de dialogue. Ainsi, la saisie du texte =CONN
provoquera l’affichage de la liste des empreintes dont les mots clés contiennent le mot CONN
.
Documentation des librairies - Pratiques recommandées
Il est recommandé de créer les librairies indirectement, en créant un ou plusieurs circuits auxiliaires qui constitueront la source (d’une partie) de la librairie, comme suit : Créer un circuit imprimé au format A4, afin d’être capable de l’imprimer facilement à l’échelle (échelle 1).
Créer les empreintes que la librairie contiendra sur ce circuit imprimé. La librairie elle-même sera créée par le menu Fichiers/Archiver Modules/Créer une Librairie et Archiver les empreintes.
La "vraie source" de la librairie sera donc le circuit auxiliaire, et c’est sur ce circuit que toute modification ultérieure des empreintes devra être faite. Naturellement, plusieurs circuits imprimés peuvent être enregistrés dans une même librairie.
C’est généralement une bonne idée de faire des librairies différentes pour les différents types de composants (connecteurs, discrets, …), comme Pcbnew est en mesure de rechercher parmi de multiples librairies lors du chargement d’empreintes.
Voici l’exemple d’une telle source de librairie :
Cette technique présente plusieurs avantages :
-
Le circuit pourra être imprimé à l’échelle et servir de documentation pour la librairie sans effort supplémentaire.
-
Des modifications futures de Pcbnew peuvent exiger la régénération des librairies, ce qui peut être fait très rapidement si des circuits sources de ce type ont été utilisés. Ceci est important, car les formats de fichiers de circuits imprimés sont garantis de rester compatibles au fur et à mesure du développement, mais ceci n’est pas forcément le cas pour le format des fichiers des librairies.
Gestion des Librairies d’Empreintes
La liste des librairies d’empreintes dans Pcbnew peut être modifiée à l’aide du Gestionnaire des Librairies d’Empreintes. Celui-ci vous permet d’ajouter ou de supprimer des librairies d’empreintes manuellement, et vous permet également d’invoquer l’Assistant d’Ajout de Librairies d’Empreintes en cliquant sur le bouton "Ajouter avec l’Assistant".
L’Assistant d’Ajout de Librairies d’Empreintes peut également être lancé depuis le menu Préférences, et peut automatiquement ajouter une librairie (avec détection de son type) à partir d’un fichier ou à partir d’une URL GitHub. L’URL des librairies officielles est : https://github.com/KiCad.
Plus de détails sur les tables de librairies d’empreintes, le gestionnaire et l’assistant peuvent être trouvés dans le manuel de référence de CvPcb à la section Table des Librairies d’Empreintes.
Gestion des Librairies de Formes 3D
Les librairies de formes 3D peuvent être téléchargées par l’Assistant d’Ajout de Librairies de Formes 3D. Il est invoqué par le menu Préférences → Téléchargement des Librairies de Formes 3D.
Éditeur d’empreintes - Création et Modification d’Empreintes
Footprint Editor Overview
The footprint editor is used for editing and creating PCB footprints. This includes:
-
L’ajout et la suppression de pastilles (pads).
-
La modification de pads (forme, couche), individuelle ou pour toutes les pads d’une empreinte.
-
L’ajout et la modification d’éléments graphiques (contours, textes).
-
L’édition des champs (référence, valeur, etc..).
-
L’édition de la documentation associée (description, mots-clefs).
Footprint Elements
Une empreinte est la représentation physique de la pièce à insérer dans un circuit imprimé et elle doit être liée au composant symbolique correspondant de votre schéma. Chaque empreinte comporte trois éléments différents :
-
Des pastilles (ou pads).
-
Des contours graphiques et des textes.
-
Des champs.
De plus, un certain nombre d’autres paramètres doivent être correctement définis si la fonction d’auto-placement doit être utilisée. Il en va de même pour la production des fichiers d’auto-insertion.
Pastilles
Deux propriétés des pads sont importantes .
-
La géométrie (forme, couches, perçage).
-
Le numéro de pad, qui comporte jusqu’à quatre caractères alphanumériques. Ainsi, les éléments suivants sont tous des numéros de pastilles valides: 1, 45 et 9999, mais aussi AA56 et ANODE. Le numéro de pad doit être identique au numéro de pin correspondant dans le schéma, car il définit la correspondance des numéros de pins et pad que Pcbnew utilise pour relier les autres pins et pads.
Contours
Les contours graphiques sont utilisés pour dessiner la forme physique de l’empreinte. Plusieurs types de contours différents sont disponibles : lignes, cercles, arcs, et texte. Les contours n’ont aucune signification électrique, ils sont tout simplement des aides graphiques.
Champs
Ce sont des éléments de texte associés à une empreinte. Deux sont obligatoires et toujours présents : le champ de référence et le champ de valeur. Ceux-ci sont lus automatiquement et mis à jour par Pcbnew lorsqu’une netliste est lue, lors du chargement d’empreintes dans votre circuit. La référence est remplacée par la référence schématique appropriée (U1, IC3, etc.). La valeur est remplacée par la valeur de la pièce correspondante dans le schéma (47K, 74LS02, etc.). D’autres champs peuvent être ajoutés et ceux-ci se comportent alors comme du texte graphique.
Starting Footprint Editor and Selecting a Footprint to Edit
On peut lancer l’éditeur d’empreintes de deux façons :
-
Directement, par l’icône de la barre d’outils du haut de Pcbnew. Ceci permet la création ou la modification d’une empreinte de la librairie.
-
Un double-clic sur une empreinte lancera le menu 'Propriétés de l’Empreinte', qui contient un bouton 'Editeur d’Empreintes'. Quand cette option est utilisée, l’empreinte du circuit sera chargée dans l’éditeur, pour la modifier ou pour la sauvegarder.
Barres d’outils de l’éditeur d’empreintes
Au lancement de l’éditeur d’empreintes, la fenêtre ci-dessous apparaît :
Edit Toolbar (right-hand side)
Cette barre d’outils contient les outils pour :
-
Le placement de pads.
-
L’ajout d’éléments graphiques (contours, textes).
-
Le placement du point d’ancrage d’un composant.
-
La suppression d’éléments.
Leurs fonctions spécifiques sont les suivantes :
Pas d’outil. |
|
Ajout de pads. |
|
Dessin de segments de lignes et de polygones. |
|
Dessin de cercles. |
|
Dessin d’arcs de cercles. |
|
Ajout de textes graphiques (les champs ne sont pas gérés avec cet outil). |
|
Placement du point d’ancrage de l’empreinte. |
|
Suppression d’éléments. |
|
Origine de la grille. (décalage grille). Utile pour le placement de pads. L’origine de la grille peut être placé à un endroit donné (le premier pad à placer), et ensuite, la taille de grille réglée à la taille d’espacement. Le placement de pads sera ainsi très facile. |
Display Toolbar (left-hand side)
Ces outils gèrent les options d’affichage de l’éditeur d’empreintes :
Affiche la grille. |
|
Affichage en coordonnées polaires. |
|
|
Unités en mm ou en inches. |
Change la forme du curseur. |
|
Affichage des pads en mode contour. |
|
Affichage des textes en mode contour. |
|
Affichage des contours en mode détouré. |
|
Affichage en mode fort-contraste. |
Menus Contextuels
Le bouton droit de la souris fait apparaître des menus qui dépendent de l’élément sous le curseur.
Le menu contextuel pour éditer les paramètres de l’empreinte :
Le menu contextuel pour éditer les pads:
Le menu contextuel pour éditer les éléments graphiques :
Footprint Properties Dialog
Cette fenêtre peut être ouverte lorsque le curseur est sur une empreinte, en cliquant du bouton droit de la souris, puis en sélectionnant 'Éditer Paramètres'
Cette fenêtre peut être utilisée pour définir les paramètres principaux de l’empreinte.
Creating a New Footprint
Une nouvelle empreinte peut être créée par le bouton . Le nom de la nouvelle empreinte sera demandé. Ce sera le nom par lequel l’empreinte sera identifiée dans la librairie.
This text also serves as the footprint value, which is ultimately replaced by the real value (100 µF_16 V, 100 Ω_0.5 W, …).
La nouvelle empreinte nécessitera :
-
Des contours (et éventuellement des textes graphiques).
-
Des pastilles.
-
Une valeur (texte caché qui sera ensuite remplacé par la valeur réelle une fois utilisée).
Autre méthode :
Quand une nouvelle empreinte est similaire à une empreinte existante d’une librairie ou d’un circuit, voici une méthode alternative et plus rapide pour créer la nouvelle empreinte :
-
Chargez l’empreinte similaire (, ou ).
-
Modifiez le champ "Nom de l’Empreinte en Librairie" pour générer un nouvel identifiant (nom).
-
Modifiez et sauvegardez la nouvelle empreinte.
Adding and Editing Pads
Une fois l’empreinte créée, des pastilles peuvent être ajoutées, supprimées ou modifiées. La modification des pastilles peut être locale, affecter seulement la pastille sous le curseur, ou globale, affecter toutes les pastilles de l’empreinte.
Adding Pads
Sélectionnez l’icône de la barre d’outils de droite. Les pastilles peuvent être ajoutées en cliquant à la position désirée du bouton gauche de la souris. Les propriétés des pastilles sont prédéfinies dans le menu des propriétés.
N’oubliez pas de donner un numéro à la pastille.
Setting Pad Properties
On peut le faire de plusieurs façons :
-
En sélectionnant l’icône de la barre d’outils horizontale.
-
En cliquant sur une pastille existante et et choisissant 'Editer Pad'. Les propriétés de la pastille peuvent ensuite être modifiées.
-
En cliquant sur une pastille existante et et choisissant 'Exporter Caracts. Pad'. Dans ce cas, les propriétés géométriques de la pastille sélectionnée deviennent les propriétés par défaut.
Dans les deux premiers cas, la fenêtre suivante apparaîtra :
Un grand soin devra être pris pour définir correctement les couches auxquelles le pad appartiendra. En particulier, bien que les couches cuivre soient faciles à définir, la gestion des couches non-cuivre (masque de soudure, pâte à souder …) est également importante pour la fabrication et la documentation du circuit.
Le sélecteur du Type de Pad déclenche une sélection automatique des couches qui est généralement suffisante.
Rectangular Pads
Pour les empreintes CMS de type VQFP/PQFP qui ont des pads rectangulaires sur les quatre côtés (à la fois horizontaux et verticaux), il est recommandé d’utiliser une seule forme (par exemple, un rectangle horizontal) et de le placer avec différentes orientations (0 pour l’horizontale et 90 degrés pour la verticale). Un redimensionnement global des pastilles pourra ensuite être effectué en une seule opération.
Rotate Pads
Les rotations de pastilles de -90 ou -180 degrés ne sont nécessaires que pour les pads trapézoïdaux utilisés pour des empreintes micro-ondes.
Non-plated Through Hole Pads
Les pastilles peuvent être définies comme Pads à Trous Non-Métallisés (NPTH).
Ces pastilles doivent être définies sur une ou toutes les couches de cuivre (de toute évidence, le trou existe sur toutes les couches cuivre).
Ce choix permet de définir des paramètres de marge spécifiques (pour le jeu d’une vis, par exemple).
Lorsque la taille du trou de pad est la même que la taille du pad, pour un pad rond ou ovale, ce pad ne sera PAS tracé sur les couches cuivre dans les fichiers GERBER.
Ces pastilles sont utilisées à des fins mécaniques, par conséquent aucun de nom de pad ou de net n’est autorisé. La connexion à un net est impossible.
Offset Parameter
La pastille 3 a un décalage Y de 15 mils :
Paramètre de Delta (pastilles trapézoïdales)
La pastille 1 a son paramètre Delta réglé à 10 mils
Setting Clearances for Solder Mask and Solder Paste Layers
When defining pads containing copper layers, KiCad creates solder mask and solder paste layers based on a fixed clearance and/or a ratio of the pad geometry. The non-zero settings used to calculate the final pad size is based on the following order of precedence:
-
Pad setting
-
Footprint setting
-
Global setting
La forme d’une pastille du masque de soudure est généralement plus grande que la pastille elle-même. Donc la valeur du jeu sera positive. Une pastille du masque de pâte de soudure est généralement plus petite que la pastille elle-même. Donc, la valeur de la marge sera négative. |
Solder Paste Settings
Two settings are used to calculate the solder paste aperture:
-
A fixed clearance setting.
-
Un pourcentage de la taille de la pastille.
The the final value is the product of the ratio setting and the clearance setting.
Pads Not on Copper Layers
There is second method for creating pads that do not have any copper layers defined. These pads are commonly referred to as aperture pads and can be use to create custom apertures not based on the outline of a copper pad geometry. This method was introduced in version 5.0.0-rc2. Pads defined without any copper layers ignore the global and footprint level settings and only use the pad level settings.
Pads without copper layers defined prior to version 5.0.0-rc2 were plotted using precedence defined above with the global and footprint settings. Adjustments will have to be made for any boards designed prior to this version in order to achieve the same output plots. |
Réglages au niveau empreinte :
Réglages au niveau pastille :
Propriétés des champs
Il y a deux champs au moins : référence et valeur.
Leurs paramètres (attributs, taille, largeur) doivent être mis à jour. Vous pouvez y accéder par le menu contextuel, ou en double-cliquant sur le champ, ou encore par la fenêtre des propriétés de l’empreinte :
Automatic Placement of a Footprint
If the user wishes to exploit the full capabilities of the auto-placement functions, it is necessary to define the allowed orientations of the footprint (Footprint Properties dialog).
Habituellement, une rotation de 180 degrés est autorisée pour les résistances, les condensateurs non-polarisés et les autres composants symétriques.
Certaines empreintes (petits transistors, par exemple) sont souvent autorisés à tourner de +/- 90 ou 180 degrés. Par défaut, une nouvelle empreinte aura son autorisation de rotation à zéro. Celle-ci peut être ajustée en fonction de la règle suivante :
Une valeur de 0 rend la rotation impossible, 10 l’autorise complètement, et toute valeur intermédiaire représentera une rotation limitée. Par exemple, une résistance pourrait avoir une permission de 10 pour une rotation de 180 degrés (pas de limitation) et une autorisation de 5 pour une rotation +/- 90 degrés (permise, mais pas conseillée).
Attributs
La zone de dialogue des attributs est celle-ci :
-
Normal est l’attribut standard.
-
Normal + Insert indique que l’empreinte doit apparaître dans le fichier d’insertion automatique (pour les machines d’insertion automatique). Cet attribut est le plus utile pour les composants de surface (CMS).
-
Virtuel indique qu’un composant est formé directement par le circuit imprimé. Des exemples sont les connecteurs nez de cartes, ou des bobines, antennes créés au moyen d’une piste de forme particulière (comme vu parfois dans les empreintes micro-ondes).
Documenting Footprints in a Library
Il est fortement recommandé de documenter les empreintes nouvellement créées, afin de faciliter une recherche rapide et précise. Qui est capable de se rappeler le brochage des multiples variantes d’une empreinte TO92 ?
La fenêtre Propriétés de L’Empreinte offre un moyen simple mais puissant pour générer la documentation.
Ce menu permet :
-
La saisie d’une ligne de commentaire (description).
-
De multiples mots-clés.
La ligne de commentaire est affichée avec la liste de composants dans CvPcb, et dans les menus de sélection d’empreinte dans Pcbnew. Les mots-clés sont utilisés pour limiter les recherches aux pièces possédant ces mots-clés.
Ainsi, en utilisant la commande Ajouter Empreinte (icône de la barre d’outils de droite dans Pcbnew), il est possible de saisir le texte = TO220
dans la boîte de dialogue pour que Pcbnew affiche la liste des empreintes possédant le mot-clé TO220
.
3-Dimensional Visualization
A footprint may be associated with a file containing a three-dimensional representation of the component. In order to associate a footprint with a model file, select the 3D Settings tab as shown below.
The buttons on the right have the following functions:
-
Add 3D Shape shows a 3D file selection dialog and creates a new model entry for the component.
-
Remove 3D Shape deletes the selected model entry.
-
Edit Filename shows a text editor for manual entry of the model file name.
-
Configure Paths shows a configuration dialog which allows the user to edit the list of path aliases and alias values.
The 3D Settings tab contains a panel with a preview of the selected model and the scale, offset, and rotation data for the model.
Scale values are useful for visualization formats such as VRML1, VRML2, and X3D. Since the model may have been produced by any number of VRML/X3D editors or exporters and VRML does not enforce a unit of length for the models, users can enter an appropriate scale value to ensure that the model appears as it should within the 3DViewer. Some users employ a simple VRML box as a generic model for components and select scale values so that the box has the correct size to represent the component. For Mechanical CAD (MCAD) models the scale values should be left at unity. MCAD formats always specify a unit length and any exporters which make use of MCAD data formats will ignore the scale values. However the 3DViewer will always apply the scale values; if scale values other than unity are used with MCAD models, the output of the 3DViewer will differ from any exported MCAD models such as IDF.
Offset and Rotation values are typically required to align a 3D model with a footprint. Due to differences in 3D modeling software as well as differences in how users construct a model, in the vast majority of cases it is necessary for users to enter Offset and Rotation values to achieve the desired positioning of a 3D model. The Rotation values are given in degrees and are applied successively in the order ZYX; the convention used is that a positive angle results in a clockwise rotation of the part when viewing from the positive position of the axis towards the origin.
KiCad supports 3D model formats via a plugin system and support is provided for the visual model formats VRML1, VRML2, and X3D as well as the MCAD format IDF. The MCAD formats IGES and STEP are supported via the OCE Plugin which requires a suitable version of the OpenCascade or OpenCascade Community Edition (OCE) software.
3D Model Paths
In the past KiCad used a fixed path to a directory of 3D models and later relied on the KISYS3DMOD environment variable to specify the location of the model directory. Other base directories for models could be specified by using additional environment variables. The current version of KiCad has a specialized alias system for handling 3D model names. The aim of the new file name management system (filename resolution system) is to provide a scheme which is compatible with earlier versions of KiCad while offering a more flexible mechanism for specifying 3D model file names and improving the ability to share project files.
Due to the requirement to support previous schemes while offering a flexible new scheme for finding 3D models, there are two distinct methods for specifying base search paths for 3D models.
In order to maintain the legibility of the kicad_pcb and pretty data files, KiCad prefers to use filenames which have been shortened via the use of environment variables (old method) or aliases (new method). Since setting environment variables can be cumbersome especially on GUI-based operating systems, the environment variable scheme for supporting model search paths has been extended to make use of KiCad’s existing internally defined Path Configuration dialog. This dialog is available via the Preferences→Configure Paths menu and is shown below. Setting additional paths within this dialog will extend the search paths used to find 3D model files. The dialog does not actually set environment variables but the filename resolution system acts as if it does; in cases where an actual environment variable with the same name is defined, the environment variable’s value overrides any internally defined values. File names relative to these defined variables begin with ${MY_ENV_VAR} where MY_ENV_VAR is a variable defined via the Path Configuration dialog or an actual environment variable.
The newer scheme to support shortened file names is the alias system. In this system a path begins with the string :my alias: where my alias is a text string which is preferably chosen to be short while also being significant to the user; for example an alias to a directory containing the official KiCad models may have an alias Official Models while your personal model collection may have an alias My Models. The aliases may be set up by clicking on the Configure Paths button within the 3D Settings tab shown previously. The alias configuration dialog is shown below.
3D model files can be selected by clicking Add 3D Shape to display the 3D Model Browser shown below. The model browser provides a 3D preview, file filter, and a drop-down path selector which contains the current list of search paths defined via environment variables or aliases. Depending on the model size and complexity it may take a few seconds for a model to be displayed when it is selected. In an extreme case a BGA package model which was used during testing took around 12 seconds to display.
Saving a Footprint into the Active Library
La commande sauver (modification du fichier de la librairie active) est effectué par le bouton .
Si une empreinte de même nom existe (une version plus ancienne), elle sera écrasée. Comme il est important d’avoir confiance dans ses librairies d’empreintes, ça vaut la peine de contrôler deux fois son empreinte, pour détecter des erreurs, avant de l’enregistrer.
Avant d’enregistrer, il est également recommandé de modifier la référence, ou la valeur de l’empreinte, pour qu’elle corresponde au nom de l’empreinte dans la librairie.
Sauver une empreinte vers le circuit
Si l’empreinte modifiée provient du circuit actuel, le bouton la mettra à jour sur la carte.
Outils avancés d’édition de PCB
Il y a quelques outils d’édition plus avancés, dans Pcbnew et l’Éditeur d’Empreintes, qui peuvent vous aider à disposer efficacement les composants sur le circuit.
Éléments dupliqués
La duplication est une méthode pour cloner un élément et le sélectionner dans la même action. Il est grosso-modo similaire à un copier-coller, mais il vous permet de "saupoudrer" les composants sur le PCB, et il vous permet de placer manuellement les composants plus facilement en utilisant l’outil "Déplacer Empreinte Exactement" (voir ci-dessous).
Duplication is done by using the hotkey (which defaults to Ctrl-D) or the duplicate item option in the context menu, icon .
Déplacement exact d’éléments
L’outil "Déplacer Empreinte Exactement" vous permet de déplacer un élément (ou un groupe d’éléments) d’une certaine quantité, qui peut être saisie dans les formats cartésiens ou polaires, et dans toutes les unités prises en compte. Ceci est utile lorsqu’il serait plus rébarbatif autrement de changer de taille de grille, ou lorsqu’une fonction n’utilise pas l’espacement des grilles existantes.
To use this tool, select the items you wish to move and then use either the hotkey (defaults to Ctrl-M) or the context menu items to invoke the dialog. You can also invoke the dialog with the hotkey when moving or duplicating items, which can make it easy to repeatedly apply an offset to multiple components.
Déplacement exact par la saisie d’un vecteur de déplacement cartésien
Déplacement exact par la saisie d’un vecteur de déplacement polaire
La case à cocher vous permet de basculer entre les coordonnées cartésiennes (ou rectangulaires) et polaires. Tout ce qui est affiché dans le formulaire sera automatiquement converti vers l’autre système de coordonnées.
Vous entrez ensuite le vecteur de déplacement souhaité. Vous pouvez utiliser les unités indiquées par les étiquettes ("mm" dans les images ci-dessus), ou vous pouvez spécifier les unités vous-même (par exemple "1 in" pour un pouce, ou "2 rad" pour 2 radians).
En cliquant sur OK, cela appliquera la translation à la sélection. Sur Annuler, cela fermera la fenêtre, et les éléments ne seront pas déplacés. Si vous appuyez sur OK, le vecteur de déplacement sera sauvegardé et pré-rempli pour la prochaine fois où la boîte de dialogue sera ouverte, ce qui permet l’application répétée du même vecteur à de multiples objets.
Outils de Matriçage
Pcbnew et l’Éditeur d’Empreintes ont tous les deux des assistants pour créer des matrices (ou réseaux) d’éléments ou de composants, qui peuvent être utilisés pour distribuer facilement et avec précision des éléments répétitifs sur les PCBs, et dans les empreintes.
Activation de l’outil de matriçage
The array tool acts on the component under the cursor, or, in GAL mode, on a selection. It can be accessed either via the context menu, icon for the selection or by a keyboard shortcut (defaults to Ctrl-N).
The array tool is presented as a dialog window, with a pane for the types of arrays. There are two types of arrays supported so far: grid, and circular.
Chaque type de réseau peut être entièrement décrit dans son onglet respectif. Les options de géométrie (comment la grille sera remplie) sont sur la gauche ; les options de numérotation (y compris la progression des numéros à travers la grille) sont sur la droite.
Réseaux en grille
Le réseaux en grille sont des matrices de composants disposés selon une grille carrée à deux dimensions. Ce type de réseau peut également servir à produire un réseau linéaire, comportant une seule ligne ou une seule colonne.
Le panneau de réglages pour les réseaux en grille ressemble à ceci :
Options géométriques
Les options géométriques sont les suivantes :
-
Horizontal count: the number of "columns" in the grid.
-
Compte vertical : le nombre de "rangées" de la matrice.
-
*Espacement horizontal * : la distance horizontale entre les éléments d’une même ligne et la colonne suivante. Si le chiffre est négatif, la grille progressera de droite à gauche.
-
*Espacement vertical * : la distance verticale entre les éléments d’une même colonne et la rangée suivante. Si le chiffre est négatif, la grille progressera de bas en haut.
-
Décalage horizontal : débute chaque rangée décalée de cette distance à droite de la rangée précédente
-
Décalage vertical : débute chaque colonne décalée de cette distance sous la colonne précédente
-
Quinconce/Balayage : ajoute un décalage à chaque série de "n" rangées/colonnes, chaque rangée progressant d'1/n’ième de la dimension d’espacement correspondante :
Options de numérotation
-
Numbering Direction: Determines whether numbers proceed along rows and then moves to the next row, or down columns and then to the next column. Note that the direction on numbering is defined by the sign of the spacing: a negative spacing will result in right-to-left or bottom-to-top numbering.
-
Numérotation inversée sur des rangées ou des colonnes alternées : si sélectionnée, numérotation alternée (de gauche à droite ou de droite à gauche, par exemple), des lignes ou des colonnes. Comment les lignes ou les colonnes sont alternées dépend de la direction de numérotation. Cette option est utile pour les boîtiers comme les DIPs, où la numérotation s’incrémente sur un côté et change de sens sur l’autre.
-
Restart numbering: if laying out using items that already have numbers, reset to the start, otherwise continue if possible from this item’s number
-
Arrangement de Numérotation
-
Continuous: the numbering just continues across a row/column break - if the last item in the first row is numbered "7", the first item in the second row will be "8".
-
Coordinate: the numbering uses a two-axis scheme where the number is made up of the row and column index. Which one comes first (row or column) is determined by the numbering direction.
-
-
Axes de numérotation: quel "alphabet" utiliser pour numéroter les axes. Les choix sont :
-
Numerals for normal integer indices
-
Hexadecimal for base-16 indexing
-
Alphabetic, minus IOSQXZ, a common scheme for electronic components, recommended by ASME Y14.35M-1997 sec. 5.2 (previously MIL-STD-100 sec. 406.5) to avoid confusion with numerals.
-
Full alphabet from A-Z.
-
Réseaux circulaires
Les réseaux circulaires distribuent les éléments autour d’un cercle ou d’un arc de cercle. Le cercle est défini par l’emplacement de la sélection (ou le centre d’un groupe sélectionné), et un point central qui est spécifié. Ci-dessous, le panneau de configuration d’un réseau circulaire :
Options géométriques
-
Centre horizontal, Centre Vertical: le centre du cercle. Le champ Rayon en-dessous se met automatiquement à jour lorsque vous les ajustez.
-
Angle : différence angulaire entre deux éléments adjacents dans la grille. Mettre à zéro pour diviser le cercle en "Nombre" d’éléments égaux.
-
Nombre : Nombre d’éléments du réseau (y compris l’élément d’origine).
-
Rotation : Pivoter chaque élément autour de sa propre position. Dans le cas contraire, l’élément sera décalé, mais pas tourné (par exemple, une pastille carrée sera toujours axée verticalement si cette option est désactivée).
Options de numérotation
Les réseaux circulaires ont seulement une dimension, et une géométrie plus simple que les grilles. La signification des options disponibles est la même que pour les grilles. Les éléments sont numérotés dans le sens horaire. Pour un réseau de sens trigonométrique, spécifiez un angle négatif.
Measurement (ruler) tool
The measurement tool is a linear ruler that can be used to visually check sizes and spacings on a PCB.
It is accessible via the calipers icon in the right hand toolbar, in the "Dimension" menu and with the hotkey (Ctrl-Shift-M by default).
When active, you can draw a temporary ruler over the canvas, which will be marked with the current units. You can snap to 45-degree angles by holding the Ctrl key. Units can be changed without leaving the tool using the ususal hotkey (Ctrl-U by default).
KiCad Scripting Reference
Scripting allows you to automate tasks within KiCad using the Python language.
Also see the doxygen documentation on Python Scripting Reference.
Vous pouvez obtenir l’aide du module python en tapant pydoc pcbnew
dans votre terminal.
Avec des scripts vous pouvez créer des :
-
Plugins : ce type de script est chargé au démarrage de KiCad. Exemples :
-
Assistants d’Empreintes : Pour vous faciliter la fabrication d’empreintes en remplissant des paramètres. Voir ci-dessous la section dédiée Assistants d’Empreintes.
-
Fichier I/O '(en projet)' : Pour vous permettre d’écrire des plugins d’import/export d’autres types de fichiers.
-
Actions '(experimental)': Associate events to scripting actions or register new menus or toolbar icons.
-
-
Scripts en Ligne de Commande : ces scripts, utilisables en ligne de commande, peuvent charger des circuits ou des librairies, les modifier, et produire en sortie des rendus ou de nouveaux circuits.
It shall be noted that the only KiCad application that supports scripting is Pcbnew. It is also planned for Eeschema in the future.
Objets de KiCad
The scripting API reflects the internal object structure inside KiCad/pcbnew. BOARD is the main object, that has a set of properties and a set of MODULEs, and TRACKs/VIAs, TEXTE_PCB, DIMENSION, DRAWSEGMENT. Then MODULEs have D_PADs, EDGEs, etc.
-
Voir la section BOARD ci-dessous.
Référence de Base de l’API
All the pcbnew API is provided from the "pcbnew" module in Python. GetBoard() method will return the current pcb open at editor, useful for commands written from the integrated scripting shell inside pcbnew or action plugins.
Charger et Sauvegarder un Circuit
-
LoadBoard(nom_du_fichier) : charge un circuit depuis un fichier et retourne un objet de type BOARD, en utilisant le format de fichier correspondant à l’extension du fichier.
-
SaveBoard(nom_du_fichier,circuit) : sauvegarde un objet BOARD dans le fichier, en utilisant le format de fichier correspondant à l’extension du fichier.
-
circuit.Save(nom_du_fichier) : identique au précédent, mais cette fois par la méthode de l’objet BOARD.
#!/usr/bin/env python2.7
import sys
from pcbnew import *
filename=sys.argv[1]
pcb = LoadBoard(filename)
for module in pcb.GetModules():
print "* Module: %s"%module.GetReference()
module.Value().SetVisible(False) # set Value as Hidden
module.Reference().SetVisible(True) # set Reference as Visible
pcb.Save("mod_"+filename)
Lister et Charger des Librairies
#!/usr/bin/python
from pcbnew import *
libpath = "/usr/share/kicad/modules/Sockets.pretty"
print ">> enumerate footprints, pads of",libpath
# Load the suitable plugin to read/write the .pretty library
# (containing the .kicad_mod footprint files)
src_type = IO_MGR.GuessPluginTypeFromLibPath( libpath );
# Rem: we can force the plugin type by using IO_MGR.PluginFind( IO_MGR.KICAD )
plugin = IO_MGR.PluginFind( src_type )
# Print plugin type name: (Expecting "KiCad" for a .pretty library)
print( "Selected plugin type: %s" % plugin.PluginName() )
list_of_footprints = plugin.FootprintEnumerate(libpath)
for name in list_of_footprints:
fp = plugin.FootprintLoad(libpath,name)
# print the short name of the footprint
print name # this is the name inside the loaded library
# followed by ref field, value field, and decription string:
# Remember ref and value texts are dummy texts, replaced by the schematic values
# when reading a netlist.
print " ->", fp.GetReference(), fp.GetValue(), fp.GetDescription()
# print pad info: GetPos0() is the pad position relative to the footrint position
for pad in fp.Pads():
print " pad [%s]" % pad.GetPadName(), "at",\
"pos0", ToMM(pad.GetPos0().x), ToMM(pad.GetPos0().y),"mm",\
"shape offset", ToMM(pad.GetOffset().x), ToMM(pad.GetOffset().y), "mm"
print ""
BOARD
BOARD est l’objet de base dans Pcbnew de KiCad, c’est le document.
BOARD contient un jeu de listes d’objets qui peuvent être atteintes par les méthodes suivantes, qui retournent des listes itérables pouvant être itérées en utilisant "for obj in list:"
-
circuit.GetModules() : retourne la liste des objets de type MODULE. Tous les modules présents sur le circuit y seront représentés.
-
circuit.GetDrawings() : retourne la liste des BOARD_ITEMS qui sont des éléments graphiques du circuit.
-
board.GetTracks(): This method returns a list of TRACKs and VIAs inside a BOARD
-
board.GetFullRatsnest(): Returns the list of ratsnest (connections still not routed)
-
circuit.GetNetClasses() : retourne la liste des net classes.
-
circuit.GetCurrentNetClassName() : retourne la net class courante.
-
circuit.GetViasDimensionsList() : retourne la liste des dimensions des vias disponibles dans le circuit.
-
circuit.GetTrackWidthList() : retourne la liste des largeurs de piste disponibles dans le circuit.
#!/usr/bin/env python
import sys
from pcbnew import *
filename=sys.argv[1]
pcb = LoadBoard(filename)
ToUnits = ToMM
FromUnits = FromMM
#ToUnits=ToMils
#FromUnits=FromMils
print "LISTING VIAS:"
for item in pcb.GetTracks():
if type(item) is VIA:
pos = item.GetPosition()
drill = item.GetDrillValue()
width = item.GetWidth()
print " * Via: %s - %f/%f "%(ToUnits(pos),ToUnits(drill),ToUnits(width))
elif type(item) is TRACK:
start = item.GetStart()
end = item.GetEnd()
width = item.GetWidth()
print " * Track: %s to %s, width %f" % (ToUnits(start),ToUnits(end),ToUnits(width))
else:
print "Unknown type %s" % type(item)
print ""
print "LIST DRAWINGS:"
for item in pcb.GetDrawings():
if type(item) is TEXTE_PCB:
print "* Text: '%s' at %s"%(item.GetText(), item.GetPosition())
elif type(item) is DRAWSEGMENT:
print "* Drawing: %s"%item.GetShapeStr() # dir(item)
else:
print type(item)
print ""
print "LIST MODULES:"
for module in pcb.GetModules():
print "* Module: %s at %s"%(module.GetReference(),ToUnits(module.GetPosition()))
print ""
print "Ratsnest cnt:",len(pcb.GetFullRatsnest())
print "track w cnt:",len(pcb.GetTrackWidthList())
print "via s cnt:",len(pcb.GetViasDimensionsList())
print ""
print "LIST ZONES:", pcb.GetAreaCount()
for idx in range(0, pcb.GetAreaCount()):
zone=pcb.GetArea(idx)
print "zone:", idx, "priority:", zone.GetPriority(), "netname", zone.GetNetname()
print ""
print "NetClasses:", pcb.GetNetClasses().GetCount(),
Exemples
Change a component pin’s paste mask margin
#!/usr/bin/env python2.7
import sys
from pcbnew import *
filename=sys.argv[1]
pcb = LoadBoard(filename)
# Find module U304
u304 = pcb.FindModuleByReference('U304')
pads = u304.Pads()
# Iterate over pads, printing solder paste margin
for p in pads:
print p.GetPadName(), ToMM(p.GetLocalSolderPasteMargin())
id = int(p.GetPadName())
# Set margin to 0 for all but pad (pin) 15
if id<15: p.SetLocalSolderPasteMargin(0)
pcb.Save("mod_"+filename)
Assistants d’Empreintes
The footprint wizards are a collection of python scripts that can be accessed from the Footprint Editor. If you invoke the footprint dialog you select a given wizard that allows you to see the footprint rendered, and you have some parameters you can edit.
If the plugins are not properly distributed to your system package, you can find the latest versions in the KiCad source tree at gitlab.
They should be located in for example C:\Program Files\KiCad\share\kicad\scripting\plugins
.
Sous Linux, vous pouvez aussi stocker vos plugins utilisateur dans $HOME/.kicad_plugins
.
from __future__ import division
import pcbnew
import HelpfulFootprintWizardPlugin as HFPW
class FPC_FootprintWizard(HFPW.HelpfulFootprintWizardPlugin):
def GetName(self):
return "FPC (SMT connector)"
def GetDescription(self):
return "FPC (SMT connector) Footprint Wizard"
def GetValue(self):
pins = self.parameters["Pads"]["*n"]
return "FPC_%d" % pins
def GenerateParameterList(self):
self.AddParam( "Pads", "n", self.uNatural, 40 )
self.AddParam( "Pads", "pitch", self.uMM, 0.5 )
self.AddParam( "Pads", "width", self.uMM, 0.25 )
self.AddParam( "Pads", "height", self.uMM, 1.6)
self.AddParam( "Shield", "shield_to_pad", self.uMM, 1.6 )
self.AddParam( "Shield", "from_top", self.uMM, 1.3 )
self.AddParam( "Shield", "width", self.uMM, 1.5 )
self.AddParam( "Shield", "height", self.uMM, 2 )
# build a rectangular pad
def smdRectPad(self,module,size,pos,name):
pad = pcbnew.D_PAD(module)
pad.SetSize(size)
pad.SetShape(pcbnew.PAD_SHAPE_RECT)
pad.SetAttribute(pcbnew.PAD_ATTRIB_SMD)
pad.SetLayerSet( pad.SMDMask() )
pad.SetPos0(pos)
pad.SetPosition(pos)
pad.SetPadName(name)
return pad
def CheckParameters(self):
p = self.parameters
self.CheckParamInt( "Pads", "*n" ) # not internal units preceded by "*"
def BuildThisFootprint(self):
p = self.parameters
pad_count = int(p["Pads"]["*n"])
pad_width = p["Pads"]["width"]
pad_height = p["Pads"]["height"]
pad_pitch = p["Pads"]["pitch"]
shl_width = p["Shield"]["width"]
shl_height = p["Shield"]["height"]
shl_to_pad = p["Shield"]["shield_to_pad"]
shl_from_top = p["Shield"]["from_top"]
offsetX = pad_pitch * ( pad_count-1 ) / 2
size_pad = pcbnew.wxSize( pad_width, pad_height )
size_shld = pcbnew.wxSize(shl_width, shl_height)
size_text = self.GetTextSize() # IPC nominal
# Gives a position and size to ref and value texts:
textposy = pad_height/2 + pcbnew.FromMM(1) + self.GetTextThickness()
self.draw.Reference( 0, textposy, size_text )
textposy = textposy + size_text + self.GetTextThickness()
self.draw.Value( 0, textposy, size_text )
# create a pad array and add it to the module
for n in range ( 0, pad_count ):
xpos = pad_pitch*n - offsetX
pad = self.smdRectPad(self.module,size_pad, pcbnew.wxPoint(xpos,0),str(n+1))
self.module.Add(pad)
# Mechanical shield pads: left pad and right pad
xpos = -shl_to_pad-offsetX
pad_s0_pos = pcbnew.wxPoint(xpos,shl_from_top)
pad_s0 = self.smdRectPad(self.module, size_shld, pad_s0_pos, "0")
xpos = (pad_count-1) * pad_pitch+shl_to_pad - offsetX
pad_s1_pos = pcbnew.wxPoint(xpos,shl_from_top)
pad_s1 = self.smdRectPad(self.module, size_shld, pad_s1_pos, "0")
self.module.Add(pad_s0)
self.module.Add(pad_s1)
# add footprint outline
linewidth = self.draw.GetLineThickness()
margin = linewidth
# upper line
posy = -pad_height/2 - linewidth/2 - margin
xstart = - pad_pitch*0.5-offsetX
xend = pad_pitch * pad_count + xstart;
self.draw.Line( xstart, posy, xend, posy )
# lower line
posy = pad_height/2 + linewidth/2 + margin
self.draw.Line(xstart, posy, xend, posy)
# around left mechanical pad (the outline around right pad is mirrored/y axix)
yend = pad_s0_pos.y + shl_height/2 + margin
self.draw.Line(xstart, posy, xstart, yend)
self.draw.Line(-xstart, posy, -xstart, yend)
posy = yend
xend = pad_s0_pos.x - (shl_width/2 + linewidth + margin*2)
self.draw.Line(xstart, posy, xend, posy)
# right pad side
self.draw.Line(-xstart, posy, -xend, yend)
# set SMD attribute
self.module.SetAttributes(pcbnew.MOD_CMS)
# vertical segment at left of the pad
xstart = xend
yend = posy - (shl_height + linewidth + margin*2)
self.draw.Line(xstart, posy, xend, yend)
# right pad side
self.draw.Line(-xstart, posy, -xend, yend)
# horizontal segment above the pad
xstart = xend
xend = - pad_pitch*0.5-offsetX
posy = yend
self.draw.Line(xstart, posy, xend, yend)
# right pad side
self.draw.Line(-xstart, posy,-xend, yend)
# vertical segment above the pad
xstart = xend
yend = -pad_height/2 - linewidth/2 - margin
self.draw.Line(xstart, posy, xend, yend)
# right pad side
self.draw.Line(-xstart, posy, -xend, yend)
# register into pcbnew
FPC_FootprintWizard().register()
Action Plugins
Action plugin associate events to scripting actions. Currently only register a new menu is implemented.
New menu are available inside menu Tools ⇒ External plugins.
-
Refresh: reload plugins (create new menu if needed)
-
Add date on PCB: An example plugin.
Warning: As all other python scripts, undo/redo function not work (yet !).
import pcbnew
import re
import datetime
class text_by_date(pcbnew.ActionPlugin):
"""
test_by_date: A sample plugin as an example of ActionPlugin
Add the date to any text field of the board where the content is '$date$'
How to use:
- Add a text on your board with the content '$date$'
- Call the plugin
- Automaticaly the date will be added to the text (format YYYY-MM-DD)
"""
def defaults(self):
"""
Method defaults must be redefined
self.name should be the menu label to use
self.category should be the category (not yet used)
self.description should be a comprehensive description
of the plugin
"""
self.name = "Add date on PCB"
self.category = "Modify PCB"
self.description = "Automaticaly add date on an existing PCB"
def Run(self):
pcb = pcbnew.GetBoard()
for draw in pcb.GetDrawings():
if draw.GetClass() == 'PTEXT':
txt = re.sub("\$date\$ [0-9]{4}-[0-9]{2}-[0-9]{2}",
"$date$", draw.GetText())
if txt == "$date$":
draw.SetText("$date$ %s"%datetime.date.today())
text_by_date().register()