ESP32 - Relais bascule pour capteur de porte
Ce tutoriel vous explique comment utiliser l'ESP32 pour basculer l'état du relais à chaque fermeture de porte.
Nous pouvons étendre ce tutoriel pour utiliser le capteur de porte afin de contrôler une bande de LED, une sirène, une ampoule ou un actionneur... en les connectant au relais.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du relais et du capteur de porte
Nous proposons des tutoriels spécifiques sur le relais et le capteur de porte. Chaque tutoriel contient des informations détaillées et des instructions étape par étape sur le brochage du matériel, le principe de fonctionnement, la connexion des câbles à l'ESP32, le code ESP32... Pour en savoir plus, consultez les liens suivants :
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Si vous ne savez pas comment alimenter l'ESP32 et d'autres composants, vous pouvez trouver des conseils dans le tutoriel suivant : Comment alimenter l'ESP32.
Code ESP32 - Le capteur de porte bascule le relais
Étapes rapides
- Si c'est la première fois que vous utilisez ESP32, consultez comment configurer l'environnement pour ESP32 sur Arduino IDE.
- Faites le câblage comme sur l'image ci-dessus.
- Connectez la carte ESP32 à votre PC via un câble micro USB.
- Ouvrez Arduino IDE sur votre PC.
- Sélectionnez la bonne carte ESP32 (par exemple, ESP32 Dev Module) et le port COM.
- Copiez le code ci-dessus et collez-le dans Arduino IDE.
- Compilez et téléchargez le code sur la carte ESP32 en cliquant sur le bouton Upload dans Arduino IDE.
- Approchez l'aimant du commutateur à lames puis éloignez-le. Répétez plusieurs fois cette opération.
- Observez le changement d'état du relais.
Explication du code ligne par ligne
Le code ESP32 ci-dessus contient une explication ligne par ligne. Veuillez lire les commentaires dans le code !
Dans le code, relayState = !relayState est équivalent au code suivant :