Skyduino:~#
Articles
arduino, programmation, test, tutoriel

[Test] Breakout Micro Electret + Exemple interrupteur « clap clap » rudimentaire

Bonjour tout le monde !

Aujourd’hui je vais vous présenter la breakout « micro electret » de sparkfun.

La breakout est trés simpliste, un broche d’alimentation 5v, un masse GND et une sortie analogique.

L’avantage de cette petite breakout c’est quelle comporte un ampli opérationnelle intégré qui permet de transformer le signal alternatif de trés faible amplitude en un signal positif d’amplitude comprise entre 0v et VCC.
Comme la breakout fonctionne aussi bien en 3v3 que en 5v il est trés facile de l’utiliser avec une carte arduino et la fonction analogRead(), c’est pourquoi je vous propose un petit exemple très concret, un interrupteur « clap clap » rudimentaire mais fonctionnel.

Vous remarquerez que j’ai utiliser une petite astuce au niveau du programme pour ne rien avoir à câbler 😉
En faite chaque broche d’un ATmega328 peut fournir ou recevoir 20mA, or mon micro consomme bien moins de 20mA je peut donc avec un simple digitalWrite() transformer les broches qui vont bien en source d’alimentation +VCC et GND, et par la même occasion éviter tout câblage 😉

 
#define TRIGGER_LEVEL 1000 // Seuil à partir duquel le systéme va réagir

boolean etat = LOW; // Variable pour stocker l'état de la led

void setup() {
  pinMode(A0, OUTPUT);
  pinMode(A1, OUTPUT); // Astuce: n'importe quelle broche peut servir d'alimentation.
  digitalWrite(A0, HIGH); // Il suffit de placer une des broches à LOW et une à HIGH 😉
  digitalWrite(A1, LOW); // Avantage -> pas de cablage !
  
  pinMode(13, OUTPUT); // Led pin 13 en sortie
  digitalWrite(13, LOW);
}

void loop() {
  int val = analogRead(A2); // Lecture du niveau sonore (511 si aucun son -> signal alternatif centré sur VCC/2)
  
  if(val >= TRIGGER_LEVEL || val <= -TRIGGER_LEVEL ) {
    etat = !etat;
    digitalWrite(13, etat);
    delay(500);
  }
}

Simple mais très pratique, cette petite breakout évite d’avoir à faire un montage AOP + micro soit même ce qui n’est pas négligeable 🙂
Je vais tenter dans un prochain projet d’utiliser cette breakout en parallèle avec un programme de FFT (Fast Fourier Transform) pour faire un affichage « equaliseur » du fond sonore ambiant.

Publicités

Discussion

5 réflexions sur “[Test] Breakout Micro Electret + Exemple interrupteur « clap clap » rudimentaire

  1. Salut skywodd!

    Je voulais savoir pourquoi le breakout sort une valeur de 511 pour 0V? On perd en précision du coup…
    Y’a t’il un moyen d’avoir une valeur de 0 pour 0V?
    Peut-on remplacer le micro par une entrée ligne (genre un câble branché sur un iPod ou autre), sans changer de composants?

    Publié par schizophrene | 2 février 2012, 20 h 24 min
    • salut,

      Le signal en sortie du micro est un signal alternatif, donc impossible de l’envoyer telle quelle dans l’arduino 😉
      L’astuce c’est d’avoir vcc/2 pour 0 de cette manière tu peut « lire » la valeur en positif comme en négatif.
      Un signal audio c’est surtout une fréquence (enfin une superposition de fréquences) donc si tu as 0 pour 0v tu perd tout le signal.

      Pour l’entrée ligne tu peut essayer de reprendre la partie ampli, une sortie ligne c’est du +-1v donc avec un simple ampli OP en gain x5 (1x AOP, 2 résistances) tu peut faire une entrée ligne pour ton arduino 😉

      Publié par skywodd | 2 février 2012, 20 h 30 min
      • Ouais je vois l’intérêt de Vcc/2 🙂

        En fait j’ai en cours un jeu de lumière (leds qui réagissent en fonction du son, plus il est fort et plus les leds s’allument) où j’envoyais, en analogique, le signal de l’enveloppe audio (qui variait de 4 à 8V, parce que je générais une dent de scie avec un 555 variant de 1/2.Vcc et 3/4.Vcc) sur un comparateur.

        Mais comparé à ce montage, il utilise beaucoup plus de composant…

        Publié par schizophrene | 2 février 2012, 21 h 45 min
  2. Merci pour ce petit tuto, le projet avec l’utilisation de FFT est toujours prévu ?

    Publié par Bat | 18 mars 2012, 16 h 31 min

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

Skyduino devient Carnet du Maker

Le site Carnet du Maker remplace désormais le blog Skyduino pour tout ce qui touche à l'Arduino, l'informatique et au DIY.