Robot Arm
Hardware- 6 Devlogs
- 43 Total hours
This is a 5 DOF robot arm that can pick up and drop off things with the coordinates that you have given it. It will be able to move simply by entering coordinates.
This is a 5 DOF robot arm that can pick up and drop off things with the coordinates that you have given it. It will be able to move simply by entering coordinates.
Devlog #6
So i have just finished assembling the arm and making all the gears, motors and joints properly now
what I have done:
fixed the shoulder joint by removing the belt completely, now it runs on a 1:1.5 spur gear reduction
I added the stepper motor so now the arm can rotate by its base, allowing it to move in 3d
I redesigned the gripper since the old one (finray style gripper) was too weak and couldn’t pick things up. this new gripper is a rack and pinion gripper that is much stronger
I have connected the SMPS power supply and now every motor can run on full power
I have connected the website to the esp so now my slider control works and is accurate
But there are still some problems:
the backlash of all the joints add up, which means the end effector wobbles too much.
My coordinate control still isn’t accurate
So before shipping this project, I will fix the coordinate control code so that it is now accurate. The backlash is a separate problem that I dont think ill be able to solve in time.
Devlog #5
I have now finished the local web server to control the robot, it includes 6 sliders for the 5 servos and 1 stepper motor and also a coordinate control.
for the coordinate control, you simply plug in your x, y, z coordinates it will return j1, j2, j3, and j4 angles to you.
on the coding side of that, i just wrote some simple analytical ik, mostly triangle geometry.
the website is ran by flask and i am using udp sockets to send the angles to my esp32 via wifi.
everything is ran on my computer, so the esp would only have to control the motors with the angles.
i also did some cad to redesign the shoulder base to fix the belt problem, will start printing soon.
Devlog #4
So ive finished the CAD for the new parts and assembled the robot arm, but the wrist roll and gripper will be attached later.
the elbow and wrist pitch of the robot works smoothly now, no skipping or anything, however.
the shoulder belt is still skipping under load, i have now used more teeth but it still skips. I think that this is because the belt itself is not tensioned properly (its a little loose), i will have to return the current belt and buy a new one.
if anyone have any suggestions to help prevent skipping please let me know.
for now that is the only major problem in this build.
I am working on the gripper right now since the old design didnt work.
also i have been working on a web app to control the arm from my computer to the esp via wifi. I am almost done the app and soon will be able to send data to the esp.
that is all for now but i think more problems will apear later.
Devlog #3
So now i have printed all the parts and assembled the arm up to the wrist, but a few problems prevented the arm from moving properly.
I think I can fix this by locking the two shafts together and using wider M2 gears.
I think that i just need the gears to be bigger so that they can tension the belt better.
I messed up this part because i was supposed to buy the 270 degree servo not the 180 one. Ill be waiting for the 270 servo to arrive.
Aside from those problems I have written code so that I can control the servos by angle and not PWM pulses.
The base of the arm works fine, Ill be controlling that as soon as i learn how to control a stepper motor.
For now I have redesigned most of the arm to fix these problems, but as i wait for the servo and all the parts to print, ill try to work on a web that can control the arm.
Devlog #2
Finished printing everything and started testing if everything fit together. Some of the components had weak spots or didn’t fit together well.
I had to go back and forth between CAD and printing for a while because my tolerances weren’t quite correct. Everything fits nicely now.
I also made a GitHub repo and added all the CAD files, BOM, pictures etc. I will update GitHub frequently, and everything needed to recreate this project will be there.
I also made a wiring diagram and in the process realized that I needed a few more components to make sure that the arm would work smoothly and safely.
I was kinda hard to learn why I needed all these different components but in the end I think it makes sense to me now.
The next steps now is probably to buy the components and then assemble the robot.
In the meantime though I think I can start writing some code on Inverse Kinematics for the Robot. I want it to be able to move all the servos to the correct angle when given some coordinates.
Devlog #1
Completed the CAD assembly for my robot arm. I plan it to be a 5-DOF arm with 5 motors for movement and 1 motor for the claw.
I’m using 5 servos and 1 stepper motor right now but I don’t know if I should change it all into servos.
I also made the arm be able to swap grippers pretty easily.
Im gonna print everything for this arm, gears, gripper, etc. I can also 3d print the ball bearings but I think its better to buy them.
The next step is to start printing everything, buying all the parts and start assembling it. Once Im done assembling Ill start coding it.
I plan for the arm to run on a Raspberry Pi and be controlled via an app.