Introduction: 3D Printed Robot

The nice thing about 3D printing is that it makes building robots easy. You can design whatever configuration of parts that you can dream up and have them in your hand virtually right away. This allows for rapid prototyping and experimention. This particular 3D printed robot is an example of that.

This idea to have a walker bot that shifted its front center of balance is one that I have had for a few years. However, implementing it with off the shelf parts always proved rather tricky and prevented me from really trying. Yet, when I realized that this could be done quickly and easily with 3D printing, I was able to finally create this robot in about two days. Basically, 3D printing had enabled me to take an idea and actualize it in less than 48 hours.

If you want to try your hand at making this easy robot, I have included the files and posted instructions for you to make on yourself. This is definately a fun weekend project for someone with a 3D printer who knows a little bit about electronics and soldering to get their feet wet with robotics.

Step 1: Robot Parts

Get the following materials:

(x1) Afinia 3D printer (RadioShack #277-224)
(x2) Standard servos (RadioShack #273-766)
(x1) Arduino micro (RadioShack #276-258)
(x1) 40-pin socket (RadioShack #276-1996)
(x1) PCB (RadioShack #276-150)
(x1) 9V battery snap (RadioShack #270-324)
(x1) 9V battery holder (RadioShack #270-326)
(x1) 9V battery (RadioShack #23-2209)
(x2) 3-pin headers (RadioShack #276-266)
(x13) M3 nuts and bolts
(x4) pencils

Step 2: 3D Print Parts

3D print the attached files using your particular 3D printer. You may need to setup the files to work with support for your particular setup.

Step 3: Front Assesmbly

Insert four bolts into the front of the robot.

Slide the two front leg gears into the compartment in the front of the robot body such that the leg sockets are pointed outwards.

Place the gear inbetween the two rack gears of the legs.

Press the servo's drive shat into the socket on the center gear and use a screw to fasten this into place.

Finally, bolt the servo in place using the bolts installed earlier to complete the front assesmbly.

Step 4: Bottom Servo

Slide the bottom servo into its mounting bracket and bolt it into place.

Step 5: Attach the Torso

Press fit the 3D printed torso centered upon the motor's drive shift and bolt it into place.

Step 6: Insert Pencils

Insert pencils into the torso socket such that the eraser ends are sticking out.

Step 7: Pull the Erasers

Pull the erasers off of two pencil using a pair of pliers.

Step 8: Insert More Pencils

Insert the end of the pencils that the eraser used to be attached to into each of the front leg sockets.

Step 9: Build the Circuit

Solder the 40-pin socket to the center of the board.

Connect the black wire from the 9V battery snap to the ground pin on the Arduino socket and the red wire to the V-in pin.

Solder the first three pin male header to the 40 pin socket as follows:

header pin 1 ---> 5V power
header pin 2 ---> Ground
header pin 3 ---> Digital Pin 8 (socket pin 36)

Solder the second three pin male header to the 40 pin socket as follows:

header pin 1 ---> 5V power
header pin 2 ---> Ground
header pin 3 ---> Digital Pin 9 (socket pin 37)

Step 10: Drill

Drill a 1/8" hole centered upon a part of the circuit board where there are no soldered electrical connections.

Step 11: Insert the Arduino Micro

Insert the Arduino micro into the appropriate pins on the socket.

Step 12: Attach the Battery Clip

Attach the battery clip to the bottom of the circuit board while being careful not to short circuit any electrical connections with it.

Step 13: Attach the Circuit Board

Bolt the circuit board to the mounting holes on the robot body.

Step 14: Wire the Servos

Plug the servo sockets into the appropriate male header pins on the circuit board.

Step 15: Program the Arduino

Program the Arduino with the following code:

//
// Code for a 3D Printed Robot
// Learn more at: https://www.instructables.com/id/3D-Printed-Robot/
// This code is in the Public Domain
//


//add the servo library
#include <Servo.h> 

//Create two servo instances 
Servo myservo; 
Servo myservo1; 
 
//Change this numbers until the servos are centered!!!!
//In theory 90 is perfect center, but it is usually higher or lower.
int FrontBalanced = 75;
int BackCentered = 100;

//Variables to compensate for the back center of balance when the front shifts
int backRight = BackCentered - 20;
int backLeft = BackCentered + 20;



//Setup initial conditions of the Servos and wait 2 seconds
void setup() 
{ 
  myservo.attach(8); 
  myservo1.attach(9); 
  myservo1.write(FrontBalanced); 
  myservo.write(BackCentered);  
  delay(2000);
} 

 
 
void loop() 
{ 
  
  //Walk straight
  goStraight();
  for(int walk = 10 ; walk >= 0; walk -=1) { 
     walkOn();
  }   
 
  //Turn right
  goRight();
  for(int walk = 10 ; walk >= 0; walk -=1) { 
     walkOn();
  } 
  
  
  //Walk straight   
  goStraight();
  for(int walk = 10 ; walk >= 0; walk -=1) { 
     walkOn();
  }  
  
  //Turn left  
  goLeft();
  for(int walk = 10 ; walk >= 0; walk -=1) { 
     walkOn();
  } 

} 


//Walking function
void walkOn(){
    myservo.write(BackCentered + 30);
    delay(1000);
    myservo.write(BackCentered - 30);
    delay(1000);
}


//Turn left function
void goLeft(){
  BackCentered = backLeft;
  myservo1.write(FrontBalanced + 40);       
}


//Turn right function
void goRight(){
  BackCentered = backRight;
  myservo1.write(FrontBalanced - 40);              
}


//Go straight function
void goStraight(){
  BackCentered = 100;
  myservo1.write(FrontBalanced);             
}

Step 16: Plug in the Battery

Plug in the 9V battery and secure it in place with the battery clip.

Comments

author
gaurav. made it! (author)2017-07-01

Can I make it with arduino nano?

Will there be any problem if I use it with nano........

author
alexbuiltit made it! (author)2016-10-04

Im wondering if I have to scale the stl before printing it to account for 3D printing shrinkage?

Thanks!

author
DavonM made it! (author)2016-06-02

where's the code at?

author
генак made it! (author)2016-03-16

I have made the robot, following Randy instructions given here. Problems I have had was that I am new to Arduino, and instead of "Micro" I bought "Mini". That didn't work so well, so I bought "Uno", as I saw one guy on internet doing nicely with servos on it. And also the body I didn't print, as that would take 20 hours, but cut out of styrofoam. Tried to be economical (here, in Ukraine, we have to be...)

MVI_4103.MOVIMG_4106.JPGIMG_4105.JPGIMG_4104.JPG
author
hypers made it! (author)2016-02-12

Ok. Where's the video of the walking bot ? O_o

author
brittanyclearview made it! (author)2015-05-29

Hi,
Do you know what else would work in place of the 3-pin header & extension cable? It is not available at RadioShack anymore....

author
FaithG3 made it! (author)FaithG32015-10-10

you can buy a breakable pin header that's what i did and it worked perfectly fine you just have to break it so there is 3 i bought mine at amazon

author
SirTeddyI made it! (author)2015-06-28

Do you remember the total cost? For parts, not the 3D printer, of course.

author
mol4u made it! (author)2015-02-02

I found the code and am looking at it. What servo library and code do I use? The #include line seems to be blank.

author
MikeM15 made it! (author)2014-12-09

I have a student building this and the parts print just fine after some minor adjustments on the placement (we have a MakerBot). For those having trouble downloading the files: right click the link and choose Save Target As... (or whatever the phrase is for your browser) and make sure you name the file appropriately. For example, using "3dRobotTorso.stl" as a file name instead of whatever your browser wants to use makes things easier when you then need to find and open it in your printing software. Dunno why the Instructables server is messing with the file type, but at least we have our built-in workaround.

author
vkillmore made it! (author)2014-12-08

Trying to down load these parts but I keep getting gibberish any ideas? Body and one arm download perfectly the others I am unable to download

author
kdewitt made it! (author)2014-11-21

I would like to download the STL files as well, but when I click them they open in the browser and there is no way to save them in the appropriate format. Please make them available. I would like to make this for my son. Thanks.

author
Elflin made it! (author)2014-11-09

Hi! I really want to have a go at making this, but i think that the links for the two front leg STL files are broken, so I can't download them. Could you please replace those links? Thanks!

author
wavelet_spaghetti made it! (author)2014-10-27

adorable! I want ten of these in different colors. they can do all the erasing in my writing for me

author
chyy0906diy made it! (author)2014-10-26

good!

author
SparkySolar made it! (author)2014-10-24

Thank you for your nice instructable.

Rima

author
randofo made it! (author)randofo2014-10-24

You're welcome.

author
janakarathinam made it! (author)2014-10-24

I want to have a 3D printer just for making this robot. It's awesome Randy!

Koala.jpg
author
randofo made it! (author)randofo2014-10-24

Thanks

author
janakarathinam made it! (author)2014-10-24

Hi, olt the servo in place using the bolts installed earlier to complete the front assesmbly.

author
M.C. Langer made it! (author)2014-10-23

I want to have a 3D printer just for making this robot. It's awesome Randy!

QUÉ MIRA, SAPO? :-)

Greetings from Azerbaijan!

author
randofo made it! (author)randofo2014-10-23

Nada mas lo importante.

How is life in Azerbaijan? Build any robots of your own recently?

You are welcome to come use the 3D printers here any time.

author
M.C. Langer made it! (author)M.C. Langer2014-10-23

Well, I build these three instructables in Baku:

https://www.instructables.com/id/Superheroic-Wrist-Gun-made-of-plastic-trash-and-an/

https://www.instructables.com/id/Simple-Robo-Dog-made-of-a-toy-gun-a-mouse-and-a-pi/

https://www.instructables.com/id/Soldering-Iron-Base-made-with-a-sardines-can/

Life in Baku? Married to the most amazing woman, trying to get a job (it's very complicated if you don't know at least Azerbaijani and Russian), with two cats (Cringer and Leeloo. You can see them in action in the Superheroic Wrist Gun video). But everything is ok.

And thanks for the invitation! Remember you have a home here in Baku, the day you want to come and visit!

author
electro18 made it! (author)2014-10-23

That's awesome ! :)

About This Instructable

53,468views

284favorites

License:

Bio: My name is Randy and I founded the Instructables Design Studio. I'm also the author of the books 'Simple Bots,' and '62 Projects to ... More »
More by randofo:Chocolate Peanut Butter Fudge RecipeBuild a Mad Scientist LightUseless Machine Instructions
Add instructable to: