Druck pausieren, Metall reinlegen, weiterdrucken (Octoprint) / selektiv Stützstruktur
 

Druck pausieren, Metall reinlegen, weiterdrucken (Octoprint) / selektiv Stützstruktur  

  RSS
Jay
 jjay
(@jjay)
Active Member

Hi zusammen,

für eine Klemme möchte ich gerne M6-Muttern in ein Modell reinlegen, bevor der Drucker mit dem nächsten Layer den Deckel da draufmacht. Das klappt soweit gut im PrusaSlicer mit dem vertikalen Schieber, an dem man den letzten Layer auswählt, bevor der Deckel kommt, und da eine Stopmarke setzt ("Add pause print M601"). Dann hält der Drucker an, zeigt das sogar im Display und wartet auf Knopfdruck.

Das funzt auch gut im OctoPrint, womit ich drucke. Das füttert  ja den GCode zeilenweise in den Drucker und weiß daher auch über den M601 bescheid. Wenn der dran ist, hält auch OctoPrint an und bietet neben den üblichen Buttons Pause und Cancel dann auch noch Resume (habe alles in engl.). 

Das Problem ist hier: sage ich OctoPrint "Resume", dann macht es das auch, aber der Drucker bleibt in seinem "drück meinen Knopf" stehen. Also da auch schnell draufdrücken. Und damit der nicht ne Zeile GCode vom Octo verpaßt, drücke ich zuerst am Drucker, dann bei OctoPrint. Ich habe nat. schon beides ausprobiert und leider ging beides daneben.

Denn: Der Drucker läßt die Düse kaltwerden. Wenn der weiterdrucken soll und das auch tut in den Bewegungen, die Temp. sackt immer weiter ab, bei 140 °C kommt nat. nichts mehr raus vom PLA. Irgendwie ist dieser Weg kaputt, auch wenn der häufig so beschrieben wird.

Wie geht denn diese Prozedur korrekt? Das ist ja bestimmt nicht so selten, oder? Muttern, Magnete, RFID-Tags -- man kann ja eine Menge Dinge in Hohlräume einschließen.

 

Leicht verwandte Frage: Wie platziert man einen Happen Stützstruktur an einem Ort am Modell, an einem anderen aber genau nicht (weil da zB eine Mutter in den Hohlraum reinsoll und nicht Stützstruktur schon alles belegt da)?  In PrusaSlicer sehe ich nur diese wenigen Varianten in der rechten Spalte im Menü, mit denen das nicht geht. Wie würdet ihr das machen?

Posted : 11/07/2020 9:16 pm
Jay
 jjay
(@jjay)
Active Member
Posted by: @jjay

Denn: Der Drucker läßt die Düse kaltwerden. Wenn der weiterdrucken soll und das auch tut in den Bewegungen, die Temp. sackt immer weiter ab, bei 140 °C kommt nat. nichts mehr raus vom PLA. Irgendwie ist dieser Weg kaputt, auch wenn der häufig so beschrieben wird.

Wie geht denn diese Prozedur korrekt? 

Wenn ich statt M601 den anderen Weg gehe und Filament wechsele (Farbwechsel), dann geht das schon, ja, und die Heizungen bleiben auch an, aber dann habe ich ein anderes Problem (gehabt), wo nach dem Wechsel die 10 cm kaltes Filament aus der Düse, als die noch in der Luft hing beim Wechsel, in mein Werkstück eingebügelt wurde. Der Drucker ist ja in Z-Höhe schon x Schichten hoch, kann das überschüssige nicht aufs Bett schmieren und sich die Düse abwischen. 

Er könnte es allerdings ins Infill reindrücken oder -wischen. Das wäre im Grunde ein perfekter Ausweg, der Slicer hatte ja zuvor das Infill selber definiert und platziert, kennt also genau die Koordinaten davon. Geht das irgendwie? Wenn ja, wie wählt man das aus?

Posted : 11/07/2020 9:26 pm
Karl Herbert
(@karl-herbert)
Famed Member

@jjay

Ließ mal alle Kommentare und links zu diesem post durch: https://forum.prusaprinters.org/forum/original-prusa-i3-mk3-hilfe-zur-hardware-firmware-und-software/prusaslicer-pause-m601-funktioniert-nicht/#post-212058

Ich werde das morgen selber mal mit meiner installierten FW 3.8.1 testen und berichten.

This post was modified 3 weeks ago by Karl Herbert
Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen....
Posted : 11/07/2020 10:29 pm
Jay liked
Jay
 jjay
(@jjay)
Active Member
Posted by: @karl-herbert

@jjay

Ließ mal alle Kommentare und links zu diesem post durch: https://forum.prusaprinters.org/forum/original-prusa-i3-mk3-hilfe-zur-hardware-firmware-und-software/prusaslicer-pause-m601-funktioniert-nicht/#post-212058

Ich werde das morgen selber mal mit meiner installierten FW 3.8.1 testen und berichten.

Hi @karl-herbert,

vielen Dank -- ui, das ist ja ein Volltreffer. Gut zu lesen, dass ich nicht bekloppt bin, das nicht hinzukriegen 😉

Aber blöd, hier erstmal nicht weiterzukommen. Hätte nicht gedacht, dass ich so schnell bleeding edge sein würde.

Versionen hatte ich vergessen zu nennen eben: 3.9.0-3421 im Drucker (MK3S), PrusaSlicer v2.2.0+

Posted : 11/07/2020 10:41 pm
Karl Herbert
(@karl-herbert)
Famed Member

@jjay

Ich habe mich mal eine wenig durch die Firmware gewühlt. Ab der FW 3.9.0-RC1 soll diese Pause Schleife beseitigt sein:

https://github.com/prusa3d/Prusa-Firmware/releases/tag/v3.9.0

Hier ein kurzer Auszug aus der 3.8.1 zum M601/602 code:

3.9.0-RC1

Die Reihenfolge des Ablaufs wäre wohl (benutzerdefiniert im Slicer): M300 Pxxx(Signalton) - M601(Pause) - M602(Resume) - evtl. M109(auf Düsentemp. warten). Wie gesagt, ich werde das mal durcharbeiten.

Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen....
Posted : 11/07/2020 11:49 pm
Karl Herbert
(@karl-herbert)
Famed Member

Wie ich vermutet hatte: Bis zur Pause, fährt auf Wechselpos. - schaltet die Düsenheizung ab, funktioniert soweit Alles. Beim selektieren von "Druck fortsetzen" am LCD Display quittiert die FW dies bei mir wiederholt mit einem "PRINT FAN ERROR". Verwendete FW ist 3.8.1.

Ich werde mal die Änderungen in der 3.9.0 RC1 bzgl. der Pause Funktionen in die 3.8.1 adaptieren und es dann erneut versuchen.

-

Gesagt - getan. Hat nichts gebracht. Da ich keine Zeit für FW Tests habe, der Drucker ansonsten einwandfrei läuft (ohne PRINTFAN ERROR) und ich auch nicht allzuviel Zeit in die Sache investieren möchte, habe ich eine Zwischenlösung gefunden. M601 wird durch M0 ersetzt. Im PS habe ich im Bereich Before Layerwechsel einen kleinen code eingefügt. Da muss dann nur mehr der Z-Wert für den Pausenlayer eingetragen werden {if layer_z==xx} und darauf geachtet werden, dass beim Wegfahren von der aktuellen Druckposition (hilfreich beim Wechseln des inserts) der max. Z-Wert, im Regelfall 210mm, nicht überschritten wird. Sollte dies der Fall sein, muss Z50 reduziert werden. Außerdem kann natürlich auch bedarfsweise in X/Y verfahren werden (G91 hin und wieder zurück). Auch hier muss darauf geachtet werden, dass sich alle Bewegungen innerhalb der Raumkoordinaten befinden und nirgendwo auf den Anschlag gefahren wird.

Hier der code:

; pause ?
{if layer_z==1.85}; set pause-z-coordinate
M117 pause printing
M300 S1000 P500
G91
G1 Z50; pause, move print head up (check max_z)
M104 S0
M0 pause - press knob to continue
M109 S[first_layer_temperature]
G1 Z-50; continue, move print head down
G90
M117 continue printing
{endif}

Das ganze sieht im PS dann so aus:

gewünschte Z-Höhe für die Pause im PS ermitteln:

In der Pauseschleife wird die Düse abgeschaltet und nach dem Drücken des LCD-buttons wieder auf firstlayer Temp. geheizt und der Druck fortgesetzt. Man kann natürlich hier ändern wie man möchte.

Die ganze Geschichte ist natürlich noch ausbaufähig, aber der PS bietet, was Variablendef. bzgl. Makrosprache in den verschiedenen Sektionen betrifft, nicht allzuviel.

Auf Feedbacks freue ich mich und bin auch sehr gespannt auf Eure Lösungsansätze (für diejenigen, bei welchen M601 ebenfalls nicht richtig arbeitet).

Schöne Grüße,

Karl

This post was modified 3 weeks ago 3 times by Karl Herbert
Statt zu klagen, dass wir nicht alles haben, was wir wollen, sollten wir lieber dankbar sein, dass wir nicht alles bekommen, was wir verdienen....
Posted : 12/07/2020 8:12 pm
Share:

Please Login or Register