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