MIDI-Interrupter mit Arduino

Elektronische Teslaspulen sind in der Lage, Töne zu erzeugen. Dafür benötigt man ein periodisches Steuersignal, welches die Teslaspule mit der gewünschten Tonfrequenz ein- und ausschaltet. Nur während der sog. on-time kann die Teslaspule ungehindert schwingen. In der restlichen Zeit (off-time) steht die Teslaspule still. Die damit erzielte Tonfrequenz ergibt sich dann zu f_Ton = 1 / (t_on + t_off). Beträgt etwa die on-time 100 µs und die off-time 900 µs, was einem Tastgrad von 10% entspricht, so nimmt man einen Ton mit f = 1 kHz wahr.

Ein MIDI-Interrupter erhält am Eingang MIDI-Signale, welche zum Beispiel von einem MIDI-Keyboard kommen. Im MIDI-Signal steckt die zu spielende Note. Das Arduino-Programm kennt von jeder Note deren Frequenz f. Mit dieser Frequenz f wird nun am Ausgang des MIDI-Interrupters ein PWM-Signal an die Elektronik der Teslaspule gesandt, welche dann genau mit dieser Frequenz f die Teslaspule periodisch ein- und ausschaltet.

Damit die Schwingungen bzw. Ströme im Primärkreis der Teslaspule nicht zu groß werden und Schaden anrichten, wird vom Arduinoprogramm überprüft, ob die Frequenz der gewünschten Note nicht zu hoch ist. Denn steigt die Frequenz der zu spielenden Note bei gleichbleibender on-time, so steigt natürlich auch der Tastgrad an.

Man muss also seitens der Software darauf achten, dass die zu spielende Frequenz nicht zu hoch ist. Weiters darf die on-time nicht beliebig wachsen, da auch dadurch die Schwingungen/Ströme im Primärkreis der Teslaspule zu stark ansteigen würden. Mittels zweier Potentiometer kann man bei meinem MIDI-Interrupter sowohl die maximal zu spielende Frequenz (von 500 – 1250 Hz), als auch die maximale on-time (0 – 150 µs) einstellen. So bleibt man immer bei einem Tastgrad von maximal ca. 10%.

    

Hier einige Bilder vom Oszilloskop bei unterschiedlichen Parametern: