ESP32 Micro Robot Arm
ESP32 Micro Robot Arm
by T-Kuhn
This is a simple stepper motor robot arm. It was inspired by Chris Annins AR2. The AR2 is also a stepper driven
robot arm. Just like the AR2, the goal with this robot arm is to get it to move as smoothly and accurately as
possible. One big difference to the AR2 is that this robot arm is made with super cheap (~$3) 28BYJ-48 12V
stepper motors. As a controller, we are using an ESP32 microcontroller. The 28BYJ-48 are geared steppers. The
gears ensure both more torque on the output shaft and, in general, better accuracy.
Part list:
Here are the 5 steps needed to complete to get this micro robot arm working.
The finished robot arm will be able to move quite accurately, as shown in the video below.
//www.youtube.com/embed/twJG0otS8CI
There are 9 mechanical parts in total (see technical Then use the technical drawings attached to this step
drawing.) In order to create these mechanical parts, and drill/cut all the pieces.
we need to either get a 3D printer up and running or
buy some quality wood. I went for the wood If you're going for the 3D printer approach, use the
approach. Either way, all the parts will need to be .stl files attached below (ESP32-MicroRobotArm.stl).
5mm thick. So if you are going to use wood, buy
wooden plates with a thickness of exactly 5mm.
View in 3D Download
https://www.instructables.com/ORIG/F9B/VEQN/JTIYGE92/F9BVEQNJTIYGE92.stl
…
We are using the 12V version of the 28BYJ-48 stepper motor. There is also a 5V version. The part number is the
same for both. You need to be careful not to get the wrong ones.
We want to use the motors in combination with the A4988 stepper motor driver. But it is only after you apply a
small modification to the stepper motors inner wirings that you are able to do so. The 28BYJ-48s are unipolar
steppers. They need to be made into bipolar steppers for the A4988 to work. Basically, you just cut a connection.
Here's what we need to do:
Now we are ready to assemble the robot arm. Use the video attached below to put all the pieces together.
//www.youtube.com/embed/X77q19STuzg
1. Make sure you are assembling the robot arm in the same order as shown in the video
2. Use wood screws to attach the spacers to the links.
3. Attach the motor cables to the links using some of the 3mm holes.
Next, we need to wire up all the things correctly. Use after another to get the robot arm into its home-
the electronic schematics attached to this step to do position (pointing up.) The process of getting the arm
so. The knob in the schematics is actually a rotary into its home position is shown in the first video. The
encoder (lpd3806 600bm). It is used in combination 4 green PCBs are A4988 stepper driver chips.
with the push button to manually rotate the joints one
In order to program the ESP32 with the Arduino IDE follow the Instructions over here. After following the
instructions, you should be able to select the ESP32 board from the board manager (just like any Arduino board.)
Flash the program (the same way you would flash an Arduino) and move the rotary encoder by hand. The lowest
joint should rotate. After getting the robot arm into its home position and pushing the push button, the Robot Arm
should start to move as shown in the first YouTube video.