Monday, 14 April 2008

March 15th practice.



Marie, Vasco and I meet every weekend at Poke studios in East London to practice and discuss the project.

Each time there has been progression in the project; the March 15th practice had the rock for the first time, and the larger scale costume (the paper pattern).

We decided at this practice that the wings would have to be reinforced with aluminium rods, much like a corset, in order for them to keep their shape during the dance.

We also discussed the sound of the punishment, which would be triggered by Marie's proximity to the rock; it will ideally include the piercing scream of an eagle, and uncomfortable electronic sounds.

Thursday, 10 April 2008

sketch of arduino + vmusic2 + sensors setup

This is a picture of how everything is connecting together:

proximity sensor + vmusic2

This is the second bit of electronics to be used in the costume.
Initially I wanted to use an IR sensor together with a remote control, but that is seeming overly complex, so instead I'm using a proximity sensor.

To illustrate Prometheus' punishment at the rock (his liver being eaten out periodically by an eagle) a proximity sensor is being embedded in the rock prop used in our dance piece; when Prometheus (Marie) gets 30 cm close to the rock, the sound of his punishment will be heard (an eagle cry, static)

This is the set up (with an LED for testing):




int flex = 2;
int sensor;
int val = 0;
int ledPin = 13; // choose the pin for the LED
boolean triggered = false; //

void setup () {
pinMode(flex, INPUT);
Serial.begin(9600);
pinMode(ledPin, OUTPUT); // declare LED as output

}

void loop() {

val = analogRead(flex); // sensor on analog pin 2

if (val >= 300 && !triggered) { // if button's pressed

triggered = true;
digitalWrite(ledPin, HIGH); // LED on
Serial.print("V3A"); // play all files
Serial.print(13,BYTE);

}

if (val <= 300 && triggered) {

triggered = false;
digitalWrite(ledPin, LOW); // LED off
Serial.print("VST"); //stop playing
Serial.print(13,BYTE);
}


}

Wednesday, 9 April 2008

it works!

Using this code:



int flex = 2; // flex
int sensor;
int val = 0; // variable for reading the pin status
int ledPin = 13; // choose the pin for the LED
boolean triggered = false; //

void setup()

{
Serial.begin(9600);
pinMode(flex, INPUT); // button is your input
pinMode(ledPin, OUTPUT); // declare LED as output

}

void loop () {

val = analogRead(flex); // read input value

if (val >= 500 && !triggered) { // if button's pressed

triggered = true;
digitalWrite(ledPin, HIGH); // LED on
Serial.print("V3A"); // play all files
Serial.print(13,BYTE);

}

if (val <= 500 && triggered)

{

triggered = false;
digitalWrite(ledPin, LOW); // LED off
Serial.print("VST"); //stop playing
Serial.print(13,BYTE);
}

}


I tested it with the flex sensor on my hand, a la Rafael Toral. It's going to be embedded into the sound costume, using the Arduino Lilypad.

Tuesday, 8 April 2008

why don't it work?

I'm testing the flex sensor on my shoulder, which is giving the following kinds of values:

when flat: 490ish to 513
when bent: 513 to 530ish

It's not really giving me the whole spectrum of values available, so i've put it on my hand, and now it's going from 0 to 1023. So the following code should work:


int flex = 2;
int sensor;
int val = 0;
int ledPin = 13; // choose the pin for the LED
boolean triggered = false; //

void setup () {
pinMode(flex, INPUT);
Serial.begin(9600);
pinMode(ledPin, OUTPUT); // declare LED as output

}

void loop() {

val = analogRead(flex); // sensor on analog pin 2
Serial.println(val);

if (val >= 500 && !triggered) { // if button's pressed

triggered = true;
digitalWrite(ledPin, HIGH); // LED on
Serial.print("V3A"); // play all files
Serial.print(13,BYTE);

}

if (val <= 500 && triggered) {

triggered = false;
digitalWrite(ledPin, LOW); // LED off
Serial.print("VST"); //stop playing
Serial.print(13,BYTE);
}


}




The LED is working fine, but the VMUSIC2 only occasionally realises that it should be playing, and then plays the track in its entireity regardless of whether the flex sensor input is above or below 500...

Thursday, 3 April 2008

arduino breakthrough!!

Yes, the day has come! The VMUSIC2 and pushbutton are getting on, nay, working.

Here's a picture:


Here's the code:



int buttonPin = 2; // pushbutton
int val = 0; // variable for reading the pin status
int ledPin = 13; // choose the pin for the LED
boolean triggered = false; //

void setup()

{
Serial.begin(9600);
pinMode(buttonPin, INPUT); // button is your input
pinMode(ledPin, OUTPUT); // declare LED as output

}

void loop () {

val = digitalRead(buttonPin); // read input value

if (val == LOW && !triggered) // if button's pressed
{
triggered = true;
digitalWrite(ledPin, HIGH); // LED on
Serial.print("V3A"); // play all files
Serial.print(13,BYTE);

}

if (val == HIGH && triggered)

{

triggered = false;
digitalWrite(ledPin, LOW); // LED off
Serial.print("VST"); //stop playing
Serial.print(13,BYTE);
}

}


The secret is in the "boolean trigger" - before entering this, the VMUSIC2 would get stressed and pack up as it saw the whole thing as a loop.

Here's a picture of the set up:


Now I'm going to try with the flex sensor!

Tuesday, 18 March 2008

sound costume prototype 2.

The costume is now on a grander scale: an extension of Marie, as opposed to gloves that she manipulates.

Here are the initial drawings:



And here is the paper pattern that we practiced with: