How I started this project?
As a drummer myself, I think it¡¯s quite necessary to practice some rudiments on the drum kit. Whenever I go to places other than my home, a whole set of drum kit seems not accessible. This inconvenient situation triggered my thought. I was thinking that if I could make something portable for my daily practicing and even rehearsal.
The whole process of updating this air drum
Before I have decided to use any software or hardware for my project, I spent much time building the basic structure of how this ¡®drum machine¡¯ work.
*The final idea is like this:
1.collect data.(distance, gravity, pressure light, etc.)
2.computer read these data
3.data changes, then program start to play sound from the computer
After I decided to work with this basic idea, my first challenge is to find a proper way to collect data from the real world. Since I want to make a low-cost product for practicing, I looked at all the sensors that were accessible to me and had a long period experimenting with different kinds of sensors to test their sensitivity as a trigger. The first part of the drum machine is hand-triggered I took a look of all the sensors I have, and make a list of sensors which may be helpful for our project: Tracking sensor, shock sensor, avoidance sensor, ultrasonic sensor. Since I am not sure about the exact function of some sensors, so I did many experiments to test each sensor. Basically, I plugged in the sensor in my Arduino and write a brief code to get the data. The first one I have tried is tracking sensor, the problem is that it has a quite long delay. Shock sensor didn¡¯t appear in my final project because it required an intense shock to return some data. In comparison, the ultrasonic sensor is much more responsive than those.
I have done lots of coding in Arduino and finally succeeded in collecting the correct distance between the ultrasonic sensor and the moving object(my hands, for example). Then I wrote a program to play the sound file on my computer: if the distance between the moving object and the sensor is smaller than 12, the sound will be played. This is my first version areodrum¡ª a simple machine to simulate the hi-hat and snare drum.
My next step is to work on the part for my feet. In order to make a tool that is effective for practicing drum, I should at least put 2 triggers on the ground. One acts as the pedal of the bass drum, the other one is for the pedal of the hi-hat. At first, I used two buttons which were put in the middle of a breadboard, but when I actually tested them, I found it is almost impossible to tap that with the foot while not breaking the wires and the resisters. Then I move onto the ¡®soft spot¡¯ pressure sensor that I had never used before. However, I found it seems not to be so helpful. Using the distance to trigger the sound is not so difficult with a few ¡®if¡¯ statement, but the detailed method to deal with the data from pressure censor took me a while to figure out.
For instance, what I got from the serial monitor is not the intensity of my force, rather, is just number represent the place of that sensor which seems not so helpful. After lots search about the mechanical of drum pedal, I realized that I have to catch the movement when my foot leaves the sensor and tap on the sensor. I changed my way to program that: one trigger is ¡®when the number changes from 0 to nonzero¡¯ the other is ¡®from nonzero to 0¡¯, with this new code, my final program is able to capture this move.
What will this product be like in the future?
I have spent more time than I expected on this project, and at the end of my making this air drum, I was actually thinking that whether I can update this simple drum machine to meet the manufacturer¡¯s standard. Within 5 years, I think all the alternatives and calculations I¡¯ve done on the computer would seem easy in a small chip. The materials of all the pressure sensors and the sensitivity of ultra-sonic censors will be improved a lot. That improvement may make this product meet the standard of a real concert.
Experimental high school, 开学十二年级