Pcbnew

The KiCad Team

Referenzhandbuch

Copyright

This document is Copyright © 2010-2015 by its contributors as listed below. You may distribute it and/or modify it under the terms of either the GNU General Public License (http://www.gnu.org/licenses/gpl.html), version 3 or later, or the Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0/), version 3.0 or later.

All trademarks within this guide belong to their legitimate owners.

Mitwirkende

Jean-Pierre Charras, Fabrizio Tappero.

Übersetzung

André S. <ansc.de@gmail.com>

Feedback

Bitte senden Sie alle Fehlermeldungen, Vorschläge oder neue Versionen an:

Zum KiCad-Dokument: https://gitlab.com/kicad/services/kicad-doc/issues

Zur KiCad-Software: https://gitlab.com/kicad/code/kicad/issues

Zur KiCad-Software i18n: https://gitlab.com/kicad/code/kicad-i18n/issues

Datum der Veröffentlichung und Software-Version

März 2014.

Kapitel 1. Einführung zu Pcbnew

1.1. Beschreibung

Pcbnew ist eine leistungsfähige Leiterplatten-Software für die Betriebssysteme Linux, Microsoft Windows und Apple OS X. Pcbnew wird zusammen mit dem Schaltplanprogramm Eeschema verwendet, um Leiterplatten zu erstellen.

Pcbnew verwaltet Bibliotheken von Footprints. Jeder Footprint ist eine Zeichnung eines realen Bauteils einschließlich seines Lötflächen-Rasters (die Anordnung der Lötflächen auf der Leiterplatte). Die benötigten Footprints werden automatisch während des Einlesens der Netzliste geladen. Jede Änderung der Footprint-Auswahl oder Referenzierung kann im Schaltplan vorgenommen werden und in Pcbnew aktualisiert werden, indem die Netzliste aktualisiert wird und in Pcbnew neu eingelesen wird.

Pcbnew stellt ein DRC Werkzeug (Design Rule Check = Prüfung der Entwurfsregeln) bereit, das verhindert, dass Netze verbunden werden, die nicht verbunden sein sollen oder Probleme mit Abständen zu Leiterbahnen und Lötflächen verhindert. Wenn Sie den interaktiven Router verwenden, prüft dieser kontinuierlich auf die Designregeln und hilft dabei automatisch einzelne Leiterbahnen zu verlegen.

Pcbnew erlaubt das Anzeigen von Luftlinien, eine dünne Linie, die Lötflächen von Footprints verbindet, die im Schaltplan verbunden sind. Diese Verbindungen bewegen sich dynamisch, wenn Leiterbahnen und Footprints bewegt werden.

Pcbnew hat einen einfachen aber effektiven Autorouter, um das Anfertigen von Leiterplatten zu unterstützen. Ein Export/Import im SPECCTRA dsn Format erlaubt die Benutzung von leistungsfähigeren Autoroutern.

Pcbnew stellt Möglichkeiten speziell für das Anfertigen von Höchstfrequenz-Mikrowellen-Schaltungen zur Verfügung, wie zum Beispiel trapezförmige und komplex geformte Lötflächen, automatisches Erstellen von Spulen auf der Leiterplatte, usw.).

1.2. Prinzipielle Design-Eigenschaften

Die kleinste Einheit in Pcbnew ist 1 Nanometer. Alle Abmessungen werden als ganzzahlige Nanometer gespeichert.

Pcbnew kann bis zu 32 Kupferlagen erzeugen, 14 technische Lagen (Bestückdruck, Lötstopplack, Lage für Bauteil-Klebung, Lötpaste und Kantenschnitte) plus 4 Hilfslagen (Zeichnungen und Kommentare) und verwaltet in Echtzeit die Luftlinien-Anzeige von fehlenden Leiterbahnen.

Die Anzeige von Leiterplattenelementen (Leiterbahnen, Lötflächen, Text, Zeichnungen…) ist anpasssbar:

Volldarstellung oder Umriss.

Mit oder ohne Leiterbahnabstände.

Für komplexe Schaltungen kann für einer bessere Darstellung die Anzeige von Lagen, Flächen und Bauteilen gezielt deaktivert werden. Netze oder Leiterbahnen können hervorgehoben werden, um zusätzlich hohen Kontrast zur Verfügung zu stellen.

Footprints können in jedem Winkel mit einer Auflösung von 0,1 Grad gedreht werden.

Pcbnew enthält einen Footprinteditor, der das Bearbeiten einzelner Footprints erlaubt, die sich auf der Leiterplatte oder in einer Bibliothek befinden.

Der Footprinteditor enthält viele zeitsparende Werkzeuge wie:

Schnelle Lötflächennummerierung indem Sie einfach die Maus in der Reihenfolge über die Lötflächen bewegen, wie Sie sie nummeriert haben wollen.

Einfacher Erzeugung von rechteckigen und kreisförmigen Anordnungen von Lötflächen für LGA/BGA oder kreisförmige Footprints.

Halbautomatische Ausrichtung von Zeilen oder Spalten von Lötflächen.

Footprints haben eine Anzahl von Eigenschaften, die angepasst werden können. Die Lötflächen können rund, rechteckig, oval oder trapezförmig sein. Für bedrahtete Bauteile können die Bohrungen in der Lötfläche verschoben sein und können rund sein oder ein Schlitz. Einzelne Lötflächen können ebenfalls gedreht sein und eigene Lötstoppmasken-, Netz- oder Lötpastenabstände haben. Lötflächen können ebenfalls massiv angebunden oder über Wärmefallen für eine einfachere Fertigung. Jede Kombination von einzigartigen Lötflächen kann innerhalb eines Footprint verwendet werden.

Pcbnew erzeugt sehr einfach alle für die Fertigung notwendigen Dokumente:

Fertigungsausgaben:

Files for Photoplotters in GERBER RS274X format.

Files for drilling in EXCELLON format.

Plot-Dateien in HPGL, SVG und DXF Format.

Plott- und Bohrpläne im POSTSCRIPT Format.

Lokale Druckausgabe.

1.3. Allgemeine Anmerkungen

Aufgrund der notwendigen Steuerungstiefe wird dringend empfohlen, Pcbnew mit einer 3-Tasten-Maus zu bedienen. Viele Funktionen wie Verschieben des Bildschirminhalts oder Zoom benötigen eine 3-Tasten-Maus.

In der neuen Version von KiCad hat Pcbnew große Änderungen von den Entwicklern im CERN erfahren. Das beinhaltet Funktionen wie einen neuen Renderer (OpenGL und Cairo Ansichts-Modi), einen interaktiven "Schiebe und Schubs" (Push and Shove) Router, differenzielle- und Mäander-Leiterbahnführung und -anpassung, einen überarbeiteten Footprinteditor, und viele andere Funktionen. Bitte beachten Sie, dass die meisten dieser neuen Funktionen nur in den neuen OpenGL und Cairo Ansichts-Modi verfügbar sind.

Kapitel 2. Installation

2.1. Installation der Software

Der Installationsvorgang ist in der KiCad-Dokumentation beschrieben.

2.2. Verändern der Standard-Konfiguration

Eine Standard-Konfigurationsdatei kicad.pro wird in kicad/share/template mitgeliefert. Diese Datei wird als Erstkonfiguration für alle neuen Projekte verwendet.

Diese Konfigurationsdatei kann verändert werden, um die zu ladenden Bibliotheken zu ändern.

Um das zu tun:

Starten Sie Pcbnew entweder aus KiCad oder direkt. Unter Windows ist es standardmäßig in C:\kicad\bin\pcbnew.exe und unter Linux können Sie /usr/local/kicad/bin/kicad starten oder /usr/local/kicad/bin/pcbnew wenn sich die ausführbaren Dateien unter /usr/local/kicad/bin befinden.

Auswahl der Voreinstellungen - Bibliotheken und Verzeichnisse.

Bearbeiten Sie diese wie benötigt.

Speichern Sie die veränderte Konfiguration (Save Cfg) nach kicad/share/template/kicad.pro.

2.3. 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

Anmerkung

You can write only KiCad .pretty footprint library folders on your local disk (and the .kicad_mod files inside these folders).

All other formats are read only.

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.

2.3.1. Globale Footprint-Bibliothek-Tabelle

Die globale Footprint-Bibliothek-Tabelle enthält die Liste von Bibliotheken die immer verfügbar sind, unabhängig von der aktuell geladenen Projektdatei. Die Tabelle wird in der Datei fp-lib-table im Benutzerverzeichnis gespeichert. Der genaue Speicherort hängt vom verwendeten Betriebssystem ab.

2.3.2. Projektspezifische Footprint-Bibliothek-Tabelle

Die projektspezifische Footprint-Bibliothek-Tabelle enthält die Liste der Bibliotheken, die speziell für die aktuell geladene Projektdatei zur Verfügung stehen. Die projektspezifische Footprint-Bibliothek-Tabelle kann nur bearbeitet werden, wenn sie mit der Leiterplattendatei des Projekts geladen wird. Wenn keine Projektdatei geladen ist oder es keine Datei mit der Footprint-Bibliothek-Tabelle im Projektverzeichnis gibt, wird eine leere Tabelle erstellt. Diese kann bearbeitet werden und später mit der Leiterplattendatei gemeinsam gespeichert werden.

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.

2.3.3. Erstkonfiguration

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.

Tipp

There are also sample fp-lib-table files in the official KiCad library repository that you can use as your own starting point:

All KiCad libraries via Github: fp-lib-table.for-github

All KiCad libraries, assuming they are on your disk already (you will need to download them if you do not already have them): fp-lib-table.for-pretty

Standard Eagle libraries (for Eagle 6.4.0) fp-lib-table.for-eagle-6.4.0

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.

Tipp

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.

2.3.4. Adding Table Entries using the Libraries Manager

The library table manager is accessible by:

Das Bild unten zeigt den Dialog zum Bearbeiten der Footprint-Bibliotheks-Tabelle, welcher über das Menü Einstellungen → Footprint Libraries Manager geöffnet wird.

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.

2.3.5. Ersetzung von Umgebungsvariablen

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.

2.3.6. 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.

Tipp

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.

2.3.7. 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.

Anmerkung

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.

2.3.8. Benutzung des GitHub Plug-In

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.

Wichtig

The "GitHub" plugin is for read-only access of remote pretty footprint libraries at https://github.com.

You will not be told if a remote repository changed since your last use of it. Be cautious when using footprint directly from Github.

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.

Zum Beispiel:

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

Typischerweise sehen GitHub URLs so aus:

https://github.com/user_name/repo_name

The "Plugin Type" must be set to "Github".

The table below shows a footprint library table entry with the default options (no COW support):

Nickname
Library Path
Plugin Type
Options
Description

github

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

Github

Liftoff’s GH footprints

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.

Die Tabelle unten zeigt einenn Eintrag in der Footprint-Bibliotheks-Tabelle mit der gesetzten COW Option. Beachten Sie die Verwendung der Umgebungsvariable ${HOME} nur als Beispiel. Das github.pretty Verzeichnis befindet sich in ${HOME}/pretty/path. Immer wenn Sie die Option allow_pretty_writing_to_this_dir verwenden, müssen Sie ds Verzeichnis vorher von Hand anlegen und es muss mit der Erweiterung .pretty enden.

Nickname
Library Path
Plugin Type
Options
Description

github

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

Github

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

Liftoff’s GH footprints

Das Laden von Footprints wird immer vorrangig die lokalen Footprints benutzen, die im Verzeichnis liegen, das mit der Option allow_pretty_writing_to_this_dir angegeben ist. Sobald Sie einen Footprint in das lokale COW Verzeichnis der Bibliothek mit dem Footprinteditor gespeichert haben, wird ein Footprint mit gleichem Namen nicht mehr von Github geladen/aktualisiert.

Verwenden Sie immer ein getrenntes lokales *.pretty Verzeichnis für jede GitHub Bibliothek. Kombinieren Sie sie nicht indem Sie auf das gleiche Verzeichnis mehrfach verweisen. Verwenden Sie ebenfalls nicht das gleiche COW Verzeichnis im Eintrag der Footprint-Bibliotheks-Tabelle. Das wird sehr wahrscheinlich Chaos verursachen. Der Wert der Option allow_pretty_writing_to_this_dir wird Umgebungsvariablen der Form ${} auswerten, um das Verzeichnis in der gleichen Weise zu erstellen wie in der "Bibliotheksverzeichnis" Einstellung.

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.

Tipp

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.

2.3.9. Benutzungsmuster

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.

Es gibt Vor- und Nachteile für jede Methode:

Sie können alle Ihre Bibliotheken in der globalen Tabelle definieren, was bedeutet, dass sie immer verfügbar sind, wenn Sie sie brauchen.

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

Sie können alle Ihre Bibliotheken auf einer projektspezifischen Basis definieren.

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.

Sie können ebenfalls Footprint-Bibliotheken sowohl global als auch projektspezifisch definieren.

Ein Nutzungsmuster könnte sein, dass Sie ihre meistgenutzten Bibliotheken global definieren und die nur für das Projekt benötigten in der projektspezifischen Bibliotheks-Tabelle. Es gibt keine Einschränkung, wie Sie ihre Bibliotheken definieren.

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.

Tipp

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.

Kapitel 3. Allgemeines Arbeiten

3.1. Werkzeugleisten und Befehle

In Pcbnew ist es möglich, Befehle mit verschiedenen Möglichkeiten auszuführen:

Das text-basierte Menü oben im Hauptfenster.

Die obere Werkzeugleiste.

Die rechte Werkzeugleiste.

Die linke Werkzeugleiste.

Die Maustasten (Menü-Optionen). Im Speziellen:

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

Die Tastatur (Funktionstasten F1, F2, F3, F4, Umschalttaste, Entf, +, -, Seite 🠭, Seite 🠯 und Leertaste). Die Esc Taste bricht im Allgemeinen einen laufenden Ablauf ab.

Der Screenshot unten stellt einige der möglichen Zugriffe auf diese Funktionen dar:

3.2. Mausbefehle

3.2.1. Grundbefehle

Linke Maustaste

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.

Rechte Maustaste

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.

Anmerkung

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.

3.2.2. 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

Shift

Add block to existing selections.

Alt + Shift Linux and Windows, Ctrl + Shift macOS

Subtract block from existing selections.

Befehle für Blöcke

Die Befehle einen Block zu verschieben, invertieren (spiegeln), kopieren, drehen und löschen sind alle über das Pop-Up-Menü verfügbar. Zusätzlich kann die Ansicht auf den Bereich des Blocks vergrößert werden.

Der Block wird markiert, indem Sie die Maus bei gedrückter linker Maustaste bewegt wird. Der Befehl wird ausgeführt, wenn die Taste losgelassen wird.

Wenn Sie eine der beiden Tasten Umschalten oder Strg halten, oder beide Tasten zusammen, während der Block markiert wird, wird automatisch der Befehl Spiegeln, Drehen oder Löschen automatisch ausgeführt, wie in nachstehender Tabelle gezeigt:

Action
Effect

Left mouse button held down

Trace framework to move block

Shift + Left mouse button held down

Trace framework for invert block

Ctrl + Left mouse button held down

Trace framework for rotating block 90°

Shift + Ctrl + Left mouse button held down

Trace framework to delete the block

Center mouse button held down

Trace framework to zoom to block

Wenn Sie einen Block verschieben:

Verschieben Sie den Block zur neuen Position und klicken Sie die linke Maustaste um den Block zu platzieren.

To cancel the operation use the right mouse button and select Cancel Block from the menu or press the Esc key.

Alternativ, wenn keine Taste während des Markierens des Blocks gedrückt ist, benutzen Sie die rechte Maustaste, um das Pop-Up-Menü anzuzeigen und den gewünschten Befehl auszuwählen.

Für jeden Block-Befehl ermöglicht ein Auswahlfenster den Befehl auf bestimmte Elemente einzuschränken.

3.3. Auswahl der Rastergröße

Während des Anordnens von Elementen bewegt sich der Cursor über ein Raster. Das Raster kann ein- oder ausgeschaltet werden über das Symbol image:images/icons/grid.png in der linken Werkzeugleiste.

Jede der vordefinierten Rastergrößen oder ein benutzerdefiniertes Raster kann über das Pop-Up-Menü oder die Drop-Down-Auswahl in der oberen Werkzeugleiste ausgewählt werden. Die Größe des benutzerdefinierten Rasters wird über das Menü Abmessungen → Raster eingestellt.

