LE MODULE ME DETECTEUR DE SONS
Le module "Me Détecteur de sons" comporte un micro électret associé à un amplificateur LM386. Une led bleue s'allume lors de la détection d'un son. Les fonctions contenues dans la bibliothèque Makeblock sont :
-
MeSoundSensor son(PORT_X) où PORT_X est le port sur lequel est branché le module. Cette fonction permet de créer l'objet.
-
son.strength() renvoie la valeur du mot binaire proportionnelle à l'amplitude du son capté.
Le tableau ci- dessous donne les ports des cartes "Me Orion" et "Me Auriga" pouvant être connectés à ce module.
Exemple :
Nous reprendrons l'exemple donné pour la carte "Me Auriga".
Liste du matériel :
Programme :
/* Son_Makeblock est un programme qui capte le son grâce à un module "Me Détecteur de sons", affiche le signal dans le traceur série et illumine un ruban à led avec une couleur aléatoire à chaque augmentation brutale du son */
#include "MeOrion.h" // appel des bibliothèques
#include <SoftwareSerial.h>
#include <Wire.h>
MeRGBLed led(PORT_3,SLOT1,15); // création de l'objet led (module branché sur le PORT 3)
MeSoundSensor son(PORT_6); // création de l'objet son (module branché sur le PORT 6)
long volume;
byte rouge=128;
byte vert=75;
byte bleu=90;
void setup()
{
Serial.begin(115200); // initialisation de la liaison série
}
void loop()
{
for(int i=0; i<32; i++)
{
volume = volume + son.strength();
}
volume >>= 5;
Serial.println(volume);
delay(10);
if( (volume>300)||(volume<130) ) // si on capte un bruit
{
for(int i = 0; i < 15; i++) // on allume les led en bleu
{
led.setColorAt(i, rouge, vert, bleu);
}
}
else
{ for(int i = 0; i < 15; i++) // on éteint les led
{
led.setColorAt(i, 0, 0, 0);
}
}
led.show(); // on rafraichit les led
delay(50);
rouge=random(0, 255);
vert=random(0, 255);
bleu=random(0, 255);
}