Author Hugobiwan | Last edit 22/12/2021 by Hugobiwan
Biodata, forgeCC, Arduino, MIDI Far-Feuille-Eu_-_Son_et_lumi_re_g_n_r__par_l_activit___lectrique_d_une_plante_IMG_2201.JPG Création
Ce prototype réalisé en deux jours nécessite d'abord de fabriquer le capteur de biodata permettant de capter les variations d'activité électriques dans une plante (version de Stéphane Godin) pour les transformer en notes de musiques envoyées au format midi, via bluetooth.
Il consiste dans un socle et un dôme à imprimer en 3d, avec la plante à l'intérieur, avec du papier d'aluminium pour réaliser des réflecteurs, et des petites lumières à couleur programmables (leds RGB), reliées au montage pour piloter les couleurs.
Youtube
Il vous faudra, suivant votre expertise, entre une heure et une demi-journée pour assembler, tester et faire fonctionner le capteur de biodata permettant de relier toute application de synthétiseur bluetooth avec une plante.
Commencez donc avec le tuto de Stéphane Godin et réalisez ce capteur.
Mesurez votre pot de fleur et les dimensions nécessaires pour pouvoir intégrer votre plante, puis allez chercher le fichier pour le socle, et le fichier pour le dôme.
Ajustez-en les dimensions et l'orientation pour préparer deux impressions. Le socle peut être réduit de 50% en échelle Z par rapport aux autres dimensions X et Y pour "tasser le modèle".
L'impression peut prendre beaucoup de temps. Les volumes sont assez minces donc vous pouvez définir un important taux de remplissage (>50%).
Lancez ou planifiez vos impressions 3D et avancez avec la suite de ce tuto :-D
Il vous faut une paire de ciseaux, de la colle en batonnet et du papier d'aluminium. Découpez de petites bandes pour suivre les motifs du socle.
Ici l'équipe des Far-Feuille-Eu a également réalisé un contour en bas du dôme, un peu comme un "anneau de saturne" réfléchissant. Base carton et papier d'aluminium.
Collez-vos réflecteurs soigneusement dans les rainures du socle. Vous pouvez aussi tenter de faire un anneau réfléchissant à la base du dôme.
Comme on le voit dans le code source de l'étape 3, il faut connecter les Leds RGB sur les broches numéros :
R->
G->
B->
Cela peut se faire à partir de la planche de prototypage utilisée pour réaliser le capteur de biodata.
Par contre, il faudra arriver à souder les leds aux intervalles permettant de les fixer sous le dôme... Puis fixer le tout discrètement en arrivant à la fin à "refermer" le dôme.
Il faut prévoir une résistance de 220 K par broche de couleur sur leds RGB, sur la planche de prototypage. La masse des leds est à la masse de la carte ESP32. Ce tuto peut vous aider si vous n'avez jamais connecté de led RGB sur une carte arduino.
Les trois leds de ce prototype sont respectivement cablées ainsi :
#define PIN1_RED 25 // GIOP25
#define PIN1_GREEN 26 // GIOP26
#define PIN1_BLUE 27 // GIOP27
#define PIN2_RED 35 // GIOP35
#define PIN2_GREEN 32 // GIOP32
#define PIN2_BLUE 33 // GIOP33
#define PIN3_RED 36 // GIOP36
#define PIN3_GREEN 39 // GIOP39
#define PIN3_BLUE 34 // GIOP34
Si vous avez suivi le tuto de fabrication du capteur de Stéphane Godin, vous utilisez le même module ESP32 wroover. Donc la dernière image ci-contre vous indique où brancher vos leds.
Vous pouvez connecter toutes les masses des leds à la masse (gnd) de la carte ESP32.
Nous n'avons pas la documentation détaillée de la phase délicate de positionnement des leds sur le prototype.
L'équipe Far-Feuille-Eu l'a réalisée avec brio.
Ci-dessous le code-source développé par Jacques lors du hackathon.
Vous pouvez aussi télécharger ce fichier .ino et l'ouvrir avec le logiciel arduino, avec les mêmes paramètres qu'après avoir suivi le mode d'emploi de Stéphane Godin, puis l'envoyer dans la carte ESP32.
#define PIN1_RED 25 // GIOP25
#define PIN1_GREEN 26 // GIOP26
#define PIN1_BLUE 27 // GIOP27
#define PIN2_RED 35 // GIOP25
#define PIN2_GREEN 32 // GIOP26
#define PIN2_BLUE 33 // GIOP27
#define PIN3_RED 36 // GIOP25
#define PIN3_GREEN 39 // GIOP26
#define PIN3_BLUE 34 // GIOP27
#define R_channel 0
#define G_channel 1
#define B_channel 2
#define pwm_frequency 5000 // frequence pwm
#define pwm_resolution 8 // 8 bit resolution
//##############################
void setup()
{
pinMode(PIN1_RED, OUTPUT);
pinMode(PIN1_GREEN, OUTPUT);
pinMode(PIN1_BLUE, OUTPUT);
pinMode(PIN2_RED, OUTPUT);
pinMode(PIN2_GREEN, OUTPUT);
pinMode(PIN2_BLUE, OUTPUT);
pinMode(PIN3_RED, OUTPUT);
pinMode(PIN3_GREEN, OUTPUT);
pinMode(PIN3_BLUE, OUTPUT);
ledcAttachPin (PIN1_RED, R_channel);
ledcAttachPin (PIN1_GREEN, G_channel);
ledcAttachPin (PIN1_BLUE, B_channel);
ledcAttachPin (PIN2_RED, R_channel);
ledcAttachPin (PIN2_GREEN, G_channel);
ledcAttachPin (PIN2_BLUE, B_channel);
ledcAttachPin (PIN3_RED, R_channel);
ledcAttachPin (PIN3_GREEN, G_channel);
ledcAttachPin (PIN3_BLUE, B_channel);
ledcSetup(R_channel, pwm_frequency,pwm_resolution);
ledcSetup(G_channel, pwm_frequency,pwm_resolution);
ledcSetup(B_channel, pwm_frequency,pwm_resolution);
}
void loop()
{
//Correspondance des frequences des notes en hertz (octave à 0) et la couleurs
Serial.println (note.value);
if (note.value == 36) //Do
{
setColor(237, 0, 0); // RGB_Ecarlate
}
else if (note.value == 37) //Do#
{
setColor(255, 0, 0); //RGB rouge
}
else if (note.value == 38) //Ré_Orange
{
setColor(255, 165, 0); //RGB_Ornage
}
else if (note.value == 39) //Ré#_Jaune
{
setColor(255, 255, 0); //RGB_Jaune
}
else if (note.value == 40) //Mi_Citron
{
setColor(0, 255, 0); //RGB_Citron
}
else if (note.value == 41) //Fa_Vert
{
setColor(0, 128, 0); //RGB_Vert
}
else if (note.value == 42) //Fa#_Turquoise
{
setColor(0, 206, 209); //RGB_Turquoise
}
else if (note.value == 43) //Sol
{
setColor(0, 255, 255); //RGB_Cyan
}
else if (note.value == 44) //Sol#_Indigo
{
setColor(75, 0, 130); //RGB_Indigo
}
else if (note.value == 45) //La_Bleu
{
setColor(0, 0, 255); //RGB_Bleu
}
else if (note.value == 46) //La#_Pourpre
{
setColor(176, 224, 230); //RGB_Pourpre
}
else if (note.value == 47) //Si
{
setColor(255, 0, 255); //RGB_Mangenta
}
}
void setColor(int R, int G, int B)
{
ledcWrite(R_channel,R);
ledcWrite(G_channel,G);
ledcWrite(B_channel,B);
}
Il vous faut installer sur un téléphone mobile ayant le bluetooth, une application gratuite de synthétiseur. Par exemple garage band pour iphone, ou midi synth pour android.
Puis activez le bluetooth dans les réglages de votre smartphone.
Enfin, lancez l'application de synthetiseur, et activez le choix d'une source midi bluetooth.
Choisissez "far-feuille-eu". Vous devriez être connecté à la source de messages midi et commencer à entendre le son de la plante.
En paramétrant avec le synthétiseur les sons affectés aux canaux midi 1 à 3, vous pouvez influer fortement sur l'ambiance. Les notes et le rythme sont définis par le code source arduino.
fr none 0 Draft
You entered an invalid page name, with one or many of the following characters :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #