Forum: Platinen Kicad einheitliches vorgehen bei neuen Bauteilen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Matthias F. (frank91)


Lesenswert?

Hallo,

ich stelle gerade von Eagle V7.7 zu Kicad V8 um.
Eingearbeitet habe ich mich bereits in Kicad.
Jedoch gibt es für Probleme oft mehrere Herangehensweisen um diese zu 
Lösen.
Daher wollte ich wissen, wie ihr sowas handelt. Gerade bei großen 
Projekten.
Gibt es hier gängige Patterns?
Mir geht es nicht darum wie man diese Umsetzt, sondern was die beste 
Vorgehensweise ist.

Hauptsächlich beziehen sich bis jetzt meine Unklarheiten auf Dioden und 
LEDs.

-----

Legt ihr für jede Diode ein neues Symbol mit vorgeschlagenem Footprint 
an?
Falls ja bezieht ihr das Footprint dann auch die Standardpackages oder 
macht
ihr eine Kopie in einer eigenen Library?

Oder verwendet ihr einfach nur Symbol "D" und passt Wert und Footprint
händisch an?

-----

Legt ihr für Dioden/Leds welche kein Standardpackage besitzen nur das
Footprint(mit dem Namen des Bauteiles) an, oder legt ihr zusätzlich ein 
neues Symbol an, indem ihr "D" kopiert und ein Standard Footprint 
hinterlegt?

-----

Ist es noch sinnig bei großen Projekten Symbole oder Packages nur Global 
und nicht in der Library zu ändern?
Sollte ich Symbole und Packages aktualisieren wollen, sind meine 
Änderungen ja wieder weg.

-----

Ich habe eine LED im SOT23-3 Gehäuse.
Wenn ich das Standard Bauteil "D" auf SOT23-3 ändere passt die 
Pinbelegung nicht. "D" verwendet Pin 1&2. Die neue Diode benötigt jedoch 
Pin 1&3. Außerdem erhalte ich einen ERC Fehler, da einer der Pads nicht 
belegt ist.

-Erstelle ich nun ein angepasstes SOT23-3 Package, bei welchem die Pins 
nicht mehr dem eines normalen SOT23-3 entsprechen?

-Oder erstelle ich ein angepasstes Symbol, mit veränderten Pinnummern 
und einem NC Anschluss?

-Wäre in diesem Fall nicht A & C statt Nummern bei der Pinbelegung 
sinnvoller?

Nachtrag:
aktuell habe ich dies gelöst indem ich ein angepasstes Symbol erstellte 
habe. Dieses habe ich "D_ANC" genannt. Im Symbol selber habe ich Pin 2 
angelegt und diesen als unsichtbar und unverbunden eingestellt. Somit 
konnte ich das Standard SOT23-3 Package verwenden.

: Bearbeitet durch User
Beitrag #7825268 wurde vom Autor gelöscht.
von Urban (ubn)


Lesenswert?

Es beantwortet zwar nicht deine Fragen (sorry), aber deine Fragen sind
eigentlich genau der Grund (bzw. einer der Gründe) warum LibrePCB
entstanden ist :) Das Library Management ist deutlich ausgeklügelter,
bildet die reale Welt der Bauteile ab und gibt einen klaren Workflow vor
damit nicht so ein Wildwuchs entsteht. Siehe z.B.
https://librepcb.org/features/library-concept/ (die Videos sind schon
etwas älter aber die darin erklärten Konzepte sind noch immer aktuell).

(Disclaimer: Ich bin "involviert" im LibrePCB Projekt)

von Andreas M. (amesser)


Lesenswert?

Matthias F. schrieb:
> Oder verwendet ihr einfach nur Symbol "D" und passt Wert und Footprint
> händisch an?

Hinter dem Standard-Dioden Symbol ist doch gar kein Footprint 
hinterlegt. Man nimmt das und trägt den Footprint den man braucht 
händisch ein, wo ist das Problem?

Matthias F. schrieb:
> -Erstelle ich nun ein angepasstes SOT23-3 Package, bei welchem die Pins
> nicht mehr dem eines normalen SOT23-3 entsprechen?

Nein. Man nimmt eines der vorgefertigen Diodensymbole für SOT-23 Dioden, 
z.B. BAS19 und ändert einfach den Value auf den Typ den man gerne hätte.

Matthias F. schrieb:
> Ist es noch sinnig bei großen Projekten Symbole oder Packages nur Global
> und nicht in der Library zu ändern?
> Sollte ich Symbole und Packages aktualisieren wollen, sind meine
> Änderungen ja wieder weg.

?

Ich habe mir einfach eine eigene Sammlung von Bibliotheken für Symbole & 
Footprints gemacht wo nötig. Die zieh ich dann je nach Bedarf in die 
Projekte ein. Bei einigen Projekten habe ich dann zusätzlich eine 
"ProjectSymbols" bzw "ProjectFootprints" Bibliothek mit im Projekt 
liegen wo angepasste Symbole und Footprints liegen. (z.B. für Mikro 
Controller mit 100+ Pins wo ich die Pins nach Projektbedarf dann auf 
mehrere Untersymbole (Kicadsprech: Komponenten) aufteile damit ich die 
Schaltpläne splitten kann.

von Kevin K. (nemon) Benutzerseite


Lesenswert?

Es hängt bei mir davon ab, was ich in der BOM sehen möchte.
Ein generischer Widerstand 0805 1 kOhm 1 % kommt  aus einer generischen 
Bibliothek, hinter der keine Herstellerbezeichnung liegt. Die verwendet 
ein klassisches, europäisches Widerstandssymbol und ein Standard 
0805-Package. Beim Bestellen / bestücken nehme ich dann auch irgendeinen 
passenden Widerstand. An einer Stelle soll genau der eine 0,01 % 47 k 5 
ppm/K-Widerstand von VPG rein. Der ist dann als eigenes Bauteil angelegt 
mit dem Standard Widerstandssymbol, mit dem Standardgehäuse, aber eben 
nicht als generischer Widerstand, sondern eben mit der exakten 
Herstellerbezeichnung.

In der exportierten BOM steht dann so was wie
R1, R2, R7, R123 | 1 k 1 % | 0805 | (leer)
R3 | 47k 0,01 % 5 ppm | RAD 5,8x2,2 | Y087547K0000T0L

von Rainer W. (rawi)


Lesenswert?

Kevin K. schrieb:
> Die verwendet ein klassisches, europäisches Widerstandssymbol und
> ein Standard 0805-Package. Beim Bestellen / bestücken nehme ich dann
> auch irgendeinen passenden Widerstand.

Das Package hängt vom Lötprozess ab, d.h. mit einem Standard 
0805-Package kommt man nicht weit.

von Frank K. (fchk)


Lesenswert?

Es kommt auch auf das Umfeld an. Für meine eigenen Projekte reichen 
generische Bibliotheken, die Symbol und Footprint enthalten und wo ich 
im Kommentar nur den Wer nachtrage.

Bei meinem Arbytegeber werden alle Prozesse in der Warenwirtschaft 
abgebildet. Hier braucht jedes Bauteil seine eigene Kaufteilnummer, 
wobei auch die nackte Leiterplatte ein Kaufteil mit einer Nummer ist und 
damit in der Stückliste auftauchen muss. Die Damen in der Bestückung 
schauen auch nur auf die Kaufteilnummer, alles andere ist denen egal. 
Die bestückte Leiterplatte ist dann eine Fertigungsbaugruppe, die 
natürlich auch wieder ihre Fertigungsbaugruppennummer bekommt. Mehrere 
Fertigungsbaugruppen und Kaufteile bilden dann ein Gerät mit einer 
Gerätenummer.

Das alles muss ich natürlich auch im EDA abbilden. Der Projektname ist 
die Fertigungsbaugruppennummer, jedes Bauteil muss seine Kaufteilnummer 
als Bibliotheksattribut mitbringen, die Leiterplatte taucht als 
Mechanikbauteil im Schaltplan mit Kaufteilnummer und 
Fertigungsbaugruppennummer auf etc. pp.

fchk

: Bearbeitet durch User
von Kevin K. (nemon) Benutzerseite


Lesenswert?

Rainer W. schrieb:
> Kevin K. schrieb:
>> Die verwendet ein klassisches, europäisches Widerstandssymbol und
>> ein Standard 0805-Package. Beim Bestellen / bestücken nehme ich dann
>> auch irgendeinen passenden Widerstand.
>
> Das Package hängt vom Lötprozess ab, d.h. mit einem Standard
> 0805-Package kommt man nicht weit.

Korrekt! Gerade SMD-Bauteile benötigen für eine Handlötung oft Pads, die 
weiter nach außen gezogen sind. Besonders bei SMD-Elkos und -Potis ist 
mir das besonders aufgefallen. Die Höhe der Bauteile ist bei Hand- und 
Maschinenbestückung auch relevant, in beiden Fällen gilt üblicherweise 
von flach nach hoch.

von Matthias F. (frank91)


Lesenswert?

Urban schrieb:
> Es beantwortet zwar nicht deine Fragen (sorry), aber deine Fragen sind
> eigentlich genau der Grund (bzw. einer der Gründe) warum LibrePCB
> entstanden ist :) Das Library Management ist deutlich ausgeklügelter,
> bildet die reale Welt der Bauteile ab und gibt einen klaren Workflow vor
> damit nicht so ein Wildwuchs entsteht. Siehe z.B.
> https://librepcb.org/features/library-concept/ (die Videos sind schon
> etwas älter aber die darin erklärten Konzepte sind noch immer aktuell).
>
> (Disclaimer: Ich bin "involviert" im LibrePCB Projekt)

Danke für deine Antwort.
Leider ist Kicad bei uns bereits gesetzt.
Ich habe mir das Video jedoch dennoch angesehen.
Der Ansatz mit dieser Package Library hat schon was :-)

von Matthias F. (frank91)


Lesenswert?

Andreas M. schrieb:
> Matthias F. schrieb:
>> Oder verwendet ihr einfach nur Symbol "D" und passt Wert und Footprint
>> händisch an?
>
> Hinter dem Standard-Dioden Symbol ist doch gar kein Footprint
> hinterlegt. Man nimmt das und trägt den Footprint den man braucht
> händisch ein, wo ist das Problem?

Es gibt kein Problem. Ich will nur eure Herangehensweise wissen.
Legt ihr jede Diode als Bauteil an oder nehmt ihr bestehende Bauteile 
und passt einfach Package und/oder Wert an?

Falls ihr zum Beispiel ein neues Symbol in einer eigenen Library 
erstellt, verweist ihr dann auf das Kicad Standard Package oder erstellt 
ihr eine Kopie des Packages in eurer neuen eigenen Library?

> Matthias F. schrieb:
>> -Erstelle ich nun ein angepasstes SOT23-3 Package, bei welchem die Pins
>> nicht mehr dem eines normalen SOT23-3 entsprechen?
>
> Nein. Man nimmt eines der vorgefertigen Diodensymbole für SOT-23 Dioden,
> z.B. BAS19 und ändert einfach den Value auf den Typ den man gerne hätte.

Ah stimmt, den habe ich gar nicht gesehen.
Danke für den Tipp.
Für Dioden im SOT23-3 Package sind tatsächlich ein paar angelegt. Jedoch 
nicht allgemein sondern nur bezogen auf echte Bauteile.
In meinem Fall ist es jedoch eine Zehner Diode, so dass das Symbol nicht 
passt. Hier konnte ich in der Kicad Library nichts finden, so dass ich 
ein neues erstellen musste.

> Matthias F. schrieb:
>> Ist es noch sinnig bei großen Projekten Symbole oder Packages nur Global
>> und nicht in der Library zu ändern?
>> Sollte ich Symbole und Packages aktualisieren wollen, sind meine
>> Änderungen ja wieder weg.
>
> ?
>
> Ich habe mir einfach eine eigene Sammlung von Bibliotheken für Symbole &
> Footprints gemacht wo nötig. Die zieh ich dann je nach Bedarf in die
> Projekte ein. Bei einigen Projekten habe ich dann zusätzlich eine
> "ProjectSymbols" bzw "ProjectFootprints" Bibliothek mit im Projekt
> liegen wo angepasste Symbole und Footprints liegen. (z.B. für Mikro
> Controller mit 100+ Pins wo ich die Pins nach Projektbedarf dann auf
> mehrere Untersymbole (Kicadsprech: Komponenten) aufteile damit ich die
> Schaltpläne splitten kann.

Ah ok, das klingt für mich sinniger wie Symbole und Package nur lokal zu 
verändern. Danke für den Tipp, das werde ich auch so umsetzen.

von Kevin K. (nemon) Benutzerseite


Lesenswert?

Matthias F. schrieb:
> Ah ok, das klingt für mich sinniger wie Symbole und Package nur lokal zu
> verändern. Danke für den Tipp, das werde ich auch so umsetzen.

Für die Community ist ein korrekt erstelltes und veröffentlichtes 
Bauteil auch wertvoll.

von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Kevin K. schrieb:
> Für die Community ist ein korrekt erstelltes und veröffentlichtes
> Bauteil auch wertvoll.

Ja, das stimmt. Allerdings gibt es (derzeit) ein paar zu 
berücksichtigende Aspekte, ein neues Bauteil in die offiziellen 
KiCad-Bibliotheken aufnehmen zu lassen:

1. Die Schlange an Pull Requests ist ziemlich lang. Derzeit muss man von 
rund einem Jahr Wartezeit ausgehen, bis die KiCad Librarians das Bauteil 
akzeptieren.

2. Häufig erfüllen neu eingereichte Bauteile aber nicht alle 
Anforderungen bzw. Richtlinien und müssen ggf. nachgebessert werden. 
Daher muss man als Ersteller schon genau die KLC (KiCad Library 
Conventions) berücksichtigen.

3. Insbesondere bei Bauteilen, die Bestandteil einer ganzen Familie 
ähnlicher Bauteile sind, geht der Trend sehr deutlich in die Richtung 
von skriptbasierten Generatoren. Da nützt es also gar nichts, ein 
einzelnes neues Bauteil abzukippen, das man für die eigenen Zwecke 
benötigt, sondern es wird zu recht erwartet, dass man auf der Basis der 
vorhandenen Generatoren einen neuen baut.

Es ist deutlich zu empfehlen, zumindest einen Bibliotheks-"Grundkurs" 
auf einer der KiCad-Tagungen absolviert zu haben. Dort lernt man dann 
auch einige der Librarians persönlich kennen und erfährt aus erster 
Hand, an welchen Stellen es klemmt und wo dringender Bedarf besteht.

4. Natürlich steht es einem frei, Bibliotheken außerhalb der offiziellen 
Bibliotheken zu veröffentlichen. Man findet ja auch so einen Haufen 
Open-Source-Projekte bei Github und Konsorten, aus denen man sich 
einzelne Symbole oder Footprints herauspicken kann. Deren Qualität 
rangiert aber auch hier von völlig unterirdisch schlecht und fehlerhaft 
bis zu wahren Meisterstücken.

5. In eigenen, nicht veröffentlichten Footprints kann man recht 
problemlos 3D-Modelle verwenden, die man sich im Internet 
zusammengesucht hat, z.B. von Herstellerseiten oder 3Dcontentcentral. 
Für diese Modelle gelten häufig recht restriktive Lizenzbedingungen, die 
sich nicht mit den offiziellen KiCad-Bibliotheken vertragen. Seit KiCad 
solch eine wichtige Position erlangt hat wie in den letzten Jahren, 
mussten leider auch viele der offiziellen Footprints wieder ihrer 
urheberrechtlich problematischen 3D-Modelle beraubt werden. Dabei findet 
man im Allgemeinen im Footprint auch noch den entsprechenden Verweis, so 
dass man an der Stelle auch das separat beschaffte 3D-Modell wieder 
ablegen kann.

6. Wenn man ein Bauteil für die offiziellen Bibliotheken einreicht, 
müssen insbesondere auch die 3D-Modelle rechtlich einwandfrei sein. Und 
es muss die Quelle, d.h. z.B. eine FreeCad-Projektdatei mit eingereicht 
werden.

Hier die Bibliotheksrichtlinien:
https://klc.kicad.org/

von Mathias N. (Firma: Kobold Inc) (alfrede)


Lesenswert?

Du kannst ja mal hier schauen, dort wird beschrieben wie man sich eine 
eigene Library zusammenstellt.
https://learn.sparkfun.com/tutorials/beginners-guide-to-kicad/creating-a-custom-kicad-footprint-library

Mfg

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.