Forum: Platinen DRC VIOlation in Altium ignorieren


von Sarah (Gast)


Lesenswert?

Hallo Leute,
wie kann ich Fehler in Altium ignorieren? Ich habe mit Waived Violation 
probiert,aber beim neuen Design Rules Check taucht immer das Fehler auf.
 Gibt es ein Befehlin Altium, das man schreiben kann, um ein Befehl zu 
ignorieren?

Danke im Vorraus
Sarah

von Kai H. (avrickeler)


Lesenswert?

Hallo Sarah,

1.) Welche Fehler bekommst Du denn genau gemeldet?
2.) Hast Du Dir mal die DRC-Rules genau angesehen (Passend zur 
Fehlermeldung)? Was ist dort festgelegt?

Gruß,
Kai

: Bearbeitet durch User
von M.A. S. (mse2)


Lesenswert?

Du kannst einstellen, welche DRCs beim Layouten (Online) und auch welche 
beim expliziten DRC-Aufruf (Batch) durchgeführt werden und welche nicht:

Menü:
Tools -> Design Rule Check

Dann geht das Fenster "Design Rule Checker" auf, dort links ist eine 
Liste mit den Punkten "Rules To Check".
Dort kannst Du die Kategorien wählen z.B. Electrical.
Dann erscheint rechts eine Liste, wo Du wählen kannst, was davon Online 
oder Batch gemacht werden soll.


PS: Stand: Altium Designer 17.1

: Bearbeitet durch User
von Wühlhase (Gast)


Lesenswert?

DRC-Verletzungen zu ignorieren ist eigentlich nie eine gute Idee.

Lieber die Designregeln vernünftig formulieren, das bewahrt vor 
Problemen und geht eigentlich auch recht fix.

von Taz G. (taz1971)


Lesenswert?

Sarah schrieb:
>  Gibt es ein Befehlin Altium, das man schreiben kann, um ein Befehl zu
> ignorieren?

Nein es gibt kein Befehl zum ignorieren eines Befehls.


Sarah schrieb:
> wie kann ich Fehler in Altium ignorieren?

Schlechte Methode, man sollte die Rules so anpssen, dass keine 
Violations (Rule Verletzungen nicht Fehler) auftreten.



Sarah schrieb:
> Ich habe mit Waived Violation
> probiert,aber beim neuen Design Rules Check taucht immer das Fehler auf.

Habe es ausprobiert, geht bei meinem AD17 problemlos. Die Violations 
werden im Kapitel Waived Violations aufgeführt aber nicht als Rule 
Violations gezählt. (im Report File und im Panel)

@Sarah
Ich schlage vor, dass Du deinen eigenen Beitrag und Fragen noch mal 
liesst und so aufbereitets, dass man helfen kann. Z.B. AD Version ?, 
Rule ?, Screenshot, pcbdoc file ...

von Christian B. (luckyfu)


Lesenswert?

Wühlhase schrieb:
> DRC-Verletzungen zu ignorieren ist eigentlich nie eine gute Idee.

Es gibt aber Fälle, wo sie sich nicht umgehen lassen.

Ich hab auch 2 Platinen mit so einem Problem. Bei beiden handelt es sich 
um Platinen mit galvanisch vergoldeten Kontakten (mitten in der 
Leiterplatte), bei denen ich, um es dem LP Fertiger einfacher zu machen, 
die entsprechenden Anbindungen über die Platinenkante selbst gemacht 
habe. Ich hab noch keine Möglichkeit gefunden, das im DRC explizit 
auszuschalten. (Insbesondere, weil es nur ein einem kleinen Bereich der 
Platine ausgeschaltet werden darf) so bleibt nur, sich mit erhöhter 
Aufmerksamkeit, durch die Fehlermeldungen zu zappen.

von M.A. S. (mse2)


Lesenswert?

Wühlhase schrieb:
> DRC-Verletzungen zu ignorieren ist eigentlich nie eine gute Idee.

Das ist zwar richtig, jedoch schreibt die TO nicht klar, was sie genau 
will. Wenn es nur um das Abschalten von Onlineprüfungen geht, die bei 
Layouten zuweilen etwas nerven können, und auf (mindestens langsameren 
PCs) die ganze Sache mitunter sehr träge gestalten, kann ich's 
verstehen.

