Forum: Platinen Target - intelligente Positionierung?


von cmb (Gast)


Lesenswert?

Hallo,

mal eine Frage:
Kennt jemand eine Funktion in Target, mit der auf der Platine die 
Bauteile bestmöglichst sortiert werden, um mit möglichst einer 
Kupferebene auszukommen?

Das einzigste was ich finde, ist ein Autoplazierer, der Zufällig 
anordnet, wobei der Autorouter dann nicht mehr alle Signale verlegt 
bekommt. Und per Hand ist halt immer mühsam.

Ich würde mich sehr über einen Tipp freuen.

Gruß Jonas

von Uwe (Gast)


Lesenswert?

Hallo Jonas,

vergiss bitte Autoplacer und Autorouter. Die besten Ergebnisse bekommst 
du nur per Hand hin. Natürlich ist dies mühsamer als eine 
Autoplacer-Funktion aufzurufen. Und natürlich braucht es Erfahrung - die 
man natürlich nur mit reichlich Praxis/ Übung erhält.
Der beste "Placer" und "Router" ist nicht in irgentwelchen Menues (egal 
welches Tool) versteckt, sondern im Kopf des Layouters.

Also, setzt dich hinter dein Layout, plaziere geschickt manuell und du 
wirst sehen, das Routing geht danach wie fast von selbst.
Ausserdem ist das optische Ergebniss in der Regel ansprechender. Nichts 
ist schlimmer, als viel Geld in Platinen zu stecken, der man ansieht, 
das  ein Autorouter am Werk war. Glaub mir, das sieht man wirklich...

Gruss Uwe

P.S. Ein Autorouter ist nicht unbedingt schneller als ein Mensch. Bevor 
du ihm alle Design-Rules beigebracht hast, hat ein guter Layouter im 
Zweifelsfall das Board schon gerouted.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Uwe wrote:

> P.S. Ein Autorouter ist nicht unbedingt schneller als ein Mensch. Bevor
> du ihm alle Design-Rules beigebracht hast, hat ein guter Layouter im
> Zweifelsfall das Board schon gerouted.

...um dann den gleichen Aufwand nochmal zu investieren, sowie sich
was ändert.

Jaja, heutige ICs würde sicher keiner bezahlen wollen, wenn das Routing
wirklich jedes Mal mit der Hand erfolgen müsste.  Nur, weil es bei
PCB-Layout-Autoroutern so viel Schrott gibt, heißt noch lange nicht,
dass Autorouter an sich deshalb Mist sind, auch wenn das in diesem
Forum hier nahezu gebetsmühlenartig wiederholt wird.

Der Wert von Autplacern war vermutlich jedoch noch größer zu Zeiten
der großen TTL-Gräber.  Mit der heutigen dichten Integration
wesentlicher Funktionen in einem IC-Gehäuse sehe ich dafür weniger
Bedarf.

von Jupp (Gast)


Lesenswert?

Specctra Autorouter !!

von Uwe (Gast)


Lesenswert?

Hallo Jörg,

> ...um dann den gleichen Aufwand nochmal zu investieren, sowie sich
> was ändert.

Naja, normalerweise ändert sich nicht so viel bei einer Revision, das 
man von einem komplett neuen Routing sprechen muss.

> Jaja, heutige ICs würde sicher keiner bezahlen wollen, wenn das Routing
> wirklich jedes Mal mit der Hand erfolgen müsste

IC's oder Pcb ? Bei den aktuellen Transitor-Monstern wie den aktuellen 
Chips von Nvidia oder ATI macht ein Autorouter sogar Sinn. Bei Pcb's 
kann ich dir versichern, das es viele Firmen gibt, die für Handgemachte 
Layouts auch Geld bezahlen wollen !

> Nur, weil es bei PCB-Layout-Autoroutern so viel Schrott gibt, ...

also doch nicht so optimal ....

> ... heißt noch lange nicht, dass Autorouter an sich deshalb Mist sind,
> auch wenn das in diesem Forum hier nahezu gebetsmühlenartig wiederholt wird.

Ich sagte auch nicht, das die Dinger kompletter Schrott sind. Bevor die 
halbwegs brauchbare Ergebnisse liefern Konfiguriert man sich zu Tode.

Ist natürlich auch eine Ansichtssache:
Wenn ich mich auf einen hohen Berg tragen lasse, kann ich nicht 
behaupten, den Berg besiegt zu haben. Ich habe ihn besiegen lassen ....

Gruss Uwe

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Uwe wrote:

> Naja, normalerweise ändert sich nicht so viel bei einer Revision, das
> man von einem komplett neuen Routing sprechen muss.

Klar.  Wenn du das Ding mit der Hand geroutet hast, dann kannst du
dir das auch gar nicht leisten, da noch nennenswert was danach zu
ändern.  Mir ging es ja auch darum, dass man oft kurz vor der
Fertigstellung noch irgendeine Gurke entdeckt, die dann Blasen
zieht.  Hat man nun den Aufwand statt ins eigentliche Routing in
die Parametrierung des Autorouters gesteckt, dann braucht man sich
nicht zu scheuen, die notwendige Änderung noch durchzuziehen.  Hat
man alles mit der Hand geroutet, dann wird man den Teufel tun, und
stattdessen wird man irgendeine Art von ,,Flickschusterei''
betreiben, um den Fehler zu beheben.

>> Nur, weil es bei PCB-Layout-Autoroutern so viel Schrott gibt, ...
>
> also doch nicht so optimal ....

Man muss ja nicht immer das Schlechteste zur Norm erheben.

> Ich sagte auch nicht, das die Dinger kompletter Schrott sind. Bevor die
> halbwegs brauchbare Ergebnisse liefern Konfiguriert man sich zu Tode.

Kann ich halt nicht bestätigen.  Siehe

Beitrag "Re: Hilfe: Sch***e kompliziert so ein Leiterbahnen Routing."

-- und das war nun wirklich nur ein 10-Minuten-Hack, bei dem ich
praktisch gar nichts konfiguriert habe.

> Wenn ich mich auf einen hohen Berg tragen lasse, kann ich nicht
> behaupten, den Berg besiegt zu haben. Ich habe ihn besiegen lassen ....

Das ist allerdings ein rein sportlicher Aspekt.  Sport muss sich aber
nicht an wirtschaftlichen Kriterien messen, dort erringt man den Sieg
um des Sieges Willen.  Irgendeine praktische Relevanz hat es nicht,
den Kilimandscharo von oben gesehen zu haben.

von Uwe (Gast)


Lesenswert?

>> Ich sagte auch nicht, das die Dinger kompletter Schrott sind. Bevor die
>> halbwegs brauchbare Ergebnisse liefern Konfiguriert man sich zu Tode.

> Kann ich halt nicht bestätigen.  Siehe

> Beitrag "Hilfe: Sch***e kompliziert so ein Leiterbahnen Routing."

> -- und das war nun wirklich nur ein 10-Minuten-Hack, bei dem ich
> praktisch gar nichts konfiguriert habe.

Nun, ich spreche von etwas komplizieren Layouts, da, wo mal richtig 
viele Netze am Start sind. Bei solch kleinen Teilen macht es doch keinen 
Spass.
Bitte nicht falsch verstehen, Autorouter auf so was loszulassen ist wie 
mit Kanonen auf Spatzen schiessen. (ich liebe Vergleiche).

Im Falle von Jonas geht es mir persönlich auch um einen Lerneffekt.
Und dem Autorouter bei der Arbeit zuzuschauen bringt diesbezüglich nix.

Gruss Uwe

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Uwe wrote:

> Nun, ich spreche von etwas komplizieren Layouts, da, wo mal richtig
> viele Netze am Start sind.

Nun, je komplizierter, um so größer ist allerdings die Zeitersparnis.
Da kann man dann locker mehrere Wochen durch vielleicht zwei Tage
ersetzen.

von Sven P. (Gast)


Lesenswert?

Autorouter und Autoplazierer sind prinzipbedingt eigentlich 
unbrauchbar, zumindest im Preissegment von Target und Eagle.
Es gibt schlicht und einfach kein ideales Routing, keine ideale 
Plazierung, und schon garkeine, die ein Computer in endlicher Zeit 
errechnen könnte.
Genauso wenig gibts ideale Stundenpläne usw.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Sven P. wrote:

> Autorouter und Autoplazierer sind prinzipbedingt *eigentlich*
> unbrauchbar, zumindest im Preissegment von Target und Eagle.

,,zumindest bei Target und Eagle''.  Das hat nicht notwendiger
Weise was mit dem Preis zu tun.

> Es gibt schlicht und einfach kein ideales Routing, keine ideale
> Plazierung, und schon garkeine, die ein Computer in endlicher Zeit
> errechnen könnte.

Warum sollte ein Mensch das dann können?  Der hat noch viel weniger
auf einmal im Blick von all den Anforderungen.

Ich stimme dir zu, dass es keine idealen Lösungen für derartige
Probleme gibt.  Die Frage ist einfach: taugt die gefundene Lösung
für den Zweck oder nicht?  Wenn sie das tut, dann hat der Autorouter
seine Pflicht und Schuldigkeit getan, denn genau das ist seine
Aufgabe.  Der Mensch betrachtet seine Aufgabe an der gleichen Stelle
als beendet und wird einen Teufel tun, das einmal fertige Layout
nochmal anzufassen, nur weil er feststellt, wie man es ästhetisch
wertvoller realisieren könnte...

Damit wir uns recht verstehen: es gibt selbstverständlich Baugruppen,
die man einem Autorouter nicht überlassen wird.  Dazu gehört so
ziemlich alles Analoge, insbesondere wenn die Frequenzen höher sind.
Aber diese Vehemenz, mit der manche Leute hier behaupten, dass sie
ein 08/15-Digitallayout besser hin bekämen als ein vernünftiger
Autorouter, spricht Bände.  Was zum Geier[TM] soll ein übertriebener
,,ästhetischer Anspruch'' hier?  Wer fragt denn danach, ob die
Zahnform der Zahnräder im Getriebe seines Fahrzeugs irgendwelchen
ästhetischen Ansprüchen genügen?  Sie müssen funktionieren, mehr
interessiert am Ende nicht.  Genauso sehe ich das für ein derartiges
Layout: wenn es am Ende funktioniert, dann hat es seinen Zweck
erfüllt.  Die frei gewordene Zeit kann ich mit nützlicheren Dingen
verbringen, als weitere Stunden oder Tage vor dem Computer zu
verbringen.

von Sven P. (Gast)


Lesenswert?

Jörg Wunsch wrote:
> ,,zumindest bei Target und Eagle''.  Das hat nicht notwendiger
> Weise was mit dem Preis zu tun.
Nujo, oder so.

>> Es gibt schlicht und einfach kein ideales Routing, keine ideale
>> Plazierung, und schon garkeine, die ein Computer in endlicher Zeit
>> errechnen könnte.
>
> Warum sollte ein Mensch das dann können?  Der hat noch viel weniger
> auf einmal im Blick von all den Anforderungen.
Das kann auch kein Mensch.

> [dumdidumdidum]
>  Sie müssen funktionieren, mehr
> interessiert am Ende nicht.  Genauso sehe ich das für ein derartiges
> Layout: wenn es am Ende funktioniert, dann hat es seinen Zweck
> erfüllt.  Die frei gewordene Zeit kann ich mit nützlicheren Dingen
> verbringen, als weitere Stunden oder Tage vor dem Computer zu
> verbringen.
Sehe ich genauso. Was ich meine ist: Hat der Autorouter mal gewütet, ist 
von Hand kaum noch was zu machen -- zumindest bei denen von Eagle und 
Target.

Will auch sagen: Viele setzen einfach zu viele 'Hoffnungen' in die 
Billigautorouter. Die sind kein Wundermittel :-)

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Sven P. wrote:

> Sehe ich genauso. Was ich meine ist: Hat der Autorouter mal gewütet, ist
> von Hand kaum noch was zu machen

Volle Zustimmung.  Die ,,empfindlichen'' (und anderweitig irgendwie
,,wichtigen'') Dinge routet man halt mit der Hand, dann kann der
Autorouter die ,,Dreckarbeit'' erledigen.  Zuletzt kommen dann nur
noch die Füllflächen dazu.  Wenn man den Autorouter erst noch im
größeren Maße nacharbeiten darf, dann war es umsonst, dann hätte man
das wohl gleich mit der Hand machen können.

von Detlev T. (detlevt)


Lesenswert?

Ich halte ein Programm, das nach der Eingabe eines Schaltplanes ein 
halbwegs akzeptables Layout automatisch produziert, grundsätzlich für 
unmöglich. Dem Programm fehlen einfach die dafür notwendigen 
Informationen. Woher soll das Programm zum Beispiel wissen, dass alle 
externen Anschlüsse an einer Seite der Platine sein sollen? Und in 
welcher Reihenfolge? Oder dass der Blockkondensator C42 möglichst nahe 
an IC13 sein soll? Das Programm kennt ja nur Verbindungen/Netze. Das 
Thema HF wurde ja schon angesprochen.

Ich habe bei der Erstellung des Schaltplanes meist schon eine grobe 
Vorstellung des Layouts. Den Autorouter (EAGLE) nutze ich dann in der 
Anfangsphase, um zu testen, ob ein Routing so wahrscheinlich möglich 
sein wird. Dazu lasse ich ihn die ganze Platine bearbeiten. Das Ergebnis 
ist dann zwar in der Regel recht suboptimal, aber ich bekomme dadurch 
eine Vorstellung, wie das endgültige Layout aussehen könnte.

Das endgültige Routing ist dann eine Mischung zwischen reiner Handarbeit 
und dem Verlegen per Autorouter einzelner Netze mit ein wenig manueller 
Nachbearbeitung.

Bei TARGET war das auch nicht entscheidend anders, als ich noch damit 
gearbeitet habe. Teurere Programme leisten da vielleicht mehr und 
rechtfertigen durch die Zeitersparnis auch ihren Preis. Aber gänzlich 
anders wird die Arbeit damit auch nicht sein.

von Sven P. (Gast)


Lesenswert?

Autorouter müssen sich ja auch nicht zwangsläufig als 
'Ein-Klick-Haudrauf-Methode' zeigen. Autorouting ists doch eigentlich 
auch schon, wenn beispielsweise (wie bei Altium) eine alte Verbindung 
auf Wunsch gelöscht wird, sobald eine alternative von Hand gezogen wurde 
usw.
Oder automatisches 'umrouten' von Löchern bei Bussen usw.

von Blackbird (Gast)


Lesenswert?

Das "Autoplacing" geht wirklich so am Besten, wie @detlevt es 
beschrieben hat:
Die BE für die Anschlüsse und die Befestigungslöcher o.ä. platzieren, 
danach den Rest, jedoch immer nur (bau-)gruppenweise plazieren und den 
Autorouter laufen lassen.
Dann erkenn man schon, ob man das eine oder andere BE verschieben muß.

Immer wieder die gerouteteten Leiterbahnen löschen und dann nochmals 
routen lassen, bis man für diese eine BE-Gruppe eine zufriedenstellende 
Plazierung gefunden hat.

Jetzt die nächste BE-Gruppe und das gleiche Spiel. Bis dann alle BE auf 
der Platine sind.
Und hier ist der Punkt erreicht, wo der Autorouter am Schluß auch ein 
recht gutes Ergebnis liefert.

Einzelne, sensible Leitungen kann man auch von Hand Routen, auch ist es 
möglich nur ausgewählte leitungen mit einer andernen Leiterbahnbreite zu 
routen. Das kann man schon bei jeder BE-Gruppe machen.

Wenn ich so plaziere, dann schafft der Autorouter (unter Target) alle 
Verbindungen mit einem Rutsch.

Zum Schluß kann man immer noch was für die Ästhetik tun ;)

Blackbird

von Matthias D. (Gast)


Lesenswert?

Hallo Jonas,