3.4. Einstellen der Zoom-Größe

Die Zoom-Größe kann mit jeder der folgenden Methoden geändert werden:

Öffnen Sie das Pop-Up-Menü (über die rechte Maustaste) und wählen Sie dann den gewünschten Zoom.

Drücken Sie eine der folgenden Funktionstaste:

F1: Enlarge (zoom in)

F2: Reduce (zoom out)

F3: Redraw the display

F4: Center view at the current cursor position

Drehen Sie das Mausrad.

*

3.5. Cursorkoordinaten anzeigen

The cursor coordinates are displayed in inches or millimeters as selected using the In or mm icons on the left hand side toolbar.

Unabhängig von der gewählten Maßeinheit arbeitet Pcbnew immer mit einer Genauigkeit von 1/10.000 Zoll.

Die Statuszeile am unteren Fensterrand zeigt:

Die akutelle Zoom-Einstellung.

Die absolute Position des Cursors.

Die relative Position des Cursors. Beachten Sie, dass die relativen Koordinaten (x,y) überall auf (0,0) gesetzt werden können, wenn Sie die Leertaste drücken. Die Cursorposition wird dann relativ zu diesem neuen Punkt angezeigt.

Zusätzlich kann die relative Position des Cursors auch in Polarkoordinaten angezeigt werden (Entfernung und Winkel). Das können Sie über das Symbol in der linken Werkzeugleiste ein- und ausschalten.

3.6. Tastaturbefehle - Schnelltasten

Viele Befehle sind direkt über die Tastatur verfügbar. Die Auswahl kann entweder Groß- oder Kleinschreibung sein. Die meisten Schnelltasten werden in den Menüs angezeigt. Manche Schnelltasten, die nicht angezeigt werden, sind:

Entf: Löscht einen Footprint oder eine Leiterbahn. (Nur verfügbar wenn der Footprint-Modus oder der Leiterbahn-Modus aktiv ist.)

V: Wenn das Leiterbahn-Werkzeug aktiv ist, wird die aktive Lage umgeschaltet oder eine Durchkontaktierung gesetzt, wenn gerade eine Leiterbahn gezeichnet wird.

+ und -: Wählt die nächste oder vorherige Lage aus.

Ctrl+F1: Zeigt eine Liste aller Schnelltasten.

Leertaste: Setzt die relativen Koordinaten auf (0,0) zurück.

3.7. Aktionen mit Blöcken

Die Befehle einen Block zu verschieben, invertieren (spiegeln), kopieren, drehen und löschen sind alle über das Pop-Up-Menü verfügbar. Zusätzlich kann die Ansicht auf den Bereich des Blocks vergrößert werden.

Der Block wird markiert, indem Sie die Maus bei gedrückter linker Maustaste bewegt wird. Der Befehl wird ausgeführt, wenn die Taste losgelassen wird.

Wenn Sie eine der beiden Tasten Umschalten oder Strg halten, oder beide Tasten zusammen, während der Block markiert wird, wird automatisch der Befehl Spiegeln, Drehen oder Löschen automatisch ausgeführt, wie in nachstehender Tabelle gezeigt:

Aktion
Auswirkung

Linke Maustaste gedrückt gehalten

Blockmarkierung zum Verschieben setzen

Umschalten + linke Maustaste gedrückt halten

Block zum Kopieren markieren

Strg + linke Maustaste gedrückt halten

Block für Drehung um 90 Grad markieren

Umschalten + Strg + linke Maustaste gedrückt halten

Block zum Löschen markieren.

Mittlere Maustaste gedrückt halten

Ansicht verschieben

Für jeden Block-Befehl ermöglicht ein Auswahlfenster, den Befehl auf bestimmte Elemente einzuschränken.

Any of the commands above can be canceled via the same pop-up menu or by pressing the Escape key (Esc).

3.8. In Dialogen verwendete Einheiten

Die Maßeinheiten um Entfernungen anzuzeigen sind Zoll und Millimeter. Die gewünschte Maßeinheit kann über das zugehörige Symbol in der linken Werkzeugleiste ausgewählt werden . Sie können aber bei der Eingabe eines Wertes immer die gewünschte Einheit mit eingeben.

Akzeptierte Einheiten sind:

1 in

1 Zoll

1 "

1 Zoll

25 th

25 thou

25 mi

25 mils, identisch zu thou

6 mm

6 mm

Die Regeln sind:

Leerzeichen zwischen Zahl und Einheit sind erlaubt.

Nur die ersten zwei Buchstaben sind wichtig.

In Ländern, die ein anderes Dezimaltrennzeichen als den Punkt verwenden, kann der Punkt (.) ebenfalls verwendet werden. Daher sind 1,5 und 1.5 in Französisch oder Deutsch identisch.

3.9. Obere Menüzeile

Die obere Menüzeile gibt Zugriff auf die Dateien (laden und speichern), Konfigurationsoptionen, Drucken, Plotten und die Hilfedateien.

3.9.1. Das Datei Menü

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.

3.9.2. Bearbeiten Menü

Erlaubt globale Bearbeitungsaktionen:

3.9.3. Ansicht Menü

Erlaubt:

Anzeigen/Verbergen des Lagen-Managers (Dieser erlaubt die Farbauswahl für angezeigte Lagen und andere Elemente und ermöglicht das Anzeigen/Verbergen von Elementen.)

Hide/Show the Microwave toolbar.

Display Library browser and 3D viewer.

Zoom functions

Setting grid and units

Select Drawing mode and Contrast mode

Zoom-Funktionen und 3D-Leiterplattenanzeige.

3D Betrachter

Öffnet den 3D-Betrachter. Hier ist ein Beispiel:

3.9.4. Setup menu

Gibt Zugriff auf zwei Dialoge:

Einstellen der Lagen (Anzahl, aktivieren und Lagen-Namen)

Setting Design Rules (tracks and vias sizes, clearances).

Ein wichtiges Menü. Erlaubt das Einstellen von:

Größe von Texten und die Linienstärke von Zeichnungen.

Abmessungen und Eigenschaften von Lötflächen.

Einstellen der globalen Werte für die Lagen der Lötstoppmaske und Lötpastenmaske.

3.9.5. Einfügen Menü

Die gleiche Funktion wie die rechte Werkzeugleiste.

3.9.6. Route Menü

Die Funktionen für das Verlegen von Leiterbahnen.

3.9.7. Inspect menu

Erlaubt:

List nets

Measure function

Design Rules Checker

3.9.8. Werkzeuge Menü

Erlaubt:

Display load netlist dialog

Update PCB from schematic

Update Footprints from library

FreeRoute collaboration

Python scripting console

External plugins

3.9.9. Das Einstellungen Menü

Erlaubt:

Auswahl der Footprint-Bibliotheken.

Verwaltung der Allgemeinen Einstellungen (Maßeinheiten, usw.).

Verwaltung anderer Anzeigeoptionen.

Erstellen, Bearbeiten (und neu-einlesen) der Schnelltasten-Datei.

3.9.10. Hilfe Menü

Gibt Zugriff auf Benutzerhandbücher und auf die Versionsinformations-Menü (Über KiCad).

3.10. Verwendung der Symbole der oberen Werkzeugleiste

Diese Werkzeugleiste gibt Zugriff auf die prinzipiellen Funktionen von 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

3.10.1. Hilfswerkzeugleiste

Auswahl schon verwendeter Leiterbahnbreiten.

Auswahl schon verwendeter Größen von Durchkontaktierungen.

Automatische Leiterbahnbreite: wenn aktiviert beim Erstellen einer neuen Leiterbahn, wird beim Start auf einer bestehenden Leiterbahn, die Breite der alten Leiterbahn für die neue übernommen.

Auswahl der Rastergröße.

Auswahl der Zoomgröße.

3.11. Rechte Werkzeugleiste

Diese Werkzeugleiste gibt Zugriff auf die Bearbeitungswerkzeuge, um die in Pcbnew angezeigte Leiterplatte zu bearbeiten.

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.

Platzieren von Footprints, Leiterbahnen, Kupferflächen, Texten, usw.

Netze hervorheben.

Erstellen von Anmerkungen, grafischen Elementen, usw.

Elemente löschen.

3.12. Linke Werkzeugleiste

Die linke Werkzeugleiste stellt Anzeige- und Steueroptionen zur Verfügung, die die Benutzeroberfläche von Pcbnew beeinflussen.

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

3.13. Pop-Up Fenster und schnelle Bearbeitung

Ein Rechts-Klick mit der Maus öffnet ein Pop-Up-Fenster. Dessen Inhalt hängt vom Element ab, auf das der Cursor gerade zeigt.

Dieses gibt sofortigen Zugriff auf:

Changing the display (center display on cursor, zoom in or out or selecting the zoom).

Einstellen der Rastergröße.

Zusätzlich ermöglicht ein Rechtsklick auf ein Element das Bearbeiten der am häufigsten bearbeiteten Element-Parameter.

Der Screenshot unten zeigt, wie das Pup-Up-Fenster aussieht.

3.14. Verfügbare Modi

Es gibt 3 Modi wenn Sie das Pop-Up-Menü verwenden. In den Pop-Up-Menüs fügen diese Modi spezielle Befehle hinzu oder entfernen sie.

und deaktiviert

Normaler Modus

aktiviert

Footprint-Modus

aktiviert

Leiterbahn-Modus

3.14.1. Normaler Modus

Pop-Up-Menü ohne Auswahl:

Pop-Up Menü mit ausgewählter Leiterbahn:

Pop-Up-Menü mit ausgewähltem Footprint:

3.14.2. Footprint-Modus:

Ein paar Fälle im Footprint-Modus ( aktiviert)

Pop-Up-Menü ohne Auswahl:

Pop-Up Menü mit ausgewählter Leiterbahn:

Pop-Up-Menü mit ausgewähltem Footprint:

3.14.3. Leiterbahn-Modus

Ein paar Fälle im Leiterbahn-Modus ( aktiviert)

Pop-Up-Menü ohne Auswahl:

Pop-Up Menü mit ausgewählter Leiterbahn:

Pop-Up-Menü mit ausgewähltem Footprint:

Kapitel 4. Einbinden des Schaltplans

4.1. Einen Schaltplan mit einer Leiterplatte verbinden

Allgemein ausgedrückt, ist eine Schaltplanseite mit seiner Leiterplatte über die Netzlisten-Datei verknüpft, welche normalerweise vom Schaltplaneditor erzeugt wird, der zur Erstellung des Schaltplans genutzt wird. Pcbnew akzeptiert Netzlisten-Dateien die mit Eeschema oder mit Orcad PCB 2 erstellt wurden. In der Netzlisten-Datei, die aus dem Schaltplan erzeugt wird, fehlen normalerweise die Footprints die zu dem verschiedenen Bauteilen gehören. Deshalb ist ein Zwischenschritt notwendig. Während dieses Zwischenprozesses wird die Zuordnung von Bauteilen zu Footprints durchgeführt. In KiCad wird CvPcb benutzt, um diese Zuordnung durchzuführen und eine ‚*.cmp‘ zu erzeugen. CvPcb aktualisiert auch die Netzlisten-Datei mit dieser Information.

CvPcb kann auch eine "Zeugs Datei" ‚*.stf‘ ausgeben, welche in den Schaltplan rückwärts-annotiert werden kann als das F2 Feld für jedes Bauteile, was die Aufgabe der Neuzuweisung von Fooprints während jeder Überarbeitung des Schaltplans erspart. In Eeschema wird beim Kopieren eines Bauteils auch die Footprintzuweisung mit kopiert und die Bauteilreferenz auf nicht referenziert gesetzt, um später automatisch Bauteilreferenzen zuweisen zu können.

Pcbnew liest die überarbeitete Netzlisten-Datei ‚.net‘ und, wenn sie vorhanden ist, die ‚.cmp‘ Datei. Wenn ein Footprint direkt in Pcbnew geändert werden sollte, wird die ‚.cmp‘ Datei automatisch aktualisiert, sodass CvPcb nicht noch einmal ausgeführt werden muss.

Beachten Sie auch die Abbildung im Handbuch "Erste Schritte mit KiCad" im Abschnitt KiCad Arbeitsablauf. Dort wird der Arbeitsablauf in KiCad darstellt und wie Zwischendateien von den unterschiedlichen Softwaremodulen von KiCad erzeugt und benutzt werden.

4.2. Ablauf um eine Leiterplatte zu erstellen

Nachdem Sie ihren Schaltplan in Eeschema erstellt haben:

Generieren Sie die Netzliste mit Eeschema.

Assign each component in your netlist file to the corresponding land pattern (often called footprint) used on the printed circuit using Cvpcb.

Starten Sie Pcbnew und lesen Sie die geänderte Netzliste ein. Das liest auch die Datei mit der Footprint-Auswahl ein.

Pcbnew wird dann automatisch alle benötigten Footprints laden. Die Footprints können nun manuell oder automatisch auf der Leiterplatte platziert werden und die Leiterbahnen können verlegt werden.

4.3. Ablauf um eine Leiterplatte zu aktualisieren

Wenn der Schaltplan überarbeitet wird (nachdem eine Leiterplatte erzeugt wurde), müssen die folgenden Schritte ausgeführt werden:

Erzeugen Sie eine neue Netzlisten-Datei mit Eeschema.

Wenn die Änderungen im Schaltplan neue Bauteile beinhalten, müssen die zugehörigen Footprints mit Cvpcb zugewiesen werden.

Starten Sie Pcbnew und lesen Sie die geänderte Netzliste neu ein (das wird auch die Datei mit der Footprint-Zuordnung neu einlesen).

Pcbnew wird dann automatisch alle neuen Footprints laden, die neuen Verbindungen hinzufügen und überflüssige Verbindungen entfernen. Dieser Ablauf wird Vorwärts-Annotation genannt und ist ein gebräuchlicher Ablauf wenn Leiterplatten erstellt und aktualisiert werden.

4.4. Netzlisten-Datei einlesen — Footprints laden

4.4.1. Dialogfenster

Zugreifbar über das Symbol

4.4.2. Verfügbare Optionen

Footprint-Auswahl:

