How to Build a Robotic Hand with Haptic Feedback using Arduino

Arduino Robotic Hand

For science fair this year, I felt like building something instead of doing an experiment. All I needed to do was look around Instructables for a project idea. I was inspired by njkl44’s robotic hand since it reminds me so much of stuff out of science fiction movies. My goal was to create a system of haptic feedback from a robotic hand like that. The system provides a way for the person controlling the hand to “feel” what the robotic hand is feeling. I thought that this was an excellent project since it gave me something to do for science fair, and it provided me with a platform for constant development. In other words, I will not stop working on it. I will always try to come back to it, so I can make various improvements or redesign it every now and then.Arduino Robotic Hand

njkl44’s robotic hand:

Step 1: Materials and Tools


Per Finger:
A2-70 bolts- 3 with a beveled head and 4 with a regular head for each finger
Nylon-insert lock nuts for the bolts
4-40 x 1/2″ machine screw and matching nut
2-56 Threaded ball link (for connecting the finger to the servo)
Jumbo paperclip (used for connecting the ball links)
(x28) #4S washers

Arduino Mega
(x4) FSR
(x4) 4.5″ Flexible Resistor
(x4) Mini Vibrating Motors
(x10) PCB Screw Terminals
(x4) 22k Resistors
(x4) 10k Resistors
24AWG wire in a twisted pair (the pairs make it easier to manage the wires)
(x4) Hobby Servos
Misc. breadboarding equipment
6V Power Source (I used a 4xAA battery holder)

5mm Acrylic
Duct Tape
Heat-Shrink Tubing

Laser Cutter
Drill Press
Hot Glue Gun
Soldering Iron
Safety Glasses


Step 2: The Design

Each of the fingers uses two sets of four-bar linkage. I will show you how this works with the two pictures of the finger below. 

For the parts, I was able to get them laser cut out of acrylic at my local hackerspace, HeatSync Labs. Acrylic is an excellent material for smaller loads and basic testing, but if there is any sort of major strain on the finger, you run the risk of snapping the parts. Instead of acrylic, it would be better to get the parts made out of metal for larger loads.

There is no scale on the .dxf files. For the fingers, the holes should be 2.8mm. For the palm, the rectangles are 20x40mm. I used Hitec HS-322 HD servos, and they fit perfectly. You will have to take the servo case off and put it back together in the hand since there is a small lip where the wires come out.

Step 3: Put the Fingers Together

Originally, the fingers used 4-40 bolts for all of the holes, but since the metric bolts fit better, I swapped all of the bolts out.

I needed to bevel the inside holes on the parts in order for the beveled bolts to sit flush with the surface of the acrylic. To do this, I used a drill press with a drill bit the same size as the beveled heads. I also cut the bolts down a bit to prevent them from catching between the fingers.Arduino Robotic Hand connection

CUT THE BOLTS CAREFULLY. This can cause trouble if done without safety glasses and gloves. Also remember to put on the regular nuts before cutting the bolts and take them off afterwards. This will keep the threading from deforming when you put the lock nuts on.

For putting the finger together:
Put the beveled bolts on first.
Then the other bolts in any order.
Each bolt also gets its own washer and lock nut

Step 4: Assemble the Robotic Hand

For attaching the fingers, rough up the acrylic that will be glued. This provides the hot glue with something that it can grab on to. Also, position the fingers at angles similar to the human hand. Adjust them so the bolts do not interfere between the fingers,

For each FSR, solder the twisted wires on. I used about 2 feet of wire for each FSR. Wrap the FSR in duct tape, like in the picture below. This will allow them to be taped to the robotic hand. Make sure there is some tape holding down a small portion of the wires. If this is not done, the FSR might bend too much just above soldering joint and break.

For the servos, you need to take apart the case and put it back together on the hand. They cannot slide in due to the lip where the wires come out. Put a bit of hot glue between the servo case and the acrylic. This will keep them in place.

Read more: How to Build a Robotic Hand with Haptic Feedback using Arduino

Leave a Comment

Your email address will not be published. Required fields are marked *