Instructables

Wireless Controlled Robotic Hand

Featured
Picture of Wireless Controlled Robotic Hand

This is my school project for the 5th year of high school (I'm Italian, we have 5 years of high school).

It consists in an artificial hand controlled by a glove with flex sensors. The artificial hand reproduces the movements of the hand with the control glove, wirelessly. The hand and the glove works both with Arduino.

I just wanted to share my work for everyone interested :)

This guide is still in development, sorry if some parts are not clear, I'll put some 3D images in future.

I'm sharing something about my project on my facebook page: https://www.facebook.com/Gabry295

 
Remove these adsRemove these ads by Signing Up

Step 1: Materials needed

Picture of Materials needed
flexsensor1.jpg
Arduino_Uno_Angle.jpg
0002228.jpg

I bought almost everything from https://www.sparkfun.com/, they have fair prices (I don't mean to advertise!)

Total cost: ABOUT 160$

The materials needed for the control glove are:

  • an elastic glove;
  • Lilypad Arduino board (there are different versions, which usually only have 4 analog inputs, so pay attention and buy the one in the image);
  • XBee module;
  • Shield to connect the Xbee module;
  • 5 Flex sensors;
  • 5 resistors: 47 KΩ;
  • battery pack with 3x1.5 V batteries (Lilypad can be powered from 2.7 to 5.5 V, so 4.5 V it's ok);
  • LilyPad FTDI adapter (quite optional).

-

The materials needed for the robotic hand are:

  • a steel structure for the palm of the hand and wood for the fingers;
  • Arduino UNO board;
  • XBee module;
  • 5 servomotors;
  • a servomotor shield for Arduino UNO (to connect the servomotors I used the Robot_Shield from FuturaElettronica, which has also a switching regulator to power the entire circuit, but you can use any shield made for controlling servomotors);
  • Shield to connect the XBee module (I made an horrible one, but it's economic and I needed to make one small because of the size of the Robot_Shield);
  • fishing wires;
  • fihing sinkers (to secure the fishing wire);
  • 9 V Battery.

-

Tools needed:

  • angle grinder (mainly to cut wood and steel);
  • axial grinder;
  • welding machine (with electrodes);
  • drill;
  • soldering station and solder;
  • electrician's scissors;
  • pliers;
  • heat shrink tubing.

Step 2: Making the glove

Picture of Making the glove
DSC_1205.JPG
DSC_1205 - Copia.JPG

To make the control glove I suggest first to choose the right position of the different components, then connect everything with the proper length of wire.

To make an analog read with Arduino LilyPad you need to make a voltage divider, since that flex sensors don't work like potentiometers (they have only 2 contacts).

So following the scheme, first solder the 5 resistor on the LilyPad board, one side to the 5 different Analog pins, the other in common to the ground. Then solder the flex sensors, one side to the 5 different Analog pins and the other in common to the positive.

Then connect the XBee Shield: two wires for the power, the oter two for the signal. Solder the Tx pin to the Rx and vice versa.

Now you need the battery pack, and the glove it's done.

BE CAREFUL: don't power the Arduino LilyPad over 5.5 V and don't power it conversely (even if sometimes I did it by mistake... And it still works!)

Step 3: Making the Robotic Hand

Picture of Making the Robotic Hand
20140618_172124.jpg
DSC_0345 - Copia.JPG
1.jpg

This is the most complicated part, because you have to choose the proper materials to make the hand, but it can be also easy if you have the possibility to 3D print the hand (there are many different 3D projects on the web for printing hand parts).

I started making the fingers with cork, to find the proper structure for the movements, then I made it with a branch.

So make three wooden cylinder per finger, two of them with 1 cm over the normal lenght of your phalanx, needed to fit one piece into another.

Then with an angle grinder make the grooves to make the pieces fit together (see the images, you'll understand better).

You'll need some sandpaper to make the pieces curved, so that they can rotate.

Use a drill to make the holes for the hinge, then you have to make other two holes for the fishing wire, vertically, one towards the inside of the hand and one outwards. So when the wires are set at the top of the finger, when you pull the one inwardsthe finger will close, and when you pull the one outwards the finger will open.

The palm was problematic, beacuse I made it initially with wood and the thinner parts always broke. So I decided to make it of steel and I've had no problems.

Cut it and do some protrusions similar to those made for the fingers to fix them to the palm (see the images as a reference). Then use the drill to make the other holes for the fishing wire, the thumb will be tricky because it's not vertical as the ther fingers.

Afer making the hand, you need to make a support for the five servomotors and a support for the Arduino UNO boards. Be sure to choose the right position of the servos, so they don't touch each other while rotating.

The last part consists in connecting the fingers to the servomotors: fix the fishing wires at the top of the finger and make them pass through the holes; then, when the wires are at the bottom of the hand, turn the rotor (manually, without powering it) at his maximum rotation (180°) so that it's in a vertical position, then set the wire that closes the finger to the lowest hole of the rotor, for example making a knot; turn again the rotor at 0° (it's again vertical and the knot made before is at the top) then set the other wire (wich opens the finger) to the lowest hole of the rotor. Follow the last image in this step to understand better.

So, when the motor is at 0° (vertical) the finger is opened and when the rotor is at 180° (vertical again) the finger is closed.

Step 4: Circuit of the Robotic Hand

IMG_20140618_192959 - Copia.jpg
20140618_171340.jpg

For the circuit, you can choose to use a servomotor shield for Arduino UNO (search on eBay or Amazon) with a XBee shield, or make a custom shield (I'll make one as soon as possible) with the XBee Module and the pins for the servomotors, and power the Arduino UNO by its jack port.

So I used what I had already bought, but you can use everything that let you control the servomotors and the XBee.

The servomotors have 3 wires:

  • yellow: signal;
  • red: power;
  • brown: ground.

So now you won't make mistakes :)

I used the simplest type of servomotor, working at 5 V, with a rotary angle of 180 degrees (that's the perfect angle, we don't need more).

Step 5: The programs

The program of the hand and the glove, with all description, are in links below.

REMEMBER: to load the program you have to remove everything connected to the TX and RX pins of the Arduino (in this case the XBee module), else the program won't load. Remember also to set the correct kind of Arduino in the IDE (LilyPad or Arduino UNO).
1-40 of 50Next »
mason1019817 hours ago

This this is awesome! I'm planning on starting on one myself but I just don't have the time or resources to make the actual 'hand' part. Are there any places I can get one already made? 3d printed maybe? If you could point me to a site that would be great! Thanks!

justinliu1 month ago

Back again. :D (found out the answer to my two previous questions) I came back with two more, haha.

1. How is the gripping force of the hand? I see that you're using micro servo, and I know that they don't have the most torque. They're very low-profile, however, so I'm wondering how viable weak servos can be for this project. Can it, say, grip a hammer by itself?

2. I looked at your new schematic with the servo and finger and don't entirely understand how you're able to bend the finger with such a small travel distance from the servo. Obviously you managed to do it (seen in the video); I'm just baffled by how that works. The servo, especially because it's so small, doesn't seem to have a particularly long travel distance. How is it that it is able to pull the string down only so much and have the entire finger bend fully?

Once again, thanks so much for answering all these questions everyone has for you and I look forward to your response. :)

Gabry295 (author)  justinliu1 month ago

Hi justinliu :) Sorry for the last question, I'm quite busy in this period... Anyway I'm happy you found out the answer!

Well, for the first question, the hand has enough force to grip an hammer, but not enough to use it... It would be necessary to use a different material for the finger, at first, for example a light metal; second, a different material for the "tendons", something very resistant; third, a different kind of motor, not so plasticky. I only wanted to make something at the lowest possible cost :)

