Forum: Platinen Saubere Librarys erstellen mit neuen Kicad Versionen


von Laura (Gast)


Lesenswert?

Ich möchte mir eigene Librarys für Kicad erstellen, scheitere jedoch 
vermutlich an der veralteten Dokumentation, in denen das "neue" .pretty 
Format nicht erwähnt wird.
Wie ich es von professionellen PCB-Tools gewohnt bin, möchte ich für 
jede Komponente einen eigenen Libraryeintrag mit fest vergebenen 
Footprint erstellen. Also z.B. einen Kondensator 100nF 0603 25V und 
einen weiteren 100nF 0603 16V usw.
Wie gehe ich die Libraryerstellung am besten an? Was muss beachtet 
werden?

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Laura.

Laura schrieb:

> Ich möchte mir eigene Librarys für Kicad erstellen, scheitere jedoch
> vermutlich an der veralteten Dokumentation, in denen das "neue" .pretty
> Format nicht erwähnt wird.

Das ist gut möglich. Aber so wirklich viel hat sich nicht geändert.

> Wie ich es von professionellen PCB-Tools gewohnt bin, möchte ich für
> jede Komponente einen eigenen Libraryeintrag mit fest vergebenen
> Footprint erstellen. Also z.B. einen Kondensator 100nF 0603 25V und
> einen weiteren 100nF 0603 16V usw.

Das ist nicht unbedingt professionell, das ist die "Eagelitis" und führt 
zu riesigen aufgeblasenen und labyrintischen Bibliotheken, in denen der 
gleiche 0603 Footprint zigfach vorkommt.

Aber wenn Du sowas vorhast, ok, das geht ganz einfach. Das Handling des 
Bibliothekseditors hat sich nicht wesentlich verändert.

1 Möglichkeit: Du gehst den gleichen Weg wie mit dem alten Datenformat. 
Entweder Du legst Deinen ersten der identischen Footprints neu an, wenn 
er denn noch nicht existiert, oder Du wählst halt einen existierenden.
Unter "Module properties" aus der oberen Menueleiste trägst Du halt 
einen neuen Namen ein, und unter "Value" deinen aktuellen Wert.
Dann speicherst Du den so geänderten Footprint mit "save module in 
active Library" in eine (entsprechend aktivierte) Bibliothek.
Fertig.

2 Möglichkeit: Diese macht sich die Tatsache zu nutze, das im neuen 
.pretty Format jeder Footprint separat in einem File gespeichert wird, 
das in einem Ordner liegt, der idealerweise (aber nicht 
zwingendermassen) aus dem Bibliotheksnamen gefolgt von ".pretty" 
besteht. Dieser Ordner stellt die Library dar.

Du gehst also nun mit einer Dateiverwaltung Deiner Wahl in diesen 
Ordner, und stellst Kopien Deines immer gleichen Footprintes an, die Du 
entsprechend ummbenennst und wieder im gleichen Ordner speicherst (oder 
einem anderen, wenn die Footprints denn in einer anderen Bibliothek 
landen sollen). Anschliessend startest Du KiCad neu (damit die 
Bibliothek neu eingeladen wird) und lädst Du jeden Footprint einmal in 
den Moduleditor, und änderst dort den Value entsprechend dem Namen bzw. 
Deinen Wünschen.
Letzteres kannst Du auch statt mit dem Moduleditor mit einem Texteditor 
machen. Ist möglicherweise sogar schneller. ;O)
Dann müsstest Du "(module DeinFilename"......)" und "(fp_text value 
DeinWunschValue......)" ändern.

Das Prinzip: Ein Footprint > ein File und eine Library > ein Ordner 
lässt also sehr bequem Deinen lieblings Dateimanager als 
Footprintmanager verwenden. ;O)

War es das, wass Du wissen möchtest?

Einen Taken sinnvoller wäre es, den immer gleichen Footprint an Symbole 
in einer dann entsprechend aufgeblasene Symbolbibliothek zu hängen.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

: Bearbeitet durch User
von Hmm... (Gast)


Lesenswert?

Bernd Wiebus schrieb:
> Das ist nicht unbedingt professionell, das ist die "Eagelitis" und führt
> zu riesigen aufgeblasenen und labyrintischen Bibliotheken, in denen der
> gleiche 0603 Footprint zigfach vorkommt.

Stimmt im Grunde, aber spätestens wenn man in einer Firma eine 
Bauteildatenbank hat und die BOM schon die richtigen internen 
Teilenummern enthalten muss kommt man kaum drumerhum. Der 100nF/16V/0603 
hat nunmal eine andere Bestellnummer als der 100nF/25V/0805.

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo hmm.

Hmm... schrieb:

>> Das ist nicht unbedingt professionell, das ist die "Eagelitis" und führt
>> zu riesigen aufgeblasenen und labyrintischen Bibliotheken, in denen der
>> gleiche 0603 Footprint zigfach vorkommt.
> Stimmt im Grunde, aber spätestens wenn man in einer Firma eine
> Bauteildatenbank hat und die BOM schon die richtigen internen
> Teilenummern enthalten muss kommt man kaum drumerhum. Der 100nF/16V/0603
> hat nunmal eine andere Bestellnummer als der 100nF/25V/0805.

Das ist ein Argument, zugegeben. Aber dann ist es immer noch sinnvoller, 
über das CSV File der BOM ein Skript zu hetzten, dass in Abhängigkeit 
von Value und Footprint dort die passende Bestellnummer einträgt. Es 
muss also nicht ein extra Footprint angelegt werden, sondern eine 
Datenbank, die Footprints und Values mit Bestellnummern verknüpft.

Persönlich mache ich sowas noch von Hand. ;O), aber ein Skript dafür 
wäre eine Idee. Dummerweise hab ich Null Ahnung von Datenbanken. :-(
Auf der anderen Seite: Wenn sowas zur Fertigung an einen Bestücker 
gegeben wird, übergibt man ihm im allgemeinen ein Spreadsheet, und lässt 
Ihn seine Bestellung (und Bestellnummern) selber machen, mit Ausnahme 
der Bauteile, die man nicht "generisch" haben möchte.

Wenn eine solche Datenbank existiert, muss sie auch gepflegt und 
angepasst werden. Denn Hersteller und Lieferanten können Wechseln.

Das Phython Skripting könnte dazu Erleichterungen bringen. Vieleicht mal 
in https://groups.yahoo.com/neo/groups/kicad-users/info nachfragen?

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von hmm... (Gast)


Lesenswert?

Das mit dem Skript wäre eine Idee,man muss ja keine komplette SQL 
Datenbank dahinter klemmen. Sqllite sollte recht einfach skriptbar sein.

Leider kann man sich das bei Auftragsentwicklungen manchmal nicht 
aussuchen. Die Hundertschaft die die Libs pflegt will ja beschäftigt 
werden ;)

Der eigentliche Krampf ist dann aber das Abstimmen der BOM wenn man mal 
eben 4k2 durch 4k7 ersetzen will und die bürokratischen Mühlen anlaufen 
um das passende Bauteil beim Kunden anzufordern da man ja selber nicht 
auf das Heiligtum zugreifen darf weil u.a. Auch Preise etc in der DB 
stehen.

Hatte da schon viel Spaß, weil die Bauteilverwalter meistens eher 
Kaufleute sind oder nicht die hellsten Birnen am Firmament.

von CAD 3D-Fan (Gast)


Lesenswert?

Bernd Wiebus schrieb:
> Das ist ein Argument, zugegeben. Aber dann ist es immer noch sinnvoller,
> über das CSV File der BOM ein Skript zu hetzten, dass in Abhängigkeit
> von Value und Footprint dort die passende Bestellnummer einträgt. Es
> muss also nicht ein extra Footprint angelegt werden, sondern eine
> Datenbank, die Footprints und Values mit Bestellnummern verknüpft.

Das müsste aber doch das PROG können, oder? Soweit mir bekannt werden 
aus den Bibliotheken beim switchen des Wertes oder einer 
Spannungsfestigkeit, bzw des Herstellers nur das virtuelle Bauteil 
geändert und damit der link auf ein Gehäuse.

Eagle hat doch in seinen Bauteil-Bibs auch jeweils nur einen link auf 
eine Gehäuseform.

Will man das nicht, stellt sich die Frage, ob man nicht generell beim 
Zeichnen des SCH darauf verzichtet, sich auf Spannungsfestigkeiten, 
Lieferant und Hersteller festzulegen. Auch die Gehäuseform kann ja 
variieren: Es gibt Bauteile mit absolut gleichen footprints aber leicht 
unterschiedlichen Bauhöhen. Und dann wären da noch die Themen RoHs und 
PB-free (Löttemperatur).

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo CAD-3D-Fan.

CAD 3D-Fan schrieb:

>> Das ist ein Argument, zugegeben. Aber dann ist es immer noch sinnvoller,
>> über das CSV File der BOM ein Skript zu hetzten, dass in Abhängigkeit
>> von Value und Footprint dort die passende Bestellnummer einträgt. Es
>> muss also nicht ein extra Footprint angelegt werden, sondern eine
>> Datenbank, die Footprints und Values mit Bestellnummern verknüpft.
>
> Das müsste aber doch das PROG können, oder? Soweit mir bekannt werden
> aus den Bibliotheken beim switchen des Wertes oder einer
> Spannungsfestigkeit, bzw des Herstellers nur das virtuelle Bauteil
> geändert und damit der link auf ein Gehäuse.

Bei KiCad wird einfach ein Texteintrag in der Schaltplan und der 
Boarddatei geändert. Eine Verbindung auf einen Footprint ergibt sich 
dann durch einen eintrag in der Netzliste, der dann wieder als Name im 
Board auftaucht. Im Footprint wiederum existiert ein Eintrag (diesmal 
als Pfad) auf ein 3D Modell usw.

Ob und was davon Du das als Link bezeichnest....

Jedenfalls musst Du irgendwann einen Schnitt zwischen 
Schaltplaneditor/Boardlayouter und einer Warenwirtschaftsdatenbank 
machen.
das sind halt verschiedene Aufgabenstellungen, auch wenn eine gemeinsame 
Schnittstelle wünschenswert ist.

Proprietäre Warenwirtschaftssysteme scheuen aber im allgemeinen solche 
offen gelegte Schnittstellen. Selbst der Import/Export per Exelsheed 
oder CSV-Datei ist oft ein Problem.

Jedenfalls könnte ich mir eine kleine Datenbank, die Bauteilbezeicnungen 
mit Bauteileigenschften (Werte), Gehäuseformen und Markings einerseits 
und Symbole und Footprints mit Gehäusebauformen, Werten, Bestellnummern 
bei Lieferanten sowie Preisen andererseitz in Beziehung setzt, gut 
vorstellen.
Aber Bestellnumern und Preise nachzupflegen stelle ich mir problematisch 
vor.
Einkäufer könnten dazu mehr Erfahrung beitragen.

Aber hier ist eigentlich der Bereich eines Schaltplaneditors und 
Boardlayouters eindeutig verlassen.

Hier im Forum schreiben doch Leute an einer Lagerverwaltung....das ist 
eher die Richtung.

>
> Eagle hat doch in seinen Bauteil-Bibs auch jeweils nur einen link auf
> eine Gehäuseform.
> Will man das nicht, stellt sich die Frage, ob man nicht generell beim
> Zeichnen des SCH darauf verzichtet, sich auf Spannungsfestigkeiten,
> Lieferant und Hersteller festzulegen.

Auf Lieferant und Hersteller festlegen sollte man sich tatsächlich nicht 
in einem Layoutprogramm, das ist aufgabe des Einkaufs und der 
Warenwirtschaft (Auch wenn Kleinunternehmer Entwickler und Einkäufer in 
Personalunion sind, aber dann langen meist auch Excellsheed oder 
CSV-Datei).

Aber die Festlegung von Bauteileigenschaften im Schaltplan ist dagegen 
eigentlich sehr sinnvoll.

Spätestens beim Erstellen des Layouts MÜSSEN die Bauteileigenschaften 
bekannt sein, weil diese starken Einfluss auf die Wahl des Gehäuses und 
damit das Layout haben. Der Schaltplan ist also schon der richtige Ort 
dazu.


> Auch die Gehäuseform kann ja
> variieren: Es gibt Bauteile mit absolut gleichen footprints aber leicht
> unterschiedlichen Bauhöhen.

Richtig.

> Und dann wären da noch die Themen RoHs und
> PB-free (Löttemperatur).

Und jetzt stell Dir eine Symbolbibliothek vor, die für die komplette E24 
Reihe über zig Dekaden immer den gleichen Footprint enthält. Und das 
dann nochmal für RoHs und PB-free getrennt.
Das gibt eine labyrintische Bibliothek.
Besser ein Symbol für einen Widerstand, der dann mit verschiedenen 
Footprints und 3D-Modellen kombiniert werden kann.
Werte dann über den Werteeintrag, der aber dann irgendwie 
"standardisiert" werden sollte, um einer Datenbank das Erkennen zu 
erleichtern.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

von Michael_ (Gast)


Lesenswert?

CAD 3D-Fan schrieb:
> Eagle hat doch in seinen Bauteil-Bibs auch jeweils nur einen link auf
> eine Gehäuseform.

Was redest du da?
Du kannst einem Device irgend ein Package zuordnen, Hauptsache die 
PIN-Bezeichnung stimmt überein.
Beispielsweise gibt es die Bibliothek SMD.
Da kannst du ruckzuck jedem bedrahteten R, C, IC ein SMD-Footprint 
vermachen.

von hmm... (Gast)


Lesenswert?

Bernd Wiebus schrieb:
> Und jetzt stell Dir eine Symbolbibliothek vor, die für die komplette E24
> Reihe über zig Dekaden immer den gleichen Footprint enthält. Und das
> dann nochmal für RoHs und PB-free getrennt.
> Das gibt eine labyrintische Bibliothek. Besser ein Symbol für einen
> Widerstand, der dann mit verschiedenen Footprints und 3D-Modellen
> kombiniert werden kann.
> Werte dann über den Werteeintrag, der aber dann irgendwie
> "standardisiert" werden sollte, um einer Datenbank das Erkennen zu
> erleichtern.

Das wird auch bei den Firmen wo man pro Widerstand ein eigenes Symbol 
verwendet soweit ich weiß nicht gemacht. Mir ist dort immer ein einziger 
Footprint pro Standardbauteil begegnet auf den dann verlinkt wird. Also 
ein Symbol für 1k/0805 und eines für 10k/0805, aber beide nehmen den 
selben Footprint.

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo hmm.

hmm... schrieb:

>> Und jetzt stell Dir eine Symbolbibliothek vor, die für die komplette E24
>> Reihe über zig Dekaden immer den gleichen Footprint enthält. Und das
>> dann nochmal für RoHs und PB-free getrennt.
>> Das gibt eine labyrintische Bibliothek. Besser ein Symbol für einen
>> Widerstand, der dann mit verschiedenen Footprints und 3D-Modellen
>> kombiniert werden kann.
>> Werte dann über den Werteeintrag, der aber dann irgendwie
>> "standardisiert" werden sollte, um einer Datenbank das Erkennen zu
>> erleichtern.
>
> Das wird auch bei den Firmen wo man pro Widerstand ein eigenes Symbol
> verwendet soweit ich weiß nicht gemacht. Mir ist dort immer ein einziger
> Footprint pro Standardbauteil begegnet auf den dann verlinkt wird. Also
> ein Symbol für 1k/0805 und eines für 10k/0805, aber beide nehmen den
> selben Footprint.

Ja. Aber Du hast trozdem zig mal das Symbol, halt nicht mit dem 
Footprint selber, sondern mit dem "Link" (oder mit "Namen" wie bei 
KiCad). Das reduziert NICHT die Anzahl der Symbole, es sei vieleicht, Du 
bietest eine Auswahlbox pro Symbol an, mit Bauform und anderen 
Parametern......das kann aber schnell genauso aufwändig werden, und 
unhandlicher in der Bedienung. Vor allem, weil Du dann immer auch alle 
die Parameter beachten musst, die existieren, egal ob sie für Dein 
konkretes Projekt relevant sind oder nicht.
Weil in einer Auswahlbox könnte ja ein trozdem unpassender Defaultwert 
eingetragen sein. ("leer" wäre dann möglicherweise als Defaultwert ein 
guter Kompromiss). Und was machst Du z.B. mit Parametern, die für 
irgendwen wichtig sind, aber selten verwendet werden? Gewicht z.b. ist 
in Raumfahrt und Luftfahrt eine Nummer. Und es wird auch bei 
elektronischen Bauteilen darauf geachtet. Entsprechende Datenblätter 
enthalten gelegentlich solche Angaben.....aber in einem Designprogramm 
würde das ausufern.

Dann ist es für kleine und mittlere Lösungen besser, Einträge in 
Textform zu machen.

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.dl0dg.de

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.