ESP32 - Capteur ultrasonique - Relais

Ce tutoriel vous explique comment utiliser le ESP32 et le capteur ultrasonique pour contrôler le relais. En détail :

Nous pouvons étendre ce tutoriel pour utiliser le capteur à ultrasons afin de contrôler une bande LED, une sirène, une ampoule ou un moteur... en les connectant au relais.

À propos du relais et du capteur ultrasonique

Nous disposons de tutoriels spécifiques sur le relais et le capteur ultrasonique. 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 du câblage à l'ESP32, le code ESP32... Pour en savoir plus, consultez les liens suivants :

Diagramme de câblage

Schéma de câblage du relais à capteur ultrasonique ESP32

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..

Code ESP32

/* * 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-ultrasonic-sensor-relay */ #define TRIG_PIN 23 // ESP32 pin GPIO23 connected to Ultrasonic Sensor's TRIG pin #define ECHO_PIN 22 // ESP32 pin GPIO22 connected to Ultrasonic Sensor's ECHO pin #define RELAY_PIN 26 // ESP32 pin GPIO26 connected to Relay's pin #define DISTANCE_THRESHOLD 50 // centimeters // variables will change: float duration_us, distance_cm; void setup() { Serial.begin (9600); // initialize serial port pinMode(TRIG_PIN, OUTPUT); // set ESP32 pin to output mode pinMode(ECHO_PIN, INPUT); // set ESP32 pin to input mode pinMode(RELAY_PIN, OUTPUT); // set ESP32 pin to output mode } void loop() { // generate 10-microsecond pulse to TRIG pin digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // measure duration of pulse from ECHO pin duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance distance_cm = 0.017 * duration_us; if (distance_cm < DISTANCE_THRESHOLD) digitalWrite(RELAY_PIN, HIGH); // turn on Relay else digitalWrite(RELAY_PIN, LOW); // turn off Relay // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(500); }

Étapes rapides

  • Si c'est la première fois que vous utilisez un ESP32, consultez Installation du logiciel ESP32..
  • 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.
Chargement de code Arduino IDE
  • Déplacez votre main devant le capteur
  • Observez le changement d'état du relais

Explication du code ligne par ligne

Le code ESP32 ci-dessus contient des explications ligne par ligne. Veuillez lire les commentaires dans le code !

Relais vs module MOSFET

Un relais n'est pas le seul moyen de commuter un appareil. Si votre appareil fonctionne en courant continu (DC), comme une serrure à solénoïde 12V, une pompe 12V ou un ventilateur 12V, un module MOSFET peut faire le même travail.

Relais Module MOSFET
Ce qu'il peut faire allumer ou éteindre l'appareil allumer ou éteindre l'appareil, et régler sa puissance (PWM)
Bruit à la commutation un clic à chaque fois aucun bruit
Vitesse de commutation lente, quelques millisecondes très rapide
Durée de vie les contacts s'usent après de nombreuses commutations rien ne bouge, donc il dure longtemps
Type d'alimentation AC ou DC DC uniquement
Alimentation de l'appareil toute tension admise par le relais environ 6V ou plus
Isolation de l'ESP32 oui, entre bobine et contacts oui, par l'optocoupleur PC817
Idéal pour appareils AC, ou simple ON/OFF appareils DC, ou variation de luminosité et de vitesse

Le relais et le module MOSFET s'activent tous les deux quand la broche de l'ESP32 est à l'état HIGH. La broche de l'ESP32 ne donne que 3.3V, mais cela suffit : la LED de l'optocoupleur du module n'a besoin que de quelques milliampères. Donc, pour un simple ON/OFF, le code ci-dessus reste le même. Seul le câblage change. Pour les appareils branchés sur le secteur AC, utilisez toujours le relais.

Pour connaître le brochage, le câblage, le code PWM et les conseils de sécurité du module MOSFET, consultez le tutoriel ESP32 - Module MOSFET.

Vidéo

※ 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 !