Natürlich muss hinterher (vor Erzeugung der Gerberdaten) alles, was 
fertigungsrelevant ist, auch geprüft werden (und sollte logischerweise 
dann nicht ignoriert werden.)

: Bearbeitet durch User
von Wühlhase (Gast)


Lesenswert?

Christian B. schrieb:
> Wühlhase schrieb:
>> DRC-Verletzungen zu ignorieren ist eigentlich nie eine gute Idee.
>
> Es gibt aber Fälle, wo sie sich nicht umgehen lassen.
>
> Ich hab auch 2 Platinen mit so einem Problem. Bei beiden handelt es sich
> um Platinen mit galvanisch vergoldeten Kontakten (mitten in der
> Leiterplatte), bei denen ich, um es dem LP Fertiger einfacher zu machen,
> die entsprechenden Anbindungen über die Platinenkante selbst gemacht
> habe. Ich hab noch keine Möglichkeit gefunden, das im DRC explizit
> auszuschalten. (Insbesondere, weil es nur ein einem kleinen Bereich der
> Platine ausgeschaltet werden darf) so bleibt nur, sich mit erhöhter
> Aufmerksamkeit, durch die Fehlermeldungen zu zappen.

Aha...mir fallen da gleich mehrere Möglichkeiten ein. Die einfachste:
Ziehe enen Room über die Stelle wo deine Kontakte sind und definiere die 
Designregeln für diesen Room entsprechend.

Oder: Erstelle die Kontakte als Bauteil. Und definiere für dieses 
Bauteil entsprechende Designregeln. Diese Möglichkeit hat noch den 
Charme, daß es im Schaltplan sauber ist und mit der Realität wieder 
übereinstimmt, die Netze so definiert sind wie sie sein sollen und 
Altium das wieder sauber kompiliert. Wiederverwenden kannst du die 
Kontakte so auch wieder, und komm mir ja nicht mit der Ausrede daß 
Bauteilerstellung in Altium lange dauere. Ich bin mir sicher, daß dein 
wilder Hack
a) länger bei der Erstellung dauert
b) im wahrscheinlichen Fall eines Fehlers auch mehr Zeit in der Behebung 
beansprucht.

Diese Hemdsärmeligkeit unter Entwicklern (Ärmel hoch, Hirn aus und 
losgerannt) werde ich wohl nie verstehen.

von Christian B. (luckyfu)


Lesenswert?

Wühlhase schrieb:
> Aha...mir fallen da gleich mehrere Möglichkeiten ein. Die einfachste:
> Ziehe enen Room über die Stelle wo deine Kontakte sind und definiere die
> Designregeln für diesen Room entsprechend.

Hab ich probiert, ging nicht. Auch der Support konnte mir da nicht 
helfen.
Bei näherer Betrachtung ist das auch klar. Ich hab z.B. eine GND Plane, 
da auch GND Pins vergoldet werden müssen ist diese Plane somit mit einem 
Anschluss nach außen versehen. Dieser Anschluss ist ein 0,2mm Leiterzug. 
Außerhalb dessen sollen die Designrules gelten, vor allem, was die 
Planes angeht.

Wühlhase schrieb:
> Oder: Erstelle die Kontakte als Bauteil. Und definiere für dieses
> Bauteil entsprechende Designregeln. Diese Möglichkeit hat noch den
> Charme, daß es im Schaltplan sauber ist und mit der Realität wieder
> übereinstimmt, die Netze so definiert sind wie sie sein sollen und
> Altium das wieder sauber kompiliert. Wiederverwenden kannst du die
> Kontakte so auch wieder, und komm mir ja nicht mit der Ausrede daß
> Bauteilerstellung in Altium lange dauere.

Mag gehen, ist aber viel zu umständlich. Das Problem ist: Ich habe das 
Ding in einer 10 Lagigen Platine, wobei sich die Anschlüsse, welche nach 
außen geführt werden, nur in den Innenlagen befinden. Das ist beim 
Anlegen eines Bauteils zwar möglich, aber nervig, weil man dann nämlich 
eine pcb lib nur für das eine Bauteil entwerfen muss, die 10 Lagig ist.

Ergo: Man lebt mit der Kröte, man kennt sie und kann damit umgehen, 
fertig.
Ich werde dafür bezahlt, für ein Problem eine Lösung zu finden. Die muss 
nicht die beste Lösung der Welt sein, sie muss nur funktionieren. Und 
das tut sie, halt mit etwas Aufwand beim Check...

: Bearbeitet durch User
von Taz G. (taz1971)


Lesenswert?

Christian B. schrieb:
> Ergo: Man lebt mit der Kröte, man kennt sie und kann damit umgehen,
> fertig.
> Ich werde dafür bezahlt, für ein Problem eine Lösung zu finden.

Ich finde auch, dass man ein gewisses Augenmaß anlegen muss. Aufwand und 
Nutzen müssen stimmen. Nur halte ich es für äusserst wichtig zu wissen 
was man tut. Wenn man eine Verletzung ignoriert dann mit einem guten 
Grund und dem Bewusstsein über die Konsequenzen.

Ich weiss, dass es Fälle gibt in denen man keine Rule aufsetzen kann um 
die Violation zu verhindern. Dafür gibt es ja die Funktion 'Waive' - 
aber wie gesagt nur anwenden wenn man weiss was man tut.

von Wühlhase (Gast)


Lesenswert?

Christian B. schrieb:
> Wühlhase schrieb:
>> Aha...mir fallen da gleich mehrere Möglichkeiten ein. Die einfachste:
>> Ziehe enen Room über die Stelle wo deine Kontakte sind und definiere die
>> Designregeln für diesen Room entsprechend.
>
> Hab ich probiert, ging nicht.

Merkwürdig. Nein, klarer wird das durch deine Erklärung auch nicht.


 Auch der Support konnte mir da nicht
> helfen.
> Bei näherer Betrachtung ist das auch klar. Ich hab z.B. eine GND Plane,
> da auch GND Pins vergoldet werden müssen ist diese Plane somit mit einem
> Anschluss nach außen versehen. Dieser Anschluss ist ein 0,2mm Leiterzug.
> Außerhalb dessen sollen die Designrules gelten, vor allem, was die
> Planes angeht.
>
> Wühlhase schrieb:
>> ...
Christian B. schrieb:
> Mag gehen, ist aber viel zu umständlich. Das Problem ist: Ich habe das
> Ding in einer 10 Lagigen Platine, wobei sich die Anschlüsse, welche nach
> außen geführt werden, nur in den Innenlagen befinden.

Ja, und? Du machst doch im Footprinteditor eh nichts anderes als im PCB: 
Du nagelst einen Pin/Via durch.


Christian B. schrieb:
> Das ist beim
> Anlegen eines Bauteils zwar möglich, aber nervig, weil man dann nämlich
> eine pcb lib nur für das eine Bauteil entwerfen muss, die 10 Lagig ist.

Für solche Sachen hab ich in jedem Projekt eine kleine Bibliothek, da 
kommen solche "projektinternen Bauteile" rein. Symbol und meist auch den 
Footprint kopiere ich dann da rein, bearbeite das wie gewünscht oder 
erstelle neu, meist ist das in <5min erledigt. So eine projektinterne 
Bibliothek brauche ich meistens mindestens für Controller oder Stecker, 
da ich dort immer ein neues Symbol erstelle.


Christian B. schrieb:
> Ergo: Man lebt mit der Kröte, man kennt sie und kann damit umgehen,
> fertig.
Naja, wenn man alleine wurschtelt kann man das so machen. Bis ich das so 
dokumentiert hab daß es bei Kollegen (oder bei mir, ein halbes Jahr 
später) keine Fragen mehr aufwirft, hab ich es auch vernünftig gelöst.

von Taz G. (taz1971)


Lesenswert?

Wühlhase schrieb:
> Bis ich das so
> dokumentiert hab daß es bei Kollegen (oder bei mir, ein halbes Jahr
> später) keine Fragen mehr aufwirft, hab ich es auch vernünftig gelöst.

Ich steh so ein wenig dazwischen. Wenn man ein Violation 'waived' wird 
man automatisch nach Author und Grund gefragt, dort kann man erklären 
WARUM.
Das ist jetzt stark Fallabhängig aber der Weg ist vielleicht besser als 
irgendein komplizierter, nicht intuitiver Workaround über eine seltsam 
konstruierte Rule.
Ich bin bei über 300 Platinen und habst noch immer über die Rules 
vernünftig hin bekomme. Aber ich weiß es gibt Sonderfälle, die gehen 
einfach gar nicht oder nur extrem kompliziert.
Ich halte Christian B. für kompetent genug selber zu entscheiden.