das Wichtigste ist ja schon gesagt. So arbeiten wir bei uns, wenn der 
Schaltplan fertig und geprüft ist: Platinen-Outline zeichnen, Stecker 
und Gehäuse mit vorgegebenem Platz setzen. Im Target Schaltplan die 
Baugruppen zusammenfassen zu Modulen (Menü "Bearbeiten" und "Als Modul 
gruppieren"). Jetzt im Layout die dicken ICs auswählen und manuell 
platzieren. Damit verteilst du die Module schon automatisch nach Themen 
sortiert auf der Platine.

Quarze und deren Kondensatoren und die Abblockkondensatoren der ICs 
werden ebenfalls noch manuell platziert. Jetzt kannst du den 
Autoplatzierer für die restlichen Bauteile versuchsweise starten. Immer 
schön Modul für Modul. Der Autoplacer richtet sich scheinbar nur nach 
der Kürze der Luftlinien, Verknotungen interessieren ihn nach meiner 
Erfahrung nicht. Ergebnisse also sofort auf Qualität der Platzierung 
prüfen und evtl. entsprechend korrigieren.

Target zeigt bei jedem Bauteil, das du gerade bewegst die kürzesten 
Luftlinien zu den bereits vorhandenen Bauteilen an, so dass du sehr gut 
sehen kannst, wo und wie herum das Bauteil gut platziert ist und wie 
sich günstige, kurze und wenig überkreuzende Luftlinien ergeben. Mit der 
rechten Maustaste kannst du während des Verschiebens das Teil drehen und 
mit der Taste "s" auf die Unterseite spiegeln.

Wichtiger Merksatz: Gut platziert ist halb geroutet! Jetzt die 
kritischen Bahnen manuell routen: Zuerst Signalbahnen, die wegen 
spezieller Anforderungen sehr kurz oder z.B. exakt gleich lang sein 
müssen. Danach Bahnen, die besonders dick ausfallen, also Masse und 
Versorgung und sonstige Signale, bei denen strommäßig was abgeht.

Zwischendrin immer wieder schön "Prüfen" laufen lassen und auch immer 
mal speichern ;-) Dann die ganze Sache dem Autorouter übergeben. Wenn 
richtig viel auf der Platine los ist, kannst du schon auch den 
Elektra-Autorouter gebrauchen (der kostet allerdings extra). Bahnen 
prüfen lassen, kontrollieren, korrigieren.

Erst am Schluss, wenn kaum noch Änderungen zu erwarten sind, machst du 
evtl. Teardrops und Masseflächen und lässt die unangeschlossenen Inseln 
rausrechnen.

Schöne Grüße, Matthias

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Detlev T. wrote:

> Woher soll das Programm zum Beispiel wissen, dass alle
> externen Anschlüsse an einer Seite der Platine sein sollen? Und in
> welcher Reihenfolge?

Sowas wirst du natürlich immer mit der Hand machen wollen/müssen,
aber das ist ja auch kein ernsthafter Aufwand.

> Oder dass der Blockkondensator C42 möglichst nahe
> an IC13 sein soll? Das Programm kennt ja nur Verbindungen/Netze.

Dafür gibt es allerdings durchaus automatisierte Strategien: alle
kleinen Bauteile werden nahe zu einem großen Bauteil platziert (ein
Cluster), wobei Bauteile mit ausschließlicher Anbindung an
Versorgungsnetze gleichmäßig auf diese Cluster verteilt werden.  Ob
nun C42 an IC13 platziert wird oder C44 ist dir in der Praxis ja
egal, solange in der Nähe von IC13 halt überhaupt ein Abblockkonden-
sator landet.

von Detlev T. (detlevt)


Lesenswert?

Jörg Wunsch wrote:
> Detlev T. wrote:
>> Oder dass der Blockkondensator C42 möglichst nahe
>> an IC13 sein soll? Das Programm kennt ja nur Verbindungen/Netze.
>
> Dafür gibt es allerdings durchaus automatisierte Strategien: alle
> kleinen Bauteile werden nahe zu einem großen Bauteil platziert (ein
> Cluster), wobei Bauteile mit ausschließlicher Anbindung an
> Versorgungsnetze gleichmäßig auf diese Cluster verteilt werden.  Ob
> nun C42 an IC13 platziert wird oder C44 ist dir in der Praxis ja
> egal, solange in der Nähe von IC13 halt überhaupt ein Abblockkonden-
> sator landet.

Es dürfte dir schwer fallen, eine solche Strategie umfassend und 
allgemein in einem Algorithmus zu formulieren. Wie definierst du z.B. 
"klein"?

Man kann ewig Beispiele diskutieren, am Ende läuft es doch auf Eines 
hinaus: Man müsste dem Programm mehr Informationen eingeben als bisher. 
Welches Netz ein Versorgungsnetz ist zum Beispiel. Die logische 
Zuordnung von Bauteilen zueinander (z.B. Abblockkondensatoren) usw. 
Diese zusätzlichen Informationen bedeuten einen zusätzlichen Aufwand bei 
der Eingabe. Man muss dann sehen, ob man das am Ende wirklich wieder 
reinbekommt.

Eine Alternative wäre vielleicht, fertige Baugruppen zu definieren, die 
dann auch gemeinsam positioniert werden. Von einem Programm der 
Preisklasse EAGLE/TARGET würde ich das aber nicht erwarten.

von Jens (Gast)


Lesenswert?

Ich gehe meist folgendermaßen vor:

Den Schaltplan erstelle ich so, dass sich nicht allzu viele Signale 
kreuzen. Das ist mit relativ wenig Aufwand möglich. Und wenn es doch die 
ein oder andere kreuzenden Signale gibt, ist das auch nicht weiter 
schlimm.

Im Layout platziere ich die Bauteile dann so, dass sie mit den 
Positionen im Schaltplan weitestgehend übereinstimmen. Ein Widerstand 
der im Schaltplan links von einem Transistor liegt, wird im Layout auch 
links vom Transistor platziert. Stützkondensatoren u.ä. werden nahe am 
IC platziert. Sofern das möglich ist - aber idR funktioniert das bei 
meinen Schaltungen, denn ich baue ja schließlich keine Mainboards für 
PCs ;)

Danach lasse ich den Autorouter laufen. Vielleicht auch zweimal. Die 
wenigen Leiterbahnen die jetzt noch nicht verlegt wurden, werden per 
Hand verlegt. Und sollte es wirklich einmal vorkommen, dass mein Hirn 
keine geeignete Route findet, dann leg ich halt eine Drahtbrücke.

von Uwe N. (ex-aetzer)


Lesenswert?

Hallo Jens (Gast),

> Den Schaltplan erstelle ich so, dass sich nicht allzu viele Signale
> kreuzen. ....

Hier zählt eine übersichtliche Darstellung. Kreuzende Signale sind kein 
Problem - dafür zu sorgen, das keine Kreuzungen entstehen ist im 
Zweifelsfall kontraproduktiv.

> Und wenn es doch die ein oder andere kreuzenden Signale gibt, ist das
> auch nicht weiter schlimm.

naja, nicht sehr konsequent ;-)

> Im Layout platziere ich die Bauteile dann so, dass sie mit den
> Positionen im Schaltplan weitestgehend übereinstimmen. ...

Allgemein ist das eine schlechte Herangehensweise - sollte man sich 
garnicht erst angewöhnen ! Das funktioniert eigentlich nur dann, wenn du 
das Schematic selbst erstellt hast. Tust du dies bei einem 
"Fremd-Schematic" geht das garantiert nach hinten los. Und für eine 
optimale weil kürzeste Verbindung sorgt es auch nicht unbedingt ...

Die Platzierung sollte sich grundsätzlich nach der Gruppierung der 
einzelnen Funktionsgruppen richten und um Himmelswillen nicht nach der 
Anordnung im Schematic ! Was ist, wenn der Entwickler hier eine andere 
Philosophie verfolgt als du ?

> Sofern das möglich ist - aber idR funktioniert das bei
> meinen Schaltungen, denn ich baue ja schließlich keine Mainboards für
> PCs ;)

Wie gesagt: gewöhn dir diesen Stil garnicht erst an !

> Danach lasse ich den Autorouter laufen. Vielleicht auch zweimal.

Zu dem Thema gibt es hier gelegentlich herrliche Auseinandersetzungen. 
Das Thema ist offensichtlich stark polarisierend (wie Helge Schneider - 
man liebt ihn oder hasst ihn. Ich mag Helge und hasse Autorouter)

Gruss Uwe

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.