Eunice Esomonu - Week 5: E-Textiles

E-Textiles and Wearables I

For week 5, the class was introduced to electronic textiles, and look how designers and creatives use it with different technical applications. Electronic Textiles works in the field to develop wearables that are influenced by various stimuli and movements.

For this assignemnt we were given the assignment to build one digittal and one analog soft sensor using different materials and techniques..

I decided to do a fabric pressure sensor as my digital sensor and a crochet stretch sensor as my analog sensor.

Research

I researched different wearable and fabric sensors. I looked at Instructables and Kobakant - How to Get What You Wnat to find different ideas for the sensor. Through looking at these website, I felt that the best sensors for me to try and experiment with is the pressure sensor and the stretch sensor.

I was intersted in doing a simple pressure sensor for my digital sensor. using various conductive materials.I followed instructions to do the pressure sensor like in Simple Fabric Pressure Sensor.

materials
Pressure Sensor Example
materials
Digital Graph
The analog sensor was harder to understand and design so I did research on what would count as analog. I looked at Sparkfun's Analog vs Digital. Analog signals vary over time with the stimuli, which is dependent on the range of maximum and minum values.

materials
Crochet Sensor Example
materials
Analog Graph

Neoprene Pressure Sensor

Materials

materials
Neoprene Pressure Sensor
  • Neoprene
  • Needle
  • Thread
  • Conductive Fabric
  • Velostat
  • Alligator Clip Wires
  • LED
  • Digital Pocket Multimeter
  • Battery/Arduino

Procedures

  1. Gather the Materials.
  2. Cut the velostat into the shape you desire. (1x)
  3. Cut the conductive fabric into the shape ou desire.(2x)
  4. Make a sandwich with the conductive fabric and the velostat.
  5. Test the sandwich with the Digital Pocket Multimeter.
  6. If you find a connection when you pressed the conductive fabric, add the neoprene on the out layer of the conductive fabric.
  7. Test again.
  8. If you continue to find a connection, sew the conductive fabric to neoprene.
  9. Connect the neoprene pieces with thread.
  10. Make the connection with a AtTiny/Arduino/Battery.
  11. Connect the battery to the pressure sensor and LED.
  12. When you press the sensor, it should light up.
materials
Pressing the pressure sensor
materials
Schematics Pressure Sensor

Code Example

Here is the code for the pressure sensor.


                      const int FSR_PIN = A0; // Pin connected to FSR/resistor divider

                    // Measure the voltage at 5V and resistance of your 3.3k resistor, and enter
                    // their value's below:
                    const float VCC = 4.98; // Measured voltage of Ardunio 5V line
                    const float R_DIV = 3230.0; // Measured resistance of 3.3k resistor

                    void setup()
                    {
                      Serial.begin(9600);
                      pinMode(FSR_PIN, INPUT);
                       pinMode(13, OUTPUT);
                    }

                    void loop()
                    {
                      int fsrADC = analogRead(FSR_PIN);
                      // If the FSR has no pressure, the resistance will be
                      // near infinite. So the voltage should be near 0.
                      if (fsrADC != 0) // If the analog reading is non-zero
                      {
                        // Use ADC reading to calculate voltage:
                        float fsrV = fsrADC * VCC / 1023.0;
                        // Use voltage and static resistor value to
                        // calculate FSR resistance:
                        float fsrR = R_DIV * (VCC / fsrV - 1.0);
                        Serial.println("Resistance: " + String(fsrR) + " ohms");
                        // Guesstimate force based on slopes in figure 3 of
                        // FSR datasheet:
                        float force;
                        float fsrG = 1.0 / fsrR; // Calculate conductance
                        // Break parabolic curve down into two linear slopes:
                        if (fsrR <= 600)
                          force = (fsrG - 0.00075) / 0.00000032639;
                        else
                          force =  fsrG / 0.000000642857;
                        Serial.println("Force: " + String(force) + " g");
                        Serial.println();

                        delay(500);

                          digitalWrite(13, HIGH);       // sets the digital pin 13 on
                      delay(1000);
                      }
                      else
                      {
                          digitalWrite(13, LOW);       // sets the digital pin 13 on
                      delay(1000);
                        // No pressure detected
                      }
                    }
                                      

Crocheet Stretch Sensor

Materials

materials
Mini-Conductive Crochet Tube
  • Yarn
  • Crochet Needle (mine was 4.0 mm)
  • Elastic Thread
  • Conductive Thread
  • Alligator Clip Wires
  • LED
  • Digital Pocket Multimeter
  • Battery/Arduino

Procedures

  1. Gather your materials.
  2. Make sure the conductive thread, elastic thread, and yarn connect together.
  3. Follow the Instructions on the Instructables Page to crochet the tube or you can find a design of any shape you want.
  4. Test the crochet tube with the Digital Pocket Multimeter.
  5. Cut extraneous pieces off.
  6. Measure the Ohms in the Pocket Meter.
  7. Test with the battery and the crochet stretchable sensor..
  8. See how the LED change when you stretch or crunch it..
materials
Stretchable Sensor Test
materials
Schematics Stretch Sensor

Code Example

Here is the code for the stretch sensor.


                     int sensorPin = A5;    // select the input pin for the sensor
                     int ledPin = 13;      // select the pin for the LED
                     int sensorValue = 0;  // variable to store the value coming from the sensor

                     void setup() {
                       // declare the ledPin as an OUTPUT:
                       pinMode(ledPin, OUTPUT);
                     }

                     void loop() {
                       // read the value from the sensor:
                       sensorValue = analogRead(sensorPin);
                       // turn the ledPin on
                       digitalWrite(ledPin, HIGH);
                       // stop the program for  milliseconds:
                       delay(sensorValue);
                       // turn the ledPin off:
                       digitalWrite(ledPin, LOW);
                       // stop the program for for  milliseconds:
                       delay(sensorValue);
     }
                 

Results

With the pressure sensor, it was positive. When you pressed on it the LED glow and it was really interesting to see how I was able to create a sensor. In the future, I want to see how it would look like if I create a program that advances and elevates my pressure sensor.

With the stretch sensor, the sensor isn't automoatic. You would need to see if the LED will glow harder or softer dependent on the stretch. I also need to make sure that it was conductive throughout the sensor and see if I connected it together, correctly. However, it did work just not as visible or strong as I would've liked. You can see with the video that it glowd stronger when you stretched it.