Bridging the Digital / Analog gap in music
Read more ↓
After many design iterations I settled on a combination of 3D printed and CNC machined parts out of ABS. A variety of ball bearings, thumb screws for adjustments, and steel tooth clamps for mounting to drum rims.
Due to the configuration of the hardware sometimes solenoids would be mounted vertically, horizontally, or at weird random angles. This meant that the force of gravity was working on each drum stick and solenoid at a different angle. This caused some instruments to be delayed more than others. Not all of the percussion pieces were playing in sync. To make it worse the delay variable would change depending on how hard each solenoid was hitting. Though it sounded chaotic, it was a simple mathematics problem. I wrote a simple midi plugin that applied a very simple pre-delay function curve to each solenoid depending on the input velocity. This put everything perfectly in sync.
Mosfet / Solenoid
The Mosfet and solenoid did not cause much trouble to be honest. That is until mysteriously, after several minutes of playing, sometimes a mosfet would fry open, clamping the solenoid down at full power until we unplug the entire system to analyze what happened. This happened several times. The first several times we thought it might be a fluke or a bad solder. It wasn't until coming across an article about reverse transient voltage where the problem became clear.
When current is removed from a solenoid, the magnetic field collapses, sending a pulse of electrically backwards through the power wires. Since the power wires ran directly from the solenoid to the mosfet the mosfet was receiving all of that power in reverse which was causing the chip to overheat and fry. A simple correctly sized diode was put in place between the mosfet and solenoid which prevented reverse transient voltage from reaching the mosfet. Now they would run for hours and stay cool.
Sizing the power supply
Another issue was the power consumption. Each drum, cymbal, or percussion instrument had its own drum stick and each drum stick had its own solenoid to control it. With a kick, snare, toms, ride, crash, hats, and aux gear that's possibly up to 10 solenoids. Each solenoid, when engaged, can pull up to 5 amps. We noticed that during playback if multiple instruments were triggered simultaneously the current would spike and the voltage would drop. Our power supply was undersized. Eventually we ended up with a 24v 40 amp power supply.
The Down Stroke
When creating a robotic musician the musical dynamics are key. Being to tone, velocity, sound, volume, etc. That means that control is really the key. We experimented with a number of different control systems. Pneumatics, servos, stepper motors and solenoids. Pneumatics are loud. Servos are weak. Stepper motors are electrically complex and inefficient. We ended up settling on solenoids which act as linear actuators.
Solenoids are great at a few things. When paired with a mosfet, pulse width modulation, which is then modulated over time you have a very simple electrical system. A solenoid (shown in Figure A.) is an incredibly simple mechanism with only a single moving part - a solid steel plunger that moves linearly to the left when the surrounding coil is electrified (the down stroke)
The Up Stroke
When the electrical current is removed the spring around the plunger returns the plunger to its resting state (the up stroke). One problem with the spring is that it's not easily adjustable or tunable. Another problem is that as the solenoid heats up (which it does after several minutes of use) the spring gets weaker.
I experimented with a variety of different return mechanisms. Springs over the coil, springs outside the coil, and bands of rubber, silicone, latex. I ended up finding a material called Rep Band that had a perfect amount of adjustability, strength, and did not change tension in different temperature conditions.
These result is a reliable, quiet, controllable, powerful, mechanism for repeat impacts with very few moving parts.