Bauteile und zugehörige Footprints auf Leiterplatte Verknüpfung: normale Verknüpfung ist die Referenz (normale Option Zeitstempel kann nach Neu-Referenzierung des Schaltplans genutzt werden, wenn die vorherige Referenzierung zerstört wurde (Spezial-Option)

Footprint austauschen:

Wenn ein Footprint in der Netzliste geändert wurde: alten Footprint behalten oder auf den neuen ändern.

Nichtverbundene Leiterbahnen:

Alle bestehenden Leiterbahnen behalten oder fehlerhafte Leiterbahnen entfernen.

Zusätzliche Footprints:

Entferne Footprints die auf der Leiterplatte sind aber nicht in der Netzliste. Footprints mit dem Attribut "fixiert" werden nicht entfernt.

Einzelne Padnetze:

Entferne Netze mit nur einer Lötfläche.

4.4.3. Neue Footprints laden

With the GAL backend when new footprints are found in the netlist file, they will be loaded, spread out, and be ready for you to place as a group where you would like.

With the legacy backend when new footprints are found in the netlist file, they will be automatically loaded and placed at coordinate (0,0).

Neue Footprints können verschoben und angeordnet werden, einer nach dem anderen. Ein besserer Weg ist es, sie automatisch zu bewegen ("entstapeln"):

Aktivieren Sie den Footprint-Modus ()

Bewegen Sie den Curser zu einem geeigneten Bereich (ohne Bauteile) und klicken Sie auf die rechte Maustaste:

‚Automatisch alle neuen Footprints platzieren‘, wenn es schon eine Leiterplatte mit bestehenden Footprints gibt.

‚Automatisch alle Footprints platzieren‘ beim ersten Mal (wenn die Leiterplatte erzeugt wird).

Die folgenden Screenshots zeigen die Ergebnisse.

Kapitel 5. Layers

5.1. Einführung

Pcbnew kann mit 50 unterschiedlichen Lagen arbeiten.

32 Kupferlagen (für das Verlegen von Leiterbahnen)

14 fixed-purpose technical layers:

12 paired layers (Front/Back): Adhesive, Solder Paste, Silk Screen, Solder Mask, 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

5.2. Arbeitslagen einstellen

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.

5.3. Layer Description

5.3.1. Copper Layers

Copper layers are the usual working layers used to place and re-arrange tracks. Layer numbers start from 0 (the first copper layer, on Front) and end at 31 (Back). Since components cannot be placed in inner layers (number 1 to 30), only layers number 0 and 31 are component layer.

The name of any copper layer is editable. Copper layers have a function attribute that is useful when using the external router Freerouter. Example of default layer names are F.Cu and In0 for layer number 0.

5.3.2. Paired Technical Layers

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.

The paired technical layers are:

Adhesive (F.Adhes and B.Adhes)

These are used in the application of adhesive to stick SMD components to the circuit board, generally before wave soldering.

Solder Paste (F.Paste and B.Paste)

Used to produce a mask to allow solder paste to be placed on the pads of surface mount components, generally before reflow soldering. Usually only surface mount pads occupy these layers.

Silk Screen (F.SilkS and B.SilkS)

They are the layers where the drawings of the components appear. That’s where you draw things like component polarity, first pin indicator, reference for mounting, …

Solder Mask (F.Mask and B.Mask)

These define the solder masks. All pads should appear on one of these layers (SMT) or both (for through hole) to prevent the varnish from covering the pads.

Courtyard (F.CrtYd and B.CrtYd)

Used to show how much space a component physically takes on the PCB.

Fabrication (F.Fab and B.Fab)

The fabrication layers are primarily used for documentation purposes to convey information to, for example, the PCB maker or the assembly house.

5.3.3. Independant Technical Layers

Edge.Cuts

This layer is reserved for the drawing of circuit board outline. Any element (graphic, texts…) placed on this layer appears on all the other layers. Use this layer only to draw board outlines.

Margin

Board’s edge setback outline (?).

5.3.4. Lagen für allgemeine Benutzung

These layers are for any use. They can be used for text such as instructions for assembly or wiring, or construction drawings, to be used to create a file for assembly or machining. Their names are:

Kommentare

E.C.O 1

E.C.O 2

Drawings

5.4. Auswahl der aktiven Lage

Die Auswahl der aktiven Arbeitslage kann auf mehrere Arten erfolgen:

Benutzen Sie die rechte Werkzeugleiste (Lagenmanager).

Benutzen Sie die obere Werkzeugleiste.

Mit dem Pop-Up-Menü (aktiviert über die rechte Maustaste).

Verwenden der + und - Tasten (funktioniert nur auf Kupferlagen).

Über Schnelltasten.

5.4.1. Auswahl über den Lagenmanager

5.4.2. Auswahl über die obere Werkzeugleiste

Das wählt direkt die Arbeitslage aus.

Schnelltasten, um die Arbeitslage auszuwählen, werden angezeigt.

5.4.3. Auswahl über das Pop-Up-Menü.

Das Pop-Up-Fenster öffnet ein Menüfenster welches die Auswahl für die Arbeitslage zur Verfügung stellt.

5.5. Auswahl der Lagen für Durchkontaktierungen

Wenn das Leiterbahnen und Durchkontaktierungen hinzufügen Symbol aktiviert ist, stellt das Pop-Up-Menü eine Option zur Verfügung, um das Lagenpaar zu ändern, das für Durchkontaktierungen verwendet wird:

Diese Auswahl öffnet ein Menüfenster, das die Auswahl für die Lagen für Durchkontaktierungen enthält.

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.

5.6. Den Modus mit hohem Kontrast benutzen

Dieser Modus wird eingeschaltet wenn in der linken Werkzeugleiste das Werkzeug aktiviert wird.

In diesem Modus wird die aktive Lage wie im normalen Modus angezeigt, aber alle anderen Lagen werden in einer grauen Farbe dargestellt.

Dafür gibt es zwei Anwendungsfälle:

5.6.1. Kupferlagen im Modus mit hohem Kontrast

Wenn eine Leiterplatte mehr als vier Lagen verwendet, erlaubt es diese Option, die aktive Kupferlage leichter zu erkennen.

Normalmodus (Rückseiten-Kupferlage aktiv):

Modus mit hohem Kontrast (Rückseiten-Kupferlage aktiv):

5.6.2. Technische Lagen

Der andere Fall ist, wenn es notwendig ist die Lötpasten- und Lötstopp-Lagen zu prüfen, welche üblicherweise nicht angezeigt werden.

Die Maken auf den Lötflächen werden angezeigt, wenn dieser Modus aktiv ist.

Normalmodus (obere Lötpastenlage aktiv):

Modus mit hohem Kontrast (obere Lötpastenlage aktiv):

Kapitel 6. Erstellen und Ändern einer Leiterplatte

6.1. Erstellen einer Leiterplatte

6.1.1. Die Leiterplattenkontur zeichnen

Überlicherweise ist es eine gute Idee, die Kontur der Leitplatte zuerst festzulegen. Die Kontur wird als eine Abfolge von Linien-Segmenten gezeichnet. Wählen Sie Edge.Cuts als die aktive Lage und benutzen Sie das Werkzeug Grafische Linie oder Polygon hinzufügen um die Kontur zu zeichnen. Klicken sie auf die Position für jede Ecke und machen Sie einen Doppelklick, um die Kontur zu beenden. Leiterplatten haben üblicherweise sehr genaue Abmessungen, daher kann es notwendig sein, die angezeigten Cursor-Koordinaten zu verwenden, während Sie die Kontur zeichnen. Beachten Sie, dass die relativen Koordinaten jederzeit mit der Leertaste auf Null gesetzt werden können. Die angezeigte Maßeinheit kann über Strg+U umgeschaltet werden. Relative Koordinaten ermöglichen es, sehr genaue Abmessungen zu zeichnen. Es ist auch möglich, eine kreis- oder bogenförmige Kontur zu zeichnen:

Wählen Sie das Grafischen Kreis hinzufügen- oder Grafischen Kreisbogen hinzufügen-Werkzeug.

Klicken Sie, um das Kreiszentrum festzulegen.

Legen Sie den Radius fest, indem Sie die Maus bewegen.

Beenden Sie die Eingabe, indem Sie noch einmal klicken.

Anmerkung

Die Breite der Kontur (empfohlene Breite = 150 in 1/10 mils) kann im Einstellungen-Menü oder über die Optionen angepasst werden. Wenn Grafiken im Umriss-Modus dargestellt werden, ist diese Änderung nicht sichtbar.

Die erstellte Kontur kann zum Beispiel so aussehen:

6.1.2. Eine DXF Zeichung als Leiterplattenkontur nutzen

Anstatt die Kontur der Leiterplatte direkt zu zeichnen, kann die Kontur alternativ auch aus einer DXF-Zeichnung importiert werden.

Diese Funktion erlaubt deutlich komplexere Leiterplattenkonturen, als sie mit den Zeichenmöglichkeiten von Pcbnew möglich wären.

So kann zum Beispiel eine mechanische CAD Software verwendet werden, um eine Leiterplattenkontur zu erstellen, die in ein bestimmtes Gehäuse passt.

Eine DXF-Zeichnung für den Import in KiCad vorbereiten

Die DXF Import-Fähigkeiten in KiCad unterstützen keine DXF-Funktionen wie POLYLINES und ELLIPSIS. DXF-Dateien, die diese Funktionen nutzen, müssen vor dem Import angepasst werden.

Ein Softwarepaket wie LibreCAD kann für diese Anpassung genutzt werden.

Im ersten Schritt müssen alle POLYLINES in ihre einfacheren Originalformen aufgeteilt werden("explode"). Führen Sie in LibreCAD folgende Schritte durch:

Öffnen Sie eine Kopie der DXF-Datei.

Wählen Sie die Leiterplattenkontur aus (ausgewählte Formen werden mit gestrichelten Linien dargestellt).

Im Bearbeiten (Modify) Menü wählen Sie Teilen (Explode) aus.

Drücken Sie die Eingabetaste (ENTER).

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.

Im LibreCAD exportieren Sie ins DXF R12-Dateiformat mit folgenden Schritten:

Wählen Sie im Datei Menü Speichern unter…

Im Speichern unter…-Dialog gibt es eine Auswahl Speichere als Typ: am unteren Rand des Dialogs. Wählen Sie die Option Drawing Exchange DXF R12.

Geben Sie optional einen Dateinamen im File name: Feld an.

Klicken Sie auf Save

Ihre DXF-Datei ist jetzt für den Import in KiCad vorbereitet.

Eine DXF-Datei in KiCad importieren

Die folgenden Schritte beschreiben den Import einer vorbereiteten DXF-Datei als Leiterplatten-Kontur in KiCad. Beachten Sie, dass sich das Import-Verhalten abhängig vom verwendeten Canvas etwas unterscheiden kann.

Im Standard-Canvas-Modus:

Wählen Sie im Datei-Menü Importieren und dann die Option DXF-Datei.

Im Dialog DXF-Datei importieren verwenden Sie Durchsuchen, um die vorbereitete DXF-Datei für den Import auszuwählen.

In der Option DXF Ursprung (0,0) setzen: wählen sie den Ursprung des DXF relativ zu den Leiterplattenkoordinaten (die KiCad-Leiterplatte hat den Ursprung (0,0) in der linken oberen Ecke). Für Benutzerdefinierte Position geben Sie die Koordinaten in die Felder für X Position und Y Position ein.

In der Lage-Auswahl wählen Sie die Lage der Leiterplatte für den Import. Für den Leiterplattenumriss wird Edge.Cuts benötigt.

Klicken Sie auf OK.

Im "OpenGL" oder "Cairo" Canvas-Modus:

Wählen Sie im Datei-Menü Importieren und dann die Option DXF-Datei.

Im Dialog DXF-Datei importieren verwenden Sie Durchsuchen, um die vorbereitete DXF-Datei für den Import auszuwählen.

Die Option DXF Ursprung (0,0) setzen: wird in diesem Modus ignoriert.

In der Lage-Auswahl wählen Sie die Lage der Leiterplatte für den Import. Für den Leiterplattenumriss wird Edge.Cuts benötigt.

Klicken Sie auf OK.

Die Kontur ist jetzt am Cursor angehängt und kann im Leiterplattenbereich bewegt werden.

Klicken Sie, um die Kontur auf die Leiterplatte "fallen" zu lassen.

Beispiel einer importierten DXF Kontur

Hier ist ein Beispiel eines DXF-Imports für eine Leiterplatte, die mehrere elliptische Segmente hatte, die durch eine Anzahl kurzer Liniensegmente ersetzt wurde:

6.1.3. Einlesen der aus dem Schaltplan generierten Netzliste

Klicken Sie auf das Symbol um den Netzlisten-Dialog anzuzeigen:

Wenn der Name oder Dateipfad der Netzliste im Fenstertitel nicht korrekt ist, benutzen Sie den Durchsuchen-Button um die gewünschte Netzliste anzugeben. Klicken Sie dann auf Aktuelle Netzliste einlesen. Jeder noch nicht geladene Footprint erscheint, einer über dem anderen platziert. Weiter unten sehen Sie, wie diese automatisch bewegt werden können.

Wenn noch kein Footprint platziert wurde, werden alle Footprints an der gleichen Stelle auf der Leiterplatte eingefügt, was es schwierig macht, sie zu erkennen. Es ist möglich, sie automatisch anzuordnen über den Befehl Global Spread and Place aus dem Kontextmenü (rechte Maustaste; nur verfügbar wenn Mode footprint in der Hauptwerkzeugleiste aktiviert wurde). Hier sehen Sie das Ergebnis einer solchen Anordnung:

Anmerkung

Wenn auf einer Leiterplatte mit CvPcb ein bestehender Footprint durch einen neuen ersetzt wird (zum Beispiel einen 1/8 W Widerstand durch einen 1/2 W ersetzen), muss in Pcbnew das bestehende Bauteil gelöscht werden bevor Pcbnew die neue Bauform laden wird. Daher ist es leichter, einen bestehenden Footprint über den Footprint-Dialog auszutauschen, den Sie durch einen Rechtsklick auf das betreffende Bauteil aufrufen.

6.2. Eine Leiterplatte korrigieren

Sehr häufig ist es notwendig eine Leiterplatte zu korrigieren, um eine entsprechende Änderung im Schaltplan umzusetzen.

6.2.1. Dazu müssen folgende Schritte ausgeführt werden:

Erstellen Sie eine neue Netzliste aus dem bearbeiteten Schaltplan.

Wenn neue Bauteile hinzugefügt wurden, verbinden Sie diese mit einem Footprint über CvPcb.

Lesen Sie die neue Netzliste in Pcbnew ein.

6.2.2. Löschen Sie falsche Leiterbahnen.

Pcbnew kann automatisch Leiterbahnen löschen, die aufgrund einer Änderung inkorrekt geworden sind. Um das zu tun, aktivieren Sie die Option Entfernen im Kasten Nicht verbundene Leiterbahnen:

Häufig geht es jedoch schneller, solche Leiterbahnen von Hand zu ändern; die DRC Funktion hilft dabei, diese zu finden.

6.2.3. Bauteile löschen

Pcbnew kann optional auch Footprints löschen, die zu gelöschten Bauteilen gehören.

Das ist notwendig, weil es oft auch Footprints gibt (Löcher für Befestigungsschrauben zum Beispiel), die auf der Leiterplatte hinzugefügt werden, ohne dass sie im Schaltplan erscheinen.

Wenn die Option "Zusätzliche Footprints" aktiviert ist, werden Footprints gelöscht, die zu einem Bauteil gehören, das nicht in der Netzliste gefunden wird, außer im Footprint ist die Option "Lock Footprint" gesetzt. Für "mechanische" Footprints ist es eine gute Idee, diese Option zu aktivieren:

6.2.4. Geänderte Footprints

Wenn ein Footprint in der Netzliste geändert wird (über CvPcb), der Footprint aber schon platziert wurde, wird der Footprint von Pcbnew nicht geändert, wenn nicht die zugehörige Option in Exchange Footprint aktiviert ist:

Um den Footprint zu ändern (zum Beispiel bei einem Widerstand die Bauform tauschen), kann man den Footprint direkt bearbeiten.

6.2.5. Erweiterte Möglichkeiten - Auswahl über Zeitstempel

Manchmal wird die Referenzierung des Schaltplans geändert, ohne dass sich irgendein Material im Schaltplan ändert (es sind als nur die Referenzen betroffen, wie R5, U4…). Die Leiterplatte bleibt daher unverändert (außer unter Umständen die Leiterplattenbedruckung). Jedoch sind intern Bauteile und Footprints über ihre Referenz repräsentiert. In dieser Situation kann die Option Zeitstempel im Netzlisten-Dialog ausgewählt werden, bevor die Netzliste neu eingelesen wird:

Mit dieser Option identifiziert Pcbnew Footprints nicht mehr über ihre Referenz, sondern über ihren Zeitstempel. Der Zeitstempel wird automatisch von Eeschema generiert (es ist die Zeit und das Datum, wann das Bauteil im Schaltplan hinzugefügt wurde).

Warnung

Wenn Sie diese Option verwenden sollten Sie sehr vorsichtig sein (speichern Sie die Datei vorher!). Diese Technik ist kompliziert im Falle von Bauteilen, die aus mehreren Teilen bestehen (z.B. ein 7400 hat 4 Teile in einem Gehäuse). In diesem Fall ist der Zeitstempel nicht einzigartig, der 7400 wird bis zu 4 haben, für jeden Teil einen. Nichtsdestotrotz löst die Zeitstempel-Option üblicherweise Probleme bei der Neu-Referenzierung.

6.3. Direkter Austausch von schon platzierten Footprints

Einen Footprint (oder einige identische Footprints) mit einem anderen Footprint auszutauschen ist sehr nützlich und sehr einfach:

Klicken Sie auf einen Footprint, um den Bearbeiten Dialog zu öffnen.

Aktivieren Sie Footprints austauschen.

Optionen um Footprints auszutauschen:

Wählen Sie einen neuen Footprint indem Sie:

Tausche Footprint von xx für den aktuellen Footprint

Tausche Footprints yy für alle Footprints wie den aktuellen Footprint.

Tausche Footprints mit dem selben Wert für alle Footprints wie den aktuellen Footprint, eingeschränkt auf Bauteile mit dem selben Wert.

Alle Footprints aktualisieren um alle Footprints auf der Leiterplatte neu zu laden.

Kapitel 7. Platzieren von Footprints

7.1. Unterstützte Platzierung

Wenn Sie einen Footprint bewegen, können die Netzlinien (die Netz-Verbindungen) angezeigt werden, um die Platzierung zu unterstützen. Um das einzuschalten, klicken Sie auf das Symbol in der linken Werkzeugleiste.

7.2. Manuelle Platzierung

Wählen Sie den Footprint mit der rechten Maustaste und wählen Sie danach den Verschieben Befehl aus dem Menü. Bewegen Sie den Footprint an die erforderliche Position und platzieren Sie ihn mit der linken Maustaste. Wenn nötig, kann der ausgewählte Footprint auch gedreht, gespiegelt oder bearbeitet werden. Wählen Sie Abbrechen aus dem Menü (oder drücken Sie die Escape-Taste), um abzubrechen.

Hier sehen Sie die Darstellung der Netzlinien eines Footprints während des Bewegens:

Die Schaltung könnte so aussehen, sobald alle Footprints platziert sind:

7.3. Automatisches Verteilen von Footprints

Grundsätzlich können Footprints nur bewegt werden, wenn sie nicht "fixiert" sind. Diese Eigenschaft kann über das Pop-Up Menü ein- und abgeschaltet werden (rechter Mausklick über dem Footprint), wenn der Footprint Modus aktiv ist oder über das "Footprint bearbeiten" Menü.

Wie im letzten Kapitel beschrieben, werden neue Footprints, die während des Einlesens der Netzliste geladen werden, alle auf dem gleichen Platz auf der Leiterplatte übereinander platziert. Pcbnew erlaubt eine automatische Verteilung der Footprints, um das manuelle Auswählen und Platzieren zu erleichtern.

Aktivieren Sie die Option "Footprint Modus" (Symbol: ) in der oberen Werkzeugleiste.

So sieht das Pop-Up Fenster nach einem Rechtsklick aus:

Wenn ein Footprint unter dem Cursor ist:

Wenn nichts unter dem Cursor ist:

In beiden Fällen sind die folgenden Befehle verfügbar:

Alle Footprints verteilen erlaubt das automatische Verteilen aller nicht "fixierten" Footprints. Das wird üblicherweise dann verwendet, wenn die Netzliste das erste Mal eingelesen wurde.

Alle Footprints verteilen, die noch nicht auf der Leiterplatte sind erlaubt das automatische Verteilen der Footprints, die noch nicht innerhalb des Leiterplattenumrisses platziert wurden. Dieser Befehl erfordert, dass bereits ein Umriss der Leiterplatte gezeichnet wurde, damit erkannt wird, welche Footprints automatisch verteilt werden können.

7.4. Automatisches Platzieren von Footprints

7.4.1. Eigenschaften des automatischen Platzierers

Die Funktion der automatischen Platzierung erlaubt die Platzierung von Footprints auf beide Seiten der Leiterplatte. (Jedoch geschieht der Wechsel auf die andere Seite nicht automatisch.)

Er sucht ebenfalls die beste Ausrichtung des Footprints (0, 90, −90, 180 Grad). Die Platzierung erfolgt gemäß eines Optimierungs-Algorithmus', der versucht, die Länge der Netzlinie zu minimieren und Platz zwischen größeren Footprints mit vielen Anschlüssen zu lassen. Die Reihenfolge der Platzierung ist optimiert indem zuerst diese größeren Footprints platziert werden.

7.4.2. Vorbereitung

Pcbnew kann also Footprints automatisch platzieren. Es ist aber notwendig diese Platzierung zu steuern, denn keine Software kann erraten, was der Benutzer erreichen möchte.

Bevor eine automatische Platzierung ausgeführt werden kann, müssen Sie:

Den Umriss der Leiterplatte erstellen. Dieser kann komplex sein, muss aber geschlossen sein, wenn die Form nicht rechteckig ist.

Manuell die Bauteile platzieren, deren Position vorgegeben ist (Verbinder, Befestigungslöcher, usw.).

Genauso müssen bestimmte SMD Footprints und kritische Bauteile (mit großem Footprint zum Beispiel) auf einer bestimmten Seite oder Position der Leiterplatte sein, und das muss manuell erledigt werden.

Wenn Sie die manuelle Platzierung abgeschlossen haben, müssen diese Footprints "fixiert" werden, um zu verhindern, dass sie bewegt werden. Mit dem aktivierte, "Footprint Modus" Symbol machen Sie einen Rechtsklick auf den Footprint und wählen "Footprint fixieren" aus dem Pop-Up-Menü. Sie können das aber auch über das Bearbeiten/Footprint Pop-Up-Menü durchführen.

Dann kann die automatische Platzierung gestartet werden. Wenn das "Footprint Modus" Symbol aktiviert ist, machen Sie einen Rechtsklick, wählen ‚Globales Verteilen und Platzieren‘ und dann Alle Footprints automatisch platzieren.

Während der automatischen Platzierung kann Pcbnew, wenn notwendig, die Ausrichtung der Footprints optimieren. Jedoch wird die Drehung nur dann ausgeführt, wenn das für den Footprint freigegeben wurde (siehe Footprint Bearbeiten Optionen).

Üblicherweise sind Widerstände und ungepolte Kondensatoren für 180 Grad Drehung freigegeben. Manche Footprints (kleine Transistoren zum Beispiel) können für +/− 90 und 180 Grad Drehung freigegeben werden.

Für jeden Footprint gibt ein Schieberegler die 90 Grad Drehung und ein zweiter Regler die 180 Grad Drehung frei. Eine Einstellung von 0 verhindert die Drehung, eine Einstellung von 10 erlaubt sie. Ein Zwischenwert zeigt eine Voreinstellung für/gegen Drehung an.

Die Freigabe der Drehung kann gemacht werden, wenn Sie den Footprint bearbeiten sobald er auf der Leiterplatte platziert ist. Jedoch ist es zu bevorzugen, die gewünschten Einstellungen im Footprint in der Bibliothek zu hinterlegen, denn diese Einstellung wird dann immer übernommen, wenn der Footprint verwendet wird.

7.4.3. Interaktive automatische Platzierung

Es kann nötig sein, die automatische Platzierung zu stoppen (drücken Sie die Esc Taste) und einen Footprint manuell neu zu positionieren. Wenn Sie den Befehl ‚Nächste Footprints automatisch platzieren‘ wählen, wird die Platzierung an dem Punkt fortgesetzt, wo sie gestoppt wurde.

Der Befehl ‚Neue Footprints automatisch platzieren‘ erlaubt die automatische Platzierung von Footprints, die noch nicht innerhalb des Leiterplattenumrisses platziert wurden. Der Befehl wird keine Footprints bewegen die innerhalb des Leiterplattenumrisses sind, selbst wenn sie nicht "fixiert" sind.

Der Befehl ‚Footprint automatisch platzieren‘ ermöglicht es, den Footprint auf den die Maus zeigt, neu zu platzieren, selbst wenn die "fixiert" Eigenschaft gesetzt ist.

7.4.4. Zusätzlicher Hinweis

Pcbnew bestimmt automatisch den möglichen Bereich der Platzierung von Footprints indem es die Form der Leiterplatte berücksichtigt, welche nicht notwendigerweise rechteckig sein muss (sie kann rund sein, oder Ausschnitte haben, usw.).

Wenn die Leiterplatte nicht rechteckig ist, muss der Umriss geschlossen sein, sodass Pcbnew bestimmten kann, was ist innerhalb und was ist außerhalb des Umrisses. In der gleichen Weise müssen mögliche interne Ausschnitte geschlossen sein.

Pcbnew berechnet den möglichen Bereich für die Platzierung über den Umriss der Leiterplatte und bewegt dann jeden Footprint nacheinander über diesen Bereich, um die optimale Position dafür zu bestimmen.

Kapitel 8. Routing-Parameter festlegen

8.1. Aktuelle Einstellungen

8.1.1. Den Hauptdialog öffnen

Die wichtigsten Parameter sind über das folgende Drop-Down Menü erreichbar:

und werden im Design-Regeln-Dialog festgelegt.

8.1.2. Aktuelle Einstellungen

Die aktuellen Einstellungen sind in der oberen Werkzeugleiste sichtbar.

8.2. Allgemeine Einstellungen

Das Menü für die allgemeinen Einstellungen ist im Menü unter Einstellungen → Allgemein erreichbar.

Der Dialog sieht wie folgt aus:

Die notewendigen Parameter, um Leiterbahnen zu erstellen, sind:

Leiterbahnen auf 45 Grad beschränken: Die Ausrichtung für Leiterbahnsegmente sind 0, 45 oder 90 Grad.

Doppelt segmentierte Leiterbahnen: Wenn Leiterbahnen erstellt werden, werden 2 Segmente angezeigt.

Nicht verbundene Leiterbahn löschen: Wenn Sie eine Leiterbahn erstellen, wird die alte automatisch gelöscht, wenn sie (von Pcbnew) als überflüssig betrachtet wird.

Magnetische Pads: Der grafische Cursor zentriert sich auf die Lötfläche, sobald er über eine Lötfläche bewegt wird.

Magnetische Leiterbahnen: Der grafische Cursor wird zur Achse der Leiterbahn.

8.3. Netzklassen

Pcbnew erlaubt es Ihnen, unterschiedliche Routing-Parameter für jedes Netz festzulegen. Die Parameter werden über eine Gruppe von Netzen festgelegt.

Eine Gruppe von Netzen wird Netzklasse genannt.

Es gibt immer eine Netzklasse "default".

Users can add other Netclasses.

Eine Netzklasse legt fest:

Die Breite von Leiterbahnen, Durchmesser von Durchkontaktierungen und Bohrungen.

Der Abstand zwischen Lötflächen und Leiterbahnen (oder Durchkontaktierungen).

Wenn Sie Leiterbahnen verlegen, wählt Pcbnew automatisch die Netzklasse des Netzes der zu erstellenden oder zu ändernden Leiterbahn und damit auch die Routing-Parameter.

8.3.1. Routing-Parameter festlegen

Die Auswahl wird über das Menü: ‚Design Regeln → Design Regeln‘ erstellt.

8.3.2. Netzklasseneditor

Der Netzklasseneditor erlaubt es Ihnen:

Netzklassen hinzuzufügen oder zu löschen.

Routing-Parameter festzulegen: Abstand, Leiterbahnbreite, Größe von Durchkontaktierungen.

Netzgruppen in Netzklassen.

8.3.3. Globale Designregeln

Die globalen Designregeln sind:

Aktivieren/Deaktivieren von blinden/vergrabenen Durchkontaktierungen.

Aktivieren/Deaktivieren von Micro-Durchkontaktierungen

Kleinster erlaubter Durchmesser für Leiterbahnen und Durchkontaktierungen.

Ein DRC Fehler wird erzeugt wenn ein Wert kleiner als der kleinstmögliche festgelegte Wert erkannt wird. Der zweite Dialogbereich ist:

This dialog also allows to enter a "stock" of tracks and via sizes.

Wenn Sie Leiterbahnen zeichnen, können Sie anstelle der Standardwerte der Netzklasse einen dieser Werte auswählen, um Leiterbahnen und Durchkontaktierungen zu erstellen.

Das ist hilfreich in kritischen Fällen, wenn ein kleines Segment einer Leiterbahn eine spezielle Größe haben muss.

8.3.4. Parameter für Durchkontaktierungen

Pcbnew verwendet 3 Typen von Durchkontaktierungen:

Durchgehende Durchkontaktierungen (übliche Durchkontaktierung).

Blinde oder vergrabene Durchkontaktierungen.

Micro-Durchkontaktierungen, sind wie vergrabene Durchkontaktierungen aber eingeschränkt auf eine äußere Lage und die ihr nächste Lage. Sie sind vorgesehen, um BGA-Anschlüsse mit der nächsten inneren Lage zu verbinden. Ihr Durchmesser ist üblicherweise sehr klein und mit einem Laser gebohrt.

Standardmäßig haben alle Durchkontaktierungen den gleichen Bohrungsdurchmesser.

Dieser Dialog legt die kleinsten zulässigen Werte der Parameter für Durchkontaktierungen fest. Auf einer Leiterplatte erzeugen dann Durchkontaktierungen mit einem kleineren Durchmesser einen DRC-Fehler.

8.3.5. Leiterbahnparameter

Hier legen Sie die kleinste zulässige Leiterbahnbreite fest. Auf einer Leiterplatte erzeugen dann Leiterbahnen mit einer kleineren Breite einen DRC-Fehler

8.3.6. Spezifische Größen

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.

8.4. Beispiele und typische Abmessungen

8.4.1. Leiterbahnbreite

Verwenden Sie den größtmöglichen Wert und halten Sie sich an die hier angegebenen Minimalwerte.

Einheit
Klasse 1
Klasse 2
Klasse 3
Klasse 4
Klasse 5

mm

0,8

0,5

0,4

0,25

0,15

mils

31

20

16

10

6

8.4.2. Isolation (Abstand)

Einheit
Klasse 1
Klasse 2
Klasse 3
Klasse 4
Klasse 5

mm

0,7

0,5

0,35

0,23

0,15

mils

27

20

14

9

6

Üblicherweise ist der kleinste Abstand der kleinsten Leiterbahnbreite sehr ähnlich.

8.5. Beispiele

8.5.1. Rustikal

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).

8.5.2. Standard

Clearance: 0.35 mm (0.0138 inches).

Leiterbahnbreite: 0,5 mm (0,0127 Zoll).

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).

8.6. Manuelles Verlegen

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.

8.7. Hilfe beim Erstellen von Leiterbahnen

Pcbnew kann alle Luftlinien anzeigen, wenn das Symbol aktiviert ist.

Das Symbol erlaubt es Ihnen ein Netz hervorzuheben (klicken Sie auf eine Lötfläche oder eine bestehende Leiterbahn, um das zugehörige Netz hervorzuheben).

Der DRC prüft Leiterbahnen in Echtzeit während Sie sie erstellen. Sie können keine Leiterbahn erstellen, die den DRC Regeln nicht entspricht. Es ist möglich den DRC zu deaktivieren indem Sie auf das Symbol klicken. Das wird aber nicht empfohlen, benutzen Sie das nur in speziellen Fällen.

8.7.1. Erstellen von Leiterbahnen

Sie können eine Leiterbahn erstellen indem Sie auf das Symbol klicken. Eine neue Leiterbahn muss auf einer Lötfläche oder einer anderen Leiterbahn beginnen, da Pcbnew das Netz für die neue Leiterbahn kennen muss (um die DRC Regeln beachten zu können).

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.

8.7.2. Verschieben und Ziehen von Leiterbahnen

Wenn das Symbol aktiviert ist, kann die Leiterbahn unter dem Cursor mit der Schnelltaste ‚M‘ bewegt werden. Wenn Sie die Leiterbahn ziehen wollen, können Sie die Schnelltaste ‚G‘ verwenden.

8.7.3. Einfügen von Durchkontaktierungen

Eine Durchkontaktierung kann nur eingefügt werden, wenn eine Leiterbahn gerade erstellt wird:

Über das Pop-Up-Menü.

Über die Schnelltaste ‚V‘.

Über das Umschalten zu einer anderen Kupferlage über die entsprechende Schnelltaste.

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.

8.8. Auswahl der Leiterbahnbreite und Größe der Durchkontaktierung

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.

Sie können die horizontale Werkzeugleiste verwenden, um eine Größe auszuwählen.

Wenn das Symbol aktiviert ist, kann die aktuelle Leiterbahnbreite aus dem Pop-Up-Menü ausgewählt werden (auch auswählbar, wenn eine Leiterbahn erstellt wird).

Sie können den Standardwert der Netzklasse verwenden oder einen Wert angeben.

8.8.1. Verwendung der horizontalen Werkzeugleiste

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.

8.8.2. Das Pop-Up-Menü verwenden

Sie können eine neue Größe für das Zeichnen wählen oder auf ein zuvor erstelltes Leiterbahnsegment oder eine Durchkontaktierung wechseln:

Wenn Sie viele Durchkontaktierungen oder Leiterbahnbreiten ändern wollen, ist der beste Weg eine spezielle Netzklasse für die Netze zu verwenden, die geändert werden sollen (siehe auch globale Änderungen).

8.9. Bearbeiten und Ändern von Leiterbahnen

8.9.1. Eine Leiterbahn ändern

Häufig ist es nötig eine Leiterbahn neu zu zeichnen.

Neue Leiterbahn (in Bearbeitung):

Wenn fertiggestellt:

Pcbnew wird automatisch die alte Leiterbahn entfernen, wenn sie überflüssig ist.

