eagle: Wie überprüfen, ob 100% geroutet wurde?

OP #4709934
Ich habe beim Autorouten immer mal wieder kleine Fehler, die ich dann 
manuell behebe. Nach dem Autorouting steht unten links zu wie viel 
Prozent das Routing abgeschlossen wurde.

Wie kann ich nach der Behebung der Fehler den Prozentsatz nochmals 
berechnen lassen, um zu prüfen, ob ich auch keinen Fehler übersehen 
habe?

Frank
Gast
Frank S. schrieb:
> Wie kann ich nach der Behebung der Fehler den Prozentsatz nochmals
> berechnen lassen, um zu prüfen, ob ich auch keinen Fehler übersehen
> habe?

ratsnest [enter]
Dann zeigt er dir an, wie viele Luftlinien er noch hat.
Oder, wenn alles geroutet ist, zeigt er: "Nichts zu tun!"
OP
Danke für die Info. Genau das habe ich gesucht.
Nun habe ich einen Fall, in dem eine Luftlinie angegeben ist, ich diese 
aber nicht finde. Gibt es eine Möglichkeit, das Bild dorthin springen zu 
lassen? Also ähnlich "nächste"

Frank
Gast
Aktuell ich mir nichts bekannt.. Ich blende alle layer aus und dann nur 
airwires an. Dann sieht man das auf einem schwarzen Hintergrund ganz 
gut. Für die ganzen layer hat man ja meist eh seine hotkeys, damit 
wieder die Grundeinstellung da ist, die einem gefällt.
Gast
Alle Layer so eingestellt lassen wie sie vorher waren. Es muss nichts 
ausgeblendet werden.
Man findet eine Luftlinie, egal wie kurz sie ist, indem man das Board 
minimal klein zoomt und dann den Route-Befehl anwendet und irgendwo auf 
das kleine Board klickt. Die Luftlinie wird spätestends nach dem 2. 
Klick gefangen und man kann routen.
Zum routen selbst sollte man das Board mit dem Mausrad natürlich vorher 
wieder größer zoomen. Das geht auch während man die Leiterbahn am Cursor 
hängen hat.
Eine sinnvolle Einstellung des Zoom-Faktors pro Mausrad-Raster ist 
empfehlenswert. (Ich habe 1,2 eingestellt)
Wie schon zu lesen ist, ratsnest ausführen, dann wird angezeigt, wie 
viele Luftlinien es noch gibt.

Unter Optionen - Einstellungen - Verschiedenes den Fangfaktor auf 0 
setzen, dann findet Eagle die Luftlinie, egal wie weit man mit der Maus 
davon entfernt ist.

Wenn einen die durch ratsnest generierten Masseflächen stören: "ripup 
@;" entfernt die Masseflächen wieder.
OP
Vielen Dank für eure Tipps. Ich habe die Luftlinie gefunden. Sie war in 
einem Pad eines SMD-Bauteils "versteckt". Also wirklich miniklein.

Genial ist auch der Tip "ripup @;" Den kannte ich noch nicht und werde 
ihn mir gleich mal notieren.

Frank
Gast
Frank S. schrieb:
> Genial ist auch der Tip "ripup @;" Den kannte ich noch nicht und werde
> ihn mir gleich mal notieren.

Mach dir nen Shortcut dafür...Strg+R zb
Und wie schon gesagt mit Fangfaktor auf 0 findet man alle Luftlinien
Gast
Georg schrieb:
> Es ist durchaus möglich, dass eine Verbindung nur aus einem einzigen
> Pixel besteht.

Das konnte einem vor nicht allzu langer Zeit regelrecht zur Verzweiflung 
bringen.

Heute,  mit einem modernen EDA-CAD (z.B. mit KiCad ;-)
kann man diese Punkte alle per Klick in der Fehlerliste anfahren.
Frank S. schrieb:
> Nun habe ich einen Fall, in dem eine Luftlinie angegeben ist, ich diese
> aber nicht finde. Gibt es eine Möglichkeit, das Bild dorthin springen zu
> lassen?

Ich zoome in diesem Fall GANZ raus, wähle das Werkzeug zum Routing aus, 
klicke, und zoome wieder rein. Dann hab ich stets eine der letzten 
(unsichtbaren^^) Luftlinien erwischt.
Gast
moin,
folgendes ULP starten und schon ist das Gummiband gefunden

Gruß tom

/*
 *  UNROUTED.ULP
 *
 *  simple script to zoom to the first unrouted wire in board editor.
 *  this might be helpful when searching for tiny left-overs.
 *
 *  done by Daniel Mack <daniel@caiaq.de>, http://caiaq.de
 */

int gridunit;

real u2u(int val) {
  switch (gridunit) {
     case GRID_UNIT_MIC  : return u2mic(val);
     case GRID_UNIT_MM   : return u2mm(val);
     case GRID_UNIT_MIL  : return u2mil(val);
     case GRID_UNIT_INCH : return u2inch(val);
     }
}

string RunOnExit = "";

if (board) {
  board(B) {
    gridunit = (B.grid.unit);
    B.signals(S) {
      S.wires(W) {
        if (W.layer == 19) {
          real x1 = u2u(W.x1);
          real x2 = u2u(W.x2);
          real y1 = u2u(W.y1);
          real y2 = u2u(W.y2);

          x1 -= (x2 - x1) / 2;
          x2 += (x2 - x1) / 2;
          y1 -= (y2 - y1) / 2;
          y2 += (y2 - y1) / 2;

          sprintf(RunOnExit, "\nWINDOW (%.6f %.6f) (%.6f %.6f);\n", x1, 
y1, x2, y2);
          exit (RunOnExit);
        }
      }
    }
  }
}

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.