Projet Arduino de LED activées par le son

Projet Arduino de LED activées par le son

Le projet de DEL activées par le son consiste à construire un circuit Arduino de base utilisant principalement un module de DEL (diode électroluminescente) bicolore et un module de capteur de son microphone. Le principe de ce projet est simple : lorsque le capteur de son détecte un bruit de claquement, la DEL passe du vert au rouge pendant deux secondes, puis reprend sa couleur verte initiale. Si le capteur sonore ne détecte pas de bruit de claquement, la DEL reste verte. Techniquement, il n'est pas nécessaire que le son soit un claquement, car il s'agit simplement d'un exemple de son susceptible de faire passer la lecture du capteur au-dessus d'un certain seuil, ce qui déclencherait le changement de couleur de la DEL.

Le module de capteur de son utilisé dans le projet de DEL activée par le son est le HW-485 Microphone Sound Sensor Module (module de capteur de son avec microphone) et peut émettre des signaux analogiques et numériques. Cependant, comme ce projet utilise des signaux numériques pour faire passer la couleur de la LED d'un état à l'autre, c'est la sortie numérique du capteur qui sera utilisée. Cela signifie que le capteur de son ne peut envoyer que deux états en fonction du niveau d'entrée (son) qu'il reçoit : 1 (activé) ou 0 (désactivé). Le capteur enverra un 1 à l'Arduino s'il capte un son supérieur à sa valeur seuil ; dans le cas contraire, un 0 sera envoyé pour tous les sons qui ne franchissent pas le seuil.

Pour modifier cette valeur de seuil, vous pouvez tourner le potentiomètre trimmer qui est monté directement sur le module du capteur pour moduler la sensibilité du capteur. Pour ce modèle particulier (HW-485), la rotation du potentiomètre dans le sens des aiguilles d'une montre augmente sa sensibilité, tandis que la rotation du potentiomètre dans le sens inverse des aiguilles d'une montre diminue sa sensibilité. Il est important de noter que pour votre module de capteur de son, selon le modèle, la direction peut être opposée. Si la LED ne change pas d'état (de couleur) lorsqu'un son fort est émis à proximité, vous devrez modifier la sensibilité du capteur. 

Après avoir compris les principes fondamentaux de ce projet Arduino, il sera certainement plus facile d'incorporer et d'intégrer certains des concepts démontrés dans ce circuit dans d'autres applications. La base de ce projet repose essentiellement sur le fait que le capteur de son capte une entrée (le son) et agit comme un interrupteur pour activer un changement dans le module LED, le dispositif de sortie. En gardant ce concept à l'esprit, le dispositif de sortie peut facilement être remplacé par un buzzer piézoélectrique (pour générer du bruit), un écran visuel (LCD, OLED, TFT, etc.), un relais (connecté en ligne avec d'autres dispositifs externes), un transmetteur sans fil, etc. En outre, en circuits imprimés pour l'électronique grand publicUn type de circuit similaire est utilisé lors de la création d'appareils électroniques à commande vocale ou même de systèmes domotiques. Nombre de ces circuits peuvent en outre être intégrés dans une carte de circuit imprimé, à la fois par trou traversant et par montage en surface, afin de réduire la taille globale du projet. Le transfert d'un projet comme celui-ci d'une planche à pain à un circuit imprimé peut être réalisé sans effort. Pour réaliser ce projet de circuit homebrew, il faut composants de la source:

  • Arduino Nano (d'autres cartes compatibles avec Arduino fonctionneront)
  • Câble USB (compatible avec la carte Arduino)
  • Planche à pain
  • Cavaliers mâle-mâle (6)
  • Module capteur de son micro HW-485
  • HW-480 Module LED rouge/vert à 2 couleurs (cathode commune)
  • Résistances 220Ω (2)

Schéma de câblage d'un projet électronique à LED de contrôle du son

En fonction de votre carte Arduino, vous pouvez ou non avoir besoin d'une planche à pain pour brancher votre carte. Dans cet exemple, un Arduino Nano est utilisé, ce qui nécessite une planche à pain, mais si vous utilisez un Arduino Uno, par exemple, les fils de connexion peuvent être branchés directement sur les broches de la carte à partir des composants de la planche à pain.

Le câblage de ce projet est assez simple car, à part les modules principaux, peu de composants supplémentaires sont nécessaires. En ce qui concerne le module du capteur de son, le module HW-485 utilisé dans ce projet a une configuration à 4 broches avec une sortie numérique (DO) et une sortie analogique (AO). Si votre module a la même configuration à 4 broches, utilisez la sortie numérique (DO), mais si votre module a une configuration à 3 broches, la broche de sortie/signal standard fonctionnera. En ce qui concerne le module LED, la raison pour laquelle deux résistances de 220Ω sont connectées en série avec les deux sorties de ce module est d'empêcher les LED de griller lorsqu'on applique une tension d'alimentation de +5 volts. Voici un schéma de câblage pour ce projet de bricolage :

  • Module capteur de son micro HW-485 : Connectez la broche de sortie numérique (DO)/signal à D7 sur votre carte Arduino, la broche positive (+) à +5v et la broche GND (G) à GND.
  • Module LED 2 couleurs rouge/vert HW-480 : Insérez une résistance de 220Ω dans la planche à pain en série avec la broche de sortie du signal LED de couleur rouge (R) et insérez une autre résistance de 220Ω en série avec la broche de sortie du signal LED de couleur verte (G). Connectez la broche de sortie de la couleur rouge (R) à D5 et la broche de sortie de la couleur verte (G) à D6. Connectez la broche négative (-) à GND sur votre Arduino.
  • Maintenant, vous pouvez brancher votre carte Arduino à l'ordinateur via le câble USB.

Code du projet

int redPin = 5;

int greenPin = 6;

int sensorPin = 7;

booléen val = 0;

 

void configuration(){

 pinMode(redPin, OUTPUT);

 pinMode(greenPin, OUTPUT);

 pinMode(sensorPin, INPUT);

 Série.commencer(9600);

}

 

 void boucle (){

 val = digitalRead(sensorPin);

 Série.println(val);

 

 si (val == HIGH) {

   digitalWrite(greenPin, LOW);

   digitalWrite(redPin, HIGH);

   retarder(2000);

 }

 sinon {

   digitalWrite(redPin, LOW);

   digitalWrite(greenPin, HIGH);

 }

}

A propos du code

  • Ce code simple est un excellent exemple de la plupart des fonctions que vous risquez de rencontrer à nouveau lors de votre travail. Programmation des circuits intégrés dans l'IDE Arduino, qui utilise une variante des langages de programmation C++. Ce code comporte des entiers fondamentaux, des booléens, des fonctions utiles et des instructions if.
  • Le premier bloc de code définit les trois broches numériques de l'Arduino qui sont utilisées par le module capteur du microphone et le module LED. La variable redPin désigne la broche D5 à utiliser pour le signal de la LED de couleur rouge, greenPin désigne D6 et sensorPin désigne D7 pour l'utilisation du module capteur de son. En outre, un booléen nommé val est affecté à 0 (bas/faux/arrêt). Un booléen est un type de données spécifique qui peut contenir une valeur vraie ou fausse (1 ou 0).
  • Passons à la partie configuration du vide, chacune des broches qui ont été définies précédemment est maintenant définie ici comme une entrée ou une sortie. Puisque le capteur de son capte des données sonores et les envoie à l'Arduino pour traitement, il est défini comme une entrée, tandis que le module LED reçoit des données de l'Arduino, les deux broches LED sont donc définies comme des sorties. Le débit en bauds de la communication série est fixé à 9600 bauds afin que les données captées par le capteur puissent être lues ultérieurement dans le moniteur série.
  • En ce qui concerne la partie de la boucle void, le booléen val est d'abord défini comme l'état dans lequel se trouve le capteur de son. Puisque l'Arduino reçoit une sortie numérique du capteur, l'information qu'il envoie à l'Arduino ne peut être que vraie (1) ou fausse (0). Ces données sont ensuite imprimées sur le moniteur série et ces informations peuvent être très utiles pour calibrer la sensibilité du capteur de son (en fixant le seuil des sons que le capteur peut détecter). 
  • Ensuite, une instruction if est introduite qui indique essentiellement que si le capteur de son détecte un claquement (lorsque le capteur de son renvoie un 1), la DEL verte s'éteint et la DEL rouge s'allume pendant deux secondes avant de revenir à son état par défaut (DEL rouge éteinte et DEL verte allumée). Ceci démontre l'utilisation de la fonction pinMode() qui peut spécifiquement activer (HIGH) ou désactiver (LOW) une sortie numérique (par exemple un module LED) en fonction de certains paramètres dans l'instruction if, dans ce cas.

Prochaines étapes

Ce projet de LED activées par le son de Technologie FS est un excellent projet d'introduction à l'utilisation de divers dispositifs d'entrée et de sortie, ainsi qu'à diverses fonctions fondamentales utilisées dans le code Arduino pour contrôler les informations reçues et envoyées de/vers ces dispositifs. Ce principe peut donc être appliqué à des projets beaucoup plus vastes où l'entrée numérique d'un capteur peut être utilisée pour déclencher un circuit ou activer/désactiver un dispositif de sortie. Par exemple, les systèmes de détection de mouvement intègrent généralement des capteurs PIR (infrarouge passif) qui, lorsqu'ils sont activés, déclenchent une lumière vive ou une alarme. Il s'agit simplement d'un des nombreux exemples de ce système d'entrée-sortie numérique simple qui est incorporé dans de nombreux appareils électriques et circuits électroniques aujourd'hui. En ce qui concerne les fonctions/affirmations du code Arduino, l'une des fonctions les plus importantes à retenir est l'instruction if. Ces instructions sont des fonctions extrêmement fondamentales et populaires que l'on retrouve dans presque tous les codes, en particulier lorsqu'on travaille avec plusieurs dispositifs qui communiquent entre eux pour faire partie d'un réseau/système plus vaste. Avec tous ces concepts à l'esprit, c'est maintenant à vous d'être capable d'appliquer et d'étendre vos connaissances nouvellement fondées pour créer vos propres codes. Carte PCBA DIY!

Blog sur les projets électroniques DIY

Arduino UNO Interrupt Timer

Arduino UNO Interrupt Timer Le Timer est une fonction intégrée dans chaque microcontrôleur et a certaines fonctions concernant le passage du temps. La fonction Timer

Lire plus "