This instrument is a computer controlled assembly of percussion and 'effect' instruments. All sound sources incorporated in this instrument are non-pitched and share a vague reference to nature sounds: we encounter thunder, rain, woodpeckers, wind, a bird, storm, lightning, crackling wood, squeaky sounds... In this respect it could be considered a realization of the first category of sound sources in Luigi Russolo's Intonarumori. Also soundwise, this futurist reference is pretty obvious. A bird was donated by Moniek Darge, and lives since on a little piece of grass underneath <ThunderWood>. It got company from a cricket in 2006.
The instrument can be played by standard MIDI commands, using commercial sequencers or our GMT software but is also capable of listening to pure algorithmic commands.
The first working version of this instrument was finalized on July 18th of 2000. Later, the lightning was added. The storm-wind module, as well as the bird sound, was designed and finished in august 2002. Thunderwood has undergone a complete revision in 2006, whereby it can be controlled by midi directly. Some light effects, as well as the squeaky sounds were added in 2010. High resolution pictures are available on request.
<ThunderWood> was originally made and designed to be a part of the <Slag-Werk> project realized by Godfried-Willem Raes for 'Web Strikes Back' at the occasion of the Tromp biannual, October 2000 in Eindhoven, the Netherlands. It is since a standard robot component in the Logos Robot orchestra.
The <ThunderWood> robot uses dedicated hardware, designed for musical automata such as player pianos, percussion instruments, organs and even bowed instruments. Details can be found in our course on experimental music as well as in the descriptive webpages on our many other robots on this same website. A general article 'Expression Control in Musical Automates' covers the many aspects of the design in depth.
The hardware for <ThunderWood> consists of following components and printed circuit boards:
1. a midi input/hub board, housing a single PIC controller (18F2525 type) in charge of the motor driven components and the heavy bi-directional solenoids used for shaking the brass thundersheet and the bamboo wind chimes..
2. A pulse driver board, using a PIC microcontroller, type 18F2525. This PC board houses the power MOSFETS used to steer the solenoids used for activating the one-shot sound sources. (Woodpeckers, bird, cricket).
3. Squeaker and LED light control board. This board uses another 18F2525 microcontroller taking care of the PWM control of the two squeakers as well as the high power LED lights. This board makes use of high side drivers using P-channel power MOSFETS. The circuit is build as a stand alone unit with its own integrated power supply. The circuit looks like:
The physical circuitry as well as the sound mechanism mounted on the base of the automate look like:
There are 4 woodblocks in the instrument, each provided with a number of solenoids driving the beaters. The lowest woodblock has 5 beaters, the second lowest 4 beaters, the second highest 3 beaters and the highest block got only 2 beaters. The woodblocks are handmade from dark tropical wood and hollowed out. The slit, also functioning as a cavity resonator, is underneath the blocks.
In addition the instrument has as set of low sounding bamboo windchimes, the latter are activated the same way as the brass thundersheet, suspended in top of the instrument..
A wind-machine was added to the instrument also. This engine uses a strong DC motor (700W / 12V - 210V DC) since this made precise speed control easy to implement. The motor rotates a perforated stainless steel cylinder taken from an old laundry machine. Over the cylinder a piece of heavy canvas hangs, causing the wind-noise production proportional to motor speed. In the picture to the left, the canvas is removed to better reveal the mechanism. The motor is controlled using one of the hardware PWM outputs available from the PIC controller. Kevlar, polyester or Tyvek, or even architects paper may be used instead of canvas to produce the wind noise. All of these materials wear out after intensive use and should be replaced regularly for a good sound.
A ratchet , controlled by a synchronous AC motor with speed reduction mechanism (gear box) makes the crackling wood sounds in this instrument. As can be seen from the picture, the wood tongues are taken from an old metric size. This device is switched on/off via a relay.
A rainmaker was implemented by filling an RCF 300Watt loudspeaker [a 20cm woofer with glassfiber cone as used in RCF's Monitor 8 enclosures] with fine grains or pellets. The speaker is mounted underneath the instrument. Over the speaker we mounted a resonator taken from a Turkish darbukkah drum. [cf.. picture] This resonator is mounted upside down. The assembly is placed such that the cone is horizontal. The speaker is driven just as if it were an ordinary solenoid and causes a rain sound when driven with a series of slow pulses. To damp any remaining speaker noises (caused by the square waves) be did provide a simple LC low pass filter (cut off frequency at 77 Hz). Maximum allowable DC current through the speaker coil should be limited to 1.5A at 12V maximum. With the low pass filter, we can power this part of the circuit from 45V directly. Needless to say that the capacitors in the circuit as shown need to be bipolar types!
4. The power MOSFETS we used for controlling these solenoids are Harris RFP10N12L (or the more modern equivalent IRL640), since these switch on TTL levels and are capable of dissipating 60 Watts. Cooling is not required, since the current flows only in bursts for very short times. The current rating is 17A and their Uds limit is 200 V. The rather high gate capacitance (1200 pF) is not a real problem since switching speeds in this application are inherently pretty slow. For this reason we did not fit a resistor between gate and ground in the driver circuit. Note that it is impossible to operate the instrument before sending the required power on/off command (midi controller 66).
5. For the DC motor controlling the wind machine, one of the hardware PWM's provided on the 18F2525 on the hub board PIC is used. This motor (a Thomson brushed DC type) runs off the unstabilized 35 V power supply thus limiting the maximum speed to safe values. Of course here also a power mosfet is used in a conventional DC motor control arrangement.
6. The bird sounds were added to <ThunderWood> in august 2002. The mechanism uses a small pump driven by a solenoid. The bird sound is produced by a special anticonical high pitched organ pipe. A mechanism making use of a threaded rod passed and rotated through a piece of hardwood, driven by a DC motor with speed reduction gears, was realized in a first attempt, but needed too much maintenance (rosin!) to be reliable in this automate. The pump mechanism implemented now, uses velocity control for the air burst, but cannot make long sustained sounds. The solenoid used is a Lucas Ledex type, as used in our player piano. It is connected to the 48V power supply. The return spring is build into the pump. This mechanism served as a prototype for <Puff>. The bird itself, a mere visual feature, is a donation from Moniek Darge...
7. Cricket: this sound source
was added at the occasion of the complete revision of the <ThunderWood>
electronics in 2006. The mechanism is a modified small motorbike horn
with a metal membrane. It does not produce a realistic cricket sound,
as it is way too loud (imagine a fff cricket of a prehistoric kind...),
but can very well be used for short click sounds. It is mounted above
the solenoid driving the wind chimes.
The power supply is kept very simple and consists of three hefty building blocks, mounted on the base of the automate on the right and the left side. Two small size SMPS modules take care of the required +5 voltages for the processor boards. Note that this power supply delivers a bunch of different voltages. Very thick wiring was used for the lower voltages since we are dealing with pretty high currents here. (At times up to 20 Amps!). The somewhat strange looking power supply with the toroidal transformer can be explained because we modified an existing Velleman power amplifier supply with split voltages, to serve for this new purpose, by connecting both windings in parallel. As the capacitors in 2012 exploded, we changed the circuitry and disposed of the original circuit board altogether.
Any decent sequencer program can be used to write and edit music for <ThunderWood>. We favor Sonar (the new name for Cakewalk). If you are a programmer-composer and using <GMT> under Power Basic, you can use all specific hardware control functions and procedures provided in our DLL libraries. A midi command converter was written in <GMT> by Kristof Lauwers and the author. The midi mapping and implementation is as follows:
All commands have to be send to the <Thunderwood> midi channel: 5 (0-15) or 6 for those who count 1-16.
Program change 0, 122-127 select different velocity lookup tables applicable to the woodpeckers and all other sound generating devices except the squeaky sounds. The velocity scaling lookup tables can be programmed using sysex commands. 0 is the original, non-reprogrammable mapping. It is recommended to always use 122, which contains an optimized mapping.
For those preferring to see the mapping in 'staff' notation:
Compositions for <ThunderWood>:
Collaborators on this project:
Insurance value: 9.500 Euro.
Note for organizers: this instrument is very high and cannot be mounted lower than the height given. Make sure the space you provide allows for the height of this instrument: 3.2 meters. During transportation, the upper part can be taken off, such that transportation requires a van with an internal height of only 1m65. <ThunderWood> is mounted on 4 autonomous wheels with brakes, so it can easily be positioned and repositioned. However, the automate should never be put flat but always stay in a vertical position. <ThunderWood> is not suitable for open air performances, since the electronic circuitry is fully exposed and not weather protected.
The <Thunderwood> robot can be heard on the Logos Public Domain CD <Automaton> (LPD007). as well as, in combination with many more automatons, on LPD008 <M&M>, a CD recorded by the Logos Robot Orchestra.
Last update: 2017-05-30
Repair and maintenance notes:
- 18.07.2000: First working version ready and presented at the Tromp Concours in Eindhoven for the 'Web strikes back' event. At that occasion, this robot as well as Klung, Springers, Troms a.o. were listening to commands sent to them via the internet. A special app was developed by us to this purpose. For audio feedback to the users logged in, the app contained samples of the robot sounds, thus circumventing the problem of internet bandwidth and latency.
- 22.04.2004: Windmachine motorcircuit: IRF540 burned out. Replaced with same type. Uref checked on DAC board. Measures 9V (the schematic mentions 10V), but that should not be a problem.
- 23.08.2006: Start redesigning Thunderwood making use of PIC controllers, replacing the laptop PC used hitherto.
- 04.09.2006: Midi hub board assembled and arranged for use in Thunderwood. Wind motor board with power DAC removed.
- 05.09.2006: Centronics input board and note driver board removed. Pulse board soldered and assembled for the woodpecker section.
- 06.09.2006: All new boards assembled and placed in ThunderWood. Start addition of a rotating flashlight. A cricket might be added as well. PIC firmware to be written now...
- 07.09.2006: Rotating flashlight welded in and connected. Operation through controller 70. Cricket added as well..
- 09.09.2006: Wave samples added on site. Cricket, wind, storm, bird to be done..
- 10.09.2006: Textile for windmachine replaced: it was Tyvek in the first version, now we tried with white polyester cloth as used for mans shirts. (Width 27cm).
- 12.09.2006: PIC firmware version 1.0 placed in both microcontrollers.
- 13.09.2006: Test and evaluation session under GMT.
- 09.10.2006: wiring bug on storm motor board killed. IRL640 mosfet replaced. Software bug in PIC code 3-phase generator killed as well. Now PIC firmware version 1.1 on midi hub board.
- 10.10.2006: Midihub board PIC reprogrammed. Now we implemented sysex lookup tables for the thundersheet as well as for the windchimes and the rain engine. Program change command must be used to change lookup tables once programmed.
- 25-26.05.2007: <Thunderwood> presented in Vilnius at Jauna Muzika Festival. Returned on may 2nd. Windchimes need some repair.
- 21.05.2008: Thunderwood made ready for concert in Amsterdam. Chimes repaired, mechanism checked.
- 15.03.2009: Controller 66 got omitted in the manual, so we added it.
- 27.06.2010: Thunderwood joined the party at Alden Biesen.
- 30.06.2010: Start up failure. Ctrl.66 not working... repair required. Power supply module for the 48V revised. (Thundersheet, chimes and rain power).
- 01.07.2010: Apparently we seem to have a failure of the PIC microcontroller on the midihub board. The woodpeckers, the cricket and the bird work as normal, once we override the startup relay.
- 18.07.2010: New PIC programmed for the hub board. Now everything works as before again. As to the cause of the failure, we remain in the dark.
- 28.09.2010: Start design of two extra squeaky sounds to be mapped on notes 21 and 23. Since the mechanisms are derived from motorbike horns, the chassis metal is connected to ground. This dictates the use of P-channel MOSFETS for the control.
- 29.09.2010: Firmware for the new squeakies written either for the 18F2520 or 18F2525. Note pressure implemented in the firmware. P-Channel mosfets (NDP6020P) as well as high brightness LED modules ordered from Farnell. The PC board can be a modified midi-hub board.
- 01.10.2010: Debugging of the new module. It seems to suffer from PIC resets due to the odd behavior of the Traco power supply module with suddenly switched high current loads. New assembly mounted in Thunderwood, a present for its 10th anniversary. Awaiting feedback from the users now....
- 27.05.2011: Firmware in the 18F2520 chip on the squeaker board improved and updated: now periodic flashing is implemented on the lights. (The velo byte controls the flashing speed). Note-off implementation checked and improved.
- 08.10.2011: Strobo-light repaired. Failed after coming back from Carnavale Veneziane. Xenon bulb and fuse replaced.
- 14.12.2012: Apparent failure of the +45V power supply. Seems similar to the failure we had on 30.06.2010. The green :LED on the squeeker board also seems blown up. Opening the power supply module revealed the cause: the 10mF/50V electrolytic capacitor had exploded, also burning the traces on the PC-board. We replaced the rectifier bridge and fitted a 2mF/200V electrolytic. We at the same time replaced the somewhat shaky snap-on connector with a screwed type. The circuit diagrams were updated to reflect the new wiring and component selection. Green LED replacement is still on hold now. Otherwise <Thunderwood> is up and running again.
- 20.03.2013: The stroboscope circuit once again seems to fail. Repair required.
- 20.04.2013: <Thunderwood> survived the trip to Glasgow very well! We expect him back in Ghent on Monday 22nd of April. The thundersheet mosfet's have to be checked however!
- 23.04.2013: Thundersheet checked: no mosfet failure, but the French-made 'Weidmueller compatible' connector to the midi-hub board apparently could not withstand the short-circuit current of the power supply capacitor. We replaced it with an original Weidmueller 4-pole type and everything works fine again. Stroboscope and green power LED still to be checked.
- 19.10.2015: Robot fully rechecked after its transportation and concert at Dok19. Apparently the green LED went to heaven...
- 19.05.2017: One of the power MOSFETS in the stormwind motor went to heaven...Repair or redesign the circuit? Looks like a redesign using a PIC 24F motor controllers would be the best repair. This was the old circuitry:
- 20.05.2017: Redesign of the motor control for the stormwind.
- 21.05.2017: Design of a suitable PCB for the stormwind controller.
- 22.05.2017: Start writing firmware for the motor driver
- 23.05.2017: PCB motor driver finished and produced. Here is the film: The scale is 200%. Further work on the development of the firmware.
- 24.05.2017: Hardware test for the storm-motor board. Further work on the firmware. We suffer serious problems with EMC and glitches causing unreliable behaviour at times. Maybe the choice of using a 100kHz base frequency for the PWM was not such a good idea.
- 25.05.2017: Further work on optimalisation of lookups and ranges for the stormwind module.
- 26.05.2017: Braking implemented. Firmware seems to run reliably now. Deglitching and snubber networks on the PCB added, as the glitches even invalidated midi data!
- 27.05.2017: Construction of small red copper heatsinks for the power MOSFET's on the storm controller and construction of a new mounting plate for the PCB. Extensive testing session. The MOSFET's do get pretty hot indeed... Maybe we should replace them with IPP60R180C7XKSA1 types having much lower Rds_on values as well as faster switching times. Separation transformer (TIM60 by Block) for the required 180V power supply ordered from Farnell. Current consumption for the storm module measured: 0.1A at 115V ac before the rectifier under normal operation. Maximum power consumption ca. 28 W, with motor at full speed.
- 28.05.2017: Wiring for the storm module documented: Motor wiring: pin1 = green-yellow, pin2 = pink-brown, pin3 = grey-white. Start construction of the chassis holding plates for the high voltage power supply.
- 29.05.2017: Final mounting and wiring of the new Storm module. Bug discovered in the mapping of the lights. Green strip now reacts on note 122. We better map it on note 126. Recheck firmware! It would be good -for aesthetic reasons, to make the lights mutually exclusive. The green LED on the squeaker board died and needs a replacement.
- 30.05.2017: Lights controlled by the storm board made to work mutually exclusive. Weidmueller 2-pole connectors ordered from Farnell. Note 123 is now red LED light, both steered by the squeaker board and the storm board.
Components, references & relevant data-sheets:
IR2104 H-bridge driver
IR2104 application notes
BUK454 power MOSFET, data sheet
IPP200N25N3G, MOSFET datasheet
Firmware for the PIC 24EP128MO202 microcontroller (storm module) : source code , hex-dump
Firmware for the PIC 18F2520 microcontroller (Squeaks board): source code, hex dump