Forum: Platinen Kicad symbol mit mehreren Komponenten


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 Manfred V. (dg4aai)


Lesenswert?

Ich teste seit einigen Tagen Kicad. Jetzt bin ich auf ein für mich nicht 
lösbares Problem gestoßen.
Ich möchte ein Symbol mit 3 Komponenten erstellen. Es soll ein 
Miniaturrelais Typ 351 mit zwei Umschaltkontakten werden. Ich möchte die 
drei Komponenten Spule und beide Kontktsätze im Schaltplan frei 
verschieben können so wie z.B die Gatter eines Ics.
Standartsymbole und Footprints habe ich schon erstellt. Ein Symbol mit 3 
Komponenten zu erzeugen gelingt mir einfach nicht.
In den Tutorials finde ich auch keine Hilfe.
Kann mir jemand weiterhelfen?

von g457 (Gast)


Lesenswert?

Im Library-Editor in den 'Componenent Properties' [0] -> 'Options' die 
'Number of Units' hochdrehen, dann wird in der Toolbar die 
Dropdown-Liste der Teilkomponenten aktiviert (mit 'Part A' zu Beginn).

HTH

[0] ..bitte ggf. kreativ adäquat übersetzen.

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo g457 schrieb:

> Im Library-Editor in den 'Componenent Properties' [0] -> 'Options' die

> [0] ..bitte ggf. kreativ adäquat übersetzen.

"Komponenten Eigenschaften"?

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

von Bernd W. (berndwiebus) Benutzerseite



Lesenswert?

Manfred Völkel schrieb:

> Ich möchte ein Symbol mit 3 Komponenten erstellen. Es soll ein
> Miniaturrelais Typ 351 mit zwei Umschaltkontakten werden. Ich möchte die
> drei Komponenten Spule und beide Kontktsätze im Schaltplan frei
> verschieben können so wie z.B die Gatter eines Ics.

Soetwas wie 
"relay-2xchange_dpdt_detachedrepresentation_reve_date13sep2012.lib" aus 
dem Anhang?
Edit: Irgendwie sind beim upload die letzten Buchstaben des Dateinahmens 
weggefallen. Bitte ergänzen. Zumindest das ".lib" macht das Leben 
einfacher. :O)

> Ein Symbol mit 3
> Komponenten zu erzeugen gelingt mir einfach nicht.
> In den Tutorials finde ich auch keine Hilfe.
> Kann mir jemand weiterhelfen?

Hilft Dir Beitrag "Re: Kicad: Versorgungsleitungen bei ICs mit mehrern Komponenten" und 
folgende weiter?

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

von dg4aai (Gast)


Lesenswert?

Hallo g487 (Gast) und Bernd,
danke für euere Hinweise es gelingt mir aber weiterhin nicht, das Symbol 
zu erzeugen.
Muß ich die Komponenten einzeln zeichnen und abspeichern oder alle drei 
Komponenten gleichzeitig speichern?
Anscheinend bin ich zu dumm um mit Kicad zu arbeiten.
Ich werde bei EAGLE bleiben, geht das alles einfacher.

Nochmals Danke für eure Infos

Gruß
Manfred

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Manfred.


> Muß ich die Komponenten einzeln zeichnen und abspeichern oder alle drei
> Komponenten gleichzeitig speichern?

Beim ERZEUGEN speicherst alle drei Teilkomponenten GLEICHZEITIG ab.
Du wählst nur oben rechts in dem Auswahlkästchen aus der Anzahl der 
Teilkomponenten, die Du beim Anlegen des Bauteils angegeben hast, die 
jeweilige aktuelle zum Bearbeiten. Wenn Du Speicherst, speicherst Du 
alle Teilkomponenten.

Beim EINSETZTEN in den Schaltplan holst Du die Teilkomponenten 
NACHEINANDER in den Schaltplan.
Das ist insofern logisch, als das Du ja bei dem Erzeugen des Symbols 
alle drei anlegen willst, sie gehören ja zusammen und sind ein 
Teil....darum bearbeitest Du sie ja auch gleichzeitig und speicherst sie 
gleichzeitig.
Beim Einsetzten im Schaltplan stehen die Teilkomponenten aber an 
verschiedenen Stellen (sonst wolltest Du keine aufgelöste Darstellung). 
Darum plazierst Du sie nacheinander (doch dazu später).

> Anscheinend bin ich zu dumm um mit Kicad zu arbeiten.
> Ich werde bei EAGLE bleiben, geht das alles einfacher.

Don't panic. Wer in Eagle arbeitet und ohne hierarchische Schaltpläne 
arbeiten muss, kann für kicad nicht zu doof sein. ;O)
Ich gebe Dir aber insofern recht, als das gerade das Erstellen solcher 
Komponenten einen Bug hat.

Und zwar funktioniert nur das erstellen grafischer Objekte (Kreis, 
Rechteck, Linie
ec.) in der erwarteten Form durch das setzten einer Markierung bei 
"Gemeinsam genutzt von allen Komponenten des Bauteils". Bei Markieren 
taucht das Objekt in allen Teilkomponenten auf, wird nicht markiert, nur 
in der Teilkomponente, wo es erzeugt wurde, oder in der Teilkomponente, 
in der Du die Markierung wieder entfernst (wenn Du beim letzten Objekt 
eine Markierung hattest, wird sie defaultmäßig beim nächsten Objekt auch 
verwendet)

Bei Pins funktioniert das leider nicht ganz so. Es werden grundsätzlich 
die Pins in allen Teilkomponenten gezeigt. Egal ob Du die Markierung 
gesetzt hast oder nicht.
Wenn Du sie nur in einer Teilkomponente haben willst, geht das nur durch 
ENTFERNEN der Markierung in der Teilkomponente, in der Du den Pinn sehen 
willst. was aber Bedeutet, das Du vorher einmal Markiert haben musst, 
und dann mit OK bestätigt haben musst. Nun kannst Du die Markierung auch 
wieder ENTFERNEN. ;O)

Wenn Ich die Einzelkomponenten später in den Schaltplan hole, und 
mehrere gleiche in Teilkomponenten zerlegte Symbole verwende, hat 
entweder die Autonannotation oder ich (so klar ist das nicht) ein 
Problem mit der Zuordnung.
Darum hole ich immer alle Teilkomponenten direkt hintereinander in den 
Schaltplan und Annotiere sie sofort, damit das klargestellt ist. 
Möglicherweise gibt es aber effizientere Methoden, mit der Problematik 
umzugehen.

Ich arbeite eh nicht gerne mit der aufgelösten Darstellung. Egal ob 
unter Eagle oder Kicad, weil sie eigentlich den logischen Zusammenhang 
"zerreist" und nur Vorteile bringt, wenn der Schaltplan sehr voll ist. 
Durch die Möglichkeit in Kicad hierarchische Schaltpläne anzulegen, 
tritt das aber in Kicad eigentlich nie auf.....;O)

Verwendete Version, auf den diese Bugbeschreibung zutrifft:
Application: Eeschema
Version: (2013-03-30 BZR 4007)-stable
Build: wxWidgets 2.8.10 (no debug,Unicode,compiler with C++ ABI 1002,GCC 
4.4.5,wx containers,compatible with 2.6)
Platform: Linux 2.6.32-5-686 i686, 32 bit, Little endian, wxGTK
Boost version: 1.53.0
Options: USE_PCBNEW_NANOMETRES=ON
         KICAD_GOST=OFF
         USE_WX_GRAPHICS_CONTEXT=OFF
         USE_WX_OVERLAY=OFF
         KICAD_SCRIPTING=OFF
         KICAD_SCRIPTING_MODULES=OFF
         KICAD_SCRIPTING_WXPYTHON=OFF

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

von Manfred V. (dg4aai)


Lesenswert?

Hallo Bernd,

dank deiner Hilfe habe ich jetzt das Prinzip begriffen.
Einer weiteren Verwendung von Kicad steht jetzt nichts mehr im Wege.

Nochmals vielen Dank.

Gruß Manfred

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Manfred.

> dank deiner Hilfe habe ich jetzt das Prinzip begriffen.
> Einer weiteren Verwendung von Kicad steht jetzt nichts mehr im Wege.

Das freut mich zu hören. ;O)

ich habe das Problem auch direkt mal als Bug gemeldet: 
https://bugs.launchpad.net/kicad/+bug/1171171

Der Stolperer kann glaub ich richtig Kopfzerbrechen bereiten, wenn man 
den Trick nicht kennt....

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

von g457 (Gast)


Lesenswert?

>> Im Library-Editor in den 'Componenent Properties' [0] -> 'Options' die
>> [0] ..bitte ggf. kreativ adäquat übersetzen.
>
> "Komponenten Eigenschaften"?

Den Rest auch. Und nein, ich bin nicht zu doof das selbst zu übersetzen. 
Nur mein System ist englisch und ich möchte andere nicht mit 
fehlerbehafteten Übersetzungen mehr verwirren denn unterstützen. 
Deswegen..  das kann sich jeder, der selbst vor seinem System in seiner 
bevorzugten Sprache sitzt, selbst unmittelbar übersetzen.

Nix für ungut

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo g457.

> Den Rest auch. Und nein, ich bin nicht zu doof das selbst zu übersetzen.
> Nur mein System ist englisch und ich möchte andere nicht mit
> fehlerbehafteten Übersetzungen mehr verwirren denn unterstützen.
> Deswegen..  das kann sich jeder, der selbst vor seinem System in seiner
> bevorzugten Sprache sitzt, selbst unmittelbar übersetzen.
> Nix für ungut

Ok. So meintest Du das.

Irgendwie ist hier auf meinem Rechner etwas mit den 
Umgebungseinstellungen kaputt. Ich habe also ein fröhliches 
Durcheinander von Englisch und Deutsch. ;O)
Da ich in absehbarer Zeit auf Debian-Wheezy aufrüsten werde, verkneife 
ich mir das
in Ordnung bringen.

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

von Reginald L. (Firma: HEGRO GmbH) (reggie)


Lesenswert?

Ich würde den Thread hier nochmal hochholen und keinen neuen erstellen, 
da ich denke, dass das hier gut reinpasst. Falls doch nicht, einfach 
löschen und ich erstelle dann doch einen neuen.

Wie ändere ich hier jetzt noch den Namen der einzelnen Komponenten? Also 
anstatt "Einheit A", "Einheit B", etc möchte ich bspw "xyz Power", "xyz 
Data".

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Reginald.

Reginald L. schrieb:

> Wie ändere ich hier jetzt noch den Namen der einzelnen Komponenten? Also
> anstatt "Einheit A", "Einheit B", etc möchte ich bspw "xyz Power", "xyz
> Data".

So wie Du es wünschst geht es leider nicht.

Bei solchen Bauteilen in aufgelöster Form besteht KiCad auf relativ enge 
Formalitäten, um nicht durcheinander zu kommen.

Natürlich kanst Du die Referenz editieren, aber dabei gehen bestimmte 
Sachen eben nicht, oder haben "merkwürdige" Konsequenzen.

1: Der Suffix Buchstabe einer Unit muss erhalten bleiben. Darum kannst 
Du den auch nicht editieren.
2: Jeder Referenzbezeichner muss auch eine Zählnummer enthalten.
3: Prefix und Zählnummer eines Bauteils müssen bei allen 
zusammengehörenden Units auch wirklich gleich sein. Wenn Du diese 
Bedingung bei einer Editierung verletzt, generierst Du damit neue 
Bauteile, bei denen aber Units fehlen.

Beispiel: Du hast zwei Bauteile U101 und U102, die aus jeweils zwei 
Units A und B bestehen. Also:
U101A, U101B, U102A, U102B
Die  As und Bs (Suffixe) kannst Du regulär nicht editieren. Aber die Us 
(Prefixe) und die Zahlen.
Also:
U101A geändert zu Test102A
U101B geändert zu Test102B
U102A geändert zu Z102A
U102B geändert zu U103B
führt dazu, dass Du jetzt drei Bauteile hast: Test102 mit Unit A und B, 
Z102 nur aus Unit A bestehend und U103, nur aus Unit B bestehend.

Ein komplettes U102 ist also dabei in Z102 und U103, die aber beide 
unvollständig sind, "zerfallen".

Die fehlenden Units kannst Du zwar nachsetzten und entsprechend 
benennen, aber das ist im allgemeinen sehr Fehlerträchtig. Daher sollte 
man solche "Akrobatenstücke" besser meiden, wenn es nicht expliziete 
Gründe gibt. Und wenn doch, dann wenigstens Sicherungskopien anlegen.

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

: Bearbeitet durch User
von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Nachtrag:

Bernd W. schrieb:

> 1: Der Suffix Buchstabe einer Unit muss erhalten bleiben. Darum kannst
> Du den auch nicht editieren.
> 2: Jeder Referenzbezeichner muss auch eine Zählnummer enthalten.
> 3: Prefix und Zählnummer eines Bauteils müssen bei allen
> zusammengehörenden Units auch wirklich gleich sein. Wenn Du diese
> Bedingung bei einer Editierung verletzt, generierst Du damit neue
> Bauteile, bei denen aber Units fehlen.

Das muss heissen:
1: Der Suffix Buchstabe einer Unit muss erhalten bleiben. Darum kannst
   Du den auch nicht editieren.
2: Jeder Referenzbezeichner muss zusätzlich zum Suffix auch einen Prefix
   und eine Zählnummer enthalten. Du kannst keinen Referenzbezeichner so
   editieren, dass er keinen Prefix enthält. Das erzeugt eine
   Fehlermeldung. Du kannst einen Referenzbezeichner so editieren, dass
   er keine Zählnummer enthält. Aber wenn Du dann im weiteren Verlauf
   eine Netzliste erstellen musst, wird die Anlage einer solchen
   Zählernummer angefordert.
3: Prefix und Zählnummer eines Bauteils müssen bei allen
   zusammengehörenden Units auch wirklich gleich sein. Wenn Du diese
   Bedingung bei einer Editierung verletzt, generierst Du damit neue
   Bauteile, bei denen aber Units fehlen.
4: Du kannst Durch passendes Editieren von Prefix und Zählernummer die
   Units zu anderen Bauteilen umgruppieren, solange es passt, d.h. Du
   kannst kein Bauteil erstellen, das mehrmals die gleiche Unit enthält,
   aber Du kannst gleiche Units in verschiedenen Bauteilen gleicher Art
   auf diese Weise austauschen.
5: Editierst Du nach der Zählernummer einen weiteren Buchstaben in das
   ganze, wird der komplette Ausdruck als neuer Prefix behandelt. Eine
   vorher vorhandene Zählernummer geht dabei verloren. Aber wenn Du dann
   im weiteren Verlauf eine Netzliste erstellen musst, wird die Anlage
   einer solchen Zählernummer angefordert.

Und weiter:
Beispiel zu Punkt 3: Du hast zwei Bauteile U101 und U102, die aus 
jeweils zwei
Units A und B bestehen. Also:
U101A, U101B, U102A, U102B
Die  As und Bs (Suffixe) kannst Du regulär nicht editieren. Aber die Us
(Prefixe) und die Zahlen.
Also:
U101A geändert zu Test102A
U101B geändert zu Test102B
U102A geändert zu Z102A
U102B geändert zu U103B
führt dazu, dass Du jetzt drei Bauteile hast: Test102 mit Unit A und B,
Z102 nur aus Unit A bestehend und U103, nur aus Unit B bestehend.

Die fehlenden Units kannst Du zwar nachsetzten und entsprechend
benennen, aber das ist im allgemeinen sehr Fehlerträchtig. Daher sollte
man solche "Akrobatenstücke" besser meiden, wenn es nicht expliziete
Gründe gibt. Und wenn doch, dann wenigstens Sicherungskopien anlegen.

Anderes Beispiel mit gleicher Ausgangssituation zu Punkt 4: Du hast zwei 
Bauteile U101 und U102, die aus jeweils zwei
Units A und B bestehen. Also:
U101A, U101B, U102A, U102B
U101A geändert zu U102A
U101B bleibt
U102A geändert zu U101A
U102B bleibt
führt dazu, dass Du weiterhin zwei Bauteile U101 und U102 hast, aber die 
Units A sind unter U101 und U102 vertauscht worden.

Die Einsatzfälle für solche Umbenennungen sind begrenzt, und so aus dem 
Bauch heraus würde ich es auch sein lassen, weil sowas ist kompliziert, 
sowohl von der Handhabung durch den User als auch für das Programm im 
Hintergrund. Ich würde darum nicht nur fürchten, bisher unbekannte Bugs 
zu wecken, sondern auch über eigene Verhaspler beim Handling stolpern.
Grobe Fehler sind aber abgefangen: Wenn Du z.b. versuchst, eine Unit 
U101A eines 4002er mit der Unit U102B eines 7400er durch umbenennen der 
7400er Unit in U101 zu einer 4002-7400 Chimäre zu verbinden, provozierst 
Du eine Fehlermeldung.

Noch ein Beispiel zu Punkt 5: Bauteil U101B wird editiert zu U102A. Das 
ist automatisch U102AB (Die Unit bleibt). Weil jetzt die Zählernummer 
fehlt, "U102A" wird als neuer Prefix betrachtet, muss die hinein 
editiert werden (z.B. auch durch Autoannotation). Das führt dann zu 
Konstrukten wie U102A101B. Darum lässt man sowas besser. ;O)


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

: Bearbeitet durch User
von Reginald L. (Firma: HEGRO GmbH) (reggie)


Angehängte Dateien:

Lesenswert?

Im speziellen geht es mir eigentlich nur um die Bezeichnung wie oben im 
Bild ersichtlich, ob sich diese ändern lässt ;)

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Reginald.

Reginald L. schrieb:
> Im speziellen geht es mir eigentlich nur um die Bezeichnung wie oben im
> Bild ersichtlich, ob sich diese ändern lässt ;)

Diese Leider nicht. Das sind die "Units". Die sind festgenagelt. 
Zumindest als Bezeichnung.

Bernd W. schrieb:

> So wie Du es wünschst geht es leider nicht.
> Bei solchen Bauteilen in aufgelöster Form besteht KiCad auf relativ
> engen Formalitäten, um nicht durcheinander zu kommen.
>
> ~~~~~
> ~~~~
> ~~~
> ~~
> ~
> 1: Der Suffix Buchstabe einer Unit muss erhalten bleiben. Darum kannst
> Du den auch nicht editieren.



 Alternativ könntest Du aber extra "grafischen Text" individuell 
verschieden in diese Units hineinpacken, so dass er neben dem 
Schaltplansymbol im Schaltplan auftaucht.
Möglicherweise hilft Dir das ja weiter.


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

von Reginald L. (Firma: HEGRO GmbH) (reggie)


Lesenswert?

Alles klar, danke dir für die ausführliche Info!

von Thomas W. (Gast)


Lesenswert?

g457 schrieb:
> Im Library-Editor in den 'Componenent Properties' [0] -> 'Options' die
> 'Number of Units' hochdrehen, dann wird in der Toolbar die
> Dropdown-Liste der Teilkomponenten aktiviert (mit 'Part A' zu Beginn).
>
> HTH
>
> [0] ..bitte ggf. kreativ adäquat übersetzen.

Wie mache ich es denn, dass die einzelnen Einheiten unterschiedlich sind 
und eine unterschiedliche Anzahl an Pins haben? Wenn ich in einer 
Einheit einen Pin lösche, ist er auch bei den anderen Einheiten weg?

von Bernd W. (berndwiebus) Benutzerseite


Lesenswert?

Hallo Thomas.

Wegen Bauteilen in aufgelöster Darstellung.

Thomas W. schrieb:

> Wie mache ich es denn, dass die einzelnen Einheiten unterschiedlich sind
> und eine unterschiedliche Anzahl an Pins haben? Wenn ich in einer
> Einheit einen Pin lösche, ist er auch bei den anderen Einheiten weg?

Ist etwas Umständlich.
Beim Anlegen der Pinne "common for all Units" markieren.
Dann ist der Pinn erstmal in allen Units.
Dann in die Units gehen, wo er nicht sein soll, dort den Pin editieren 
und
die Markierung bei "common for all Units" entfernen und den Pin 
löschen.
Dooferweise musst Du dass für jeden Pin einzeln machen.

Siehe Beitrag "Kicad: Versorgungsleitungen bei ICs mit mehrern Komponenten". Bei Problemen 
noch mal hier nachlesen: 
Beitrag "Re: Kicad symbol mit mehreren Komponenten"

Du kennst: https://www.mikrocontroller.net/articles/KiCad#Schaltplan ?
Die Seite ist mittlerweile aber etwas umfangreich und unübersichtlich 
geworden. Darum  empfehle ich eine Textsuche. Jeder Internetbrowser, der 
etwas auf sich hält, hat auch eine Suchfunktion, mit der der Text der 
Seite durchsucht werden kann. Bei Firefox/Iceweasel oben im Pull-down 
Menue unter "Bearbeiten" > "suchen" oder per Shortcut <Strg-F>

Beispiel:
wie es später Aussieht: 
https://www.mikrocontroller.net/attachment/310964/ADG5234.png
Und die Bibliothek dazu:
https://www.mikrocontroller.net/attachment/310965/Symbols_ADG5234_RevA_14Nov2016.lib

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

: Bearbeitet durch User
von Thomas W. (Gast)


Lesenswert?

Vielen Dank für die zügige Antwort, ich versuch es mal mit den Pins.

Es geht mir aber nicht nur um die Pins. Ich habe z.B. 5 Einheiten. 
Einheit A-D sehen vom Symbol her identisch aus und haben jeweils 3 Pins. 
Einheit E wurde anders gezeichnet und hat nur zwei Pins.

Kann man diese Einstellung auch für gezeichnete Linien setzen oder nur 
für die Pins. Wenn ich auch eine gezeichnete Linie aus EInheit E 
entferne, wird das für die anderen Einheiten auch übernommen...

von Thomas W. (Gast)


Lesenswert?

Habe es hinbekommen, danke. Das wurde nicht grad sinnvoll von KiCad 
umgesetzt...

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.