For the second question, I set the fishing wire at the rotor with the right proportions: to close the finger, I turned the rotor until it stops and pulled the wire in the "inner" part of the hand, closing the finger, and then fixed it at the lowest point of the rotor. This means that the wire is pulled of a length equal to the diameter of the rotor, and since that the rotor can cover only 180° then it stops, the finger is properly closed when you reach the final point. The same happen for the other wire, at the opposite. So when the servomotor is rotating one wire is pulled and the other is released. Anyway, the length necessary to close/open the finger isn't so much :)

Tell me if I didn't answered well and you have still any doubts!

(At the moment I lent the hand, so I can't make any video until August... I'll remember to recorder also the grip :D )

M.C. Langer1 month ago

this is awesome!

Gabry295 (author)  M.C. Langer1 month ago

Thank you!!! :D

ymasur made it!1 month ago

Hello Grabri295, congratulation for this good work! I am interested in the construction of the hand; the step 3 is not clear for me. How are the fingers opened? In my realisation (see at the URL

http://yvesmasur.ch/gallery/index.php/Main-LPC/670-main_LPC-paume-index-et-pouce-ecarte-L ) I need back spring. This is difficult to calibrate and to adjust; the motors must pull a lot again it to close the fingers. And I have a segment less on each finger...

668 main_LPC dos complet L.jpg670 main_LPC paume index et pouce ecarte L.jpg
Gabry295 (author)  ymasur1 month ago

Thank you ymasur! :)

I made now these schemes, I hope you can understand better how it works.

You can see the two wires in yellow, pulling one the finger closes and pulling the other it opens. When the servo is in its initial position (0°) the "external" wire is pulled and the finger is open. When the servo rotates it release this wire and pulls the other one. So when the rotor has covered 180° the "external" wire is released and the "internal" is pulled.

I suggest to choose the right lenght of the wire by fixing it at the top of the finger and then making some tries with the servo.

Cattura di schermata (237) - Copia.png
ymasur Gabry2951 month ago
Okay, I see. Very good system, without extra effort for the motors.
Thanks for the explanation.
Gabry295 (author)  ymasur1 month ago

You're welcome! At the beginning I thought about using a back spring too, then I realized that I could pull back the finger with another wire :)

vak_1 month ago

Awesome project!

Gabry295 (author)  vak_1 month ago

Thanks! :D

epicalien1 month ago
Now make it so you can control an arm part with your arm. BTW I love this creAtion
Gabry295 (author)  epicalien1 month ago

If i had time I surely would do that :)

And thank you! :D

Wow! Very impressive!

Gabry295 (author)  Coldfire12151 month ago

Thank you! :D

j-vega1 month ago

Hi. It´s Fantastic.

In your picture, the XBEE is connected to a Lilypad Arduino board, can you say how you did it? Can you connect to any shield, something else?,? Servomotors, which need power? What are the specs?. Where you bought all 5 Flex sensors? I can not find anywhere.

Best regards.


Gabry295 (author)  j-vega1 month ago

Thank you! :D

I bought from https://www.sparkfun.com/ the shield to mount the XBee module, and as you can see from the image, I bought also the flex sensors and other components I needed. In that site you can find almost everything at at fair prices!

I bought the servomotors simply searching on eBay, I used the most economic kind (Tower Pro): they have 3 wires, usually the brown for the GND, the red for the Power and the yellow for the signal: you have a signal with a period of 20ms, when you set 1ms of high you have 0 degrees, when 2ms 180 degrees, when 1.5ms 90 degrees and so on, but it's all done by the "write" function in the Arduino IDE.

I used a shield for the servomotors bought from https://www.futurashop.it/ , the Robot_Shield, I don't know if they ship also outside Italy. You can easily find a servo shield for Arduino on eBay, or you could even make one by yourself following my schemes of wiring. The Robot_Shield has also the terminal for batteries, but you can simply power all the circuit by powering the Arduino (with a 9V battery using a jack).

For the XBee Shield for the LilyPad, I connected the Rx of it to the Tx of the Arduino LilyPad and vice versa, then the PWR and the GND. The XBee works at 3.3V, but the shield has its adjustment circuit so you can use also 5V to power it (the simply way, I think, is to use 3x1.5V batteries, so 4.5V).

Tell me if I didn't answer properly to your questions, I'm happy to clarify any doubts :)

Cattura di schermata (115).png
j-vega Gabry2951 month ago

Hi.

A perfect explanation.

I have already started to produce the project. If I get another question, I'll ask.

A million thanks and congratulations, from Spain.

ggcamie1 month ago

wonderful project keep it up

Gabry295 (author)  ggcamie1 month ago

Thank you! :)

Very very nice, I'll try to make it

Gabry295 (author)  Rodrigomecanica1 month ago

Thank you, I hope you enjoy! :D

Hafez K21 month ago

Hi

I have a question : how to making the hand ? i don't understand how to make this part !!!! thanks a lot man

Gabry295 (author)  Hafez K21 month ago

Sorry, I didn't take enough picture while making that part... I'll make as soon as possible two parts of a finger and put a video or some images. I hope you're not in a hurry!

pierpi1 month ago

Complimenti Gabriele, ottimo progetto.
Ben fatto!

Continua cosi!

Pier da Singapore

Gabry295 (author)  pierpi1 month ago
Grazie mille Pier! :)

Bravo bel progetto!

Gabry295 (author)  giampyypmaig1 month ago

Grazie mille! :)

jwoods101 month ago

this appears to be the first step toward the movie Real Steel! Somebody use this to make a wireless Rockem sockem robot. Then step it up a bit. Robot boxing for everyone!

Very impressive!

Darthorso1 month ago

Grande Gabry, questo progetto spacca!

Come hai fatto a fartelo accettare in 4 contests???

Gabry295 (author)  Darthorso1 month ago
Grazie mille!!! :D
Sinceramente avevo letto all'inizio che si poteva partecipare al massimo a 3 contest, poi sulla pagina del progetto ho visto che potevo aggiungerne altri... Non so se sia un bug o cos'altro D:

MAgari chiedi info! Non vorrei mai che vinci qualcosa poi ti devono kickare perché eri in troppi contest D:

Gabry295 (author)  Darthorso1 month ago

Appunto la mia paura era quella e non so come togliermi da un contest D:

Ho aperto una discussione nel forum speriamo bene! Grazie per il supporto! :)

Ma figurati! è un piacere! :D

brooooo your awesome, you just solved a problem i´ve been having, thanks man

Gabry295 (author)  steelswordman1 month ago

Thanks, and your welcome! :D

petrolon1 month ago

"5th year of high school"

Does that mean what I think it means?

We have 5 years of elementary school, 3 years of middle school and 5 of high school in Italy. I hope this helps :)

Gabry295 (author)  petrolon1 month ago

I'm 18, I'm sure about this x)

Sorry but I'm Italian, I don't know well how to translate it :/

1-40 of 50Next »