This project idea came to me when I was sitting on a bed in a hotel room while on vacation. I thought: "It'd be really neat to have a robotic hand that I can control with my own hand!" Upon returning home, I embarked upon a journey to design and create the project. I hope you enjoy!

Update: First Prize winner in the Instructables 2013 Microcontroller Contest!

The basic components of the hand and glove are the hand itself, the servos, the Arduino, the glove, and the flex sensors. The glove is mounted with flex sensors: variable resistors that change their resistance value when bent. They're attached to one side of a voltage divider with resistors of a constant value on the other side. The Arduino reads the voltage change when the sensors are bent and triggers the servos to move a proportional amount. The servos pull strings that act as tendons, allowing the fingers to move. Here's a video of it in action (


The hand itself comes from an open-source, 3D-printable download. It's part of a project called InMoov: http://inmoov.blogspot.com (http://www.inmoov.fr)

This guide will show you all the steps required to build your own robotic hand and control glove!

Step 1: Gather the Materials

In total, this project will cost about $100-150, depending on where you get the parts. Here is the materials list:

5x MG946R Servos (or equivalent - MG995 or MG996 should work too. I've had a bit of trouble with the range of motion, so servos that support a higher degree of rotation would be better) - I got mine from hobbyking.com, but for a less expensive option I'd go with eBay (they come directly from China, so shipping may take longer).

5x 4.5 inch flex sensors - I got mine here: http://microcontrollershop.com/product_info.php?products_id=3802
1x Arduino Uno or equivalent (they're also much cheaper on eBay)
5x 22k resistors
1x 6.0-7.2V battery (for the servos) - I used this: http://www.all-battery.com/Tenergy7.2V3000mAhRCCarNiMHBatteryPackwithCharger-91103.aspx

1x small breadboard
1x Standard Tamiya battery connector - something like this: http://www.batteryspace.com/Connector/Adaptor-Standard-Female-Tamiya-with-14-AWG-Silicon-wire.aspx

Breadboard jumpers/hookup wire
1x small blank PCB - I used something like this, only square (RadioShack has since removed the original product, but this should work as well): http://www.radioshack.com/radioshack-printed-circuit-board/2760170.html

1x glove (I used a right-hand glove - should be sturdy and fit well)
1x 8mm diameter 55mm length bolt
1x 8mm diameter 60mm length bolt
1x 8mm diameter 80mm length bolt
14x 3mm diameter about 20mm length screws
20x 4mm diameter screws (any length between 7mm and 30mm is fine)
Approx. 5 meters of string (should have a high-ish breaking strength) - I used this: http://www.amazon.com/gp/product/B004YWKPCS/ref=oh_details_o01_s00_i00?ie=UTF8&psc=1

Hot glue
Super glue (C.A. glue)
Sandpaper (I used ~220 grit) - a Dremel tool with a sanding head would also work
Needle and thread

A power drill
A soldering iron
Access to a 3D printer

...And you're ready to start!

This is awesome! You really gave me motive enough to study the whole Arduino technology. Thanks a lot mate and .. Congratulations!
Pretty wow dude! <br>Congratulations!
<p>first off all thank you <a href="http://www.instructables.com/member/dschurman/" rel="nofollow">dschurman</a> for this nice project , I am working on the same project but i have problem with servos , i have tried servo (<a href="https://www.google.com.tr/aclk?sa=l&ai=CTdrOKYI-Vpz9L-n3ywOPr4LIBP_Ss-YG97OMtNoBx8SPp6YCCAYQASgCYJmGn4a8IaAB8fTF2QPIAQepAlOmQqaM_5Y-qgQmT9CIqsoGrroNEqq0cNI7IAQFcDJeET-d_g6IrWXBE-UysTlODb3ABQWgBiaAB_eKuiaIBwGQBwKoB6a-G9gHAeASorK1h9j4_rYx&sig=AOD64_1VO_yTVdOKj_HwX_aiOmzebgzt7g&ctype=5&clui=2&q=&ved=0CIMBEPQOahUKEwizuoPttP_IAhUEWiwKHZcHCo8&adurl=http://mktg.gittigidiyor.com/cm/ck/14489-145818-2357-0%3Fkeyword%3D%26mt_id%3D%26cid%3D58375874127%26networkType%3DSearch%26pid%3D79002067527%26type%3Dpla%26mpre%3Dhttp%253A%252F%252Furun.gittigidiyor.com%252Foyuncak%252Ftower-sg90-9g-servo-191160086" rel="nofollow">Tower Sg90 9g Servo</a>) and it was working very well but when i tried to power servo mg996 it just rotated by it self like sweeping without any control,how i can solve this problem thanks in advance .</p>
<p>Sorry For Interruption But the same has happened to me you have to do two things <br>first you have to use a battery which can power all servos easily<br>second you have to give arduino separate power</p>
Hmm, I'm not sure what could be causing that. Are you sure you reconnected everything in the right way? Otherwise, checking online might help you more than I can. Sorry.
Hi does the fex sensors have to be 4.5<br><br>
Ideally yes, but you could probably make it work with shorter ones.
<p>can you give me the clear pictures of the connections as the picture is not clear and wire is tangled up so if possible plz mail it on tj.15@icloud.com but amazing diy</p>
<p>do we need to use the third wire on the servo</p>
Yes, the third wire is the signal wire - it gets plugged into the Arduino's PWM output ports. A drawing of the schematic is attached as an image to Step 6.
<p>can you send me the schematic diagram at tj.15@icloud.com</p>
Do we have to sew the senors or can we hot glue them idk why it put my friends email in the other commit
Sewing them would work better because they need to be able to slide a bit when you bend your fingers. Otherwise, you won't be able to bend them very far.
Can we use hot glue for the hand sensor or deadzombiething@gmail.com we have to sew them
<p>for the 3d printed palm how was you able to get the wasted material out of the index finger?</p>
<p>What made you choose 22K resistors? Does it matter? Thanks!</p>
22K just seemed to correspond well with the resistance values of the sensors. It technically shouldn't matter, but if you change the value you'll have to change the range of analog inputs in the arduino program.
<p>1. I cannot understand that the datasheet of MG996R says operating voltage of 4.8v to 7.2v <br>2.My servo is moving when the flex sensor was still and keeps moving for a long time after servo stops and i move sensor a little bit and start moving like the arduino code &quot;sweep&quot;</p>
<p>you are giving servo a voltage of 7.4 when (half charged) and 8.4(full charged)</p>
I am? The battery says it outputs 7.2 volts.
<p>1.when the battery is full charged it gives 8.4 volts and when it is half charged it gives 7.2 volts.Isn't 8.4(full charged) going to damage the servo<br>and thanks for answering my question <br>2.after some time it goes back to its normal position and follows flex sensor.thanks </p>
<p>I'm not sure if 8.4 volts would do any damage. Usually, you can get away with an extra volt or so. But really I don't know a lot about servos so I'm not sure.</p>
1. What about the datasheet exactly? Maybe that means recommended operating voltage and it has a bit of tolerance.<br>2. You've copied the code exactly? Maybe it's a problem with how the sensors are wired in the voltage divider circuit.
<p>I like this idea. I wanted to use it for a Halloween costume, though. Is there a way to augment the hand structure to make the fingers longer? Also, I'd like the hand to be useful and not just cosmetic. Can you supply specs on what would be required if I were to use stronger servos and wire like you suggested below?</p>
I suppose you could just add longer fingertips, but if you wanted a more natural look you'd have to cut each finger segment in half, add a piece of plastic, and glue them back together. You should be able to use the same battery with stronger servos, and other than that you wouldn't really have to change anything except the wire.
Can a man 9.6 volt air soft battery work with this
I don't believe the servos are meant to be used with voltage that high
Would the mini Servo SG90 make it too?
<p>hi, I'm having some problems finding the pieces that are supposed to be printed, the ones on the list, can you help me?</p>
The files are all attached to Step 2.
They are the ones on the links? Or the ones that are showed like in a preview?
Found it , for future reference you can see the file on a iPad
Where the arduino code
The code is attached to Step 6 and is called &quot;Hand.rtf&quot;
The code where the code
Were to get the hand files to prints
Could you also attach another link for the battery connector, that one won't open to the page either.
<p>Could you attach another link for the PCB, the one shown doesn't open the correct link.</p>
Fixed, thank you. It seems they've completely removed that product.
<p>Hi <br>Can a MG945R servo motor work for this project? I am not able to find out the<br>max degree of rotation for this motor. Can anyone plz help?<br><br>Thanks<br>Amey</p>
Any servo with the same dimensions as the ones I used should work. I'd assume yours are okay, because mine really didn't have a large range of rotation and worked anyway.
<p>Thanks dschurman.</p>
<p>wow this is awesome and very chip!</p>
Hello dude,<br>I have an injury at my hand, can this project help me to increase the strength of my hand ??<br>Big respect
I'm personally not sure, but it seems feasible. If you were going for strength, I'd invest in stronger servo motors and maybe thin steel cables instead of string.
What kind of code does the Arduino use, I'm interested in working with them but need to learn the coding but Im not sure what it is I think its called C++
arduino code is all in C++
Could you please help me.<br>I've completed the project and inserted the program provided. BUT i Cant get some of the fingers to move in the right direction. When i flex my finger, the mechanical finger relaxes. How do i correct this problem
Have you checked the polarity of all your connections?
<p>Hey, thanks for the awesome step-by-step tutorial! I have nearly finished the project, but when I plug in my batteries to the breadboard, my digital servos keep chattering. I have been looking up solutions online, but I haven't been able to come to a conclusion to what exactly is causing the chattering to occur. </p><p>Also, what is the best way to connect the batteries to the breadboard via jumper wires? I need 2 pairs of hands because there is no secure way for me to put my hand in the glove as well as keeping the jumper wires on the leads of the battery. Thanks!</p>

About This Instructable


940 favorites


Bio: I'm just a high schooler who likes making things. And what's the point of making something if you're the only one who ...
More by dschurman: DIY LED Illuminated Trekking Pole Flashlight DIY "Anything" Staples Easy Button (voice recording) DIY Robotic Hand Controlled by a Glove and Arduino
Add instructable to: