Gesture Controlled Humanoid Robotic Hand

Humanoid Robotic Hand

As the name suggests , humanoid robotic hand is controlled by natural human hand movements whose data is acquired through the use of flex sensors. This project was done by me and my engineering colleague.

  Construction

  • The robotic hand has been designed with respect to human hand’s dimensions.
  • Timber wood was used to construct the hand chassis.
  • Timber wood is easy to shape.
  • Measurements of our fingers were taken first and accordingly the pieces of wood were cut.
  • Then an outline of the palm and wrist was taken and the piece of wood were cut according to those measurements.
  • Filing was done to obtain a smooth surface and turning operation was carried out on the tip parts of the fingers to make it appear like a real human finger.
  • Hinges were used at every joint of the fingers to obtain the desired motion.
  • Eye bolt and rubber band was used for the retraction of our hand movement.
  • For the movement of our fingers nylon wires were used. These nylon wires are connected to MG995 Servo motors.
  • The servo motors are connected with Arduino which is a microcontroller which controls all the servo motors.
  • Flex sensor was used as our input device. The flex sensor is like a variable resister which is also connected to Arduino.
  • The flex sensors are placed inside the gloves. So whatever movement is done with the gloves , the same is replicated by the robotic hand.
Arduino NG
MG995 Servo Motor

Flex Sensor

Working Of The Humanoid Robotic Hand

  • The flex sensor (each of size 2’2 inch) is our input device.
  • Five flex sensors were used for five fingers.
  • Flex sensors are essentially a flat, flexible potentiometer. Therefore they makee a desirable sensor to be able to read a user’s finger position (bent, at 45 degrees, straight, or somewhere in between).
  • The flex sensors are connected to each finger.
  • The fingers would be controlled by nylon wire connected to servos, acting similar like human tendons.
  • One end of the nylon wire is attached to the tip of a finger and the other end is attached to the servo.
  • Five servo motors were used for five fingers each of which had individual connections with the flex sensor and arduino.
  • The servo motors are connected with Arduino which is a microcontroller which controls all the servo motors.
  • The arduino used here is Arduino NG having a working voltage of 5V DC
  • So basically flex sensor is the input and servo motor is the output.
  • The sensor will sense the movement made by us with the help of gloves.
  • The sensor will send the signal to the arduino which in turn will send the signal to servo motor.
  • The servo motor will begin to rotate and pull the nylon string which will pull the finger up to the restricted movement made by us.
  • In this way all the five fingers can be controlled.

Circuit Diagram

  Problems Faced And Their Solution

  1. The biggest problem was calibrating the flex sensors. Calibration was difficult because the readings from the flex sensors would change dramatically from each use. This is because of the heat built up during testing and from wearing the glove for extended periods of time. Since there was no feedback to correct this error, the sensors caused the servos to over-actuate the fingers. This problem was solved by calibrating the flex sensors every time the arduino and robotic hand setup. was restarted.
  2. The second problem, which is partially related to the first, was correctly mapping the analog readings from the flex sensors to the servos. The issue was that the range of the flex sensors was too small. The analog read-in of the arduino has 1024 degrees of resolution, but the flex sensors would only differ from 550 to 750. This was accounted for by using the map function in arduino and by calibrating repeatedly. Calibration consisted of wearing the glove and running the arduino with code that read in and printed out each flex sensor value. The minimum and maximum of each flex sensor was recorded and those values were used as input for the map function.
  3. Third problem was attaching the flex sensors to the glove. The glove that was initially used allowed the flex sensors to move in between slits that were made in the glove. Observation was that this resulted in readings that were too similar (the value range between straight and bent was too small). Thus, it was decided to go down the opposite path and fix the flex sensors to all parts of the glove using duct tape. This made the glove more stiff, but resulted in better flex sensor readings
  4. Fourth largest problem was optimally placing the servos. Originally the servos were lined up in one row. The issue faced with this configuration was that the nylon wire was being pulled at too high of an angle off of the fingers (the angle was so great the fingers would not bend correctly). The solution was to have two rows of servos so that the servos did not interfere with each other (the front ones closest to the hand being in the way of the back ones, for example), we flipped the back servo upside down. That way our spools did not interfere with each other and we could space the servos out evenly and correctly.

Future Scope

  1. This robotic hand can be made more efficient if a strong chassis and servo motors with high torque value are used.
  2. If the power supply used for the servo gives a good current value , then the servos will perform to its best.
  3. This robotic hand is only 2-dimensional but with some modifications and additions , the motion along the third dimension can also be implemented in this project.
  4. This hand can also be taken to a higher level by changing the sensor.
  5. Voice controlled robotic hand is also possible to implement.
  6. The research is on and it is possible to control the robotic am through direct connection with the nervous system and will be extremely beneficial for the handicapped.
  7. This type of robotic limb can become the most sophisticated of its kind in the world , recreating virtually every movement of a natural hand and all of it controlled by brain power.