8.9.2. Globale Änderungen

Der globale Editor für Leiterbahnbreiten und Durchkontaktierungsgrößen ist mit einem Rechtsklick auf eine Leiterbahn über das Pop-Up-Menü erreichbar:

Der Editor erlaubt globale Änderungen an Leiterbahnen und/oder Durchkontaktierungen für:

Das aktuelle Netz.

Die gesamte Leiterplatte.

Kapitel 9. Interaktiver Router

Der interaktiver Router erlaubt es Ihnen schnell und effizient ihre Leiterplatte zu entflechten, indem er Elemente auf der Leiterplatte verschiebt oder um sie herumläuft, die mit der Leiterbahn kollidieren, die Sie gerade zeichnen.

Die folgenden Modi werden unterstützt:

Kollisionen hervorheben hebt alle kollidierenden Objekte mit einer netten, leuchtenden grünen Farbe hervor und źeigt verletzte Sperrflächen.

Schieben versucht alle Elemente, die mit der aktuell gezeichneten Leiterbahn kollidieren, zu verschieben.

Umlaufen versucht Hindernisse zu umgehen, indem sie umschmiegt/umlaufen werden.

9.1. Einstellen

Bevor Sie den interaktiven Router verwenden, stellen Sie bitte diese beiden Sachen ein:

Abstandseinstellungen Um die Abstände einzustellen, öffnen Sie das Design Regeln Fenster und stellen Sie sicher, dass zumindest der Standard-Abstandswert sinnvoll erscheint.

Aktivieren Sie den OpenGL Modus indem Sie im Menü Ansicht→OpenGL Canvas einschalten auswählen oder F11 drücken.

9.2. Leiterbahnen verlegen

Um das Router Werkzeug zu aktivieren, klicken Sie auf das Interaktiver Router Symbol Interactive Router Button oder die X Taste. Der Cursor ändert sich ein ein Kreuz und der Werkzeugname wird in der Statuszeile angezeigt.

Um eine Leiterbahn zu beginnen, klicken Sie auf irgendein Element (Lötfläche, Leiterbahn oder Durchkontaktierung) oder drücken Sie die X Taste noch einmal, während sich die Maus über dem Element befindet. Die neue Leiterbahn wird das Netz des Startelements verwenden. Klicken oder drücken Sie auf X über einer freien Fläche auf der Leiterplatte, um eine Leiterbahn ohne Netzzuweisung zu zeichnen.

Bewegen Sie die Maus, um die Form der Leiterbahn festzulegen. Der Router wird versuchen der Mausspur zu folgen, unbewegliche Hindernisse (wie Lötflächen) umfahren und kollidierende Leiterbahnen und Durchkontaktierungen verschieben, abhängig vom gewählten Modus. Wegziehen des Mauscursor wird verschobene Elemente wieder an ihre alte Position zurückspringen lassen.

Klicken Sie auf eine Lötfläche/Leiterbahn/Durchkontaktierung des gleichen Netzes, um die Leiterbahn abzuschließen. Klicken Sie auf eine freie Fläche um die bisher verlegte Leiterbahn zu fixieren und weiterzuzeichnen.

Um das Verlegen abzubrechen und alle Änderungen rückgängig zu machen (verschobene Elemente, usw.), drücken Sie einfach Esc.

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).

Wenn Sie / drücken oder Leiterbahnstellung ändern aus dem Kontextmenü wählen, schalten Sie die Anfangsrichtung der Leiterbahn zwischen gerade oder diagonal um.

Anmerkung

Standardmäßig fängt der Router die Zentren/Achsen von Elementen. Das kann deaktivert werden, wenn Sie die Umschalt-Taste während des Zeichnens oder der Auswahl von Elementen drücken.

9.3. Größe von Leiterbahnen und Durchkontaktierungen festlegen

Es gibt mehrere Möglichkeiten um die Leiterbahnbreite oder die Größe von Durchkontaktierungen vorher festzulegen oder während des Zeichnens zu ändern:

Verwenden von Standard-KiCad Schnelltasten.

Drücken Sie W oder wählen Sie Benutzerdefinierte Größe aus dem Kontextmenü, um eine eigene Leiterbahnbreite oder Durchkontaktierungsgröße festzulegen.

Wählen Sie eine vordefinierte Breite aus dem Leiterbahnbreite auswählen Untermenü im Kontextmenü.

Wählen Sie Breite der verwendeten Leiterbahn verwenden im Leiterbahnbreite auswählen Menü um die Breite des Anfangselements auszuwählen (oder der Leiterbahnen, die schon damit verbunden sind).

9.4. Ziehen

Der Router kann Leiterbahnsegmente, Ecken und Durchkontaktierungen ziehen. Um ein Element zu ziehen, klicken Sie mit gedrückter Strg-Taste darauf oder wählen Sie Leiterbahn ziehen aus dem Kontextmenü oder drücken Sie D während der Cursor über dem Element steht. Beenden Sie das Ziehen mit einem Mausklick oder brechen Sie es ab, indem Sie Esc drücken.

9.5. Optionen

Das Verhalten des Routers kann eingestellt werden, indem Sie E drücken oder aus dem Kontextmenü Router Einstellungen wählen, während Sie im Leiterbahn-Modus sind. Das öffnet ein Fenster wie das unten:

Die Optionen sind:

Farbmodus - wählen Sie wie der Router DRC Fehler behandelt (verschieben, umlaufen, usw.)

Durchkontaktierung verschieben - wenn deaktiviert, werden Durchkontaktierungen als unbewegliche Objekte behandelt und umlaufen und nicht verschoben.

Springe über Hindernisse - wenn aktiviert, versucht der Router kollidierende Leiterbahnen hinter massive Hindernisse (z.B. Lötflächen) zu verschieben anstelle die Kollision zurück zu "reflecktieren".

Entferne überflüssige Leiterbahnen - entfernt Schleifen während des Zeichnens (z.B. wenn die neue Leiterbahn die gleiche Verbindung wie eine bestehende sicher stellt, wird die alte Leiterbahn entfernt). Das Entfernen der Schleifen funktioniert nur lokal (nur zwischen dem Start und Ende der aktuell gezeichneten Leiterbahn).

Automatisch Anpassen - wenn aktiviert, versucht der Router Lötflächen und Durchkontaktierungen sauber anzuschließen, spitze Winkel und gezackte Anschlussleitungen zu vermeiden.

Glatt gezogene Segmente - wenn aktiviert, versucht der Router mehrere gezackte Segmente in ein einziges gerades umzuwandeln (Ziehmodus).

Erlaube DRC Fehler (nur im Kollisionen hervorheben Modus) - erlaub eine Leiterbahn zu verlegen auch wenn sie die DRC Regeln verletzt.

Optimierungsaufwand - legt fest, wieviel Zeit der Router darauf verwenden soll, die verlegten/verschobenen Leiterbahnen zu optimieren. Mehr Aufwand bedeutet saubereres Routing (aber langsamer), weniger Aufwand bedeutet schnelleres Routing aber manchmal gezackte Leiterbahnen.

Kapitel 10. Kupferflächen erzeugen

Kupferflächen werden über einen Umriss (geschlossenes Polygon) definiert und können Löcher (geschlossene Polygone innerhalb des Umrisses) enthalten. Eine Fläche kann auf einer Kupferlage oder alternative auf einer technischen Lage gezeichnet werden.

10.1. Flächen auf Kupferlagen erzeugen

Lötflächen- und Leiterbahnverbindungen zu gefüllten Kupferflächen werden von der DRC-Funktion geprüft. Eine Fläche muss gefüllt sein (nicht nur erzeugt) um Lötflächen zu verbinden. Pcbnew verwendet derzeit Leiterbahnsegmente oder Polygone um Kupferflächen zu füllen.

Jeder dieser Möglichkeiten hat ihre Vor- und Nachteile, der Hauptnachteil ist die Zeit die benötigt wird den Bildschirminhalt auf langsameren Rechnern neu zu zeichnen. Das Endergebnis ist jedoch das gleiche.

Aufgrund der Berechnungszeit wird die Flächenfüllung nicht nach jeder Änderung neu aufgebaut sondern nur:

Wenn ein Flächenfüllbefehl ausgeführt wird.

Wenn eine DRC Prüfung durchgeführt wird.

Kupferflächen müssen gefüllt oder neu gefüllt werden wenn Leiterbahnen geändert oder Lötflächen erstellt werden. Kupferflächen (üblicherweise Masse- und Versorgungsflächen) sind üblicherweise mit einem Netz verbunden.

Um eine Kupferfläche zu erzeugen, müssen Sie:

Die Parameter auswählen (Netzname, Lage…). Das Einschalten der Lage das Netz hervorzuheben ist nicht zwingend erforderlich aber erprobte Praxis.

Die Flächengrenze erzeugen (ansonsten wird die gesamte Leiterplatte gefüllt).

Die Fläche füllen.

Pcbnew versucht alle Flächen in einem Stück zu füllen und üblicherweise werden keine nicht-verbundenen Kupferflächen verbleiben. Es kann vorkommen, dass einige Flächen nicht gefüllt werden. Flächen, die keinem Netz zugewiesen sind, werden nicht bereinigt und können isolierte Bereiche aufweisen.

10.2. Eine Fläche erzeugen

10.2.1. Die Begrenzung der Fläche erzeugen

Verwenden Sie das Werkzeug . Die aktive Lage muss eine Kupferlage sein. Wenn Sie klicken, um den Flächenumriss zu beginnen, wird der folgende Dialog geöffnet.

Sie können alle Parameter für die Fläche angeben:

Netz

Lage

Fülloptionen

Flächenoptionen

Priorität

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.

Anmerkung

Die DRC Steuerung ist aktiv wenn Sie Flächenumrisse zeichnen.

Eine Ecke, die einen DRC-Fehler erzeugt, wird von Pcbnew nicht akzeptiert.

Im folgenden Bild können Sie ein Beispiel einer Flächenbegrenzung sehen (Polygon mit dünner gestrichelter Linie):

10.2.2. Priorität

Manchmal muss eine kleine Fläche innerhalb einer großen Fläche erzeugt werden.

Das funktioniert, wenn die kleinere Fläche eine höhere Priorität als die größere Fläche hat.

Priorität einstellen:

Hier ist ein Beispiel:

Nach dem Füllen:

10.2.3. Die Fläche füllen

Wenn Pcbnew eine Fläche füllt, entfernt es alle nicht verbundenen Kupferinseln. Um auf den Befehl zum Füllen der Fläche zuzugreifen, machen Sie einen Rechtsklick auf die Randfläche.

Aktivieren Sie den Befehl Alle Flächen ausfüllen. Unten ist das Füllergebnis für den Startpunkt innerhalb eines Polygons:

Das Polygon ist die Grenze der Füllfläche. Sie können einen nicht gefüllten Bereich innerhalb der Fläche sehen, weil dieser Bereich nicht erreichbar ist:

Eine Leiterbahn stellt eine Grenze dar, und

Es gibt keinen Startpunkt um diesen Bereich zu füllen.

Anmerkung

Sie können mehrere Polygone nutzen, um freigestellte Bereiche zu erstellen. Hier sehen Sie ein Beispiel:

10.3. Fülloptionen

Wenn Sie eine Fläche füllen, müssen Sie auswählen:

Die Art der Füllung.

Die Abstände und minimale Kupferstärke.

Wie die Lötflächen innerhalb der Fläche gezeichnet (oder mit der Fläche verbunden) werden.

Parameter für die thermische Ableitung.

10.3.1. Füllmodus

Flächen können mit Polygonen oder Segmenten gefüllt werden. Das Ergebnis ist das gleiche. Wenn Sie ein Problem mit dem Polygon-Modus haben (langsames Neu-Zeichnen des Bildschirms), sollten Sie Segmente verwenden.

10.3.2. Abstand und minimale Kupferbreite

Eine gute Wahl für den Abstand ist ein Wert, der ein wenig größer ist, als das Routing-Raster. Die minimale Kupferbreite stellt sicher, dass es keine zu kleinen Kupferflächen gibt.

Warnung

Wenn dieser Wert zu groß ist, können kleine Formen wie die Verbindungen für thermische Anbindungen nicht gezeichnet werden.

10.3.3. Flächenoptionen

Lötflächen des Netzes können entweder in der Fläche eingebunden oder ausgeschlossen oder mit thermischen Abführungen verbunden werden.

Wenn sie eingeschlossen werden, kann das Löten oder Entlöten sehr schwer werden, da die große Kupferfläche eine große thermische Masse darstellt.

Wenn sie ausgeschlossen werden, wird die Verbindung zur Kupferfläche nicht sehr gut sein.

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

Pads must be connected by tracks.

Eine thermische Abführung ist ein guter Kompromiss.

Pad is connected by 4 track segments.

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

10.3.4. Thermal relief parameters

Sie können zwei Parameter für thermische Abführungen einstellen:

10.3.5. Wahl der Parameter

Die Speichenbreite für thermische Ableitungen muss größer sein als der Wert für die minimale Breite der Kupferfläche. Wenn das nicht eingehalten wird, können sie nicht gezeichnet werden.

Zusätzlich verhindert ein zu großer Wert für diesen Parameter oder für Antipad, dass thermische Abführungen für kleine Lötflächen gezeichnet werden können (wie die Lötflächen für SMD-Bauteile).

10.4. Eine Freistellung innerhalb einer Kupferfläche ergänzen

Eine Fläche muss schon vorhanden sein. Um eine Freistellung hinzuzufügen (ein nicht gefüllter Bereich innerhalb der Fläche):

Machen Sie einen Rechts-Klick auf einen bestehenden Umriss.

Wählen Sie Fläche für Ausschnitt hinzufügen.

Zeichnen Sie den neuen Umriss.

10.5. Umrisse bearbeiten

Ein Umriss kann folgendermaßen bearbeitet werden:

Eine Ecke oder einen Rand bewegen.

Eine Ecke löschen oder hinzufügen.

Eine ähnliche Fläche oder Freistellung hinzufügen.

Wenn sich Polygone überlappen, werden sie kombiniert.

Um das zu tun, machen Sie einen Rechtsklick auf eine Ecke oder einen Rand und wählen dann den korrekten Befehl.

Hier ist eine Ecke (eines Ausschnitts), die bewegt wurde:

Hier ist das endgültige Ergebnis:

Die Polygone wurden kombiniert.

10.5.1. Eine ähnliche Fläche hinzufügen

Die ähnliche Fläche hinzufügen:

Endgültiges Ergebnis:

10.6. Flächenparameter bearbeiten

Wenn Sie einen Rechtsklick auf einen Umriss machen und Bearbeite Flächenparameter wählen, öffnet sich der Flächenparameter Dialog. Hier können Sie initiale Parameter eingeben. Wenn eine Fläche schon gefüllt ist, muss sie erneut ausgefüllt werden.

10.7. Endgültige Flächenfüllung

Wenn die Leiterplatte fertiggestellt ist, müssen Sie alle Flächen füllen oder erneut füllen. Um das zu tun:

Aktivieren Sie das Werkzeug Flächen über das Symbol .

Machen Sie einen Rechtsklick, um das Pop-Up Menü anzuzeigen.

Wählen Sie Alle Flächen (erneut) ausfüllen:

Warnung

Die Berechnung kann einige Zeit dauern, wenn das Füll-Raster klein ist.

10.8. Netznamen von Flächen ändern

Nach dem Bearbeiten eines Schaltplans können Sie den Namen jedes Netzes ändern. Zum Beispiel kann VCC zu +5V geändert werden.

Wenn Sie eine globale DRC-Prüfung durchführen, prüft Pcbnew ob der Netzname der Fläche existiert und zeigt einen Fehler an, wenn das nicht der Fall ist.

Sie müssen die Flächenparameter manuell bearbeiten, um den alten Namen auf den neuen zu ändern.

10.9. Flächen auf technischen Lagen erstellen

10.9.1. Flächenbegrenzung erstellen

This is done using the button . The active layer must be a technical layer.

Wenn Sie klicken um die Flächenbegrenzung zu zeichnen, wird dieser Dialog geöffnet:

Wählen Sie die technische Lage, auf der die Fläche gezeichnet werden soll und zeichnen Sie den Umriss, wie es zuvor für Kupferlagen erklärt wurde.

Anmerkung

Um den Umriss zu bearbeiten, nutzen Sie die gleiche Methode wie für Kupferlagen.

Wenn nötig, können Sie Ausschnitte ergänzen.

10.10. Sperrflächen erstellen

Wählen Sie das Symbol .

Die aktive Lage sollte eine Kupferlage sein.

Wenn Sie auf den Startpunkt der neuen Sperrfläche geklickt haben, wird der Dialog geöffnet:

Sie können die gesperrten Sachen auswählen:

Leiterbahnen.

Vias (Durchkontaktierungen).

Kupferfüllung.

Wenn eine Leiterbahn oder eine Durchkontaktierung sich in einer Sperrfläche befindet, die das nicht erlaubt, wird ein DRC-Fehler erzeugt.

Für Kupferflächen wird der Bereich innerhalb einer Sperrfläche für Kupferfüllung nicht gefüllt. Der Bereich einer Sperrfläche ist wie eine Fläche. Das Bearbeiten des Umrisses ist daher analog zum Bearbeiten eine Kupferfläche.

Kapitel 11. Dateien für die Leiterplattenherstellung

Sehen wir uns an, was die notwendigen Schritte sind, um die notwendigen Dateien für die Herstellung Ihrer Leiterplatten zu erstellen.

Alle von KiCad erzeugten Dateien werden im Arbeitsverzeichnis abgelegt, was das gleiche Verzeichnis ist, das die "xxx.brd" Datei für die Leiterplatte enthält.

11.1. Letzte Vorbereitungen

Die Erzeugung der notwendigen Dateien für die Herstellung Ihrer Leiterplatten umfasst die folgenden vorbereitenden Schritte:

Markieren Sie jede Lage (z.B. ‚Top‘ oder ‚Oben‘ und ‚Bottom‘ oder ‚Unten‘) mit dem Projektnamen indem Sie einen angemessenen Text auf jeder Lage platzieren.

Jeder Text auf Kupferlagen (manchmal ‚Lötseite‘ oder ‚Unterseite‘ genannt) muss gespiegelt werden.

Erstellen Sie alle Masseflächen, passen Sie wenn nötig Leiterbahnen an, um sicherzustellen, dass sie durchgängig sind.

Platzieren Sie Ausrichtungsmarkierungen und möglicherweise die Abmessungen des Leiterplattenumrisses (diese werden üblicherweise auf einem der Universal-Lagen).

Hier ist ein Beispiel, das all diese Elemente zeigt, aber keine Masseflächen, diese wurden für bessere Sichtbarkeit weggelassen:

Eine Farbmarkierung für die 4 Kupferlagen wurde ebenfalls hinzugefügt:

11.2. Abschließende DRC Prüfung

Bevor Sie die Ausgabedateien erzeugen, wird dringend eine globale DRC Prüfung (Design Rule Check → Prüfung der Designregeln) empfohlen.

Bereiche werden gefüllt oder neu gefüllt wenn Sie einen DRC starten. Klicken Sie auf das Symbol , um den folgenden DRC Dialog zu öffnen:

Passen Sie die Parameter entsprechend an und klicken Sie dann auf ‚DRC ausführen‘.

Diese abschließende Prüfung wird unschönen Überraschungen vorbeugen.

11.3. Den Koordinatenursprung festlegen

Um den Koordinatenursprung für die Plot- und Bohrdateien zu setzen, müssen Sie die Hilfsachse auf diesen Ursprung setzen. Aktivieren Sie das Symbol . Bewegen Sie die Hilfsachse mit einem Linksklick auf die gewählte Position.

11.4. Dateien für den Photoplot erzeugen

Wählen Sie aus dem Hauptmenü Datei → Plotten. Das öffnet diesen Dialog:

Üblicherweise sind diese Dateien im GERBER Format. Nichtsdestotrotz ist es möglich, die Ausgabe im HPGL und POSTSCRIPT Format zu erzeugen. Wenn das POSTSCRIPT Format gewählt ist, erscheint dieser Dialog:

In diesen Formaten kann der Feinmaßstab eingestellt werden, um die Genauigkeit des Druckers zu berücksichtigen und einen tatsächlichen Maßstab von 1 für die Ausgabe zu erhalten:

11.4.1. GERBER Format

Pcbnew erzeugt für jede Lage eine separate Datei, gemäß des GERBER 247X Standards. Standardgemäß im 4.6 Format: jede Koordinate in der Datei wird mit 10 Stellen dargestellt, wovon 4 vor dem Dezimaltrenner stehen und 6 dahinter; Einheiten in Zoll und dem Maßstab 1.

Normalerweise ist es notwendig für jede Kupferlage eine Datei zu erzeugen — und abhängig von der Schaltung — für den Bestückdruck, die Lötstopmaske und Lotpasten-Lage. All diese Dateien können in einem Schritt erzeugt werden, indem Sie die passenden Auswahlfelder aktivieren.

Zum Beispiel sollten für eine doppelseitige Schaltung mit Bestückdruck, Lötstoppmaske und Lotpastenmaske (für SMD Bauteile) 8 Dateien erzeugt werden (‚xxxx‘ steht für den Namen der ‚.brd‘ Datei).

xxxx-F_Cu.gbr für die Bauteilseite.

xxxx-B_Cu.gbr für die Kupferseite (Lötseite).

xxxx-F_SilkS.gbr für den Bestückdruck der Bauteilseite.

xxxx-B_SilkS.gbr für den Bestückdruck der Kupferseite (Lötseite).

xxxx-F_Paste.gbr für die Lotpastenmaske der Bauteilseite.

xxxx-B-Paste.gbr für die Lotpastenmaske der Kupferseite (Lötseite).

xxxx-F_Mask.gbr für die Lötstoppmaske der Bauteilseite.

xxxx-B_Mask.gbr für die Lötstoppmaske der Kupferseite (Lötseite).

GERBER Dateiformat:

Das von Pcbnew genutzte Format ist RS274X Format 4.6, Imperial, führende Nullen unterdrückt, Abs Format. Das sind sehr übliche Einstellungen.

11.4.2. POSTSCRIPT Format

Die Standarderweiterung für die Ausgabedateien ist .ps für Postscript-Ausgabe. Wie für die HPGL-Ausgabe kann die Zeichnung in benutzerdefiniertem Maßstab erfolgen und gespiegelt werden.

11.4.3. Plot-Optionen

GERBER Format:

Andere Formate:

Spezielle Optionen für das GERBER Format:

Benutze Protel Dateinamenserweiterungen

Benutze .gbl .gtl .gbs .gts. gbp .gtp .gbo .gto anstelle von .gbr als Dateinamenserweiterungen.

Erweiterte Attribute benutzen

Schreibt erweiterte Attribute in die Ausgabedatei.

Subtrahiere Lötstoppmaske von Siebdruckmaske

Entferne jede Bedruckung von Lötpastenbereichen.

11.4.4. Andere Formate

Die Standard-Dateiendung hängt vom Typ der Ausgabedatei ab.

Manche Optionen sind für manche Formate nicht verfügbar.

Der Plot kann im benutzerdefinierten Maßstab erfolgen und gespiegelt werden.

Die Auswahl Bohrlochmarkierungen bietet die Möglichkeit, dass die Lötflächen gefüllt sind, mit dem korrekten Durchmesser oder mit einem kleinen Loch gebohrt werden (um Bohrungen von Hand zu erleichtern).

11.5. Globale Einstellungen für Abstände von Lötstopp- und Lotpastenmaske

Die Werte für die Maskenabstände können global für die Lötstoppmasken- und Lotpastenmaskenlage eingestellt werden. Die Abstände können in folgender Abstufung gesetzt werden:

Für die Lötfläche.

Für den Footprint.

Global.

Und Pcbnew benutzt die Prioritätsreihenfolge:

Lötflächenwert. Wenn Null:

Footprint-Wert. Wenn Null:

Globale Werte.

11.5.1. Zugriff

Die Menü-Option für dieses ist verfügbar im Abmessungen-Menü:

Der Dialog ist folgender:

11.5.2. Abstand Lötstoppmaske

Ein Wert nahe bei 0,2 mm ist üblicherweise gut. Dieser Wert ist positiv, weil die Maskenöffnung üblicherweise größer als die Lötfläche ist.

Sie können einen Minimalwert für die Breite der Lötstoppmaske zwischen zwei Lötflächen einstellen.

Wenn der tatsächliche Wert kleiner als der Minimalwert ist, dann werden die beiden Lötstoppmasken-Formen vereint.

11.5.3. Abstand Lötpaste

Der Endabstand ist die Summe von Lötpasten-Abstand und einem Prozentwert der Lötflächengröße.

Dieser Wert ist negativ, weil die Maske üblicherweise kleiner als die Lötfläche ist.

11.6. Erzeugen von Bohrdateien

Das Erzeugen einer Bohrdatei xxxx.drl nach dem EXCELLON Standard ist immer notwendig.

Sie können ebenfalls optional eine Bohr-Protokoll- und/oder einen Bohrplan ausgeben lassen.

Der Bohrplan kann in verschiedenen Formaten ausgegeben werden.

Das Bohrprotokoll ist eine reine Textdatei.

Die Ausgabe dieser Dateien wird gesteuert über:

die Fläche Bohrdatei oder

über die Menüauswahl Datei → Fertigungsdateien → Bohrdatei

Der Bohrdatei-Dialog sieht wie folgt aus:

Um den Koordinatenursprung zu setzen, wird der folgende Dialog genutzt:

Absolut: das absolute Koordinatensystem wird verwendet.

Hilfsachse: Verwendung von Koordinaten relativ zur Hilfsachse, benutzen Sie das Symbol (rechte Werkzeugleiste) um sie zu festzulegen.

11.7. Erzeugen der Verdrahtungs-Dokumentation

Um Dateien für die Verdrahtungs-Dokumentation zu erstellen, können die Lagen für den Bestückungsdruck der Bauteil- und Lötseite nachgezeichnet werden. Üblicherweise reicht der Bestückungsdruck für die Bauteilseite aus, um die Leiterplatte zu verdrahten. Wenn der Bestückungsdruck für die Lötseite verwendet wird, sollte der enthaltene Text gespiegelt werden, damit er lesbar ist.

11.8. Erzeugen von Dateien für automatische Bauteilbestückung

Auf diese Option können Sie über Datei → Exportieren → Bauteildatei (.cmp) zugreifen. Jedoch wird keine Datei erzeugt, solange nicht mindestens bei einem Footprint das Attribut Normal+Einfügen aktiviert ist (siehe Bearbeiten von Footprints). Ein oder zwei Dateien werden erzeugt, abhängig davon ob bestückbare Bauteile auf beiden Seiten der Leiterplatte vorhanden sind. Ein Dialogfenster wird die Namen der erzeugten Dateien anzeigen.

11.9. Erweiterte Ausgabeoptionen

Die nachfolgend beschriebenen Optionen (Teil des Datei → Plotten Dialogs) ermöglichen eine sehr feine Steuerung des Ausgabeprozesses. Sie sind besonders hilfreich wenn der Bestückungsdruck für die Verdrahtungsdokumentation gedruckt wird.

Die verfügbaren Optionen lauten:

Plotte Schaltplanreferenz auf allen Lagen

Zeichne Blattumriss und die Kasette.

Drucke Pads im Siebdruck

Aktiviert/deaktiviert das Drucken von Lötflächenumrissen auf Bestückungsdrucklagen (wenn die Lötflächen bereits so eingestellt wurden, dass sie auf diesen Lagen dargestellt werden). Verhindert den Druck aller Lötflächen wenn deaktiviert.

Plotte Footprintwerte

Aktiviert das Drucken des WERT Textes im Bestückungsdruck.

Plotte Footprint-Referenzen

Aktiviert das Drucken des REFERENCE Textes im Bestückungsdruck.

Erzwinge Ausdruck ausgeblendeter Werte/Referenzen

Erzwingt das Drucken von Feldern (Referenz, Wert) wenn sie als unsichtbar eingestellt wurden. In Kombination mit Drucke Footprintwerte und Drucke Footprint-Referenzen aktiviert diese Option die Ausgabe von Dokumenten zur Hilfe bei Verdrahtung und Reparaturen. Diese Optionen haben sich als notwendig erwiesen bei Schaltungen, die Bauteile verwenden die zu klein sind (SMD), um zwei Textfelder lesbar zu platzieren.

Durchkontaktierungen nicht umschließen

Entfernt die Lötstoppmaske über Durchkontaktierungen.

Schließe Platinenumrisslage von allen Lagen aus

Speziell für das GERBER Format. Keine Grafikelemente auf Randlagen plotten.

Benutze Protel Dateinamenerweiterungen

Speziell für das Gerberformat. Wenn Dateien erzeugt werden, werden spezielle Endungen für jede Datei benutzt. Wenn deaktiviert, ist die Dateiendung für GERBER Dateien .gbr.

Kapitel 12. Footprint Editor - Verwaltung von Bibliotheken

12.1. Überblick Footprint-Editor

Pcbnew kann gleichzeitig mehrere Bibliotheken verwalten. Daher, wenn ein Footprint geladen wird, werden alle Bibliotheken, die in der Bibliothekenliste auftauchen, durchsucht, bis das erste Exemplar des Footprint gefunden wurde. Im Folgenden wird das Programm beschrieben. Beachten Sie, dass die aktive Bibliothek die im Footprinteditor ausgewählte ist.

Der Footprinteditor ermöglicht das Erstellen und Bearbeiten von Footprints:

Hinzufügen und Entfernen von Lötflächen.

Ändern der Eigenschaften der Lötfläche (Form, Lage) für einzelne Lötflächen oder global für alle Lötflächen eines Footprints.

Bearbeiten von grafischen Elementen (Linien, Text).

Bearbeiten von Informationsfeldern (Wert, Referenz, usw.).

Bearbeiten der zugehörigen Dokumentation (Beschreibung, Schlüsselwörter).

Der Footprinteditor erlaubt ebenfalls die Pflege der aktiven Bibliothek über:

Auflisten der Footprints in der aktiven Bibliothek.

Löschen eines Footprint aus der aktiven Bibliothek.

Speichern eines Footprint in die aktive Bibliothek.

Speichern alle Footprints die auf einer Leiterplatte enthalten sind.

Es ist ebenso möglich, neue Bibliotheken zu erstellen.

Die Dateiendung für Bibliotheken ist .mod.

12.2. Zugriff auf den Footprinteditor

Auf den Footprinteditor kann auf zwei Wegen zugegriffen werden:

Direkt über das Symbol in der Hauptwerkzeugleiste von Pcbnew.

Im Bearbeiten Dialog für den aktiven Footprint (siehe Bild unten: Zugriff über das Kontextmenü) ist die Schaltfläche "Footprinteditor".

In diesem Fall wird der aktive Footprint der Leiterplatte automatisch im Footprinteditor geladen, was sofortiges Bearbeiten oder Sichern ermöglicht.

12.3. Benutzeroberfläche des Footprinteditors

Wenn Sie den Footprinteditor aufrufen erscheint folgendes Fenster:

12.4. Obere Werkzeugleiste im Footprinteditor

Aus dieser Werkzeugleiste sind folgende Funktionen verfügbar:

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

12.5. Eine neue Bibliothek erstellen

Eine neue Bibliothek wird über das Symbol erzeugt. In diesem Fall wird die Datei standardmäßig im Bibliotheks-Verzeichnis erzeugt oder über das Symbol , was dann die Datei standardmäßig in Ihrem Arbeitsverzeichnis erzeugt.

Ein Datei-Auswahlfenster erlaubt es den Namen der Bibliothek anzugeben und das Verzeichnis zu ändern. In beiden Fällen wird die Bibliothek den bearbeiteten Footprint enthalten.

Warnung

Wenn eine alte Bibliothek mit gleichem Namen vorhanden ist, wird sie ohne Warnung überschrieben.

12.6. Einen Footprint in der aktiven Bibliothek speichern

Sie können einen Footprint über dieses Symbol speichern: . Dabei wird die aktive Bibliotheksdatei verändert. Wenn schon ein Footprint mit gleichem Namen vorhanden ist, wird er ersetzt. Weil Sie der Genauigkeit der Bibliotheks-Footprints vertrauen, sollten Sie den Footprint kontrollieren, bevor Sie ihn speichern.

Es wird empfohlen entweder den Referenz- oder Wert-Feld-Text auf den Namen des Footprints setzen, wie er in der Bibliothek benannt ist.

12.7. Einen Footprint von einer Bibliothek zu einer anderen übertragen

