Difference between revisions of "Far-Feuille-Eu - Son et lumière généré par l'activité électrique d'une plante"

Line 20: Line 20:
  
 
'''La durée de réalisation indiquée sur ce tuto n'intègre pas le temps nécessaire à l'impression 3D (qui peut prendre plus de 12 heures suivant le nombre de machines à disposition, vos choix de dimension, etc).'''</translate>
 
'''La durée de réalisation indiquée sur ce tuto n'intègre pas le temps nécessaire à l'impression 3D (qui peut prendre plus de 12 heures suivant le nombre de machines à disposition, vos choix de dimension, etc).'''</translate>
 +
}}
 +
{{TutoVideo
 +
|VideoType=Youtube
 +
|VideoURLYoutube=https://youtu.be/O4S34NO_LiY
 
}}
 
}}
 
{{Materials
 
{{Materials
Line 25: Line 29:
 
|Prerequisites=Capteur BioData pour ESP32
 
|Prerequisites=Capteur BioData pour ESP32
 
}}
 
}}
 +
|Tuto_Attachments={{Tuto Attachments}}
 
}}
 
}}
 
{{Tuto Step
 
{{Tuto Step
Line 39: Line 44:
  
  
Il n'y a pas de contraintes physiques donc vous pouvez utiliser un taux de remplissage faible (20%). Par contre, l'impression peut prendre beaucoup de temps.</translate>
+
Il n'y a pas de contraintes physiques donc vous pouvez utiliser un taux de remplissage faible (20%). Par contre, l'impression peut prendre beaucoup de temps.
 +
 
 +
Le fichier pour le socle est ici, le fichier pour le dôme est ici.</translate>
 
}}
 
}}
 
{{Tuto Step
 
{{Tuto Step

Revision as of 16:05, 22 December 2021

Author avatarHugobiwan | Last edit 22/12/2021 by Hugobiwan

Far-Feuille-Eu - Son et lumi re g n r par l activit lectrique d une plante IMG 2201.JPG
Prototype réalisé par l'équipe Far-Feuille-Eu lors du hackathon organisé par le Climate Change Lab à Janzé fin 2021. Installation sonore et lumineuse comprenant socle, dôme, et lumières RGB pour une plante pilotant notes de musique et couleurs.

Introduction

Ce prototype réalisé en deux jours nécessite de fabriquer le capteur de biodata permettant de capter les variations d'activité électriques dans une plante (versin 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.


La durée de réalisation indiquée sur ce tuto n'intègre pas le temps nécessaire à l'impression 3D (qui peut prendre plus de 12 heures suivant le nombre de machines à disposition, vos choix de dimension, etc).

Video overview

Materials

Tools

Step 1 - Réalisez le capteur de biodata émetteur de musique

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.




Step 2 - Lancez les impression 3D

Mesurez votre pot de fleur ou 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.


Il n'y a pas de contraintes physiques donc vous pouvez utiliser un taux de remplissage faible (20%). Par contre, l'impression peut prendre beaucoup de temps.

Le fichier pour le socle est ici, le fichier pour le dôme est ici.

Step 3 - Intégrez le code source arduino et chargez-le dans le module esp32

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 que dans 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);

}

Step 4 - Cablez les leds rgb

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.


Step 5 - Tests son et lumière

Comments

Draft