Introduction: Toothbrush Machine

The Toothbrush Machine®: because knowing how to build something doesn't always mean you should.

Backstory

The other week I built a toothbrush machine as a part of a pilot for a kids show about electronics. And because I love shitty robots and wanted an excuse to make one for myself. I posted it on Reddit and some people requested a tutorial on it so here we go.

Step 1: Get the Parts

  1. A robot arm from MeArm
  2. A skateboard helmet. I used this one but there are probably cheaper alternatives out there that work just as well
  3. An Arduino UNO
  4. A servo shield from SainSmart
  5. A toothbrush of your fancy

I had all the stuff laying around but I think the parts would come to about $140 all together.

Step 2: Assemble the Robot Arm

First thing I did was to assemble the robot arm. MeArm has a pretty intricate but good tutorial on how to do this.

I skipped step 2 and 3 that takes you through assembling the base and 18, 19, 20 that makes the gripping claw at the end of the robot arm.

Step 3: Attach Toothbrush

Instead of having a claw at the end of the robot arm, we'll attach the toothbrush. I went trough some iterations to find the best way to do this (without getting any extra parts, because I'm lazy).

To attach the toothbrush to the robot arm I used the parts in the first image, which are all left-overs from the robot arm kit.

Take the biggest part and drill two holes in the toothbrush head that co-align with the two topmost holes. Use the pointy screws to fasten it.

Use two screw to attach the collar with the spacers between to the part attached to the toothbrush. Make sure that the longer spacer is facing away from the toothbrush. Then attach all of it to the robot arm with the three remaining screws.

Step 4: Prepare the Helmet

Make a hole in the front of the helmet the size of the servo motor. There are probably more elegant ways to do this but I used a drilling machine an drilled small holes along the outline of the servo motor and then used a knife to cut it out.

Then take the plate from the robot arm and drill holes in the helmet that co-align with the holes of the plate.

Mount the servo with the motor mount facing down and put the acrylic square on top of it. Use the two long screws and the two nuts in the two upper holes. I had to cut out some of the insulation of the helmet to be able to screw them in. Then take the two shorter screws and put them in the two lower holes. It's important that the head of these screws are on the inside of the helmet as they otherwise will be in the way for the robot arm to move.

Step 5: Mount Robot Arm on Helmet

Place the robot arm so that the servo horn on the bottom of the robot arm mounts on the servo motor attached to the helmet. Make sure that the robot arm is placed so that you can move the servo motor as much to the right as you can to the left.

Fasten it with one of the small black screws from the MeArm kit.

Step 6: Attach the Arduino

Now we need to attach the Arduino to the helmet. If you haven't already, mount the servo shield to the Arduino UNO.

I just put a broken hair tie between the Arduino and the servo shield and then pulled it through two of the holes of the helmet. Make sure that the USB-port of the Arduino is facing towards the back of the helmet.

Step 7: Connect the Servo Motors

Pull the cable for the bottom servo motor through the front hole that the Arduino is tied to and connect it to pin 7 of the servo shield. Then connect the lower arm servo to pin 6 and the upper arm to pin 8.

Step 8: Program It!

Here's the code I wrote for the helmet. Might need some calibration to work with your face. Because we're all unique, yada yada yada.

// Written by Simone Giertz

#include <Servo.h> 
 
Servo servo[3];  
// base, upper arm, lower arm
static const int servoPin[3] = {7,8,6};
 
void setup() 
{ 
  Serial.begin(9600);
  for(int i=0; i<3; i++){ 
    servo[i].attach(servoPin[i]); 
  }
  // Fold the robot arm at the top of the helmet
  servo[0].write(90); // base
  servo[1].write(30);  // upper arm
  servo[2].write(150);  // lower arm

} 
 
void loop() 
{ 
   // Wait five seconds before we start the toothbrushing
   delay(5000);
   
   // Put the arm in brushing position
   servo[1].write(180);
   servo[0].write(90);
   servo[2].write(70);
   
   delay(1000);
   
   // brush back and forth
   for(int i = 0; i<10; i++){
    servo[2].write(60);
    delay(200);
    servo[2].write(120);
    delay(200);
   }
   
   // Fold the robot arm back up
   servo[0].write(90);
   servo[1].write(30);
   servo[2].write(150);
}

Comments

author
jrosillo3 (author)2016-02-29

hahaha great!

author
manofpluto (author)2016-01-15

i tried 40000000000 times cannot do it !!!!!!!!!!!!!!

author
scottinnh (author)2015-12-30

This reminds me of an invention from Wallace and Grommet. :)

author
ghetas (author)2015-09-10

very very perfect job.

author
AdrianV11 (author)2015-08-14

author
zack195610 (author)2015-08-06

This is hilarious! Awesome idea!

author
rhulligan12 (author)2015-08-06

Or you could just use your hand… just saying

author
Yonatan24 (author)2015-08-06

BTW I Googled "toothbrush helmet" to see if it is possible to buy one of these since I was curious to see how much it costs, and there were tons of articles about you

author
Ezlpo1 (author)2015-07-31

MUST. HAVE. VIDEO. OF FINISHED. PRODUCT. AT. WORK!

author
simsalapim (author)Ezlpo12015-08-01

Aaaaah don't understand why the GIF doesn't work for some. Added a video in the description so you can have 8 seconds of toothbrushing bliss.

author
Yonatan24 (author)simsalapim2015-08-06

Your dentist hates you now, It's fun for you to brush your teeth...

author
paulerikf (author)2015-08-05

Hahaha! Too funny!

author
ccyclone (author)2015-08-05

I just love that GIF. You and the helmet are one, in perfect synch. You should go on tour with that thing. Jimmy Fallon would love it. :-)

author
Aleator777 (author)2015-07-30

Simple, effective, and wonderfully "shitty" This blows my machine out of the water ;)

author
Attmos (author)2015-07-30

Hilarious! What a great way to excite kids about electronics.

author
e-beth (author)2015-07-30

video?

author
simsalapim (author) e-beth2015-07-30

Was the gif in the beginning not working? :( Here's a link: imgur.com/f9jiKwk

author
Everything impossible (author)2015-07-30

Amazing, you should put mirrors on the helmet to.

author
kikigrace (author)2015-07-29

Awesome!! What A great Idea!

author
KittiCarlisle (author)2015-07-29

Kids should wear this all day, programmed to brush 3 times a day?

author
phenoptix (author)2015-07-29

This is exactly how the MeArm should be used! Fun things to inspire people into learning more about code, electronics, robotics and STEAM. So impressed with this work.

author
Honus (author)2015-07-29

So funny! I need to send this to my dentist. Maybe I can convince my kids to brush their teeth using this.

Modifying the brush holder so you can brush the molars could be very tricky... :)

About This Instructable

19,249views

85favorites

License:

Bio: Creative Technologist.
More by simsalapim:Toothbrush machineAutomatic desktop fanSmartphone controlled mood light
Add instructable to: