ESP8266 - Capteur d'Inclinaison SW520D

Le module capteur d'inclinaison SW520D est capable de détecter les inclinaisons ou les changements d'orientation dans son environnement. Il peut être utilisé pour créer des projets réactifs à l'inclinaison, comme une alarme qui s'active lorsqu'un objet est déplacé ou un servomoteur qui répond aux changements d'orientation.

Ce tutoriel vous explique comment utiliser l'ESP8266 et un capteur d'inclinaison SW520D pour détecter l'inclinaison. Nous allons explorer :

Capteur d'inclinaison ESP8266 NodeMCU NodeMCU SW520D

Par la suite, vous avez la possibilité de modifier le code pour déclencher l'activation d'une LED ou d'une lumière (via un relais) lors de la détection d'inclinaison, ou même faire tourner un servomoteur.

Matériel Requis

1×ESP8266 NodeMCU ESP-12E
1×Recommandé: ESP8266 NodeMCU ESP-12E (Uno-form)
1×Câble USB Type-A vers Type-C (pour PC USB-A)
1×Câble USB Type-C vers Type-C (pour PC USB-C)
1×SW520D Tilt Sensor Module
1×Fils de connexion
1×Recommandé: Carte d'extension à bornier à vis pour ESP8266
1×Recommandé: Répartiteur d'alimentation pour ESP8266 Type-C

Ou vous pouvez acheter les kits suivants:

1×Kit de Capteurs DIYables (18 capteurs/écrans)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À Propos du Capteur d'Inclinaison SW520D

Le module capteur d'inclinaison SW520D peut être utilisé pour détecter les inclinaisons ou les changements d'orientation dans l'environnement autour de lui. À l'intérieur du module, il y a une petite bille métallique qui roule entre deux contacts électriques selon l'angle d'inclinaison. Le module génère un simple signal numérique (ON/OFF), ce qui facilite l'interfaçage avec l'ESP8266.

Brochage du Capteur d'Inclinaison SW520D

Le capteur d'inclinaison SW520D 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 : HIGH lorsque le capteur est en position verticale et LOW lorsqu'il est incliné. Cette broche doit être connectée à la broche d'entrée de l'ESP8266.
Brochage du Capteur d'Inclinaison SW520D
image source: diyables.io

Le module capteur d'inclinaison SW520D est livré avec deux indicateurs LED :

  • Une LED indique l'état d'alimentation.
  • Une autre LED indique l'état d'inclinaison : elle s'allume lorsque le capteur est en position verticale et s'éteint lorsqu'il est incliné.

Comment Ça Fonctionne

Voici comment se comporte le capteur :

  • Lorsque le capteur est en position verticale, la bille métallique à l'intérieur ferme le contact, et la broche de sortie est mise à HIGH.
  • Lorsque le capteur est incliné, la bille métallique à l'intérieur ouvre le contact, et la broche de sortie est mise à LOW.

Schéma de Câblage

  • Le schéma de câblage entre l'ESP8266 et le capteur d'inclinaison SW520D alimenté via le port USB
Schéma de Câblage ESP8266 NodeMCU Capteur d'Inclinaison SW520D

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

Pour plus d'informations, consultez Brochage ESP8266. et Comment alimenter l'ESP8266..

  • Le schéma de câblage entre l'ESP8266 et le capteur d'inclinaison SW520D alimenté via Vin
Schéma de Câblage Vin ESP8266 NodeMCU Capteur d'Inclinaison SW520D

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

Comment Programmer pour le Capteur d'Inclinaison SW520D

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

Code ESP8266 - Détecter l'Inclinaison

/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU 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/esp8266/esp8266-sw520d-tilt-sensor */ #define SENSOR_PIN D7 // The ESP8266 pin D7 connected to the DO pin of the SW520D tilt sensor int prev_state = HIGH; // The previous state from the input pin int tilt_state; // The current reading from the input pin void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); // initialize the ESP8266's pin as an input pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the ESP8266's input pin tilt_state = digitalRead(SENSOR_PIN); if (prev_state == HIGH && tilt_state == LOW) Serial.println("The tilt has been detected"); else if (prev_state == LOW && tilt_state == HIGH) Serial.println("The tilt has disappeared"); // save the the last state prev_state = tilt_state; }

Étapes Rapides

Pour démarrer avec l'ESP8266 sur l'IDE Arduino, suivez ces étapes :

  • Consultez le tutoriel Installation du logiciel ESP8266. si c'est la première fois que vous utilisez l'ESP8266.
  • Câblez les composants comme indiqué sur le schéma.
  • Connectez la carte ESP8266 à votre ordinateur avec un câble USB.
  • Ouvrez l'IDE Arduino sur votre ordinateur.
  • Choisissez la bonne carte ESP8266 (par ex. NodeMCU 1.0 (ESP-12E Module)), et son port COM respectif.
  • Copiez le code ci-dessus et ouvrez-le avec l'IDE Arduino
  • Cliquez sur le bouton Téléverser dans l'IDE Arduino pour téléverser le code vers l'ESP8266
  • Inclinez le capteur SW520D dans un sens puis dans l'autre
  • Consultez le résultat dans le Moniteur Série.
Newbiely | Arduino IDE 2.3.8
──
File
Edit
Sketch
Tools
Help
Nodemcu 1.0 (ESP-12E Module)
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'Nodemcu 1.0 (ESP-12E Module)' on 'COM15')
New Line
9600 baud
The tilt has been detected The tilt has disappeared The tilt has been detected The tilt has disappeared
Ln 11, Col 1
Nodemcu 1.0 (ESP-12E Module) on COM15
2

Maintenant, avec le code personnalisé, nous pouvons le faire activer une LED ou une lumière quand une inclinaison est détectée. Nous pouvons même faire tourner un servomoteur. Pour des instructions détaillées et des informations supplémentaires, veuillez consulter les tutoriels fournis à la fin de ce guide.

Dépannage

Si vous rencontrez des problèmes avec le capteur d'inclinaison SW520D qui ne fonctionne pas correctement, essayez les étapes de dépannage suivantes :

  • Vérifiez l'orientation : Le SW520D est sensible à son orientation de montage. Assurez-vous qu'il est installé dans la bonne position verticale pour une détection fiable.
  • Réduisez les vibrations : Les vibrations mécaniques peuvent affecter les performances du capteur d'inclinaison. Le monter sur une surface stable peut aider à minimiser les faux déclenchements.
  • 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 !