Robots!

Slim (drumbot version two)

Slim, the robot drummer, at Steampunk November 2017

 

Since it’s somewhat unusual for a band to play with robots, we thought you might be interested in the details of their creation.  The robot drummer is a continuously evolving project that we hope to keep improving upon.

This page is a general overview of the robot project – for a more detailed explanation of how they were built including wiring and code, see the build log.

In August 2017, we introduced the world to our new drum playing robot -Slim!  He is the second, much upgraded version which began with the simple yet adorable Junkbot, who you can find out more about below. 

Slim is a completely new  robot whose code and parts build on what was learned in building Junkbot.  Slim has a total of 5 sticks (two on each “hand” and one on the bass drum) which each have the same style of gears connecting the servo and stick that Junkbot had.  His upper body is a skeleton decoration that attaches to a drumset bass drum using some extra pipe.  The arduino and electronics are housed in a lantern box that hangs from his sternum, and wires to the servos and 6 volt battery all extend from there. 

His most important new feature? After some tutorials and experimenting, the controls that had to be adjusted manually on Junkbot are all now sent via bluetooth  with an Android app.

He even went to the recording studio with us and is featured on several tracks on our second album, Machines and Monsters.  He was pretty excited!

On our way to the recording studio!

 

 


 

Junkbot (drumbot version one)

Junkbot the drum playing robot poses with External Combustion Orchestra

Junkbot and the band at Figments and Filiments April 2016

Latest Updates!

The Beginning

It started with an idea.  Wouldn’t it be cool to have a robot drummer?  I, Hedera Helix, Musical Mastermind (Kelsey) decided to make the dream a reality.

Like all good projects and experiments, it began with research.  Googling “robot drummer” pulled up some exciting links and as I continued to look into it, it became apparent that this was going to be actually possible without millions of dollars or advanced engineering degrees.

Next, it was time to start learning some basics.  I decided to try an arduino controlled machine, so I went out and got an arduino starter kit.  Except for the laptop, this kit included everything needed to get started and a number of Junkbot’s current parts came from it.  I did the beginner projects in the book that came with the kit until I thought I had what I needed to make sticks go up and down regularly.  Then I picked up some extra parts and started putting together a drumbot!

Drumbot version 1 uses:
wiring – the arduino and the hardware it talks to are connected through a breadboard.  This is like a circuit board but you can move the wires around to experiment and change things.
servos – I connected two servos to the arduino.  They each move one stick.
switches – Junkbot  has a power switch and a “Run” switch
potentiometer – this is the tempo control dial
code – the arduino must be programmed to know what to do.  The kit’s instruction book explains how to tell the arduino what’s connected to it and what to do with them.  This took some fiddling with to get the servos to move exactly how I wanted.

Now I had the electronics and software, but I also needed hardware.  So the Minion General dug up a body for me.  It’s an empty, old Apple computer body.  (The kind we used to play Oregon Trail on in grade school.) Then I hit the thrift stores, looking for arms.  They ended up being a desk lamp section, and a window opener arm.  These have some drawbacks, like they won’t move left and right, but they were good enough to get started.

I extended the servo wires so they reached to the ends of the arms, attached the servos,  attached drumsticks to the servos, and Viola!…

(Hang on, let me just tweak that code…)

Ok, Viola!  It goes Tick Tock!

Gears – not just for decoration

It wasn’t good to go just yet, though.  The strikes of the sticks were very weak.  The servos couldn’t move the drumsticks fast enough for good, solid hits.

Now what could I use to make the sticks move faster…

3D model of a gear created in Sketchup

3D model of a gear created in Sketchup

Oh, right – Gears!  Steampunks use them for decoration because they’re an integral part of machinery from the Industrial Revolution.  Junkbot’s gears have a 2:1 ratio, so the smaller gear is moving twice as fast as the bigger one.

Keeping in line with this spirit of innovation (and because it was cheap) I had gears 3D printed.  I used Sketchup and an extension specifically for creating gears to make 3D models and sent them to friends with 3D printers. If you’re in the Kansas City area, you can check out the Johnson County Library’s MakerSpace where you can access a 3D printer and other cool maker tools!   Now the drumsticks have nice solid strikes and are held in place securely.

As of April 2016, Junkbot plays several songs with us onstage!

He currently has the assistance of Minion General to turn him on and off at the right times.  His repertory is increasing all the time!

Junkbot the drum robot

Junkbot debuted at Bits and Bobs steampunk day in Buhler, Ks and made the Hutchinson newspaper

 

June 2016 – No strings attached!

In preparation for showing off at Maker Faire, Junkbot got some upgrades.  It still had to be connected to a laptop for power and for switching rhythms and I wanted it to be more autonomous.

First, I attached a battery pack to the power input, so it can run without being connected to a laptop.  Easy part – done!

Then I did some editing on the code so that instead of having several programs that each ran one rhythm and had to be downloaded every time you wanted to change, I had one program with several rhythm patterns and the ability to change which one is playing with a switch.  Since it was now on battery power, I changed the power switch into the “Change rhythm” switch.

This was a little tricky.  Because the code on an Arduino runs in a continuous loop, getting it to change the selected rhythm was no problem.  Getting it to stop was!

I also wanted to be able to tell what rhythm it was set to, so I added an LCD display screen and programmed it to display the name of the current rhythm.  This required a LOT more wires than I had been using previously, so I’ve upgraded to a larger breadboard.  I plan to look into making an actual circuit board for it soon.