Wählen Sie die Start-Bibliothek über das Symbol .

Laden Sie den Footprint über das Symbol .

Wählen Sie die Ziel-Bibliothek über das Symbol .

Speichern Sie den Footprint über das Symbol .

Sie können auch den Footprint aus der Start-Bibliothek löschen wollen.

Wählen Sie noch einmal die Start-Bibliothek über das Symbol .

Löschen Sie den Footprint über das Symbol .

12.8. Speichern aller Footprints der Leiterplatte in die aktive Bibliothek

Es ist möglich, alle Footprints einer Leiterplatte in die aktive Bibliothek zu kopieren. Diese Footprints werden ihre aktuellen Bibliotheks-Namen behalten. Dieser Befehl hat zwei Zwecke:

Das Erstellen eines Archivs oder einer kompletten Bibliothek mit den Footprints von einer Leiterplatte, wenn eine Bibliothek verloren gegangen ist.

Wichtiger, es erleichtert Bibliotheksverwaltung indem es das Erstellen einer Dokumentation für die Bibliothek ermöglicht, so wie unten.

12.9. Dokumentation von Bibliotheks-Footprints

Es wird dringend empfohlen die Footprints, die Sie erstellen, zu dokumentieren, damit eine schnelles und fehlerfreies Suchen möglich wird.

Zum Beispiel, wer kann sich schon alle verschiedenen Anschlusskombinationen eines TO92 Gehäuses merken? Der Footprint-Eigenschaften-Dialog bietet eine einfache Lösung für dieses Problem.

Dieser Dialog lässt zu:

Einen einzeiligen Kommentar/Beschreibung.

Mehrere Schlüsselwörter.

Die Beschreibung wird mit der Bauteilliste in Cvpcb angezeigt und in Pcbnew wird sie im Footprint-Auswahl-Dialog verwendet.

Die Schlüsselwörter ermöglichen es, Suchen einzuschränken nach den Footprints, die mit bestimmten Schlüsselwörtern übereinstimmen.

Wenn Sie einen Footprint direkt laden (das Symbol in der rechten Werkzeugleiste in Pcbnew), können Sie Schlüsselwörter in dem Dialogfenster eingeben. Daher, wenn Sie den Text =CONN eingeben, wird das eine Liste von Footprints anzeigen, deren Liste von Schlüsselwörtern das Wort CONN enthält.

12.10. Dokumentation von Bibliotheken - empfohlene Praxis

Es wird empfohlen Bibliotheken direkt zu erstellen indem Sie ein oder mehrere Hilfsleiterplatten erstellen, die die Quelle/Teil einer Bibliothek sind wie folgt: Erstellen Sie eine Leiterplatte im A4 Format, damit Sie diese leicht im Maßstab 1:1 ausdrucken können.

Erstellen Sie die Footprints, die die Bibliothek für dieser Leiterplatte enthält. Die Bibliothek selbst wird über den Befehl Datei → Footprints archivieren → Erstelle Bibliothek und archiviere Footprints erzeugt.

Die "echte Quelle" der Bibliothek wird daher die Hilfsleiterplatte sein, und es ist diese Leiterplatte, auf der alle weiteren Änderungen an den Footprints gemacht werden. Natürlich können mehrere Leiterplatten in der gleichen Bibliothek gespeichert werden.

Es ist im Allgemeinen eine gute Idee unterschiedliche Bibliotheken für unterschiedliche Arten von Bauteilen zu erstellen (Verbinder, Diskrete Bauteile, …), da Pcbnew in der Lage ist, viele Bibliotheken zu durchsuchen, wenn es Footprints lädt.

Hier ist ein Beispiel einer solchen Bibliotheks-Quelle:

Diese Technik hat einige Vorteile:

Die Schaltung kann maßstabsgetreu ausgedruckt werden und als Dokumentation für die Bibliothek dienen, ohne weiteren Aufwand.

Zukünftige Änderungen an Pcbnew könnten es erforderlich machen, die Bibliotheken neu zu erstellen, etwas das sehr schnell erledigt werden kann, wenn als Quelle Leiterplatten dieser Art verwendet wurden. Das ist wichtig weil für die Leiterplattenformate garantiert wird, dass sie während der weiteren Entwicklung kompatibel bleiben, aber das ist nicht der Fall für das Bibliotheksformat.

12.11. Verwaltung von Footprint-Bibliotheken

Die Liste der Footprint-Bibliotheken in Pcbnew kann mit dem Footprint-Bibliotheks-Manager bearbeitet werden. Das erlaubt es Ihnen Footprint-Bibliotheken von Hand hinzuzufügen und zu entfernen und erlaubt es Ihnen den Footprint-Bibliotheks-Assistenten aufzurufen indem Sie auf die Schaltfläche "Mit Assistenten hinzufügen" klicken.

Der Assistent für die Footprint-Bibliotheken kann auch über das Einstellungen Menü geöffnet werden. Er kann automatisch eine Bibliothek (unter Erkennung ihres Typs) aus einer Datei oder von einer Github URL hinzufügen. Die URL für die offiziellen Bibliotheken ist: https://github.com/KiCad

Mehr Details über Footprint-Bibliotheks-Tabellen und den -Manager und -Assistenten finden Sie im Referenzhandbuch zu CvPcb im Abschnitt Footprint Bibliotheks Tabellen.

12.12. Bibliotheksverwaltung für 3D Formen

Die 3D-Formen-Bibliotheken können Sie über den 3D-Form-Bibliotheks-Assistenten herunterladen. Diesen können Sie über das Menü Einstellungen → 3D-Formen Bibliotheks Downloader aufrufen.

Kapitel 13. Footprint-Editor - Erstellen und Bearbeiten von Footprints

13.1. Footprint Editor Overview

The footprint editor is used for editing and creating PCB footprints. This includes:

Hinzufügen und Entfernen von Lötflächen.

Ändern der Eigenschaften von Lötflächen (Form, Lage) für einzelne Lötflächen oder alle Lötflächen eines Footprints.

Hinzufügen und Bearbeiten von Grafikelementen (Umrisse, Text).

Bearbeiten von Feldern (Wert, Referenz, usw.).

Bearbeiten der zugehörigen Dokumentation (Beschreibung, Schlüsselwörter).

13.2. Footprint Elements

Ein Footprint ist die körperliche Darstellung eines Bauteils, das auf der Leiterplatte bestückt wird und muss zum zugehörigen Bauteil im Schaltplan verknüpft sein. Jeder Footprint enthält drei unterschiedliche Elemente:

Die Lötflächen.

Grafische Umrisse und Text.

Felder.

Zusätzlich muss noch eine Anzahl von anderen Parametern korrekt definiert werden, wenn die Funktion automatische Platzierung verwendet werden soll. Das gleiche gilt für die Erzeugung von automatischen Bestückdateien.

13.2.1. Lötflächen

Zwei Eigenschaften von Lötflächen sind wichtig:

Geometrie (Form, Lagen, Bohrlöcher).

Die Nummer der Lötfläche, welche aus bis zu vier alphanumerischen Zeichen besteht. Damit sind alle folgenden Nummern für Lötflächen gültig: 1, 45 und 9999, aber auch AA56 und ANOD. Die Nummer muss identisch zu der des zugehörigen Anschlusses im Schaltplan sein, weil es die passende Anschluss- und Lötflächen-Nummer festlegt, worüber Pcbnew Anschluss und Lötfläche verbindet.

13.2.2. Umrisse

Grafische Umrisse werden benutzt, um die reale Form des Footprints zu zeichnen. Mehrere verschiedene Typen von Umriss sind verfügbar: Linien, Kreise, Kreisbögen und Text. Umrisse haben keine elektrische Auswirkung, sie sind einfach nur grafische Hilfen.

13.2.3. Felder

Das sind Text-Elemente die mit dem Footprint verbunden sind. Zwei sind obligatorisch und immer vorhanden: das Referenz-Feld und das Wert-Feld. Diese werden automatisch von Pcbnew gelesen und aktualisiert, wenn eine Netzliste während des Ladens von Footprints auf die Leiterplatte eingelesen wird. Die Referenz wird durch die passende Schaltplan-Referenz ersetzt (U1, IC1, usw.). Der Wert wird durch den Wert des zugehörigen Bauteils aus dem Schaltplan ersetzt(47K, 74LS02, usw.). Andere Felder können hinzugefügt werden. Diese werden sich wie grafischer Text verhalten.

13.3. Starting Footprint Editor and Selecting a Footprint to Edit

Der Footprint-Editor kann auf zwei Arten gestartet werden.

Direkt über das Symbol age:images/icons/module_editor.png[] in der Haupt-Werkzeugleiste von Pcbnew. Das erlaubt das Erstellen oder Bearbeiten eines Footprints in der Bibliothek.

Ein Doppelklick auf einen Footprint wird das Footprint Eigenschaften Menü öffnen, welches eine Schaltfäche Footprinteditor hat. Wenn Sie diese Option wählen, wird der Footprint von der Leiterplatte zur Bearbeitung oder zum Speichern in den Editor geladen.

13.4. Werkzeugleisten des Footprinteditors

Wenn Sie den Footprinteditor aufrufen sehen Sie ein Fenster das so ausschaut:

13.4.1. Edit Toolbar (right-hand side)

Diese Werkzeugleiste hat Werkzeuge für:

Lötflächen platzieren.

Grafische Elemente hinzufügen (Konturen, Text).

Den Anker positionieren.

Elemente löschen.

Die speziellen Funktionen sind folgende:

Kein Werkzeug.

Lötflächen hinzufügen.

Zeichne Liniensegmente und Polygone.

Zeichne Kreise.

Zeichne Kreisbögen.

Grafischen Text hinzufügen (Felder mit diesem Werkzeug nicht bearbeitet.).

Den Footprint-Anker positionieren.

Elemente löschen.

Rasterursprung (Raster Offset). Hilfreich für das Platzieren von Lötflächen. Der Rasterursprung kann an eine vorgegebene Position gesetzt werden (die erste zu platzierende Lötfläche) und danach kann die Rastergröße auf den Abstand der Lötflächen gesetzt werden. Damit können Lötflächen sehr leicht platziert werden.

13.4.2. Display Toolbar (left-hand side)

Diese Werkzeuge verwalten die Anzeigeoptionen im Footprint-Editor:

Raste anzeigen.

Polarkoordinaten anzeigen.

Benutze mm oder Zoll als Anzeigeeinheit.

Cursor zur Fadenkreuz-Anzeige umschalten.

Zeige Lötflächen als Umriss an.

Zeige Text als Umriss an.

Zeige Bauteilumriss als Umriss an.

Schalte Modus für hohen Kontrast ein.

13.5. Kontextmenüs

Die rechte Maustaste ruft Menüs auf, die abhängig vom Element unter dem Cursor sind.

Das Kontextmenü um Footprint-Parameter zu bearbeiten:

Das Kontextmenü um Lötflächen zu bearbeiten:

Das Kontextmenü um grafische Elemente zu bearbeiten:

13.6. Footprint Properties Dialog

Dieser Dialog wird geöffnent, wenn der Cursor über einem Footprint ist und Sie mit der rechten Maustaste klicken und dann Footprint bearbeiten auswählen.

Der Dialog kann dann genutzt werden um die Hauptparameter des Footprints festzulegen.

13.7. Creating a New Footprint

Ein neuer Footprint kann über das Symbol erstellt werden. Der Name des neuen Footprints wird erfragt. Das wird der Name, mit dem der Footprint in der Bibliothek erscheint.

Dieser Text dient ebenfalls als der Footprint-Wert, welcher dann mit dem echten Wert ersetzt wird (z.b. 100 µF_16V, 100 Ω_0.5W, …).

Der neue Footprint benötigt:

Umrisse (und möglicherweise grafischen Text).

Lötflächen.

Einen Wert (versteckter Text der bei Verwendung mit dem echten Wert ersetzt wird).

Alternative Methode:

Ist ein neuer Footprint ähnlich einem bestehenden Footprint in einer Bibliothek oder auf einer Leiterplatte, ist eine alternative und schnellere Methode einen Footprint zu erstellen, folgende:

Laden Sie den ähnlichen footprint (, oder ).

Bearbeiten Sie das "Footprint Name in Bibliothek" Feld, um eine neue Benennung zu erstellen (Name).

Bearbeiten und speichern Sie den neuen Footprint.

13.8. Adding and Editing Pads

Sobald ein Footprint erstellt wurde, können Lötflächen hinzugefügt, gelöscht oder geändert werden. Die Änderung der Lötflächen kann lokal sein (nur für die Lötfläche unter dem Cursor) oder global, mit Auswirkung auf alle Lötflächen des Footprints.

13.8.1. Adding Pads

Aktivieren Sie das Symbol in der rechten Werkzeugleiste. Sie können Lötflächen hinzufügen indem Sie mit der linken Maustaste auf die gewünschte Position klicken. Die Eigenschaften der Lötflächen sind vordefiniert im Lötflächen-Eigenschaften-Menü.

Vergessen Sie nicht, die Lötflächen-Nummer einzugeben.

13.8.2. Setting Pad Properties

Das kann auf drei unterschiedliche Arten geschehen:

Wählen Sie das Symbol aus der horizontalen Werkzeugleiste.

Klicken Sie mit der rechten Maustaste auf eine bestehendende Lötfläche und wählen Sie Pad bearbeiten. Die Eigenschaften der Lötfläche können dann geändert werden.

Klicken Sie mit der rechten Maustaste auf eine bestehende Lötfläche und wählen Sie Pad Einstellungen exportieren. In diesem Fall werden die geometrischen Eigenschaften der Lötfläche die Standard-Einstellung für Lötflächen.

In den ersten beiden Fallen wird der folgende Dialog angezeigt:

Sie müssen gut acht geben um die Lage korrekt festzulegen, zu der die Lötfläche gehört. Im Speziellen, auch wenn Kupferlagen leicht festzulegen sind, ist die Verwaltung von Nicht-Kupferlagen (Lötstoppmaske, Lötpaste…) genauso wichtig für die Fertigung und Dokumentation.

Die Padtyp-Auswahl stößt eine automatische Auswahl der Lagen an, die im Allgemeinen ausreichend ist.

Rectangular Pads

Für SMD-Footprints des VQFP/PQFP-Typs, welche rechteckige Lötflächen an allen vier Seiten haben (sowohl horizontal als auch vertikal), wird empfohlen einfach eine Form zu verwenden (zum Beispiel ein horizontales Rechteck) und es mit unterschiedlicher Ausrichtung zu platzieren (0 für horizontal und 90 Grad für vertikal). Das Anpassen der Größe aller Lötflächen kann dann in einer einzigen Bearbeitung erfolgen.

Rotate Pads

Drehungen von −90 oder −180 werden nur für trapezförmige Lötflächen benötigt, wie sie in Microwellen-Footprints verwendet werden.

Non-plated Through Hole Pads

Lötflächen können als nicht-durchkontaktierte bedrahtete Lötflächen festgelegt werden (NPTH Pads).

Diese Lötflächen müssen für eine oder alle Kupferlagen festgelegt werden (offensichtlich gibt es dieses Loch in allen Kupferlagen).

Diese Anforderung erlaubt es Ihnen spezielle Abstände festzulegen (zum Beispiel Abstand für eine Schraube).

Wenn die Lochgröße die gleiche ist, wie die Lötflächengröße, für eine runde oder ovale Lötfläche, wird diese Lötfläche NICHT auf Kupferlagen in GERBER Dateien ausgegeben (geplottet).

Diese Lötflächen werden für mechanische Zwecke verwendet, daher sind keine Namen für die Lötfläche oder den Netznamen erlaubt. Eine Verbindung zu einem Netz nicht möglich.

Offset Parameter

Lötfläche 3 hat einen Offset Y = 15 mil:

Delta Parameter (trapezförmige Lötflächen)

Lötfläche 1 hat seinen Parameter Delta X = 10 mil:

13.8.3. 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

Anmerkung

Die Form der Lötflächen auf der Lötstoppmaske ist üblicherweise größer als die Lötfläche selbst. Daher ist der Wert für den Abstand positiv. Die Lötfläche auf der Lötpastenmaske ist üblicherweise kleiner als die Lötfläche selbst. Daher ist der Abstandswert negativ.

Solder Paste Settings

Two settings are used to calculate the solder paste aperture:

A fixed clearance setting.

Ein Prozentsatz der Lötflächengröße.

