Forum: Platinen KiCAD PCBnew -> Bauteile gruppieren als Block


von Lars H. (larsfcfa)


Lesenswert?

Hallo KiCAD-Profis,

ich habe eine simple Frage:

Ich habe auf meiner Platine einzelne Baugruppen (Spannungsregler, µC, 
SPI-Modul) der Übersicht halber erstmal separat geroutet (mir ist klar 
das ist natürlich nicht optimal, führt nicht zu bestmöglicher 
Anordnung/Platzausnutzung), hilft mir aber den Überblick nicht zu 
verlieren.

Nun möchte ich diese "Blöcke" auf Ober bzw. Unterseite hin- und 
herschieben und am Ende verbinden. Leider habe ich nicht herausgefunden, 
wie ich die Funktionsblöcke zunächst gruppieren und dann ohne aus 
versehen andere Elemente mit auszuwählen im Stück markieren und bewegen 
kann.

Hat da jemand eine Idee?

Viele Grüße,
Lars

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Nun, du kannst natürlich erstmal x-beliebig platzierte Bauteile in die 
Selection aufnehmen (mit Shift+Maustaste) und diese dann alle zusammen 
bewegen.

Im Kontextmenü (rechte Maustaste) gibt es bei einer existierenden 
Selection mittlerweile auch einen Punkt "Group", mit dem man Bauteile 
als Gruppe geschlossen benutzen kann. Da bin ich mir aber nicht sicher, 
ob das erst mit meiner Version 5.99 dazu gekommen ist, oder ob es das in 
V5 bereits gab.

von Lars H. (larsfcfa)


Lesenswert?

Interssant, ich benutze 5.1.7 und da gibt es diesen Menüpunkt im 
Kontextmenü (noch) nicht.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Dann musst du dir halt überlegen, ob es dir den Sprung auf die 5.99 (6er 
Previeew) wert ist oder nicht. Dem Vernehmen nach sollte ja inzwischen 
da Code freeze sein, und es soll nun dieses Jahr noch die Version 6 
geben.

Die damit erstellten Dateien sind nicht mit V5 rückwärts kompatibel.

von Lars H. (larsfcfa)


Lesenswert?

OK, danke für den Tip, das wäre natürlich einen Versuch Wert.

Ich hatte aber mal mit Nightly Builds schlechte Erfahrungen gemacht, 
damit erstellte Projekte konnte ich dann später in keiner 
Release-Version mehr vernüftig öffnen.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Lars H. schrieb:
> Ich hatte aber mal mit Nightly Builds schlechte Erfahrungen gemacht,
> damit erstellte Projekte konnte ich dann später in keiner
> Release-Version mehr vernüftig öffnen.

Ich habe die 5.99 in verschiedenen Ausprägungen jetzt seit ca. einem 
Jahr hier, hatte noch keine Probleme, die Daten vorheriger Sitzungen 
wieder einzulesen. (Neugierig geworden war ich damals wohl wegen der 
deutlich verbesserten Busse im Schaltplan.)

Wie geschrieben, mittlerweile ist Code freeze, da sollten sie erst recht 
keine weiteren Inkompatibilitäten bis zum Release einbauen.

: Bearbeitet durch Moderator
von Alex -. (alex796)


Lesenswert?

Keine Ahnung, wie umfangreich dein Schaltplan ist, aber ich stand genau 
vor demselben Problem, und habe es letztendlich wie folgt gelöst:

Das, was als Baugruppe im Layout zusammengehört (zusammengehören soll), 
habe ich im Schematics ebenfalls als hierarchischen Block erstellt. Im 
Schematics kann man dann den Block mittels rechter Maustaste im Layout 
hervorheben/markieren und dann entsprechend im Layout selbst als Gruppe 
bewegen.

Gruß,

: Bearbeitet durch User
von Lars H. (larsfcfa)


Lesenswert?

Vielen Dank, das wusste ich auch noch nicht.
Leider habe ich den Schaltplan schon ohne Hierarchie erstellt… und auch 
das kopieren eines Blockes im Schaltplan in einen neuen hierarchischen 
Block geht (mit meiner KiCAD-Version noch?) nicht, ich habe nur die 
Anleitung gefunden mit abspeichern und wieder einladen, dann ist aber 
mein Routing weg…

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Lars H. schrieb:
> dann ist aber mein Routing weg

Solange sich die Netzliste (also insbesondere die Bauteil-Annotation) 
nicht ändert, sollte es erhalten bleiben. Dem Layout ist das ja egal, 
auf welchen Schaltplanblättern deine Bauteile so verstreuselt sind, es 
kennt lediglich Verbindungen zwischen Bauteilen.

von Alex -. (alex796)


Lesenswert?

Jörg W. schrieb:
> Dem Layout ist das ja egal, auf welchen Schaltplanblättern deine
> Bauteile so verstreuselt sind, es kennt lediglich Verbindungen zwischen
> Bauteilen.

Das ist das Problem. Kopiert man Bauteile in einen hierarchischen Block 
hinein, werden alle Bauteile mit ? referenziert (nennt man das so auf 
deutsch?).

Entsprechend glaubt Kicad, dass es sich um neue Bauteile handelt und 
entsprechend ändert sich die Netzliste. Im Layout werden dann alle 
entsprechenden Bauteile gelöscht und neue Bauteile hinzugefügt. 
Plazierungen gehen dabei verloren.

Weiß jemand, ob und wie man Bauteile in Kicad in Blöcke verschieben 
kann, ohne dass sich die Netzliste ändert? Cut&Paste funktioniert bei 
mir jedenfalls nicht, alle Bauteile heißen R?, C? etc.

: Bearbeitet durch User
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Sind es denn viele? Ansonsten könntest du sie ja mit der Hand genauso 
annotieren.

Alternativ bliebe natürlich noch die Variante, die Design-Dateien mit 
einem Texteditor manuell zu verwurschteln: man schaut sich mal an was 
passiert, wenn man einen hierarchischen Block erstellt und kopiert 
anschließend den ganzen Inhalt in einen solchen hinein. Ist 'ne Krücke, 
aber für eine einmalige Aktion sicher ausreichend.

Weiß nicht, gibt's in V5 schon Edit -> Paste Special? Damit kann man 
festlegen, dass die Referenzen beim Einfügen erhalten bleiben.

von Alex -. (alex796)


Angehängte Dateien:

Lesenswert?

Jörg W. schrieb:
> Sind es denn viele? Ansonsten könntest du sie ja mit der Hand genauso
> annotieren.

Das kann man einmalig mit ein paar Bauteilen machen, aber bei öfterem 
"Refactoring" und beim Wachsen des Schaltplans, wünscht man sich die 
manuelle Arbeit jedoch nicht (ich jedenfalls :) ).

Jörg W. schrieb:
> Weiß nicht, gibt's in V5 schon Edit -> Paste Special? Damit kann man
> festlegen, dass die Referenzen beim Einfügen erhalten bleiben.

Ich verwende Version 5.1.4, da gibt es das (noch) nicht, siehe 
beigefügtes Bild.

Gruß,

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Angehängte Dateien:

Lesenswert?

Alex -. schrieb:
> Ich verwende Version 5.1.4, da gibt es das (noch) nicht, siehe
> beigefügtes Bild.

Noch ein Grund mehr für den Upgrade, finde ich.

Beitrag #6887928 wurde vom Autor gelöscht.
von Lars H. (larsfcfa)


Lesenswert?

KiCAD 5.1.12 hat das Feature auch noch nicht.

Ich hbe mir die Mühe gemacht, die Annotations im neuen Block per Hand 
wieder wie vorher zu bezeichnen.
Wenn ich in PCBnew die Netzliste wieder neu einlade, wird der gesamte 
Block leider wieder komplett neu (unverdrahtet) eingefügt, das möchte 
ichaj geradevermeiden.

von Flip B. (frickelfreak)


Lesenswert?

ich habe kicad 6 aus dem offiziellen paketquellen letzte woche 
automatisch bekommen. seit 5.99 nutze ich das group gerne, auch wenn 
noch etwas buggy beim rotieren der gruppen.

von Lars H. (larsfcfa)


Lesenswert?

Gibt es da ein fertiges Windows Installationspaket (habe ich bei 
kicad.org nicht finden können)?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Lars H. schrieb:
> Wenn ich in PCBnew die Netzliste wieder neu einlade, wird der gesamte
> Block leider wieder komplett neu (unverdrahtet) eingefügt

Wundert mich etwas, denn die Netzliste hat ja nicht irgendwelche UUIDs 
oder so für die Bauteilverbindungen, sondern die normalen Referenznamen.

Nun, da bleibt dir wohl außer einem Upgrade auf den 6er Preview nicht 
viel an Optionen.

von Lars H. (larsfcfa)


Lesenswert?

Ach so, einfach die Nightly Builts nehmen, das ist V5.99

von Lars H. (larsfcfa)


Lesenswert?

So, mit KiCAD 6 RC1 geht das gruppieren in PCBnew problemlos, vielen 
Dank!

Mir ist nur aufgefallen, dass der Rules Check der neuen Version offenbar 
penibler ist, es kamen jedenfalls neue Warnings.

Das verschieben eines Blockes in einen hierarchischen Unterschaltplan 
geht nun auch wunderbar mit Annotations, scheinbar wird aber der 
Netzplan irgendwie trotzdem zerschossen, jedenfalls sind danach beim 
wiedereinlesen in PCBnew die Bauteile wieder irgendwo im Raum.

: Bearbeitet durch User
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Lars H. schrieb:
> Mir ist nur aufgefallen, dass der Rules Check der neuen Version offenbar
> penibler ist, es kamen jedenfalls neue Warnings.

Das gesamte DRC-Konzept ist gründlich überarbeitet worden, man kann es 
jetzt viel feiner granular einstellen, welche Regeln an welchen Stellen 
anzuwenden sind.

Versteckt sich unter File -> Board Setup …

Man kann auch Regeln aus einem anderen Projekt importieren. Man könnte 
sich also ein eigenes Projekt nur für die DRC-Settings seines 
Lieblingsherstellers machen und davon dann stets als erstes die Regeln 
importieren.

von Maik F. (Firma: ibfeew) (mf_hro)


Angehängte Dateien:

Lesenswert?

>Das verschieben eines Blockes in einen hierarchischen Unterschaltplan
>geht nun auch wunderbar mit Annotations, scheinbar wird aber der
>Netzplan irgendwie trotzdem zerschossen, jedenfalls sind danach beim
>wiedereinlesen in PCBnew die Bauteile wieder irgendwo im Raum.

nicht wirklich intuitiv (geht bei so einem "spezial-Vorhaben" vielleicht 
auch nicht), aber prinzipiell möglich:
- beim ausschneiden/wiederreinkopieren im Schaltplan die Funktion 
Paste_special" (im context-menu, rechte maustaste) benutzen, Option 
"keep existing designator" ankreuzen. Damit sollten alle Symbole ihren 
Bezeichner behalten.
- danach im board beim "update pcb from schematic" die Option: "relink 
footprints to symbols based on their reference" ankreuzen, update 
durchführen
- beim nächsten board-update die Option wieder wegnehmen, sonst gibts 
Ärger

: Bearbeitet durch User
von Lars H. (larsfcfa)


Lesenswert?

Vielen Dank, ist ja wirklich tricky!!

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.