Arduino Nano ESP32 - Capteur ultrasonique - Moteur servo
Ce tutoriel vous explique comment utiliser un Arduino Nano ESP32 avec un potentiomètre pour contrôler un moteur servo. En détail :
- L'Arduino Nano ESP32 fait tourner automatiquement un servo-moteur à 90° si un objet est proche du capteur ultrasonique.
- L'Arduino Nano ESP32 fait tourner automatiquement un servo-moteur à 0° si un objet est éloigné du capteur ultrasonique.
Préparation du matériel
1 | × | Arduino Nano ESP32 | |
1 | × | USB Cable Type-C | |
1 | × | Ultrasonic Sensor | |
1 | × | Servo Motor | |
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 servomoteur et du capteur ultrasonique
Nous disposons de tutoriels spécifiques sur le moteur servo 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 de câblage à l'ESP32, le code Arduino Nano ESP32... Pour en savoir plus, consultez les liens suivants :
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Code Arduino Nano ESP32 - Le capteur ultrasonique contrôle le moteur servo
/*
* 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-ultrasonic-sensor-servo-motor
*/
#include <Servo.h>
#define TRIG_PIN D5 // The Arduino Nano ESP32 pin connected to Ultrasonic Sensor's TRIG pin
#define ECHO_PIN D4 // The Arduino Nano ESP32 pin connected to Ultrasonic Sensor's ECHO pin
#define SERVO_PIN D2 // The Arduino Nano ESP32 pin connected to Servo Motor's pin
#define DISTANCE_THRESHOLD 50 // centimeters
Servo servo; // create servo object to control a servo
// 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
servo.attach(SERVO_PIN); // attaches the servo on pin 9 to the servo object
servo.write(0);
}
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)
servo.write(90); // rotate servo motor to 90 degree
else
servo.write(0); // rotate servo motor to 0 degree
// print the value to Serial Monitor
Serial.print("distance: ");
Serial.print(distance_cm);
Serial.println(" cm");
delay(500);
}
Étapes rapides
Pour commencer avec Arduino Nano ESP32, suivez ces étapes :
- Si vous êtes nouveau avec l'Arduino Nano ESP32, consultez le tutoriel sur comment configurer l'environnement pour Arduino Nano ESP32 dans l'Arduino IDE.
- Câblez les composants conformément au schéma fourni.
- Connectez la carte Arduino Nano ESP32 à votre ordinateur à l'aide d'un câble USB.
- Lancez l'Arduino IDE sur votre ordinateur.
- Sélectionnez la carte Arduino Nano ESP32 et son port COM correspondant.
- Cliquez sur l'icône Libraries dans la barre latérale gauche de l'Arduino IDE.
- Tapez ServoESP32 dans la boîte de recherche, puis recherchez la bibliothèque de servo par Jaroslav Paral. Veuillez noter que les versions 1.1.1 et 1.1.0 comportent des bugs. Veuillez choisir une version différente.
- Cliquez sur le bouton Install pour installer la bibliothèque moteur servo pour ESP32.
- 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.
- Déplacez votre main devant le capteur.
- Observez le changement du moteur servo.