Singende 3D Drucker zu Weihnachten

Im Rahmen eines Adventskalenders habe ich mich ein wenig tiefer mit Musik von CNC Maschinen beschäftigt. Dieser Bekannte Hack wird auf einigen Websiten automatisiert. Er funktioniert im Detail wohl so, dass aus einer Midi-Datei eine Tonhöhe gelesen wird. Diese wird umgesetzt in Drehung der Schrittmotoren und dem entsprechend in Anziehung und Abstoßung der Motorenmagneten in der Frequenz des zu erreichenden Tones.

Dies wird von Schritten pro Minute in Umdrehungen pro Minute und dann in Milimeter pro Minute Distanz also Vorschubgeschwindigkeit umgerechnet. ein Höherer Ton führt also zu Höherer Drehgeschwindigkeit und dem entsprechend zu Höheren Fahrgeschwindigkeiten. Ein hoher, langer Ton führt also zu einer großen zurückgelegten Distanz.

Daraus ergeben sich in bezug auf Sicherheit einige Einschränkungen. Ein hoher langer Ton fährt bei der Implementation von Ultimatesolver einfach ohne Fehlermeldung über die in der Konfiguration gesetzten Einschränkung hinaus mit fürchterlichem Krachen mitunter in die Physikalischen Abgrenzungen der Maschine. Ein zu hoher Ton führt darüber hinaus dazu, dass der Magnet zu früh vom folgemagneten angezogen wird, zurückspringt und Schritte verloren gehen. Das klingt auf den ersten Blick nicht sonderlich schädlich, wenn der Drucker aber dann einige Sekunden später glaubt am anderen Ende der Strecke zu sein als er ist, kracht er auf dem Rückweg in die nicht erwarteten Abgrenzungen.

um dies zu beschränken habe ich ein Script geschrieben, dass den GCode bestehend aus einem Home-befehl und anschliessend den G1 Befehlen zur Bewegung des Extruderkopfes auf der X-Achse in einen GCode umwandelt, der all diese Beschränkungen beachtet.

Warum nur die X-Achse? Ganz einfach: die X-Achse bei 3D Druckern mit 3 zueinander Vertikalen Achsen, die quasi auf der Prusa MK1 Bauweise basieren wie es fast jeder Drucker ausser den Ultimakern heutzutage tut, ist die X-Achse bei weitem die Achse, die am wenigsten Gewicht beschleunigen und abbremsen muss und damit am wenigsten Nebengeräusche produziert. Was dank meinem Modifizierten Drucker mit den TMC2208 Treibern „leider“ notwendig wird, da jedes nebengeräusch die gewünschte Musik bei den extrem leisen Steppertreibern übertont.

Auf lauteren Druckern oder Druckern wie denen von Ultimaker könnte es Sinn machen, mehrere Achsen zu nutzen, wer daher das Script nutzen möchte, kann es auf eigene Gefahr unter CC0 Lizenz herunterladen, modifizieren und weiterverbreiten.