Pressure Sensor Matrix

by Plusea in Circuits > Wearables

102494 Views, 197 Favorites, 0 Comments

Pressure Sensor Matrix

3170337404_51196d61f0.jpg
3159580934_7fde519f5c.jpg
3158747953_1c7b35ccd0.jpg
3158838785_f97f764aa0.jpg
3159675230_229d5a1569.jpg
3158845319_7f9fa916c9.jpg
Four separate pressure sensors not only give feedback about where I'm pressing, but also how hard. The sensitivity is ideal for finger pressure. Though it is not linear, it is stable. Very sensitive to light touch and then it takes a lot of pressure to reach the minimum resistance.

The inside looks just like the fabric pressure sensors, except each stitch is connected to a separate conductive fabric tab. The downside is that separate tabs and connections to these tabs take up a lot of space, especially if you want to achieve a tight matrix of sensors. A grid of lines and columns and some code to analyze these (separately power and measure) would allow for much tighter spacing. This version is nice because it is so simple.

To make the sensor fully fabric one can use EeonTex conductive textile (www.eeonyx.com) instead of the plastic Velostat. Eeonyx normally only manufacture and sells its coated fabrics in minimum amounts of 100yds, but 7x10 inch (17.8x25.4 cm) samples are available free of charge and larger samples of 1 to 5 yards for a minimum fee per yard.

Video


Video


This Instructable covers two slightly different versions of the pressure sensor matrix. The only difference being the spacing of the individual pressure sensors in the matrix. In one of them they are placed practically next to each other (white) and in the other there is a 1cm space in between each sensor (purple), but because of the thickness of the neoprene it is not possible to press in between the sensors without pressuring a sensor. Hope this makes sense.

I am also selling these handmade Thread Pressure Sensors via Etsy. Although it is much cheaper to make your own, purchasing one will help me support my prototyping and development costs >>
http://www.etsy.com/shop.php?user_id=5178109

The materials used for the sensor are basically cheap and off-the-shelf. There are other places that sell conductive fabrics and Velostat, but LessEMF is a convenient option for both, especially for shipping within North America.

Velostat is the brand name for the plastic bags in which sensitive electronic components are packaged in. Also called anti-static, ex-static, carbon based plastic bags... you can also cut up one of these black plastic bags if you have one at hand. But caution! Not all of them work!

To make the sensor fully fabric one can use EeonTex conductive textile (www.eeonyx.com) instead of the plastic Velostat, but at the moment EeonTex conductive textile is only available in a minimum of 100yds. But try ordering samples!

I chose to work with neoprene because it offers a form of natural force-feedback and also it is great for sewing into with the conductive thread and thus isolating it. But you can easily replace the neoprene for some regular stretch or non-stretch fabric and even try felt or kind of rubber.

Materials and Tools

Materials and Tools
MATERIALS:

For sensor:
also see http://cnmat.berkeley.edu/resource/conductive_thread
also see http://cnmat.berkeley.edu/resource/stretch_conductive_fabric
  • Fusible interfacing from local fabric store or
also see http://www.shoppellon.com
  • Regular thread
For reading input into your computer and running an application that visualizes the changes in resistance:

TOOLS:
For sensor:
- Fabric scissors
- Sewing needle
- Iron
- Fabric pen that disappears over time
- Pen and paper
- Ruler

For reading input into your computer and running an application that visualizes the changes in resistance:
- Soldering station (iron, helping hands, solder)
- Knife for cutting perfboard
- File for filing edges of perfboard

Cut Stencils

3158754469_0ab31c3214.jpg
3158748997_06a0610447.jpg
3159362472_ca0e961f9f.jpg
If you don't want your sensor to look the example then you will have to decide on a shape/design of your own and create your own stencil. Otherwise you can download the stencil here >>
http://farm4.static.flickr.com/3121/3159362472_ca0e961f9f_b_d.jpg

Cut out the stencils from paper and trace on to your neoprene (or other fabric) and Velostat. You will need one square of Velostat that is a few millimeters smaller than the smaller piece of neoprene. You can use 2, 3 or more layers of Velostat to make the sensor less sensitive to light touch.
Cut out the fabric.

Ironing Conductive Fabric Tabs

3158750767_4abaedb042.jpg
3159586610_dd647f4306.jpg
3159590070_76bab06bbf.jpg
3158757819_4216d4a629.jpg
Take a small piece of stretch conductive fabric and fuse some fusible to one side of it. Cut into 5 small tabs and fuse (iron-on) along one of the shorter edges of the slightly larger piece of neoprene.

Sewing Conductive Thread

3159638712_169d516d62.jpg
3158806609_3a7ddc94a6.jpg
3159639670_d5a5ae3804.jpg
3158807619_dbc243450b.jpg
3159633594_4a7f7354e2.jpg
3158809793_130b530d26.jpg
3158800201_e3f7fcf404.jpg
3159648114_84f96822a3.jpg
Following the instructions on the stencil sheet, sew with conductive thread (take it single, not double) into the larger piece of neoprene, coming in from the side with a knot in the end of the thread, making one visible stitch and then sewing inside the neoprene to the appropriate tab. Stitch to the tab with a few small stitches and then plunge into the neoprene one last time and then just cut the thread and dont worry about knotting this end.
On the smaller piece of neoprene youll have all four stitches connected and then you have to sew the end of the conductive thread to the appropriate tab on the other piece of neoprene.

!!!
All this time make sure that non of the stitches are touching inside the neoprene. Do not cross them. Follow the stencil!

Sewing Together

3158839905_0ca9b94772.jpg
3159675230_229d5a1569.jpg
3158838785_f97f764aa0.jpg
3159671982_6a75c6f3e4.jpg
3158829795_2992240889.jpg
Place the piece of Velostat in between your two pieces of neoprene, conductive stitches facing inwards. Sew around the edges with some regular thread. You can even leave the edge with the conductive tabs open and this way you can change the layer(s) of Velostat.

Pull-up Resistors

3170338138_3d252780d4.jpg
3169507325_c7606f19b5.jpg
3170337404_51196d61f0.jpg
3341036327_69e6163dab.jpg
Test first:
Hook up a multimeter in beep mode to the VCC tab and in turn connect it to each of the other tabs. Without even pressuring it, make sure it does not beep. If nothing is touching, then you can pressure each sensor individually to see its resistance range.

Update: The resistiance range of this sensor is ideal for the internal 20K ohm pull-up resistors of the Arduino. So you can skip the rest of this step and look for the right code to activate your internal pull-ups in the next step.

Cut a small piece of perfboard with conductive copper lines, at least 6 x 6 holes big. Solder as seen in schematic illustration and plug in to your Arduino board. For more information on pull-up resistors and why they are necessary, follow this link >>
http://cnmat.berkeley.edu/recipe/how_and_why_add_pull_and_pull_down_resistors_microcontroller_i_o_

Clip the crocodile clips to the correct conductive tabs of your pressure sensor matrix.

Run Application

3170338540_1909f3807c.jpg

For Arduino microcontroller code and Processing visualization code please look here:

>> http://www.kobakant.at/DIY/?p=3314

Program the Arduino and run the Processing application, and if everything works you should be able to see your sensor input being visualized through the graph and drawing options. See videos in the intro step.

Let me know if you have any problems.
And enjoy!