PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Erfahrungsbericht: Einseitiges Layout mit Eagle Autorouter



fumir
09.11.2007, 15:50
Einige hatten schon mal nach diversen Problemen in diesem Zusammenhang gefragt, deshalb hier mal ne Zusammenfassung meiner eigenen Erfahrungen (hab grad mit Eagle angefangen)

1. Warum routet der autorouter nichts?
vermutlich ein zu großes routingraster / leiterbahnbreite (siehe unten) eingestellt.
Ist mir am anfang passsiert. das Raster zum routen (autorouter-routinggrid) kann man ruhig recht klein wählen (mit 50mil anfangen und dann immer kleiner machen, bis was kommt)

2. Wie begrenze ich den Autorouter auf die untere Platinenseite?
- Man kann den toplayer einfach ausschalten (bearbeiten->designregeln->layers)
aber dann kann man auch keine Bahnen mehr manuell in den toplayer einzeichnen (drahtbrücken) - also besser nicht.
- Man kann dem Autorouter mitteilen, das Leitungen auf dem toplayer teuer sind (Autorouter->route->layerkosten=99) dann vermeidet er nach möglichkeit den toplayer.
Das hilft, ist aber nicht das gelbe vom ei.
- Man wählt als Vorzugsrichtung auf dem toplayer N/A (autorouter->general) dann routet er garantiert nicht mehr auf dem toplayer.

3. Wie bringe ich den Autorouter dazu, verschiedene Leiterbahnbreiten zu verwenden?
- erst mal im schaltplan verschiedene Netzklassen definieren (z.b. je leiterbahnbreite eine)
- dann in der schaltung die netzklasse der signale entsprechend einstellen (change->class)
- dann den autorouter starten.

so weit im groben, jetzt wirds interesant:

4. Wie bringe ich den Autorouter dazu, was wirklich brauchbares zu produzieren?
leider macht der router nicht immer alles perfekt. deshalb muss man nachhelfen.
- erst mal die Bauteile gut plazieren (luftlinien)
- dann routen lassen
- nachschauen wos klemmt, dort bauteile verschieben/drehen
- alle verbindungen löschen
- und alles noch mal von vorne routen lassen
- immer wiederholen bis möglichst wenige nicht geroutete verbindungen übrig bleiben.
- diese dann manuell verbinden, indem man an geeigneten stellen auf den toplayer wechselt (es werden dann automatisch durchkontaktierungen eingefügt) und wieder zurück auf den bottomlayer.

5. Und mit verschiedenen Leiterbahnbreiten (dicke masseleitungen) ?
im Prinzip genauso, aber mit folgenden ergänzungen:
- erst mal in allen netzklassen eine viel zu große leiterbahnbreite eintragen (2000mil)
- die netzklasse mit der breitesten bahn richtig einstellen und routen lassen (jetzt werden nur die leitungen dieser netzklasse geroutet!)
- die Bauteile verschieben, um diese Netzklasse zu optimieren (kurze verbindungen für die dicken bahnen)
- alle verbindungen löschen, neu routen lassen.
- die nächste Netzklasse richtig einstellen und dazu routen lassen (jetzt hat man z.b. alle verbindungen der ersten und zweiten netzklasse)
- wieder bauteilpositionen optimieren, alles löschen, von vorne beginnen.
- so nach und nach alle netzklassen routen (geht ganz gut so)
- wenn dann keine verbesserung mehr zu erreichen ist: manuell mit drahtbrücken fertig routen

6. Das sieht immer noch doof aus?
selbst wenn man alles geroutet hat, gibts noch was zu tun:
der Autorouter verlegt die leitungen so, dass sie passen, kurz sind, und die regeln eingehalten werden - aber nicht immer schön.
wer auch noch was fürs auge haben will, kann nun alle bahnen per hand optimieren.
das ist natürlich nur sinnvoll, wenn man's wirklich besser kann, als der autorouter :-)

FAZIT: der Autorouter ist schon ne große Hilfe, aber alleine schafft ers nicht. für ein gutes layout, muss man schon auch etwas kretivität im umgang mit dem werkzeug zeigen.

CNCer
09.11.2007, 17:39
Es wurde gesagt das man immer wieder routen soll bis man eine gute Position der Bauteile raus hat.

Das kann meiner Erfahrung nach aber nur bei recht kleinen Schaltungen durchgeführt werden.
Bei etwas umfangreicheren Schaltungen kann es schnell passieren das 1-mal routen nicht unter 10 Minuten zu machen ist.
Selbst mit leistungsstarken Rechnern wird man nicht schneller routen können da Eagle (wie sollte es auch anders sein) keine Multicore CPUs unterstützt.
Weshalb die hier dargestellte Verfahrensweise nur bedingt für die Praxis tauglich ist.

Hier wäre es ein Segen wenn das Programm selbstständig nach der Optimalen Position der Bauelemente suchen würde. (geht aber derzeit natürlich nicht)

fumir
09.11.2007, 17:53
dann kauf dir eben ein profiprogramm für 50.000EUR und lass es auf nem 200.000EUR Rechner laufen, dann klappts auch mit dem autoplacing :-p

also ich hab nur nen recht lahmen rechner und kann auch mal ne minute warten.

CNCer
09.11.2007, 18:33
Von einer Minute war nicht die Rede, vielmehr von 10.
Ich behaupte nicht dass dein Weg schlecht ist.
Aber man muss dazu sagen dass man das am besten bei kleineren Projekten anwendet.

fumir
09.11.2007, 18:46
es würde mich mal interessieren, wie die alternative für große projekte aussehen soll !
im prinzip würde ein autoplacer auch nicht viel anders vorgehen, als bauteile umzuordnen und zu sehen was dabei rauskommt. d.h. selbst wenn eagle einen autoplacer hätte, würds damit vermutlich nicht viel schneller gehen.

schneller gehts immer nur mit mehr rechenleistung, denn du wirst heutzutage kaum noch ein programm finden, welches wirklich ineffiziente algorithmen verwendet (ich rede jetzt nicht davon, dass ein program 30% schneller ist, als ein anderes. so etwas ist marginal)

was die multicores angeht: hast dir wohl für teures geld so ne kiste gekauft und ärgerst dich jetzt, das es noch keine software dazu gibt :-) zu deinem trost: meine dienststelle hat vor zwei jahren nen cluster für viel geld aufgebaut, und da läuft immer noch fast nix parallel. das ist nämlich nicht so einfach wies aussieht!
mal davon abgesehen, das routing als solches ein sehr kompliziertes problem ist.

poste mal so ein projekt, bei dem der router bei dir 10min braucht. würde ich schon gerne mal sehen, nur um zu wissen, wovon wir eigentlich reden. Mein beispiel ist ja nun wirklich recht klein, aber viel mehr geht mit meiner kostenlosen version auch nicht.

CNCer
09.11.2007, 20:04
Komisch, jedes zweitklassige Spiel unterstützt heutzutage dual core.

Das du an Eagle als demo Nutzer nichts auszusetzen hast kann ich nachvollziehen.
Aber wer für die Vollversion 1428€ geblättert hat kann über das ein oder andere nur den Kopf schütteln.

Was solche 10min Projekte angeht schicke ich dir gern Bilder aber das ich sowas nicht öffentlich mache musst du mir nachsehen.

Ps. Dual core’s sind für weniger als 60€ zu haben. ;-)

avion23
09.11.2007, 22:46
von fumir

schneller gehts immer nur mit mehr rechenleistung, denn du wirst heutzutage kaum noch ein programm finden, welches wirklich ineffiziente algorithmen verwendet

Wenn die Angaben in der Anleitung und in den Tutorials stimmen, dann verwendet eagle einen primitiven und schlechten Algorithmus. Das kann man wesentlich besser machen! Einfach mal informieren, ist garnicht so schwer (NP) ;)


EDIT: Falsches Zitat :(

Besserwessi
10.11.2007, 11:49
Wenn ich mir die vielen Schritte sehe um mit dem Autorouter eine einseitige Platine zu erstellen, sollte man sich überlegen das Routen ganz von Hand zu machen. Ich habe es auch man mit dem Autorouter probiert (allerdings nur mit einer Netzklasse) und habe dann aufgegeben. Ganz einfache Schaltungen gehen wieder mit dem Autorouter. Aber wenn es so eng wird, das man gerade noch einseitig mit einigen wenigen Drahtbrücken auskommt halte ich den Autorouter nicht mehr für sinnvoll.
Ich habe zum Spass mal die Bauteile so gelassen wie ich sie beim Routen von Hand hatte und den Autorouter probieren lassen: hat bei weitem nicht funktioniert, selbst mit mehr Abstand. Vielleicht habe ich aber auch einfach zu hohe Anforderungen bei einseitigen Platinen.
Für Platinen mit mehr Layern hat es der Autorouter dann einfacher und es wird von Hand einfach unübersichtlicher. Wenn man die (Arbeits-)Zeit mitrechent kann es sich dann lohnen eine Platine 2 seitig machen statt von Hand zu Routen, und bei reinen SMD Platinen kommt man oft nur 2 seitig oder gar als Multilayer aus.

fumir
10.11.2007, 12:52
Komisch, jedes zweitklassige Spiel unterstützt heutzutage dual core.

Das du an Eagle als demo Nutzer nichts auszusetzen hast kann ich nachvollziehen.
Aber wer für die Vollversion 1428€ geblättert hat kann über das ein oder andere nur den Kopf schütteln.

Was solche 10min Projekte angeht schicke ich dir gern Bilder aber das ich sowas nicht öffentlich mache musst du mir nachsehen.

Ps. Dual core’s sind für weniger als 60€ zu haben. ;-)

nun ja, auch zweitklassige spiele sind heutzutage oft recht teuer.

bevor ich 1428€ bezahlen würde, würde ich mir aber erst mal genau anschauen, ob das programm für meine zwecke geeignet ist (sofern ich nicht soviel geld hätte, das es keine rolle spielt)! wie ich einem anderen beitrag entnehme, ist der von eagle verwendete routing-algorithmus in der docu angegeben, so das man vorher wissen kann, wofür an sein geld ausgibt.

über solche bilder würde ich mich freuen, ich poste dir mal meine emailadr.

nun wissen wir aber immer noch nicht, wie mans (mit eagle) besser machen kann.
wirklich toll find ich das auch nicht, immer wieder von vorne zu routen.
allerdings gings bei meinem kleinen beispiel immer noch schneller als per hand (bezogen auf die qualität des ergebnisses.

fumir
10.11.2007, 13:01
Wenn die Angaben in der Anleitung und in den Tutorials stimmen, dann verwendet eagle einen primitiven und schlechten Algorithmus.

hab die angabe ripup-and-retry-algorithmus gefunden und mir in der tat bis jetzt keine gedanken dazu gemacht.

so auf die schnelle hab ich bei google und wiki nicht viel dazu gefunden (nur so schnippsel, wie z.b. nen artikel über topologisches routen, aber keinen brauchbaren überblick).
wenn du dich damit auskennst, kannst du ja mal in nem thread die einzelnen algorithmen kurz vorstellen (arbeitsweise, vor-, nachteile, software die den algo verwendet).
würde mich sehr interessieren.

magic33
19.11.2007, 16:15
mal zurück zum THEMA

eagel ist besser als coreldraw soviel steht fest

informationen zu design regeln wären nicht schlecht

was überschreibt was zum beispiel
in der NETclass gibts width und clearence
und in DRC auch

also wo kann ich den abstand zwichen leitung und pad einstelen
nur in DRC oder was ist der wert in Netclass

fumir
20.11.2007, 09:04
die werte sind ja mindestwerte. deshalb nehme ich an, das im zweifel der größere abstand den kleineren überschreibt, unabhängig davon, wo der wert definiert ist.

bei den DRC sind immer so nette kleine grafiken dabei, an denen man sehen kann, welcher abstand genau gemeint ist.

in den netzklassen wird die mindestleiterbahnbreite, der mindestabstand zu anderen signalen (egal ob bahn oder pad) und der mindestbohrdurchmesser eingestellt.

der autorouter verwendet natürlich immer diese mindestwerte, aber man kann z.b. die bahnbreite beim manuellen routen breiter wählen, ohne einen DRC fehler zu bekommen.