Hallo! Wenn ich ein Bauteil in einer Schaltplan-Bibliothek editiere und speichere, dann wird das Bauteil im aktuellen Schaltplan offensichtlich sofort aktualisiert. Über die Auswirkungen, wenn man nach längerer Zeit ein bestehendes Projekt nochmal anfassen muß, mag ich gar nicht so genau nachdenken. Da wird mir ganz anders. Bisher kannte ich das nur so, das im aktuellen Schaltplan und der dahinterliegenden Bibliothek beim Plazieren eines Symbols eine Kopie eingefügt wird und das dann auch so bleibt. Das scheint hier anders zu sein. Kann man das irgendwie unterbinden?
Gegenfrage: Welchen Grund gibt es, ein bestehendes Schaltsymbol zu ändern? Hint: Ein neues (geändertes) Bauteil ist ein neues Bauteil...
Michael schrieb: > Wenn ich ein Bauteil in einer Schaltplan-Bibliothek editiere und > speichere, dann wird das Bauteil im aktuellen Schaltplan offensichtlich > sofort aktualisiert. Nein. Zumindest nicht bei mir. Welche KiCad Version hast Du? > Kann man das irgendwie unterbinden? Ja. Da scheint ein Schreibfehler in der deutschen Übersetzung an einem Button zu sein: "Gegenwärtiges Bauteil in aktueller Bibliothek aktualisieren" muss heissen "Gegenwärtiges Bauteil im aktuellen Schaltplan aktualisieren" Und genau das macht der Button dann auch..... Stattdessen verwenden: "Aktuelle Bauteilbibliothek speichern". Das ist der Button ganz links in der oberen Buttonleiste. Findet sich aber auch unter in den Pulldown Menues unter "Datei". In dem Falle wird nur die Bibliothek aktualisiert. Meine Version: Application: kicad Version: (2014-10-11 BZR 5175)-product Release build wxWidgets: Version 3.0.1 (debug,wchar_t,compiler with C++ ABI 1002,GCC 4.9.1,wx containers,compatible with 2.8) Platform: Linux 3.16-2-686-pae i686, 32 bit, Little endian, wxGTK Boost version: 1.54.0 USE_WX_GRAPHICS_CONTEXT=OFF USE_WX_OVERLAY=OFF KICAD_SCRIPTING=OFF KICAD_SCRIPTING_MODULES=OFF KICAD_SCRIPTING_WXPYTHON=OFF USE_FP_LIB_TABLE=HARD_CODED_ON BUILD_GITHUB_PLUGIN=ON Mit freundlichem Gruß: Bernd wiebus alias dl1eic http://www.dl0dg.de
:
Bearbeitet durch User
Hallo Bernd, Wo hast Du die wxWidgets 3.0 her. Ich versuche die verzweifelt auf mein ubuntu 14.04 zu bekommen, aber das Build-Script holt sich immer wieder die 2.8er und meckert dann wegen "kein 3.0". Gruß, Jürgen
@Bernd Das war mir neu. Ich benutzt die Version 4022. Ich muß jetzt los, probier das morgen früh aber aus. Danke!
Hallo Bastler schrieb: > Wo hast Du die wxWidgets 3.0 her. Ich versuche die verzweifelt auf mein > ubuntu 14.04 zu bekommen, aber das Build-Script holt sich immer wieder > die 2.8er und meckert dann wegen "kein 3.0". Die gibt es beim aktuellen Debian Testing (Jessie) "out of the box". Nachdem ich mich über das aktuelle Ubuntu schwarzgeärgert habe, bin ich jetzt wieder bei Debian gelandet. Ich habe ausnahmsweise ein so modernes Motherboard, das Debian stable (Wheezy) damit überfordert war. Darum habe ich mir dann ausnamsweise ein aktuelles Ubuntu installiert. Das verstolperte dann aber oft. Sogar der Krusader crashte unter Xfce und KDE. Irgendwann habe ich dann aber den Mut zusammengefasst (oder ich hatte genug Brass im Balg), und ein Debian Testing genommen, und siehe da, es ist viel stabiler als ein Ubuntu. > aber das Build-Script holt sich immer wieder > die 2.8er und meckert dann wegen "kein 3.0". So richtig weiterhelfen kann ich dir dabei auch nicht, weil das ist garantiert eine Frage für C/C++ Programmierer, die mit dem Kram, Builds und Build Skripten regelmäßig zu tun haben. Ich bin aber einfach nur ein dummer "User", der sich 2002 Linux genommen hat, als Ihm Windows zu kompliziert wurde. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.dl0dg.de
Das hat mich jetzt mal interessiert und daher hab ich ein verwendetes Schaltplan-Symbol geändert, indem ich einen kleinen Strich eingebaut hab. Klicke ich auf "Aktuelle Bauteilbibliothek speichern" werde ich gefragt, ob ich die Bauteiländerung durchführen möchte. Sage ich hier ja, dann ist der kleine Strich im Bauteil zu sehen. Öffne ich nun andere Schaltpläne mit diesem Symbol, dann haben diese auch den kleinen Strich. Nun möchte ich den Strich nur im aktuell geöffneten Schaltplan entfernen und verwende die Taste "Gegenwärtiges Bauteil in aktueller Bibliothek aktualisieren" nachdem ich den Strich im Editor gelöscht habe. Wechsele ich nun in den Schaltplan, ist der Strich tatsächlich weg und in anderen Schaltplänen ist er noch da. So weit, so gut! Aber wenn ich den Editor schließe werde ich gefragt, ob die Änderungen verworfen werden sollen. Das bejahe ich, da der Strich nur im aktuellen Schaltplan entfernt werden sollte. Nun schließe und öffne ich den Schaltplan (natürlich speichere ich vorher) und siehe da, der Strich ist wieder da. Öffne ich nun wieder den Editor, dann ist der Strich auch dort wieder zu sehen. Mein Fazit ist, dass die Änderung eines Bauteils in der Bibliothek dazu führt, dass diese Bauteile in allen vorhandenen Schaltplänen geändert werden. Ich verstehe aber auch nicht ganz warum ich ein Bauteil derart ändere, dass es in alten Projekten nicht mehr verwendet werden kann. In diesem Fall lege ich mir ein neues Bauteil an. Das ist wie mit Artikelnummern, da darf es auch nicht sein, dass zwei (auch fast identische) Artikel die gleiche Nummer haben. Lg, Timo Gruß http://timogruss.de
Moin, ich hab mal ganz basismäßig getestet: Ein Projekt test.pro mit einem Schaltplan test.sch. Darin ist unter anderen ein Widerstand RES plaziert. (Wieso sollte man verschiedene Widerstandssymbole haben?) Um den Wirrungen einer falschen Übersetzung oder falschen Bedienung aus dem Weg zu gehen, beende ich Kicad und editiere ich die zugrundeliegende Bibliothek mit einem Editor. Ich ändere ich in der Bibliothek "passiv.lib" bei dem Widerstand den Abstand und die Länge der Pins von X ~ 1 -200 0 100 R 60 60 0 0 P X ~ 2 200 0 100 L 60 60 0 0 P auf X ~ 1 -150 0 50 R 60 60 0 0 P X ~ 2 150 0 50 L 60 60 0 0 P Ich starte Kicad und öffne meinen Schaltplan. Die Widerstände hängen jetzt alle in der Luft, weil die Beinchen zu kurz sind. Wenn ich das Projekt speichere und die lokale Bib "test-cache.lib" ansehe, hat er die Änderungen übernommen. Hä? Das ist doch völlig unbrauchbar. Ich habe hier noch ein 20jahre altes Layoutsystem stehen, mit den über 700 Schaltpläne erstellt wurden. In den 20 Jahren haben ich bestimmt das ein oder andere Mal den Widerstand umgezeichnet. Wenn das auf die alten Pläne durchschlagen würde, wäre das ja katastophal. Außerdem verstehe ich nicht, wieso es dann überhaupt noch eine lokale Bibliothek gibt. Kann mir mal bitte jemand den Knoten aus dem Kopf machen? Ach ja, die Version ist 2013-07-07 BZR 4022 Dank und Gruß, Michael
Vielleicht noch mal zur Begründung: Ich habe schon viele DIN-Normen gesehen. Wenn man ein Symbol an eine neue Norm anpaßt, kann es doch nicht sein, daß die alten Schaltpläne sich selbständig machen. Und natürlich reicht ein Widerstand. Die Bauteileigenschaften (100Ohm, 2W) stellt man ja nicht mit dem Symbol dar, sondern z.B. als Wert. Anders ist das z.B. bei einem OpAmp, den es mit zwei verschiedenen Anschlußbelegungen gibt (LT1013CN8 und LT1013DN8). Bei Kicad gibt es aber kleverer Weise die Möglichkeit die Symbole in diesem Fall "umzuschalten". Also gibt es wirklich keinen Grund die Symbole mit Bestellnummern zu versehen. (Außer man hat zu lange Eagle benutzt, hihi)
Bernd Wiebus schrieb: >> Wenn ich ein Bauteil in einer Schaltplan-Bibliothek editiere und >> speichere, dann wird das Bauteil im aktuellen Schaltplan offensichtlich >> sofort aktualisiert. > > Nein. Zumindest nicht bei mir. Welche KiCad Version hast Du? Wie machst Du das? Ich hab das gerade mal ausprobiert und ich kann beim besten Willen keinen Weg finden die Bibliothek zu ändern ohne die existierenden Schaltpläne unbrauchbar zu machen.
Bernd K. schrieb: > Ich hab das gerade mal ausprobiert und ich kann beim besten Willen > keinen Weg finden die Bibliothek zu ändern ohne die existierenden > Schaltpläne unbrauchbar zu machen. Was spricht denn dagegen das Bauteil neu abzuspeichern statt das vorhandene zu überschreiben? Wenn das ändern in anderen Plänen als so schlimm empfunden wird, würde ich beide Zeichen vorhalten. Gruß Max
Hallo Timo, Michael und Bernd Timo Gruß schrieb: > Das hat mich jetzt mal interessiert und daher hab ich ein verwendetes > Schaltplan-Symbol geändert, indem ich einen kleinen Strich eingebaut > hab. Das hatte ich auch gemacht, und erhielt ein anderes Ergebnis, weil es von der Reihenfolge der Bibliotheken abhängig ist, welches Symbol bei sonst gleichlautenden Symbolnamen verwendet wird.....und das ist eben auch ein Knackpunkt: "gleichlautende Symbolnamen". > Mein Fazit ist, dass die Änderung eines Bauteils in der Bibliothek dazu > führt, dass diese Bauteile in allen vorhandenen Schaltplänen geändert > werden. Das stimmt. Schliesslich referenzieren die Schaltpläne darauf...wenn man es nicht besser macht. > Ich verstehe aber auch nicht ganz warum ich ein Bauteil derart ändere, > dass es in alten Projekten nicht mehr verwendet werden kann. In diesem > Fall lege ich mir ein neues Bauteil an. Das ist wie mit Artikelnummern, > da darf es auch nicht sein, dass zwei (auch fast identische) Artikel die > gleiche Nummer haben. So ist es. Neues (geändertes) Bauteil, neuer Name. Ich habe die angesprochene Funktion auch noch nie verwendet. Der Symboleditor enthält einen Button: "Erstelle aus dem gegenwärtigen Bauteil ein neues". Den sollte man tunlichst verwenden, und kommt dazu, einen neuen Namen zu vergeben. Wem die Namen ausgehen, schreibe halt das aktuelle Datum dazu"....30Oct2014.lib" oder "......20141030.lib". Wer so häufig ändert, dass sich das Datum nicht schnell genug ändert, schreibt halt noch die Uhrzeit dazu: "....30Oct2014-19h26m.lib" oder "......20141030-1926.lib" Wer auch noch die Sekunden braucht, leided vermutlich am Tourette-Syndrom. Aber es gibt noch einen zweiten Punkt: Michael schrieb: > Außerdem verstehe ich nicht, wieso es dann überhaupt noch eine lokale > Bibliothek gibt. Lösche zum Ende des Projektes oder meinetwegen auch schon wenn Du mit dem Schaltplan zu 90% fertig bist, alle Bibliotheken bis auf die Cache-Bibliothek aus dem Bibliotheksverzeichnis. Der Schaltplan referenziert dann nur noch auf die Cache-Bibliothek, und ist damit von den anderen Bibliotheken entkoppelt. Willst Du später am Schaltplan ändern, trägst Du vorübergehend die dafür benötigten Bibliotheken im Bibliotheksverzeichnis ein. Das ist der Sinn der Cache Bibliothek. Bernd K. schrieb: >>> Wenn ich ein Bauteil in einer Schaltplan-Bibliothek editiere und >>> speichere, dann wird das Bauteil im aktuellen Schaltplan offensichtlich >>> sofort aktualisiert. >> >> Nein. Zumindest nicht bei mir. Welche KiCad Version hast Du? > > Wie machst Du das? > > Ich hab das gerade mal ausprobiert und ich kann beim besten Willen > keinen Weg finden die Bibliothek zu ändern ohne die existierenden > Schaltpläne unbrauchbar zu machen. Das war mein Fehler. Es geht wirklich nicht. Vieleicht ging es mal, aber ich habe kein KiCad mehr, das alt genug wäre, es zu testen. Jedenfalls ist die Kur des Problems 1) neue Namen Vergeben, 2) Irgendwann nur noch auf die Cache-library referenzieren. Die gehört eben unmittelbar mit zum Projekt, und muss mit übergeben werden, wenn das Projekt verteilt wird.. Zumindest solange die Symbolbibliotheken nicht auch auf ein System mit Symbolic Expressions wie bei den Board Dateien umgestellt sind, und dann auch die Symbole selber enthalten. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.dl0dg.de
Hallo Max. Max B. schrieb: >> Ich hab das gerade mal ausprobiert und ich kann beim besten Willen >> keinen Weg finden die Bibliothek zu ändern ohne die existierenden >> Schaltpläne unbrauchbar zu machen. > > Was spricht denn dagegen das Bauteil neu abzuspeichern statt das > vorhandene zu überschreiben? Eben. So habe ich das schon immer gemacht. Ich speichere meist unter Vergabe einer Datumsangabe und/oder einem Revisionsindex. Das habe ich mir irgendwie angewöhnt, sobald ich ein Dateisystem hatte, das lange Dateinamen zulies. ;O) > Wenn das ändern in anderen Plänen als so > schlimm empfunden wird, würde ich beide Zeichen vorhalten. Es IST SCHLIMM. Wirklich. Weil Änderungen am Symbol Auswirkungen in allen Schaltplänen haben, und diese dafurch gegebenenfalls unbrauchbar werden. Auf der anderen Seite ist es mir noch nie passiert, weil ich eben grundsätzlich anders vorgehe. Aber es gibt keinen automatischen Schutz aus dem System dagegen. ;O( > würde ich beide Zeichen vorhalten. Eben. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.dl0dg.de
Hallo alle zusammen, erstmal vielen Dank für die Erklärungen. Verstanden hatte ich das schon, nur kann ich es nicht glauben. Ich möchte eigentlich nicht das Symbol "Nagel" in "Nagel_RevE_20141030" umbenennen, nein, das will ich bestimmt nicht! Das man das in einem geschlossenem Datenbanksystem so machen kann oder muß ist schon klar, aber doch in in so einem Dateihaufen. Ich verstehe nicht, wie die auf dieses schiefe Brett gekommen sind. Wenn es ja schon eine lokalen Kopie der Symbole gibt, nachdem diese einmal eingefügt wurden, dann sollte es doch egal sein, was mit der Bibliothek passiert. Ich habe die von Bernd vorgeschlagene Methode probiert. Alle Libs rausnehmen und schon ist der Zauber vorbei. Geht prima. Aber ein bischen gaga ist das doch schon, oder? Jetzt muß ich erstmal überlegen, ob ich das benutzen will. Die Software ist ja sonst ganz klasse und vor allem sehr sehr ähnlich zu meinem ewig benutzen Ulticap/Ultiboard.
Hallo Michael. Michael schrieb: > Ich möchte eigentlich nicht das Symbol "Nagel" in "Nagel_RevE_20141030" > umbenennen, nein, das will ich bestimmt nicht! Das man das in einem > geschlossenem Datenbanksystem so machen kann oder muß ist schon klar, > aber doch in in so einem Dateihaufen. Jetzt mal unabhängig von KiCad: Ich bin schon länger dahintergekommen, dass ich das auch mit meinen "privaten" Dateien machen muss, um nicht durcheinander zu kommen. Mich wunbdert eigentlich eher, das andere auch so davonkommen. ;O) > Ich verstehe nicht, wie die auf dieses schiefe Brett gekommen sind. Wenn > es ja schon eine lokalen Kopie der Symbole gibt, nachdem diese einmal > eingefügt wurden, dann sollte es doch egal sein, was mit der Bibliothek > passiert. Ich werde mal ein paar Tage darüber nachdenken, und etwas dazu in die KiCad user Group schreiben. Immerhin gibt es Leute, die das stört..... Eine Erleichterung des Problems wäre es, automatisch Symbole aus der Cache-Bibliothek zu bevorzugen, sobald diese existiert, es sei, man möchte bewusst andere Bibliotheken mit anderen Symbolen verwenden oder die verwendeten aktualisieren. > > Ich habe die von Bernd vorgeschlagene Methode probiert. Alle Libs > rausnehmen und schon ist der Zauber vorbei. Geht prima. Aber ein bischen > gaga ist das doch schon, oder? Nun, das wichtigere bei mir ist, meine geänderten Bibliotheken umzubenennen. Und der Button ""Erstelle aus dem gegenwärtigen Bauteil ein neues" ist ein Indiz, dass es genauso gedacht ist. Mit freundlichem Gruß: Bernd Wiebus alias dl1eic http://www.dl0dg.de
Max B. schrieb: > Was spricht denn dagegen das Bauteil neu abzuspeichern statt das > vorhandene zu überschreiben? Naja, das Hauptproblem sehe ich eher dass jeder Schaltplan den ich jemals erstellt habe ohne weitere Maßnahmen nun auf Gedeih und Verderb an den automatisch geupdateten Systembibliotheken in /usr/share/kicad hängt und wenn jemals einem der Maintainer einfällt daß vielleicht irgendein vergessenes Photodiodensymbol die ganze Zeit über etwas zu groß war im Verhältnis zu allen anderen Dioden und das mal eben vereinheitlichen will dann gehen über Nacht weltweit alle möglichen Schaltpläne stillschweigend zu Bruch.
Hallo Bernd Bernd Wiebus schrieb: > Jetzt mal unabhängig von KiCad: > Ich bin schon länger dahintergekommen, dass ich das auch mit meinen > "privaten" Dateien machen muss, um nicht durcheinander zu kommen. > Mich wunbdert eigentlich eher, das andere auch so davonkommen. ;O) Na ja, nimm doch mal eine Textverarbeitung: Ich habe eine Vorlage für Rechnungen "Rng.dot". Wenn ich eine Rechnung schreibe, speichere ich die unter "Bernd_141030.doc". Nun ändere ich alle Jahre die Rechnungsvorlage, z.B. um den Stundensatz neu vorzugeben. Die Rechnungsvorlage benenne ich nicht um, was sollte das auch. Wenn ich jetzt eine alte Rechnung öffne, darf sich dort natürlich nichts ändern. Mein Steuerberater würde mich killen. > Ich werde mal ein paar Tage darüber nachdenken, und etwas dazu in die > KiCad user Group schreiben. Immerhin gibt es Leute, die das stört..... > Eine Erleichterung des Problems wäre es, automatisch Symbole aus der > Cache-Bibliothek zu bevorzugen, sobald diese existiert, es sei, man > möchte bewusst andere Bibliotheken mit anderen Symbolen verwenden oder > die verwendeten aktualisieren. Genauso funktioniert das bei Ulticap. Einmal eingefügt wird nur noch das lokale Symbol verwendet. Plaziert man ein neues Bauelement, kann man sich aussuchen ob dies aus der lokalen Bib, einer externen Bib oder einem anderen Schaltplan entnommen wird. Bei Namensgleichheit kriegt der neue Name ein Anhängsel. Will man das lokale Symbol wirklich ersetzten, muß man zunächst alle Bauelemente die darauf basieren aus dem Schematic löschen, speichern und neue Bauelemente basierend auf der externen Bib einfügen. Jedenfalls war der Name "RES" an das lokale Symbol "RES" und nicht mehr an die Bib gekoppelt. Sonst funktioniert das hier weitestgehend genauso... > Nun, das wichtigere bei mir ist, meine geänderten Bibliotheken > umzubenennen. Und der Button ""Erstelle aus dem gegenwärtigen > Bauteil ein neues" ist ein Indiz, dass es genauso gedacht ist. Du meinst, Du hast das Symbol neu benannt? Das umbennen der Bibliothek nützt ja nix, wenn das Symbol noch genauso heißt. Übrigends, der Aufhänger für meine Frage waren deine Bibliotheken. Die sind sehr schön! Mir war aber die Länge der Anschlüsse generell zu groß. Wenn das Rechteck eines Widerstandes 5mm lang ist und ich zwei Stück in Reihe schalte, dann hätte ich gerne dazwischen nur 5mm Leiter. So würde ich es auch auf kariertem Papier zeichnen. Dazu darf der Abstand der Anschlüsse aber nur 7,5mm (300mil) betragen, sonst paßt da kein Verbindungsstück mehr zwischen. Außerdem sind bei mir die passiven Bauelemente R, L, und C alle gleich lang, weil man das sehr schön Filter etc. zeichnen und ändern kann. Und damit fing das Drama an. Also ein echtes Luxusproblem. Gruß und Späße Michael
@ Bernd Wiebus (berndwiebus): hast du schon was aus der liste gehört? 'eigentlich' wäre es ja recht 'einfach' die Priorität der chach lib gegen über allen anderen zu erhöhen.. wenn man das Original aus der original lib aktualisieren will kann man dann ja im edit mode 'aus Lib laden' benutzen (oder wie das auch immer genau hießt - da gibts nen button...) sonnige grüße stefan
:
Bearbeitet durch User
Hallo Stefan. Stefan Krüger schrieb: > hast du schon was aus der liste gehört? Ich gestehe, mich nicht weiter darum gekümmert zu haben. Zum einen habe ich ein Zeitproblem, und zum anderen erinnerte ich mich an eine Diskussion, wo genau das Argument kam: Bibliotheken abwählen löst das Problem. Fand ich zwar auch unelegant, habe ich aber erstmal so hingenommen. Trozdem denke ich, dass ich dazu noch was schreiben werde, einfach, um das Thema am köcheln zu halten. > 'eigentlich' wäre es ja recht 'einfach' die Priorität der chach lib > gegen über allen anderen zu erhöhen.. > wenn man das Original aus der original lib aktualisieren will kann man > dann ja im edit mode 'aus Lib laden' benutzen (oder wie das auch immer > genau hießt - da gibts nen button...) So in der Art denke ich sollte das gehen. Ob das wirklich einfach zu implementieren ist, kann ich mangels C Kentnissen nicht beurteilen. Bei PCBnew finde ich das mit der Bibliotheksauswahl aber wirklich lästig, und es gärt der Gedanke, mir dazu ein Python Skript zu schreiben. Vieleicht komme ich über Weihnachten dazu, weil ich da eh Zwangsurlaub habe. Es ist aber auch noch anderer Kram liegengeblieben, um den ich mich kümmern will (z.B. die Aktualisierungen im Gerber Format von Karel Tavernier) 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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.