Form
This project will consist of a white box (altar), placed in the center of a room with dimmed lights (a spotlight focused on the altar only). On the top of this box, there will be a bowl with junk food (we are still thinking about putting healthy-ish junk food instead of plain Big Macs). This bowl will be sitting on the top of a FSR (Force Sensitive Resistor) like this:
This FSR shall acknowledge the variations of the weight of the bowl as "players" (aka viewers) take the food out of the bowl. Once the FSR connected to an Arduino Uno, sends the amount of resistance to the computer, a video or a combination of imagery and sound will be projected on the opposite wall of the room. Also, the player will get a little burned because of touching the bowl. The figure below is a schematic representation of what the viewer shall see we he enters the room:
Concept
We want to toy with control and power relations between food, fashion and identity. We NEED food in order to survive but our relationship to it has changed to either not eating in order to be pretty or eating too much to make it through the day. Food is a subject of amusement because it is directly linked to the physical state of the body - as the saying "You are what you eat" reminds us - as well as to the emotional state of being. Personally, and I can say that on behalf of lots of people, hunger is one of the worst sensations to experience and it can as well affect the emotional of whoever is hungry. That means that a happy society is a well-fed one. But, at the same time, we want to criticize the infamous control society imposes us not to eat when most population NEEDS food and does not have it.Method
We are going to buy soldering paste to make it easier to attach the wires to the tiny legs of the FSR. The wire shall be large because the Arduino Uno setup will be hidden below and inside the altar. If this does not work, we shall keep the Arduino close enough to the bowl and hide it with white fabric. We need to think as to how we will project on the room without making it impossible for us to connect the cables.Code:
//Declaration of variables
int bend1 = A0;
int bend2 = A1;
int bend3 = A2;
int bend4 = A3;
int sum;
int x;
int y;
int z;
int w;
void setup()
{
Serial.begin(9600);
}
void loop()
//Print the analogical input to send to Processing
{
//Serial.print(
x = analogRead(bend1);
//);
//Serial.print(",");
//Serial.print(
y = analogRead(bend2);
//);
//Serial.print(",");
//Serial.print(
z = analogRead(bend3);
//);
//Serial.print(",");
//print and space
//Serial.println(
w = analogRead(bend4);
//);
sum = x+y+w+z;
Serial.println(sum);
}
PROCESSING CODE:import processing.serial.*;
import processing.video.*;
float stotal;
Serial myPort;
boolean isBad = true;
Movie nowPlaying;
String[] badVideosPath = {"bad video 1.mp4", "bad video 2.mp4", "bad video 3.mp4"};
String[] goodVideosPath = {"good video 1.mp4", "good video 2.mp4", "good video 3.mp4"};
Movie[] badVideos = new Movie[badVideosPath.length];
Movie[] goodVideos = new Movie[goodVideosPath.length];
void setup() {
for (int i = 0; i < badVideosPath.length; i++){
badVideos[i] = new Movie(this, badVideosPath[i]);
}
for (int i = 0; i < goodVideosPath.length; i++){
goodVideos[i] = new Movie(this, goodVideosPath[i]);
}
size(480,360,P2D);
println(Serial.list());
myPort = new Serial(this, "COM5", 9600);
myPort.bufferUntil('\n');
}
void serialEvent(Serial myPort) {
stotal = float(myPort.readStringUntil('\n'));
boolean notPlaying = (nowPlaying == null || nowPlaying.time() == nowPlaying.duration());
if ((notPlaying || !isBad) && stotal > 900) {
if (nowPlaying != null) nowPlaying.stop();
nowPlaying = badVideos[floor(random(badVideos.length))];
nowPlaying.play();
isBad = true;
} else if (notPlaying && stotal > 500) {
nowPlaying = goodVideos[floor(random(goodVideos.length))];
nowPlaying.play();
isBad = false;
}
}
void movieEvent(Movie nowPlaying) {
if (nowPlaying == null) return;
nowPlaying.read();
}
void draw() {
if (nowPlaying == null) return;
image(nowPlaying,0,0);
}
No comments:
Post a Comment