ESP32 - Capteur de Vibration SW-420

Le module capteur de vibration SW-420 peut détecter les chocs, les coups et les secousses qui se produisent autour de lui, transformant une simple perturbation mécanique en un signal numérique sur lequel votre ESP32 peut agir.

Dans ce tutoriel, nous allons apprendre à utiliser l'ESP32 et un capteur de vibration SW-420 pour détecter les vibrations. Nous aborderons les points suivants :

Capteur de vibration SW-420 avec ESP32

Une fois la détection de base fonctionnelle, vous pouvez étendre le code pour faire sonner un buzzer, faire clignoter une LED ou envoyer une notification chaque fois qu'une vibration est détectée.

À Propos du Capteur de Vibration SW-420

Le module capteur de vibration SW-420 est conçu pour détecter les chocs et les secousses de l'objet sur lequel il est monté. À l'intérieur du module, un petit interrupteur de vibration à ressort est placé près d'un contact métallique ; un comparateur LM393 intégré surveille cet interrupteur et produit un signal numérique propre chaque fois qu'une vibration ou un choc le perturbe, tandis qu'un potentiomètre intégré vous permet de régler l'intensité de secousse nécessaire pour déclencher la sortie.

Brochage du Capteur de Vibration SW-420

Le capteur de vibration SW-420 possède trois broches :

  • Broche VCC : doit être connectée à VCC (3,3V à 5V)
  • Broche GND : doit être connectée à GND (0V)
  • Broche DO : est une broche de sortie : LOW lorsque le capteur est au repos et HIGH lorsqu'une vibration ou un choc est détecté. Cette broche doit être connectée à la broche d'entrée de l'ESP32.
Brochage du Capteur de Vibration SW-420
image source: diyables.io

Le module capteur de vibration SW-420 possède deux indicateurs LED :

  • Un indicateur LED indique l'état d'alimentation.
  • Un autre indicateur LED s'allume chaque fois que la broche DO passe à HIGH, signalant qu'une vibration a été détectée.

Comment Ça Fonctionne

Voici comment se comporte la broche de sortie du capteur :

  • Lorsque le module est immobile, l'interrupteur interne reste ouvert et la broche de sortie est mise à LOW.
  • Lorsqu'une vibration ou un choc perturbe le module, l'interrupteur interne se ferme momentanément et la broche de sortie est mise à HIGH.

Schéma de Câblage

  • Comment connecter l'ESP32 et le capteur de vibration SW-420 avec une breadboard
Schéma de Câblage ESP32 Capteur de Vibration SW-420

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, consultez les instructions dans le tutoriel suivant : Comment alimenter l'ESP32..

Comment connecter l'ESP32 et le capteur de vibration SW-420

Comment Programmer pour le Capteur de Vibration SW-420

  • Initialise la broche de l'ESP32 en mode entrée numérique à l'aide de la fonction pinMode(). Par exemple, la broche GPIO18
pinMode(18, INPUT);
  • Lit l'état de la broche de l'ESP32 à l'aide de la fonction digitalRead().
int vibrationState = digitalRead(18);

Code ESP32 - Détecter les Vibrations

/* * Ce code ESP32 a été développé par newbiely.fr * Ce code ESP32 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32/esp32-sw-420-vibration-sensor */ #define SENSOR_PIN 18 // ESP32 pin GPIO18 connected to the DO pin of the SW-420 vibration sensor int lastState = LOW; // the previous state from the input pin (idle/resting state) int currentState; // the current reading from the input pin void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // initialize the ESP32's pin as an input pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the ESP32's input pin currentState = digitalRead(SENSOR_PIN); if (lastState == LOW && currentState == HIGH) Serial.println("Vibration detected"); else if (lastState == HIGH && currentState == LOW) Serial.println("Vibration stopped"); // save the the last state lastState = currentState; }

Étapes Rapides

  • Si c'est la première fois que vous utilisez l'ESP32, consultez Installation du logiciel ESP32..
  • Copiez le code ci-dessus et ouvrez-le avec Arduino IDE
  • Cliquez sur le bouton Téléverser dans Arduino IDE pour téléverser le code vers l'ESP32
  • Tapotez ou secouez le capteur SW-420
  • Consultez le résultat dans le Moniteur Série.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32 Dev Module' on 'COM15')
New Line
9600 baud
Vibration detected Vibration stopped Vibration detected Vibration stopped
Ln 11, Col 1
ESP32 Dev Module on COM15
2

À partir de là, vous êtes libre de personnaliser le code pour qu'il fasse sonner un buzzer, clignoter une LED ou envoie une alerte chaque fois qu'une vibration est détectée. Pour des instructions plus détaillées et étape par étape, vous pouvez consulter les tutoriels fournis à la fin de ce tutoriel.

Dépannage

Si vous rencontrez des problèmes avec le fonctionnement du capteur de vibration SW-420, veuillez considérer les étapes de dépannage suivantes :

  • Ajustez la sensibilité : Tournez le potentiomètre intégré pour rendre le capteur plus ou moins sensible s'il se déclenche trop facilement ou pas du tout.
  • Isolez-le des vibrations ambiantes : Montez le capteur loin des moteurs, des ventilateurs ou des surfaces qui vibrent en permanence, car cela peut provoquer des faux déclenchements continus.
  • Vérifiez le câblage : Assurez-vous que les broches VCC, GND et DO sont correctement connectées.
  • Vérifiez l'alimentation : Assurez-vous que l'alimentation est propre et stable pour des lectures cohérentes.

Vidéo

Références des Fonctions

Commentaires

Tutoriels connexes

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !