Hallo zusammen, - gibt es eine Möglichkeit, im EESchema einer Gruppe von Netzen, z.B. durch Rechteckauswahl oder eine ganze Seite, eine gemeinsame Netzklasse zuzuweisen? Das wäre wirklich komfortabel! Die Zuweisung an benannte Netze habe ich bereits gefunden... - Wo kann ich Abstände Netzklasse zu Netzklasse einstellen? Ich meine, daß es das in frühren Versionen gab. Jetzt finde ich es aber nicht mehr. Gibt es zu der Problematik "Netzklassen" evtl. ein empfehlenswertes Plugin? Danke & Gruß Axel
Meines Wissens nach geht beides nicht. Gerade die letztere Funktion habe ich auch schon gesucht. Gibt es nicht, also hilft nur die dadurch entstehenden DRC Fehler akribisch durchzugehen und zu ignorieren.
Also, heute habe ich mich nochmals mit dem Thema beschäftigt, Doku gelesen, herumgesucht und ausprobiert. Folgendes ist dabei herausgekommen: - man kann mehrere Netze mit gedrückter Shift-Taste auswählen; ABER man kann dieser Auswahl nicht direkt eine Netzklasse zuweisen. - Es müssen zum zuweisen einer Netzklasse die entsprechenden Netze benannt werden, auch wenn diese bereits intern einen Namen bekommen haben. Wenn Netze nicht schon einen Namen hatten, wie z.B. "CSn_XY", dann habe ich diese mit einem Präfix und eine laufenden Nummer versehen z.B. "CPU_26". - Diese durchnummerierten Netze lassen sich dann in einem Editor relativ komfortabel eine Netzklasse zuweisen (Sicherungskopie vorher machen!!). Die Netzklassenzuordnung ist im *.kicad_pro zu finden, das sieht dann in etwa so aus: { "netclass": "LT2", "pattern": "/Leistungsteil2/LT2_54" }, { "netclass": "LT2", "pattern": "/Leistungsteil2/LT2_55" }, { "netclass": "LT2", "pattern": "/Leistungsteil2/LT2_56" }, - Dann kommt der zweite Teil, das eigentliche 'constraining'. - Im Leiterplatteneditor unter 'Platinenkonfiguration-> Benutzerdefinierte Regeln' habe ich folgendes eingetragen:
1 | (version 1) |
2 | # Clearance for CPU nets to anything else |
3 | (rule CPU_global_clear |
4 | (constraint clearance (min "1mm")) |
5 | (condition "A.NetClass == 'CPU' && B.NetClass == 'LT1'")) |
6 | # Clearance for Leistungsteil1 (LT1) nets to anything else |
7 | (rule LT1__global_clear |
8 | (constraint clearance (min "1mm")) |
9 | (condition "A.NetClass == 'CPU' && B.NetClass == 'LT2'")) |
10 | # Clearance for Leistungsteil2 (LT2) nets to anything else |
11 | (rule LT2_global_clear |
12 | (constraint clearance (min "1mm")) |
13 | (condition "A.NetClass == 'LT1' && B.NetClass == 'LT2'")) |
Die Angabe (version x) ist zwingend. Der Regelname ist unerheblich (rule XYZ). Mit den obenstehenden constraints habe ich es dann geschafft, drei galvanische Inseln mit min. 1 mm auf Abstand zu halten. In Sachen Benutzerfreundlichkeit ist natürlich noch Luft nach oben. Gruß Axel
Axel V. schrieb: > Benutzerdefinierte Regeln Extrem mächtig aber kompliziert zu bedienen. Man kann fast jede Regel definieren. Geht weit über Abstände von Netzklassen hinaus. Ich hoffe das wird in einer späteren version mal kompfortabler benutzbar.
Axel V. schrieb: > - gibt es eine Möglichkeit, im EESchema einer Gruppe von Netzen, z.B. > durch Rechteckauswahl oder eine ganze Seite, eine gemeinsame Netzklasse Ab KiCAD 9.0 funktioniert das, mit den 8.x Versionen nicht. Suche mal hier: https://www.kicad.org/blog/2025/02/Version-9.0.0-Released/ "Net class rule areas" Damit kannst du (wie es in Altium schon länger geht) Netzklassen über mehrere Netzt anlegen (Rechteck Auswahl) Du kannst auch so auswählen: https://forum.kicad.info/t/how-do-i-use-the-new-creepage-custom-rules-v9-0-0/59328/9 Ein Grund mehr auf V9 zu wechseln. Cheers
:
Bearbeitet durch User
Ja, das geht schon mal in die richtige Richtung. Dazu muß ich aber erst noch mein Linux hochziehen, um auf die 9er wechseln zu können. Im Moment habe ich es so gemacht, wie oben beschrieben. Das hat auf jeden Fall den Vorteil, daß man im PCB nichts übersieht. Danke & Gruß Axel
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.