Introduction: Arduino - Make a Flex Sensor for Robotic Hand (Cheap and Simple)

In this tutorial, we will learn how to make and use a flex sensor.

We will control servo motor with a flex sensor.

Flex sensors are passive resistive devices that can be used to detect bending or flexing. The flex sensor shown in this tutorial is a flex sensor that decreases its resistance in proportion to the amount it is bent in either direction.You can easily make a sensor wider and longer depending upon your project.

Step 1: Required Materials

Picture of Required Materials

- Paper

- Flexible Cardboard or Plastic

- Pencil

- Aluminum Foil or Aluminum Tape

- Wires

- Hot Silicone or Solder

A 2.2 inch flex sensor can range in price from $ 10 to $ 50.

If we think that at least 5 flex sensors are used in a robotic hand project, the cost will be quite high.

$ 20 * 5 flex = $ 100

Step 2: Creating a Flex Sensor

Picture of Creating a Flex Sensor

  • I do it according to the size of my own hand fingers
  • I cut paper according to these dimensions
  • With a pencil, the front and back of the paper are drawn in such a way that there is no space left.
  • The greater the density, the better the resistance value we will have.
  • The value of resistance, which varies with the curl of the paper, will give us the amount of flexibility.
  • We cut two pieces of cardboard according to the size of our paper.
  • We stick aluminum on one side of the cardboard parts.
  • Connect wires to the aluminum strips to get value from the sensor.
  • Two aluminum strips should not touch each other.
  • The same goes for Wires!
  • For a robotic hand we make five in this way.
  • I used silicone on the surface to prevent damage.

Step 3: Connection and Circuit Diagram

Picture of Connection and Circuit Diagram

With this circuit diagram we will read the value from the sensor and turn the sevo.

Every sensor we make will show resistance at different values.

Step 4: Code

Picture of Code

  • With this sample code we will read the value from the sensor.
  • Every sensor we make will show resistance at different values.
  • By testing between 0 and 1023 we will find the output value of the sensor.
  • We are moving the sensor ... When the sensor is at 1023, the Servo position will be 90 degrees.
  • The sensor has a minimum value between 1018 and 1020.
  • We make the sensor range from a minimum of 1020 to a maximum of 1023
  • Thus, between these two values we can move the servo motor 0 to 90 degrees.
  • 0 degrees at 1020 - 90 degrees at 1023 As you can see, we can get 1018 value.
  • We can make the minimum value of the sensor 1018.
  • We found the range of values for all the sensors we did this way.

Get the Example Code

Comments

SparksonTech (author)2017-01-09

Awesome !
Good budget-friendly Project

Cassette tapes are a good substitute for paper. They offer more precision.

The aluminium foil can be secured with a Heatshrink for more Durability and Waterproofing

The values roughly range from 750 to 1000

Thanks for the advice!

eart52 (author)2017-01-11

I presume in the instractable you have used a 2B or HB type of pencil. Have you tried a softer type? for instance 3B or 4B? As the graphite on those type of pencils are softer they leave a more dense trace on the paper so it could improve the results you are getting.

HoneyK7 (author)eart522017-06-23

I tried 8B and the resistivity is 0

dineshnaik723 (author)2017-04-26

Sir ,plz can u make a class regarding how to interface camera with Ardunio..
Thank you sir, i tried all your projects. I got result to every projects.

ashwag (author)2017-03-07

does the pdf file containe all the cods that used on this glove?

NeilRG (author)2017-01-26

Black anti static foam sandwiched etween two metal plates works very well.

MertArduino (author)NeilRG2017-01-26

I agree with you ;)

Anirudh Ralhan (author)2017-01-08

A really good and cheap flex sensor. Taking innovative :)

Thanks for your nice comment ;)

karlt1 (author)2017-01-08

if the minimum is 1020 and the maximum is 1023,

you just have 3 different value.

if you use velostat or lingstat you will have a better range of value.

And a resistor of 10K or 20K will be better.

MertArduino (author)karlt12017-01-08

I actually said these values because of the sensitivity of the sensor. Normally, as seen on the video, the minimum value be down to 1009. I agree with you, this value can be increased with materials you say.

About This Instructable

9,911views

169favorites

License:

Bio: For more project and tutorial visit my YouTube channel Mert Arduino and Raspberry Pi
More by MertArduino:XY Plotter Drawing Robot | Arduino | PolargraphArduino - Balance - Balancing Robot | How to Make?Arduino - MPU6050 GY521 - 6 Axis Accelerometer + Gyro (3D Simulation With Processing)
Add instructable to: