EMI

Expérimentation, Méthodologie et Innovation

Objets communiquants

Un appareil capable d’interagir avec son environnement en répondant à des stimuli et en échangeant des informations à l’aide d’un outil de communication.

Elisa Magnani
Tea Khoudair
Victoria Vorozhtsova

Concept

Il s’agit d’une composition sculpturale et musicale. L’idée de ce concept est que le corps humain est fragile et vulnérable, et que le son attirera l’attention sur sa position à côté de la sculpture, qui lui ressemble abstraitement. Si l’on s’approche de la sculpture, le son sera plus fort et plus aigu, et inversement.

Mots-clés :
+ sculpture sonore
+ fragilité
+ interaction
+ proximité
+ installation sensorielle
+ art interactif

Technologies numériques → INSPIRATION

Le Thérémine est un instrument de musique électronique composé de deux antennes avec circuits électriques, d’oscillateurs, d’amplificateurs et d’un haut-parleur. L’interprète contrôle le son sans toucher l’instrument, en déplaçant ses mains dans les champs électromagnétiques entourant les antennes. Le corps humain, conducteur d’électricité, perturbe ces champs : plus la main est proche de l’antenne verticale, plus le son est aigu ; plus elle est proche de l’antenne horizontale, plus le volume est faible. Les signaux ainsi produits sont amplifiés et transmis à un haut-parleur.

Technologies numériques → ARDUINO

Nous utilisons un Arduino pour connecter le son et la structure.
Pour se faire, il faut rendre le matériau conducteur.

Le code initial que nous avons trouvé en utilisant les références que nous avons trouvées

How to build an Arduino Theremin

Arduino Theremin

Expérimentation

Les plans prévoient de tester des panneaux de différentes épaisseurs et compositions pour comprendre à quelle distance le capteur réagit.

Stratégie de test

Intégration de différents types de matériaux métalliques dans le plâtre, expérimentations visant à identifier le matériau offrant la meilleure conductivité.

Pour nos tests, nous avons utilisé de l’aluminium, de l’acier et du cuivre.
Pour trouver le meilleur métal comme conducteur, nous avons placé de l’aluminium, de l’acier et du cuivre à l’intérieur du plâtre. Le cuivre a une meilleure conductivité de contact.

Après avoir identifié le meilleur métal comme conducteur, nous avons commencé à modifier la forme du relief de la surface et la position de la grille en micro-mailles par rapport à la surface pour déterminer si le son changerait ou non.

Création du premier élément volumétrique

Après avoir réalisé les premiers tests avec du plâtre et différents métaux, nous avons identifié le matériau que nous allions utiliser pour la suite : un filet de cuivre, souvent utilisé pour protéger les plantes des escargots.
Nous avons donc créé un moule à l’aide de plastique, ce qui nous a confrontés à plusieurs difficultés. Le premier enjeu était le choix du plastique : s’il était trop épais, il devenait rigide et difficile à manipuler ; trop fin, il se révélait trop fragile. Il nous fallait donc trouver un compromis permettant une certaine souplesse pour épouser la forme lors du coulage du plâtre, sans compromettre la solidité.

FORME → INSPIRATIONS

Ce concept est né d’une exploration de formes fluides et indéfinies, à la croisée de l’organique et de l’abstrait. L’intention est de dépasser la rigidité inhérente au matériau en le modelant en volumes qui suggèrent le mouvement, la souplesse et l’imprévisibilité propres à la nature. Le contraste entre la solidité du support et la légèreté apparente des formes crée une tension visuelle, donnant à la matière une dimension vivante et changeante.

FORME → SKETCHING

Cette série d’études graphiques constitue une phase de recherche formelle, au cours de laquelle nous avons exploré diverses configurations abstraites et organiques. Ces dessins nous ont permis d’identifier et de sélectionner les typologies de formes les plus pertinentes à expérimenter pour le développement de l’élément sculptural du projet.

FORME → TECHNIQUE

Nous avons finalement opté pour un sac plastique classique, de type sac poubelle, et avons confectionné notre moule en utilisant une machine à coudre le plastique. Cela impliquait aussi de trouver les bons réglages : une couture trop serrée risquait de fragiliser le matériau, tandis qu’une couture trop lâche compromettait l’étanchéité.
Ces réglages restent encore à affiner, car lors des essais de coulage, nous avons constaté que la pression du plâtre provoquait parfois des déchirures au niveau des coutures. D’autres problèmes sont également apparus, notamment la présence de bulles d’air ou des irrégularités dans la surface finale.
Nous avons donc choisi de conserver une forme de taille moyenne, en acceptant les imperfections liées aux matériaux du moule. L’objectif est désormais d’optimiser à la fois la fonction et la forme finale de l’objet.

FORME → expérimentations

Test du premier exemplaire reçu

FORME FINALE

Version finale du code

#define MOZZI_CONTROL_RATE 64

#include <Mozzi.h>

#include <Oscil.h> // oscillator template

#include <tables/sin2048_int8.h> // sine table for oscillator

#include <RollingAverage.h>

#include <ControlDelay.h>

#include <CapacitiveSensor.h>

#define INPUT_PIN 0 // analog control input

unsigned int echo_cells_1 = 32;

unsigned int echo_cells_2 = 60;

unsigned int echo_cells_3 = 127;

ControlDelay <128, int> kDelay; // 2seconds

// oscils to compare bumpy to averaged control input

Oscil <SIN2048_NUM_CELLS, MOZZI_AUDIO_RATE> aSin0(SIN2048_DATA);

Oscil <SIN2048_NUM_CELLS, MOZZI_AUDIO_RATE> aSin1(SIN2048_DATA);

Oscil <SIN2048_NUM_CELLS, MOZZI_AUDIO_RATE> aSin2(SIN2048_DATA);

Oscil <SIN2048_NUM_CELLS, MOZZI_AUDIO_RATE> aSin3(SIN2048_DATA);

// use: RollingAverage <number_type, how_many_to_average> myThing

RollingAverage <int, 32> kAverage; // how_many_to_average has to be power of 2

int averaged;

CapacitiveSensor   cs_4_2 = CapacitiveSensor(4,2);

void setup(){

  cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF);     // turn off autocalibrate on channel 1 – just as an example

  kDelay.set(echo_cells_1);

  startMozzi();

}

void updateControl(){

  long bumpy_input = cs_4_2.capacitiveSensor(30);

  averaged = kAverage.next(bumpy_input);

  aSin0.setFreq(averaged);

  aSin1.setFreq(kDelay.next(averaged));

  aSin2.setFreq(kDelay.read(echo_cells_2));

  aSin3.setFreq(kDelay.read(echo_cells_3));

}

AudioOutput updateAudio(){

  return MonoOutput::fromAlmostNBit(12,

    3*((int)aSin0.next()+aSin1.next()+(aSin2.next()>>1)

    +(aSin3.next()>>2))

  );

}

void loop(){

  audioHook();

}

Au Suivant Poste

Précedent Poste

© 2025 EMI

Thème par Anders Norén