You are browsing as a guest. Sign up (or log in) to start making projects!

3 Degree of Freedom arm

Hardware
  • 5 Devlogs
  • 25 Total hours

I am building a 3 Degree of Freedom arm. This is in an attempt to better understand engineering mechanics and advance my knowledge of robotics and hopefully machine learning. I am to be able to learn inverse kinematics and basics of design through this.

Open comments for this post

6h 54m 50s logged

Devlog 5: Wires and Code!

Hey guys! Welcome to my 5th devlog in this series.
This devlog is quite major as you can see by the 7 hours spent on it so lets go over the details.

Wiring

I have finally gotten most of the wiring done for this project. Unfortunately, I was not able to get my PCA9865 yet, hopefully I will get it sometime soon, but in the meantime I found a fix.
What is my wiring strategy?
I know 2 things. Power and signal.
I tried to first feed power to my ESP32 and then to servos, but my servos are very power hungry, and this didnt work.
Turns out, on my power supply, the male pins are much much more powerful than the power supplied to my breadboard rails. This presents a unique challenge, as I have to conserve my 5v power slots.
I also found out that no matter what I do, it is still too little power to handle all my servos, and so I came up with a solution.
For my signal, this was easy. I hooked up my 4 stepper motors to my ULN2003 module, and then one signal wire to each servo!

The programming

What is the solution you may ask? Creating everything in steps! By doing this, Instead of setting my servos directly 0-180, I set it 0-180 but in steps of 10 every X milliseconds. This decreases the overall power requirement, allowing my arm to work under very low power!
I implemented this in my code with a scheduler that whenever my inverse kinematics are updated, it starts a cycle of moving servos.

My next devlog will cover my end effector! Stay tuned!

0
0
99
Open comments for this post

7h 57m 3s logged

Devlog 4: The arm has been prototype

Hello again guys and today we have another devlog. Sorry it’s been a while since my last devlog but I have a lot of exciting stuff to show.

First, I have finally figured out inverse kinematics!

Law of cosines was a bit annoying to learn and to apply considering my method is finnicky but I managed to get all my servos to move into position based on real time, and my turntable also works!

Problem 1: Power Draw

I severely underanticipated the amount of power this would draw, and my psu can provide 9v1a stepped down to 5v wheras my arm needs over 5v6.5a. In order to solve this, I will get a PD trigger board which I will hook up to a PCA9865 module in order to power this. I also learned a ton about SDA and SCL signalling, which I thought was like CAN but I was completely wrong

Second, we have a basic code!

Although we still do not have a webend for me to run machine learning on this, I am able to manipulate all my servos.

Third, I am working on objects to pick up.

One of the problem with the power draw is that my servos will jitter and release certain items. In order to circumvent this I will design an object and claw similar to Samples in the FTC game Into The Deep for 2024-25. This way I have something to dig into

What’s next?

Next up I have to work on a webend that way I do not have to constantly be plugged into my ESP-32
I have to wire up my PCA9865 (the SCL SDA will save me so so many wires)
And lastly implement machine learning! Adios my friends!

0
0
4
Open comments for this post

49m 50s logged

Devlog 3: Starting to build

Yesterday my P2s was delivered! I’m excited to use it and I have begun printing some parts.
One thing I did not think about when designeing my parts is tolerences, especially for 3d printing. Today I spent some time on OnShape redesigning 2 of my parts for printing. More parts to follow, but this is is finally being built!
Unfortunately I have not ordered my servos yet (although I do have my stepper motor) so we will have to wait on Amazon for that.
Tomorrows devlog should have some parts assembled.
Thanks for reading!

2
0
24
Open comments for this post

36m 45s logged

Devlog 2 : A bit of wiring and code

Today I begun the wiring for it. Since I am still awaiting my amazon order for parts and my 3d printer, I found a tool called Cirkit Designer where I could wire my parts up, and program a few of them.

Unfortunately, my ULN2003 driver does not have simulation, but atleast I can wire it so that I have a reference for my program. This way, I know what parts to order

Alongside this, I began programming this. I am coding this in VSCode with Pymakr, that way I can code this in a language I am already familiar with instead of having to switch to C++, which I have never used.

I will continue to work on first controlling the servos and motors raw using an arduino I have lying around, but I will try to get my true code done soon.

0
0
5
Open comments for this post

8h 12m 13s logged

Devlog 1 : The arm begins

I finished building my first prototype of the arm. This is going to likely be my base for the whole project until I am able to buy parts and a 3d printer for this project.

Configuration

Currently here is the configuration
Base is driven by a 28BYJ-48 Stepper motor
Shoulder is driven by a MG996R
Elbow Wrist and Claw are driven by MG90S

This should hopefully lead to a maximum range of 10-11 inches with a max load of around 200-250 grams.

Hopefully, I will be able to power this with an ESP32-S3 in order to run machine learning algorithms and inverse kinematics that way I can identify and pick up objects autonomously.

0
0
5

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…