Interactive Fashion-assignment6

This week, we try to make our own inflatables. There are several steps, I’ll add out product pictures as well as the final results along with illustrations:

1, model the shape

We learned to use rhino this time. We followed some examples in the course slides as well as create some shapes by ourselves as tempts and also tests for the project2.

As you can see in the screenshot, it’s one of our design– we want to make an inflatable collar for our second project, so we designed this shape to try out.

2, Print and cut the baking paper using vinyl cutter

For this inflation, it contains three layers: two PVC layers and in between is a layer of baking paper. We first need to export our file to canvas and adjust the size of the board and model. Then, we use USB to transfer the file into the vinyl cutter. We place the baking paper on the special pad. WE NEED TO STICK THEM TOGETHER TIGHTLY!! For we failed several times because the less tight sticking will result in the paper to fold and not able to cut the shape completely. 

3,Assembling

Then, we need to stick the PVC layer and the baking paper together. Before sealing it with the iron, we first need to put a screw to connect one layer of PVC and the baking paper. Then we put the three layers together to seal them using the iron.

4, Connecting

We connected the circuit according to the slides and connected it to the inflatable. It was like this:

this one is following the example on the slides

and this is a cute little guy doing workout

this is a .. this is something cute

I think they are interesting especially for the space the use when they inflate, also if with enough power, they can hold thing on top, which can be how we use it in our project, it can pump out things and surprise the viewers.

One of the parts that can move in our project is the collar, but we are still hesitating whether to use the inflatables to make the collar or other materials and techniques. 

 

Project1

Concept aspect:

For our concept, since we made a nature-related self-made fabric during last class, we thought that it would be nice to make a project that shows the relationship between human and nature. Also, the international women’s day is approaching, we thought that women are often given gifts of flowers as well as being described as flowers, beautiful, delicate and needed to be protected by men. However, this can also be considered as a stereotype that constrains women to be themselves. So we made this dress that shows both women’s beauty and curve but also through the user experience, we can let the wearer feels an obvious constrain and danger of wearing the dress.

The bottom part of our dress is covered beautiful flower petals that we made ourselves using a special kind of paper that is delicate and can be shaped easily, which demonstrates the delicate and can-be-shaped-by-others characteristic. The graceful white long dress on the base also shows women’s grace. However, the dress has a really tough inner face that is very uncomfortable for the wearer, and the dress itself is very tight which is constraining the wearer’s movements. These represents the hidden harms that stereotypes like this can have on women.

The middle part of the body is covered by thin shinny fabric that barely cover anything, explicitly showing women’s fragility and fear. The collar has many layers, the part below the neck is stretching out, showing women’s desire to express themselves and to be powerful, and about the neck is instead is blocking the sight, which shows a stereotype that women should not care about the outside world and just do the domestic, creates a conflict here.

The collar also has a lot of iron sticks sticking out, showing how sharp this constrain is, which is not only dangerous to the wearer but also to the surrounding, so it demonstrates the stereotype on women is much more than just a harm on women but on the entire society.

The mask is also blocking women’s face, blocking her from the outside world. The fabric is made by lace and leaves of flowers, representing the “standard” dress and symbol of women.

There is a big pumping shining heart outside the body, demonstrating that women are actually brave and true, they have their own feelings, thoughts, blood and also, heartbeats that can be and are supposed to be seen and felt.

Technical aspect:

We use the heartbeat sensor and neopixel string. The code is below:

// Function: This program can be used to measure heart rate, the lowest pulse in the program be set to 30.
//         Use an external interrupt to measure it.
// Hardware: Grove - Ear-clip Heart Rate Sensor, Grove - Base Shield, Grove - LED
// Arduino IDE: Arduino-1.0
// Author: FrankieChu
// Date: Jan 22, 2013
// Version: v1.0
// by www.seeedstudio.com
//Heart rate
#define LED 13//indicator, Grove - LED is connected with D4 of Arduino
//xboolean led_state = LOW; //state of LED, each time an external interrupt
//will change the state of LED
unsigned char counter;
unsigned long temp[21];
unsigned long sub;
bool data_effect = true;
unsigned int heart_rate;//the measurement result of heart rate

const int max_heartpluse_duty = 2000;//you can change it follow your system's request.
//2000 meams 2 seconds. System return error
//if the duty overtrip 2 second.

//LED pixels1
// NeoPixel Ring simple sketch (c) 2013 Shae Erisson
// Released under the GPLv3 license to match the rest of the
// Adafruit NeoPixel library

#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
#include <avr/power.h> // Required for 16 MHz Adafruit Trinket
#endif

// Which pin on the Arduino is connected to the NeoPixels?
#define PINs1        6 // On Trinket or Gemma, suggest changing this to 1


// How many NeoPixels are attached to the Arduino?
#define NUMPIXELS1 120 // Popular NeoPixel ring size



// When setting up the NeoPixel library, we tell it how many pixels,
// and which pin to use to send signals. Note that for older NeoPixel
// pixels1s you might need to change the third parameter -- see the
// strandtest example for more information on possible values.
Adafruit_NeoPixel pixels1(NUMPIXELS1, PINs1, NEO_GRB + NEO_KHZ800);
//Adafruit_NeoPixel pixels2(NUMPIXELS1, PINs2, NEO_GRB + NEO_KHZ800);
//Adafruit_NeoPixel pixels3(NUMPIXELS1, PINs3, NEO_GRB + NEO_KHZ800);
//Adafruit_NeoPixel pixels4(NUMPIXELS1, PINs4, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 500 // Time (in milliseconds) to pause between pixels

long int blinkTime = 200;
long int blinkStartTime = 0;
boolean lightsOn = false;
int prevCounter = 0;

void setup() {

  pixels1.begin(); // INITIALIZE NeoPixel pixels1 object (REQUIRED)


   pixels1.clear(); // Set all pixel colors to 'off'
 
  pinMode(LED, OUTPUT);
  Serial.begin(9600);
  Serial.println("Please ready your chest belt.");
  delay(5000);
  arrayInit();
  Serial.println("Heart rate test begin.");
  attachInterrupt(0, interrupt, RISING);//set interrupt 0,digital port 2


  Serial.begin(9600);   // We'll send debugging information via the Serial monitor
  pinMode(6, OUTPUT);
}


void loop()
{
  if (counter != prevCounter) {
    blinkStartTime = millis();
    lightsOn = true;
    Serial.println("lights on");
    //    prevCounter = counter;
    pixels1.fill(pixels1.Color(198, 0, 211), 0, 120);
    pixels1.show();
    prevCounter = counter;
    delay(50);
  }

  if (millis() - blinkStartTime > blinkTime) {
    lightsOn = false;
    Serial.println("lights off");
    pixels1.fill(pixels1.Color(0, 0, 0), 0, 0);
    pixels1.show();
  }
}
void sum()
{
  if (data_effect)
  {
    heart_rate = 1200000 / (temp[20] - temp[0]); 
  }
  data_effect = 1; 
}
void interrupt()
{
  temp[counter] = millis();
  Serial.println(counter, DEC);
  Serial.println(temp[counter]);
  switch (counter)
  {
    case 0:
      sub = temp[counter] - temp[20];
      Serial.println(sub);
      break;
    default:
      sub = temp[counter] - temp[counter - 1];
      Serial.println(sub);
      break;
  }
  if (sub > max_heartpluse_duty) //set 2 seconds as max heart pluse duty
  {
    data_effect = 0; //sign bit
    counter = 0;
    Serial.println("Heart rate measure error,test will restart!" );
    arrayInit();
  }
  if (counter == 20 && data_effect)
  {
    counter = 0;
    sum();
  }
  else if (counter != 20 && data_effect)
    counter++;
  else
  {
    counter = 0;
    data_effect = 1;
  }

}
void arrayInit()
{
  for (unsigned char i = 0; i < 20; i ++)
  {
    temp[i] = 0;
  }
  temp[20] = millis();
}


Future development:

Now, some of our concepts are still not straightforward enough, also as professor Marcele suggests, we could’ve used a sensor that can connect the viewer with the dress instead of just the wearer. And we can express the “women’s power” more explicitly by choosing more tough and attacking materials.