Arduino - Capteur à ultrasons - Moteur servo

Nous apprendrons :

Préparation du matériel

1×Arduino Uno
1×USB 2.0 cable type A/B
1×Ultrasonic Sensor
1×Servo Motor
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino
1×(Recommended) Screw Terminal Block Shield for Arduino Uno
1×(Optional) Transparent Acrylic Enclosure For Arduino Uno

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 moteur servo et du capteur ultrasonique

Si vous ne connaissez pas le moteur servo et le capteur à ultrasons (brochage, fonctionnement, programmation...), renseignez-vous dans les tutoriels suivants :

Diagramme de câblage

Schéma de câblage du servomoteur à ultrasons Arduino

This image is created using Fritzing. Click to enlarge image

Code Arduino - Un capteur ultrasonique contrôle un moteur servo

/* * Ce code Arduino a été développé par newbiely.fr * Ce code Arduino 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/arduino-ultrasonic-sensor-servo-motor */ #include <Servo.h> // constants won't change const int TRIG_PIN = 6; // Arduino pin connected to Ultrasonic Sensor's TRIG pin const int ECHO_PIN = 7; // Arduino pin connected to Ultrasonic Sensor's ECHO pin const int SERVO_PIN = 9; // Arduino pin connected to Servo Motor's pin const int 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 arduino pin to output mode pinMode(ECHO_PIN, INPUT); // set arduino 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

  • Connectez Arduino à l'ordinateur via le câble USB
  • Ouvrez Arduino IDE, sélectionnez la bonne carte et le bon port
  • Copiez le code ci-dessus et ouvrez-le avec Arduino IDE
  • Cliquez sur le bouton Upload de Arduino IDE pour téléverser le code sur Arduino
  • Déplacez votre main devant le capteur
  • Observez le changement du moteur servo

※ NOTE THAT:

Le code ci-dessus est destiné à des fins pédagogiques. Le capteur ultrasonique est très sensible au bruit. Si vous souhaitez utiliser le capteur ultrasonique en pratique, vous devriez filtrer le bruit pour le capteur ultrasonique. Voir comment filtrer le bruit pour le capteur ultrasonique

Vidéo

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