Forum: Platinen Altium: Component-spezifische Design Rules


von Frank B. (f-baer)


Lesenswert?

Hallo zusammen,

ich habe ein Package, unter dem ein Via-Keepout liegen muss. Leiterzüge 
möchte ich dennoch durchführen können.
Gibt es in Altium 13/14 irgendeine Möglichkeit, Design Rules für 
PCB-Components zu erstellen, die dann in das PCB übernommen werden?
Der Keepout-Layer ist in der Situation leider (wie so oft) kaum zu 
gebrauchen...

von Jimbo_36 (Gast)


Lesenswert?

Hallo,

keine Ahnung, ob du das meinst, aber unter Place->Directives->PCB Layout 
können im Schaltplan Design Rules für das PCB vorgegeben werden.

von Frank B. (f-baer)


Lesenswert?

Nein, die Rule soll an das Footprint gekoppelt sein.
Im Schaltplan ist es sinnlos, da kann ich die Rule auch einfach im 
PCB-Editor definieren.
Ich brauche eine Rule, die aus der Library kommt, weil sie eben nicht 
Design-spezifisch sondern Footprint-spezifisch ist. Wenn das Footprint 
im Design verwendet wird, soll ein entsprechendes Keepout unter dem 
Footprint (aber eben nur für Vias) beachtet werden.

von Joe F. (easylife)


Lesenswert?

Also spontan fällt mir auch nur ein, diese Rule in dein PCB File zu 
nehmen, und auf dieses spezielle Package einzuschränken. Kannst diese 
Rule ja für alle deine PCBs nehmen, solange das Package darin nicht 
vorkommt, wird sie auch nicht beachtet.

Rein aus Interesse: ich kann mir gerade schlecht vorstellen, warum unter 
einem Package ein Trace liegen darf, aber kein Via...?

von Frank B. (f-baer)


Lesenswert?

Joe F. schrieb:
> Also spontan fällt mir auch nur ein, diese Rule in dein PCB File zu
> nehmen, und auf dieses spezielle Package einzuschränken. Kannst diese
> Rule ja für alle deine PCBs nehmen, solange das Package darin nicht
> vorkommt, wird sie auch nicht beachtet.
>
> Rein aus Interesse: ich kann mir gerade schlecht vorstellen, warum unter
> einem Package ein Trace liegen darf, aber kein Via...?

Weil die Trace im LSL nicht freigestellt ist.
Unter dem Schaltkreis ist ein metallisiertes NC-Pad. Ein Via ist im LSL 
freigestellt, das könnte bei HAL also im schlimmsten Fall schief gehen. 
Dann ragt das Zinn über den LSL hinaus und über das NC-Pad ergibt sich 
ein Kurzschluss.

von Michael S. (rbs_phoenix)


Lesenswert?

Ich kenne es so, dass man dann "über" den IC ein Room definiert und dann 
kann man in den Design Rules die Bedingung "InRoom..." angeben. So 
könnte man auch gezielt dünnere Leiterbahnen definieren/erlauben.

von Joe F. (easylife)


Lesenswert?

Ich habe gerade kein Altium vor mir, aber evtl. kann man im Footprint 
deines Bauteiles auf dem Lötstopp-Layer ein Keepout Polygon definieren?
Tented Vias dürften ja funktionieren.

: Bearbeitet durch User
von Frank B. (f-baer)


Lesenswert?

Michael S. schrieb:
> Ich kenne es so, dass man dann "über" den IC ein Room definiert und dann
> kann man in den Design Rules die Bedingung "InRoom..." angeben. So
> könnte man auch gezielt dünnere Leiterbahnen definieren/erlauben.

Das klappt auch nur im PCB, weil man in der LIB anscheinend gar keine 
Rooms definieren kann. Am liebsten wäre mir eben eine Lösung, die diese 
Besonderheit des Footprints direkt in der LIB abbildet, um 
Missverständnisse und "falsche" Verwendung des Footprints zu verhindern.

Joe F. schrieb:
> Ich habe gerade kein Altium vor mir, aber evtl. kann man im Footprint
> deines Bauteiles auf dem Lötstopp-Layer ein Keepout Polygon definieren?
> Tented Vias dürften ja funktionieren.

Keepout-Polygon auf dem Lötstopp-Layer? Das klingt mir erstmal etwas 
seltsam, bin mir relativ sicher, dass Altium kein Keepout-Objekt hat 
sondern nur diesen einen Keepout-Layer. In Allegro funktioniert diese 
Variante, aber bei Altium hab ich doch gerade so meine Zweifel.

von Joe F. (easylife)


Lesenswert?

Frank B. schrieb:
> Keepout-Polygon auf dem Lötstopp-Layer? Das klingt mir erstmal etwas
> seltsam, bin mir relativ sicher, dass Altium kein Keepout-Objekt hat
> sondern nur diesen einen Keepout-Layer. In Allegro funktioniert diese
> Variante, aber bei Altium hab ich doch gerade so meine Zweifel.

Mit einer Region sollte es gehen.

"Placing a Region as a Keepout

A region can be placed as a layer-specific keepout object or an 
all-layer keepout to act, for example, as a placement or routing 
barrier. Objects defined as keepouts are ignored during output 
generation, such as photo plotting and printing. A layer-specific 
keepout region is simply a region object with its Keepout property 
enabled, an all-layer keepout is a region that has been placed on the 
Keepout layer."

http://techdocs.altium.com/display/ADRR/PCB_Obj-Region((Region))_AD

: Bearbeitet durch User
von Taz27 (Gast)


Lesenswert?

Zur Ausgangsfrage,
NEIN man kann keinem Bauteil Rules mit auf dem Weg geben.

Rules werden im PCBDOC gespeichert. Man kann im Schaltplan Rules 
definieren, die dann übers ECO ins PCB übernommen werden.

Meine Meinung:
Wäre ein ganz schönes Chaos wenn Rules über Bauteile ins PCB gebracht 
werden, auch wenn es auf den ersten Blick (wie bei Dir) Sinn machen 
würde. Aber wie Joe F. schon erwähnte ein Tented VIA ist ja kein 
Problem.
Daher mach die Rule in deinem PCB-Template, da sind schon viele und da 
gehören sie hin.

von Flo (Gast)


Lesenswert?

Warum definierst du kein Pad für das Auflöten des NC Pads? Meist sind 
die wegen der mechanischen beanspruchung oder für die Kühlung da.

von 6a66 (Gast)


Lesenswert?

Joe F. schrieb:
> Rein aus Interesse: ich kann mir gerade schlecht vorstellen, warum unter
> einem Package ein Trace liegen darf, aber kein Via...?

Beispiel: Die Duko leitet das Signal an die Oberfläche der Leiterplatte. 
Traces kann ich aber in den Innenlagen abschirmen. Wir hatten 
Überkoppeln von Duko auf empfindliches Bauteil, die SIgnale drunter 
waren abgeschirmt und hatten keinen Einfluss :)

rgds

von Christian B. (luckyfu)


Lesenswert?

Flo schrieb:
> Warum definierst du kein Pad für das Auflöten des NC Pads? Meist sind
> die wegen der mechanischen beanspruchung oder für die Kühlung da.

Das wäre auch meine Frage. Üblicherweise sind derartige Metallisierungen 
nicht aus Spaß an der Freude im Gehäuse sondern um dieses verlöten zu 
können. Die Einzige Möglichkeit die es imho dafür gibt ist ein Keepout 
im Bauteil zu definieren. Dies würde aber auch die Leiterzüge verbieten, 
nicht nur die Vias.

von Frank B. (f-baer)


Lesenswert?

Taz27 schrieb:
> Daher mach die Rule in deinem PCB-Template, da sind schon viele und da
> gehören sie hin.

Der Meinung bin ich nicht, eine Bauelement-spezifische Rule gehört 
meiner Ansicht nach in die Lib. Wenn ich die Lib hier in der Firma 
weitergebe, sind die Informationen für andere sonst nicht sichtbar.
Ich empfinde es eher als Chaos, wenn im Template für jeden Fall eine 
eigene Rule liegt. Das Footprint sollte alle notwendigen Informationen 
beinhalten, um ein Bauteil korrekt zu verarbeiten.


Flo schrieb:
> Warum definierst du kein Pad für das Auflöten des NC Pads? Meist sind
> die wegen der mechanischen beanspruchung oder für die Kühlung da.

Weil das Pad einerseits in keiner meiner Anwendungen notwendig ist, und 
ich andererseits den Platz gern zum Routen hätte. Bei dem IC handelt es 
sich um einen seriellen Flash, der höchst sporadisch mit geringen 
Taktfrequenzen (max. 1MHz) und geringem Datenvolumen angesprochen wird. 
Eine Kühlung ist da unnötig.
Wie bereits in meinem Eingangspost angesprochen, ist eine Lösung mit 
Keepout unsinnig, dann kann ich auch gleich das Pad setzen.

Mit der Lösung von Joe F. sollte es aber auch möglich sein, ein Keepout 
auf dem Multilayer zu erzeugen, das würde genau die Regel abbilden, die 
ich mir wünsche. Muss ich aber erst einmal ausprobieren.

von Taz G. (taz1971)


Lesenswert?

> Das Footprint sollte alle notwendigen Informationen
> beinhalten, um ein Bauteil korrekt zu verarbeiten.
>
>
> Eine Kühlung ist da unnötig.

Man kann ja durchaus geteilter Meinung sein, aber Du widersprichts Dir 
ein bisschen auch selber oder nicht ?.

In deinem speziellen Fall ist eine Kühlung nicht notwendig, daher macht 
Du in der Lib kein Pad zum kühlen. Aber wenn einer deiner Kollegen, oder 
später Du selber einmal mit höheren Frequenzen arbeitest geht die Sache 
in die Hose.


>Der Meinung bin ich nicht, eine Bauelement-spezifische Rule gehört
>meiner Ansicht nach in die Lib.
Woher soll das System wissen ob es eine Bauelement-spezifische Rule ist 
oder nicht ? - Kann es nicht, daher könnte ich ganz verrückte Rules in 
der Lib einbauen und meine Kollegen hätten ihre wahre Freude damit.

Wir haben unsere PCB Templates auf dem Netzwerk liegen daher haben wir 
kein Problem. Zugriffsrechte sind natürlich auch geregelt.

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.