M12 Anwendungen

Prüfung der Geschwindigkeit  mit "Freude schöner Götterfunken"

IMETER- Musik?

Mus(I)METER -- Wie man relative Geschwindigkeiten erhöhren kann --

Die Geschwindigkeit, mit der die Plattform der IMETER-Hardware bewegt wird, erzeugt frequenzbedingt Geräu­sche. Bewegt man die Plattform mit der Geschwindigkeit 1,7696 mm/s, kommt es zu vernehmlichen Schwingungen von 440Hz. Das ist der Kammerton A.

Der Quellcode des IMPros ist unten abgedruckt. In Zeile 4 wird die Beweggeschwindigkeit für "A" als Variable gesetzt. Die Töne aus der sich die Strophe der Ode „An die Freude“ (aus dem letzten Satz der 9. Sinfonie von Ludwig van Beethoven) zusammensetzt, werden in wohltemperierter Stimmung (Intervallfrequenz 2i/12) synthetisiert und ebenso als Variable berechnet. Die Tonhöhe kann transponiert werden (Zeile 8) und folgt aus der Geschwindigkeit, die Tondauer als Wegstrecke.
Dieses Beispiel ist durchaus nicht als reiner Spass gedacht, sonst würden ja die anderen fünf Motorsteuerungen und die klackenden Relais auch noch eingesetzt, um mit Mehrstimmigkeit und Perkussion eine elektro-mechanische Musik auszugestalten (...). Nein, der Hintergrund ist ernsthaft, Geschwindigkeiten prüfen zu können ist wichtig, da z.B. bei der Viskositätsmessung gemäß IMETER-Methode N°5 (DiVA) die Beweggeschwindigkeit unmittelbar mit der Viskosität verknüpft wird. Geschwindigkeiten relativ zueinander zu überprüfen, ist anders keine eigentlich triviale Aufgabe. So, als Melodie - und das Ohr ist für Tonhöhenunterschiede sehr empfindlich - wird diese Aufgabe menschenmaßstäblich gelöst.

 Download IMPro: DownloadIco  Freude schöner Götterfunken.zip (in das Verzeichnis "..\imeter\MessPrgs" zu entpacken. Das IMPro ist in der Testumgebung auszuführen.

  AnDieFreude Noten


  1.  ——— 'Beschleunigung (accel) groß setzen - sonst  sind Töne mit 'legato' (und glissando), Lautstärke maximal (curr% 100% Antriebsleistung)'
  2.   Z-Axis  SET PROPERTIES cur%100 accel95
  3.  ——— 'Über die Spindelsteigung hängt die Frequenz mit der Geschwindigkeit zusammen ....' ———————
  4.  Kammerton_A [mm/s] = 1,7696   ... der Beweggeschwindigkeit "1,7696" kommen 440Hz zu (=Kammerton A)
  5.  ——— 'Kammerton A - - - einfach  zu überprüfen mit einer Stimmgabel:' ————————————————
  6.  Z-MOVE: 5,000 mm UP v= "Kammerton_A" mm/s
  7.  Wait: 1 s   
  8.  Transponierung = 3     Die Tonlage kann mit diesem Faktor entsprechend angepasst werden
  9.  ——— 'Relativ-Definition der Töne' ————————————————————————————————
 10.  x`C__ [mm/s] = (2^(3/12)) * Kammerton_A * Transponierung
 11.  x`D__ [mm/s] = (2^(5/12)) * Kammerton_A * Transponierung
 12.  x`E__ [mm/s] = (2^(7/12))* Kammerton_A * Transponierung
 13.  x`F__ [mm/s] = (2^(8/12))* Kammerton_A * Transponierung
 14.  x`G__ [mm/s] = (2^(10/12)) * Kammerton_A * Transponierung
 15.  ——— 'Tonhaltedauer und Pausen zwischen den Tönen' ——————————————————————
 16.  einViertel = 0,25    Dauer für einen Vierteltakt
 17.  pause [s] = 0,5    Pause zwischen den Strophen
 18.  ——— 'Die Bewegungsrichtung (hier über Vorzeichen der Pausenzeit) einstellen, dass 'room to move' ' ——
 19.  IF "Z <30 [mm]" DEFINE: 'einViertel = -1 * einViertel [n]'
 20.   ———————————————————————————————————————————————————
 21. -a- einViertel = - einViertel     <Richtungsumkehr der Ton-Bewegung nach jeder Strophe>
 22. -|- vC___ [mm-rel] = einViertel * x`C__  Definition der Töne:  Ton= Beweggeschwindigkeit, Dauer= Strecke
 23. -|- vD___ [mm-rel] = einViertel * x`D__
 24. -|- vE___ [mm-rel] = einViertel * x`E__
 25. -|- vF___ [mm-rel] = einViertel * x`F__
 26. -|- vG___ [mm-rel] = einViertel * x`G__
 27. -|-  —(M)—— '"Freude schöner Götterfunke, Tochter aus Elysium ...' —————————————————
 28. -|- Z-MOVE: "vE___" v= "x`E__" mm/s
 29. -|- LOOP:   one comand back, 1× repetition  • • • • • • • • • • • • • • • • • • • • • •
 30. -|- Z-MOVE: "vF___" v= "x`F__" mm/s
 31. -|- Z-MOVE: "vG___" v= "x`G__" mm/s
 32. -|- LOOP:   one comand back, 1× repetition  • • • • • • • • • • • • • • • • • • • • • •
 33. -|- Z-MOVE: "vE___" v= "x`E__" mm/s
 34. -|- Z-MOVE: "vF___" v= "x`F__" mm/s
 35. -|- Z-MOVE: "vD___" v= "x`D__" mm/s
 36. -|- Z-MOVE: "vC___" v= "x`C__" mm/s
 37. -|- LOOP:   one comand back, 1× repetition  • • • • • • • • • • • • • • • • • • • • • •
 38. -|- Z-MOVE: "vD___" v= "x`D__" mm/s
 39. -|- Z-MOVE: "vE___" v= "x`E__" mm/s
 40. -|- IF "einViertel  >0 [s]" THEN: 5 Lines forward
 41. -|- Z-MOVE: "vE___" v= "x`E__" mm/s
 42. -|- Z-MOVE: "vD___" v= "x`D__" mm/s
 43. -|- LOOP:   one comand back, 2× repetition  • • • • • • • • • • • • • • • • • • • • • •
 44. -|- JUMP 6 Lines forward
 45. -|-[40]   —(M)—— '... wir betreten feuertrunken Himmlische dein Heiligtum' ———————————————
 46. -|- Z-MOVE: "vD___" v= "x`D__" mm/s
 47. -|- Z-MOVE: "vC___" v= "x`C__" mm/s
 48. -|- LOOP:   one comand back, 2× repetition  • • • • • • • • • • • • • • • • • • • • • •
 49. -|- Wait: "pause"  
 50. -|-[44]     
 51. -a- LOOP:  to row 21 back, 3× repetition  • • • • • • • • • • • • • • • • • • • • • •
 52.   ———————————————————————————————————————————————————
 53.   ƒ On User ends IMPro: Jump here _  - (without query!)
 54.  ——— 'Beschleunigung auf normalen Wert setzen: ' ————————————————————————
 55.   Z-Axis  SET PROPERTIES cur%85 accel70

(Quelltext über automatischen Dokumentierer... Farbcodierung: Variablendefinitionen, Meldungsfenster)


<Falls IMETER tatsächlich für die Herstellung höherer, komplexer Musik verwendet werden sollte, wäre das eine interessante Sache. Man kann die Transponierung z.B. aus dem Luftdruck/Temperatur etc. stimmungsabhängig machen, die dynamischen Möglichkeiten der Motorsteuerungen einsetzen und die I/O-Kanäle für weitere akustische Effekte verwenden. - Das wäre 'mal eine andere elektronische Musik ;-) >