Promo !

Le prix initial était : 1 200 CFA.Le prix actuel est : 900 CFA.

Catégorie :
Un détecteur sonore pour Arduino est un petit module électronique équipé d’un microphone et d’un amplificateur. Il capte les ondes sonores de l’environnement ambiant et les convertit en un signal électrique.
Il dispose généralement d’une sortie numérique (qui passe à 1 ou 0 lorsque le bruit dépasse un certain seuil réglable par une petite vis appelée potentiomètre) et parfois d’une sortie analogique (qui mesure l’intensité exacte du volume sonore).
2. Pourquoi choisir ce capteur ?
  • Facilité d’utilisation : Il possède seulement 3 ou 4 broches (Alimentation, Masse, et Signal), ce qui le rend très simple à câbler sur une carte Arduino.
  • Idéal pour l’automatisation : Il permet de créer des projets interactifs déclenchés par l’environnement, comme allumer une lumière en claquant des mains ou créer une alarme anti-intrusion.
  • Économique et accessible : C’est l’un des capteurs les moins chers du marché, parfait pour s’initier à la détection d’événements physiques.
  • #include <Servo.h>
    
    // Déclaration des composants et des broches
    Servo monServo;
    const int brocheCapteurSon = 2; // Sortie numérique (DO) du capteur son sur la broche D2
    const int brocheServo = 9;      // Fil de signal (pulse) du servo sur la broche D9
    
    int positionActuelle = 0;       // Position initiale du servomoteur
    bool sonDetecte = false;        // État de la détection sonore
    
    void setup() {
      monServo.attach(brocheServo); 
      monServo.write(positionActuelle); // Initialisation du servo à 0 degré
      
      pinMode(brocheCapteurSon, INPUT); // La broche du capteur est configurée en entrée
    }
    
    void loop() {
      // Lecture de l'état du capteur de son (REMARQUE : certains modules passent à LOW quand ils détectent un bruit)
      int etatCapteur = digitalRead(brocheCapteurSon);
      
      // Si un bruit est détecté (le signal passe à HIGH)
      if (etatCapteur == HIGH) {
        
        // Avancer le servomoteur de 15 degrés
        positionActuelle += 15;
        
        // Si le moteur dépasse les 90 degrés, on le réinitialise à 0 degré
        if (positionActuelle > 90) {
          positionActuelle = 0;
        }
        
        // Appliquer la nouvelle position au servomoteur
        monServo.write(positionActuelle);
        
        // Petite pause anti-rebond pour éviter de détecter le même bruit plusieurs fois d'un coup
        delay(500); 
      }
    }
    

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “”
Retour en haut