Make a Robotic Hand (Low Cost)


In this tutorial, we will learn how to make a robotic hand. And how to controlled it.
This video shows the low-cost "robotic hand" construction.
You can learn a working principle of a robotic hand.
We will control 5 servo motor robot hand with 5 pcs flex sensor.
I created the flexible sensors myself.
We will use external battery / power when doing this.


Watch how to make flex sensor
https://youtu.be/b7zT94WV-Ek

----------

Hardware Required

-Flex Sensor (5 pcs) - https://goo.gl/Wp7LPC
-Arduino Board - https://goo.gl/UyGYeF
-Servo Motor (5 pcs) - https://goo.gl/iOkPgu
-Foam (Like Styrofoam) - https://goo.gl/utyw6H
-Glove - https://goo.gl/WvzC2N
-Wires (Jumper) - https://goo.gl/VRzUN4 / https://goo.gl/TdGrkk
-Breadboard
-Battery and Battery Buckle - https://goo.gl/iAEgPl
-Rubber Band - https://goo.gl/9plXyN
-Fishline or Wire
-Glue Gun and Utility Knife

Female to Female Jumper
https://goo.gl/TdGrkk

Male To Male Jumper 
https://goo.gl/VRzUN4

2017 New Year Sale from Banggood
https://goo.gl/3JsYsz

2017 CES Sale
https://goo.gl/bMgxfn

Recommended site to buy the required hardware
https://www.banggood.com/?p=CS120478587752016125

----------

Get the Code :
#include <Servo.h>

Servo servo_1;
Servo servo_2;
Servo servo_3;
Servo servo_4;
Servo servo_5;

int flex_1 = 0;
int flex_2 = 1;
int flex_3 = 2;
int flex_4 = 3;
int flex_5 = 4;

void setup()  
{
  servo_1.attach(5);
  servo_2.attach(3);
  servo_3.attach(9);
  servo_4.attach(10);
  servo_5.attach(6);
}


void loop()
{
  int flex_1_pos;  
  int servo_1_pos;  
  flex_1_pos = analogRead(flex_1); 
  servo_1_pos = map(flex_1_pos, 1020, 1023, 180, 0); 
  servo_1_pos = constrain(servo_1_pos, 0, 180);  
  servo_1.write(servo_1_pos);

  int flex_2_pos;  
  int servo_2_pos;  
  flex_2_pos = analogRead(flex_2); 
  servo_2_pos = map(flex_2_pos, 1020, 1023, 180, 0); 
  servo_2_pos = constrain(servo_2_pos, 0, 180);  
  servo_2.write(servo_2_pos);
  

  int flex_3_pos;  
  int servo_3_pos;  
  flex_3_pos = analogRead(flex_3); 
  servo_3_pos = map(flex_3_pos, 1020, 1023, 0, 180); 
  servo_3_pos = constrain(servo_3_pos, 0, 180);  
  servo_3.write(servo_3_pos);
 

  int flex_4_pos;  
  int servo_4_pos;  
  flex_4_pos = analogRead(flex_4); 
  servo_4_pos = map(flex_4_pos, 1020, 1023, 180, 0); 
  servo_4_pos = constrain(servo_4_pos, 0, 180);  
  servo_4.write(servo_4_pos);
  

  int flex_5_pos;  
  int servo_5_pos;  
  flex_5_pos = analogRead(flex_5); 
  servo_5_pos = map(flex_5_pos, 1020, 1023, 180, 0); 
  servo_5_pos = constrain(servo_5_pos, 0, 180);  
  servo_5.write(servo_5_pos);
 
}