Let's Make Robots! | RobotShop

Micro Servo Robot

MiniRobot_1_3.ino_.zip2.73 KB
MiniRobot_1_3EN.ino_.zip3.52 KB
Micro_Servo_Robot_Flowchart.pdf84.04 KB
Micro_Servo_Robot_Diagramm.pdf74.13 KB

4 axis robot arm with a small gripper and teach function. (In fact: it is a 3 axis robot)

This robot can follow. This robot can learn. And this robot can repeat endles. And he lost all his memory if the batterys are low. This makes it new all the time he is powered again. - The idea for this project is taken from https://www.robotshop.com/letsmakerobots/node/21633 - Stoerpeak made me do it! -

Arduino mini pro 5V/16MHz

4 micro servos 180degrees

4 22k potentiometer

NmH Battery 4.8V

Wires, Button, Switch

Balsa wood, Metal, Plastic

Zip Ties and Glue


Teach mode: After a reset the robot arm follows the teach in arm while simple mapping the analog inputs every 25ms to the servo motors. Pressing the button stores each servo position in a array

Play mode: Double press the button switch to play mode. The sketch reads the array step by step and and moves the robot arm. For cool loocking movements i added a routine calculates different micro steps for each servo to have moving start and end sync on all axis. Also added a ramp for soft increase/decrease velocity. Shorter travel distances the robot does slow, longer distances with faster speed. Its all about timing so my thoughts in this moment

Play Mode version 1.1 The gripper input is used to set the delay (0,1,3,15,60,300 seconds) after a loop is done. The switch (it was left from the project start) pauses the robot

08/2015 i added the same code 1.3 but i try add english comments

10/2015 flowchart for the code and electrical diagram. (make sure you use a pullUp resistor at input 4,6 / change the code for input 4. This should fix the 'slow running problem' often happend)


Hey people!!: If u share my code please keep decency and give me credits. And dont forget Stoerpeak!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Hey Pinaut,

I am very interested in recreating your mini "robot" but I do not know where to start from. A rough schematic would be of great help as well as other bits of info if you are willing to help a young and eager student. Thanks a lot!

Hi I am new on arduino is there anyno who can give me the code and fritzing diagram thanks

!!! The resistor at input 6 (button) have to be a PullUp to +5V. Pressed button goes to GND !!! 

Maybe that also work with software PullUp... ;-) https://www.arduino.cc/en/Tutorial/InputPullupSerial

I hope this solves all the speed problems... P.

can anyone confirm if this is the solution for the speed problem?

hey Pinaut!
im really interested in your project I have been aldready made one robot arm as yours But i need the schemic from you Can you post your schemic, so I can wire button to arduino and apply the code
And one more thing Im not good at english Can you explain me brieftly How to make robot move smoothly after activating  the positions of servo rc in eeprom 

Sincerely thank!

love the way you write your code i want to implement a part of it to my personal deskhelp (check profilefoto)

like to have your opinion about it i implemented a extra rotating axel in the midle of the arm and are going to check this afternoon if i can bring this back to your code and some storing capabillities and disign the arm to copy the movements from 

i am kind of new to this so please let me now Greetings nico

very nice

ready with the disign rest of the parts are printing

i hope its finished tommorow

Nice project. Why not start your own thread? Would make sense for future postings and discussions