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

Clums-E

Hardware
  • 3 Devlogs
  • 7 Total hours

It is a robotic arm that can move in two different ways: manually and in preset motions to do tasks (maybe even a fully autonomous mode too). This is a Hardware project, but I will try my best to maintain a simulator reflecting the stage of my project.

Open comments for this post

2h 14m 2s logged

Programming and Calibrating Servos:

Servos don’t need calibration, but you need to ensure you know the right range of pulse which is why I made a reusable program that helps you find it and saves it for future reference.

One cool thing I learned was command aliases in Linux. I was getting annoyed with doing git fetch & pull so I just made an alias “Refresh”

Programming and Calibrating Servos:

Servos don’t need calibration, but you need to ensure you know the right range of pulse which is why I made a reusable program that helps you find it and saves it for future reference.

One cool thing I learned was command aliases in Linux. I was getting annoyed with doing git fetch & pull so I just made an alias “Refresh”

Replying to @PranavV

0
1
Open comments for this post

2h 52m 17s logged

Powering Clums-E

I shifted focus to the hardware background for Clums-E. I wired my 6V battery to the Mini PDP, ran it to the buck converter, and used a spliced Micro USB cable to link it to the Raspberry Pi.
But the Pi stayed completely dead.
After digging into it with Gemini and finding an article on cheap cables, I found the culprit. The cable I cut was a shoddy 3-wire line that used a thin layer of foil for the ground. It was completely useless for carrying power.
I swapped it for a high-quality cable, and the Pi instantly booted up. With clean power finally flowing, I hooked up the Servo Driver, and it is officially up and talking to the Pi.

Powering Clums-E

I shifted focus to the hardware background for Clums-E. I wired my 6V battery to the Mini PDP, ran it to the buck converter, and used a spliced Micro USB cable to link it to the Raspberry Pi.
But the Pi stayed completely dead.
After digging into it with Gemini and finding an article on cheap cables, I found the culprit. The cable I cut was a shoddy 3-wire line that used a thin layer of foil for the ground. It was completely useless for carrying power.
I swapped it for a high-quality cable, and the Pi instantly booted up. With clean power finally flowing, I hooked up the Servo Driver, and it is officially up and talking to the Pi.

Replying to @PranavV

0
1
Open comments for this post

1h 59m 29s logged

Forward and inverse Kinematics:

I started this project in Desmos by creating two polygons and calculated their relative coordinates based on a user-defined angle. After translating those relative coordinates to global ones, I finally had a working arm.

At first, I had to manually adjust the angles to make the tip reach a target. I knew there had to be a better way. I wanted to just click a point and have the arm calculate the math on its own.

That led me down the rabbit hole of Inverse Kinematics (IK).

The Roadblock:

After researching the math, I threw it into Desmos, but something was broken. The angle of joint 2 was completely off.

After digging deeper, I realized my mistake. I was calculating the angle of segment 2 relative to segment 1, but the renderer actually needed the angle relative to the origin.

The Breakthrough

The math did not click for me until I imagined a person walking up a hill. If you are climbing a slope and reach a peak, you need to know the exact change in your angle to keep moving along the new path.

To solve this, I extended the first segment line and found the supplementary angle to my original calculation. Once I applied that shift, the arm snapped perfectly into place.

Now, the arm seamlessly calculates its own angles and reaches the goal point automatically.

I then implemented the same Math into my Python project

Forward and inverse Kinematics:

I started this project in Desmos by creating two polygons and calculated their relative coordinates based on a user-defined angle. After translating those relative coordinates to global ones, I finally had a working arm.

At first, I had to manually adjust the angles to make the tip reach a target. I knew there had to be a better way. I wanted to just click a point and have the arm calculate the math on its own.

That led me down the rabbit hole of Inverse Kinematics (IK).

The Roadblock:

After researching the math, I threw it into Desmos, but something was broken. The angle of joint 2 was completely off.

After digging deeper, I realized my mistake. I was calculating the angle of segment 2 relative to segment 1, but the renderer actually needed the angle relative to the origin.

The Breakthrough

The math did not click for me until I imagined a person walking up a hill. If you are climbing a slope and reach a peak, you need to know the exact change in your angle to keep moving along the new path.

To solve this, I extended the first segment line and found the supplementary angle to my original calculation. Once I applied that shift, the arm snapped perfectly into place.

Now, the arm seamlessly calculates its own angles and reaches the goal point automatically.

I then implemented the same Math into my Python project

Replying to @PranavV

0
4

Followers

Loading…