von Wühlhase (Gast)


Lesenswert?

Taz G. schrieb:
> Ich halte Christian B. für kompetent genug selber zu entscheiden.

Das würde ich auch nicht abstreiten wollen-auch wenn mir sein Beispiel 
sehr merkwürdig vorkam.

von Christian B. (luckyfu)


Lesenswert?

ich poste Montag mal ein Screenshot von dem Teil. Da sieht man sofort, 
was los ist.

Taz G. schrieb:
> Ich halte Christian B. für kompetent genug selber zu entscheiden.

Danke sehr :)

Ganz allein bin ich nicht, wir sind schon zu zweit. Aber wir haben nur 
eine Datenbank. Projektspezifisches gibt es nicht. Das würde bei uns zu 
Chaos führen und den Aufwand das zu pflegen stark erhöhen. Wir haben 
unsere Library ziemlich stark mit unseren Bestückern verbunden, soweit, 
daß sogar deren Bauteil SAP Nummern in der Lib sind. Die Bauteile müssen 
natürlich gepflegt werden. Hab ich eine lib ist das nicht so schwierig, 
bei projektbezogenen bleibt die Zeit aber stehen und ich muss jede 
einzeln nachpflegen. Den Sinn sehe ich allenfalls, wenn man 
Auftragsentwicklungen macht. Ich mache das aber für eine Firma, da kann 
ich mich auf eine Lib beschränken, die dann etwas umfangreicher sein 
darf.

von Christian B. (luckyfu)


Angehängte Dateien:

Lesenswert?

Anbei das versprochene Bild. Ich hab noch keine Planes berechnet, da ich 
noch in einem Redesign stecke, deshalb fehlen diese auf der Bottom Seite 
sowie auf den Innenlagen,w as zu den vielen Airwires führt, davon also 
nicht irritieren lassen.

Die Steckerkontakte auf der Bottomseite sind Galvanisch vergoldet, als 
Gegenpart zu Samtecs FSI und SIBF Connectoren.

Wie man sieht geht es recht Eng zu. Ich hätte auch Trennbohrungen 
vorsehen können zwischen den Steckerlandeflächen und dem Nutzenrand. Das 
jedoch zu erklären ist aufwändiger als die Leiterbahnen direkt zu 
ziehen. So sieht jeder CAM Mitarbeiter sofort, was ich als Layouter 
damit sagen will, ohne, daß ich noch einen Roman dazu verfassen muss. 
Ein Stück weiter unten gibt es noch einen 3. Port, welcher aber über 
Isolationsgräben verfügt und somit eine mögliche Isolation von Teilen 
der Elektronik ermöglicht.

Das Interface ist ein Universalport. Wir haben in unseren Maschinen eine 
Steuerplatine (einen Teilausschnitt davon sieht man auf dem Bild) welche 
mit 2 gerätespezifischen Platinen eine Gerätesteuerung bildet. Auf die 
Rechnerplatine selbst wird ein Steuermodul aufgesteckt, was 
gerätespezifische Elektronik beinhaltet. Der so entstandene Stack wird 
dann auf eine gerätespezifische Steckerplatine geführt, welche die 
entsprechenden Interfaceverbindungen zum Gerät herstellt. Die 
Steckverbinderplatine soll im Fehlerfall im Gerät bleiben und somit ist 
die Steuerplatine leicht vom Rest trennbar. Ein Austausch im Feld kann 
in kurzer Zeit erfolgen, ohne sämtliche Geräteverbindungen kappen zu 
müssen. Deshalb ist auf der Steckerplatine auch nahezu keine Elektronik, 
welche für Fehler sorgen kann. Ausserdem gibt es noch die Forderung der 
Modularität: Benötige ich nur wenige Interfaces soll auch die 
entsprechende Platine klein sein und muss nicht über alle Verbindungen 
verfügen. Das führt uns zu Samtecs FSI System (SIBF zur 
Stromübertragung), welches Modular nur die Kontaktbreite bereitstellt, 
welche auch tatsächlich benötigt wird. (Deshalb gibt es unterschiedliche 
Fangbohrungsstützpunkte) Diese Steckverbinder kommen ohne 
Platinengegenpart aus, benötigen aber eine Galvanisch vergoldete 
Kontaktfläche um auch langfristig sicher zu funktionieren. Und das 
bringt uns zu des Pudels Kern, wie man so schön sagt.

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.