loader image

Video demo of the project

Brief description: 

The user wears a glove containing flex sensors which translates the movement of his/her hand into motion of the Robotic Arm.
Flex sensors change the resistance depending on how much it’s bent which in-turn rotates the servo motors connected to the wrist and hand of the robotic arm.


Step 1- Sensors:

We had already worked on gesture controlled, computer controlled and remote controlled Robots. However none of them would met the requirements of input to the hand precisely. After a little research on the Internet, we decided to work with Flex sensors – the use of which would make the robotic hand more like a shadowing or imitation of the hand.

Basic Principle:

  • Similar to other Sensors, the flex sensor also give out a analog output. They work as a voltage divider.
  • Flex sensors are sensors that change in resistance depending on how much it is bent (the more the bend, the higher the resistance value).

They are available as both uni-directional and bi-directional, with varying resistance ranges and varying sizes (2.2” and 4.5”).

Based on the analysis of the robotic hand, we decided uni-directional sensors would be appropriate, as the fingers bend only in one direction.

  • 2.2” was the chosen size as that was enough for an average sized human finger
  • And 2.2” flex sensor is of a lower cost in comparison with the 4.5” sensor

Step 3- calibration:

After buying the sensors, we noted their resistance values in the flat and the fully bent positions. Correspondingly minimum and maximum values of resistances were noted.

By applying the voltage divider rule, we got the output voltage.

Vo = Vi [R1/(R1+R2)]


Vo is the output voltage
Vi is the input voltage (5 v)
R1 is the variable resistor (Flex sensor)
R2 is the Constant Resistor

The Circuit for the flex Sensor is shown below:


The Resistor R2 is chosen such that the range of the output voltage is maximum with respect to the already measured minimum and maximum values of the variable resistor R2 (Flex sensor).

The calculation made for choosing R2 is shown in the image below5

Step 3- Servo Motors:

Servo motors are DC motors which have a built-in gearing systems and feedback control loop circuitry. This error sensing feedback control means, the performance of the system can be corrected by feeding the output of the system as input in a closed loop system and thereby reducing the errors. Hence they are used for accurate angular positioning. They are small in size but are very efficient in energy.

The circuitry along with the potentiometer makes the servo to rotate according to the commands.

Parts in a Servo Motor:

  • DC motor
  • Potentiometer
  • Gear arrangement
  • Circuitry

External Attachments:

  • Servo cable
  • Shaft
  • Servo horn
  • Cover

Pins of a servo:

The servo motors have three wires, two of these wires are to provide ground and positive supply to the DC servo motor. The third wire is to provide the control signal. These wires of a servo motor have specific colours.

  1. Red – Vcc (5 v)
  2. Brown – Gnd
  3. Orange or White – ( PWM signal )

The Orange wire sends a logic which is a square wave, to the servo at a specific duty cycle and the servo moves to a particular angle i.e. it directly maps to servo angle. Servos are controlled by sending an electric pulse of variable width or PWM through the control wire.

Step 4- Mapping of Servo Motors:

Mapping is used to convert the value of the obtained output analog signal from the Flex sensor (0 to 1023) to the angle of the Servo Motor (0 to 180).

However the flex sensor analog values does not actually vary from 0 to 1023 after connecting it in the voltage divider circuit. So the Minimum and the Maximum values of the Flex sensor, at it’s normal and the fully flexed positions are obtained using the Serial monitor and those values are mapped to 0 to 180 of the Servo motor.

Program syntax:

map(value, from low, from high, to low, to high);

Gate 6- Components used from the LL kit:

Breadboard, Battery, Voltage regulator, switch, Micro-controller (ATmega16), Programmer, crystal oscillator, wires were already available in the Robotics Kit provided by Lema Labs.

Gate 7- Fabrication of the Robotic hand:

The material used for the fabrication of the Robotic hand are given below:

  • Assembled Hand setup with fingers
  • Rectangular wooden block
  • Anabond ( Adhesive, super-glue)
  • Gloves with slots cut on it
  • Paper tape
  • Fishing string

The Robotic Hand structure was bought online.The hand and the Servo motors were super glued to the wooden block. Using fishing strings, connection between the fingers of the hand and their corresponding servo motors were made.

We also tried:

We also tried to build our own hand structure using cycle chains (mild carbon steel) super glued at alternate joints to act as links of the fingers. We succeeded in designing the fingers, and the palm using a wooden block cut with slots for inserting the fingers. As the 9 g servo motor wasn’t able to produce enough torque to pull the fingers, we bought a ready made plastic hand. A bigger Servo motor would have been compatible to produce enough torque, but the idea was dropped due to cost factors.

Gate 8- Circuit Connections:


Gate 9- Debugging:

The problems encountered and the way in which we sorted them out are discussed below:

  • After the complete setup, the hand was given supply and checked for its proper working.
  • When the robotic hand didn’t respond properly with respect to the motion of our hand, the position of the flex sensors inside the glove was first checked.
  • After adjusting the positions, the movement was checked again.
  • When there was no synchronization between the motion of the robotic hand yet, the program was checked and we found that the ranges specified in the mapping of the servo should be changed.
  • Trial and error method was followed to find the suitable values and the calibration was successfully finished, which resulted in perfect working of the Robotic hand.

Motivation to do this project:

Before enrolling ourselves into Kaizen Robotics Program, we did not have much idea about robotics. We thought building Droids was robotics and that we would build one during the course. However our thoughts came crashing down on the very first day at Lema Labs, when they made us realize that droids alone are not robots. The course highlighted was based on a logical approaches towards robotics with the help of a motor driven car.

Yet we wanted to build a Human droid and it was one of our many dreams that we wanted to start working on. The Level 2 program set us on a more matured platform to accomplish this project. The first part of our droid building idea was to build a part of the droid, a hand. That was how we started working on the project.

Open chat
How we can help you today?