Bessere 3D-Drucke durch "non planar slicing"

Dieses Thema im Forum "3D Druck" wurde erstellt von root2, 8. November 2019.

  1. root2

    root2 Benutzer

  2. Jetzt anmelden Die Community freut sich auf dich! Exklusive Features und Content warten.

  3. Hallo zusammen,

    ich bin gerade über das Thema "non planar slicing" gestolpert und dachte, es ist vielleicht auch für ein paar blasted User mit 3D Druckern interessant.

    Vom Prinzip her druckt man mittels eines speziellen Slicers keine planaren ("ebenen") Schichten, sondern passt diese - so gut es geht - an die Konturen des zu druckenden Teils und die Druckkopf-Geometrie an. Dadurch werden Treppenstufen vermindert und die Oberflächengüte verbessert.

    Mehr dazu z. b. hier:


    Viel Spaß weiterhin beim Drucken :)
     
    Zuletzt bearbeitet: 8. November 2019
  4. Bmag

    Bmag Erfahrener Benutzer

    Die Option ist mir letztens auch aufgefallen und wollte sie demnächst mal testen.
     
    root2 und FetteWorst gefällt das.
  5. FetteWorst

    FetteWorst Erfahrener Benutzer

    Hmmm das schreit nach einer extrem spitzen nozzle :)

    Hatte ich auch vor einiger Zeit gesehen, hat Potential
     
    root2 gefällt das.
  6. Lolipop333

    Lolipop333 Erfahrener Benutzer

    Mich haben die düsen die wir zum wasserstrahlen benutzen so angelacht: hartmetall, lang, dünn 0.2 bis 0.5 innendurchmesser und die richtigen kontakte zur herstellung^^ in fernferner zukunft seh ich mich schon wie ich nadelähnliche düsen aus hartmetall an meinen drucker bastle ^^
     
    root2, Balthazar2026, Rebound und 4 anderen gefällt das.
  7. generic

    generic Benutzer

    Nachdem es ja einen Fork von slic3r ( https://github.com/Zip-o-mat/Slic3r/tree/nonplanar ) von den gleichen Menschen gibt, die auch hinter dem Video stehen, habe ich das ganze bei mir eingerichtet um es auszuprobieren.

    Weiter unten habe ich für Interessierte auch eine Anleitung erstellt, wie ihr euch Slic3r unter Windows 10 selber compiled.

    Das Ergebnis war zu Beginn aber eher ernüchternd: Auch mit 2cm und 60° Neigung (realistisch sind eher 30-45° und 0,5-1cm) werden viele "unebene" Flächen gar nicht non-planar gesliced.

    Prüfen kann man das direkt in der Preview, wo man den Druckpfad sieht.

    Für den besten Effekt muss das Modell explizit optimiert sein, weil viele Oberflächen nicht gut erkannt werden.

    Probiert habe ich es mit ein paar Thingiverse-Sachen und ein paar selbstgebastelten Tinkercad-Dingen

    Bei dieser Star Trek Badge https://www.thingiverse.com/thing:1963130 ist z.b. ausschließlich der schmale obere Rand der Badge nonplanar, der Innenteil sowie die "Flügel" werden weiterhin Layer für Layer mit Stufen gedruckt:
    startrek_badge_nonplanar.png

    Was gut funktioniert sind quergestellte Halbzylinder und Kugel-Oberflächen, sofern sie auf Ebenen aufsitzen, sowie ggf. auch Schrägen (Im Beispiel 45°, 10mm Clearance):

    nonplanar_test.png

    Heute habe ich mir mal die Mühe gemacht und explizit mit diversen Details rumgespielt, das habe ich bisher rausgekriegt:

    Wenn Flächen insgesamt mehr Höhe überbrücken als die Clearance erlaubt, wird garnix nonplanar gemacht.
    Auch Flächen, die alleine nonplanar gesliced werden können, kriegen nun plötzlich keine angepasste Oberfläche mehr

    Der Keil links ist in Tinkercad in der Mitte in zwei Objekte zerlegt, rechts ist der Keil ein einziges Objekt:
    nonplanar_test_2_tc.png
    nonplanar_test_2.png

    Das heißt, für die meisten Anwendungsfälle müsste man Schnitte in die .stl-Dateien einfügen um (mehr) nonplanar slice-bare Flächen zu erhalten. Eventuell kriegt man alle Flächen, die nicht zu "steil" sind damit hin, wenn man die .stl vorher in Scheiben schneidet, das probiere ich bei Gelegenheit noch aus.

    Die "schöne" Version von den beiden oben sieht gedruckt so aus:

    nonplanar_print.jpg

    Für meinen Ender3 habe ich 30° geraten und 3mm Clearance gemessen.

    Die Einstellungen habe ich in Slic3r jetzt nocht nicht fürs Drucken perfektioniert, aber man sieht wohin die Reise gehen kann.

    Anleitung: Wie krieg ich das bei mir zuhause hin?

    Falls jemand von euch sich dafür interessiert,wie man das unter Windows 10 zum Laufen kriegt (man muss es zwangsläufig selbst compilen):
    Im Grunde folgt man nur der Anleitung aus dem Link auf Github ganz oben, die Schritten aus zuerst verlinkten Kommentar als erstes. Ich habe die Einzelschritte aber mal so zusammengetragen dass auch Nicht-Linix-Menschen eine Chance haben.
    Links zu den jeweiligen (englischen) step-by-step-Listen sind jeweils fett. Die gilt es in der Regel wirklich komplett abzuarbeiten.
    Vergessene Schritte führen dazu, dass irgendwas nicht klappt. Die gute Nachricht: Schritte doppelt ausführen macht nichts kaputt.
    • "Windows Subsystem for Linux" aktivieren und Linux installieren https://docs.microsoft.com/en-us/windows/wsl/install-win10
      (ich hab Ubuntu genommen und würde das Einsteigern auch empfehlen weil weitverbreitet und daher die meiste Software direkt installierbar, außerdem sind die Guides für slic3r für "apt" geschrieben was der "Software-Store" für Ubuntu und Debian ist)
    • "Xming" installieren, damit euer "Linux im Windows" auch Grafik unter Windows anzeigen kann https://sourceforge.net/projects/xming/
    Dann empfehle ich, ein Verzeichnis unter Windows anzulegen wo eure Fortschritte landen, z.B. C:\Linux oder D:\Linux und das ins Linux-Homeverzeichnis einzubinden. Wird gleich erklärt wie das geht ;)

    Alles was jetzt in Spoilern kommt wird in die Linux-Kommandozeile eingetippt (oder kopiert) und mit Enter abgeschickt. Dafür im Windows-Startmenü einfach "Ubuntu" suchen und starten, es sollte ein schwarzes Fenster mit bunter Schrift erscheinen.

    Um das angelegte Verzeichnis in dem Linux-Dateisystem zu verankern folgenden Befehl ausführen:
    Spoiler: 
    ln -s /mnt/c/Linux ~/Linux


    Das fettgeschriebene ist der Laufwerksbuchstabe und dann der Name von eurem Ordner (Groß-Kleinschreibung beachten, Linux unterscheidet!)

    Jetzt mit
    Spoiler: 
    cd ~/Linux
    in das Verzeichnis wechseln (die Tilde ~ steht für "Home-Verzeichnis", quasi "Meine Dateien" unter Linux)

    Ab dem Zeitpunkt werden Dateien, die ihr in dem Ubuntu-Fenster runterladet und installiert, auch in eurem C:\Linux Ordner sichtbar. Ihr könnt also später auch Module und Anpassungen direkt in den Dateien von slic3r aus Windows heraus vornehmen.

    Startet Xming damit wir nach dem compilen bunte Slic3r-Fenster kriegen.

    Nun
    • setzen wir in Ubuntu den Wert, damit wir später mit Xming was anzeigen:
      Spoiler: 
      export display=:0

    • ein Verzeichnis für die unveränderte Slic3r-Version erstellen und reinwechseln:
      Spoiler: 
      mkdir original

      Spoiler: 
      cd original
    • Danach das unmodifizierte Slic3r (https://github.com/slic3r/Slic3r/) nach Anleitung bauen, weil die modifizierte Version davon einige Dateien braucht: https://github.com/slic3r/Slic3r/wiki/Running-Slic3r-from-git-on-GNU-Linux
    • Tipp: Dort wo es heißt "create a file" könnt ihr folgenden Befehl nutzen:
      Spoiler: 
      touch slic3r

      Das sollte "slic3r" als Datei anlegen, und die könnt ihr dann unter Windows mit einem Text-Editor eurer Wahl bearbeiten, z.B. Notepad++
    • Verzeichnis vom "original" Slic3r in die Ubuntu-Systemvariablen speichern mit
      Spoiler: 
      export PERL5LIB=~/Linux/original/Slic3r/local-lib/lib/perl5
    • zurück ins Linux-Verzeichnis:
      Spoiler: 
      cd ~/Linux
    • noch ein Verzeichnis, diesmal für die nonplanar-Version, erstellen und reinwechseln:
      Spoiler: 
      mkdir nonplanar

      Spoiler: 
      cd nonplanar

    • non-planar Slic3r nach Anleitung bauen https://github.com/Zip-o-mat/Slic3r/blob/nonplanar/README.md
      (! Den "export PERL5LIB" Schritt haben wir weiter oben schon gemacht !)
    Jetzt seid ihr theoretisch soweit, dass ihr in einem frisch gestarteten Ubuntu-Fenster mit folgenden Befehlen Slic3r starten könnt:
    Spoiler: 
    export display=:0

    Spoiler: 
    export PERL5LIB=~/Linux/original/Slic3r/local-lib/lib/perl5/

    Spoiler: 
    cd ~/Linux/nonplanar/Slic3r

    Spoiler: 
    perl slic3r.pl


    Wenn ihr drei Bildschirme mit Text seht, dann habt ihr entweder Xming nicht am laufen, oder "export display=:0" fehlt.
    Andernfalls öffnet sich ein "ganz normales" Windows-Fenster für Slic3r

    Das Starten kann man noch etwas vereinfachen:

    Legt in dem Linux-Ordner eine neue Datei "slic3r.sh" an, und setzt das "execute" Flag:
    Spoiler: 
    touch ~/Linux/slic3r.sh

    Spoiler: 
    chmod u+x ~/Linux/slic3r.sh


    Jetzt öffnet ihr die Datei und packt den folgenden Inhalt rein:
    #/bin/sh
    export display=:0
    export PERL5LIB=~/Linux/original/Slic3r/local-lib/lib/perl5/
    cd ~/Linux/nonplanar/Slic3r
    perl slic3r.pl​
    Ab sofort sollte nach dem Öffnen eines Ubuntu/Linux Fensters dann der Befehl
    Spoiler: 
    ./Linux/slic3r.sh

    direkt Slicer starten und ihr könnt loslegen.

    Ihr könnt in Slic3r entweder über "Filesystem> /mnt/" auf eure Windows-Laufwerke zugreifen, oder einfach den "Home" Link in Slic3r nutzen - an alles was unter "Home/Linux" liegt kommt ihr ja wie gewohnt auch mit Windows ran!

    Viel Erfolg!
     
    Zuletzt bearbeitet: 13. Januar 2020
    FetteWorst, root2, ImMortis und 5 anderen gefällt das.
  8. Dominik

    Dominik Erfahrener Benutzer

    Eine Frage aus Interesse:
    Wie fährt denn der Drucker dann die Dateien ab. Nach meinem Verständnis sind die Slices die x-y-Ebene und werden entsprechend abgefahren. Wenn nun also der Drucker jede Ebene dreidimensional fahren muss dürften sich allein durch die auf 2D optimierten Düsen Ungenauigkeiten ergeben, oder sehe ich das falsch?
     
  9. Moggih

    Moggih Erfahrener Benutzer

    So'n Star Trek Badge kannste mir bitte direkt mal drucken ^^
     
    Zuletzt bearbeitet: 15. Januar 2020
    Rebound gefällt das.
  10. generic

    generic Benutzer

    @Dominik ja auf jeden Fall, die Layer werden nicht wirklich gut "glattgestrichen".
    Das Druckstück auf dem Foto ist lediglich 2x2cm groß, daher sieht man von dem Effekt auch nicht soooo viel. Wollte halt nicht drei Stunden drucken.
    Nighthunter meinte schon dass seine "normalen" Prints deutlich feiner aussehen, und ich kann das erstmal bestätigen - "schön" ist es auf der Größe nicht.
    Möglicherweise kann man damit aber bei sehr großen, groben Prints schönere Oberflächen hinkriegen, evt. wäre das ein Grund mal eine 0.6er oder 0.8er Nozzle zu bestellen.

    Für einen echten Vergleich muss ich erstmal verstehen wie man mit Slic3r ähnlich schöne Ergebnisse erzielt wie mit Cura - die "Default-"Printqualität erscheint mir deutlich schlechter, auch ohne nonplanar. Offenbar hat Cura die besseren Voreinstellungen.

    Ein zusätzliches Problem ist wohl dass klassische FDM Drucker nicht dafür ausgelegt sind, ständig die Z-Achse zu bewegen, hier sollte man die Geschwindigkeit in Z-Richtung im Auge behalten.

    Der "mehrere Objekte/Flächen" Teil beim slicen wird übrigens besonders deutlich wenn man lediglich einen Keil drucken mag. Wenn der Keil aus mehreren Objekten besteht, die jeweils weniger hoch sind als man Clearance hat, wirds nonplanar, andernfalls "klassisch".
    Offenbar hat der Slic3r-Patch seine Schwierigkeiten mit zu großen Polygonen:
    a578718f-a44c-4366-baf7-60d3ee631897.jpg
    dc729492-82b9-4ab7-a0f4-c6eb14eef614.jpg

    @Moggih es gibt noch eine Variante mit zwei Teilen https://www.thingiverse.com/thing:3536273 die würde sich vermutlich deutlich besser für nonplanaren Druck eignen. Hast du neben deinem Laser keinen Platz für einen Drucker? Oder hast du einfach kein *** um Slic3r aufzusetzen :D

    Aber gute Idee, das zweiteilige Ding probier ich mal.
     
  11. Moggih

    Moggih Erfahrener Benutzer

    Genau, 3D-Druck werd' ich mir alsbald nicht draufschaffen. 2D-Lasercut hat schon derart viele Möglichkeiten, dass ich da auf Jahre erstmal mit beschäftigt bin, das auch nur ansatzweise auszuloten. Außerdem habe ich ja mittlerweile so viele Leute in meinem Dunstkreis, die mir was gegen Geld oder im Gefälligkeitenaustausch drucken können, dass ich mir dieses weitere Hobby nicht selber auch noch aneignen muss ^^

    So'n Badge würde ich tatsächlich nehmen - sag' mir dann einfach was Du dafür kriegst :)
     
    NIGHTHUNTER79, Rebound und generic gefällt das.
  12. DerLuchs

    DerLuchs Erfahrener Benutzer

    Arbeitet dieser "nonplanare" druck dann eigentlich über variable Extrusion? Oder wird der Druckkopf auf Z tatsächlich vor und zurückbewegt?
     
  13. ImMortis

    ImMortis Erfahrener Benutzer

    Oder ^^
     
    generic gefällt das.
  14. generic

    generic Benutzer

    Es wird tatsächlich Z auf und abbewegt. Einfach mal das YT Video im ersten Post schauen.
    Daher muss man möglichst viel Platz um die Nozzlespitze haben - d.h. mit einem Petsfang hat man schlechte Karten.

    Ich hab mir den "Mistral-E" (https://www.thingiverse.com/thing:3255518) gedruckt, damit hat man ca. 3mm "nach oben" bis der Lüftungsblock im Weg ist.

    Die Badge habe ich soeben in zwei Teile zerlegt, schön 6x3 Magnet-Löcher reingebastelt, bin sehr gespannt wie das in 30 Minuten aussieht.
    st_badge_nonplanar_gcode.png

    Bilder vom Druckergebnis liefere ich dann nach!

    Die .gcode Dateien kann ich gerne auch hochladen, eingestellt sind 50mm/s Basisgeschwindigkeit, 210° Hotend und 60° Bed, was für die meisten PLAs wohl passen dürfte.
    Abgesehen davon kann man .gcode ja mit Texteditoren anpassen und die Drucktemperatur nachträglich noch ändern.
     
    Moggih und FetteWorst gefällt das.
  15. Lolipop333

    Lolipop333 Erfahrener Benutzer

    ich geb als kommentar einfach Mal meine Vision an, obwohl das Teil whöchstwarscheinlich zu übelsten verstopfungen neigt, neigt es sich immerhin zu über 90 Grad. damit könnt man wände hochdrucken :D bräuchte natürlich noch zwei servos, aber ist ja nur mal ne skizze ^^
    5DRUCKER.PNG
     
    Dominik gefällt das.
  16. generic

    generic Benutzer

    So, besser als erwartet, schlechter als erhofft.

    Die letzten Ebenen, also die die nonplanar gedruckt werden, extrudiert er nicht gleichmäßig, gut zu sehen am Rand von dem "äußeren" Teil, das wirkt stark blobby.
    Das ist aber vermutlich ein Problem von dem Slicing-Addon, und kein Problem des Druckers - auf allen planar gedruckten Layern siehts nämlich schick aus.

    Zusätzlich hatte ich auf dem Außenteil auch massives Stringing, was ich mit dem Filament bei der Temperatur noch nie hatte. Man sieht die Fusseln noch, ich hatte das Inlay schonmal kurz eingesetzt, passt soweit.

    Aber hier die Fotos, wie versprochen:
    badge01.jpg
    badge02.jpg
    badge03.jpg
    Im Anhang vom Post eine Zip-Datei mit:
    • .gcode für Body einzeln, nonplanar (210° Nozzle, 60° Bed, 20 x 20 Buildplate)
    • .gcode Inlay einzeln, nonplanar (210° Nozzle, 60° Bed, 20 x 20 Buildplate)
    • .gcode für Body, Inlay und Magnethalter (210° Nozzle, 60° Bed, 20 x 20 Buildplate)
    • .stl für alle drei Einzelteile. Wer einzeln druckt "muss" sich den Magnethalter separat slicen, da ist aber nix nonplanares dran.
    Druckzeit für die "3in1" .gcode Datei ist ~45 Minuten zzgl. aufheizen.
     

    Anhänge:

    Zuletzt bearbeitet: 15. Januar 2020
  17. Dominik

    Dominik Erfahrener Benutzer

    @Lolipop333: Dafür müsstest du eine gesonderte Heizung verbauen, was es fast schon sinnvoller macht den kompletten Druckkopf neu zu entwerfen. Dann könntest du zwei kleine Heizpatronen zu beiden Seiten der Bohrung verbauen und einen Temperaturfühler und 90 Grad versetzt dazu anordnen. Allerdings müsstest du den Schlitten vermutlich dann aus Metall bauen und eine Isolation zwischen Düse und dem Rest verbauen, was die ganze Sache deutlich komplizierter macht.
     
    Lolipop333 gefällt das.

Diese Seite empfehlen