Unsaubere Ecken beim Drucken (alle Slicer betroffen?)
Verfasst: Mo 1. Jan 2024, 22:03
Die Unsauberen Ecken
Hier kommt meine nächste Eingebung oder eher Erkenntnis. Nachdem das sprichwörtliche ‚Licht‘ anging, habe ich im Netz danach gesucht, ob es sich dabei um ein bekanntes Problem handelt, bzw. ob die Ursache dafür klar war. Da war ich erfolglos. Niemand scheint meine Meinung bezüglich Ursache zu teilen. Daher stelle ich meine These hier ins Forum, zur Diskussion.
Es geht um die Ursache der unsauberen Ecken. Ich spreche (eigentlich schreibe ich ja) hier Anfangs nur über Außenecken, obwohl meiner Meinung nach auch die Innenecken unter der gleichen Ursache leiden.
Mit unsauber ist nicht gemeint, dass die Außenecke nicht scharfkantig ist. Die Ecke wird immer mindestens den Radius des halben Düsendurchmessers aufweisen. Das lässt sich mit dem angewendeten Prozess nicht vermeiden. Ebenso möchte ich dezidiert jene Ecke ausschließen, wo der Raupenpfad des jeweiligen Layers beginnt und endet (diese ist häufig unsauber).
Ich spreche jene Außenecken an, die eine leichte Ausbeulung aufweisen, in etwa so (simuliert): Im Netz finden sich mehrere solcher Bilder echter Bauteile, meist in Beiträgen, wo eine Ursachenbekämpfung besprochen wird. Hier, hier oder hier, zum Beispiel.
Als Ursache in allen Beiträgen müssen eine Mischung aus Jerk, Überextrusion, Drucktempo, Extruder Kalibrierung und weiteren Variablen als Grund herhalten, ohne auf den eigentlichen, mathematisch zwingenden Grund hin zu weisen.
Betrachten wir den Pfad der Düse wenn es um die Ecke saust. Ignorieren wir erstmals die Tatsache, dass die Düse vor der Ecke verzögert, und nach der Ecke beschleunigt. (Theoretisch macht der Extruder beim Fördern des Materials die gleichen Beschleunigungen mit, womit sich das theoretisch ausgleicht. Ich möchte hier auch nicht auf Pressure Advance eingehen, denn es bekämpft meiner Meinung nach die Ursache ebenso nicht.)
Fangen wir zuerst einmal ganz einfach an.
Stellen wir uns vor, die Düse fährt einen geraden Pfad entlang, bleibt eine Tausendstelsekunde stehen und fährt mit magisch geänderter Farbe weiter. Wir blicken entlang der Düsenachse, also beim RFx000 von oben auf das Bett. So: Der erste Teil des Pfades ist violett gezeichnet. Nach der kurzen Pause ist der weitere Pfad orange eingefärbt. Die Raupe ist anfangs rosa, danach grün.
Sehen wir uns an, was passiert, wenn der Pfad einen 90° Knick macht, also um die Ecke fährt:
Hier wird ein zu fahrender Pfad samt vorgesehener Fahrtrichtung dargestellt: Als erstes sehen wir uns die extrudierte horizontale Raupe bis zur Ecke an: An der Ecke angekommen, hat die Raupe (in etwa) nach vorne hin eine runde Kontur. Hier ‚biegt‘ die Düse um die Ecke und beginnt in die andere Richtung, nach unten, zu fahren: Eigentlich ist es so, als ob ich vom ersten Bild einfach die grüne Bahn um 90° nach unten gedreht hätte (was ich in CAD auch tatsächlich getan habe).
So weit so gut. Zumindest vom Ablauf her. Sieht man genau hin, kann man ein Problembereich erkennen. Hier ist es deutlicher hervorgehoben, in einer dunklen Schattierung: In dem dunklen Bereich wird Material extrudiert, wo bereits vom vorherigen Pfad Material extrudiert wurde. Da ist kein Platz für zusätzliches Material.
Wo geht es hin?
Wo geht das Zuviel an Material hin? Bei der Einstellung mit nur einem Perimeter wird das Material vermutlich gleichmäßig rechts und links der vorgesehenen Bahn ausweichen. Die Raupe in diesem kleinen Bereich muss also eine Spur breiter werden. Dasselbe gilt, bei mehreren Perimetern, für die erste hingelegte Perimeter-Raupe. Auch hier wird das Material beidseitig etwas ausweichen können.
Die meisten Slicer machen die äußeren Perimeter als letztes. Zuvor werden die weiteren Perimeter gelegt, je nach der vorgegebenen Anzahl der Perimeter. Zuerst kommt der innerste Perimeter, dann die weiteren der Reihe nach, bis, als letztes, der äußerste Perimeter gelegt wird.
Und hier macht sich das Problem des fehlenden Platzes besonders bemerkbar. Beim innersten Perimeter, der als erstes gelegt wird, kann das zusätzliche Material beidseitig ausweichen. Dabei belegt es jedoch ungeplant und scheinbar unvorhergesehen etwas vom Platz des angrenzenden Perimeters weg, der erst noch gedruckt wird. Dummerweise benötigt aber der nächste Perimeter just an der Stelle auch noch zusätzlichen Platz, und kann dabei aber nicht mehr beidseitig ausweichen, denn auf der einen Seite befindet sich ein bereits erkalteter Perimeter (der innerste). Damit kann das überschüssige Material nur mehr auf eine Seite ausweichen, und zwar in einem größeren Ausmaß als beim ersten Perimeter. Damit nimmt die Beule ungeplant noch mehr Platz vom nachfolgenden Perimeter weg. Mit jedem weiteren Perimeter wird es schlimmer und schlimmer. Damit entsteht die unschöne Ecke.
Ähnlich so: Man sieht eine Lücke zwischen den Bahnen, genau in der Ecke, die (zufällig?) dem Überlappungsbereich entspricht. Ein kleiner Teil der Beule wird auch sicher hier Platz finden. Doch das Problem entsteht durch die unvermeidliche Ausbeulung an der anderen Seite. Es ist diese Seite, wo sich mit der Anzahl der Perimeter die Beule stetig vergrößert.
Eigentlich sollte es pro Fläche/Seite immer nur eine Beule an einer der zwei Ecken sichtbar sein, nicht an beiden wie in einem der verlinkten Bildern (das Bild mit dem roten Würfel). Dieses zeigt interessanterweise beidseitig eine Beule. Hier könnten zusätzliche Gründe dazu geführt haben, dass die zweite Beule entstand.
Wie gesagt, pro Seite sollte es nur eine Beule geben, denn die Beule entsteht (oder sollte entstehen) an der Seite nach dem Abbiegen, nicht an der Seite davor. Und da der Perimeter üblicherweise nur in einer Richtung umfahren wird, kann nur an einer Ecke pro Seite die Beule entstehen.
Ich versuchte einige schöne Beispiele aus meinem Fundus aufzutreiben. Die meisten sind nachgearbeitet, abgenutzt oder sonst wie nicht fotogen. Ich konnte jedoch die Regel Immer nur eine Beule pro Seite an mehreren Teilen bestätigen. Wem stinklangweilig ist, kann gerne das Forum auf gute Beispiele durchackern.
Falls jetzt der Einwand kommen sollte, der Slicer wird das ja wohl kompensieren, kann ich zumindest für Slic3r und PrusaSlicer sagen: das tun sie höchstwahrscheinlich nicht. Ich tat mir die Arbeit an und konstruierte ein kleines Teil. Dieses wurde geslicet und ausgewertet: Herausgekommen ist, dass die Extrusionsmenge der 50mm langen Strecke exakt 50-mal so viel ist wie an der 1mm Strecke. Würde der Slicer die Ecke in irgendeiner Weise berücksichtigen, müsste es sich um einen konstanten Betrag pro Ecke handeln, was sich auf einer kürzeren Strecke prozentuell stärker auf die Extrusionsmenge auswirken sollte als auf einer längeren (was es nicht tut!). Damit bin ich mir ziemlich sicher, dass Slic3r und PrusaSlicer (dass ich verwendete und welches auf Slic3r beruht) beide das Problem der Überextrusion in den Ecken nicht berücksichtigen.
Interessant wäre, ob ein käufliches Programm wie S3D dies tut. Nett wäre es, wenn sich einer mit S3D die Arbeit antut und dies überprüft.
Dazu so ein Modell wie oben slicen und die Bahnen in einem Layer analysieren. (Um Fehler zu vermeiden, hilft es sämtliche abweichende Einstellungen vorübergehend auszuschalten: Elefantenfußkompensation, abweichende Layerhöhe und/oder Raupenbreite des ersten Layers, usw.. Wer sehr versiert ist, kann sich das sparen und einen späteren Layer analysieren.) Falls ein STL benötigt wird, kann ich es gerne bereitstellen.
Ich bin mir meiner Sache schon ziemlich sicher (was Slic3r & PrusaSlicer betrifft). Deswegen habe ich im vergangenen Jahr (genauer gesagt: Gestern) bereits ein Ticket für Slic3r auf Github eröffnet.
Falls meine Theorie richtig ist, ist dieses Forum so ziemlich weltweit die erste, die das Problem als solches erkannt und aufgezeigt hat.
Alles Gute im Neuen Jahr,
mjh11
Hier kommt meine nächste Eingebung oder eher Erkenntnis. Nachdem das sprichwörtliche ‚Licht‘ anging, habe ich im Netz danach gesucht, ob es sich dabei um ein bekanntes Problem handelt, bzw. ob die Ursache dafür klar war. Da war ich erfolglos. Niemand scheint meine Meinung bezüglich Ursache zu teilen. Daher stelle ich meine These hier ins Forum, zur Diskussion.
Es geht um die Ursache der unsauberen Ecken. Ich spreche (eigentlich schreibe ich ja) hier Anfangs nur über Außenecken, obwohl meiner Meinung nach auch die Innenecken unter der gleichen Ursache leiden.
Mit unsauber ist nicht gemeint, dass die Außenecke nicht scharfkantig ist. Die Ecke wird immer mindestens den Radius des halben Düsendurchmessers aufweisen. Das lässt sich mit dem angewendeten Prozess nicht vermeiden. Ebenso möchte ich dezidiert jene Ecke ausschließen, wo der Raupenpfad des jeweiligen Layers beginnt und endet (diese ist häufig unsauber).
Ich spreche jene Außenecken an, die eine leichte Ausbeulung aufweisen, in etwa so (simuliert): Im Netz finden sich mehrere solcher Bilder echter Bauteile, meist in Beiträgen, wo eine Ursachenbekämpfung besprochen wird. Hier, hier oder hier, zum Beispiel.
Als Ursache in allen Beiträgen müssen eine Mischung aus Jerk, Überextrusion, Drucktempo, Extruder Kalibrierung und weiteren Variablen als Grund herhalten, ohne auf den eigentlichen, mathematisch zwingenden Grund hin zu weisen.
Betrachten wir den Pfad der Düse wenn es um die Ecke saust. Ignorieren wir erstmals die Tatsache, dass die Düse vor der Ecke verzögert, und nach der Ecke beschleunigt. (Theoretisch macht der Extruder beim Fördern des Materials die gleichen Beschleunigungen mit, womit sich das theoretisch ausgleicht. Ich möchte hier auch nicht auf Pressure Advance eingehen, denn es bekämpft meiner Meinung nach die Ursache ebenso nicht.)
Fangen wir zuerst einmal ganz einfach an.
Stellen wir uns vor, die Düse fährt einen geraden Pfad entlang, bleibt eine Tausendstelsekunde stehen und fährt mit magisch geänderter Farbe weiter. Wir blicken entlang der Düsenachse, also beim RFx000 von oben auf das Bett. So: Der erste Teil des Pfades ist violett gezeichnet. Nach der kurzen Pause ist der weitere Pfad orange eingefärbt. Die Raupe ist anfangs rosa, danach grün.
Sehen wir uns an, was passiert, wenn der Pfad einen 90° Knick macht, also um die Ecke fährt:
Hier wird ein zu fahrender Pfad samt vorgesehener Fahrtrichtung dargestellt: Als erstes sehen wir uns die extrudierte horizontale Raupe bis zur Ecke an: An der Ecke angekommen, hat die Raupe (in etwa) nach vorne hin eine runde Kontur. Hier ‚biegt‘ die Düse um die Ecke und beginnt in die andere Richtung, nach unten, zu fahren: Eigentlich ist es so, als ob ich vom ersten Bild einfach die grüne Bahn um 90° nach unten gedreht hätte (was ich in CAD auch tatsächlich getan habe).
So weit so gut. Zumindest vom Ablauf her. Sieht man genau hin, kann man ein Problembereich erkennen. Hier ist es deutlicher hervorgehoben, in einer dunklen Schattierung: In dem dunklen Bereich wird Material extrudiert, wo bereits vom vorherigen Pfad Material extrudiert wurde. Da ist kein Platz für zusätzliches Material.
Wo geht es hin?
Wo geht das Zuviel an Material hin? Bei der Einstellung mit nur einem Perimeter wird das Material vermutlich gleichmäßig rechts und links der vorgesehenen Bahn ausweichen. Die Raupe in diesem kleinen Bereich muss also eine Spur breiter werden. Dasselbe gilt, bei mehreren Perimetern, für die erste hingelegte Perimeter-Raupe. Auch hier wird das Material beidseitig etwas ausweichen können.
Die meisten Slicer machen die äußeren Perimeter als letztes. Zuvor werden die weiteren Perimeter gelegt, je nach der vorgegebenen Anzahl der Perimeter. Zuerst kommt der innerste Perimeter, dann die weiteren der Reihe nach, bis, als letztes, der äußerste Perimeter gelegt wird.
Und hier macht sich das Problem des fehlenden Platzes besonders bemerkbar. Beim innersten Perimeter, der als erstes gelegt wird, kann das zusätzliche Material beidseitig ausweichen. Dabei belegt es jedoch ungeplant und scheinbar unvorhergesehen etwas vom Platz des angrenzenden Perimeters weg, der erst noch gedruckt wird. Dummerweise benötigt aber der nächste Perimeter just an der Stelle auch noch zusätzlichen Platz, und kann dabei aber nicht mehr beidseitig ausweichen, denn auf der einen Seite befindet sich ein bereits erkalteter Perimeter (der innerste). Damit kann das überschüssige Material nur mehr auf eine Seite ausweichen, und zwar in einem größeren Ausmaß als beim ersten Perimeter. Damit nimmt die Beule ungeplant noch mehr Platz vom nachfolgenden Perimeter weg. Mit jedem weiteren Perimeter wird es schlimmer und schlimmer. Damit entsteht die unschöne Ecke.
Ähnlich so: Man sieht eine Lücke zwischen den Bahnen, genau in der Ecke, die (zufällig?) dem Überlappungsbereich entspricht. Ein kleiner Teil der Beule wird auch sicher hier Platz finden. Doch das Problem entsteht durch die unvermeidliche Ausbeulung an der anderen Seite. Es ist diese Seite, wo sich mit der Anzahl der Perimeter die Beule stetig vergrößert.
Eigentlich sollte es pro Fläche/Seite immer nur eine Beule an einer der zwei Ecken sichtbar sein, nicht an beiden wie in einem der verlinkten Bildern (das Bild mit dem roten Würfel). Dieses zeigt interessanterweise beidseitig eine Beule. Hier könnten zusätzliche Gründe dazu geführt haben, dass die zweite Beule entstand.
Wie gesagt, pro Seite sollte es nur eine Beule geben, denn die Beule entsteht (oder sollte entstehen) an der Seite nach dem Abbiegen, nicht an der Seite davor. Und da der Perimeter üblicherweise nur in einer Richtung umfahren wird, kann nur an einer Ecke pro Seite die Beule entstehen.
Ich versuchte einige schöne Beispiele aus meinem Fundus aufzutreiben. Die meisten sind nachgearbeitet, abgenutzt oder sonst wie nicht fotogen. Ich konnte jedoch die Regel Immer nur eine Beule pro Seite an mehreren Teilen bestätigen. Wem stinklangweilig ist, kann gerne das Forum auf gute Beispiele durchackern.
Falls jetzt der Einwand kommen sollte, der Slicer wird das ja wohl kompensieren, kann ich zumindest für Slic3r und PrusaSlicer sagen: das tun sie höchstwahrscheinlich nicht. Ich tat mir die Arbeit an und konstruierte ein kleines Teil. Dieses wurde geslicet und ausgewertet: Herausgekommen ist, dass die Extrusionsmenge der 50mm langen Strecke exakt 50-mal so viel ist wie an der 1mm Strecke. Würde der Slicer die Ecke in irgendeiner Weise berücksichtigen, müsste es sich um einen konstanten Betrag pro Ecke handeln, was sich auf einer kürzeren Strecke prozentuell stärker auf die Extrusionsmenge auswirken sollte als auf einer längeren (was es nicht tut!). Damit bin ich mir ziemlich sicher, dass Slic3r und PrusaSlicer (dass ich verwendete und welches auf Slic3r beruht) beide das Problem der Überextrusion in den Ecken nicht berücksichtigen.
Interessant wäre, ob ein käufliches Programm wie S3D dies tut. Nett wäre es, wenn sich einer mit S3D die Arbeit antut und dies überprüft.
Dazu so ein Modell wie oben slicen und die Bahnen in einem Layer analysieren. (Um Fehler zu vermeiden, hilft es sämtliche abweichende Einstellungen vorübergehend auszuschalten: Elefantenfußkompensation, abweichende Layerhöhe und/oder Raupenbreite des ersten Layers, usw.. Wer sehr versiert ist, kann sich das sparen und einen späteren Layer analysieren.) Falls ein STL benötigt wird, kann ich es gerne bereitstellen.
Ich bin mir meiner Sache schon ziemlich sicher (was Slic3r & PrusaSlicer betrifft). Deswegen habe ich im vergangenen Jahr (genauer gesagt: Gestern) bereits ein Ticket für Slic3r auf Github eröffnet.
Falls meine Theorie richtig ist, ist dieses Forum so ziemlich weltweit die erste, die das Problem als solches erkannt und aufgezeigt hat.
Alles Gute im Neuen Jahr,
mjh11