ESP32 S3 - Capteur ultrasonique - LED

Ce tutoriel vous montre comment utiliser l'ESP32 S3 avec un capteur ultrasonique pour contrôler une LED automatiquement en fonction de la distance à un objet proche. En combinant une mesure de distance sans contact avec un simple indicateur visuel, vous acquerrez une compréhension pratique de la façon de déclencher des sorties GPIO en réponse à des données de capteur réelles sur l'ESP32 S3.

Ce que vous allez construire :

  1. Un circuit connectant un capteur ultrasonique HC-SR04 et une LED à l'ESP32 S3
  2. Un croquis qui mesure en continu la distance à un objet à l'aide du capteur ultrasonique
  3. Un système qui allume automatiquement la LED quand un objet est en dessous d'une distance seuil proche
  4. Une base pour construire des alarmes de proximité, des détecteurs de présence, et des projets d'évitement d'obstacles

Matériel requis

1×ESP32 S3 WROOM N16R8
1×Alternativement: ESP32 S3 SuperMini Dev Module
1×Alternativement: ESP32 S3 Uno-form Board
1×Alternativement: ESP32 S3 Camera Board
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×Capteur à ultrasons
1×LED Kit
1×LED (red)
1×LED Module
1×Alternativement: Button and LED Kit
1×220Ω Resistor
1×Plaque d'essai
1×Fils de connexion
1×Optionnel: Connecteur d'alimentation DC
1×Recommandé: Screw Terminal Expansion Board for ESP32 S3
1×Recommandé: Breakout Expansion Board for ESP32 S3
1×Recommandé: Power Splitter for ESP32 S3

Ou vous pouvez acheter les kits suivants:

1×Kit de Démarrage DIYables ESP32 S3 (ESP32 S3 inclus)
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.

Note d'achat: Pour simplifier le processus de câblage, nous recommandons d'utiliser le LED Module, qui est livré avec une résistance intégrée.

À propos de la LED et du capteur ultrasonique

Le capteur ultrasonique HC-SR04 et une LED forment un duo efficace pour construire des projets de détection de proximité sur l'ESP32 S3. Le capteur émet une impulsion ultrasonique, mesure le temps qu'elle met à se réfléchir depuis un objet proche, et l'ESP32 S3 convertit cette valeur de timing en une lecture de distance qui est ensuite utilisée pour allumer ou éteindre la LED via une sortie numérique GPIO.

Spécifications clés

Nous avons des tutoriels dédiés couvrant chaque composant en détail. Chaque tutoriel contient des informations détaillées et des instructions étape par étape sur le brochage matériel, le principe de fonctionnement, la connexion de câblage à l'ESP32 S3, et le code Arduino. En savoir plus via les liens suivants :

Schéma de câblage

Connectez le capteur ultrasonique et la LED à votre ESP32 S3 en suivant le schéma ci-dessous. Vérifiez soigneusement toutes les connexions avant de mettre sous tension, en portant une attention particulière à la polarité de la LED et au positionnement de la résistance limitatrice de courant de 220 ohms.

ESP32 S3 Ultrasonic Sensor LED Wiring Diagram

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

Vous pouvez aussi placer la LED et la résistance de 220 ohms sur une plaque d'essai. Voici le même circuit sur une demi-plaque d'essai :

ESP32 S3 Ultrasonic Sensor LED Wiring Diagram (plaque d'essai)

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

Pour un projet durable, les borniers à vis tiennent mieux les fils que les fils de connexion. La carte ESP32 S3 se branche sur une carte à bornier à vis pour ESP32 S3, qui transforme chaque broche en bornier à vis. Voir le schéma ci-dessous pour la version avec borniers à vis.

ESP32 S3 Ultrasonic Sensor LED Wiring Diagram (Screw Terminal)

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

Une autre solution est une carte d'extension GPIO pour ESP32 S3. Chaque GPIO a une broche de signal avec une broche 3,3V et une broche GND à côté, comme ci-dessous :

ESP32 S3 Ultrasonic Sensor LED Wiring Diagram (GPIO Breakout Board)

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

Notes de sécurité

Incluez toujours la résistance limitatrice de courant de 220 ohms en série avec la LED pour éviter de tirer un courant excessif à travers la broche GPIO de l'ESP32 S3, ce qui pourrait endommager définitivement le microcontrôleur. Le capteur ultrasonique HC-SR04 fonctionne en 5V sur sa broche VCC ; si votre carte ESP32 S3 fournit une broche de sortie 5V, utilisez-la pour le VCC du capteur et gardez toutes les lignes de signal (Trig et Echo) au niveau logique 3,3V attendu par les broches GPIO de l'ESP32 S3.

Composant Broche Broche ESP32 S3
Ultrasonic Sensor VCC 5V
Ultrasonic Sensor GND GND
Ultrasonic Sensor Trig GPIO8
Ultrasonic Sensor Echo GPIO9
LED Anode (+) GPIO38 (via 220Ω resistor)
LED Cathode (-) GND

Code ESP32 S3

Le code suivant déclenche une impulsion ultrasonique sur l'ESP32 S3, mesure le temps d'aller-retour de l'écho, le convertit en distance en centimètres, et allume la LED quand la distance mesurée descend sous un seuil défini. La valeur du seuil peut être ajustée directement dans le code pour s'adapter à différentes exigences de détection de proximité.

/* * Ce code ESP32 S3 a été développé par newbiely.fr * Ce code ESP32 S3 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-s3/esp32-s3-ultrasonic-sensor-led */ /* * This ESP32-S3 code is created by esp32io.com * * This ESP32-S3 code is released in the public domain * * For more detail (instruction and wiring diagram), visit https://esp32io.com/tutorials/esp32-s3-ultrasonic-sensor-led */ #define TRIG_PIN 8 // ESP32-S3 pin GPIO8 connected to Ultrasonic Sensor's TRIG pin #define ECHO_PIN 9 // ESP32-S3 pin GPIO9 connected to Ultrasonic Sensor's ECHO pin #define LED_PIN 38 // ESP32-S3 pin GPIO38 connected to LED's pin #define DISTANCE_THRESHOLD 50 // centimeters // variables will change: float duration_us, distance_cm; void setup() { Serial.begin (115200); // initialize serial port pinMode(TRIG_PIN, OUTPUT); // set ESP32-S3 pin to output mode pinMode(ECHO_PIN, INPUT); // set ESP32-S3 pin to input mode pinMode(LED_PIN, OUTPUT); // set ESP32-S3 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(LED_PIN, HIGH); // turn on LED else digitalWrite(LED_PIN, LOW); // turn off LED // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(500); }

Étapes rapides

  1. Nouveau sur ESP32 S3 ? Suivez d'abord notre guide ESP32 S3 - Premiers pas.
  2. Câblez les composants en suivant le schéma de câblage montré ci-dessus.
  3. Connectez la carte ESP32 S3 à votre PC à l'aide d'un câble USB Type-C.
  4. Ouvrez Arduino IDE sur votre PC.
  5. Sélectionnez la bonne carte ESP32 S3 et le bon port COM dans le menu Tools.
  6. Copiez le code ci-dessus et collez-le dans Arduino IDE.
  7. Cliquez sur le bouton Upload pour compiler et téléverser le code vers l'ESP32 S3.
Arduino IDE Upload Code
  1. Ouvrez le Serial Monitor à 115200 bauds.
  2. Approchez votre main du capteur ultrasonique et observez la LED s'allumer.
  3. Éloignez votre main du capteur et observez la LED s'éteindre.
  4. Consultez le Serial Monitor pour voir les lectures de distance en direct affichées en temps réel.
  5. Astuce pro : Essayez d'ajuster la valeur du seuil de distance dans le code pour affiner la sensibilité de détection — un seuil plus bas ne déclenche la LED que pour des objets très proches, tandis qu'une valeur plus élevée l'active depuis plus loin, ce qui est utile pour différents scénarios d'alarme de proximité.

Sortie du moniteur série

La sortie du Serial Monitor suivante montre l'ESP32 S3 lisant les données de distance depuis le capteur ultrasonique en temps réel. Chaque ligne affiche la distance actuelle mesurée et l'état correspondant de la LED déclenché par le seuil de proximité.

∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32S3 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32S3 Dev Module' on 'COM15')
New Line
9600 baud
[2026-06-16 10:22:01] Distance: 85 cm | LED: OFF [2026-06-16 10:22:02] Distance: 42 cm | LED: OFF [2026-06-16 10:22:03] Distance: 18 cm | LED: ON [2026-06-16 10:22:04] Distance: 9 cm | LED: ON
Ln 11, Col 1
ESP32S3 Dev Module on COM15
2

Applications et idées de projets

Une fois que vous pouvez déclencher une LED à partir d'une lecture de distance ultrasonique sur l'ESP32 S3, vous pouvez étendre ce modèle à une large gamme de projets sensibles à la proximité.

  1. Assistant de stationnement : Montez le capteur dans un garage et allumez un ruban LED quand un véhicule entre dans la zone d'arrêt sûre.
  2. Robot d'évitement d'obstacles : Déclenchez un arrêt moteur ou un changement de direction quand le capteur détecte un mur ou un objet à une distance définie.
  3. Distributeur de gel hydroalcoolique sans contact : Activez un relais de pompe quand une main est détectée à quelques centimètres de la buse du capteur.
  4. Alarme de proximité de sécurité : Faites sonner un buzzer piézo au lieu d'allumer une LED pour alerter quand quelqu'un entre dans une zone restreinte.
  5. Moniteur de niveau de liquide : Montez le capteur au-dessus d'un réservoir pour détecter quand le niveau de liquide descend sous un point critique et déclencher une pompe de remplissage.
  6. Éclairage d'escalier automatique : Utilisez plusieurs capteurs le long d'un escalier pour allumer et éteindre des rubans LED à mesure qu'une personne monte ou descend.

Tutoriel vidéo

Regardez la démonstration vidéo étape par étape de ce projet ESP32 S3 ci-dessous.

Défiez-vous

Maintenant que vous pouvez contrôler une LED avec un capteur ultrasonique sur l'ESP32 S3, essayez ces extensions progressivement plus difficiles pour approfondir votre compréhension et construire des systèmes de détection de proximité plus performants.

  1. Débutant : Modifiez la valeur de distance seuil dans le code et observez comment cela change le point auquel la LED s'allume, puis affichez un message sur le Serial Monitor confirmant quel seuil est actif.
  2. Débutant : Ajoutez une seconde LED câblée à une broche GPIO différente et faites-la s'allumer à un seuil différent (plus éloigné), afin d'avoir deux zones de proximité avec des indicateurs visuels séparés.
  3. Intermédiaire : Remplacez le comportement simple marche/arrêt de la LED par un contrôle de luminosité PWM afin que la LED s'éclaircisse progressivement à mesure que l'objet se rapproche et s'assombrisse à mesure qu'il s'éloigne.
  4. Intermédiaire : Ajoutez un écran OLED I2C pour afficher la lecture de distance en direct et l'état de la LED dans un affichage formaté, supprimant la dépendance au Serial Monitor.
  5. Avancé : Stockez une valeur de seuil configurable dans la mémoire non volatile de l'ESP32 S3 (bibliothèque Preferences) afin que le réglage persiste à travers les cycles d'alimentation sans nécessiter un nouveau téléversement du code.
  6. Avancé : Diffusez les lectures de distance via WiFi vers une simple page web servie par l'ESP32 S3, et contrôlez le seuil de détection à distance depuis un curseur de navigateur.

Commentaires

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