What’s better than hitting a drum with one hammer? Hitting a drum with as many hammers as you can get your hands on!
The big leap for this prototype is getting from 1 to 2.
I rearranged the circuit yet again so it’s nice and compact on the breadboard. I also moved the high-load circuits for the solenoids onto a different breadboard. Notice the plurality:
The breadboards even lock together!
I whipped the microcontroller software into shape:
- I refactored the Arduino code to control multiple independent solenoid circuits. It’s easy to add more as needed.
- Each solenoid’s operating parameters can be tuned to match the hardware. As I discovered while testing, different hardware calls for different settings – primarily minimum activation duty, but also minimum and maximum ease time, maximum hold time, and minimum cooldown time.
- Each solenoid is now mapped to its own MIDI note and control pin, so they can be played or programmed independently.
There are so many things I want to try next:
- Add even more solenoids. Why stop at 2? How do power requirements change with additional load?
- Find the ideal solenoid:
- Reasonably long armature and range of motion.
- Respond to a wide range of duty cycles without getting stuck.
- Decent recoil spring.
- Easy to mount through a hole in a metal surface.
- Easy to add different playing heads.
- Experiment with ways to mount playing heads on a solenoid.
- Get an old snare drum and put it all together.
Also, I’ve been wondering if there’s an integrated circuit or even a breakout board for a controller for an inductive load – the combination of MOSFET + diode + resistor. This seems like it ought to be a pretty common pattern, and I imagine I’ll be building a lot more of these things in the future.
In two days, it’ll be a year since I started thinking about doing this project on Arduino day 2014. It’s high time for a working proof of concept to start annoying the world.