Kazoo Robot Research project on the development of new tools for musical expression |
<Kazumi> an automated mirliton or kazoo dr.Godfried-Willem RAES 2023 |
[Nederlandse versie] |
<Kazumi>
The name for this robot is derived from Japanese language, where it means harmony, peace or beautiful. It also is a gender neutral name often given to people. For us, the kazu obviously refers to the kazoo and the 'mi'-ending to the simple fact that we have to do with a mirliton.
Just like the invention of hot water is attributed to a Soviet Russian scientist, Valery Popov, the invention of the kazoo is claimed by the USA and attributed to a black musician from the southern states named Alabama Vest. It is believed to have happened in 1840. Obviously there is not the slightest trace of historic evidence for such a claim. As a matter of fact, kazoo like instruments can be found amongst many tribes of central Africa long before the USA were even founded. Also we find mirlitons on quite a few wind instruments all over Asia. The Indian bansuri flute is just an example.
For our construction we started of by carefully measuring and analyzing a collection of different kazoos. Thus we noticed that the instrument behaves a bit as a compressor: the surface of the inlet relates to the surface of the opening at the other end as 1:3. The membrane can be made of many quite different materials: onion peel, egg shell membrane, cigarette rolling paper, cellophane, mylar... Obviously the sustainability of these materials shows a great variation: cigarette paper for instance lasts about 10 minutes, onion peel about an hour etc. Mylar and thin polyethylene foil last pretty long and of course in designing our automated kazoo, we went for the materials with the best endurance record. Also, ordinary kazoos are made of thin sheet metal, very cheap but it easily rusts despite the thin layer of lacquer applied. .The construction itself is also pretty weak. If dropped on a hard floor, it likely falls into two parts... So, in order to make a 'professional' robot, we first had to design a really sturdy 'professional' kazoo. We used brass pipe and some brass threaded plumbing parts, silver-soldered. The compression ratio inside the traditional kazoo, 1:3 as said higher, is a proportion we kept in our own design as experimenting with this parameter revealed the functionality here. However, we added a feature using a softshift solenoid wherewith we can gradually make the small side orifice smaller and thus the compression ratio higher. Thus some articulation can be applied to the sound as operation of this valve has a dedicated midi controller in our firmware and of course supported by the hardware.
To get a better sound projection, we applied an exponential
horn, coupled to the vibrating membrane. This makes the sound less harsh and
thus more 'musical' in a way. It also greatly amplifies the sound pressure
level. As the amplifier we designed for this robot had two channels anyway,
we decided to add a 'normal' kazoo as well. Thus users can choose between
both mechanisms. The normal kazoo however, although driven by an identical
signal, sounds a lot softer than the one with the horn.
To mimic the way kazoo's are used by singers, we gave the kazoo with the horn,
also some freedom to move: the construction can freely move horizontally,
driven by a large stepping motor and a dented belt. The angle of rotation
is nearly a full 360 degrees. Three parameters are made available to steer
the operation of the movement: position (controller 10, panning), motor speed
(controller 31) and acceleration curve (controller 32).
The <Kazumi> robot is able also to stand on its own: to this end, we equipped it with a 24GHz radar system and gesture recognition software. Thus, when not connected to the robot orchestra and its interfaces, it will automatically perform some six embedded compositions with full interactivity.
Source code and hexdumps for the PIC microcontrollers:
board | processor | source code | hex-dump | PCB file |
hub | 18F2620 | kazumi_hub | hub.hex | Kazumi_hub |
synth |
24EP256MC202 (2 x) |
kazumi_P24 | Kazumi synth | |
radar | 24EP128MC202 | Radar6 |
Midi Mapping and implementation:
lights mapping:
noot 120: left eye tungsten light - by default automated on movement via controller 69
noot 121: right eye tungsten light - by default automated on movement via controller 69
noot 122: head tungsten eye lights - by default automated via controller 69.
Controllers:
#1: Noise level in the sound [default = 48]
#2: Vibrato delay time [default=64]
#3: FM modulation depth (vibrato depth). Large values can cause audible artifacts, due to the modulation of the sampling frequency.[Default=8]
#4: FM modulation speed. (Vibrato speed) [default=94]
#5: AM modulation depth (tremolo depth) [default = 4]
#6: AM modulation speed (tremolo speed) [default = 20]
#7: used as a general volume controller. Note that timbre will change as the
volume is changed. Also the effect is very different in function of the kazoo
mechanism selected with controllers 13 or 14. The horn-coupled kazoo always
sounding at least 20dB louder for an identical setting of controller 7. [default
= 60]
#10: Panning: used to steer the position of the horn. 0 is extreme left, 127
= extreme right. Motor speed and acceleration can be controlled with #31 and
#32. If you want to obtain a certain position, do not send intermediate values.
Sending the value corresponding to the required position once is enough.
#11: Steers the softshift solenoid mounted on the horn-loaded kazoo. On reception of a note-off, the solenoid will always return to the unpowered condition.
#13: Exponential horn kazoo select ( <63 = disable, > 63 = enable. By default enabled)
#14: Secondary kazoo select ( <63 = disable, > 63 = enable. By default disabled)
#15: ADSR-period. [Default = 24]
#16: used to control the duration of the attack phase in the ADSR cycle. [Default
= 32]
Velocity byte = attack level
#17: sustain level [default = 74]
#18 is used to control the duration of the decay after the attack, the time
required to reach the sustain level of the sound. [Default = 32]
#19 steers the duration of the release decay (from sustain level to zero) starting
after reception of a note off command. Release will be canceled or interrupted
with a new note on command if such a command comes within this time. [Default
= 80]
#20 - tuning. By default equal temperament and A = 440 Hz for value 64. Acceptable
values for this controller are limited to:
#23: steers the modulation depth for the softshift valve.
Default = 127
#24: steers the speed of the periodic modulation of the
softshift valve. Default = 0. This controller overrides the settings caused
by controller #11.
#31: Steers the motor speed for the horizontal movement.
#32: Steers the acceleration curve for the motor.
#41:Selects the waveform used for the low register, notes 36 to 54. The default
setting here is 9. Range 1 to 12. Alternatives are 5, 8, 7, 6, 1, 3
#42: Selects the waveform used for the medium register, notes 55 to 80 . The
default setting is 9. Good alternatives are 6, 5, 8, 2 , 4, 3 or 11. Range 1
to 12.
#43: Selects the waveform used for the high register, notes 81 to 94. The default
setting is 9. Good alternatives are 3, 1, 4 ,5, 9. Range 1 to 12.
Waveforms implemented for these three controllers:
0 | Attack wave, excitation wave | used as a first phase for all waveforms further implemented. Not selectable. |
1 | Wave_1, excitation wave | |
2 | Square Wave | 1 parameter: CC104, default setting is 42 |
3 | Wave_3, excitation wave | good for high notes |
4 | Wave_4, excitation wave | can be used for the medium register |
5 | Wave_5, excitation wave, derived from Eb (midi note 51) | excitation wave, acoustically corrected |
6 | Wave_6, excitation wave alto-saxhorn | excitation wave, some filtering applied |
7 | Wave_7, excitation wave alto saxhorn | recorded with 1/2t valve depressed, a bit more rough |
8 | Wave_8, excitation wave | the mathematically correct excitation wave |
9 | Wave_9: Dirty Sine |
2 parameters: CC105, CC106 default setting for the parameters: 20 and 64 with CC105 = 64 and CC106 = 0, a pure sinewave is obtained. |
10 | Wave_10: output wave | Not very useable. For development. |
11 | Wave_11: Beauchamp textbook, acoustical modeling, parametric |
4 parameters: CC100, 101, 102, 103 - models a brass instrument the default settings are respectively 27, 83, 96, 110 |
12 | Wave_12, excitation wave |
#66: Power On / Off switch. On cold boot and the first power-on command, the motor will automatically calibrate. Avoid sending midi commands before the end of the calibration procedure.
#69: Switches automation for the eye-lights on the 'head' as well as the frontal
lights on or off. If this controller is reset, the eye-lights as well as the
left and right frontal lights can be controlled with note on/off commands for
notes 120,121,122. When #69 is ON, the eye lights will be on as soon and as
long as a note is sounded. The movement of the motor will cause the frontal
lights to flash. If the motor moves left, the left light will be on, if it moves
right, the right light.
#71: One shot command to force recalibration of the motor and to recalculate
the range. At the end of the procedure, the horn will move back to a central
position. Avoid sending midi commands during the calibration period as this
command blocks the multitasker.
#80: Dynamic range mapping. The default is 62, resulting in a 30dB dynamic range.
value | mapping |
0-30 | 20dB |
31-62 | 30dB |
63-94 | 40dB |
95-126 | 50dB |
127 | 60dB |
Note that increasing the value of controller 80 and thus the dynamic range does not make the sound volume at its maximum any higher! The dB mapping steers the dynamic range, starting from the absolute maximum. So, if set to 64, corresponding to 40dB, the loudest and the softest volume levels will relate to each other as 100. Or, dynamic value 1 will be at -40dB compared to the maximum value 127. Here the maximum value is defined as 0dB. Note that changing this controller affects all amplitude related parameters, including the ADSR and the tremolo.
#100 to 106: parameters for the wave form generator as documented higher.
#121: reset all controllers to cold boot values. However, it does not recalibrate the motor.
#123: all notes off, does not reset any controllers.
Pitch bend: The <Kazumi> robot can be used in any tuning system. In the drawing below we give the coding example for a quartertone scale:Most good sequencer software (such as Cakewalk or Sonar) uses the signed 14 bit format. Note that one unit of the msb corresponds exactly to a 0.78 cent interval. To convert fractional midi to the msb only pitchbend to apply follow following procedure: if the fractional part is <= 0.5 then msb= 63 + (FRAC(note) * 128), if the fractional part is larger than 0.5, we should switch on the note + 1 and lower the pitch with msb= (1-FRAC(note)) * 128. Note off does reset the pitch bend for the playing note! The resolution implemented on <Kazumi> for pitch bend (and vibrato) is limited to 1/10th of a semitone.
<Kazumi> was finished in the month April of 2023. Here is a video snippet from it's very first operation and confrontation with my little dog, Bo... More audio files and video snippets will be available soon.
Godfried-Willem Raes
Technical specifications:
Design and construction: dr.Godfried-Willem Raes
Collaborators on the construction of this robot:
none
Music composed for <Kazumi>:
Kristof Lauwers 'Kazumi Study' #29 (2023)
Godfried-Willem Raes 'Ingebed voor Kazumi' (2023)
Demo-audio files with <Kazumi>:
Pictures taken during the construction in our workshop:
Back to Main Logos page:index.html | To Godfried-Willem Raes personal home page... | To Instrument catalogue |
<Kazumi>
Vanuit organologisch perspektief konden we ons eigenlijk al lang de legitieme vraag stellen of robotjes waarbij resonatoren worden aangestuurd door membranen zoals dat het geval is voor alle automaten behoren tot onze Pi-reeks, niet ook konden worden beschouwd als mirlitons. Immers, de membranen in deze instrumenten worden door een externe trillingsbron in beweging gebracht. Alleen ontbreken bij traditionele kazoos de resonatoren die voor onze instrumenten nogal wezenlijk zijn. Bovendien zijn de membranen in onze Pi-orgeltjes uit relatief stug ferromagnetisch metaal gemaakt. Maar geen van beide punten vormen een echt argument om niet van mirlitons te spreken.
Zoals de uitvinding van het warm water traditioneel wordt toegeschreven aan de Rus Vladimir Popov, zo ook claimen de Amerikanen de uitvinding van de kazoo: een zwarte uit de zuidelijke staten genaamd Alabama Vest zou het instrumentje in 1840 hebben uitgevonden. Daarvoor is evenwel geen enkele bron te vinden behalve dat het verhaal werd opgevist in een humoristische sketch uitgevoerd door een kazoo-kwartet. In Beaufort, South Carolina, blijkt er ook een Kazoo-museum te bestaan, althans volgens Wikipedia. Nochtans kan het werkingsprincipe van het instrument teruggevonden worden in heel wat muziekinstrumenten uit andere dan de Westerse kultuur. Het komt voor in de etnische muziek van geheel centraal Afrika en ook in Azie ontmoetten we o.m. de Indische bansuri fluit (ook wel bansri gespeld) bijvoorbeeld uitgerust met een resonantiemembraan net zoals we dit vinden in de kazoo. In 1900 vinden we ook een patent terug, toegekend aan een zekere Louis Crakow in New York, voor een zogenaamde 'songophone'. Ook hier hebben we te maken met een van de vele mogelijke verschijningsvormen van wat we organologisch een mirliton moeten noemen en enige originaliteit is in de beschrijving van dit patent helemaal niet te ontwaren. Zelf hebben we in de jaren '70, toen we nog erg aktief waren als klarinetspeler op de koncertpodia, een 'preparatie' voor onze klarinet gebouwd door een kazoo-mechanisme te monteren op het tonnetje van het instrument. Dit werkte uitstekend en de geluidssterkte die we zo konden bekomen, tartte alle verbeelding. De tessituur van het instrument werd er wel erg door beperkt maar inzake brutaliteit, kon de klank moeilijk overtroffen worden...
Een beknopte technische analyse van een van de meest voorkomende types kazoo (zie foto) leert dat de opening aan het mond-uiteinde een oppervlakte heeft van 93 mm2, terwijl de oppervlakte van het gat aan de andere zijde slechts 37 mm2 bedraagt. Hierdoor ontstaat er een kompressie van de druk in een verhouding van nagenoeg 1 op 3. Door het membraan aan de bovenzijde ontsnapt geen lucht zodat de kompressie hierdoor nauwelijks wordt beinvloed. De hoofdzakelijke geluidsbron in de kazoo wordt gevormd door het membraan dat tegen een klein rooster aan trilt. Niet alle exemplaren hebben echter zo'n rooster en het systeem blijkt inderdaad ook te werken met uitsluitend een klein en dun membraan. Het membraan is echter in dat geval snel aan vervanging toe... Wanneer we dus een akoestische versterker voor een kazoo willen bouwen en ontwerpen, moeten we in elk geval vertrekken vanaf dat trillend membraan. Aangezien een kazoo geacht wordt over een ruime tessituur -overeenkomstig die van een menselijke stem- te kunnen klinken, moeten we een hoorntype kiezen dat zo lineair mogelijk versterking oplevert over de gehele bandbreedte van die tessituur. Akoestisch ligt het gebruik van een zuiver exponentiele hoorn dan voor de hand. Nu zouden we zo'n hoorn natuurlijk zelf kunnen bouwen uit ijzer- of messingblik, maar evengoed kunnen we een hoorn uit een oude akoestische grammofoon recycleren. Deze hoorns werden in de eerste helft van de vorige eeuw immers algemeen gebruikt en steeds als exponentiele hoorn gebouwd. We hadden er nog wel enkele in voorraad en bovendien hadden we dergelijke hoorns ook al gebruikt in bepaalde instrumenten van het Pneumafoonprojekt (met name voor Kolpia en voor Tembo). Voor de aansturing van het kazoo mechanisme deden we beroep op een Padu membraankompressor. Deze heeft een impedantie van 16 Ohm en een vermogen -volgens opgave van de Chinese fabrikant- van 100 Watt. Een min of meer exponentieel verlopend koppelstuk voor de aanpassing van de membraanhouder op de exponentiele hoorn maakten we uit stukjes messing buis. Op het kleine uiteinde van het mechanisme monteerden we een konisch klepje dat door een Ledex soft-shift elektromagneet bediend kan worden. Hiermee is klankkleur modulatie van het akoestisch geluid goed te realiseren. In feite moduleren we hiermee de kompressieverhouding in het instrumentje. Overigens bouwden we een tiental verschillende kazoo's op om op grond van de evaluatie ervan, de meest optimale uitvoering te kunnen kiezen. Een akoestisch model, laat staan een wiskundig uitgewerkte theorie, voor de akoestiek van de kazoo is immers voor zover wij konden nagaan, nergens gepubliceerd. Het model waarin gebruikt wordt gemaakt van messing 1/2" fittingen is het meest 'professionele', want naar duurzaamheid en mechanische sterkte optimaal. Ook montage en demontage verlopen bij dit ontwerp redelijk eenvoudig. Niet alleen met het kazoo ontwerp zelf maar ook met het materiaal voor het membraan werd grondig geexperimenteerd, vooral dan -ook hier- met het oog op klank en duurzaamheid. Dunne velletjes van een ui, cigarettevloeitjes, cellofaan, eiervelletjes, allerlei plastic folies, zilverpapier, Hasberg voelerlint 0.01 mm, messingfolie... passeerden de revue. De vier eerstgenoemde leveren weliswaar een goed geluid op, maar gaan van hooguit tien minuten tot zowat een uur mee...
Omdat het geluid met de exponentiele hoorn gekoppeld aan de kazoo,
deze laatste welhaast muzikaal aanvaardbaar maakt -wellicht een gevolg van de
beperking in bandbreedte veroorzaakt door de hoorn- beslisten we in ultimo,
een tweede 'recht voor de raap' kazoo in te bouwen. Daarvoor voorzagen we een
tweede kompressiedriver waarmee een kazoo zonder enige principiele wijziging
wordt aangestuurd. Keuze tussen beide mechanismen kan door de gebruiker worden
gemaakt met behulp van twee midi-controller kommando's. (#13 en #14). Ook kunnen
beide mechanismen tegelijkertijd geselekteerd worden. Het signaal waarmee ze
worden aangestuurd is evenwel steeds hetzelfde. Een tweestemmige kazoo is het
dus helemaal niet geworden. Het zal gebruikers zeker opvallen dat de 'gewone'
kazoo, dus zonder hoorn, aanzienlijk stiller klinkt, hoewel ze met een identiek
signaal worden aangestuurd.
De excitatie van het kazoo mechanisme -die normaal gezien met de menselijke
stem gebeurt- werd bepaald na een heel brede reeks experimenten met diverse
algoritmisch gegenereerde golfvormen met meerdere parameters, samples en niet
-periodieke signalen. Uiteindelijk bleek een zuivere sinus hier nog het meest
realistische effect op te leveren, hoewel akoestische modellen voor koperblaasinstrumenten
ook een erg overtuigend resultaat opleveren. Niet voor niets worden kazoo's
nu eenmaal vaak ingezet in armelui's fanfares en kinderspeelgoed.
Voor de tessituur van deze muzikale robot beperkten we ons tot wat -heel ruim bekeken- ook binnen het vokale bereik kan vallen. De firmware voor de klankopwekking is gespreid over twee microprocessors en omvat uitgebreide mogelijkheden voor klankkleur modulatie evenals voor de besturing van de omhullende. Een derde microprocessor staat in voor de besturing van de motor, de lampjes, de relais en de MIDI-parsing. Tot slot voegden we nog een vierde processor toe waardoor de <Kazumi> robot ook alleenstaand en onafhankelijk interaktief kan werken. Hiervoor ontwierpen we een board voorzxien van een 24GHz radar sensor waarmee bewegingen van mensen kunnen getraceerd en geanalyseerd worden. Op grond van deze 'gesture recognition' kan de robot dan interaktief en bewegingsgestuurd opereren.
Apologie van de kazoo:
Toen we op sociale media ons plan onthulden om een robot kazoo te ontwerpen
en te gaan bouwen, kregen we al snel heel wat negatieve reacties. Voor velen
is de kazoo klaarblijkelijk zowat het onmuzikaalste ding dat ooit werd uitgevonden
of bedacht. Eerder een -onuitstaanbare- grap dan een instrument dus. Een kleine
apologie is dan ook aangewezen.
De introduktie van de kazoo in de muziekpraktijk is immers een revolutionaire
stap gebleken in het bevrijden van de muziek uit de kluisters van het woord.
Vokale muziek was -afgezien van het toch wat marginale genre van de zuivere
vocalise- helemaal gebonden aan het woord met alle semantische vervuiling en
narigheid vandien. De intrede van het woord in de muziek heeft er de leugen
binnengebracht. Erger nog, die vergiftiging van de vokale muziek met woord heeft
zelfs een verfoeilijk genre als de opera mogelijk gemaakt en zo de deur opengezet
voor enorme geldverspilling en torenhoge korruptie in het muziekbedrijf. Een
korruptie die met noodzaak gepaard ging met de institutionalisering van operahuizen
als bedrijven met honderden werknemers, werkslaven en vakbondsvertegenwoordigers.
Het orkest werd daarbij zelfs naar een bak onder het podium verbannen. Er waren
zelfs ooit musicologen van laag allooi die het presteerden ettelijke bladzijden
(zoniet hoofdstukken en zelfs boeken) van 'wetenschappelijke' publikaties vuil
te maken aan uitvoerige beschrijvingen van opera libretto's, alsof die ook maar
iets met muziek zouden hebben uit te staan... Pure waardeloze broodschrijverij
natuurlijk en zonde van de omgehakte bomen. Maar goed, dankzij de kazoo is de
verlossing uit de hel van de vokale onmuziek mogelijk geworden en misschien
ook eindelijk in aantocht. Zelfs met religieuze muziek kan dankzij de kazoo
helemaal komaf worden gemaakt, waarmee eindelijk nu ook in de vokale muziek
de verlichting kan doordringen. Stel u voor, een volledige Mattheuspassie voortaan
met alle koren en solisten op kazoo! Heerlijk toch. Ik kijk nu al uit naar de
volgende krematie van een intendant met een Erbarme Dich op een kazoo...
Toen <Kazumi> zijn eerste nootjes liet horen, liep de konfrontatie met mijn hondje Bo, niet meteen van een leien dakje, zoals te zien en te horen in dit video fragmentje...
Slotbeschouwing en evaluatie: Het typische geluid van de kazoo kan slechts worden verkregen binnen bepaalde grenzen van tessituur zowel als geluidsterkte. Onder een bepaald geluidsniveau trilt het membraan niet mee. Ook boven een bepaalde geluidsdrruk werkt het niet meer. We hadden natuurlijk de parameters kunnen begrenzen tot waarden waarbinnen de kazoo voortreffelijk werkt, maar omdat die parameters en die grenzen telkens anders komen te liggen wanneer het membraan vervangen wordt, leek ons dat helemaal niet praktisch.
Bouwdagboek - Construction & Research Diary:
Terug naar Logos' index-pagina: | Naar Godfried-Willem Raes personal homepage... | Naar katalogus instrumenten |
Last update: 2023-04-26 by Godfried-Willem Raes
The following information is not intended for the general public nor for composers wanting to make use of the <Kazumi> robot, but may be essential for maintenance and servicing of the robot by our users, clients and collaborators. It also might be usefull for people that want to undertake similar projects and/or improve on our designs.
Technical drawings, specs and data sheets:
Power supplies:
Lucas Ledex softshift solenoid (PDF datasheet)
Printed circuit boards:
Board with components:
Circuits: waveform synth for the membrane compressor:
Amplifier board -stereo- as finaly used in <Kazumi>:
Hub and motor control board:
PCB:
Circuit drawing:
Relay: SPSDT-NO, 277VAC, 30VDC, 23A - Farnell part nr. 2213773 - Manufacturer part nr.: G4A1AE DC5 - Coil voltage 5V DC
Eye-bulbs: Sencys G4 socket, 12V 1.5W, 155 lumen at 2700K. 15000h.
Motor controller data sheet (Gecko drive)
Omron proximity sensors data sheet
Amplifier circuit:
Data-sheet voor de TDA7264 stereo versterker (2 x 25W) chip
24GHz radar gesture interface board, circuit: Picture of the finished PCB for the rfadar interface in <Kazumi>:
Mechanical construction drawings and welding plan:
Functional pin assignments for the microprocessors:
Processor/board | ||
hub - 18F2620 | A0 | Omron sensor L - active low - high at rest |
A1 | Omron sensor R - active low | |
A2 | nc | |
A3 | on/off relay | |
A4 | mosfet -12V - tungsten eye-light (15W max.) | |
C0 | mosfet - 12V - tungsten eye light (15W max.) | |
C1 | softshift PWM 24 V - HPWM2 | |
C2 | PWM 24V | |
C3 |
mosfet 12V - eyes lights (14W max.) - LED G4 bulb, 1.5W | |
C4 | mosfet 12V - relay exponential horn kazoo | |
C5 | mosfet 12V - relay ordinary kazoo | |
B5 | watchdog LED | |
B4 | green LED power on | |
B3 | nc | |
B2 | stepping motor ctrl. DIR | |
B1 | stepping motor ctrl. enable | |
B0 | stepping motor ctrl. step pulse | |
Synth board | cfr. circuit drawing. | |
Radar board | cfr. circuit drawing |
References:
Crakow, Louis
"Songophone", 1900, Patent Office Manhattan, New York.
Raes, Godfried-Willem, "Expression
control in musical automates", 1977/2023,