Robotic Hand
This project is called The robotic hand, students in different classes were put into groups and were each assigned a role to make the robotic hand. This is a step by step on how you can make your very own robotic hand.
Supplies
For our robotic hand, The supplies that were used were: Styrofoam, Elastics, Plier, Paperclips, Sharpie, Sand-block, Fishing line, Box cutter, Servo motors, Arduino Uno, Toothpick, A ruler, And marker.
Formulas
First, we had the member with the biggest hand, place his hand on the Styrofoam and trace his hand/forearm.
Create rectangles before tracing the actual fingers and measure the width and length of it. This makes the fingers more accurate to shave down for Step 2.
Once the rectangles are traced out and outlined with marker on the Styrofoam you can move on to Step 2.
Slicing
Using a box cutter, slice around the forearm and cut around the rectangles that you've traced.
Once you've cut out all of the rectangles, grab your sanding box and start forming the rectangle into a finger by shaving down the corners. Make sure you don't shave it down too thin or way too thick. try to make it accurate to the tracer's finger's.
When you've shaped out all of your fingers, mark where the joints would be using a marker. When you've finished marking the joints, use a 45 degree cut to separate all 3 joints on every single finger.
Attaching
When the joint's are separated it should look something like this.
Once every joint is detached and cut up, use the sewing needle to thread your fishing line through the hand.
Then you put it into the joints. To make sure the fishing line doesn't get out of place, insert your paperclips(as many as you need but not too much) into the wrists and let the fishing lines go through the gap of your paper clip.
Gluing
Cut up the elastics into small pieces, but not too small. You can use as many as you need to support the finger.
Hot glue the elastic onto the joints of your fingers, this will allow the finger to bend once everything has been completed.
Once that is done, cut down two areas on the wrist so the servo motors can get glued down into it.
Finally, feed the fishing line through your servo motor. this will allow your fingers to have motion.
Motors and Programming
Your hand should look like this once you've finished putting the paperclips, elastics, fishing line, and servo motors in.
You should have a code (that works) written to allow your fingers to have movement.
The person that had the role to do the coding completed this step so i dont have much information for this part.
Lastly, connect your servos to your arduino and set up the code that will allow your hand to move.
Math Codes
import math
W = float(input("enter the width of the Rectangular prism: "))
L = float(input("enter the length of the Rectangular prism: "))
H = float(input("enter the height of the Rectangular prism: "))
RTC1 = float(input("enter radius of the first truncated cylinder: "))
H1TC1 = float(input("enter the height of the first truncated cylinder: "))
H2TC1 = float(input("enter the height of the first truncated cylinder: "))
RTC2 = float(input("enter radius of the second truncated cylinder: "))
H1TC2 = float(input("enter the height of the second truncated cylinder: "))
H2TC2 = float(input("enter the height of the second truncated cylinder: "))
RTC3 = float(input("enter radius of the third truncated cylinder: "))
H1TC3 = float(input("enter the height of the third truncated cylinder: "))
H2TC3 = float(input("enter the height of the third truncated cylinder: "))
RH = float(input("enter radius of the hemisphere: "))
HC = float(input("enter height of the the cylinder: "))
VRP = W * H * L
VTC1 = RTC1**2 * math.pi * (H1TC1+H2TC1)/ 2
VTC2 = RTC2**2 * math.pi * (H1TC2+H2TC2)/ 2
VTC3 = RTC3**2 * math.pi * (H1TC3+H2TC3)/ 2
HS = 2/3 * math.pi * RH**3
TV = VTC1 + VTC2 + VTC3 + HS
VWM = VRP - TV
VTC1H = VTC1 + HS
CWH = math.pi * RH**2 * HC + HS
print("Volume of the cylinder with heimisphere is %.2f" %CWH)
print("Volume of the truncated cylinder is %.2f" %VTC1)
print("Volume of the first truncated cylinder with heimsphere is %.2f" %VTC1H)
print("The amount of the waisted meterial is %.2f" %VWM)
print("Volume of the second truncated cylinder is %.2f" %VTC2)
print("Volume of the third truncated cylinder is %.2f" %VTC3)
print("Volume of the Rectangular prism is %.2f" %VRP)
print("The total Volume of the three truncated cylinder is %.2f" %TV)
print("The total Volume of the heimsphere is %.2f" %HS)
Tech Code
#include <Servo.h> //include the servo library
Servo thumb;//create a servo for the thumb
Servo pointer;
Servo middle;
Servo ring;
Servo pinky;
void setup()
{
thumb.attach(3); //plugged into pin 3
pointer.attach(5);//pin 5
middle.attach(6);//pin 6
ring.attach(9);//pin 9
pinky.attach(10);//pin 10
}
void loop()//enter different hand commands
{
five();
}
void T()
{
thumb.write(0);
}
void P()
{
pointer.write(0);
}
void M()
{
middle.write(0);
}
void R()
{
ring.write(0);
}
void P_I()
{
pinky.write(0);
}
void thumbsUp()
{
thumb.write(0);
pointer.write(180);
middle.write(180);
ring.write(180);
pinky.write(180);
}
void pinch()
{
thumb.write(40);
pointer.write(80);
middle.write(0);
ring.write(0);
pinky.write(0);
}
void fist()
{
thumb.write(180);
pointer.write(180);
middle.write(180);
ring.write(180);
pinky.write(180);
}
void peace()
{
thumb.write(180);
pointer.write(0);
middle .write(0);
ring.write(180);
pinky.write(180);
}
void shaka()
{
thumb.write(0);
pointer.write(180);
middle.write(180);
ring.write(180);
pinky.write(0);
}
void rocknroll()
{
thumb.write(0);
pointer.write(0);
middle.write(180);
ring.write(180);
pinky.write(0);
}
void fingergun()
{
thumb.write(0);
pointer.write(0);
middle.write(180);
ring.write(180);
pinky.write(180);
}
void one()
{
thumb.write(180);
pointer.write(0);
middle.write(180);
ring.write(180);
pinky.write(180);
}
void two()
{
thumb.write(180);
pointer.write(0);
middle.write(0);
ring.write(180);
pinky.write(180);
}
void three()
{
thumb.write(180);
pointer.write(0);
middle.write(0);
ring.write(0);
pinky.write(180);
}
void four()
{
thumb.write(180);
pointer.write(0);
middle.write(0);
ring.write(0);
pinky.write(0);
}
void five()
{
thumb.write(0);
pointer.write(0);
middle.write(0);
ring.write(0);
pinky.write(0);
}
void reset()
{
thumb.write(0);
pointer.write(0);
middle.write(0);
ring.write(0);
pinky.write(0);
}
Reply
Reply all
Forward
Attendee panel closed
Final Outcome
This is the final outcome of my group and i's project.
I would say it was confusing at first but then we got the hang of it.