Arduino Nano ESP32 - Capteur d'obstacles

Ce tutoriel vous explique comment utiliser l'Arduino Nano ESP32 avec le capteur d'évitement d'obstacles infrarouge pour détecter la présence d'un obstacle.

Préparation du matériel

1×Arduino Nano ESP32
1×USB Cable Type-C
1×IR Obstacle Avoidance Sensor
1×Breadboard
1×Jumper Wires
1×(Optional) DC Power Jack
1×(Recommended) Screw Terminal Adapter for Arduino Nano

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
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'évitement d'obstacles IR

Le capteur d'obstacles IR (infrarouge) est utilisé pour détecter la présence d'un obstacle devant le module du capteur en utilisant le signal IR. La plage de détection est de 2 cm à 30 cm et peut être ajustée par un potentiomètre intégré.

Brochage

Un capteur infrarouge de détection d'obstacles possède trois broches :

  • Broche GND : connectez cette broche à GND (0V)
  • Broche VCC : connectez cette broche à VCC (5V ou 3,3V)
  • Broche OUT : c'est une broche de sortie : BASSE si un obstacle est présent, HAUTE si aucun obstacle n'est présent. Cette broche doit être connectée à la broche d'entrée de l'ESP32.
Capteur infrarouge d'évitement d'obstacles - Brochage

Comment ça marche

Un module de capteur d'obstacles infrarouge est composé d'un émetteur IR et d'un récepteur IR. L'émetteur IR émet le signal IR tandis que le récepteur IR cherche le signal IR réfléchi pour déterminer si un objet est présent ou non. La présence d'un obstacle se reflète sur la broche OUT :

  • Si l'obstacle est présent, la broche OUT du capteur est à LOW
  • Si l'obstacle n'est pas présent, la broche OUT du capteur est à HIGH

※ NOTE THAT:

Lors de l'expédition, le capteur peut se déformer, ce qui peut entraîner un dysfonctionnement. Si le capteur ne fonctionne pas correctement, réglez l'émetteur et le récepteur IR pour vous assurer qu'ils sont parallèles.

Diagramme de câblage

Schéma de câblage du capteur de détection d'obstacles IR Arduino Nano ESP32

This image is created using Fritzing. Click to enlarge image

Comment programmer pour un capteur de détection d'obstacles IR

  • Initialise la broche ESP32 Arduino Nano en mode entrée numérique en utilisant la fonction pinMode(). Par exemple, broche D2
pinMode(D2, INPUT_PULLUP);
  • Lit l'état de la broche Arduino Nano ESP32 en utilisant la fonction digitalRead().
int state = digitalRead(D2);

Code Arduino Nano ESP32

Il existe deux cas d'utilisation pour implémenter une application d'évitement d'obstacles :

  • Prenez des mesures alors que l'obstacle est présent ou non.
  • Prenez des mesures lorsque l'obstacle est détecté ou éliminé.

Code Arduino Nano ESP32 pour vérifier la présence d'un obstacle

/* * Ce code Arduino Nano ESP32 a été développé par newbiely.fr * Ce code Arduino Nano 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/arduino-nano-esp32/arduino-nano-esp32-obstacle-sensor */ #define SENSOR_PIN D2 // The Arduino Nano ESP32 pin connected to OUT pin of IR obstacle avoidance sensor void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); // initialize the Arduino Nano ESP32 pin as an input pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: int state = digitalRead(SENSOR_PIN); if (state == LOW) Serial.println("The obstacle is present"); else Serial.println("The obstacle is NOT present"); delay(100); }

Étapes rapides

  • Si c'est la première fois que vous utilisez un Arduino Nano ESP32, consultez comment configurer l'environnement pour Arduino Nano ESP32 sur Arduino IDE.
  • Copiez le code ci-dessus et collez-le dans Arduino IDE.
  • Compilez et téléchargez le code sur la carte Arduino Nano ESP32 en cliquant sur le bouton Upload dans Arduino IDE.
  • Placez un obstacle devant le capteur pendant un moment, puis retirez-le.
  • Consultez le résultat sur le moniteur série. Il ressemble à ce qui suit :
COM6
Send
The obstacle is NOT present The obstacle is NOT present The obstacle is NOT present The obstacle is NOT present The obstacle is NOT present The obstacle is present The obstacle is present The obstacle is present The obstacle is present The obstacle is NOT present The obstacle is NOT present
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Code Arduino Nano ESP32 pour détecter un obstacle

/* * Ce code Arduino Nano ESP32 a été développé par newbiely.fr * Ce code Arduino Nano 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/arduino-nano-esp32/arduino-nano-esp32-obstacle-sensor */ #define SENSOR_PIN D2 // The Arduino Nano ESP32 pin connected to OUT pin of IR obstacle avoidance sensor int prev_state = HIGH; // The previous state from the input pin int obstacle_state; // The current reading from the input pin void setup() { // Initialize the Serial to communicate with the Serial Monitor. Serial.begin(9600); // initialize the ESP32's pin as an input pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: obstacle_state = digitalRead(SENSOR_PIN); if (prev_state == HIGH && obstacle_state == LOW) Serial.println("The obstacle is detected"); else if (prev_state == LOW && obstacle_state == HIGH) Serial.println("The obstacle is cleared"); delay(50); // save the the last state prev_state = obstacle_state; }

Étapes rapides

  • Copiez le code ci-dessus et collez-le dans l'IDE Arduino.
  • Compilez et téléchargez le code sur la carte Arduino Nano ESP32 en cliquant sur le bouton Upload dans l'IDE Arduino.
  • Placez un obstacle devant le capteur pendant un moment, puis retirez-le.
  • Consultez le résultat sur le moniteur série. Cela ressemble à ce qui suit :
COM6
Send
The obstacle is detected The obstacle is cleared
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Vidéo

Tutoriels connexes

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!