Write In, Colour Out

Mosaïque 4 avril

Titre du Projet

Write In, Coulour Out

Auteur(s)

CAROLINE BIZIEN, ANTOINE COUSIN, VENG LOU

Intentions / Contexte

Dans le cadre de l’exposition Exit à la MAC de Créteil, réalisation d’une interface Arduino/Processing, pour expérimenter le principe du flip flop.

Principe de Fonctionnement

La « zone d’écriture » cache des passages de circuits électriques entravés par du tissu résistif : à chaque point, Arduino enregistre la résistance rencontrée lorsque le stylo écrit par dessus. Ainsi, la valeur enregistrée sera différente selon que l’écrivain appuie fort, légèrement ou pas du tout : à chacun ses valeurs…

Ces valeurs influent ensuite sur les couleurs des carrés dessinés sur Processing.

Besoins / Compétences

Nous  pensons  utiliser du tissu, du tissu résistif, des fils électriques, des résistances, une carte Arduino, et un ordinateur. Nous aurons besoin d’un code Processing.

Illustration / Schéma

Initialement, nous voulions associer chaque carré à un des six capteurs, mais il semble qu’Arduino supporte mal de considérer autant d’informations en même temps : la valeur du sixième carré est donc obtenue en ajoutant une somme à la valeur d’un capteur déjà utilisé.

Code utilisé :

import processing.serial.*;
import cc.arduino.*;
///importation des librairies: langage voir étiquettes site processing

Arduino monArduino;
//Arduino ex une voiture .

float valeur0;
float valeur0Map;
float valeur1;
float valeur1Map;
float valeur4;
float valeur4Map;
float valeur3;
float valeur3Map;
void setup() {

size(1200, 800);
background(0, 0, 0);

println(Arduino.list());
///c’est ce qui affiche la ligne avec le port série, il faut lancer le code pour que la ligne s’affiche
//il s’agit de dire d’imprimer toute la liste des éléments arduino
monArduino=new Arduino(this, Arduino.list()[3], 57600);

//>[=shift+alt+parenthèse
//57600=chiffre par défaut de vitesse d’action dans arduino
}

void draw() {

 

valeur0=monArduino.analogRead(0);
valeur0Map=map(valeur0, 300, 1050, 0, 100);
valeur1=monArduino.analogRead(1);
valeur1Map=map(valeur1, 300, 1050, 0, 100);
valeur4=monArduino.analogRead(4);
valeur4Map=map(valeur4, 300, 1050, 0, 100);
valeur3=monArduino.analogRead(3);
valeur3Map=map(valeur3, 300, 1050, 0, 100);
println(valeur0);
println(valeur1);
println(valeur4);
println(valeur3);
if (valeur0>400||valeur1>400||valeur4>400||valeur3>400)
{
save(« Memory.png »);
//Couleurs pastels : mode de couleur High, Saturation, Brightness
colorMode(HSB, 100, 100, 100);

//carré 1
fill(valeur0Map, 50, 100 );
noStroke();
rect(0, 0, 400, 400);

//carré 2
fill(valeur1Map, 50, 100);
noStroke();
rect(400, 0, 400, 400);

//carré 3
fill(valeur4Map, 50, 100);
noStroke();
rect(800, 0, 400, 400);

//carré 4
fill(valeur3Map, 50, 100);
noStroke();
rect(0, 400, 400, 400);

//carré 5
fill(valeur0Map+25, 50, 100);
noStroke();
rect(400, 400, 400, 400);

//carré 6
fill(valeur4Map+25, 50, 100);
noStroke();
rect(800, 400, 400, 400);
} else {
fill(0, 0, 0);
noStroke();
rect(0, 0, 1200, 800);
}
}