Wie man mit CNC-Fräsen Musik erzeugen kann

Erstellt am 01.12.2011 | Zuletzt geändert am 20.11.2016

Video

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.

Allgemeine Infos

Jedem, der schon einmal einer CNC-Fräse während dem Betrieb (und am besten mit ausgeschalteter Spindel) zugeschaut bzw. zugehört hat, dem müsste aufgefallen sein, dass diese dabei eine Vielzahl an unterschiedlichen Frequenzen erzeugt. Generell gilt: je schneller sich die Achse bewegt, desto höher ist die Frequenz. Da ist es doch nur naheliegend, unterschiedliche Frequenzen in einer definierten Abfolge zu erzeugen, sodass man eine richtige Musik dabei wahrnimmt.

Prinzip

Da eine CNC-Fräse immer wissen muss, in welcher Position sie sich gerade befindet, werden die Achsen zumeist mit Schrittmotoren angesteuert, da diese zusammen mit einem entsprechendem Treiber in der Lage sind, den Rotor um einen kleinen, definierten Winkel zu drehen und die Position anschließend auch zu halten. Gängige Schrittmotoren besitzen eine Auflösung von 200 Schritten pro Umdrehung, d.h. es müssen 200 Takte erzeugt werden, um den Rotor um 360° zu drehen. Um jedoch noch genauere Auflösungen zu erhalten, können sogenannte mikroschrittfähige Schrittmotorsteuerungen verwendet werden, die durch eine entsprechende Ansteuerung der Schrittmotoren (zeitlich versetzte Sinus- bzw. Rechteckkurven) die Auflösung noch weiter herunterteilen. Bei Verwendung einer solchen Steuerung z.B. im 16tel-Betrieb, müssen 3200 Takte (16*200) erzeugt werden, um den Rotor des Schrittmotors um 360° zu drehen. Der Schrittmotor wird natürlich an einer Spindel befestigt, die eine definierte Steigung besitzt, z.B. 5 Millimeter pro Umdrehung, d.h. mit einer Umdrehung der Spindel bewegt sich die darauf befindliche Mutter um 5 Millimeter. In diesem Falle müssen also 3200 Takte erzeugt werden, damit sich die Achse um 5 Millimeter bewegt, oder auch anders gesagt: 640 Takte für 1 Millimeter Fahrtweg. Wenn sich die Achse nun mit einer Geschwindigkeit von 1 Millimeter pro Sekunde (= 60 mm/min) bewegt, dann wird der Schrittmotor mit 640 Taken pro Sekunde angesteuert, was 640 Hz entspricht. Wenn sich die Achse nun doppelt so schnell bewegt, dann wird auch ein Ton mit doppelter Frequenz erzeugt usw. Nach diesem Prinzip kann somit (rein theoretisch) jede beliebige Frequenz erzeugt werden. Und je nachdem, wieviele Achsen die CNC-Fräse besitzt, kann eine bestimmte Anzahl an verschiedenen Tönen gleichzeitig gespielt werden.

Konverter: Musik → G-Code (Funktionsumfang)

Konverter: Midi zu G-Code

Da man den G-Code natürlich nicht von Hand schreiben kann, weil man dafür äußerst lange beschäftigt wäre, habe ich einen Online-Konverter programmiert, der Musik-Dateien (Midi-Dateien) in G-Code konvertiert.

Konverter: Musik → G-Code

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

Dateiauswahl

Zunächst muss eine Midi-Datei (*.mid) ausgewählt werden, die konvertiert werden soll. Es gibt eine Vielzahl an Websites, bei denen man solche Midi-Dateien kostenlos downloaden kann. Aber wer ein entsprechendes Keyboard besitzt, der kann natürlich auch sein eigenes Lied aufnehmen. Die Midi-Datei muss sich natürlich irgendwo auf dem PC befinden, um sie auswählen zu können.

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, aber evtl. wird der Konverter noch auf mehrere Achsen erweitert.

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, können die maximalen Fahrtwege der einzelnen Achsen (vom Nullpunkt aus gesehen) angegeben werden, damit 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 als NC-File 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 (z.B. manche Kanäle deaktivieren), um ein besseres Ergebnis zu erhalten.

Teile diesen Beitrag