Diese Seite funktioniert am besten mit aktiviertem JavaScript!

Wie man mit CNC Fräsen und 3D Druckern Musik erzeugen kann

CNC Fräse spielt Musik

Hast du schon einmal einer CNC-Fräse beim fräsen oder einem 3D-Drucker bei drucken zugehört? Wenn ja, dann dürfte dir aufgefallen sein, dass hierbei die unterschiedlichsten Töne erzeugt werden. Für Nerds ist es also naheliegend, den Fräs- bzw. 3D-Druck-Code so zu manipulieren, dass keine zufälligen Töne sondern ein richtiges Lied dabei abgespielt werden. Wie dies prinzipiell funktioniert, erfährst du in diesem Artikel.

Videos

Damit klar wird, wovon ich überhaupt spreche, empfehle ich dir zunächst einmal eines der nachfolgenden Videos anzuschauen. Die Musik wird dabei tatsächlich von der CNC-Fräse selbst erzeugt.

Ludwig van Beethoven: Für Elise

In diesem Video spielt meine CNC-Fräse das Lied "Für Elise" von Ludwig van Beethoven.

Scott Joplin: The Entertainer

Hier spielt meine CNC-Fräse das Lied "The Entertainer" von Scott Joplin.

Musik mit CNC Fräse oder 3D Drucker erzeugen: Prinzip

Die überwiegende Mehrheit aller CNC Fräsen und 3D Drucker für den Privatgebrauch werden heutzutage mit sogenannten Schrittmotoren angesteuert. Im einfachsten Fall existieren insgesamt drei Achsen (mit kartesischen Koordinaten), wovon jede einzeln durch einen eigenen Schrittmotor bewegt werden kann. Der Schrittmotor ist entweder durch ein Getriebe oder direkt mit einer Spindel verbunden, welche dann bei Rotation dafür sorgt, dass sich die Achse in die eine oder andere Richtung bewegt.

Falls du einer CNC Fräse oder einem 3D Drucker schon einmal aufmerksam zugehört hast, dann dürfte dir aufgefallen sein, dass die erzeugte Frequenz umso höher ist, je schneller sich die jeweilige Achse bewegt. Intuitiv ist dies einleuchtend, aber warum genau das so ist, erfährst du nachfolgend.

Mit einem Schrittmotor ganz einfach Musik erzeugen: so geht's

Aufbau von Schrittmotor

Der prinzipielle Aufbau eines Schrittmotors ist in der nebenstehenden Abbildung dargestellt. Der Rotor (also das Teil, welches sich dreht) besteht aus einem Permanentmagneten und der Stator aus zwei Eisenkernen mit jeweils einer Spule. Wenn der Schrittmotor so wie in der Abbildung dargestellt verschaltet wird, dann zeigt der Südpol (grün) des Rotors nach links unten. Wenn sich der Motor nun im Uhrzeigersinn um 45° drehen soll, dann muss einfach die Spule 2 abgeschaltet werden. Wenn die Spule 2 nun mit umgekehrter Polarität wieder angeschaltet wird, dann dreht sich der Rotor wieder um 45° weiter, da sich die Polarität des zweiten Elektromagneten geändert hat. Ich denke, du kannst jetzt schon erahnen, worauf das hinausläuft. Für eine (mehr oder weniger) konstante Drehbewegung muss man die beiden Spulen einfach mit zeitlich versetzten Rechteck- oder Sinus-Signalen ansteuern.

Der große Vorteil von Schrittmotoren ist es, dass man genau nachvollziehen kann, in welcher Position sich der Rotor gerade befindet. Das kann nämlich ganz einfach berechnet werden, wenn man die Ausgangsposition und die Anzahl der Schritte kennt. Der in der Abbildung dargestellte Schrittmotor ist so ziemlich die einfachste Bauart. Bei den meisten handelsüblichen Schrittmotoren besteht der Rotor aus deutlich mehr Permanentmagneten, sodass sich üblicherweise 200 (Voll-)Schritte pro Umdrehung ergeben.

Die gerade eben genannte Eigenschaft ist auch für die weite Verbreitung bei CNC Fräsen und 3D Druckern verantwortlich, denn dort ist es natürlich essentiell, die genaue Position der Spindel bzw. des Druckkopfes zu kennen.

Und wie funktioniert das nun mit der Musik?

Wenn ein Schrittmotor eine Auflösung von 200 Vollschritten pro Umdrehung besitzt, dann bedeutet dies nichts anderes, als dass 200 Takte erzeugt werden müssen, um den Rotor um 360° zu drehen.

Um eine noch genauere Auflösung zu erhalten, kann man einen Schrittmotor auch im sog. Halbschritt- oder Mikroschritt-Betrieb ansteuern. Bei einer Ansteuerung beispielsweise im 16tel-Schritt-Betrieb wird die Auflösung um den Faktor 16 vergrößert und somit müssen in diesem Fall auch 16 mal so viele Takte für eine einzige Umdrehung generiert werden. In diesem Beispiel bedeutet dies also:

$$16\cdot 200\text{ Takte} = 3200\text{ Takte}\;\widehat{=}\;1\text{ Umdrehung}$$

Wenn der Schrittmotor direkt mit der Spindel verbunden ist, dann entspricht eine Umdrehung des Motors auch einer Umdrehung der Spindel. Weiterhin muss die Steigung der Spindel bekannt sein. Wenn diese z.B. 5 Millimeter pro Umdrehung beträgt, dann bedeutet dies, dass sich die auf der Spindel befindliche Mutter bei einer Umdrehung um genau diese 5 Millimeter bewegt, d.h.

$$\begin{align*}3200\text{ Takte}\;&\widehat{=}\;5\text{ Millimeter Fahrtweg}\\ 640\text{ Takte}\; &\widehat{=}\;1\text{ Millimeter Fahrtweg}\end{align*}$$

Wenn sich die Achse nun mit einer Geschwindigkeit von 1 Millimeter pro Sekunde bewegt, dann wird der Schrittmotor mit 640 Takten pro Sekunde angesteuert, was 640 Hz entspricht. Bei doppelter Geschwindigkeit wird folglich auch ein Ton mit doppelter Frequenz erzeugt etc. Nach diesem Prinzip kann somit (rein theoretisch) jede beliebige Frequenz erzeugt werden.

Je nachdem, wieviele Achsen eine CNC Fräse oder ein 3D Drucker besitzt (üblicherweise drei), kann eine bestimmte Anzahl an verschiedenen Tönen gleichzeitig gespielt werden.

Der hier beschriebene Fall bezieht sich auf CNC Fräsen und 3D Drucker mit kartesischen Koordinaten. Wenn du wissen möchtest, wie das Ganze bei sogenannten DeltaBots funktioniert, dann solltest du dir das hier durchlesen.

Online-Konverter: Musik → G-Code

Selbstverständlich ist es nicht praktikabel, den Fräscode bzw. den 3D-Druckcode für ein Musikstück per Hand zu programmieren, denn dafür wäre man wohl ziemlich lange beschäftigt. Aus diesem Grund habe ich einen Online-Konverter programmiert, welcher in der Lage ist, MIDI-Dateien in G-Code umzuwandeln. Den Konverter stelle ich auf der folgenden Seite kostenlos zur Verfügung:

Nachfolgend wird die Vorgehensweise bzw. der Funktionsumfang des Online-Konverters kurz beschrieben.

Dateiauswahl

Zunächst muss eine Midi-Datei (*.mid) ausgewählt werden, die konvertiert werden soll. Es gibt eine Vielzahl an Webseiten, bei denen man solche Midi-Dateien kostenlos downloaden kann. Wer ein entsprechendes Keyboard besitzt, der kann natürlich auch sein eigenes Lied aufnehmen. Alternativ kann auch einfach eines der Beispiele geladen werden.

Einstellungen vornehmen

Bevor die Midi-Datei in G-Code umgewandelt werden kann, müssen noch diverse Einstellungen eingegeben bzw. angepasst werden:

Anzahl der Achsen

Mit der Anzahl der Achsen wird automatisch festgelegt, wieviele Töne gleichzeitig gespielt werden können. Je mehr Achsen, desto besser hört sich das Lied im Normalfall an. Bisher können maximal 3 Achsen ausgewählt werden.

Auswahl der Kanäle

Eine Midi-Datei besteht oftmals aus verschiedenen Kanälen für unterschiedliche Instrumente. Alle vorhandenen Kanäle werden angezeigt. Durch Aktivieren bzw. Deaktivieren einzelner Kanäle kann versucht werden, den bestmöglichen Sound aus der Midi-Datei zu erzeugen.

Schritte pro Millimeter

Da es von der Bauart der Fräse abhängt, muss angegeben werden, mit wievielen Schritten bzw. Takten die Maschine angesteuert wird, um einen Millimeter Fahrtweg zurückzulegen.

Arbeitsbereich festlegen

Damit die Fräse nicht irgendwann an den Rand der Achse anfährt, kann der Arbeitsbereich festgelegt werden, sodass die Fahrtrichtung umgekehrt wird, sobald die Grenze erreicht wird. Wenn nichts eingegeben wird, dann bewegen sich die Achsen fortlaufend in eine Richtung.

Pausen deaktivieren

Es wurde zusätzlich noch die Option "Pausen deaktivieren" eingebaut. Wenn diese Option aktiviert ist, dann wird die Melodie fortlaufend abgespielt, d.h. die Pausen werden "überbrückt". Manche Lieder hören sich dadurch unter Umständen besser an.

Fertiger G-Code

Damit man schon im Vorraus einen Eindruck bekommt, wie sich das Lied vorraussichtlich auf der Fräse anhört, wird zusätzlich zum G-Code eine neue Midi-Datei erstellt, die heruntergeladen und angehört werden kann. Wenn das Ergebnis zufriedenstellend ist, kann der G-Code heruntergeladen und schließlich auf der CNC-Fräse angehört werden. Wenn man nicht zufrieden ist, können selbstverständlich die Einstellungen geändert werden, um ein besseres Ergebnis zu erhalten.

Teile diese Seite
Erstellt am 01.12.2011 | Zuletzt geändert am 24.05.2018