The the final value is the product of the ratio setting and the clearance setting.

13.8.4. 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.

Warnung

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.

Einstellungen für den Footprint

Einstellungen für die Lötfläche:

13.9. Eigenschaften der Felder

Es gibt mindestens zwei Felder: Referenz und Wert.

Ihre Parameter (Attribut, Größe, Breite) müssen aktualisiert werden. Sie können den Dialog aus dem Pop-Up-Menü, mit einem Doppelklick auf das Feld oder über das Footprint-Eigenschaften-Dialog-Fenster öffnen:

13.10. Automatic Placement of a Footprint

Wenn der Benutzer die ganzen Möglichkeiten der automatischen Platzierfunktion ausnutzen möchte, ist es notwendig die erlaubte Ausrichtung des Footprints festzulegen (Footprint Eigenschaften Dialog).

Üblicherweise ist die Drehung um 180 Grad für Widerstände, nicht-gepolte Kondensatoren und andere symmetrische Bauteile erlaubt.

Manche Footprints (kleine Transistoren zum Beispiel) dürfen oft um ±90 oder 180 Grad gedreht werden. Standardmäßig sind die Freigaben für die Drehung eines neuen Footprint auf Null gesetzt. Das kann mit folgender Regel angepasst werden:

Ein Wert von 0 macht Drehung unmöglich, 10 erlaubt sie komplett und jeder Zwischenwert stellt eine eingeschränkte Drehung ein. Zum Beispiel könnte für einen Widerstand eine Drehung von 180 Grad mit 10 erlaubt sein (unbeschränkt) und mit 5 für eine ±90 Grad Drehung (erlaubt, aber nicht befürwortet).

13.11. Attribute

Das Attributfenster ist das folgende:

Normal ist das Standard-Attribut.

Normal+Einfügen zeigt an, dass der Footprint in einer Datei für automatische Bestückung auftauchen muss (für automatische Bestückmaschinen). Dieses Attribut ist für SMD Bauteile am hilfreichsten.

Virtuell zeigt an, dass ein Bauteil direkt über die Lieterplatte geformt wird. Beispiele dafür sind Rand-Verbinder oder Spulen die über spezielle Leiterbahnformen erstellt werden (wie bei manchen Microwellen-Schaltungen zu sehen).

13.12. Documenting Footprints in a Library

Es ist sehr empfehlenswert neu erstellte Footprints zu dokumentieren, um Sie schnell und präzise wiederherstellen zu können. Wer kann sich schon an die vielen Anschlussvarianten eines TO92 Footprints erinnern?

Der Footprint-Eigenschaften Dialog bietet eine einfache aber leistungsvolle Möglichkeit für das Erzeugen einer Dokumentation.

Dieses Menü erlaubt:

Das Eintragen einer Kommentarzeile (Beschreibung).

Mehrere Schlüsselwörter.

Die Kommentarzeile wird in der Bauteilliste in CvPcb angezeigt und in den Footprint-Auswahlmenüs in Pcbnew. Die Schlüsselwörter können benutzt werden um Suchen einzuschränken auf die Bauteile, die mit den Schlüsselwörtern überein stimmen.

Damit ist es möglich während des Befehls zum Laden von Footprints (Symbol in der rechten Werkzeugleiste in Pcbnew) den Text =TO220 im Dialog einzugeben, um Pcbnew eine Liste der Footprints anzeigen zu lassen, die das Schlüsselwort TO220 enthalten

13.13. 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.

Abbildung 13.1. 3D Model selection interface

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.

13.13.1. 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.

Abbildung 13.2. KiCad Path Configuration dialog

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.

Abbildung 13.3. KiCad Alias Configuration dialog

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.

Abbildung 13.4. KiCad 3D File Browser

13.14. Saving a Footprint into the Active Library

Der Speichern-Befehl (verändern der Datei der aktiven Bibliothek) wird aktiviert über das Symbol .

Wenn ein Footprint des gleichen Namens vorhanden ist (eine ältere Version) wird er überschrieben. Prüfen Sie also den Footprint gründlich auf Fehler bevor Sie speichern, denn es ist wichtig, den Footprints in der Bibliothek vertrauen zu können.

Vor dem Speichern wird auch empfohlen die Referenz oder den Wert des Footprint zu ändern, damit er mit dem Bibliotheksnamen des Footprint übereinstimmt.

13.15. Einen Footprint auf die Leiterplatte speichern

Wenn der bearbeitete Footprint von der aktuellen Leiterplatte kommt, wird das Symbol diesen Footprint auf der Leiterplatte aktualisieren.

Kapitel 14. Erweiterte Werkzeuge für die Leiterplatten-Bearbeitung

Es gibt einige fortgeschrittene Werkzeuge in Pcbnew und im Footprint-Editor, welche Ihnen helfen können, Bauteile auf der Leiterplatte effizienter anzuordnen.

14.1. Elemente duplizieren

Duplizierung ist eine Methode, mit einer Aktion ein Element zu klonen und es aufzunehmen. Das ist ziemlich identisch zu "Copy and Paste", aber es erlaubt Ihnen die Bauteile über die Leiterplatte zu "verstreuen" und erlaubt Ihnen Bauteile mit dem "Verschiebe Exakt" Werkzeug (siehe unten) leichter zu platzieren.

Duplication is done by using the hotkey (which defaults to Ctrl-D) or the duplicate item option in the context menu, icon .

14.2. Elemente exakt verschieben

Das Werkzeug "Verschiebe Exakt" erlaubt es Ihnen ein Element (oder eine Gruppe von Elementen) um einen bestimmten Betrag zu verschieben. Die Eingabe kann in kartesischem oder Polar-Format erfolgen und kann in jeder unterstützten Maßeinheit erfolgen. Das ist hilfreich, wenn es sonst sehr umständlich wäre auf ein anderes Raster umzuschalten oder wenn eine Eigenschaft nicht auf eines der bestehenden Raster passt.

Um dieses Werkzeug zu verwenden, wählen Sie die Elemente aus, die Sie verschieben möchten und benutzen Sie dann entweder die Schnelltaste (Standard: Strg-M) oder den Eintrag im Kontextmenü um den Dialog zu öffnen. Sie können den Dialog auch aufrufen

Eintrag für Exaktes Verschieben mit kartesischem Verschiebungsvektor:

Eintrag für exaktes Verschieben mit Polarvektor:

Das Auswahlkästchen erlaubt es Ihnen zwischen kartesischem und polarem Koordinatensystem umzuschalten. Was dann aktuell im Formular steht, wird automatisch zum anderen System umgewandelt.

Dann geben Sie den gewünschten Verschiebungsvektor ein. Sie können die Einheiten verwenden, die neben den Eingabekästchen stehen ("mm" in den Bildern oben) oder Sie können die Einheit selbst vorgeben (z.B. "1 in" für einen Zoll, oder "2 rad" für 2 Radiant).

Wenn Sie auf OK klicken, wird die Verschiebung auf die Auswahl angewendet. Abbrechen schließt den Dialog und die Elemente werden nicht verschoben. Wenn OK geklickt wird, wird der Verschiebungsvektor gespeichert und beim nächsten Öffnen des Dialogs schon eingetragen sein. Das erlaubt es, den gleichen Vektor auf mehrere Elemente anzuwenden.

14.3. Anordnungs-Werkzeuge

Pcbnew und der Footprinteditor haben beide Assistenten, um Anordnungen von Elementen und Bauteilen zu erstellen. Diese können verwendet werden, um leicht und präzise sich wiederholende Elemente auf Leiterplatten und Footprints anzuordnen.

14.3.1. Das Anordnungs-Werkzeug aufrufen

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).

Das Anordnungs-Werkzeug wird als Dialogfenster angezeigt, mit einem Bereich für die Typen der Anordnungen. Es gibt bisher zwei unterstützte Typen von Anordnungen: Raster und kreisförmig.

Jeder Anordnungs-Typ kann komplett über die zugehörigen Bereiche definiert werden. Geometrische Optionen (wie das Raster angeordnet ist) auf der linken Seite, Zähloptionen (einschließlich wie die Nummerierung über das Raster fortgeführt wird) auf der rechten Seite.

14.3.2. Raster-Anordnung

Rasteranordnungen sind Anordnungen, die Bauteile entsprechend eines 2-dimensionalen rechteckigen Rasters anordnen. Diese Art Anordnung kann auch eine Linie von Elementen erzeugen, indem man nur eine einzige Spalte oder Zeile erzeugt.

Der Einstellungsdialog für Raster-Anordnungen sieht so aus:

Geometrische Optionen

Die geometrischen Optionen sind:

Horizontal count: the number of "columns" in the grid.

Vertikale Anzahl: Die Anzahl der "Zeilen" im Raster.

Horizontaler Abstand: Der horizontale Abstand von Element zu Element in der gleichen Zeile und nächster Spalte. Wenn dieser Wert negativ ist, wird das Raster von rechts nach links gezählt.

Vertikaler Abstand: Der vertikale Abstand von einem Element zum Element in der gleichen Spalte und nächsten Zeile. Wenn dieser Wert negativ ist, wird das Raster von unten nach oben gezählt.

Horizontaller Offset: Starte jede Zeile mit diesem Abstand nach rechts zur vorherigen. Ein negativer Wert startet die folgende Zeile links zur vorherigen.

Vertikaler Offset: Starte jede Spalte mit diesem Abstand unterhalb der vorherigen. Ein negativer Wert startet die folgende Spalte oberhalb der vorherigen.

Abbildung 14.1. 3×3 Raster mit x und y Offsets:

Abstufen: Füge einen Offset zu jedem Satz der "n" Zeilen/Spalten hinzu, mit jeder Zeile fortlaufend mit 1/n-tel des entsprechenden Abstandsmaßes:

Abbildung 14.2. 3×3 Raster mit einer Zeilenabstufung von 2:

Abbildung 14.3. 4×3 Raster mit einer Spaltenabstufung von 3:

Zähloptionen

Zählrichtung: Legt fest ob die Nummerierung erst entlang der Zeilen und dann zur nächste Zeile oder eine Spalte nach unten und dann zur nächsten Spalte. Beachten Sie, dass die Richtung der Nummerierung über das Vorzeichen des Abstands festgelegt wird: ein negativer Abstand ergibt eine rechts-nach-links oder unten-nach-oben Nummerierung.

Umgekehrte Nummerierung in abwechselnden Zeilen oder Spalten: Wenn aktiviert wechselt die Nummerierung (links-nach-rechts dann rechts-nach-links zum Beispiel) auf abwechselnden Zeilen oder Spalten. Ob sich Zeilen oder Spalten abwechseln hängt von der Zählrichtung ab. Diese Funktion ist hilfreich für Gehäuse wie DIP wo die Zählung auf einer Seite nach oben und die andere Seite nach unten läuft.

Zählung neu starten: Wenn Sie Elemente anordnen, die schon Nummern haben, die Zählung neu starten, ansonsten wenn möglich von der Nummer des Elements fortsetzen.

Zählschema

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.

Achsennummerierung: Welches "Alphabet" soll für die Nummerierung verwendet werden. Die Auswahl ist:

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.

14.3.3. Kreisförmige Anordnung

Kreisförmige Anordnungen ordnen Elemente um einen Kreis oder Kreisbogen an. Der Kreis ist festgelegt über den Ort der Auswahl (oder das Zentrum der ausgewählten Gruppe) und einem Mittelpunkt der angegeben wird. Unten ist der Einstellungsdialog für eine kreisförmige Anordnung:

Geometrische Optionen

Horizontales Zentrum, Vertikales Zentrum: Der Mittelpunkt des Kreises. Das Radiusfeld darunter wird automatisch aktualisiert wenn Sie diese ändern.

Winkel: Der winklige Unterschied zwischen zwei benachbarten Elementen in der Anordnung. Setzen Sie das auf Null, um den Kreis gleichförmig mit "Anzahl" Elementen aufzuteilen.

Anzahl: Anzahl von Elementen in der Anordnung (einschließlich des Original-Elements)

Drehung: Drehe jedes Element um seine eigene Position. Ansonsten wird das Element nur verschoben aber nicht gedreht (zum Beispiel wird eine rechteckige Lötfläche immer aufrecht sein, wenn diese Option nicht aktiviert ist).

Zähloptionen

Kreisförmige Anordnungen haben nur eine Abmessung und eine einfachere Geometrie als Raster. Die Bedeutung der verfügbaren Optionen sind die Gleichen wie für Raster. Elemente werden im Uhrzeigersinn nummeriert, für Gegen-Uhrzeigersinn müssen Sie einen negativen Winkel eingeben.

14.4. 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).

Kapitel 15. KiCad Skript-Steuerungs-Referenz

Scripting allows you to automate tasks within KiCad using the Python language.

Also see the doxygen documentation on Python Scripting Reference.

Sie können die Hilfe für das Python-Module betrachten, indem Sie in ihrem Terminal pydoc pcbnew eingeben.

Mit Skriptsteuerung können Sie erstellen:

Plugins: Diese Art von Skript wird geladen, wenn KiCad startet. Beispiele:

Footprint Assistenten: Helfen Ihnen dabei Footprints zu erstellen, indem Sie einfach Parameter eingeben. Lesen Sie dazu den zugehörigen Abschnitt Footprint Assistenten unten.

Datei Ein-/Ausgabe (geplant): Erlaubt Ihnen, Plugins für den Export/Import anderer Dateitypen zu schreiben.

Actions (experimental): Associate events to scripting actions or register new menus or toolbar icons.

Befehlszeilenskripte: Skripte die von der Befehlszeile benutzt werden können, zum Laden von Leiterplatten oder Bibliotheken, sie zu verändern und Ausgaben zu erstellen oder neue Leiterplatten.

It shall be noted that the only KiCad application that supports scripting is Pcbnew. It is also planned for Eeschema in the future.

15.1. KiCad Objekte

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.

Siehe BOARD Abschnitt unten.

15.2. Grundlegende API Referenz

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.

15.3. Laden und Speichern einer Leiterplatte

LoadBoard(filename): Lädt eine Leiterplatte aus einer Datei und gibt das BOARD Objekt zurück unter Verwendung des Dateiformats, das der Datei-Erweiterung entspricht.

SaveBoard(filename,board): Speichert ein BOARD Objekt in eine Datei unter Verwendung des Dateiformats, das der Datei-Erweiterung entspricht.

board.Save(filename): Das gleiche wie oben aber es ist eine Methode des BOARD Objekts.

Beispiel, das eine Leiterplatte lädt, alle Werte ausblendet und alle Referenzen einblendet. 

#!/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)

15.4. Auflisten und Laden von Bibliotheken

Bibliothek aufzählen, Module aufzählen, Lötflächen aufzählen. 

#!/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 ""

15.5. BOARD

BOARD ist das Grundobjekt in KiCad Pcbnew, es ist das Dokument.

BOARD enthält einen Satz von Objektlisten auf die über folgende Methoden zugegriffen werden kann, diese werden als durchgehbare Listen zurück gegeben, die durchgegangen werden können mit "for obj in list:"

board.GetModules(): Diese Methode gibt eine Liste von MODULE Objekten zurück. Alle auf der Leiterplatte verfügbaren Module werden hier dargestellt.

board.GetDrawings(): Gibt einen Liste von BOARD_ITEMS zurück, die zu Zeichnungen auf der Leiterplatte gehören.

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)

board.GetNetClasses(): Gibt eine Liste von Netzklassen zurück.

board.GetCurrentNetClassName(): Gibt die aktuelle Netzklasse zurück.

board.GetViasDimensionsList(): Gibt eine Liste der auf der Leiterplatte verfügbaren Durchmesser von Durchkontaktierungen zurück.

board.GetTrackWidthList(): Gibt eine Liste der auf der Leiterplatte verfügbaren Leiterbahnbreiten zurück.

Leiterplatten-Prüfungs-Beispiel. 

#!/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(),

15.6. Beispiele

15.6.1. Change a component pin’s paste mask margin

We only want to change pins from 1 to 14, 15 is a thermal pad that must be kept as it is. 

#!/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)

15.7. Footprint-Assistenten

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.

Unter Linux können Sie Ihre Benutzer-Plugins auch in $HOME/.kicad_plugins ablegen.

Einfaches Erstellen von Footprints mit dem Ausfüllen von Parametern. 

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()

15.8. 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 !).

Action plugin example: Add date to any text item with content $date$. 

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()