Simple Arduino Drum Robot

Introduction: Simple Arduino Drum Robot

I'll admit. I made this project out of sheer boredom after being stuck inside for a few days during a series of small but problematic snowstorms. Looking at my arduino, a few servos, and some tape, the basic idea for a crappy drum robot started to come to fruition. Turns out, if you have all the right stuff, this is a project that can be completed in about 15 minutes with practically no experience required.

If you are just getting started or are looking to brush up your arduino skills, this might be a good place to begin. Let's get started.

Step 1: Materials and Tools

Materials:

  • Arduino Uno (although nearly any board should work)
  • (2) positional rotation servo motors
  • solderless breadboard
  • breadboard wires (at least a dozen)
  • a flat chunk of wood
  • (2) pop-sickle sticks, dowel rods, pencils, or other suitable drumstick alternatives
  • a rubber pad, coffee can lid, or other drum head alternative

Tools:

  • a laptop with a recent version of the Arduino IDE installed
  • a USB programming cable that connects to the arduino
  • tape
  • hot glue gun (or just get creative with the tape)

Time:

  • 15 minutes under ideal conditions. Maybe an hour if things don't work right the first time.

Step 2: Wiring

Let's start by wiring a few things together.

Each servo motors have three connections: one for power, a second for ground, and a third for data (or something like that). The positive is always red, ground is usually brown or black, and data orange or white. Using a breadboard or the arduino header pins, connect up the arduino's power and ground to each motor. Connect one motor's data wire to pin 5 and the other motor's data wire to pin 6. Make sure both pins support PWM. And.... that's it! That wasn't too hard.

Step 3: Build the Thing

Now we have to build the frame

You may want to use your imagination for this part. I built this on a flat chunk of wood, but a flat chunk of cardboard would work just as well. Anything flat, strong, and easy to work with will serve as a good base.

To hold the motors in place, I chopped off two bits of wood from a paint stir stick - the kind you can get for free when buying a can of pain from the hardware store. I have found that these stir sticks are remarkably versatile. One of these days I'm going to post a project made entirely of paint stir sticks. Anyway, you'll need to hot glue these bits down so that they don't go anywhere.

Next, we will make the drumsticks. I cut two 5 inch lengths of 1/4 inch dowel rods, though something like popsickle sticks would work just as well. Tape or glue those to the servo horns.

If you haven't already, tape the motors to paint stick bits or whatever you are using to hold them in place.

That's it! Time for some code...

Step 4: Install the Code

Once everything is ready to go, it's time to install some code. This is the part where you'll need the Arduino IDE and a USB programming cable.

You can write your own if you would like, or you can just use mine. There are tons of side notes and instructions in the code, don't worry.

If you plan on writing your own code, it might be a good idea to learn how to use the servo commands, as they can get a little tricky. Also remember that servo motors take time to move from one position to the next. This time must be accounted for in the code, especially when writing a time-sensitive program. You wouldn't want your drum bot to be off beat.

Step 5: Going Further

Congrats! You've just assembled a functioning drum robot. Tired of its relentless tapping yet? No? Well you will be soon. So what could we do to make this a little more interesting?

For starters, I could have written some better code that improvised rhythms or could play triplets rather than endless quarter and eighth note loops.

Arduino also has a tone(Hz,duration) function that allows it to play sound through a PWM pin. Using a table of note frequencies (see above) and some creative programming, the Arduino could play a melody while laying down some sick beats.

If any of you make this project, please let me know! I would love to see it.

If you enjoyed this, be sure to subscribe to my youtube channel where I publish other science and technology related projects. Most recently I have been working on some rocketry stuff, so keep an eye out for that.

That's all for this project! Now go make something

Be the First to Share

    Recommendations

    • Pocket-Sized Speed Challenge

      Pocket-Sized Speed Challenge
    • Audio Challenge 2020

      Audio Challenge 2020
    • Maps Challenge

      Maps Challenge

    5 Discussions

    0
    Pasayan73
    Pasayan73

    Question 6 months ago on Step 2

    Hi there. How did you power the Servo? I don’t see any power source from the breadboard thanks.

    0
    LabRatMatt
    LabRatMatt

    Answer 6 months ago

    Sorry, that photo is a little confusing. The servos are both connected to the +5 Volt pin on the Arduino and to ground. I did this by connecting all three wires (two from the servos, one from the Arduino) to an empty space on a breadboard

    0
    moonoonoo
    moonoonoo

    1 year ago

    amazing, have an update with midi control ?

    0
    Penolopy Bulnick
    Penolopy Bulnick

    2 years ago

    I'm impressed you were able to whip this together with supplies you already had and in such a short time :)

    0
    LabRatMatt
    LabRatMatt

    Reply 2 years ago

    Thanks! Yep this was a quick project. I could have made it much more sophisticated but I kept it simple in the interest of making something that would be easy for a beginner to put together. Decided just to stick with recyclables and scraps rather than making something really nice and polished.